diff options
Diffstat (limited to 'xmake/rules/xcode/framework/xmake.lua')
| -rw-r--r-- | xmake/rules/xcode/framework/xmake.lua | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/xmake/rules/xcode/framework/xmake.lua b/xmake/rules/xcode/framework/xmake.lua index fb61a25af..78a72a031 100644 --- a/xmake/rules/xcode/framework/xmake.lua +++ b/xmake/rules/xcode/framework/xmake.lua @@ -23,11 +23,22 @@ rule("xcode.framework") -- we must set kind before target.on_load(), may we will use target in on_load() before_load(function (target) - local frameworkdir = path.join(target:targetdir(), target:basename() .. ".framework") + + -- get framework directory + local targetdir = target:targetdir() + local frameworkdir = path.join(targetdir, target:basename() .. ".framework") + target:data_set("xcode.frameworkdir", frameworkdir) + + -- set target info for framework target:set("kind", "shared") target:set("filename", target:basename()) target:set("targetdir", path.join(frameworkdir, "Versions", "A")) - target:data_set("xcode.frameworkdir", frameworkdir) + + -- export frameworks for `add_deps()` + target:add("frameworks", target:basename(), {interface = true}) + target:add("frameworkdirs", targetdir, {interface = true}) + + -- register clean files for `xmake clean` target:add("cleanfiles", frameworkdir) end) |
