diff --git a/pkgs/development/tools/build-managers/bear/ignore_wrapper.patch b/pkgs/development/tools/build-managers/bear/ignore_wrapper.patch index f70e3811f65..8effc723bba 100644 --- a/pkgs/development/tools/build-managers/bear/ignore_wrapper.patch +++ b/pkgs/development/tools/build-managers/bear/ignore_wrapper.patch @@ -1,6 +1,6 @@ ---- Bear-2.3.11-src/bear/main.py.in 1970-01-01 01:00:01.000000000 +0100 -+++ Bear-2.3.11-src-patch/bear/main.py.in 1970-01-01 01:00:01.000000000 +0100 -@@ -49,6 +49,7 @@ +--- a/bear/main.py.in ++++ b/bear/main.py.in +@@ -49,6 +49,7 @@ import tempfile import shutil import contextlib import logging @@ -8,16 +8,20 @@ # Map of ignored compiler option for the creation of a compilation database. # This map is used in _split_command method, which classifies the parameters -@@ -540,7 +541,11 @@ - any(pattern.match(cmd) for pattern in COMPILER_PATTERNS_CXX) +@@ -569,7 +570,15 @@ class Compilation: + (compiler, language, rest of the command) otherwise """ if command: # not empty list will allow to index '0' and '1:' - executable = os.path.basename(command[0]) # type: str -+ absolute_executable = os.path.realpath(find_executable(command[0])) -+ if 'wrapper' in absolute_executable: -+ return None -+ -+ executable = os.path.basename(absolute_executable) # type: str ++ executable_file = find_executable(command[0]) ++ if executable_file: ++ absolute_executable = os.path.realpath(executable_file) ++ # Ignore Nix wrappers. ++ if 'wrapper' in absolute_executable: ++ return None ++ executable = os.path.basename(absolute_executable) ++ else: ++ executable = os.path.basename(command[0]) parameters = command[1:] # type: List[str] # 'wrapper' 'parameters' and # 'wrapper' 'compiler' 'parameters' are valid. \ No newline at end of file