# Configures the build to use XCode targeting macOS import subprocess import SCons CC = subprocess.check_output(['xcrun', '-f', '--sdk', 'macosx', 'clang']).decode('utf-8').strip() CXX = subprocess.check_output(['xcrun', '-f', '--sdk', 'macosx', 'clang++']).decode('utf-8').strip() DSYMUTIL = subprocess.check_output(['xcrun', '-f', '--sdk', 'macosx', 'dsymutil']).decode('utf-8').strip() STRIP = subprocess.check_output(['xcrun', '-f', '--sdk', 'macosx', 'strip']).decode('utf-8').strip() # TAPI is less useful when running with Bazel + Remote Execution. Disable since the initial implementation # of the build system with Bazel will not support it. # TODO(SERVER-88612): Uncomment if we decide to implement TAPI support in Bazel # TAPI = subprocess.check_output(['xcrun', '-f', '--sdk', 'macosx', 'tapi']).decode('utf-8').strip() sdk_path = subprocess.check_output(['xcrun', '--sdk', 'macosx', '--show-sdk-path']).decode('utf-8').strip() CCFLAGS = "-isysroot {} -mmacosx-version-min=14.0 --target=darwin20.0.0 -arch arm64".format(sdk_path) ASFLAGS = "-isysroot {} -mmacosx-version-min=14.0 --target=darwin20.0.0 -arch arm64".format(sdk_path) LINKFLAGS = "-Wl,-syslibroot,{} -mmacosx-version-min=14.0 --target=darwin20.0.0 -arch arm64".format(sdk_path)