xref: /TaskScheduler/premake4.lua (revision 6d35225c)
153fd86e4SSergey Makeevif not _ACTION then _ACTION="vs2010" end
253fd86e4SSergey Makeev
353fd86e4SSergey Makeevsolution "TaskScheduler"
453fd86e4SSergey Makeev
553fd86e4SSergey Makeev	language "C++"
653fd86e4SSergey Makeev
753fd86e4SSergey Makeev	location ( "Build/" .. _ACTION )
853fd86e4SSergey Makeev	flags {"NoManifest", "ExtraWarnings", "StaticRuntime", "NoMinimalRebuild", "FloatFast", "EnableSSE2" }
953fd86e4SSergey Makeev	optimization_flags = { "OptimizeSpeed" }
1053fd86e4SSergey Makeev	targetdir("Bin")
1153fd86e4SSergey Makeev
1253fd86e4SSergey Makeev	local config_list = {
1353fd86e4SSergey Makeev		"Release",
1453fd86e4SSergey Makeev		"Debug",
1553fd86e4SSergey Makeev	}
1653fd86e4SSergey Makeev	local platform_list = {
1753fd86e4SSergey Makeev		"x32",
1853fd86e4SSergey Makeev		"x64"
1953fd86e4SSergey Makeev	}
2053fd86e4SSergey Makeev
2153fd86e4SSergey Makeev	configurations(config_list)
2253fd86e4SSergey Makeev	platforms(platform_list)
2353fd86e4SSergey Makeev
2453fd86e4SSergey Makeev
2553fd86e4SSergey Makeev-- CONFIGURATIONS
2653fd86e4SSergey Makeev
27*6d35225cSSergey Makeevconfiguration "Release"
2853fd86e4SSergey Makeev	defines { "NDEBUG" }
2953fd86e4SSergey Makeev	flags { "Symbols", optimization_flags }
3053fd86e4SSergey Makeev
31*6d35225cSSergey Makeevconfiguration "Debug"
3253fd86e4SSergey Makeev	defines { "_DEBUG" }
3353fd86e4SSergey Makeev	flags { "Symbols" }
3453fd86e4SSergey Makeev
3553fd86e4SSergey Makeevconfiguration "x32"
3653fd86e4SSergey Makeev	libdirs { "$(DXSDK_DIR)/Lib/x86" }
3753fd86e4SSergey Makeev
3853fd86e4SSergey Makeevconfiguration "x64"
3953fd86e4SSergey Makeev	libdirs { "$(DXSDK_DIR)/Lib/x64" }
4053fd86e4SSergey Makeev
4153fd86e4SSergey Makeev
4253fd86e4SSergey Makeev--  give each configuration/platform a unique output directory
4353fd86e4SSergey Makeev
4453fd86e4SSergey Makeevfor _, config in ipairs(config_list) do
4553fd86e4SSergey Makeev	for _, plat in ipairs(platform_list) do
4653fd86e4SSergey Makeev		configuration { config, plat }
4753fd86e4SSergey Makeev		objdir    ( "build/" .. _ACTION .. "/tmp/"  .. config  .. "-" .. plat )
4853fd86e4SSergey Makeev	end
4953fd86e4SSergey Makeevend
5053fd86e4SSergey Makeev
5153fd86e4SSergey Makeev-- SUBPROJECTS
5253fd86e4SSergey Makeev
5353fd86e4SSergey Makeevproject "UnitTest++"
5453fd86e4SSergey Makeev	kind "StaticLib"
5553fd86e4SSergey Makeev	files {
5605590a6dSbombomby		"TestFramework/UnitTest++/**.*",
5753fd86e4SSergey Makeev	}
5853fd86e4SSergey Makeev
5953fd86e4SSergey Makeev	excludes {
6005590a6dSbombomby		"TestFramework/UnitTest++/Posix/**.*"
6153fd86e4SSergey Makeev	}
6253fd86e4SSergey Makeev
6353fd86e4SSergey Makeev
6453fd86e4SSergey Makeev project "TaskScheduler"
6553fd86e4SSergey Makeev 	flags {"NoPCH"}
6653fd86e4SSergey Makeev 	kind "ConsoleApp"
6753fd86e4SSergey Makeev 	files {
6853fd86e4SSergey Makeev 		"Src/**.*",
6953fd86e4SSergey Makeev 	}
7053fd86e4SSergey Makeev
7153fd86e4SSergey Makeev	links {
7253fd86e4SSergey Makeev		"UnitTest++"
7353fd86e4SSergey Makeev	}
74