On 10/01/2023 17:31, Stephan Bergmann wrote:
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.
[...]
(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
With the various responses to this mailing list thread, that list of
presumably dead bridge implementations is down to four now:
gcc3_aix_powerpc, gcc3_linux_s390, gcc3_solaris_intel, and
gcc3_solaris_sparc.
I have prepared three sets of Gerrit changes (see below) to remove those
four bridge implementations and, in some cases, complete platform
support, and plan to submit those on LO master towards LO 7.6 after a
final round of discussions in Thursday's ESC meeting.
* <https://gerrit.libreoffice.org/c/core/+/146057> and
<https://gerrit.libreoffice.org/c/help/+/146063> "Remove support for AIX":
As discussed in the mailing list thread starting at
<https://lists.freedesktop.org/archives/libreoffice/2023-January/089808.html>
"Plan to remove dead C++ UNO bridge implementations (bridges/source/cpp_uno/*)",
the bridge implementation at bridges/source/cpp_uno/gcc3_aix_powerpc is
apparently dead and should thus be removed. However, that was the only bridge
implementation for AIX, which implies that support for the AIX platform as a
whole is dead and should thus be removed.
* <https://gerrit.libreoffice.org/c/core/+/146058> "Remove support for
32-bit S390":
As discussed in the mailing list thread starting at
<https://lists.freedesktop.org/archives/libreoffice/2023-January/089808.html>
"Plan to remove dead C++ UNO bridge implementations (bridges/source/cpp_uno/*)",
the bridge implementation at bridges/source/cpp_uno/gcc3_linux_s390 is
apparently dead and should thus be removed. However, that was the only bridge
implementation for 32-bit S390, which implies that support for the 32-bit S390
architecture as a whole is dead and should thus be removed.
* <https://gerrit.libreoffice.org/c/core/+/146059> "Remove Solaris
32-bit SPARC and x86 C++ UNO bridge implementations":
As discussed in the mailing list thread starting at
<https://lists.freedesktop.org/archives/libreoffice/2023-January/089808.html>
"Plan to remove dead C++ UNO bridge implementations (bridges/source/cpp_uno/*)",
the bridge implementations at bridges/source/cpp_uno/gcc3_solaris_intel and
bridges/source/cpp_uno/gcc3_solaris_sparc are apparently dead and should thus be
removed. Those were the only bridge implementations for Solaris, but the
referenced thread mentions that there are recent builds for OpenIndiana x86-64
(however they are done; presumably using
bridges/source/cpp_uno/gcc3_linux_x86-64), so keep general support for Solaris
intact for now.