be more specific for lib search paths
diff --git a/lib/script.py b/lib/script.py
index 69d875e..e722606 100644
--- a/lib/script.py
+++ b/lib/script.py
@@ -122,10 +122,16 @@
swift_flags += Configuration.current.extra_swift_flags
swift_flags += """
-TARGET_SWIFTEXE_FLAGS = -I${SDKROOT}/lib/swift/""" + Configuration.current.target.swift_sdk_name + """ -L${SDKROOT}/lib/swift/""" + Configuration.current.target.swift_sdk_name + \
-""" -L${SDKROOT}/lib/swift/""" + Configuration.current.target.swift_sdk_name + """/""" +Configuration.current.target.swift_arch + """ """
+TARGET_SWIFTEXE_FLAGS = """
+ if Configuration.current.target.fat_binaries:
+ swift_flags += """ -I${SDKROOT}/lib/swift/""" + Configuration.current.target.swift_sdk_name
+ swift_flags += """ -L${SDKROOT}/lib/swift/""" + Configuration.current.target.swift_sdk_name
+ else:
+ swift_flags += """ -I${SDKROOT}/lib/swift/""" + Configuration.current.target.swift_sdk_name + """/""" + Configuration.current.target.swift_arch
+ swift_flags += """ -L${SDKROOT}/lib/swift/""" + Configuration.current.target.swift_sdk_name + """/""" + Configuration.current.target.swift_arch
+
if Configuration.current.build_mode == Configuration.Debug:
- swift_flags += "-g -Onone -enable-testing "
+ swift_flags += " -g -Onone -enable-testing "
elif Configuration.current.build_mode == Configuration.Release:
swift_flags += " "
swift_flags += Configuration.current.extra_swift_flags
@@ -136,10 +142,15 @@
EXTRA_LD_FLAGS = """ + Configuration.current.extra_ld_flags
ld_flags += """
-TARGET_LDFLAGS = --target=${TARGET} ${EXTRA_LD_FLAGS} -L ${SDKROOT}/lib/swift/""" + Configuration.current.target.swift_sdk_name + \
-""" -L${SDKROOT}/lib/swift/""" + Configuration.current.target.swift_sdk_name + """/""" +Configuration.current.target.swift_arch + """ """
+TARGET_LDFLAGS = --target=${TARGET} ${EXTRA_LD_FLAGS} """
+
+ if Configuration.current.target.fat_binaries:
+ ld_flags += """-L${SDKROOT}/lib/swift/""" + Configuration.current.target.swift_sdk_name
+ else:
+ ld_flags += """-L${SDKROOT}/lib/swift/""" + Configuration.current.target.swift_sdk_name + """/""" + Configuration.current.target.swift_arch
+
if Configuration.current.system_root is not None:
- ld_flags += "--sysroot=${SYSROOT}"
+ ld_flags += " --sysroot=${SYSROOT}"
if Configuration.current.bootstrap_directory is not None:
ld_flags += """ -L${TARGET_BOOTSTRAP_DIR}/usr/lib"""
diff --git a/lib/target.py b/lib/target.py
index bdeecdf..745d46c 100644
--- a/lib/target.py
+++ b/lib/target.py
@@ -331,6 +331,7 @@
dynamic_library_suffix = ".dylib"
static_library_prefix = "lib"
static_library_suffix = ".a"
+ fat_binaries = False
def __init__(self, triple):
if "linux" in triple:
@@ -349,6 +350,7 @@
self.environ = EnvironmentType.UnknownEnvironment
elif "darwin" in triple:
self.sdk = OSType.MacOSX
+ self.fat_binaries = True
else:
print("Unknown platform")