Fix Linux linking issues
This commit is contained in:
parent
2154782840
commit
d298e93c13
|
|
@ -89,7 +89,7 @@ function NazaraBuild:Execute()
|
|||
for k, libTable in ipairs(self.OrderedExtLibs) do
|
||||
project(libTable.Name)
|
||||
|
||||
self:PrepareGeneric()
|
||||
self:PreconfigGenericProject()
|
||||
|
||||
language(libTable.Language)
|
||||
location(_ACTION .. "/thirdparty")
|
||||
|
|
@ -126,6 +126,8 @@ function NazaraBuild:Execute()
|
|||
end
|
||||
|
||||
filter({})
|
||||
|
||||
self:PostconfigGenericProject()
|
||||
end
|
||||
end
|
||||
|
||||
|
|
@ -135,14 +137,14 @@ function NazaraBuild:Execute()
|
|||
if (_OPTIONS["united"]) then
|
||||
project("NazaraEngine")
|
||||
|
||||
self:PrepareMainWorkspace()
|
||||
self:PreconfigNazaraProject()
|
||||
end
|
||||
|
||||
for k, moduleTable in ipairs(self.OrderedModules) do
|
||||
if (not _OPTIONS["united"]) then
|
||||
project("Nazara" .. moduleTable.Name)
|
||||
|
||||
self:PrepareMainWorkspace()
|
||||
self:PreconfigNazaraProject()
|
||||
end
|
||||
|
||||
location(_ACTION .. "/modules")
|
||||
|
|
@ -184,6 +186,14 @@ function NazaraBuild:Execute()
|
|||
end
|
||||
|
||||
filter({})
|
||||
|
||||
if (not _OPTIONS["united"]) then
|
||||
self:PostconfigNazaraProject()
|
||||
end
|
||||
end
|
||||
|
||||
if (_OPTIONS["united"]) then
|
||||
self:PostconfigNazaraProject()
|
||||
end
|
||||
|
||||
-- Tools
|
||||
|
|
@ -197,7 +207,7 @@ function NazaraBuild:Execute()
|
|||
|
||||
project(prefix .. toolTable.Name)
|
||||
|
||||
self:PrepareMainWorkspace()
|
||||
self:PreconfigNazaraProject()
|
||||
|
||||
location(_ACTION .. "/tools")
|
||||
|
||||
|
|
@ -255,6 +265,8 @@ function NazaraBuild:Execute()
|
|||
end
|
||||
|
||||
filter({})
|
||||
|
||||
self:PostconfigNazaraProject()
|
||||
end
|
||||
|
||||
group("Examples")
|
||||
|
|
@ -264,7 +276,7 @@ function NazaraBuild:Execute()
|
|||
|
||||
project("Demo" .. exampleTable.Name)
|
||||
|
||||
self:PrepareMainWorkspace()
|
||||
self:PreconfigNazaraProject()
|
||||
|
||||
location(_ACTION .. "/examples")
|
||||
|
||||
|
|
@ -305,6 +317,8 @@ function NazaraBuild:Execute()
|
|||
end
|
||||
|
||||
filter({})
|
||||
|
||||
self:PostconfigNazaraProject()
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
@ -806,7 +820,7 @@ function NazaraBuild:Process(infoTable)
|
|||
return true
|
||||
end
|
||||
|
||||
function NazaraBuild:PrepareGeneric()
|
||||
function NazaraBuild:PreconfigGenericProject()
|
||||
flags({
|
||||
"MultiProcessorCompile",
|
||||
"NoMinimalRebuild",
|
||||
|
|
@ -871,18 +885,22 @@ function NazaraBuild:PrepareGeneric()
|
|||
buildoptions("-mfpmath=sse")
|
||||
buildoptions("-ftree-vectorize")
|
||||
|
||||
-- Add options required for C++17 thread and filesystem
|
||||
filter("action:gmake*")
|
||||
links("stdc++fs")
|
||||
links("pthread")
|
||||
|
||||
filter({})
|
||||
|
||||
buildoptions(self.Config["AdditionalCompilationOptions"])
|
||||
end
|
||||
|
||||
function NazaraBuild:PrepareMainWorkspace()
|
||||
self:PrepareGeneric()
|
||||
function NazaraBuild:PostconfigGenericProject()
|
||||
-- Add options required for C++17 thread and filesystem (have to be linked last)
|
||||
filter("action:gmake*")
|
||||
links("stdc++fs")
|
||||
links("pthread")
|
||||
|
||||
filter({})
|
||||
end
|
||||
|
||||
function NazaraBuild:PreconfigNazaraProject()
|
||||
self:PreconfigGenericProject()
|
||||
|
||||
language("C++")
|
||||
|
||||
|
|
@ -916,6 +934,10 @@ function NazaraBuild:PrepareMainWorkspace()
|
|||
filter({})
|
||||
end
|
||||
|
||||
function NazaraBuild:PostconfigNazaraProject()
|
||||
self:PostconfigGenericProject()
|
||||
end
|
||||
|
||||
function NazaraBuild:RegisterAction(actionTable)
|
||||
if (not actionTable.Manual) then
|
||||
if (actionTable.Name == nil or type(actionTable.Name) ~= "string" or string.len(actionTable.Name) == 0) then
|
||||
|
|
|
|||
Loading…
Reference in New Issue