diff --git a/.github/prepare.py b/.github/prepare.py index 4abfc95d4..46f38c718 100755 --- a/.github/prepare.py +++ b/.github/prepare.py @@ -120,14 +120,14 @@ for arch, platform, libc, statdyn, bplatform, runso ( 'x86', 'windows', 'msvc', 'static', 'windows', 'windows-2019', '.exe', True, True, '.pdb', None, 'i686-win-msvc-static', 'release', 10 ), ( 'x86', 'windows', 'msvc', 'dynamic', 'windows', 'windows-2019', '.exe', False, False, None, None, None, 'debug', 10 ), ( 'x86', 'windows', 'msvc', 'dynamic', 'windows', 'windows-2019', '.exe', False, False, None, None, None, 'release', 10 ), - ( 'x86_64', 'darwin', 'macos', 'static', 'darwin', 'macos-12', '.dmg', False, False, None, 'dmg', None, 'debug', 0 ), # priority = 0: static debug build - ( 'x86_64', 'darwin', 'macos', 'static', 'darwin', 'macos-12', '.dmg', True, True, None, 'dmg', 'x86_64-mac-gcc-static', 'release', 10 ), # I have no idea how to separate debug info on macos - ( 'x86_64', 'darwin', 'macos', 'dynamic', 'darwin', 'macos-12', '.dmg', False, False, None, 'dmg', None, 'debug', 10 ), - ( 'x86_64', 'darwin', 'macos', 'dynamic', 'darwin', 'macos-12', '.dmg', False, False, None, 'dmg', None, 'release', 10 ), - ( 'aarch64', 'darwin', 'macos', 'static', 'darwin', 'macos-12', '.dmg', False, False, None, 'dmg', None, 'debug', 0 ), # priority = 0: static debug build - ( 'aarch64', 'darwin', 'macos', 'static', 'darwin', 'macos-12', '.dmg', True, True, None, 'dmg', 'arm64-mac-gcc-static', 'release', 10 ), -# ( 'aarch64', 'darwin', 'macos', 'dynamic', 'darwin', 'macos-12', '.dmg', False, False, None, 'dmg', None, 'debug', 10 ), # macos-11.0 is x86_64 and I haven't yet figured out how to get homebrew to install aarch64 libs on x86_64 -# ( 'aarch64', 'darwin', 'macos', 'dynamic', 'darwin', 'macos-12', '.dmg', False, False, None, 'dmg', None, 'release', 10 ), # macos-11.0 is x86_64 and I haven't yet figured out how to get homebrew to install aarch64 libs on x86_64 + ( 'x86_64', 'darwin', 'macos', 'static', 'darwin', 'macos-13', '.dmg', False, False, None, 'dmg', None, 'debug', 0 ), # priority = 0: static debug build + ( 'x86_64', 'darwin', 'macos', 'static', 'darwin', 'macos-13', '.dmg', True, True, None, 'dmg', 'x86_64-mac-gcc-static', 'release', 10 ), # I have no idea how to separate debug info on macos + ( 'x86_64', 'darwin', 'macos', 'dynamic', 'darwin', 'macos-13', '.dmg', False, False, None, 'dmg', None, 'debug', 10 ), + ( 'x86_64', 'darwin', 'macos', 'dynamic', 'darwin', 'macos-13', '.dmg', False, False, None, 'dmg', None, 'release', 10 ), + ( 'aarch64', 'darwin', 'macos', 'static', 'darwin', 'macos-13', '.dmg', False, False, None, 'dmg', None, 'debug', 0 ), # priority = 0: static debug build + ( 'aarch64', 'darwin', 'macos', 'static', 'darwin', 'macos-13', '.dmg', True, True, None, 'dmg', 'arm64-mac-gcc-static', 'release', 10 ), +# ( 'aarch64', 'darwin', 'macos', 'dynamic', 'darwin', 'macos-13', '.dmg', False, False, None, 'dmg', None, 'debug', 10 ), # macos-11.0 is x86_64 and I haven't yet figured out how to get homebrew to install aarch64 libs on x86_64 +# ( 'aarch64', 'darwin', 'macos', 'dynamic', 'darwin', 'macos-13', '.dmg', False, False, None, 'dmg', None, 'release', 10 ), # macos-11.0 is x86_64 and I haven't yet figured out how to get homebrew to install aarch64 libs on x86_64 ( 'x86', 'android', 'bionic', 'static', 'linux', 'ubuntu-20.04', '.apk', False, False, None, None, None, 'debug', 0 ), # priority = 0: rarely used debug build ( 'x86', 'android', 'bionic', 'static', 'linux', 'ubuntu-20.04', '.apk', True, True, '.dbg', None, 'i686-and-gcc-static', 'release', 10 ), ( 'x86_64', 'android', 'bionic', 'static', 'linux', 'ubuntu-20.04', '.apk', False, False, None, None, None, 'debug', 0 ), # priority = 0: rarely used debug build diff --git a/meson.build b/meson.build index e917630c2..61a041011 100644 --- a/meson.build +++ b/meson.build @@ -368,6 +368,15 @@ if host_platform == 'windows' endif endforeach project_cpp_args += args_ccomp_win +elif host_platform == 'darwin' + # work around assertion failure with LTO symbols + # https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes#Linking + # otherwise we get ld: Assertion failed: (0 && "lto symbol should not be in layout"), function symbolForAtom, file Layout.cpp, line 1447. + # TODO: remove when appropriate + if is_static and cpp_compiler.has_link_argument('-ld_classic') + warning('applying broken apple clang linker workaround with -ld_classic') + project_link_args += [ '-ld_classic' ] + endif elif host_platform == 'android' args_ccomp_android = [] if not is_64bit