Adam Sawicki | e6e498f | 2017-06-16 17:21:31 +0200 | [diff] [blame] | 1 | -- _ACTION is a premake global variable and for our usage will be vs2012, vs2013, etc.
|
| 2 | -- Strip "vs" from this string to make a suffix for solution and project files.
|
Adam Sawicki | 59a3e7e | 2017-08-21 15:47:30 +0200 | [diff] [blame] | 3 | _SUFFIX = _ACTION
|
Adam Sawicki | e6e498f | 2017-06-16 17:21:31 +0200 | [diff] [blame] | 4 |
|
| 5 | workspace "VulkanSample"
|
| 6 | configurations { "Debug", "Release" }
|
Adam Sawicki | bf00f13 | 2017-08-21 16:04:40 +0200 | [diff] [blame] | 7 | platforms { "x64", "Linux-x64" }
|
Adam Sawicki | e6e498f | 2017-06-16 17:21:31 +0200 | [diff] [blame] | 8 | location "../build"
|
| 9 | filename ("VulkanSample_" .. _SUFFIX)
|
| 10 | startproject "VulkanSample"
|
Adam Sawicki | 4dfa169 | 2021-02-22 14:18:34 +0100 | [diff] [blame^] | 11 | cppdialect "C++14"
|
Adam Sawicki | e6e498f | 2017-06-16 17:21:31 +0200 | [diff] [blame] | 12 |
|
Adam Sawicki | bf00f13 | 2017-08-21 16:04:40 +0200 | [diff] [blame] | 13 | filter "platforms:x64"
|
Adam Sawicki | e6e498f | 2017-06-16 17:21:31 +0200 | [diff] [blame] | 14 | system "Windows"
|
| 15 | architecture "x64"
|
Adam Sawicki | 1d53611 | 2018-08-07 12:23:55 +0200 | [diff] [blame] | 16 | includedirs { "$(VULKAN_SDK)/Include" }
|
Adam Sawicki | b6b5fd1 | 2017-07-05 16:47:26 +0200 | [diff] [blame] | 17 | libdirs { "$(VULKAN_SDK)/Lib" }
|
Adam Sawicki | e6e498f | 2017-06-16 17:21:31 +0200 | [diff] [blame] | 18 |
|
Adam Sawicki | 59a3e7e | 2017-08-21 15:47:30 +0200 | [diff] [blame] | 19 | filter "platforms:Linux-x64"
|
| 20 | system "Linux"
|
| 21 | architecture "x64"
|
| 22 | includedirs { "$(VULKAN_SDK)/include" }
|
| 23 | libdirs { "$(VULKAN_SDK)/lib" }
|
| 24 |
|
Adam Sawicki | 6d2e2e0 | 2018-08-07 13:44:20 +0200 | [diff] [blame] | 25 |
|
Adam Sawicki | e6e498f | 2017-06-16 17:21:31 +0200 | [diff] [blame] | 26 | project "VulkanSample"
|
| 27 | kind "ConsoleApp"
|
| 28 | language "C++"
|
| 29 | location "../build"
|
| 30 | filename ("VulkanSample_" .. _SUFFIX)
|
| 31 | targetdir "../bin"
|
| 32 | objdir "../build/Desktop_%{_SUFFIX}/%{cfg.platform}/%{cfg.buildcfg}"
|
| 33 | floatingpoint "Fast"
|
| 34 | files { "../src/*.h", "../src/*.cpp" }
|
Adam Sawicki | e6e498f | 2017-06-16 17:21:31 +0200 | [diff] [blame] | 35 | flags { "NoPCH", "FatalWarnings" }
|
| 36 | characterset "Unicode"
|
Adam Sawicki | e6e498f | 2017-06-16 17:21:31 +0200 | [diff] [blame] | 37 |
|
| 38 | filter "configurations:Debug"
|
| 39 | defines { "_DEBUG", "DEBUG" }
|
| 40 | flags { }
|
| 41 | targetsuffix ("_Debug_" .. _SUFFIX)
|
Adam Sawicki | e6e498f | 2017-06-16 17:21:31 +0200 | [diff] [blame] | 42 |
|
| 43 | filter "configurations:Release"
|
| 44 | defines { "NDEBUG" }
|
| 45 | optimize "On"
|
| 46 | flags { "LinkTimeOptimization" }
|
| 47 | targetsuffix ("_Release_" .. _SUFFIX)
|
Adam Sawicki | 59a3e7e | 2017-08-21 15:47:30 +0200 | [diff] [blame] | 48 |
|
Adam Sawicki | bf00f13 | 2017-08-21 16:04:40 +0200 | [diff] [blame] | 49 | filter { "platforms:x64" }
|
Adam Sawicki | 59a3e7e | 2017-08-21 15:47:30 +0200 | [diff] [blame] | 50 | defines { "WIN32", "_CONSOLE", "PROFILE", "_WINDOWS", "_WIN32_WINNT=0x0601" }
|
| 51 | links { "vulkan-1" }
|
| 52 |
|
| 53 | filter { "platforms:Linux-x64" }
|
Adam Sawicki | 59a3e7e | 2017-08-21 15:47:30 +0200 | [diff] [blame] | 54 | links { "vulkan" }
|
| 55 |
|
Adam Sawicki | bf00f13 | 2017-08-21 16:04:40 +0200 | [diff] [blame] | 56 | filter { "configurations:Debug", "platforms:x64" }
|
Adam Sawicki | 59a3e7e | 2017-08-21 15:47:30 +0200 | [diff] [blame] | 57 | buildoptions { "/MDd" }
|
| 58 |
|
| 59 | filter { "configurations:Release", "platforms:Windows-x64" }
|
Adam Sawicki | e6e498f | 2017-06-16 17:21:31 +0200 | [diff] [blame] | 60 | buildoptions { "/MD" }
|
Adam Sawicki | 6d2e2e0 | 2018-08-07 13:44:20 +0200 | [diff] [blame] | 61 |
|
| 62 |
|
| 63 | project "VmaReplay"
|
Adam Sawicki | c7d1b58 | 2018-08-27 12:30:53 +0200 | [diff] [blame] | 64 | removeplatforms { "Linux-x64" }
|
Adam Sawicki | 6d2e2e0 | 2018-08-07 13:44:20 +0200 | [diff] [blame] | 65 | kind "ConsoleApp"
|
| 66 | language "C++"
|
| 67 | location "../build"
|
| 68 | filename ("VmaReplay_" .. _SUFFIX)
|
| 69 | targetdir "../bin"
|
| 70 | objdir "../build/Desktop_%{_SUFFIX}/%{cfg.platform}/%{cfg.buildcfg}"
|
| 71 | floatingpoint "Fast"
|
| 72 | files { "../src/VmaReplay/*.h", "../src/VmaReplay/*.cpp" }
|
| 73 | flags { "NoPCH", "FatalWarnings" }
|
| 74 | characterset "Default"
|
| 75 |
|
| 76 | filter "configurations:Debug"
|
| 77 | defines { "_DEBUG", "DEBUG" }
|
| 78 | flags { }
|
| 79 | targetsuffix ("_Debug_" .. _SUFFIX)
|
| 80 |
|
| 81 | filter "configurations:Release"
|
| 82 | defines { "NDEBUG" }
|
| 83 | optimize "On"
|
| 84 | flags { "LinkTimeOptimization" }
|
| 85 | targetsuffix ("_Release_" .. _SUFFIX)
|
| 86 |
|
| 87 | filter { "platforms:x64" }
|
| 88 | defines { "WIN32", "_CONSOLE", "PROFILE", "_WINDOWS", "_WIN32_WINNT=0x0601" }
|
| 89 | links { "vulkan-1" }
|
| 90 |
|
| 91 | filter { "platforms:Linux-x64" }
|
Adam Sawicki | 6d2e2e0 | 2018-08-07 13:44:20 +0200 | [diff] [blame] | 92 | links { "vulkan" }
|
| 93 |
|
| 94 | filter { "configurations:Debug", "platforms:x64" }
|
| 95 | buildoptions { "/MDd" }
|
| 96 |
|
| 97 | filter { "configurations:Release", "platforms:Windows-x64" }
|
| 98 | buildoptions { "/MD" }
|