summaryrefslogtreecommitdiff
path: root/xmake/core
diff options
context:
space:
mode:
authorruki <[email protected]>2021-01-01 22:33:43 +0800
committerruki <[email protected]>2021-01-01 22:33:43 +0800
commit18b68e6e7ab221b5ebd6c992bd02fa11c73d52ae (patch)
tree5fcb1da8fcf653d2580db3478442983eede98625 /xmake/core
parent0650d385e898d4bea721fa1014b5d881f4120c5d (diff)
use add_requireconfs
Diffstat (limited to 'xmake/core')
-rw-r--r--xmake/core/project/project.lua14
-rw-r--r--xmake/core/sandbox/modules/import/core/project/project.lua51
2 files changed, 40 insertions, 25 deletions
diff --git a/xmake/core/project/project.lua b/xmake/core/project/project.lua
index 6bb8d8b07..a495a300c 100644
--- a/xmake/core/project/project.lua
+++ b/xmake/core/project/project.lua
@@ -693,6 +693,7 @@ function project.apis()
, "set_description"
-- add_xxx
, "add_requires"
+ , "add_requireconfs"
, "add_repositories"
}
, paths =
@@ -1002,10 +1003,23 @@ function project.requires_str()
requires_str, requires_extra = project.get("requires"), project.get("__extra_requires")
project._memcache():set("requires_str", requires_str or false)
project._memcache():set("requires_extra", requires_extra)
+
+ -- get raw requireconfs
+ local requireconfs_str, requireconfs_extra = project.get("requireconfs"), project.get("__extra_requireconfs")
+ project._memcache():set("requireconfs_str", requireconfs_str or false)
+ project._memcache():set("requireconfs_extra", requireconfs_extra)
end
return requires_str or nil, requires_extra
end
+-- get string requireconfs
+function project.requireconfs_str()
+ project.requires_str()
+ local requireconfs_str = project._memcache():get("requireconfs_str")
+ local requireconfs_extra = project._memcache():get("requireconfs_extra")
+ return requireconfs_str, requireconfs_extra
+end
+
-- get the given rule
function project.rule(name)
return project.rules()[name]
diff --git a/xmake/core/sandbox/modules/import/core/project/project.lua b/xmake/core/sandbox/modules/import/core/project/project.lua
index 1e5faa2a9..a72bd5f92 100644
--- a/xmake/core/sandbox/modules/import/core/project/project.lua
+++ b/xmake/core/sandbox/modules/import/core/project/project.lua
@@ -36,31 +36,32 @@ local package = require("package/package")
local import = require("sandbox/modules/import")
-- export some readonly interfaces
-sandbox_core_project.get = project.get
-sandbox_core_project.rule = project.rule
-sandbox_core_project.rules = project.rules
-sandbox_core_project.toolchain = project.toolchain
-sandbox_core_project.toolchains = project.toolchains
-sandbox_core_project.target = project.target
-sandbox_core_project.targets = project.targets
-sandbox_core_project.ordertargets = project.ordertargets
-sandbox_core_project.option = project.option
-sandbox_core_project.options = project.options
-sandbox_core_project.rootfile = project.rootfile
-sandbox_core_project.allfiles = project.allfiles
-sandbox_core_project.rcfile = project.rcfile
-sandbox_core_project.directory = project.directory
-sandbox_core_project.name = project.name
-sandbox_core_project.modes = project.modes
-sandbox_core_project.mtimes = project.mtimes
-sandbox_core_project.version = project.version
-sandbox_core_project.require = project.require
-sandbox_core_project.requires = project.requires
-sandbox_core_project.requires_str = project.requires_str
-sandbox_core_project.policy = project.policy
-sandbox_core_project.tmpdir = project.tmpdir
-sandbox_core_project.tmpfile = project.tmpfile
-sandbox_core_project.is_loaded = project.is_loaded
+sandbox_core_project.get = project.get
+sandbox_core_project.rule = project.rule
+sandbox_core_project.rules = project.rules
+sandbox_core_project.toolchain = project.toolchain
+sandbox_core_project.toolchains = project.toolchains
+sandbox_core_project.target = project.target
+sandbox_core_project.targets = project.targets
+sandbox_core_project.ordertargets = project.ordertargets
+sandbox_core_project.option = project.option
+sandbox_core_project.options = project.options
+sandbox_core_project.rootfile = project.rootfile
+sandbox_core_project.allfiles = project.allfiles
+sandbox_core_project.rcfile = project.rcfile
+sandbox_core_project.directory = project.directory
+sandbox_core_project.name = project.name
+sandbox_core_project.modes = project.modes
+sandbox_core_project.mtimes = project.mtimes
+sandbox_core_project.version = project.version
+sandbox_core_project.require = project.require
+sandbox_core_project.requires = project.requires
+sandbox_core_project.requires_str = project.requires_str
+sandbox_core_project.requireconfs_str = project.requireconfs_str
+sandbox_core_project.policy = project.policy
+sandbox_core_project.tmpdir = project.tmpdir
+sandbox_core_project.tmpfile = project.tmpfile
+sandbox_core_project.is_loaded = project.is_loaded
-- check project options
function sandbox_core_project.check()