[Libreoffice-commits] core.git: Changes to 'private/tml/lov-7.0.3.3'

Caolán McNamara (via logerrit) logerrit at kemper.freedesktop.org
Sat Dec 5 07:59:39 UTC 2020


New branch 'private/tml/lov-7.0.3.3' available with the following commits:
commit 5037140059140a9027b7242c41883e90893374b5
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Thu Oct 29 15:45:01 2020 +0000

    fix --disable-pdfium build
    
    Change-Id: I580972220bc39abe16288fa62c717e4ab25833d9
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105015
    Tested-by: Jenkins
    Tested-by: René Engelhard <rene at debian.org>
    Reviewed-by: René Engelhard <rene at debian.org>
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>

commit 7c0cac16aaff0c1722e1c6525631b0a2f7b7b65f
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Dec 2 11:14:19 2020 +0100

    external/firebird: Fix checks for null HANDLE in Windows-only code
    
    Change-Id: I428bbdae91eaf69df43ae054a95e8da3fb1aa7dc
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107056
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>

commit 6c4ec8adf22e8f81e694697a0855d5f0a35c0e8c
Author: Tor Lillqvist <tml at iki.fi>
Date:   Fri Nov 27 00:41:00 2020 +0200

    Fix Firebird build on macOS on arm64
    
    Must set RAW_DEVICES_FLG=N for this architecture, too. Make the
    prefix.darwin_arm64 match the x86_64 one. Don't bother defining ARM64,
    just check for __aarch64__.
    
    Change-Id: I9de67493cb159ce97a46cdd1974b04753518c703
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106716
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>

commit ad93b8693143169954b2688e399424a2532f25b3
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Nov 24 08:22:51 2020 +0100

    New UBSan failures with Firebird 3.0.7
    
    While building ExternalProject_firebird:  For one, the ICU UCHAR_TYPE mismatch
    
    > workdir/UnpackedTarball/firebird/src/intl/cs_icu.cpp:66:30: runtime error: call to function ucnv_fromUChars_68 through pointer to incorrect function type 'int (*)(UConverter *, char *, int, const unsigned short *, int, UErrorCode *)'
    
    from 61411db9f719d793f0665a4d278e0748e8fcd75f "external/firebird: ICU_UCHAR_TYPE
    breaks -fsanitize=function" returned in a slightly different form.  Instead of
    passing in the problematic UCHAR_TYPE macro from
    external/firebird/ExternalProject_firebird.mk, Firebird now set it internally in
    src/common/common.h.  And for another, it grew a new invalid-shift-base at
    
    > workdir/UnpackedTarball/firebird/src/yvalve/gds.cpp:2564:33: runtime error: left shift of negative value -1
    
    (And beyond that there were no further new ASan/UBSan issues with a full `make
    check screenshot`.)
    
    Change-Id: Ie15cf6bde2df7dc784fec89045026f71747aa0bb
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106477
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>

commit b23f6e28c937c81855a8ec175c64256ffcaa3e30
Author: Julien Nabet <serval2412 at yahoo.fr>
Date:   Fri Nov 13 18:45:29 2020 +0100

    firebird: update to 3.0.7
    
    This tries to get rid of a lot of cruft from older builds and it
    also aims to build as much as possible on Windows.
    
    The firebird-cygwin-msvc-warnings.patch should be optional. It
    gets rid of various compiler warnings on Windows, either by
    disableing or fixing them:
    - fix: D9002 - ignoring unknown option '-fno-rtti'
    - fix: D9024 - unrecognized source file type <filename>, object
      file assumed
    - ign: C4291 - <declaration>: no matching operator delete found;
      memory will not be freed if initialization throws an exception
    - ign: C4477 - <function>: format string <string> requires an
      argument of type <type>, but variadic argument number has
      type <type>
    
    And I explicitly got rid of the "win32" handling and simply use
    arch depending patches on Windows, which strips additional stuff.
    
    sberg adds:  I have no idea how in an upstream macOS build the empbuild
    executible in gen/examples should now find @rpath/lib/libfbclient.dylib, as it
    does not have an RPATH set.  So add an appropriate one in
    external/firebird/firebird-macosx.patch.1's patch of
    builds/posix/Makefile.in.examples (which needs to know whether we do a Debug or
    a Release build; an attempt of using firebird's $(IsDeveloper) for that caused
    other failures, see bca0dc97bf3d1348c928bdaf4964524374835823 "Revert
    'external/firebird: Pass --enable-developer into configure'", so use LO's
    $(ENABLE_DEBUG) and rely on that being exported from LO's make into firebird's
    make).  Also, the fbclient and Engine12 dylibs now have RPATHs set which we do
    not need in LO (where we still stick to our general use of @loader_path), so
    drop them in external/firebird/ExternalProject_firebird.mk (even though leaving
    them in should be harmless).
    
    Change-Id: Id34bb88900d15f89adda03e34af2ac3d4f6aa085
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105440
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>

commit ade1476eb487fda0db2c1009af193ced5f7a4658
Author: Jan-Marek Glogowski <glogow at fbihome.de>
Date:   Sun Nov 15 19:57:48 2020 +0100

    firebird: build fixes (incl. parallel build)
    
    The main idea is to get rid of the "unset MAKEFLAGS". AFAI can
    see, the whole CPU stuff isn't used anymore. So we can drop the
    whole FB_CPU_ARG handling. Since LO doesn't use any of make's
    implicit rules, the build breaks, but luckily it just requires a
    single rule for the btyacc build - just a Firebuild build tool.
    
    Then there is the whole broken handling of LIBTOMMATH and
    LIBATOMIC_OPS already in LO's configure.ac. I don't know if any
    internal build of Firebird with these as system libs would work.
    I guess people either have a system Firebird or also build with
    internal libtommath and libatomic_ops. This fixes just the
    obvious errors. I didn't try to build it, so there might still
    be typos (TBH I thought hard about just dropping the system
    build of these libraries, after seeing the broken configure.ac).
    
    And I'm not sure our / the system boost preprocessor library is
    ever used over the Firebird-internal copy. It also looks like
    it's also just used in an other build tool and nothing of the
    Firebird DB itself depends on it.
    
    Then there is the movement of the install_name_tool / otool
    patching on MacOS from the patch into the ExternalProject to
    further shrink the patches, as the build doesn't depend on it.
    
    This also introduces a different debug build mode for the
    gcc-/g++-wrapper: MSVC_USE_INDIVIDUAL_PDBS.
    It uses -Fd to write a separate PDB per output file instead of
    using -FS to use sync writes to a single PDB, which might work
    around the PDB access failures seen by Jenkins for linking
    executables. In theory it's also faster and should work with all
    the other wrapper users, but I don't want to open that can of
    additional build errors (yet), for eventually marginal gains.
    
    Change-Id: I8d4c5d2f17def9e840a67ef1004787e8baaffa83
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105902
    Tested-by: Jenkins
    Reviewed-by: Jan-Marek Glogowski <glogow at fbihome.de>

commit 6dc9894b30bb3b682b365afd97cdc17c28bd2877
Author: Tor Lillqvist <tml at collabora.com>
Date:   Mon Nov 16 19:29:04 2020 +0000

    Make firebird build for macOS on arm64
    
    No idea whether it works.
    
    Change-Id: I008cf9fab56bedb2e1f33ad6a99c9cd95d7483a7
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106024
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>

commit 2878a7b3ab242c6ea501d7c8531100c4fc29a828
Author: Jan-Marek Glogowski <glogow at fbihome.de>
Date:   Mon Nov 16 11:31:54 2020 +0100

    firebird: fix Thread handle type on Windows
    
    MSVC compiler complains about 'warning C4312: "reinterpret_cast":
    conversion from "unsigned long" to "HANDLE" of greater size'.
    Seems like an real error, if real_handle is too small to hold the
    full "HANDLE" value, returned by _beginthreadex.
    
    Upstream strangely just fixed in master, not B3_0_Release branch.
    
    Change-Id: I87ad263529e119f68da976245646bf8b69efd35a
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105924
    Tested-by: Jenkins
    Reviewed-by: Mike Kaganski <mike.kaganski at collabora.com>
    Reviewed-by: Jan-Marek Glogowski <glogow at fbihome.de>

commit e987102f34276ed9534550e2753cc65eca12a55b
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Mon Nov 16 15:22:55 2020 +0100

    Modify the non-symlink libfbclient.dylib.3.0.0
    
    At least in my --enable-debug build,
    workdir/UnpackedTarball/firebird/gen/Debug/firebird/lib originally contains
    
      libfbclient.dylib -> libfbclient.dylib.2
      libfbclient.dylib.2 -> libfbclient.dylib.3.0.0
      libfbclient.dylib.3.0.0
    
    so if we modify libfbclient.dylib with install_name_tool, it will break the
    symlink and modify libfbclient.dylib but not libfbclient.dylib.3.0.0---where the
    latter is what gets delivered via external/firebird/ExternalPackage_firebird.mk.
    
    (This didn't cause any issues, though, because gb_LinkTarget__use_libfbembed in
    RepositoryExternal.mk links against the modified libfbclient.dylib in workdir,
    not against the delivered libfbclient.dylib.3.0.0, so e.g. Library_firebird_sdbc
    did already contain the correct @loader_path/libfbclient.dylib.3.0.0 reference.
    Also, the `install_name_tool -id` treatment of libEngine12.dylib in
    external/firebird/firebird-macosx.patch.1 should not technically be necessary,
    as nothing links against that library; but if left unmodified, it would record
    the build machine's
    
      /full-path-to/workdir/UnpackedTarball/firebird/gen/Debug/firebird/plugins/libEngine12.dylib
    
    so better "clean it up".  Also, the `install_name_tool -change` treatment of
    libEngine12.dylib in external/firebird/firebird-macosx.patch.1 is necessary
    because otherwise it would record a full-path dependency to
    
      /full-path-to/workdir/UnpackedTarball/firebird/gen/Debug/firebird/lib/libfbclient.dylib.3.0.0
    
    which macosx-change-install-names.pl, called from MAKE_POST in
    external/firebird/ExternalProject_firebird.mk, would not adjust.  With all those
    modifications in external/firebird/firebird-macosx.patch.1, the call to
    macosx-change-install-names.pl should effectively have nothing left to do, as
    these libraries do not depend on any other LO-provided libraries, but better
    leave it in place anyway.)
    
    Change-Id: Icf7f2ff5cb844b07be223e0b74cd6a650725777a
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105946
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>

commit a6aa52da18d1f4765f0357743c34dcb6d95da5d9
Author: Tor Lillqvist <tml at collabora.com>
Date:   Fri Nov 20 01:02:02 2020 +0200

    Check first if there is such a "bin" directory before attempting to use it
    
    In the test-install target in Makefile.in we remove the "bin" folder
    of the LibreOfficePython framework.
    
    Change-Id: Idf3d440c4f9465f21b5dcae60d4fc5ac21965dd8
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106284
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106398
    Tested-by: Jenkins

commit 404e685497ed16669b5810bbbd23385cb04f2957
Author: Tor Lillqvist <tml at collabora.com>
Date:   Thu Nov 19 22:04:21 2020 +0200

    Allow --enable-macosx-sandbox without the codesigning identities
    
    For cases where you just want "make test-install" to construct an app
    bundle that you will manipulate and then sign separately.
    
    Change-Id: Iad805618f74ec783ebc013a664f928511b388383
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106185
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106260
    Tested-by: Jenkins

commit be89f23ac665c7b16cfc997b75df06bae8535870
Author: Tor Lillqvist <tml at collabora.com>
Date:   Wed Dec 2 12:21:36 2020 +0200

    Drop Python modules we don't want on macOS, too, like on other platforms
    
    On macOS, for various reasons, we use a different approach than on
    other platforms to construct the bundled Python.
    
    Instead of explicitly listing what to include (out of what Python
    contains and builds) (in ExternalPackage_python3.mk), after Python is
    built, we remove stuff we don't want (in ExternalProject_python3.mk)
    and then include everything left in the LibreOfficePython.framework
    (in GeneratedPackage_python3.mk).
    
    This fixes a problem in App Store review: For some reason the review
    said that the setcchar() function from the ncurses library, used by
    Python's curses module, is non-public. No idea why the (automated)
    review picked on that function. As far as I see from the ncurses
    header in the SDK, that function is no less public than the other
    ncurses functions that the Python module uses.
    
    But oh well, we don't actually ship the curses module anyway on other
    platforms, so just drop it on macOS, too. And while at it, drop the
    other unwanted ones, too. And any binary shared libraries for them.
    
    Change-Id: Idecaf10a6fb1c59e8711095927f5699b8d2ec98e
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107055
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107141
    Tested-by: Tor Lillqvist <tml at collabora.com>

commit 52af800fa5116d1914b3bb82a3f21a1f24433993
Author: Tor Lillqvist <tml at collabora.com>
Date:   Wed Sep 23 10:34:40 2020 +0300

    tdf#135479: Seems we need the more broad entitlement for Java's sake
    
    Sad, but OK.
    
    This reverts part of 2c366aae9263dc4115b054fe74b90cabea61fa0b.
    
    Change-Id: I6b74c871e3ec2408f833a5e2b652fd19cb7a2c0e
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103230
    Tested-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106994
    Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice at googlemail.com>
    Tested-by: Jenkins

commit 757d7220b707283f260a175e7d07fd5446dcd6e2
Author: Tor Lillqvist <tml at iki.fi>
Date:   Sun Nov 15 13:30:34 2020 +0000

    Make python3 build on macOS 11, including for arm64
    
    A combination of what is two separate commits in master.
    
    Change-Id: I92ac0c500388730eca0be4766f07b1af2d2808e0
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106471
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 4414314fe5d675ec49e7932f43ebf01f48548c67
Author: Tor Lillqvist <tml at collabora.com>
Date:   Thu Nov 12 21:46:06 2020 +0200

    Make bridgetest exercise parameter passing in the C++/UNO bridge harder
    
    The C++/UNO bridge for macOS on arm64 currently uses the Linux code.
    Apple's ABI uses slightly different parameter passing on the stack,
    though. See
    https://developer.apple.com/documentation/xcode/writing_arm64_code_for_apple_platforms?language=objc
    
    That has not been taken into account yet in the bridge code. The
    bridgetest, when run on macOS on arm64, didn't notice, sadly, but
    succeeded. With this change it crashes, as one would expect it to do.
    
    Add one more byte and short parameter to the setValues(), setValues2()
    and getValues() calls in the XBridgeTestBase interface. The stack
    allocation for those [in] parameters to setValues() differ between the
    Linux and Apple ABIs. Add corresponding attributes to the interface,
    and members to the SimpleTest struct.
    
    The changes to the source files in the cli subdirectory (C++/CLI,
    VB.NET, and C#) are done blindly as they aren't compiled even on
    Windows currently. Most likely the changes to them are incomplete and
    erroneous.
    
    Change-Id: I6f689a130d89b23cad9918829107d7da49a79c55
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105770
    Tested-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105888
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106470
    Tested-by: Caolán McNamara <caolanm at redhat.com>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 00bafe42cc11585ae83ea9373b782ef968445dbe
Author: Tor Lillqvist <tml at collabora.com>
Date:   Thu Nov 12 11:35:57 2020 +0200

    Cosmetic change to make it easier to see which parameter is the nth
    
    Consequently put each parameter/argument on a separate line for the
    get/setValues methods.
    
    Will make it easier to add more parameters of such types and at such
    positions that they catch errors in the C++/UNO bridge on more
    platforms (specifically, the one for macOS on Apple Silicon).
    
    Change-Id: I68578d0401358317f3baf913ef4d53009c8f5f2f
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105633
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105887
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106469
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit d84bb1e9b8d93332b267085cff4fb150a35a39f2
Author: Tor Lillqvist <tml at collabora.com>
Date:   Tue Nov 3 22:00:08 2020 +0200

    Make --without-webdav work even with --enable-mpl-subset
    
    Change-Id: I319e0b3aefa721f2503494783af6d73470f592a2
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105271
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106468
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit ef040559fe864a70717ec6fdb1ea7aa667be7054
Author: Tor Lillqvist <tml at collabora.com>
Date:   Mon Oct 19 20:52:46 2020 +0100

    Fix nss build for x86_64 on an Apple Silicon Mac
    
    Change-Id: I337f2a8e777394e586f659fadd819cf7dfc0a332
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104546
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Tested-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106467
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 3f398a6d07c4727584da7b7b31a0b03092a6406a
Author: Tor Lillqvist <tml at collabora.com>
Date:   Fri Sep 18 23:06:07 2020 +0300

    The config.{guess,sub} in $SRCDIR is good for external projects, too
    
    No need for the older second copies in solenv/gbuild.
    
    Change-Id: I088f7d06b0727d1b336e3ba314b5c874d8ce3776
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103027
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106466
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit ddcc08dd34b5a06e379743726f5230e98607a2e8
Author: Tor Lillqvist <tml at collabora.com>
Date:   Sun Aug 9 10:51:22 2020 +0100

    Make the C++/UNO bridge work on macOS on arm64
    
    Use the same code as for Linux on aarch64, with minor additional
    hacks. (There are slight differences in the ABI. See
    https://developer.apple.com/library/archive/documentation/Xcode/Conceptual/iPhoneOSABIReference/Articles/ARM64FunctionCallingConventions.html
    
    The run-time code generation requires use of a new API on macOS to
    work: See the use of pthread_jit_write_protect_np() in
    bridges/source/cpp_uno/shared/vtablefactory.cxx.
    
    Unlike the arm64 ABI used on Linux, on macOS (and iOS, but we don't
    really use the C++/UNO bridge for iOS) we need to pack parameters
    smaller than eight bytes according to their natural alignment. Bytes
    take one byte, shorts two bytes aligned at a two-byte boundary, etc.
    
    For some reason, when compiling for arm64-apple-macos, the symbols for
    the type_infos for the UNO exception types
    (_ZTIN3com3sun4star3uno16RuntimeExceptionE etc) end up as "weak
    private external" in the object file, as displayed by "nm -f
    darwin". We try to look them up with dlsym(), but that then fails. So
    use a gross hack: Introduce separate real variables that point to
    these typeinfos, and look up and dereference them instead. If this
    hack ends up needing to be permanent, instead of having a manually
    edited set of such pointer variables, we should teach codemaker to
    generate corresponding functions, and look up and invoke them to get
    the std::type_info pointer.
    
    When compiling for x86_64-apple-macos, the type_info symbols end up as
    "weak external" which is fine.
    
    (This is a combination of what was two patches in master.)
    
    Change-Id: I05f46a122a51ade1ac7dccd57cb90e594547740e
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106465
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 4ae105347045c88e774669f3c89793567198ad41
Author: Tor Lillqvist <tml at collabora.com>
Date:   Fri Aug 7 08:34:42 2020 +0100

    Use <alloca.h> for macOS and iOS, too
    
    Change-Id: I20f349cc03fe28536470c19f2559cc5414b823fb
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100284
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106464
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit f1f5282d3963ea2a1ed007faaeaa87b7d1f6e96d
Author: Tor Lillqvist <tml at collabora.com>
Date:   Thu Aug 6 16:23:03 2020 +0300

    Update config.{guess,sub} with latest versions and handle fallout of that
    
    From http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
    and http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD .
    
    This time, do not apply the add-on change from
    25a09c8776cc6088a5b2bf13dc84eb386c26bb7e to config.sub, but keep it
    pristine. Instead, let's start using the name "aarch64" instead of
    "arm64" for macOS and iOS in the autofoo context, as that is what
    those tools call it. Clang and Apple call it arm64, though.
    
    Change-Id: I1e05866c5fb08e0800cdfeaf7f6a71bfb43d1777
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100272
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106463
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 4831ab4ea8edb07376755ece0217ba6074dc58dc
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Jul 29 02:50:32 2020 -0400

    Replace brittle gcc3_linux_aarch64 vtableSlotCall with pure assembler code
    
    *  For one, as discussed in the comment at <https://gerrit.libreoffice.org/c/
    core/+/91978/2#message-97da6c6ece7ae7bd49e9eb4843be333192fcc057> "Port to
    FreeBSD aarch64":
    
    "So it looks like Clang does not treat those register asm as we expect it would,
    at least on aarch64.
    
    "Witness a local Linux recent master --with-distro=LibreOfficeAndroidAarch64
    [i.e., using Clang] build's
    
    > $ llvm-objdump --disassemble instdir/program/libgcc3_uno.a
    [...]
    > 0000000000000000 <vtableSlotCall>:
    >        0: ff 43 03 d1   sub     sp, sp, #208
    >        4: f4 4f 0b a9   stp     x20, x19, [sp, #176]
    >        8: fd 7b 0c a9   stp     x29, x30, [sp, #192]
    >        c: fd 03 03 91   add     x29, sp, #192
    >       10: a8 43 00 91   add     x8, x29, #16
    >       14: bf 83 1d f8   stur    xzr, [x29, #-40]
    >       18: e0 07 04 a9   stp     x0, x1, [sp, #64]
    >       1c: e2 0f 05 a9   stp     x2, x3, [sp, #80]
    >       20: e4 17 06 a9   stp     x4, x5, [sp, #96]
    >       24: e6 1f 07 a9   stp     x6, x7, [sp, #112]
    >       28: e0 07 00 6d   stp     d0, d1, [sp]
    >       2c: e2 0f 01 6d   stp     d2, d3, [sp, #16]
    >       30: e4 17 02 6d   stp     d4, d5, [sp, #32]
    >       34: e6 1f 03 6d   stp     d6, d7, [sp, #48]
    >       38: a8 03 1c f8   stur    x8, [x29, #-64]
    >       3c: a0 43 5e b8   ldur    w0, [x29, #-28]
    >       40: a1 03 5e b8   ldur    w1, [x29, #-32]
    >       44: a5 83 5e f8   ldur    x5, [x29, #-24]
    >       48: e4 03 08 aa   mov     x4, x8
    >       4c: e2 03 01 91   add     x2, sp, #64
    >       50: e3 03 00 91   mov     x3, sp
    >       54: f3 03 01 91   add     x19, sp, #64
    >       58: f4 03 00 91   mov     x20, sp
    >       5c: 00 00 00 94   bl      0x5c <vtableSlotCall+0x5c>
    >       60: 60 06 40 a9   ldp     x0, x1, [x19]
    >       64: 80 06 40 6d   ldp     d0, d1, [x20]
    >       68: 82 0e 41 6d   ldp     d2, d3, [x20, #16]
    >       6c: fd 7b 4c a9   ldp     x29, x30, [sp, #192]
    >       70: f4 4f 4b a9   ldp     x20, x19, [sp, #176]
    >       74: ff 43 03 91   add     sp, sp, #208
    >       78: c0 03 5f d6   ret
    [...]
    
    vs. [this commit's vtableslotcall.s; see below for details].
    
    "And also latest Clang 12 trunk still does e.g.
    
    > $ cat test.c
    > void f(long);
    > void g() {
    >     register long volatile a asm ("x8");
    >     f(a);
    > }
    > $ clang --target=unknown-linux-aarch64 -S -O2 test.c
    > $ cat test.s
    >         .text
    >         .file   "test.c"
    >         .globl  g                               // -- Begin function g
    >         .p2align        2
    >         .type   g, at function
    > g:                                      // @g
    > // %bb.0:                               // %entry
    >         sub     sp, sp, #16                     // =16
    >         ldr     x0, [sp, #8]
    >         add     sp, sp, #16                     // =16
    >         b       f
    > .Lfunc_end0:
    >         .size   g, .Lfunc_end0-g
    >                                         // -- End function
    >         .ident  "clang version 12.0.0 (git at github.com:llvm/llvm-project eb31ddd71eb44d53ebe12a09c9587198bb6f2a2e)"
    >         .section        ".note.GNU-stack","", at progbits
    >         .addrsig
    
    "(This is probably also the underlying issue that
    eb15ac837e06087fb8148330e9171d6697d89ee6 'android: Avoid throwing exceptions
    through the bridges' tries to hack arond.)"
    
    *  For another, this also gets rid of the
    dddb527db1562f30a2a2b20338dfc8458086a4a9 "Again, no -fstack-protector-strong for
    gcc3_linux_aarch64/cpp2uno.cxx" hack.
    
    The contents of the new vtableslotcall.s is effectively the GCC 10 -S output of
    the old vtableSlotCall C++ function from cpp2uno.cxx.  (And as cpp2uno.cxx only
    takes the address of vtableSlotCall, never calls it directly, it does not matter
    that it declares it with an imprecise
    
      extern "C" void vtableSlotCall();
    
    signature.)
    
    Change-Id: Icfbf0622a47825ff7cf21008de27d3da6a2f0ebd
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99660
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106460
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 47ec17d4413dfebaaa628a6de03102e5697ccc33
Author: Tor Lillqvist <tml at iki.fi>
Date:   Sun Jul 5 19:23:27 2020 +0300

    Avoid warning about deprecation in macOS 11.0
    
    Change-Id: Ie1a7e19093b439eb133632ee881e1e3dbe58132d
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98176
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106459
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 302f1c221cb84e128cc6b402d444435add3c67d7
Author: Tor Lillqvist <tml at collabora.com>
Date:   Mon Nov 16 00:43:37 2020 +0000

    Avoid unused parameter 'pImpl'
    
    Change-Id: I8dd30ed3ffffa0e5340b32ce4399dd05cc57e2b6
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105962
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106258
    Tested-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106457
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 7b47e72dc34be8724d87ecec886d63c6a5a743b0
Author: Tor Lillqvist <tml at iki.fi>
Date:   Sun Jul 5 19:22:31 2020 +0300

    There is no QuickTime framework
    
    The reference was a leftover from 32-bit times.
    
    Change-Id: Ie453a4c644787a49f8742eab4b4ea9d49cddf32d
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98175
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106456
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit c0a356925ad5de49325e39d94e6a426c0256805b
Author: Tor Lillqvist <tml at iki.fi>
Date:   Sun Jul 5 01:11:20 2020 +0300

    Initial attempt at macOS on arm64 support for OpenSSL
    
    Sadly the existing arm64 assembler files in OpenSSL use a syntax that
    Apple's clang doesn't accept.
    
    And yeah, ideally we should not use either NSS or OpenSSL on macOS,
    but native APIs for the functionality in question. Trying to make
    everything look like Linux is a bone-headed approach.
    
    Change-Id: Ib3f137ac73329b92e82c654d1277ee21f5f81b37
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98095
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105871
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106371
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 33ad992b24dabb73f3d8442acc7afb380d12056c
Author: Tor Lillqvist <tml at iki.fi>
Date:   Mon Jun 29 01:18:16 2020 +0300

    More WIP work for macOS on Apple Silicon
    
    If cross-compiling to a DESKTOP platform, use
    RepositoryModule_host.mk on the build platform, too.
    
    Change-Id: Icd3f3081e5af0c7cda95e9bce7572d37567d4f6e
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97356
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105869
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106369
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 9aed9f8602137eb3fbad6a932234e1340c538f00
Author: Tor Lillqvist <tml at iki.fi>
Date:   Mon Jun 29 10:15:48 2020 +0300

    For macOS on arm64, be sure to use HOST_PLATFORM=arm64-apple-darwin
    
    (That is for external projects.)
    
    Change-Id: I709ff37ebca304f862ff94bdb1c6e6035f5cda77
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97981
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105870
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106370
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 19719f910e6d0c65c134af30b9fdbf4bdd07f369
Author: Tor Lillqvist <tml at collabora.com>
Date:   Tue Nov 3 20:54:13 2020 +0200

    Fix apr build with current Xcode: Include <stdlib.h> for exit()
    
    (Or whatever it is that had broken it.)
    
    Change-Id: I72bc42e618f011518c05a2cdb875cfe64515b4d2
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105269
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106042
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106372
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 46040d0ac747f5c15ec7fbacd81e97aa16aee214
Author: Tor Lillqvist <tml at iki.fi>
Date:   Mon Nov 23 02:27:18 2020 +0200

    Clean up arm64 confusion a bit
    
    Set nss's CPU_ARCH to aarch64 also when compiling to arm64 on arm64,
    without any cross-compiling involved.
    
    Change-Id: I2eb9fb7b9547e5ded75ca242ea7ef09c826bf561
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106377
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit cbb3b122318f0a12d8081591517d44cb28b00671
Author: Tor Lillqvist <tml at collabora.com>
Date:   Thu Aug 6 22:43:14 2020 +0300

    Use USE_DLFCN also on macOS on arm64
    
    Change-Id: I8975ea2d4f33a101b5ac6db247a6dd062bc0c410
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100273
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106376
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 2d0158b29d8adddc11d34a39482eccc08971903e
Author: Tor Lillqvist <tml at iki.fi>
Date:   Sat Jul 4 23:07:52 2020 +0300

    Set CROSS_COMPILE=1 when cross-compiling nss
    
    Change-Id: Iad826eb83e4c49078e6c668661446b5b70e6a981
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97987
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106375
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 0916dedcb959e079a3ed111e9be40115da5142ef
Author: Tor Lillqvist <tml at iki.fi>
Date:   Sat Jul 4 22:37:09 2020 +0300

    Be more generic for CPUNAME=ARM64
    
    It's used not just for iOS but can be macOS too.
    
    Also, nss wants to call it CPU_ARCH=aarch64.
    
    Change-Id: I6398c3bf1409f2ccf16b0d154ad7c2b56f493b15
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97986
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106374
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit d059ff95941d331d6b3a9aed48cb778524fc5963
Author: Tor Lillqvist <tml at iki.fi>
Date:   Sat Jul 4 22:20:56 2020 +0300

    Use up-to-date config.{guess,sub} for external/nss, too
    
    Change-Id: I387aba22b90ab1bde1ae3659ea06a5838c1c829d
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97983
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106373
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 6b76cceb45a89e1ca916e0f76e736429e0b93c21
Author: Tor Lillqvist <tml at iki.fi>
Date:   Tue Jun 23 21:49:26 2020 +0300

    Initial WIP steps for building for macOS on Apple Silicon
    
    Don't use $host_os="darwin" for both macOS and iOS depending on
    $host_cpu. Soon macOS will run on either x86_64 or arm64. Instead, use "darwin"
    (or "macos") for macOS and "ios" for iOS.
    Some other early changes for arm64-apple-macos, too.
    
    Change-Id: Id89987d854ceba2cd87c6222db2081ccdec0c73e
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96976
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105868
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106368
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

commit 7fe6514c288ea3dda1518b4144aad9c61e678acf
Author: Tor Lillqvist <tml at collabora.com>
Date:   Tue Jun 23 00:52:38 2020 +0300

    Accept macOS SDK 11.0
    
    Change-Id: I92275eabe3c6a9442f675ec211c1dd1a8b58bd1b
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96909
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105787
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106367
    Reviewed-by: Michael Stahl <michael.stahl at cib.de>

commit 08862e9f7625ab95ed7f2c0e11e3b6d15ee586c7
Author: Tor Lillqvist <tml at collabora.com>
Date:   Tue Jun 23 01:59:05 2020 +0300

    Fix -Werror,-Wimplicit-function-declaration in posrgresql configury
    
    Includes the "Brown paper bag fix for
    e69f547bce7de376a0af464c5f7af5e7d2c8784a"
    
    Change-Id: I3c2dfb94a3c9627e802956cc03cebcbdb7d498cd
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96912
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105499
    Reviewed-by: Michael Stahl <michael.stahl at cib.de>

commit 5d8bce8b328b7ce9c748684db41ec1a8c75ca95e
Author: Tor Lillqvist <tml at collabora.com>
Date:   Tue Jun 23 01:19:23 2020 +0300

    Add getopt declarations
    
    Avoids: implicit declaration of function 'getopt' is invalid in C99
    [-Werror,-Wimplicit-function-declaration] on macOS with current Xcode.
    
    Change-Id: Ic178f53d1002425df52e220b1723fb12edca13df
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96910
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105498
    Reviewed-by: Michael Stahl <michael.stahl at cib.de>

commit 9117249398c0d760a6ffea53db658c2ac0e18c7b
Author: Jan-Marek Glogowski <glogow at fbihome.de>
Date:   Thu Oct 1 12:57:53 2020 +0200

    nss: restore manual pre-dependency build
    
    We had some seldom build failures on Windows, with errors like:
    PermissionError: [WinError 32] The process cannot access the file
    because it is being used by another process: '..../nssckmdt.h'.
    
    This happens, because of the "." / parent shell hack. Thinking
    about it again, it doesn't prevent the parent make to run in
    parallel to the "." directory make. So I tried to use a terminal
    match-all rule like
    
    ifneq (,$(filter .,$(DIRS)))
    %::
    	# empty terminal rule triggered
    $(error can't happen)
    endif
    
    to stop the original parent make, but that doesn't work and the
    $(error ...) is triggered.
    
    So AFAIK I'm out of options here and have to restore the old
    manual pre-dependency build variant - still much better then no
    parallel build.
    
    An alternative idea was to put the rest of the rules.mk in the
    "else" of the terminal rule, to skip all normal rules, but this
    still leaves out all rules from the rest of the make-files,
    which might result in some hard to debug errors.
    
    This reverts my upstream patch 15608:744881490c78.
    
    Change-Id: I9e2e9e1ec9f35697c7853c92f60434f514cba5ab
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103777
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    Reviewed-by: Jan-Marek Glogowski <glogow at fbihome.de>
    (cherry picked from commit d2f9c55e065d559de903d540da28502646714a24)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104881
    Reviewed-by: Michael Stahl <michael.stahl at cib.de>



More information about the Libreoffice-commits mailing list