29 lines
828 B
Lua
29 lines
828 B
Lua
return {
|
|
name = 'CMake Build for nvim',
|
|
builder = function()
|
|
return {
|
|
cmd = { 'cmake' },
|
|
args = { '--build', '.', '--', '-j8' },
|
|
cwd = 'build_nvim',
|
|
-- components = {"on_output_parse", problem_matcher = "$gcc"}
|
|
-- components = {'on_output_quickfix', set_diagnostics = true, open = true}
|
|
components = {
|
|
{ 'on_output_quickfix', open = true, open_on_match = true },
|
|
{ 'on_output_parse', problem_matcher = '$gcc' },
|
|
'default',
|
|
},
|
|
}
|
|
end,
|
|
condition = {
|
|
callback = function(opts)
|
|
if vim.fn.executable('cmake') == 0 then
|
|
return false, 'Command "cmake" not found'
|
|
end
|
|
if vim.fn.findfile('CMakeLists.txt', opts.dir .. ';') == '' then
|
|
return false, 'No CMakeLists.txt found'
|
|
end
|
|
return true
|
|
end,
|
|
},
|
|
}
|