summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2016-08-12 10:47:27 +0800
committerruki <[email protected]>2016-08-12 10:47:27 +0800
commit503d201bb94ba0de2e9e61ab66e52c1cee648064 (patch)
tree02f7c4997bbb2ec5defbaa4aa2c498db47fa2e28
parent708236460a71b712317a5d2e6f834e705e7681a7 (diff)
add set_default api for option
-rw-r--r--CHANGELOG.md2
-rw-r--r--xmake/core/base/deprecated/interpreter.lua14
-rw-r--r--xmake/core/project/deprecated/project.lua21
-rw-r--r--xmake/core/project/project.lua6
4 files changed, 28 insertions, 15 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 6ba6e8423..698a14307 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -9,6 +9,7 @@
* Add debugger support on windows (vsjitdebugger, ollydbg, windbg ... )
* Add `getenv` interface for the global scope of `xmake.lua`
* Add plugin for generating vs200x project file
+* Add `set_default` api for option
### Changes
@@ -150,6 +151,7 @@
* ��windows�����ӵ�����֧�֣�vsjitdebugger, ollydbg, windbg ... ��
* ����`getenv`�ӿڵ�`xmake.lua`��ȫ����������
* ��������vs200x���̲��
+* Ϊoption����`set_default`�ӿ�
### �Ľ�
diff --git a/xmake/core/base/deprecated/interpreter.lua b/xmake/core/base/deprecated/interpreter.lua
index cb5fa4fdf..80d541da8 100644
--- a/xmake/core/base/deprecated/interpreter.lua
+++ b/xmake/core/base/deprecated/interpreter.lua
@@ -154,13 +154,8 @@ function deprecated_interpreter:_api_register_set_xxx_xxx(scope_kind, apiname)
-- register api
self:api_register_builtin(oldapi, function (value, ...)
- -- check
- if type(value) ~= "string" then
- value = type(value)
- end
-
-- deprecated
- deprecated.add(newapi .. "(\"%s\")", oldapi .. "(\"%s\")", value)
+ deprecated.add(newapi .. "(\"%s\")", oldapi .. "(\"%s\")", tostring(value))
-- dispatch it
apifunc(value, ...)
@@ -183,13 +178,8 @@ function deprecated_interpreter:_api_register_add_xxx_xxx(scope_kind, apiname)
-- register api
self:api_register_builtin(oldapi, function (value, ...)
- -- check
- if type(value) ~= "string" then
- value = type(value)
- end
-
-- deprecated
- deprecated.add(newapi .. "(\"%s\")", oldapi .. "(\"%s\")", value)
+ deprecated.add(newapi .. "(\"%s\")", oldapi .. "(\"%s\")", tostring(value))
-- dispatch it
apifunc(value, ...)
diff --git a/xmake/core/project/deprecated/project.lua b/xmake/core/project/deprecated/project.lua
index 02e16390c..197244761 100644
--- a/xmake/core/project/deprecated/project.lua
+++ b/xmake/core/project/deprecated/project.lua
@@ -317,6 +317,24 @@ function deprecated_project._api_add_packages(interp, ...)
return deprecated_project._api_add_pkgs(interp, ...)
end
+-- set_enable for option
+function deprecated_project._api_option_set_enable(interp, ...)
+
+ -- get api function
+ local apifunc = interp:_api_within_scope("option", "set_default")
+ assert(apifunc)
+
+ -- register api
+ interp:api_register_builtin("set_enable", function (value)
+
+ -- deprecated
+ deprecated.add("set_default(%s)", "set_enable(%s)", tostring(value))
+
+ -- dispatch it
+ apifunc(value)
+ end)
+end
+
-- register api
function deprecated_project.api_register(interp)
@@ -341,6 +359,9 @@ function deprecated_project.api_register(interp)
-- register api: add_pkgs() to root
interp:api_register(nil, "add_pkgs", deprecated_project._api_add_packages)
+ -- register api: set_enable() to option
+ interp:api_register("option", "set_enable", deprecated_project._api_option_set_enable)
+
-- register api: set_values() to option
deprecated_interpreter._api_register_set_xxx_xxx(interp, "option", "enable")
deprecated_interpreter._api_register_set_xxx_xxx(interp, "option", "showmenu")
diff --git a/xmake/core/project/project.lua b/xmake/core/project/project.lua
index e6ad56a41..7d8b0fecc 100644
--- a/xmake/core/project/project.lua
+++ b/xmake/core/project/project.lua
@@ -342,7 +342,7 @@ function project._interpreter()
, "uninstall")
-- register api: set_values() to option
- interp:api_register_set_values("option", "enable"
+ interp:api_register_set_values("option", "default"
, "showmenu"
, "category"
, "warnings"
@@ -688,8 +688,8 @@ function project.menu()
-- the default value
local default = "auto"
- if opt:get("enable") ~= nil then
- default = opt:get("enable")
+ if opt:get("default") ~= nil then
+ default = opt:get("default")
end
-- is first?