> On Sep 28, 2025, at 5:31 AM, Chris Sherlock <[email protected]> 
> wrote:
> So I have done a bit of digging, and the meson.build needs to detect the 
> version of macOS being used.
>
> So after a bit of research, I worked out the following code snippet that you 
> add after the project() directive in the root meson.build file in harfbuzz:
>
> if host_machine.system() == 'darwin'
>    if host_machine.cpu_family() == 'aarch64' or host_machine.cpu_family() == 
> 'x86_64'
>        # Set the hardening mode for C and C++ compilers
>        
> add_project_arguments('-D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE',
>  language: ['c', 'cpp'])
>        # Undefine the old macro to ensure it's not used
>        add_project_arguments('-U_LIBCPP_ENABLE_ASSERTIONS', language: ['c', 
> 'cpp'])
>    endif
> endif
>
> The problem is… how on earth is that generated? It does seem like a Harfbuzz 
> issue… but I don’t know how we propose a change like this…
>
> Chris

I don’t run into any of what you describe. I use LibreOffice LODE for all the 
build tools and LODE includes a locally compiled meson 1.8.3. I then rebuilt 
with meson 1.9.1 from Homebrew using the "MESON=/opt/homebrew/bin/meson 
./autogen.sh” that I described in my previous e-mail.

So what is different in your build environment (other than not using LODE)? I 
am building on macOS Tahoe 26.0 on my Mac Silicon laptop with Xcode 26.0. The 
only special step is I remove both "/opt/homebrew/bin” and “/opt/homebrew/sbin" 
from my $PATH in order for ./autogen.sh to complete without error.

Since I am not seeing any errors when building Harfbuzz, I assume that meson is 
generating the right C++ defines for Harfbuzz. But then I did a “make distclean 
&& ./autogen.sh” when changing which meson to use. Have you tried cleaning your 
build like that?

Or, at least try cleaning LibreOffice's harfbuzz build using “cd 
external/harfbuzz && make clean && make”. That will delete LibreOffice's 
Harfbuzz in build folder in workdir/UnpackedTarball/harfbuzz.

Hope that helps,

Patrick

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to