mirror of
				https://github.com/vim/vim.git
				synced 2025-10-30 09:47:20 -04:00 
			
		
		
		
	runtime(compiler): check for compile_commands in build dirs for cppcheck
closes: #15889 Signed-off-by: Konfekt <Konfekt@users.noreply.github.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
		
				
					committed by
					
						 Christian Brabandt
						Christian Brabandt
					
				
			
			
				
	
			
			
			
						parent
						
							8fc2a097e2
						
					
				
				
					commit
					5e48e97e42
				
			| @@ -1,7 +1,7 @@ | ||||
| " vim compiler file | ||||
| " Compiler:	cppcheck (C++ static checker) | ||||
| " Maintainer:   Vincent B. (twinside@free.fr) | ||||
| " Last Change:  2024 Oct 4 by @Konfekt | ||||
| " Last Change:  2024 oct 17 by @Konfekt | ||||
|  | ||||
| if exists("cppcheck") | ||||
|   finish | ||||
| @@ -11,6 +11,8 @@ let current_compiler = "cppcheck" | ||||
| let s:cpo_save = &cpo | ||||
| set cpo-=C | ||||
|  | ||||
| let s:slash = has('win32')? '\' : '/' | ||||
|  | ||||
| if !exists('g:c_cppcheck_params') | ||||
|   let g:c_cppcheck_params = '--verbose --force --inline-suppr' | ||||
|         \ ..' '..'--enable=warning,style,performance,portability,information,missingInclude' | ||||
| @@ -20,11 +22,11 @@ endif | ||||
|  | ||||
| let &l:makeprg = 'cppcheck --quiet' | ||||
|       \ ..' --template="{file}:{line}:{column}: {severity}: [{id}] {message} {callstack}"' | ||||
|       \ ..' '..get(b:, 'c_cppcheck_params', | ||||
|       \            g:c_cppcheck_params..' '..(&filetype ==# 'cpp' ? ' --language=c++' : '')) | ||||
|       \ ..' '..get(b:, 'c_cppcheck_params', get(g:, 'c_cppcheck_params', (&filetype ==# 'cpp' ? ' --language=c++' : ''))) | ||||
|       \ ..' '..get(b:, 'c_cppcheck_includes', get(g:, 'c_cppcheck_includes', | ||||
|       \	          (filereadable('compile_commands.json') ? '--project=compile_commands.json' : | ||||
|       \	          (empty(&path) ? '' : '-I')..join(map(filter(split(&path, ','), 'isdirectory(v:val)'),'shellescape(v:val)'), ' -I')))) | ||||
|       \           (!empty(glob('*'..s:slash..'compile_commands.json', 1, 1)) ? '--project='..glob('*'..s:slash..'compile_commands.json', 1, 1)[0] : | ||||
|       \	          (empty(&path) ? '' : '-I')..join(map(filter(split(&path, ','), 'isdirectory(v:val)'),'shellescape(v:val)'), ' -I'))))) | ||||
| silent CompilerSet makeprg | ||||
|  | ||||
| CompilerSet errorformat= | ||||
|   | ||||
		Reference in New Issue
	
	Block a user