59 lines
1.3 KiB
Lua
59 lines
1.3 KiB
Lua
return {
|
|
name = "CMake Generate",
|
|
params = {
|
|
build_type = {
|
|
type = "enum",
|
|
choices = {
|
|
"Debug",
|
|
"Release",
|
|
"RelWithDebInfo",
|
|
"MinSizeRel"
|
|
},
|
|
default = "Debug"
|
|
},
|
|
generator = {
|
|
type = "enum",
|
|
choices = {
|
|
"Ninja",
|
|
"Unix Makefiles"
|
|
},
|
|
default = "Ninja"
|
|
},
|
|
compiler = {
|
|
type = "enum",
|
|
choices = {
|
|
"g++",
|
|
"clang++"
|
|
},
|
|
default = "g++"
|
|
}
|
|
},
|
|
builder = function(params)
|
|
return {
|
|
cmd = {
|
|
"cmake"
|
|
},
|
|
args = {
|
|
"-B",
|
|
"build",
|
|
"-S",
|
|
".",
|
|
"-DCMAKE_EXPORT_COMPILE_COMMANDS=ON",
|
|
"-DCMAKE_BUILD_TYPE=" .. params.build_type,
|
|
"-DCMAKE_CXX_COMPILER=" .. params.compiler,
|
|
"-G",
|
|
params.generator
|
|
},
|
|
components = {
|
|
"default"
|
|
}
|
|
}
|
|
end,
|
|
condition = {
|
|
filetype = {
|
|
"cmake",
|
|
"cpp"
|
|
}
|
|
}
|
|
}
|