@@ -1171,14 +1171,9 @@ function _get_cmake_generator(package, opt)
1171
1171
return cmake_generator
1172
1172
end
1173
1173
1174
- function configure (package , configs , opt )
1174
+ function configure (package , configs , opt , sourcedir )
1175
1175
opt = opt or {}
1176
1176
1177
- -- enter build directory
1178
- local buildir = opt .buildir or package :buildir ()
1179
- os .mkdir (path .join (buildir , " install" ))
1180
- local oldir = os .cd (buildir )
1181
-
1182
1177
-- pass configurations
1183
1178
local argv = {}
1184
1179
for name , value in pairs (_get_configs (package , configs , opt )) do
@@ -1191,20 +1186,23 @@ function configure(package, configs, opt)
1191
1186
table.insert (argv , " -D" .. name .. " =" .. value )
1192
1187
end
1193
1188
end
1194
- table.insert (argv , oldir )
1189
+ table.insert (argv , sourcedir )
1195
1190
1196
1191
-- do configure
1197
1192
local cmake = assert (find_tool (" cmake" ), " cmake not found!" )
1198
1193
os .vrunv (cmake .program , argv , {envs = opt .envs or buildenvs (package , opt )})
1199
-
1200
- return oldir
1201
1194
end
1202
1195
1203
1196
-- build package
1204
1197
function build (package , configs , opt )
1205
1198
opt = opt or {}
1206
1199
local cmake_generator = _get_cmake_generator (package , opt )
1207
- local oldir = configure (package , configs , opt )
1200
+
1201
+ -- enter build directory
1202
+ local buildir = opt .buildir or package :buildir ()
1203
+ os .mkdir (path .join (buildir , " install" ))
1204
+ local oldir = os .cd (buildir )
1205
+ configure (package , configs , opt , oldir )
1208
1206
1209
1207
-- do build
1210
1208
if opt .cmake_build then
@@ -1233,7 +1231,12 @@ end
1233
1231
function install (package , configs , opt )
1234
1232
opt = opt or {}
1235
1233
local cmake_generator = _get_cmake_generator (package , opt )
1236
- local oldir = configure (package , configs , opt )
1234
+
1235
+ -- enter build directory
1236
+ local buildir = opt .buildir or package :buildir ()
1237
+ os .mkdir (path .join (buildir , " install" ))
1238
+ local oldir = os .cd (buildir )
1239
+ configure (package , configs , opt , oldir )
1237
1240
1238
1241
-- do build and install
1239
1242
if opt .cmake_build then
0 commit comments