blob: b0c4aa79148a69f53bdb5628dd1760626dc9b743 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
--- Build back-end for raw listing of commands in rockspec files.
local command = {}
local fs = require("luarocks.fs")
local util = require("luarocks.util")
local cfg = require("luarocks.core.cfg")
--- Driver function for the "command" build back-end.
-- @param rockspec table: the loaded rockspec.
-- @return boolean or (nil, string): true if no errors occurred,
-- nil and an error message otherwise.
function command.run(rockspec, not_install)
assert(rockspec:type() == "rockspec")
local build = rockspec.build
util.variable_substitutions(build, rockspec.variables)
local env = {
CC = cfg.variables.CC,
--LD = cfg.variables.LD,
--CFLAGS = cfg.variables.CFLAGS,
}
if build.build_command then
util.printout(build.build_command)
if not fs.execute_env(env, build.build_command) then
return nil, "Failed building."
end
end
if build.install_command and not not_install then
util.printout(build.install_command)
if not fs.execute_env(env, build.install_command) then
return nil, "Failed installing."
end
end
return true
end
return command
|