summaryrefslogtreecommitdiff
path: root/xmake/core/package/package.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2018-08-25 00:51:54 +0800
committerruki <[email protected]>2018-08-24 23:11:25 +0800
commit3834432a2fa50afc439288a4f7862261aedf41ae (patch)
tree6080893188bc4791e3044fa1b53f4c95a2e77ee9 /xmake/core/package/package.lua
parente00c2e6bbc3b363f191e514dc553ac6041fe2e0e (diff)
improve to load repo and package
Diffstat (limited to 'xmake/core/package/package.lua')
-rw-r--r--xmake/core/package/package.lua12
1 files changed, 10 insertions, 2 deletions
diff --git a/xmake/core/package/package.lua b/xmake/core/package/package.lua
index f26884f58..24f15a2f7 100644
--- a/xmake/core/package/package.lua
+++ b/xmake/core/package/package.lua
@@ -84,6 +84,11 @@ function _instance:name()
return self._NAME
end
+-- get the repository of this package
+function _instance:repo()
+ return self._REPO
+end
+
-- get the package alias
function _instance:alias()
local requireinfo = self:requireinfo()
@@ -545,7 +550,7 @@ function package.load_from_project(packagename, project)
end
-- load the package from the package directory or package description file
-function package.load_from_repository(packagename, is_global, packagedir, packagefile)
+function package.load_from_repository(packagename, repo, packagedir, packagefile)
-- get it directly from cache first
package._PACKAGES = package._PACKAGES or {}
@@ -587,8 +592,11 @@ function package.load_from_repository(packagename, is_global, packagedir, packag
return nil, errors
end
+ -- save repository
+ instance._REPO = repo
+
-- mark as global/project package?
- instance._FROMKIND = utils.ifelse(is_global, "global", "local")
+ instance._FROMKIND = repo:is_global() and "global" or "local"
-- save instance to the cache
package._PACKAGES[packagename] = instance