summaryrefslogtreecommitdiff
path: root/solenv/gbuild
AgeCommit message (Collapse)AuthorFilesLines
2020-05-05Disable -Wstringop-overflow in --enable-optimized builds with GCCStephan Bergmann1-0/+3
This reverts commit e287fde52fb9de5bdf1d00c8a3fbfcca7db9892c "Silence bogus -Wstringop-overflow with GCC trunk towards GCC 10", as that workaround, which happened to work for some revisions of GCC trunk towards GCC 10, no longer works for GCC 10 release candidates, see <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92893#c9> "[10 Regression] Unhelpful -Wstringop-overflow warning for a trailing one-element array". (Using -Wstringop-overflow=1 instead of the -Wstringop-overflow=2 default would have still caused bogus warnings, requiring -Wno-stringop-overflow.) Change-Id: I9b7342748c18da32f509b4a0e0653aede8447657 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93499 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-21CLANG_C -> CLANG_CCLuboš Luňák1-4/+4
Change-Id: I50ed05116df3f295af6406f0ee45610d9e1e031e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92619 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-04-21don't try to use -fno-enforce-eh-specs with ClangLuboš Luňák2-2/+10
The use can be triggered when using gb_LinkTarget_use_clang, but Clang unlike GCC doesn't know the option. Change-Id: Idd109a09127061a72940de9229f0dd34b221375d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92611 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-04-20prefer building Skia with Clang if possible (tdf#131697)Luboš Luňák8-17/+54
I.e. try to find and use Clang even if the default compiler is something else. Skia is optimized to be built with Clang(-cl) and in CPU-based raster mode some operations are several times slower if built with something else (e.g. fmax/fmin do not get optimized to inline assembly). It is enough to select Clang to be installed in the MSVS installer. At this point it unclear how to handle release binaries, if it should work this way and enforced, or maybe Clang could be used for building everything, or maybe some other way. Change-Id: I6b95a0f2d5cbf176942d9e01136990b14be6dba8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92415 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-04-17move LIBO_LANG=C setting to gb_TEST_ENV_VARSRene Engelhard1-1/+3
... since it is an environment variable after all (and without it timeout $(gb_UITest_COMMAND) doesn't work). Change-Id: I898e4b90070f3f4883a707fc88c99e98bc039d9f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92060 Tested-by: Jenkins Tested-by: Rene Engelhard <rene@debian.org> Reviewed-by: Rene Engelhard <rene@debian.org>
2020-04-09pyuno,*: kill Python 2 support with fireMichael Stahl1-2/+0
Python 2 support was retained for use with --enable-python=system on RHEL7 and SLES. The time has arrived to remove it. Some .py files that were imported from third parties are not changed to enable easier replacement with updated versions if necessary. solenv/gdb should continue to support Python 2. bin/get-bugzilla-attachments-by-mimetype requires Python 2 to access Launchpad. Change-Id: I26414ae8e9f8402c90336af82020135685694217 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91697 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-04-06lxml: try to remove some quirky PYPATH stuffMichael Stahl1-1/+1
In RepositoryExternal.mk, a system python automatically gets $PYPATH added to $PYTHONPATH, but the internal one does not - this doesn't make sense. Try to remove it for system-case by fixing the one case that relies on it and for which it was introduced in commit 84ef6d82546b044990f4efd57e51e29c6c6565c8 to directly extend $PYTHONPATH instead, which ought to work as long as it's not evaluated at global scope and thereby avoids affecting all python invocations. Change-Id: I4534f2be92b850dc01193cb1bb2e0a299a5152be Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91748 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-04-06use full path for the PCH .hxx file for MSCLuboš Luňák2-3/+6
Microsoft cl.exe actually doesn't care, but clang-cl without this complains that it cannot find the .hxx file for the PCH. Change-Id: Ic2db94f2323ddb884ea71e6ac6554cc0a5ab682a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91744 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-04-03tdf#131835: don't set PYTHONWARNINGS=error if --enable-werror isn't setRene Engelhard1-1/+1
python 3.8 at least throws DeprecationWarnings for imp->importlib and some FutureWarnings. Allow to disable as for the build warnings-are-errors. Change-Id: Id5ada39f960f014108f2584e3e333741f6345acd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91623 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Rene Engelhard <rene@debian.org> Tested-by: Jenkins Tested-by: Rene Engelhard <rene@debian.org>
2020-03-31tdf#130911: convert desktop-translate from Perl to Python.Jussi Pakkanen1-3/+5
Change-Id: Ic0a84f4e46f4bc3312d15a31ea16060851302d2d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90847 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-03-30Override gb_Package_get_target,python3 also for gb_UITest_DEPS on macOSStephan Bergmann1-0/+4
...same as gb_CppunitTest_PYTHONDEPS and gb_PythonTest_DEPS. (This is just one piece of the puzzle of making uicheck work on macOS eventually.) Change-Id: I88ec602e2924f37ef4b3cd143fd8487ba25fcb8a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91358 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-27revert the gyp-based nss build changesLuboš Luňák1-1/+1
https://lists.freedesktop.org/archives/libreoffice/2020-March/084769.html etc. This reverts commit c76fdcf1cfa1242e66b50ebe80d6eac1baae37a9. This reverts commit 10f52ab4d27263439d59f55f40e88ad2fde0cf71. This reverts commit eac806e8dcd9ee6439ac8695978ff6b62cc6b8d2. This reverts commit d591a682e46ff352f06a61c024ef661dd17f4ea4. This reverts commit 12235d3390a7fc5146bf65f9d6166034b8a048ee. This reverts commit 23245f723fb29262b8543d6447d1b0bb69cb50fb. This reverts commit 91658b402b66b67c785687d5b3a76e3183fe76bf. This reverts commit 5feadfad0cc3be2680213d2e5f6f786b2f4cc74f. This reverts commit fecca49c309fc723c524f12fa671114b316a5562. This reverts commit c6a9454e744289cf2004b42b3c90854b2db8382b. This reverts commit a1a62a70411cb6041b5930ead08280d5e1e7b5f9. This reverts commit 8512f4ca090c85477a6670438aeefe7fdfcf8a98. This reverts commit 532ffb7a297d55b495141ce33692df5d9917b54f. Change-Id: Iaa48d692bea2ca2468cdd5f8ad26ad91c0c31dde Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91199 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-23do not reset PATH when invoking internal pythonLuboš Luňák1-1/+1
Change-Id: I7759fefbf5c2dbc39ae9a53f7c044bf63165608c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90116 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-03-23rework the default make targetLuboš Luňák2-9/+6
The current default target ('all') was a confusing mess, it did run some tests, but it did run just some of them and it also depended on some factors (toplevel 'make' vs module 'make'). And running tests on plain 'make' also makes the developer cycle longer, which is annoying, and now there's Jenkins which will do checks. This commit makes the default make target to be 'build'. All the other targets should work the same way, with the exception of 'all', which I've removed (given that it was confusing, it's probably better not to try to keep any kind of backwards compatibility there). The 'build-nocheck' target is now equal to 'build' and thus pointless, but I've kept it for backwards compatibility. Change-Id: I874b7ae8d26e95efa86a00dd32cfa7fd19599b9d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89820 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de> Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-23configure,gbuild: gla11y fails on Fedora 31Michael Stahl2-2/+2
The problem is that the LD_LIBRARY_PATH on the command line causes /usr/bin/python to find LO's libpython*.so*: 18269: find library=libpython3.7m.so.1.0 [0]; searching 18269: search path=.../instdir/program (LD_LIBRARY_PATH) 18269: trying file=.../instdir/program/libpython3.7m.so.1.0 Presumably LD_LIBRARY_PATH is used to find bundled libxml/libxslt. So let's try to disable the broken case where a bundled lxml is used with system python and bundled libxml/libxslt; this cannot work. (regression from 84ef6d82546b044990f4efd57e51e29c6c6565c8) Change-Id: I67aa8250691cae8f899d65f674aa9da23a9d1d7a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90906 Reviewed-by: Samuel Thibault <sthibault@hypra.fr> Reviewed-by: Michael Stahl <michael.stahl@cib.de> Tested-by: Jenkins
2020-03-16make python warnings in our UITests error earlyNoel Grandin1-0/+1
rather than erroring only on some of the buildbots (in particular one of the daily buildbots seems to have this on by default) And fix a invalid escape sequence we discover in the process. Change-Id: Icd62dae2959e5117dec8949ce55dd484503fc446 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90565 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-03-11Revert "Revert "add some libs to libmerged""Noel Grandin1-0/+11
This reverts commit b8077713987253f6db0887ddad56fd6871374a8b. Reason for revert: Change-Id: I09b7d548a674fc8b2991be00616a7e95ec7d1444 sberg:You can probably reverts this again, as <https://ci.libreoffice.org/job/lo_daily_tb_win/162/> now succeeded with <https://gerrit.libreoffice.org/plugins/gitiles/core/+/9ed75e2c65544b4f71c73e1c51a68d74e31d544b%5E!/> "Properly use createOneInstanceComponentFactory for javaloader". Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90275 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-03-06tdf#130911: convert some token generation scripts from Perl to Python.Jussi Pakkanen1-2/+3
Change-Id: Id655b6a0cee7bdfe4804941f20fe358af8f3185e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89477 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-03-03Revert "add some libs to libmerged"Noel Grandin1-11/+0
This reverts commit 4ec76bdeeb000881cf46c78166dc02badb4f44db. Revert this for now to get the TB77 builds working again. Change-Id: I345ad54b5bc8e8a06dfba539c2cee8822a350f93 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89802 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-28gb_Package_get_clean_target must rm recursivelyStephan Bergmann1-1/+1
...so that e.g. `make Package_infoplist.clean` on macOS does not fail with > rm: instdir/LibreOffice.app/Contents/Resources/en.lproj: is a directory Change-Id: I41c74ef118eeae567f88affed073d4e65f9d1bb2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89696 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-02-28tdf#130809: Fix adding empty Contents/Resources/en.lproj into installation setsStephan Bergmann1-1/+1
...after 1fc85d03c46cedda136986fd6df7fe862893414b "Revert 'Make font-based unit test depend on instdir fonts'" accidentally broke cabadfc288e5e7324723c62f36b918a80db90323 "Introduce gb_Package_add_empty_directories" Change-Id: I077fe3f23c3b76797850577cb9e5ef519080a072 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89694 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-02-28macOS: don't sign executables earlyChristian Lohmaier1-9/+3
macOS 10.14 and later (Mojave & Catalina) will treat signed exectuables as "restricted binary" and in turn will block any use of DYLD_LIBRARY_PATH settings, causing the build to fail with e.g.: dyld: Library not loaded: @__VIA_LIBRARY_PATH__/libuno_sal.dylib.3 Referenced from: /Users/cloph/build/workdir/LinkTarget/Executable/genconv_dict Reason: unsafe use of relative rpath @__VIA_LIBRARY_PATH__/libuno_sal.dylib.3 in /Users/cloph/build/workdir/LinkTarget/Executable/genconv_dict with restricted binary Change-Id: Ia90d8fa6f28f9a2c10f6b46eb1796e2730550119 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/81599 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2020-02-26add some libs to libmergedNoel Grandin1-0/+11
another small chunk of libs shared by calc/write/impress, doing this in stages in case anything goes wrong. Change-Id: Ica162828565e825b8eaeb223eb3ab132880a6279 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89166 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-25fix --enable-mergedlibs buildNoel Grandin1-2/+2
after my recent additions to the list of libs exceeded Windows command line length limit (mostly affecting those people whose workspace was under a fairly long folder name) Change-Id: I4d60e9704db49f0a3f562200b737879fba7ee5a8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89420 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-20add macOS malloc debugging env varsNoel Grandin1-0/+1
which would have saved me some time when debugging a recent macOS issue. Change-Id: I370826501db14fc563b553428f480f50bde48f9e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89056 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-19add --enable-optimized=debugLuboš Luňák3-1/+7
This will use -Og with GCC/Clang instead of -O0, which should make unittests run faster without (hopefully) breaking anything related to debugging. This is primarily meant to Jenkins builds, where debug info is rarely needed (backtraces for unittest crashes AFAICT). This can be also used to make LO itself run faster when developing, but I personally do not find it worth it (with Clang and full PCH this makes starmath build take about 70% longer, although presumably for non-PCH builds the relative increase will be smaller). Change-Id: I198d0759ebca94c90be662e02e0f1281a24d1d70 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88917 Reviewed-by: Michael Stahl <michael.stahl@cib.de> Reviewed-by: Luboš Luňák <l.lunak@collabora.com> Tested-by: Jenkins
2020-02-19add some libs to libmergedNoel Grandin1-0/+10
another small chunk of libs shared by calc/write/impress, doing this in stages in case anything goes wrong. Change-Id: I7bb47bf1dfa0cc12cbcb881da8405bdef41cb378 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88843 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-16GBUILD_TRACE, support for finding out where the build time is spentLuboš Luňák51-52/+328
See instructions in solenv/gbuild/Trace.mk . This generates a file than can be viewed e.g. in the Chromium tracing view. Change-Id: I5f90647c58ca729375525b6daed2d4918adc8188 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88754 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-02-14add some more libs to libmergedNoel Grandin1-0/+6
Change-Id: I9e1677c26cf082ed78765995bfa7f57ff50f8e7c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88580 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-12add some more libs to libmergedNoel Grandin1-0/+9
Change-Id: I2d3c3d64f1fb1d3635bdde761f6502ba05221f95 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88522 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-12add some more libs to libmergedNoel Grandin1-0/+5
Change-Id: I14ec1c6015c8a71fabca90ca3dec52965915a63f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88511 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-11Fix duplicate "stringresource" in MERGE_LIBRARY_LISTStephan Bergmann1-1/+0
...where both entries were added with 40fe721462df5bedacddc8829cefc3d739cf940f "add some more libs to libmerged", and defining Library_stringresource in scripting/Module_scripting.mk is conditional on BUILD_TYPE SCRIPTING. This will hopefully fix <https://ci.libreoffice.org/job/lo_callgrind_linux/7884/> (which apparently uses --enable-mergelibs), > /usr/bin/ld: /home/buildslave/lode/jenkins/workspace/lo_callgrind_linux/workdir/CxxObject/scripting/source/stringresource/stringresource.o: in function `stringresource::StringResourceImpl::isReadOnly()': > /home/buildslave/lode/jenkins/workspace/lo_callgrind_linux/scripting/source/stringresource/stringresource.cxx:297: multiple definition of `stringresource::StringResourceImpl::isReadOnly()'; /home/buildslave/lode/jenkins/workspace/lo_callgrind_linux/workdir/CxxObject/scripting/source/stringresource/stringresource.o:/home/buildslave/lode/jenkins/workspace/lo_callgrind_linux/scripting/source/stringresource/stringresource.cxx:297: first defined here > /usr/bin/ld: /home/buildslave/lode/jenkins/workspace/lo_callgrind_linux/workdir/CxxObject/scripting/source/stringresource/stringresource.o: in function `stringresource::StringResourceImpl::loadLocale(stringresource::LocaleItem*)': > /home/buildslave/lode/jenkins/workspace/lo_callgrind_linux/scripting/source/stringresource/stringresource.cxx:659: multiple definition of `stringresource::StringResourceImpl::loadLocale(stringresource::LocaleItem*)'; /home/buildslave/lode/jenkins/workspace/lo_callgrind_linux/workdir/CxxObject/scripting/source/stringresource/stringresource.o:/home/buildslave/lode/jenkins/workspace/lo_callgrind_linux/scripting/source/stringresource/stringresource.cxx:659: first defined here [...] Change-Id: Ie667487bced048d3b0b0081a9fa4abafa090f02b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88468 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Andras Timar <andras.timar@collabora.com> Tested-by: Jenkins
2020-02-11add some more libs to libmergedNoel Grandin1-0/+7
and fix a consequent symbol name clash in basctl Change-Id: Idc836fcbb379e1046a60008391635eb6241b27c7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88188 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-10ignore -DGLM_FORCE_CTOR_INIT for shared PCHLuboš Luňák1-0/+1
It's not used by the PCH, so it's safe. Change-Id: Ia86bf0ff31bc40b81b10517f8abd33e9170dba2a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88362 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-02-10add BLOCK_PCH to gbuild, allowing partial non-PCH rebuildsLuboš Luňák4-23/+47
Both MSVC and Clang (with -building-pch-with-obj) generate one extra object file for code from the PCH, saving repeated generating of this code for every object using the PCH. This causes problems when temporarily disabling PCH by doing 'make ENABLE_PCH=' (e.g. when checking #include's are correct), as this object would no longer be linked in, and objects not rebuilt with PCH disabled would still need it. This patch allows doing 'make BLOCK_PCH=1' instead, which will disable PCH with the exception of this object file still getting linked in. Change-Id: I8fcb150ef27ebb34118d62739a1a1558aa1a6f3d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88341 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-02-06gb_CppunitTest__use_java_ure can be private againStephan Bergmann1-2/+2
...(which it already was until 1f6e670605cc856a6e9febb024f9cb2427156020 "gbuild: require java UNO runtime explicitly"), as 2a87b3b5aed8296a7506374fd5324c5659a88cb5 made that implicitly called from gb_CppunitTest_use_jar(s), so its (sole outside) use in postprocess/CppunitTest_services.mk is redundant Change-Id: I9928521d184c54688de134ff3b9b5743ba3509c5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88134 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-02-06Missing test dependencyStephan Bergmann1-1/+2
...for CppunitTest that use Java, like CppunitTest_dbaccess_hsqldb_test failing with something like > warn:jfw:2880195:2880195:jvmfwk/source/fwkbase.cxx:94: [Java framework] A vendor settings file was not specified.Check the bootstrap parameter UNO_JAVA_JFW_VENDOR_SETTINGS. > warn:jfw:2880195:2880195:jvmfwk/source/framework.cxx:582: [Java framework] A vendor settings file was not specified.Check the bootstrap parameter UNO_JAVA_JFW_VENDOR_SETTINGS. because the jvmfwk3 ini file is missing from instdir. (Should those tests also set UNO_JAVA_JFW_ENV_JREHOME=true, as is done in unotest/source/cpp/officeconnection.cxx and unotest/source/java/org/openoffice/test/OfficeConnection.java?) Change-Id: Iabf1198246c17410e71d5b85454662ff85a7b478 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88112 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-02-06No more need to add unoil.jar to URE_MORE_JAVA_TYPESStephan Bergmann1-4/+0
...after ae855bf48163ff64d94cfc34aff8e37abdb5518d "tdf#117331 Merge jurt and unoil into ridl" Change-Id: Idf640b8c3bb9d8a19e26d494498b9902a75f4e64 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88053 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-02-06Fix typo in call to gb_CppunitTest_use_java_ureStephan Bergmann1-1/+1
...which had been renamed from gb_CppunitTest__use_java_ure in 1f6e670605cc856a6e9febb024f9cb2427156020 "gbuild: require java UNO runtime explicitly", apparently forgetting to adapt this use Change-Id: Ia093fcf2a5728247c259e549722329ade7b60931 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88052 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-02-06Nothing should link against unoil.jar any moreStephan Bergmann1-3/+2
...after ae855bf48163ff64d94cfc34aff8e37abdb5518d "tdf#117331 Merge jurt and unoil into ridl", so no need any longer to filter it out of the classpath here Change-Id: Ifb01de5d9efa7ed264824030ad0e1333ab8b43ab Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88054 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-02-04tdf#117331 Merge jurt and unoil into ridlSamuel Mehrbrodt3-5/+9
jurt.jar and unoil.jar are kept as effectively empty jars, each with a Class-Path: ridl.jar in their meta-inf/manifest.mf, so that 3rd-party code loading them (with or without also loading ridl.jar) will still have access to their content. Conceptually, the UNOIDL entities in unoil.jar (corresponding to module offapi) are not part of the URE, but are now made available by URE's ridl.jar. This should probably not cause problems in practice. At least for now, we seal exactly those packages in ridl.jar that were originally sealed in jurt.jar. Ideally, all of ridl.jar could be sealed now, but that would be mildly incompatible, as it would prevent 3rd-party code from introducing additional UNOIDL entities in the relevant namespaces (even if that is something we do not want 3rd-party code to do anyway). However, some JunitTest_jurt_* define classes in those sealed packages. In the past they got away with that by using gb_JunitTest_use_jar_classset,*,jurt. Instead they now need to gb_JunitTest_use_jar_classset,*,ridl and drop the gb_JunitTest_use_jar,*,ridl. But the former only makes available the classes that are specified in ridljar/Jar_ridl.mk with gb_Jar_add_sourcefiles, not the UNOIDL entities specified via gb_Jar_add_packagedirs. But the tests need the udkapi UNOIDL entities, so introduce gb_JunitTest_add_classpath to let the tests get them explicitly. (Curiously, JunitTest_jurt_uno and JnitTest_jurt_util use gb_JunitTest_use_jar_classset,*,jurt but don't seem to acutally need it; lets leave that for a follow-up clean up.) As a follow-up clean up, relevant files could be moved from jurt/ to ridljar/. Change-Id: I836f4e7bb47fb41f1306e3f223da90dba988eb9a Co-authored-by: Stephan Bergmann <sbergman@redhat.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/84946 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-02-03Optionally generate PDBs also for C#Juergen Funk1-0/+3
Enables pdb generation for symbol builds, for: - cli_basetypes.dll - cli_cppuhelper.dll - cli_uno.dll - cli_ure.dll Not covered are: - cli_oootypes.dll - cli_uretypes.dll ..as sadly climaker generates those, and can't produce PDBs. Change-Id: I6004e06f9f2a76b4577ad9a4de971f46ad6bf521 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87727 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2020-01-20only enable windows incremental linking for debug buildsNoel Grandin1-1/+3
not necessary for optimised builds Change-Id: I33e7ff372b8b2fd35d6d45b552aceda36aaeba95 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87054 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-01-18use -Wl,-dead_strip on Mac, its linker doesn't know -Wl,--gc-sectionsLuboš Luňák1-1/+1
Change-Id: Ic69d0030a46fe4753cc75da58bb2c15cf009b135 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87023 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-01-18support Clang's -fmodules-codegen/debuginfo options for PCH buildingLuboš Luňák1-1/+15
These (starting with my patches for Clang-to-be-10) allowing emitting debuginfo and functions into a dedicated object file, so that all the normal compilations using the PCH can skip those, thus saving the time. The debuginfo option seems to always be worth it. The codegen option is more tricky, it doesn't seem to be worth it for optimized builds (optimizing all the functions in that one object file costs too much). This requires also using --Wl,--gc-sections . The reason is that the object file contains all template instances instantiated from the PCH, so that they can be shared, but the template instance may come from another library or use a private symbol from that library. For example the std::unique_ptr<ScInterpreterContext> in ScInterpreterContextPool in the header refers to ScInterpreterContext dtor. But even though both these classes are private, the header gets used also by scfilt, because there it is included by document.hxx because of a private ScDocument data member. So even though nothing in scfilt uses ScInterpreterContext, the PCH object file will refer to it. Fortunately that template instance itself is not used by scfilt, so --gc-sections will remove it. Change-Id: I2a06ebcc4dd4175424b3a72ab3ebcaf2ac3ee295 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87011 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-01-18add support for Clang's -building-pch-with-objLuboš Luňák3-5/+26
This marks the PCH as having an accompanying object file, and this object file needs to be also built, but this allows the compiler to skip generating stuff that'd be shared by all the objects using the PCH. Currently it doesn't make much of a difference, few symbols if any, but template instantiations could be shared this way, as soon as Clang gets the necessary support (my WIP patch). Change-Id: Ib1b86338d85a47b48979558435253dc2672a0da8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87009 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-01-09Get PDB files to work for soffice.bin and unopkg.binJuergen Funk1-1/+1
..by renaming them to *.bin.pdb, so WinDbg picks them up. Follow-up fix to commit 6ca3adf22b62b88b313c8fc9311183efdabe445a Change-Id: I5cb7b305c997b423cf0cd70835163811f75b3e25 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86465 Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de> Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2020-01-08Enable Clang -Wembedded-directiveStephan Bergmann1-0/+2
...which might have helped avoid the confusion with patch set 6 of <https://gerrit.libreoffice.org/c/core/+/84765/6> "python3: upgrade to release 3.7.6", in that it would have reported: > pyuno/source/module/pyuno.cxx:340:2: error: embedding a directive within macro arguments has undefined behavior [-Werror,-Wembedded-directive] > #if PY_VERSION_HEX >= 0x030200f0 > ^ > pyuno/source/module/pyuno.cxx:342:2: error: embedding a directive within macro arguments has undefined behavior [-Werror,-Wembedded-directive] > #else > ^ (-Wembedded-directive was introduced with <https://github.com/llvm/llvm-project/ commit/300237f00c7ddf9c74de96272f2bb571fda61202> "Add a warning flag for ext_embedded_directive. gcc considers this undefined" in 2011, so should be available in all versions of Clang relevant for us.) Change-Id: I4d90212aac30ba8715496d8c99cc6de05c6dc99a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86394 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-01-06macOS /usr/bin/mktemp already adds a dot to the prefixStephan Bergmann1-1/+1
(at least the version on macOS 10.15.2 does) Change-Id: Ie7525216542e1db686adb151774d20ff69d9e8f3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86252 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-12-19Fix typo in codeAndrea Gelmini1-3/+3
Change-Id: I7c71e16628819bd60664f9b4dc70f0f0762afb48 Reviewed-on: https://gerrit.libreoffice.org/85521 Reviewed-by: Michael Stahl <michael.stahl@cib.de> Tested-by: Jenkins