Compiler baselines
Stephan Bergmann
sbergman at redhat.com
Sun Nov 25 22:35:05 UTC 2018
On 22/11/2018 21:37, Stephan Bergmann wrote:
> On 21/11/2018 17:42, Stephan Bergmann wrote:
>> On 13/09/2018 12:21, Stephan Bergmann wrote:
>>> * Building on CentOS 6 with DeveloperToolset (DTS) 7 (GCC 7.3.1) runs
>>> into a linker issue with an unresolved
>>> _ZN9__gnu_cxx32__throw_concurrence_unlock_errorEv when linking
>>> Library_unoexceptionprotector in an --enable-dbgutil (i.e.,
>>> -D_GLIBCXX_DEBUG libstdc++ debug mode) build (see
>>> <https://tinderbox.libreoffice.org/cgi-bin/gunzip.cgi?tree=MASTER&brief-log=1536396604.27182>).
>>> Smells like a bug in DTS's libstdc++_nonshared.a, but I learned
>>> off-list that there is little hope that that would get fixed for DTS
>>> 7. A hack-around I found to get at least
>>> Library_unoexceptionprotector linked is to modify
>>> devtoolset-7-gcc-c++-7.3.1-5.10.el6.x86_64's
>>> /opt/rh/devtoolset-7/root/usr/lib/gcc/x86_64-redhat-linux/7/libstdc++.so
>>> linker script, doubling the -lstdc++_nonshared entry on the INPUT line.
>>
>> All under control according to cloph; TDF (incl. Jenkins) Linux GCC
>> master builds are done with DeveloperToolset 7.
>
> So I would have assumed that the relevant Jenkins builds are already
> done with GCC 7. But looking at a random recent
> gerrit_linux_gcc_release build (for master),
> <https://ci.libreoffice.org/job/gerrit_linux_gcc_release/20275/consoleFull>
> has "export GCC_VERSION=408". What's missing?
* So Developer Toolset 7 has been installed on tb75-lilith, tb76-maggie,
and tb79-poolux, and Jenkins jobs linux_gcc_release_64
(<https://gerrit.libreoffice.org/plugins/gitiles/core/+/5b0b08e49ad344ceb043e0cdd1e45b0aea3f559c%5E!>
"Better way of enabling Developer Toolset 7 for Jenkins'
linux_gcc_release_64") and lo_tb_master_linux_dbg
(<https://gerrit.libreoffice.org/plugins/gitiles/core/+/ab8454eb26f72f2d4081d90cb7e60e53e4a5590d%5E!>
"Enabling Developer Toolset 7 for Jenkins' lo_tb_master_linux_dbg") have
been adapted.
* This required --disable-werror for linux_gcc_release_64 (see the
relevant part of
<https://gerrit.libreoffice.org/plugins/gitiles/core/+/d3f2c61e3b9faf577f692ece76cd830f0f74b028%5E!>
"Make Jenkins linux_gcc_release_64 pick up Developer Toolset 7"), and
will likely require the same for further GCC-based Jenkins jobs that
have not yet been updated (see below).
* This also required
<https://gerrit.libreoffice.org/plugins/gitiles/core/+/f9ba4c2be1c1514553050fea37c48b757a68d4fd%5E!>
"Generally set CCACHE_CPP2 for --enable-werror GCC" (which may have
performance implications for Jenkins).
* Developer Toolset 7 has apparently not yet been installed on gandalf
and vm139, which are used for Jenkins jobs lo_callgrind_linux,
lo_daily_update_gandalf, lo_tb_ui_testing_gandalf,
lo_tb_random_config_linux, and lo_tb_master_linux. Once these have been
updated (Cloph, can you do that please?),
<https://gerrit.libreoffice.org/#/c/63991/> "Enabling Developer Toolset
7 for Jenkins' remaining GCC master jobs" and
<https://gerrit.libreoffice.org/#/c/64008/> "Revert 'Revert 'Enabling
Developer Toolset 7 for Jenkins' lo_callgrind_linux''", respectively,
can be submitted.
* Jenkins job internal_lcov_master tied to tb31 will need updating, too.
Whoever feels responsible for that job, can you do that please?
More information about the LibreOffice
mailing list