mirror of
https://git.code.sf.net/p/libpng/code.git
synced 2025-07-10 18:04:09 +02:00
Rename contrib/tools/chkfmt to contrib/tools/chkfmt.sh; refactor: * Increase the max line length for contrib/**/*.[ch] from 96 to 100. * Set the max line length for ci_*.sh to 100. * Use `basename $0` instead of the hard-coded script name. * Update comments. Remove contrib/tools/reindent. For automated code formatting, including indentation, we need a robust solution. Add an empty line after the hashbang line in all scripts. Remove the "last changed" version info from comment headers. (The version control system maintains this information automatically.)
93 lines
2.3 KiB
Bash
Executable File
93 lines
2.3 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# Make a set of test PNG files, MAKEPNG is the name of the makepng executable
|
|
# built from contrib/libtests/makepng.c
|
|
|
|
# Copyright (c) 2015 John Cunningham Bowler
|
|
|
|
# This code is released under the libpng license.
|
|
# For conditions of distribution and use, see the disclaimer
|
|
# and license in png.h
|
|
|
|
# The arguments say whether to build all the files or whether just to build the
|
|
# ones that extend the code-coverage of libpng from the existing test files in
|
|
# contrib/pngsuite.
|
|
test -n "$MAKEPNG" || MAKEPNG=./makepng
|
|
opts=
|
|
|
|
mp(){
|
|
${MAKEPNG} $opts $1 "$3" "$4" "$3-$4$2.png"
|
|
}
|
|
|
|
mpg(){
|
|
if test "$1" = "none"
|
|
then
|
|
mp "" "" "$2" "$3"
|
|
else
|
|
mp "--$1" "-$1" "$2" "$3"
|
|
fi
|
|
}
|
|
|
|
mptrans(){
|
|
if test "$1" = "none"
|
|
then
|
|
mp "--tRNS" "-tRNS" "$2" "$3"
|
|
else
|
|
mp "--tRNS --$1" "-$1-tRNS" "$2" "$3"
|
|
fi
|
|
}
|
|
|
|
case "$1" in
|
|
--small)
|
|
opts="--small";;&
|
|
|
|
--all|--small)
|
|
for g in none sRGB linear 1.8
|
|
do
|
|
for c in gray palette
|
|
do
|
|
for b in 1 2 4
|
|
do
|
|
mpg "$g" "$c" "$b"
|
|
mptrans "$g" "$c" "$b"
|
|
done
|
|
done
|
|
|
|
mpg "$g" palette 8
|
|
mptrans "$g" palette 8
|
|
|
|
for b in 8 16
|
|
do
|
|
for c in gray gray-alpha rgb rgb-alpha
|
|
do
|
|
mpg "$g" "$c" "$b"
|
|
done
|
|
for c in gray rgb
|
|
do
|
|
mptrans "$g" "$c" "$b"
|
|
done
|
|
done
|
|
done;;
|
|
|
|
--coverage)
|
|
# Comments below indicate cases known to be required and not duplicated
|
|
# in other (required) cases; the aim is to get a minimal set that gives
|
|
# the maximum code coverage.
|
|
mpg none gray-alpha 8 # required: code coverage, sRGB opaque component
|
|
mpg none palette 8 # required: basic palette read
|
|
mpg 1.8 gray 2 # required: tests gamma threshold code
|
|
mpg 1.8 palette 2 # required: code coverage
|
|
mpg 1.8 palette 4 # required: code coverage
|
|
mpg 1.8 palette 8 # error limits only
|
|
mpg linear palette 8 # error limits only
|
|
mpg linear rgb-alpha 16 # error limits only
|
|
mpg sRGB palette 1 # required: code coverage
|
|
mpg sRGB rgb-alpha 16 # required: code coverage: pngread.c:2422 untested
|
|
:;;
|
|
|
|
*)
|
|
echo "$0 $1: unknown argument, usage:" >&2
|
|
echo " $0 [--all|--coverage|--small]" >&2
|
|
exit 1
|
|
esac
|