diff options
Diffstat (limited to 'BuildTools')
| -rw-r--r-- | BuildTools/SCons/SConscript.boot | 8 | 
1 files changed, 6 insertions, 2 deletions
| diff --git a/BuildTools/SCons/SConscript.boot b/BuildTools/SCons/SConscript.boot index 2463d6c..2ea05db 100644 --- a/BuildTools/SCons/SConscript.boot +++ b/BuildTools/SCons/SConscript.boot @@ -209,90 +209,94 @@ if env["PLATFORM"] == "win32" :  if env["PLATFORM"] == "darwin" and not env["target"] in ["iphone-device", "iphone-simulator", "xcode"] :  	env.Append(FRAMEWORKS = ["IOKit", "AppKit", "SystemConfiguration"])  # Testing  env["TEST_TYPE"] = env["test"]  if "check" in ARGUMENTS :  	env["TEST_TYPE"] = "unit"  env["checker_report"] = ARGUMENTS.get("checker_report", False)  env["TEST"] = (env["TEST_TYPE"] != "none") or env.GetOption("clean")  if env.get("valgrind", 0) :  	env["TEST_RUNNER"] = "valgrind --suppressions=QA/valgrind.supp -q --leak-check=full --track-origins=yes "  env["TEST_IGNORE_RESULT"] = "ignore_test_result" in ARGUMENTS  env["TEST_CREATE_LIBRARIES"] = "create_test_libraries" in ARGUMENTS  # Packaging  env["DIST"] = "dist" in ARGUMENTS or env.GetOption("clean")  for path in ["SWIFT_INSTALLDIR", "SWIFTEN_INSTALLDIR"] :  	if ARGUMENTS.get(path, "") :  		if os.path.isabs(ARGUMENTS[path]) :  			env[path] = Dir(ARGUMENTS[path]).abspath  		else :  			env[path] = Dir("#/" + ARGUMENTS[path]).abspath  ################################################################################  # XCode / iPhone / ...  ################################################################################  target = env["target"]  if target in ["iphone-device", "iphone-simulator", "xcode"] :  	# Extract/initialize all the information we need  	if target == "xcode" :  		# Get the information from the XCode environment  		env["XCODE_PLATFORM_DEVELOPER_BIN_DIR"] = os.environ["PLATFORM_DEVELOPER_BIN_DIR"]  		env["XCODE_SDKROOT"] = os.environ["SDKROOT"]  		env["XCODE_ARCH_FLAGS"] = sum([["-arch", arch] for arch in os.environ["ARCHS"].split(" ")], []) -		# Usae absolute path sources so Xcode can highlight compilation errors in swiften +		env["IPHONEOS_DEPLOYMENT_TARGET"] = os.environ["IPHONEOS_DEPLOYMENT_TARGET"] +		# Use absolute path sources so Xcode can highlight compilation errors in swiften  		env['CXXCOM'] = '$CXX -o $TARGET -c $CXXFLAGS $CCFLAGS $_CCCOMCOM ${SOURCES.abspath}'  	else :  		# Hard code values  		env["XCODE_PLATFORM_DEVELOPER_BIN_DIR"] = "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin"  		if target == "iphone-device":  			env["XCODE_ARCH_FLAGS"] = ["-arch", "armv6", "-arch", "armv7"]  			sdkPart = "iPhoneOS"  		else :  			env["XCODE_ARCH_FLAGS"] = ["-arch", "i386"]  			sdkPart = "iPhoneSimulator"  		sdkVer = "4.3"  		env["XCODE_SDKROOT"] = "/Developer/Platforms/" + sdkPart + ".platform/Developer/SDKs/" + sdkPart + sdkVer + ".sdk" +		env["IPHONEOS_DEPLOYMENT_TARGET"] = "4.1"  	# Set the build flags  	env["CC"] = "$XCODE_PLATFORM_DEVELOPER_BIN_DIR/gcc"  	env["CXX"] = "$XCODE_PLATFORM_DEVELOPER_BIN_DIR/g++"  	env["OBJCCFLAGS"] = ["-fobjc-abi-version=2", "-fobjc-legacy-dispatch"]  	env["LD"] = env["CC"] -	env.Append(CCFLAGS = env["XCODE_ARCH_FLAGS"] + ["-fvisibility=hidden"]) +	env.Append(CCFLAGS = env["XCODE_ARCH_FLAGS"] + ["-fvisibility=hidden", "-miphoneos-version-min=" + env["IPHONEOS_DEPLOYMENT_TARGET"]]) +	if os.environ.get("GCC_THUMB_SUPPORT", False) : +		env.Append(CCFLAGS = ["-mthumb"])  	env.Append(LINKFLAGS = env["XCODE_ARCH_FLAGS"])  	env.Append(CPPFLAGS = ["-isysroot", "$XCODE_SDKROOT"])  	env.Append(FRAMEWORKS = ["CoreFoundation", "Foundation", "UIKit", "CoreGraphics"])  	env.Append(LINKFLAGS = env["XCODE_ARCH_FLAGS"] + ["-isysroot", "$XCODE_SDKROOT", "-L\"$XCODE_SDKROOT/usr/lib\"", "-F\"$XCODE_SDKROOT/System/Library/Frameworks\"", "-F\"$XCODE_SDKROOT/System/Library/PrivateFrameworks\""])  	# Bit of a hack, because BOOST doesn't know the endianness for ARM  	env.Append(CPPDEFINES = ["_LITTLE_ENDIAN"])   # CCache  if env.get("ccache", False) :  	env["ENV"]["HOME"] = os.environ["HOME"]  	for var in os.environ :  		if var.startswith("CCACHE_") :  			env["ENV"][var] = os.environ[var]  	if env.get("CC", "") != "" :  		env["CC"] = "ccache " + env["CC"]  	else :  		env["CC"] = "ccache gcc"  	if env.get("CXX", "") != "" :  		env["CXX"] = "ccache " + env["CXX"]  	else :  		env["CC"] = "ccache g++"  conf_env = env.Clone()  Export("env")  Export("conf_env")  variant = ""  if env["enable_variants"] :  	fingerprint = ",".join([flag for flag in env["CXXFLAGS"] + env["CCFLAGS"] if not flag.startswith("-W") and not flag.startswith("-fvisibility")])  	variant = "build/" + fingerprint  	if not os.path.exists(Dir("#/build").abspath) :  		os.mkdir(Dir("#/build").abspath)  	if os.path.exists(Dir("#/build/current").abspath) :  		os.unlink(Dir("#/build/current").abspath) | 
 Swift
 Swift