Merge branch 'nazara-next' into vulkan

This commit is contained in:
Lynix
2020-02-25 19:15:07 +01:00
448 changed files with 2739 additions and 15884 deletions

View File

@@ -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")
@@ -97,6 +97,10 @@ function NazaraBuild:Execute()
files(libTable.Files)
excludes(libTable.FilesExcluded)
if (libTable.DisableWarnings) then
warnings("Off")
end
defines(libTable.Defines)
flags(libTable.Flags)
kind("StaticLib") -- Force them as static libs
@@ -122,6 +126,8 @@ function NazaraBuild:Execute()
end
filter({})
self:PostconfigGenericProject()
end
end
@@ -131,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")
@@ -180,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
@@ -193,7 +207,7 @@ function NazaraBuild:Execute()
project(prefix .. toolTable.Name)
self:PrepareMainWorkspace()
self:PreconfigNazaraProject()
location(_ACTION .. "/tools")
@@ -251,6 +265,8 @@ function NazaraBuild:Execute()
end
filter({})
self:PostconfigNazaraProject()
end
group("Examples")
@@ -260,7 +276,7 @@ function NazaraBuild:Execute()
project("Demo" .. exampleTable.Name)
self:PrepareMainWorkspace()
self:PreconfigNazaraProject()
location(_ACTION .. "/examples")
@@ -301,6 +317,8 @@ function NazaraBuild:Execute()
end
filter({})
self:PostconfigNazaraProject()
end
end
end
@@ -802,7 +820,7 @@ function NazaraBuild:Process(infoTable)
return true
end
function NazaraBuild:PrepareGeneric()
function NazaraBuild:PreconfigGenericProject()
flags({
"MultiProcessorCompile",
"NoMinimalRebuild",
@@ -811,7 +829,8 @@ function NazaraBuild:PrepareGeneric()
"UndefinedIdentifiers"
})
cppdialect("C++14")
cppdialect("C++17")
warnings("Extra")
self:FilterLibDirectory("../thirdparty/genlib/", libdirs)
self:FilterLibDirectory("../thirdparty/lib/", libdirs)
@@ -871,8 +890,17 @@ function NazaraBuild:PrepareGeneric()
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++")
@@ -906,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

View File

@@ -1,7 +0,0 @@
-- Quelle ironie
MODULE.Name = "Lua"
MODULE.Libraries = {
"lua",
"NazaraCore"
}

View File

@@ -1,5 +0,0 @@
MODULE.Name = "Noise"
MODULE.Libraries = {
"NazaraCore"
}

View File

@@ -9,16 +9,16 @@ TOOL.Defines = {
}
TOOL.Includes = {
"../SDK/include",
"../SDK/src"
"../include",
"../src"
}
TOOL.Files = {
"../SDK/include/NDK/**.hpp",
"../SDK/include/NDK/**.inl",
"../SDK/src/NDK/**.hpp",
"../SDK/src/NDK/**.inl",
"../SDK/src/NDK/**.cpp"
"../include/NazaraSDK/**.hpp",
"../include/NazaraSDK/**.inl",
"../src/NazaraSDK/**.hpp",
"../src/NazaraSDK/**.inl",
"../src/NazaraSDK/**.cpp"
}
TOOL.Libraries = function()

View File

@@ -10,46 +10,40 @@ TOOL.Defines = {
}
TOOL.Includes = {
"../SDK/include",
"../SDK/src"
"../include",
"../src"
}
TOOL.Files = {
"../SDK/include/NDK/**.hpp",
"../SDK/include/NDK/**.inl",
"../SDK/src/NDK/**.hpp",
"../SDK/src/NDK/**.inl",
"../SDK/src/NDK/**.cpp"
"../include/NazaraSDK/**.hpp",
"../include/NazaraSDK/**.inl",
"../src/NazaraSDK/**.hpp",
"../src/NazaraSDK/**.inl",
"../src/NazaraSDK/**.cpp"
}
-- Excludes client-only files
TOOL.FilesExcluded = {
"../SDK/**/CameraComponent.*",
"../SDK/**/Canvas.*",
"../SDK/**/Console.*",
"../SDK/**/DebugComponent.*",
"../SDK/**/DebugSystem.*",
"../SDK/**/GraphicsComponent.*",
"../SDK/**/LightComponent.*",
"../SDK/**/ListenerComponent.*",
"../SDK/**/ListenerSystem.*",
"../SDK/**/Particle*Component.*",
"../SDK/**/ParticleSystem.*",
"../SDK/**/RenderSystem.*",
"../SDK/**/*Layout*.*",
"../SDK/**/*Widget*.*",
"../SDK/**/LuaBinding_Audio.*",
"../SDK/**/LuaBinding_Graphics.*",
"../SDK/**/LuaBinding_Renderer.*",
"../SDK/**/LuaBinding_Platform.*"
"../*/NazaraSDK/BaseWidget.*",
"../*/NazaraSDK/Canvas.*",
"../*/NazaraSDK/Console.*",
"../*/NazaraSDK/**/CameraComponent.*",
"../*/NazaraSDK/**/DebugComponent.*",
"../*/NazaraSDK/**/DebugSystem.*",
"../*/NazaraSDK/**/GraphicsComponent.*",
"../*/NazaraSDK/**/LightComponent.*",
"../*/NazaraSDK/**/ListenerComponent.*",
"../*/NazaraSDK/**/ListenerSystem.*",
"../*/NazaraSDK/**/Particle*Component.*",
"../*/NazaraSDK/**/ParticleSystem.*",
"../*/NazaraSDK/**/RenderSystem.*",
"../*/NazaraSDK/**/*Layout*.*",
"../*/NazaraSDK/**/*Widget*.*"
}
TOOL.Libraries = {
"NazaraCore",
"NazaraLua",
"NazaraNetwork",
"NazaraNoise",
"NazaraPhysics2D",
"NazaraPhysics3D",
"NazaraUtility"