summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2015-12-08 21:41:59 +0800
committerruki <[email protected]>2015-12-08 21:41:59 +0800
commit93a02f675be08d750d327626ac7a04741e7a9d0e (patch)
tree86bf11df22852532780ebc3681e0ec70860fb6e6
parent5fc652aeba3000759914f54286048c239972ac07 (diff)
add swift link directory
-rw-r--r--xmake/scripts/platform/iphoneos/iphoneos.lua5
-rw-r--r--xmake/scripts/platform/iphonesimulator/iphonesimulator.lua5
-rw-r--r--xmake/scripts/platform/macosx/macosx.lua5
-rw-r--r--xmake/scripts/tools/swiftc.lua15
4 files changed, 19 insertions, 11 deletions
diff --git a/xmake/scripts/platform/iphoneos/iphoneos.lua b/xmake/scripts/platform/iphoneos/iphoneos.lua
index 394e47037..f57d4c303 100644
--- a/xmake/scripts/platform/iphoneos/iphoneos.lua
+++ b/xmake/scripts/platform/iphoneos/iphoneos.lua
@@ -81,12 +81,17 @@ function iphoneos.make(configs)
local xcode_dir = config.get("xcode_dir")
local xcode_sdkver = config.get("xcode_sdkver")
if xcode_dir and xcode_sdkver then
+
+ -- init flags
local xcode_sdkdir = xcode_dir .. "/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS" .. xcode_sdkver .. ".sdk"
table.insert(configs.cxflags, "-isysroot " .. xcode_sdkdir)
table.insert(configs.asflags, "-isysroot " .. xcode_sdkdir)
table.insert(configs.mxflags, "-isysroot " .. xcode_sdkdir)
table.insert(configs.ldflags, "-isysroot " .. xcode_sdkdir)
table.insert(configs.shflags, "-isysroot " .. xcode_sdkdir)
+
+ -- save swift link directory
+ config.set("__swift_linkdirs", xcode_dir .. "/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos")
end
end
diff --git a/xmake/scripts/platform/iphonesimulator/iphonesimulator.lua b/xmake/scripts/platform/iphonesimulator/iphonesimulator.lua
index bb6cd6bfd..067fccf22 100644
--- a/xmake/scripts/platform/iphonesimulator/iphonesimulator.lua
+++ b/xmake/scripts/platform/iphonesimulator/iphonesimulator.lua
@@ -79,12 +79,17 @@ function iphonesimulator.make(configs)
local xcode_dir = config.get("xcode_dir")
local xcode_sdkver = config.get("xcode_sdkver")
if xcode_dir and xcode_sdkver then
+
+ -- init flags
local xcode_sdkdir = xcode_dir .. "/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator" .. xcode_sdkver .. ".sdk"
table.insert(configs.cxflags, "-isysroot " .. xcode_sdkdir)
table.insert(configs.asflags, "-isysroot " .. xcode_sdkdir)
table.insert(configs.mxflags, "-isysroot " .. xcode_sdkdir)
table.insert(configs.ldflags, "-isysroot " .. xcode_sdkdir)
table.insert(configs.shflags, "-isysroot " .. xcode_sdkdir)
+
+ -- save swift link directory
+ config.set("__swift_linkdirs", xcode_dir .. "/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphonesimulator")
end
end
diff --git a/xmake/scripts/platform/macosx/macosx.lua b/xmake/scripts/platform/macosx/macosx.lua
index 6174f663d..11c835b3c 100644
--- a/xmake/scripts/platform/macosx/macosx.lua
+++ b/xmake/scripts/platform/macosx/macosx.lua
@@ -79,12 +79,17 @@ function macosx.make(configs)
local xcode_dir = config.get("xcode_dir")
local xcode_sdkver = config.get("xcode_sdkver")
if xcode_dir and xcode_sdkver then
+
+ -- init flags
local xcode_sdkdir = xcode_dir .. "/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX" .. xcode_sdkver .. ".sdk"
table.insert(configs.cxflags, "-isysroot " .. xcode_sdkdir)
table.insert(configs.asflags, "-isysroot " .. xcode_sdkdir)
table.insert(configs.mxflags, "-isysroot " .. xcode_sdkdir)
table.insert(configs.ldflags, "-isysroot " .. xcode_sdkdir)
table.insert(configs.shflags, "-isysroot " .. xcode_sdkdir)
+
+ -- save swift link directory
+ config.set("__swift_linkdirs", xcode_dir .. "/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/macosx")
end
-- init linkdirs and includedirs
diff --git a/xmake/scripts/tools/swiftc.lua b/xmake/scripts/tools/swiftc.lua
index 1548876c3..00301a1d2 100644
--- a/xmake/scripts/tools/swiftc.lua
+++ b/xmake/scripts/tools/swiftc.lua
@@ -63,17 +63,10 @@ function swiftc.init(self, name)
}
-- init ldflags
- self.ldflags = { "-lswiftCore" }
-
- -- -target
- -- armv7-apple-ios7.1
- -- x86_64-apple-ios9.0
- -- x86_64-apple-macosx10.10
- --
- -- -sdk
- -- /xxx/xxx.sdk
- --
- -- -enable-objc-interop
+ local swift_linkdirs = config.get("__swift_linkdirs")
+ if swift_linkdirs then
+ self.ldflags = { "-L" .. swift_linkdirs }
+ end
end