summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/genie/src/actions/cmake/_cmake.lua
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/genie/src/actions/cmake/_cmake.lua')
-rw-r--r--3rdparty/genie/src/actions/cmake/_cmake.lua31
1 files changed, 31 insertions, 0 deletions
diff --git a/3rdparty/genie/src/actions/cmake/_cmake.lua b/3rdparty/genie/src/actions/cmake/_cmake.lua
new file mode 100644
index 00000000000..cfae85ba39e
--- /dev/null
+++ b/3rdparty/genie/src/actions/cmake/_cmake.lua
@@ -0,0 +1,31 @@
+--
+-- _cmake.lua
+-- Define the CMake action(s).
+-- Copyright (c) 2015 Miodrag Milanovic
+--
+
+premake.cmake = { }
+
+newaction {
+ trigger = "cmake",
+ shortname = "CMake",
+ description = "Generate CMake project files",
+ valid_kinds = { "ConsoleApp", "WindowedApp", "StaticLib", "SharedLib" },
+ valid_languages = { "C", "C++" },
+ valid_tools = {
+ cc = { "gcc" },
+ },
+ onsolution = function(sln)
+ premake.generate(sln, "CMakeLists.txt", premake.cmake.workspace)
+ end,
+ onproject = function(prj)
+ premake.generate(prj, "%%/CMakeLists.txt", premake.cmake.project)
+ end,
+ oncleansolution = function(sln)
+ premake.clean.file(sln, "CMakeLists.txt")
+ end,
+ oncleanproject = function(prj)
+ premake.clean.file(prj, "%%/CMakeLists.txt")
+ end
+}
+