From a37c97545f23eef90f833be634ef1f3db93af0ca Mon Sep 17 00:00:00 2001 From: Stephan Seitz Date: Thu, 9 Sep 2021 22:11:07 +0200 Subject: Allow compilation via makefile --- lua/nvim-treesitter/shell_command_selectors.lua | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'lua/nvim-treesitter/shell_command_selectors.lua') diff --git a/lua/nvim-treesitter/shell_command_selectors.lua b/lua/nvim-treesitter/shell_command_selectors.lua index ee784312..fb322e01 100644 --- a/lua/nvim-treesitter/shell_command_selectors.lua +++ b/lua/nvim-treesitter/shell_command_selectors.lua @@ -93,6 +93,30 @@ function M.select_compiler_args(repo, compiler) end end +function M.select_compile_command(repo, cc, compile_location) + if string.match(cc, "cl$") or string.match(cc, "cl.exe$") or not repo.use_makefile then + return { + cmd = cc, + info = "Compiling...", + err = "Error during compilation", + opts = { + args = vim.tbl_flatten(M.select_compiler_args(repo, cc)), + cwd = compile_location, + }, + } + else + return { + cmd = "make", + info = "Compiling...", + err = "Error during compilation", + opts = { + args = { "--makefile=" .. utils.join_path(utils.get_package_path(), "scripts", "compile_parsers.makefile"), "CC=" .. cc }, + cwd = compile_location, + }, + } + end +end + function M.select_install_rm_cmd(cache_folder, project_name) if fn.has "win32" == 1 then local dir = cache_folder .. "\\" .. project_name -- cgit v1.2.3