ci: centralize detection of ccache in link-werror wrapper
authorEric Engestrom <eric@igalia.com>
Fri, 17 Mar 2023 18:53:34 +0000 (18:53 +0000)
committerMarge Bot <emma+marge@anholt.net>
Wed, 22 Mar 2023 17:28:07 +0000 (17:28 +0000)
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21997>

.gitlab-ci/build/ccache-g++-link-werror.sh [deleted file]
.gitlab-ci/build/ccache-gcc-link-werror.sh [deleted file]
.gitlab-ci/build/g++-link-werror.sh
.gitlab-ci/build/gcc-link-werror.sh
.gitlab-ci/build/gitlab-ci.yml
.gitlab-ci/build/meson-native-lto-wrappers-ccache.txt [deleted file]

diff --git a/.gitlab-ci/build/ccache-g++-link-werror.sh b/.gitlab-ci/build/ccache-g++-link-werror.sh
deleted file mode 100755 (executable)
index 1264dec..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh -e
-
-if [ "$(ps -p $(ps -p $PPID -o ppid --no-headers) -o comm --no-headers)" != ninja ]; then
-    # Not invoked by ninja (e.g. for a meson feature check)
-    exec ccache g++ "$@"
-fi
-
-if [ "$(eval printf "'%s'" "\"\${$(($#-1))}\"")" = "-c" ]; then
-    # Not invoked for linking
-    exec ccache g++ "$@"
-fi
-
-# Compiler invoked by ninja for linking. Add -Werror to turn compiler warnings into errors
-# with LTO. (meson's werror should arguably do this, but meanwhile we need to)
-exec ccache g++ "$@" -Werror
diff --git a/.gitlab-ci/build/ccache-gcc-link-werror.sh b/.gitlab-ci/build/ccache-gcc-link-werror.sh
deleted file mode 100755 (executable)
index 136f0e7..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh -e
-
-if [ "$(ps -p $(ps -p $PPID -o ppid --no-headers) -o comm --no-headers)" != ninja ]; then
-    # Not invoked by ninja (e.g. for a meson feature check)
-    exec ccache gcc "$@"
-fi
-
-if [ "$(eval printf "'%s'" "\"\${$(($#-1))}\"")" = "-c" ]; then
-    # Not invoked for linking
-    exec ccache gcc "$@"
-fi
-
-# Compiler invoked by ninja for linking. Add -Werror to turn compiler warnings into errors
-# with LTO. (meson's werror should arguably do this, but meanwhile we need to)
-exec ccache gcc "$@" -Werror
index 5aa9f84..649549c 100755 (executable)
@@ -1,15 +1,21 @@
 #!/bin/sh -e
 
+if command -V ccache >/dev/null 2>/dev/null; then
+  CCACHE=ccache
+else
+  CCACHE=
+fi
+
 if [ "$(ps -p $(ps -p $PPID -o ppid --no-headers) -o comm --no-headers)" != ninja ]; then
     # Not invoked by ninja (e.g. for a meson feature check)
-    exec g++ "$@"
+    exec $CCACHE g++ "$@"
 fi
 
 if [ "$(eval printf "'%s'" "\"\${$(($#-1))}\"")" = "-c" ]; then
     # Not invoked for linking
-    exec g++ "$@"
+    exec $CCACHE g++ "$@"
 fi
 
 # Compiler invoked by ninja for linking. Add -Werror to turn compiler warnings into errors
 # with LTO. (meson's werror should arguably do this, but meanwhile we need to)
-exec g++ "$@" -Werror
+exec $CCACHE g++ "$@" -Werror
index aa92a41..3e8c69f 100755 (executable)
@@ -1,15 +1,21 @@
 #!/bin/sh -e
 
+if command -V ccache >/dev/null 2>/dev/null; then
+  CCACHE=ccache
+else
+  CCACHE=
+fi
+
 if [ "$(ps -p $(ps -p $PPID -o ppid --no-headers) -o comm --no-headers)" != ninja ]; then
     # Not invoked by ninja (e.g. for a meson feature check)
-    exec gcc "$@"
+    exec $CCACHE gcc "$@"
 fi
 
 if [ "$(eval printf "'%s'" "\"\${$(($#-1))}\"")" = "-c" ]; then
     # Not invoked for linking
-    exec gcc "$@"
+    exec $CCACHE gcc "$@"
 fi
 
 # Compiler invoked by ninja for linking. Add -Werror to turn compiler warnings into errors
 # with LTO. (meson's werror should arguably do this, but meanwhile we need to)
-exec gcc "$@" -Werror
+exec $CCACHE gcc "$@" -Werror
index 5f83cfd..0642bbf 100644 (file)
@@ -184,7 +184,7 @@ debian-build-testing:
     GALLIUM_DRIVERS: "iris,nouveau,kmsro,r300,r600,freedreno,swrast,svga,v3d,vc4,virgl,etnaviv,panfrost,lima,zink,d3d12,asahi,crocus"
     VULKAN_DRIVERS: swrast
     EXTRA_OPTION: >
-      --native-file .gitlab-ci/build/meson-native-lto-wrappers-ccache.txt
+      --native-file .gitlab-ci/build/meson-native-lto-wrappers.txt
       -D spirv-to-dxil=true
       -D osmesa=true
       -D tools=drm-shim,etnaviv,freedreno,glsl,intel,intel-ui,nir,nouveau,lima,panfrost,asahi
diff --git a/.gitlab-ci/build/meson-native-lto-wrappers-ccache.txt b/.gitlab-ci/build/meson-native-lto-wrappers-ccache.txt
deleted file mode 100644 (file)
index e17f64f..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-[binaries]
-c = 'ccache-gcc-link-werror.sh'
-cpp = 'ccache-g++-link-werror.sh'