diff options
| author | ruki <[email protected]> | 2019-03-17 22:46:36 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2019-03-17 22:46:36 +0800 |
| commit | ecdb953daa77c74a7475c7486d8df6d96d0d0c4d (patch) | |
| tree | 5720d5b5de715400591fc18a9417a9da2a189e28 /xmake/core/package/package.lua | |
| parent | e35215c72fa78df798a88ca1cd9bed9bb36013d5 (diff) | |
bind package envs to run
Diffstat (limited to 'xmake/core/package/package.lua')
| -rw-r--r-- | xmake/core/package/package.lua | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/xmake/core/package/package.lua b/xmake/core/package/package.lua index fead86f1c..baa8319b1 100644 --- a/xmake/core/package/package.lua +++ b/xmake/core/package/package.lua @@ -319,6 +319,9 @@ function _instance:envs() local envs = self._ENVS if not envs then envs = {} + if self:kind() == "binary" then + envs.PATH = {"bin"} + end self._ENVS = envs end return envs @@ -336,15 +339,15 @@ function _instance:envs_enter() -- add the new environments local installdir = self:installdir() - if self:kind() == "binary" then - oldenvs.PATH = os.getenv("PATH") - os.addenv("PATH", path.join(installdir, "bin")) - end for name, values in pairs(self:envs()) do oldenvs[name] = oldenvs[name] or os.getenv(name) if name == "PATH" then for _, value in ipairs(values) do - os.addenv(name, path.join(installdir, value)) + if path.is_absolute(value) then + os.addenv(name, value) + else + os.addenv(name, path.join(installdir, value)) + end end else os.addenv(name, unpack(values)) |
