diff options
| author | ruki <[email protected]> | 2018-09-15 00:06:25 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2018-09-14 18:38:35 +0800 |
| commit | 1811b84c21ccfc2fe35b7b9ada2219a7a2b7db73 (patch) | |
| tree | 1e4c6715b5806c6defa5d8b6b1b3bd3d175b0fa7 /xmake/actions/require/package.lua | |
| parent | 370fb6fb63d61de86edd503a173f438bba90064f (diff) | |
add cmake package module
Diffstat (limited to 'xmake/actions/require/package.lua')
| -rw-r--r-- | xmake/actions/require/package.lua | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/xmake/actions/require/package.lua b/xmake/actions/require/package.lua index 301f960ef..27aabda82 100644 --- a/xmake/actions/require/package.lua +++ b/xmake/actions/require/package.lua @@ -244,7 +244,7 @@ function _sort_packagedeps(package) end -- load all required packages -function _load_packages(requires, requires_extra, parentinfo) +function _load_packages(requires, opt) -- no requires? if not requires or #requires == 0 then @@ -253,7 +253,7 @@ function _load_packages(requires, requires_extra, parentinfo) -- load packages local packages = {} - for packagename, requireinfo in pairs(load_requires(requires, requires_extra, parentinfo)) do + for packagename, requireinfo in pairs(load_requires(requires, opt.requires_extra, opt.parentinfo)) do -- attempt to get project option about this package local packageopt = project.option(packagename) @@ -267,9 +267,9 @@ function _load_packages(requires, requires_extra, parentinfo) -- load dependent packages and save them first of this package local deps = package:get("deps") - if deps then + if deps and opt.nodeps ~= true then local packagedeps = {} - for _, dep in ipairs(_load_packages(deps, package:get("__extra_deps"), requireinfo)) do + for _, dep in ipairs(_load_packages(deps, {requires_extra = package:get("__extra_deps"), parentinfo = requireinfo, nodeps = opt.nodeps})) do table.insert(packages, dep) packagedeps[dep:name()] = dep end @@ -415,10 +415,13 @@ function load_requires(requires, requires_extra, parentinfo) end -- load all required packages -function load_packages(requires, requires_extra) +function load_packages(requires, opt) + + -- init options + opt = opt or {} -- laod all required packages recursively - local packages = _load_packages(requires, requires_extra) + local packages = _load_packages(requires, opt) -- sort package urls _sort_packages_urls(packages) @@ -431,10 +434,13 @@ function load_packages(requires, requires_extra) end -- install packages -function install_packages(requires, requires_extra) +function install_packages(requires, opt) + + -- init options + opt = opt or {} -- load packages - local packages = load_packages(requires, requires_extra) + local packages = load_packages(requires, opt) -- fetch packages from local first local packages_remote = {} |
