aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/nixpkgs/pkgs/build-support/setup-hooks/validate-pkg-config.sh
diff options
context:
space:
mode:
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/build-support/setup-hooks/validate-pkg-config.sh')
-rw-r--r--infra/libkookie/nixpkgs/pkgs/build-support/setup-hooks/validate-pkg-config.sh18
1 files changed, 18 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/build-support/setup-hooks/validate-pkg-config.sh b/infra/libkookie/nixpkgs/pkgs/build-support/setup-hooks/validate-pkg-config.sh
new file mode 100644
index 000000000000..ada1b56760d6
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/build-support/setup-hooks/validate-pkg-config.sh
@@ -0,0 +1,18 @@
+# This setup hook validates each pkgconfig file in each output.
+
+fixupOutputHooks+=(_validatePkgConfig)
+
+_validatePkgConfig() {
+ local bail=0
+ for pc in $(find "$prefix" -name '*.pc'); do
+ # 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
+}