diff options
| author | ruki <[email protected]> | 2019-04-21 22:12:21 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2019-04-21 22:12:21 +0800 |
| commit | 7e50a99af45fe32e6ea3567925b3ab19b67da0dc (patch) | |
| tree | f651f67a3376a6ec68f806d03e0c3f8cd6698b1b /xmake/core/base/os.lua | |
| parent | 36b8963329d23282a8022fc4c117909c3754f40e (diff) | |
pass build envs got autoconf
Diffstat (limited to 'xmake/core/base/os.lua')
| -rw-r--r-- | xmake/core/base/os.lua | 32 |
1 files changed, 23 insertions, 9 deletions
diff --git a/xmake/core/base/os.lua b/xmake/core/base/os.lua index 8b9e9dbb5..dac5a3e44 100644 --- a/xmake/core/base/os.lua +++ b/xmake/core/base/os.lua @@ -901,22 +901,36 @@ end -- set values to environment variable function os.setenv(name, ...) - - -- get separator local seperator = os.host() == "windows" and ';' or ':' - - -- append values return os._setenv(name, table.concat({...}, seperator)) end -- add values to environment variable function os.addenv(name, ...) - - -- get separator local seperator = os.host() == "windows" and ';' or ':' - - -- append values - return os.setenv(name, table.concat({...}, seperator) .. seperator .. (os.getenv(name) or "")) + local values = {...} + if #values > 0 then + return os._setenv(name, table.concat(values, seperator) .. seperator .. (os.getenv(name) or "")) + else + return os.getenv(name) + end +end + +-- set values to environment variable with the given seperator +function os.setenvp(name, values, seperator) + seperator = seperator or (os.host() == "windows" and ';' or ':') + return os._setenv(name, table.concat(table.wrap(values), seperator)) +end + +-- add values to environment variable with the given seperator +function os.addenvp(name, values, seperator) + seperator = seperator or (os.host() == "windows" and ';' or ':') + values = table.wrap(values) + if #values > 0 then + return os._setenv(name, table.concat(values, seperator) .. seperator .. (os.getenv(name) or "")) + else + return os.getenv(name) + end end -- read string data from pasteboard |
