configure.ac | 21 +++++++++++++++++++-- download.lst | 4 ++-- 2 files changed, 21 insertions(+), 4 deletions(-)
New commits: commit 26c44f98d0ab203090d5b634853ec1177b6d1977 Author: Patrick Luby <guibmac...@gmail.com> AuthorDate: Sat Aug 2 17:12:57 2025 -0400 Commit: Patrick Luby <guibomac...@gmail.com> CommitDate: Wed Sep 10 15:12:33 2025 +0200 Fix HarfBuzz build breakage when building on macOS Tahoe Starting in Xcode 26, compiling with -D_LIBCPP_ENABLE_ASSERTIONS will fail due to a change made by Apple. HarfBuzz uses meson to define the macros needed to build HarfBuzz and meson 1.7.2 and 1.8.0 still emit -D_LIBCPP_ENABLE_ASSERTIONS. So upgrade the internal meson to 1.8.3 (i.e. the first version that is compatible with Xcode 26) and use the internal meson if building with Xcode 26 or higher and the external meson version is too old. Change-Id: I0d3545b0b1a22156179fec1382260adca1e9221c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188863 Reviewed-by: Patrick Luby <guibomac...@gmail.com> Reviewed-by: Christian Lohmaier <lohmaier+libreoff...@googlemail.com> Tested-by: Jenkins diff --git a/configure.ac b/configure.ac index 99ccaf54f748..0159afa35c3e 100644 --- a/configure.ac +++ b/configure.ac @@ -11651,7 +11651,7 @@ else else # autodetect, prefer meson.py / standalone version that can more likely be run # by different python runtimes - AC_PATH_PROGS(MESON,[meson.py meson],,[$LODE_HOME/packages/meson-1.7.2:$PATH]) + AC_PATH_PROGS(MESON,[meson.py meson],,[$LODE_HOME/opt/bin:$PATH]) if test -z "$MESON"; then AC_MSG_WARN([meson not found, using internal copy]) BUILD_TYPE="$BUILD_TYPE MESON" @@ -11661,7 +11661,24 @@ else MESON="$formatted_path" AC_MSG_CHECKING([whether meson can be run with "$PYTHON_FOR_BUILD $MESON"]) if ($PYTHON_FOR_BUILD $MESON --version >/dev/null) ; then - AC_MSG_RESULT([yes]) + # Xcode 26 and higher need a newer version of meson so use + # the internal meson if the external meson's version is + # too old + if test $_os = Darwin -a $MACOSX_SDK_VERSION -ge 260000; then + _meson_minver=1.8.3 + _meson_minmajmin=`echo $_meson_minver | $AWK -F. '{ print \$1*10000+\$2*100+\$3 }'` + _meson_version=`$PYTHON_FOR_BUILD $MESON --version 2>/dev/null` + _meson_majmin=`echo $_meson_version | $AWK -F. '{ print \$1*10000+\$2*100+\$3 }'` + if test "$_meson_majmin" -lt "$_meson_minmajmin"; then + AC_MSG_WARN([meson "$_meson_version" is too old, using internal copy]) + BUILD_TYPE="$BUILD_TYPE MESON" + MESON='$(gb_UnpackedTarball_workdir)/meson/meson.py' + else + AC_MSG_RESULT([yes]) + fi + else + AC_MSG_RESULT([yes]) + fi else AC_MSG_RESULT([no]) AC_MSG_ERROR([meson incompatible with the specified python. Try using a different python runtime or a plain release of meson by adding PYTHON=/other/python.version and/or MESON=/path/to/meson.py to autogen.input]) diff --git a/download.lst b/download.lst index 480e930d9076..76f78a5c7f4b 100644 --- a/download.lst +++ b/download.lst @@ -497,8 +497,8 @@ MDNSRESPONDER_TARBALL := mDNSResponder-878.200.35.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -MESON_SHA256SUM := 0a9b23311271519bd03dca12d7d8b0eab582c3a2c5da433d465b6e519dc88e2f -MESON_TARBALL := meson-1.8.0.tar.gz +MESON_SHA256SUM := f118aa910fc0a137cc2dd0122232dbf82153d9a12fb5b0f5bb64896f6a157abf +MESON_TARBALL := meson-1.8.3.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts