You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
598 B
Lua
28 lines
598 B
Lua
---
|
|
-- Autoconfiguration.
|
|
-- Copyright (c) 2016 Blizzard Entertainment
|
|
---
|
|
local p = premake
|
|
local gcc = p.tools.gcc
|
|
|
|
function gcc.try_compile(cfg, text, parameters)
|
|
-- write the text to a temporary file.
|
|
local cppFile = path.join(cfg.objdir, "temp.cpp")
|
|
if not io.writefile(cppFile, text) then
|
|
return nil
|
|
end
|
|
|
|
if parameters == nil then
|
|
parameters = ""
|
|
end
|
|
|
|
local outFile = path.join(cfg.objdir, "temp.out")
|
|
|
|
-- compile that text file.
|
|
if os.execute('gcc "' .. cppFile .. '" ' .. parameters .. ' -o "' .. outFile ..'" &> /dev/null') then
|
|
return outFile
|
|
else
|
|
return nil
|
|
end
|
|
end
|