do not use clang option -march=native on Apple Silicon

Apple Silicon arm64-apple-darwin clang do not support `-march` option.
This commit is contained in:
Runchard 2020-12-04 21:07:19 +08:00
parent 4a60413e0b
commit c5cb4f9e69

View File

@ -13,6 +13,7 @@ import shutil
import subprocess import subprocess
import sys import sys
import sysconfig import sysconfig
import platform
import time import time
from contextlib import suppress from contextlib import suppress
from functools import partial from functools import partial
@ -47,6 +48,7 @@ version = tuple(
_plat = sys.platform.lower() _plat = sys.platform.lower()
is_macos = 'darwin' in _plat is_macos = 'darwin' in _plat
is_openbsd = 'openbsd' in _plat is_openbsd = 'openbsd' in _plat
is_not_arm = platform.processor() != 'arm'
Env = glfw.Env Env = glfw.Env
env = Env() env = Env()
PKGCONFIG = os.environ.get('PKGCONFIG_EXE', 'pkg-config') PKGCONFIG = os.environ.get('PKGCONFIG_EXE', 'pkg-config')
@ -1195,10 +1197,11 @@ def main() -> None:
with CompilationDatabase(args.incremental) as cdb: with CompilationDatabase(args.incremental) as cdb:
args.compilation_database = cdb args.compilation_database = cdb
if args.action == 'build': if args.action == 'build':
build(args)
if is_macos: if is_macos:
build(args, native_optimizations=is_not_arm)
create_minimal_macos_bundle(args, launcher_dir) create_minimal_macos_bundle(args, launcher_dir)
else: else:
build(args)
build_launcher(args, launcher_dir=launcher_dir) build_launcher(args, launcher_dir=launcher_dir)
elif args.action == 'build-launcher': elif args.action == 'build-launcher':
init_env_from_args(args, False) init_env_from_args(args, False)
@ -1217,7 +1220,7 @@ def main() -> None:
args.prefix = 'kitty.app' args.prefix = 'kitty.app'
if os.path.exists(args.prefix): if os.path.exists(args.prefix):
shutil.rmtree(args.prefix) shutil.rmtree(args.prefix)
build(args) build(args, native_optimizations=is_not_arm)
package(args, bundle_type='macos-package') package(args, bundle_type='macos-package')
print('kitty.app successfully built!') print('kitty.app successfully built!')
elif args.action == 'export-ci-bundles': elif args.action == 'export-ci-bundles':