blob: 059503e236812db35c20a3af861e4b8c3cd9b4fa (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
#!/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
# Last changed in libpng 1.6.20 [December 3, 2015]
# 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 maxium 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
|