Skip to content

Update ninja to 1.10.2

Jiří Techet requested to merge jiritechet/gtk-osx:ninja_update into master

The 1.10.2 release is the first one which contains a universal binary (x86_64 and arm64) and is executed as an arm64 process on ARM macs. With the previous binary, ninja did run as a x86_64 process on ARM macs and as a result all tasks executed by ninja did run as x86_64 processes too. This lead to the following error when compiling the shared-mime-info package in an arm64 build (which is fixed after applying this patch):

[8/8] Generating freedesktop.org.xml with a custom command
FAILED: data/freedesktop.org.xml
/Users/jhbuild/gtk/source/shared-mime-info-2.1/data/freedesktop_generate.sh /Users/jhbuild/gtk/source/shared-mime-info-2.1 /Users/jhbuild/.cache/jhbuild/build/shared-mime-info-2.1
ninja: Entering directory `/Users/jhbuild/.cache/jhbuild/build/shared-mime-info-2.1'
[0/1] Running external command shared-mime-info-gmo (wrapped by meson to set env)
Traceback (most recent call last):
  File "/Users/jhbuild/gtk/inst/bin/itstool", line 27, in <module>
    import libxml2
  File "/Users/jhbuild/gtk/inst/lib/python3.8/site-packages/libxml2.py", line 1, in <module>
    import libxml2mod
ImportError: dlopen(/Users/jhbuild/gtk/inst/lib/python3.8/site-packages/libxml2mod.so, 0x0002): tried: '/Users/jhbuild/gtk/inst/lib/python3.8/site-packages/libxml2mod.so' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')), '/usr/local/lib/libxml2mod.so' (no such file), '/usr/lib/libxml2mod.so' (no such file)

Apart from that, I was able to compile Geany for arm64, I just had to manually cap the rust version to 1.52.2 because of this problem

librsvg#787

and also meson to 0.59.2 because of this:

#44 (closed)

Apart from these issues, the arm64 build went just fine. I was also surprised I was able to cross-compile x86_64 Geany on a M1 mac from within a x86_64 shell

env /usr/bin/arch -x86_64 /bin/zsh --login

and the binary works on an Intel-based mac without any problems too.

Merge request reports