From 10b12020a84a5dcd211b6625674eb2a4f46a0ccc Mon Sep 17 00:00:00 2001 From: Yuxuan Shui Date: Wed, 28 Jan 2026 11:35:12 +0000 Subject: [PATCH] clang-tools: don't include C++ include paths in $CPATH --- .../compilers/llvm/common/clang-tools/wrapper | 24 ++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/pkgs/development/compilers/llvm/common/clang-tools/wrapper b/pkgs/development/compilers/llvm/common/clang-tools/wrapper index fa74a18b3c9f..c4ec3ed764ca 100755 --- a/pkgs/development/compilers/llvm/common/clang-tools/wrapper +++ b/pkgs/development/compilers/llvm/common/clang-tools/wrapper @@ -1,6 +1,24 @@ #!/bin/sh buildcpath() { + local path after + while (( $# )); do + case $1 in + -isystem) + shift + path=$path${path:+':'}$1 + ;; + -idirafter) + shift + after=$after${after:+':'}$1 + ;; + esac + shift + done + echo $path${after:+':'}$after +} + +buildcpluspath() { local path after while (( $# )); do case $1 in @@ -32,9 +50,9 @@ if [ "$extendcpath" = true ]; then export CPATH=${CPATH}${CPATH:+':'}$(buildcpath ${NIX_CFLAGS_COMPILE} \ $(<@clang@/nix-support/libc-cflags)) - export CPLUS_INCLUDE_PATH=${CPLUS_INCLUDE_PATH}${CPLUS_INCLUDE_PATH:+':'}$(buildcpath ${NIX_CFLAGS_COMPILE} \ - $(<@clang@/nix-support/libcxx-cxxflags) \ - $(<@clang@/nix-support/libc-cflags)) + export CPLUS_INCLUDE_PATH=${CPLUS_INCLUDE_PATH}${CPLUS_INCLUDE_PATH:+':'}$(buildcpluspath ${NIX_CFLAGS_COMPILE} \ + $(<@clang@/nix-support/libcxx-cxxflags) \ + $(<@clang@/nix-support/libc-cflags)) fi @out@/bin/$(basename $0)-unwrapped "$@"