Plan to remove dead C++ UNO bridge implementations (bridges/source/cpp_uno/*)

Stephan Bergmann sbergman at redhat.com
Tue Jan 10 16:31:12 UTC 2023


There are currently 27 different, per-platform C++ UNO bridge 
implementations at bridges/source/cpp_uno/, some of which are presumably 
dead by now.  And my recent 
<https://git.libreoffice.org/core/+/ef533553559fe09b4afab651fc692885d1acf4ed%5E!/> 
"Rudimentary support for dynamic_cast on UNO proxy objects" (which had 
to touch each of them individually) was the latest example how even 
presumably dead ones have ongoing maintenance cost.  Therefore, I would 
like to remove (on master, towards LO 7.6) the ones that can clearly be 
identified as being dead.

Below, I sorted those 27 implementations into 5 categories:  Ideally, 
each active implementation would be built regularly by Jenkins; those 9 
that are go into category 1.  Next, there are 2 additional 
implementations that I know are built for Fedora releases; they go into 
category 2.  Next, there are 2 additional implementations that I presume 
are built for Debian releases (Rene, correct me if I'm wrong); they go 
into category 3.  And then there are 3 implementations that are 
presumably in active use elsewhere (Tor, wjh-la, Sakura286, correct me 
if I'm wrong); which go into category 4.  That leaves 11 implementations 
that are presumably dead, in category 5.

So if you know about any active use of any of those 11 implementations 
in category 5 below, please report back here.  Otherwise, the plan (to 
be discussed in the ESC) is to eventually remove them in due course.


(1) Built regularly by some <https://ci.libreoffice.org/> configuration:

* gcc3_linux_aarch64 (also for macOS)
<https://ci.libreoffice.org/job/gerrit_android_aarch64/>, 
<https://ci.libreoffice.org/job/lo_daily_tb_mac_arm64/>

* gcc3_linux_arm
<https://ci.libreoffice.org/job/gerrit_android_arm/>

* gcc3_linux_intel
<https://ci.libreoffice.org/job/gerrit_android_x86/>

* gcc3_linux_x86-64
<https://ci.libreoffice.org/job/lo_daily_tb_linux/>

* gcc3_macosx_x86-64
<https://ci.libreoffice.org/job/lo_daily_tb_mac/>

* gcc3_wasm
<https://ci.libreoffice.org/job/lo_daily_tb_linux_wasm/>

* msvc_win32_arm64
<https://ci.libreoffice.org/job/lo_daily_tb_win_arm64/>

* msvc_win32_intel
<https://ci.libreoffice.org/job/lo_tb_master_win/>

* msvc_win32_x86-64
<https://ci.libreoffice.org/job/lo_daily_tb_win/>


(2) Release builds for Fedora (e.g., 
<https://koji.fedoraproject.org/koji/buildinfo?buildID=2105337>):

* gcc3_linux_powerpc64

* gcc3_linux_s390x


(3) Presumably release builds for Debian (per architectures at 
<https://cdimage.debian.org/debian-cd/current/>):

* gcc3_linux_mips

* gcc3_linux_mips64


(4) Presumably somewhat actively maintained:

* gcc3_ios

* gcc3_linux_loongarch64
only added recently in 2022 with 
<https://git.libreoffice.org/core/+/d3625d968901eb93a9680db8d1165f70de3fd64e%5E!/> 
"Add loongarch64 support."

* gcc3_linux_riscv64
only added recently in 2022 with 
<https://git.libreoffice.org/core/+/bc9487f745befde6534fd46058e119256952323d%5E!/> 
"Add riscv64 support"


(5) Presumably dead:

* gcc3_aix_powerpc

* gcc3_linux_alpha

* gcc3_linux_hppa

* gcc3_linux_ia64

* gcc3_linux_m68k

* gcc3_linux_powerpc

* gcc3_linux_s390

* gcc3_linux_sparc

* gcc3_linux_sparc64

* gcc3_solaris_intel

* gcc3_solaris_sparc



More information about the LibreOffice mailing list