VirtualBox

source: vbox/trunk/src/libs/libpng-1.6.42/contrib/testpngs/makepngs.sh@ 103316

Last change on this file since 103316 was 103316, checked in by vboxsync, 12 months ago

libpng-1.6.42: Applied and adjusted our libpng changes to 1.6.42. bugref:8515

  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 2.3 KB
Line 
1#!/usr/bin/env bash
2
3# Make a set of test PNG files, MAKEPNG is the name of the makepng executable
4# built from contrib/libtests/makepng.c
5
6# Copyright (c) 2015 John Cunningham Bowler
7
8# This code is released under the libpng license.
9# For conditions of distribution and use, see the disclaimer
10# and license in png.h
11
12# The arguments say whether to build all the files or whether just to build the
13# ones that extend the code-coverage of libpng from the existing test files in
14# contrib/pngsuite.
15test -n "$MAKEPNG" || MAKEPNG=./makepng
16opts=
17
18mp(){
19 ${MAKEPNG} $opts $1 "$3" "$4" "$3-$4$2.png"
20}
21
22mpg(){
23 if test "$1" = "none"
24 then
25 mp "" "" "$2" "$3"
26 else
27 mp "--$1" "-$1" "$2" "$3"
28 fi
29}
30
31mptrans(){
32 if test "$1" = "none"
33 then
34 mp "--tRNS" "-tRNS" "$2" "$3"
35 else
36 mp "--tRNS --$1" "-$1-tRNS" "$2" "$3"
37 fi
38}
39
40case "$1" in
41 --small)
42 opts="--small";;&
43
44 --all|--small)
45 for g in none sRGB linear 1.8
46 do
47 for c in gray palette
48 do
49 for b in 1 2 4
50 do
51 mpg "$g" "$c" "$b"
52 mptrans "$g" "$c" "$b"
53 done
54 done
55
56 mpg "$g" palette 8
57 mptrans "$g" palette 8
58
59 for b in 8 16
60 do
61 for c in gray gray-alpha rgb rgb-alpha
62 do
63 mpg "$g" "$c" "$b"
64 done
65 for c in gray rgb
66 do
67 mptrans "$g" "$c" "$b"
68 done
69 done
70 done;;
71
72 --coverage)
73 # Comments below indicate cases known to be required and not duplicated
74 # in other (required) cases; the aim is to get a minimal set that gives
75 # the maximum code coverage.
76 mpg none gray-alpha 8 # required: code coverage, sRGB opaque component
77 mpg none palette 8 # required: basic palette read
78 mpg 1.8 gray 2 # required: tests gamma threshold code
79 mpg 1.8 palette 2 # required: code coverage
80 mpg 1.8 palette 4 # required: code coverage
81 mpg 1.8 palette 8 # error limits only
82 mpg linear palette 8 # error limits only
83 mpg linear rgb-alpha 16 # error limits only
84 mpg sRGB palette 1 # required: code coverage
85 mpg sRGB rgb-alpha 16 # required: code coverage: pngread.c:2422 untested
86 :;;
87
88 *)
89 echo "$0 $1: unknown argument, usage:" >&2
90 echo " $0 [--all|--coverage|--small]" >&2
91 exit 1
92esac
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette