about summary refs log tree commit diff
path: root/pkgs/build-support
diff options
context:
space:
mode:
authorBenjamin Hipple <bhipple@protonmail.com>2020-06-02 23:27:27 -0400
committerGitHub <noreply@github.com>2020-06-02 23:27:27 -0400
commit4af635feff9a2ad8d617611ad8cfd05def8ca604 (patch)
tree877650e8a881b4d222f06cc695aef405ce264665 /pkgs/build-support
parent33d5340769efd7a079cebb75a88aecd4b025e048 (diff)
parent127cdd0cab64405fff28d8668d3f416c979406d4 (diff)
downloadnixlib-4af635feff9a2ad8d617611ad8cfd05def8ca604.tar
nixlib-4af635feff9a2ad8d617611ad8cfd05def8ca604.tar.gz
nixlib-4af635feff9a2ad8d617611ad8cfd05def8ca604.tar.bz2
nixlib-4af635feff9a2ad8d617611ad8cfd05def8ca604.tar.lz
nixlib-4af635feff9a2ad8d617611ad8cfd05def8ca604.tar.xz
nixlib-4af635feff9a2ad8d617611ad8cfd05def8ca604.tar.zst
nixlib-4af635feff9a2ad8d617611ad8cfd05def8ca604.zip
Merge pull request #87866 from danieldk/validate-pkgconfig-hook
validatePkgConfig: init
Diffstat (limited to 'pkgs/build-support')
-rw-r--r--pkgs/build-support/setup-hooks/validate-pkg-config.sh19
1 files changed, 19 insertions, 0 deletions
diff --git a/pkgs/build-support/setup-hooks/validate-pkg-config.sh b/pkgs/build-support/setup-hooks/validate-pkg-config.sh
new file mode 100644
index 000000000000..54fc9cc122ca
--- /dev/null
+++ b/pkgs/build-support/setup-hooks/validate-pkg-config.sh
@@ -0,0 +1,19 @@
+# This setup hook validates each pkgconfig file in each output.
+
+fixupOutputHooks+=(_validatePkgConfig)
+
+_validatePkgConfig() {
+    for pc in $(find "$prefix" -name '*.pc'); do
+        local bail=0
+
+        # Do not fail immediately. It's nice to see all errors when
+        # there are multiple pkgconfig files.
+        if ! pkg-config --validate "$pc"; then
+            bail=1
+        fi
+    done
+
+    if [ $bail -eq 1 ]; then
+        exit 1
+    fi
+}