summaryrefslogtreecommitdiff
path: root/Build/source/libs/libpng/libpng-src/tests/pngstest
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/libpng/libpng-src/tests/pngstest')
-rw-r--r--Build/source/libs/libpng/libpng-src/tests/pngstest52
1 files changed, 52 insertions, 0 deletions
diff --git a/Build/source/libs/libpng/libpng-src/tests/pngstest b/Build/source/libs/libpng/libpng-src/tests/pngstest
new file mode 100644
index 00000000000..255ed098f17
--- /dev/null
+++ b/Build/source/libs/libpng/libpng-src/tests/pngstest
@@ -0,0 +1,52 @@
+#!/bin/sh
+#
+# Usage:
+#
+# tests/pngstest gamma alpha
+#
+# Run ./pngstest on the PNG files in $srcdir/contrib/testpngs which have the
+# given gamma and opacity:
+#
+# gamma: one of; linear, 1.8, sRGB, none.
+# alpha: one of; opaque, tRNS, alpha, none. 'none' is equivalent to !alpha
+#
+# NOTE: the temporary files pngstest generates have the base name gamma-alpha to
+# avoid issues with make -j
+#
+gamma="$1"
+shift
+alpha="$1"
+shift
+exec ./pngstest --tmpfile "${gamma}-${alpha}-" --log ${1+"$@"} $(
+ for f in "${srcdir}/contrib/testpngs/"*.png
+ do
+ g=
+ case "$f" in
+ *-linear[.-]*)
+ test "$gamma" = "linear" && g="$f";;
+
+ *-sRGB[.-]*)
+ test "$gamma" = "sRGB" && g="$f";;
+
+ *-1.8[.-]*)
+ test "$gamma" = "1.8" && g="$f";;
+
+ *)
+ test "$gamma" = "none" && g="$f";;
+ esac
+
+ case "$g" in
+ "")
+ :;;
+
+ *-alpha[-.]*)
+ test "$alpha" = "alpha" && echo "$g";;
+
+ *-tRNS[-.]*)
+ test "$alpha" = "tRNS" -o "$alpha" = "none" && echo "$g";;
+
+ *)
+ test "$alpha" = "opaque" -o "$alpha" = "none" && echo "$g";;
+ esac
+ done
+)