diff options
| author | ruki <[email protected]> | 2025-01-25 00:50:04 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2025-01-25 00:50:04 +0800 |
| commit | db6074a3f94d5af4bd79ecfbf6d58f7ede2bf8c7 (patch) | |
| tree | e77e9d2acf9cae45bdee0327a12d422faf117026 | |
| parent | 2d3944ab6162717fc252483351705230b5dd773e (diff) | |
update comments
| -rw-r--r-- | tests/apis/custom_toolchain/xmake.lua | 2 | ||||
| -rw-r--r-- | xmake/core/platform/platform.lua | 8 | ||||
| -rw-r--r-- | xmake/core/project/project.lua | 38 | ||||
| -rw-r--r-- | xmake/core/tool/toolchain.lua | 9 |
4 files changed, 35 insertions, 22 deletions
diff --git a/tests/apis/custom_toolchain/xmake.lua b/tests/apis/custom_toolchain/xmake.lua index acd68d4ad..dc15f1a05 100644 --- a/tests/apis/custom_toolchain/xmake.lua +++ b/tests/apis/custom_toolchain/xmake.lua @@ -1,7 +1,7 @@ -includes("toolchains/my-c6000") add_rules("mode.debug", "mode.release") set_toolchains("my-c6000") +add_toolchaindirs("toolchains") target("test") set_kind("static") diff --git a/xmake/core/platform/platform.lua b/xmake/core/platform/platform.lua index a58d225e5..6778596d0 100644 --- a/xmake/core/platform/platform.lua +++ b/xmake/core/platform/platform.lua @@ -397,27 +397,19 @@ end -- get platform directories function platform.directories() - - -- init directories local dirs = platform._DIRS or { path.join(global.directory(), "platforms") , path.join(os.programdir(), "platforms") } - - -- save directories to cache platform._DIRS = dirs return dirs end -- add platform directories function platform.add_directories(...) - - -- add directories local dirs = platform.directories() for _, dir in ipairs({...}) do table.insert(dirs, 1, dir) end - - -- remove unique directories platform._DIRS = table.unique(dirs) end diff --git a/xmake/core/project/project.lua b/xmake/core/project/project.lua index 43271c7b0..7b42d47ea 100644 --- a/xmake/core/project/project.lua +++ b/xmake/core/project/project.lua @@ -202,6 +202,17 @@ function project._api_add_platformdirs(interp, ...) end end +-- add toolchain directories +function project._api_add_toolchaindirs(interp, ...) + local scriptdir = project.interpreter():scriptdir() + for _, dir in ipairs({...}) do + if not path.is_absolute(dir) then + dir = path.absolute(dir, scriptdir) + end + toolchain.add_directories(dir) + end +end + -- load the project file function project._load(force, disable_filter) @@ -642,22 +653,23 @@ function project.apis() , custom = { -- is_xxx - {"is_os", project._api_is_os } - , {"is_kind", project._api_is_kind } - , {"is_arch", project._api_is_arch } - , {"is_mode", project._api_is_mode } - , {"is_plat", project._api_is_plat } - , {"is_cross", project._api_is_cross } - , {"is_config", project._api_is_config } + {"is_os", project._api_is_os } + , {"is_kind", project._api_is_kind } + , {"is_arch", project._api_is_arch } + , {"is_mode", project._api_is_mode } + , {"is_plat", project._api_is_plat } + , {"is_cross", project._api_is_cross } + , {"is_config", project._api_is_config } -- get_xxx - , {"get_config", project._api_get_config } + , {"get_config", project._api_get_config } -- has_xxx - , {"has_config", project._api_has_config } - , {"has_package", project._api_has_package } + , {"has_config", project._api_has_config } + , {"has_package", project._api_has_package } -- add_xxx - , {"add_moduledirs", project._api_add_moduledirs } - , {"add_plugindirs", project._api_add_plugindirs } - , {"add_platformdirs", project._api_add_platformdirs } + , {"add_moduledirs", project._api_add_moduledirs } + , {"add_plugindirs", project._api_add_plugindirs } + , {"add_platformdirs", project._api_add_platformdirs } + , {"add_toolchaindirs", project._api_add_toolchaindirs } } } end diff --git a/xmake/core/tool/toolchain.lua b/xmake/core/tool/toolchain.lua index a19413d34..1085df198 100644 --- a/xmake/core/tool/toolchain.lua +++ b/xmake/core/tool/toolchain.lua @@ -640,6 +640,15 @@ function toolchain.directories() return dirs end +-- add toolchain directories +function toolchain.add_directories(...) + local dirs = toolchain.directories() + for _, dir in ipairs({...}) do + table.insert(dirs, 1, dir) + end + toolchain._DIRS = table.unique(dirs) +end + -- load toolchain function toolchain.load(name, opt) |
