premake5: Comments and restructuring the script.

Preparing for checking in dependencies.
This commit is contained in:
/dev/urandom 2016-01-04 19:42:19 +01:00
parent 01f1d82d05
commit 9e0fa476f9
No known key found for this signature in database
GPG Key ID: 41322B973E0F295E

View File

@ -54,6 +54,26 @@ solution "iw4x"
-- VS 2015 toolset only -- VS 2015 toolset only
toolset "msc-140" toolset "msc-140"
configuration "Debug"
defines { "DEBUG" }
flags { "MultiProcessorCompile", "Symbols", "No64BitChecks" }
optimize "Debug"
configuration "DebugStatic"
defines { "NDEBUG" }
flags { "MultiProcessorCompile", "Symbols", "No64BitChecks", "StaticRuntime" }
optimize "Debug"
configuration "Release"
defines { "NDEBUG" }
flags { "MultiProcessorCompile", "Symbols", "LinkTimeOptimization", "No64BitChecks" }
optimize "Full"
configuration "ReleaseStatic"
defines { "NDEBUG" }
flags { "MultiProcessorCompile", "Symbols", "LinkTimeOptimization", "No64BitChecks", "StaticRuntime" }
optimize "Full"
project "iw4x" project "iw4x"
kind "SharedLib" kind "SharedLib"
language "C++" language "C++"
@ -65,6 +85,7 @@ solution "iw4x"
} }
-- Virtual paths
if not _OPTIONS["no-new-structure"] then if not _OPTIONS["no-new-structure"] then
vpaths { vpaths {
["Headers/*"] = "src/**.hpp", ["Headers/*"] = "src/**.hpp",
@ -76,11 +97,13 @@ solution "iw4x"
["Docs/*"] = {"**.txt","**.md"} ["Docs/*"] = {"**.txt","**.md"}
} }
-- Pre-build
prebuildcommands { prebuildcommands {
"cd %{_MAIN_SCRIPT_DIR}", "cd %{_MAIN_SCRIPT_DIR}",
"premake5 generate-buildinfo" "premake5 generate-buildinfo"
} }
-- Post-build
if _OPTIONS["copy-to"] then if _OPTIONS["copy-to"] then
saneCopyToPath = string.gsub(_OPTIONS["copy-to"] .. "\\", "\\\\", "\\") saneCopyToPath = string.gsub(_OPTIONS["copy-to"] .. "\\", "\\\\", "\\")
postbuildcommands { postbuildcommands {
@ -88,22 +111,24 @@ solution "iw4x"
} }
end end
-- Specific configurations
configuration "Debug" configuration "Debug"
defines { "DEBUG" } defines { "DEBUG" }
flags { "MultiProcessorCompile", "Symbols", "UndefinedIdentifiers", "No64BitChecks" } flags { "UndefinedIdentifiers" }
optimize "Debug" optimize "Debug"
configuration "DebugStatic" configuration "DebugStatic"
defines { "NDEBUG" } defines { "NDEBUG" }
flags { "MultiProcessorCompile", "Symbols", "UndefinedIdentifiers", "StaticRuntime", "No64BitChecks" } flags { "UndefinedIdentifiers" }
optimize "Debug" optimize "Debug"
configuration "Release" configuration "Release"
defines { "NDEBUG" } defines { "NDEBUG" }
flags { "MultiProcessorCompile", "Symbols", "FatalCompileWarnings", "UndefinedIdentifiers", "LinkTimeOptimization", "No64BitChecks" } flags { "FatalCompileWarnings", "UndefinedIdentifiers" }
optimize "Full" optimize "Full"
configuration "ReleaseStatic" configuration "ReleaseStatic"
defines { "NDEBUG" } defines { "NDEBUG" }
flags { "MultiProcessorCompile", "Symbols", "FatalCompileWarnings", "UndefinedIdentifiers", "LinkTimeOptimization", "StaticRuntime", "No64BitChecks" } flags { "FatalCompileWarnings", "UndefinedIdentifiers" }
optimize "Full" optimize "Full"