diff options
author | Hisham Muhammad <hisham@gobolinux.org> | 2018-10-30 10:04:23 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-30 10:04:23 -0300 |
commit | 760ad7c98a4a322b1f028ea9585cd17c5b74b2e2 (patch) | |
tree | cde11b0975132e82062417c2a0057b13c7b6df4d /binary | |
parent | 0c534c71465474b92710a2951bf15370fcc8c663 (diff) | |
download | luarocks-760ad7c98a4a322b1f028ea9585cd17c5b74b2e2.tar.gz luarocks-760ad7c98a4a322b1f028ea9585cd17c5b74b2e2.tar.bz2 luarocks-760ad7c98a4a322b1f028ea9585cd17c5b74b2e2.zip |
core.sysdetect: add fork-free OS detection (#938)
Detect operating system and architecture without forking subprocesses,
doing `file`-like detection reading data from well-known system
executables.
Diffstat (limited to 'binary')
-rwxr-xr-x | binary/all_in_one | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/binary/all_in_one b/binary/all_in_one index 01758758..43a18a3b 100755 --- a/binary/all_in_one +++ b/binary/all_in_one | |||
@@ -50,6 +50,7 @@ local path = require("luarocks.path") | |||
50 | local manif = require("luarocks.manif") | 50 | local manif = require("luarocks.manif") |
51 | local queries = require("luarocks.queries") | 51 | local queries = require("luarocks.queries") |
52 | local persist = require("luarocks.persist") | 52 | local persist = require("luarocks.persist") |
53 | local sysdetect = require("luarocks.core.sysdetect") | ||
53 | 54 | ||
54 | -------------------------------------------------------------------------------- | 55 | -------------------------------------------------------------------------------- |
55 | 56 | ||
@@ -144,16 +145,7 @@ local function write_hardcoded_module(dir) | |||
144 | local processor = if_platform("windows", "x86") | 145 | local processor = if_platform("windows", "x86") |
145 | 146 | ||
146 | if if_platform("unix", true) then | 147 | if if_platform("unix", true) then |
147 | system = util.popen_read("uname -s") | 148 | system, processor = sysdetect.detect() |
148 | processor = util.popen_read("uname -m") | ||
149 | |||
150 | if processor:match("i[%d]86") then | ||
151 | processor = "x86" | ||
152 | elseif processor:match("amd64") or processor:match("x86_64") then | ||
153 | processor = "x86_64" | ||
154 | elseif processor:match("Power Macintosh") then | ||
155 | processor = "powerpc" | ||
156 | end | ||
157 | end | 149 | end |
158 | 150 | ||
159 | local hardcoded = { | 151 | local hardcoded = { |