]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
coccinelle: search the system include path for header files as well
authorFrantisek Sumsal <frantisek@sumsal.cz>
Tue, 26 Dec 2023 17:44:21 +0000 (18:44 +0100)
committerFrantisek Sumsal <frantisek@sumsal.cz>
Wed, 27 Dec 2023 10:15:44 +0000 (11:15 +0100)
Since Coccinelle is originally a kernel tool, it doesn't search the
system include path by default for header files. Without this we're
missing a lot of types provides by stdlib (and other libraries we make
use of).

coccinelle/run-coccinelle.sh

index 360f9268e5a33149170a9bd7de2621d36db8fc38..9edfaa838385d2feccd4fbdc5b14ea54b03a3da1 100755 (executable)
@@ -66,7 +66,9 @@ for script in "${SCRIPTS[@]}"; do
     # at once one spatch process can take around 2.5 GiB of RAM, which can easily eat up all available RAM
     # when paired together with parallel
     #
-    # 2) Make sure spatch can find our includes via -I <dir>, similarly as we do when compiling stuff
+    # 2) Make sure spatch can find our includes via -I <dir>, similarly as we do when compiling stuff.
+    #    Also, include the system include path as well, since we're not kernel and we make use of the stdlib
+    #    (and other libraries).
     #
     # 3) Make sure to include includes from includes (--recursive-includes), but use them only to get type
     # definitions (--include-headers-for-types) - otherwise we'd start formating them as well, which might be
@@ -81,6 +83,7 @@ for script in "${SCRIPTS[@]}"; do
     parallel --halt now,fail=1 --keep-order --noswap --max-args=10 \
         spatch --cache-prefix "$CACHE_DIR" \
                -I src \
+               -I /usr/include \
                --recursive-includes \
                --include-headers-for-types \
                --undefined SD_BOOT \