Fix scan-build-py executable lookup path
authorserge-sans-paille <sguelton@redhat.com>
Mon, 13 Sep 2021 08:25:45 +0000 (10:25 +0200)
committerserge-sans-paille <sguelton@redhat.com>
Mon, 13 Sep 2021 09:01:47 +0000 (11:01 +0200)
Once installed, scan-build-py doesn't know anything about its auxiliary
executable and can't find them.
Use relative path wrt. scan-build-py script.

Differential Revision: https://reviews.llvm.org/D109659

clang/tools/scan-build-py/lib/libscanbuild/analyze.py

index 9a249a8..d83ff2a 100644 (file)
@@ -39,8 +39,10 @@ from libscanbuild.shell import decode
 
 __all__ = ['scan_build', 'analyze_build', 'analyze_compiler_wrapper']
 
-COMPILER_WRAPPER_CC = 'analyze-cc'
-COMPILER_WRAPPER_CXX = 'analyze-c++'
+scanbuild_dir = os.path.dirname(__import__('sys').argv[0])
+
+COMPILER_WRAPPER_CC = os.path.join(scanbuild_dir, '..', 'libexec', 'analyze-cc')
+COMPILER_WRAPPER_CXX = os.path.join(scanbuild_dir, '..', 'libexec', 'analyze-c++')
 
 CTU_EXTDEF_MAP_FILENAME = 'externalDefMap.txt'
 CTU_TEMP_DEFMAP_FOLDER = 'tmpExternalDefMaps'