summaryrefslogtreecommitdiff
path: root/xmake/actions
diff options
context:
space:
mode:
authorruki <[email protected]>2020-02-16 16:28:02 +0800
committerruki <[email protected]>2020-02-16 16:28:02 +0800
commit8368581d63ff27a0edc3928a8a391b2cf3e1e4bc (patch)
treeded2dcd7677beeee210237e6261002e1e3c20c38 /xmake/actions
parent5b53e98c61bda63722bffd82dad88778a886a6e1 (diff)
improve 'require --extra'
Diffstat (limited to 'xmake/actions')
-rw-r--r--xmake/actions/require/install.lua10
-rw-r--r--xmake/actions/require/xmake.lua2
2 files changed, 7 insertions, 5 deletions
diff --git a/xmake/actions/require/install.lua b/xmake/actions/require/install.lua
index 01b43b014..26c624b8f 100644
--- a/xmake/actions/require/install.lua
+++ b/xmake/actions/require/install.lua
@@ -152,10 +152,12 @@ function main(requires)
local extra = option.get("extra")
local extrainfo = nil
if extra then
- local tmpfile = os.tmpfile() .. ".lua"
- io.writefile(tmpfile, "{" .. extra .. "}")
- extrainfo = io.load(tmpfile)
- os.tryrm(tmpfile)
+ local v, err = string.deserialize(extra)
+ if err then
+ raise(err)
+ else
+ extrainfo = v
+ end
end
-- force to use the given requires extra info
diff --git a/xmake/actions/require/xmake.lua b/xmake/actions/require/xmake.lua
index d3c7956d8..bdd4e40bd 100644
--- a/xmake/actions/require/xmake.lua
+++ b/xmake/actions/require/xmake.lua
@@ -70,6 +70,6 @@ task("require")
"e.g.",
" $ xmake require zlib tbox",
" $ xmake require \"zlib >=1.2.11\" \"tbox master\"",
- " $ xmake require --extra=\"debug=true,system=false\" tbox" }
+ " $ xmake require --extra=\"{debug=true,configs={xxx=true}}\" tbox"}
}
}