summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gs/jpeg/Makefile.am6
-rw-r--r--gs/jpeg/Makefile.in661
-rw-r--r--gs/jpeg/README106
-rw-r--r--gs/jpeg/aclocal.m4780
-rw-r--r--gs/jpeg/ansi2knr.136
-rw-r--r--gs/jpeg/ansi2knr.c739
-rwxr-xr-xgs/jpeg/ar-lib270
-rw-r--r--gs/jpeg/change.log63
-rw-r--r--gs/jpeg/cjpeg.149
-rw-r--r--gs/jpeg/cjpeg.c29
-rwxr-xr-xgs/jpeg/compile347
-rwxr-xr-xgs/jpeg/config.guess206
-rwxr-xr-xgs/jpeg/config.sub130
-rwxr-xr-xgs/jpeg/configure15462
-rw-r--r--gs/jpeg/configure.ac19
-rwxr-xr-xgs/jpeg/depcomp487
-rw-r--r--gs/jpeg/djpeg.14
-rw-r--r--gs/jpeg/djpeg.c6
-rw-r--r--gs/jpeg/filelist.txt6
-rwxr-xr-xgs/jpeg/install-sh14
-rw-r--r--gs/jpeg/install.txt72
-rw-r--r--gs/jpeg/jcapistd.c3
-rw-r--r--gs/jpeg/jcarith.c61
-rw-r--r--gs/jpeg/jccolor.c214
-rw-r--r--gs/jpeg/jcdctmgr.c79
-rw-r--r--gs/jpeg/jchuff.c119
-rw-r--r--gs/jpeg/jcinit.c19
-rw-r--r--gs/jpeg/jcmainct.c110
-rw-r--r--gs/jpeg/jcmarker.c69
-rw-r--r--gs/jpeg/jcmaster.c36
-rw-r--r--gs/jpeg/jconfig.cfg8
-rw-r--r--gs/jpeg/jconfig.txt9
-rw-r--r--gs/jpeg/jconfig.vc8
-rw-r--r--gs/jpeg/jcparam.c115
-rw-r--r--gs/jpeg/jctrans.c13
-rw-r--r--gs/jpeg/jdapimin.c43
-rw-r--r--gs/jpeg/jdapistd.c1
-rw-r--r--gs/jpeg/jdarith.c52
-rw-r--r--gs/jpeg/jdatadst.c3
-rw-r--r--gs/jpeg/jdcolor.c348
-rw-r--r--gs/jpeg/jddctmgr.c4
-rw-r--r--gs/jpeg/jdhuff.c69
-rw-r--r--gs/jpeg/jdinput.c11
-rw-r--r--gs/jpeg/jdmainct.c131
-rw-r--r--gs/jpeg/jdmarker.c199
-rw-r--r--gs/jpeg/jdmaster.c18
-rw-r--r--gs/jpeg/jdmerge.c17
-rw-r--r--gs/jpeg/jerror.c3
-rw-r--r--gs/jpeg/jerror.h4
-rw-r--r--gs/jpeg/jfdctint.c622
-rw-r--r--gs/jpeg/jidctint.c356
-rw-r--r--gs/jpeg/jmemmgr.c4
-rw-r--r--gs/jpeg/jmorecfg.h101
-rw-r--r--gs/jpeg/jpegint.h6
-rw-r--r--gs/jpeg/jpeglib.h54
-rw-r--r--gs/jpeg/jpegtran.116
-rw-r--r--gs/jpeg/jpegtran.c25
-rw-r--r--gs/jpeg/jversion.h6
-rw-r--r--gs/jpeg/libjpeg.map2
-rw-r--r--gs/jpeg/libjpeg.txt146
-rw-r--r--gs/jpeg/makefile.ansi6
-rw-r--r--gs/jpeg/makefile.bcc6
-rw-r--r--gs/jpeg/makefile.dj6
-rw-r--r--gs/jpeg/makefile.manx6
-rw-r--r--gs/jpeg/makefile.mc66
-rw-r--r--gs/jpeg/makefile.mms6
-rw-r--r--gs/jpeg/makefile.sas6
-rw-r--r--gs/jpeg/makefile.unix6
-rw-r--r--gs/jpeg/makefile.vc6
-rw-r--r--gs/jpeg/makefile.wat6
-rwxr-xr-xgs/jpeg/missing461
-rw-r--r--gs/jpeg/rdjpgcom.12
-rw-r--r--gs/jpeg/structure.txt33
-rw-r--r--gs/jpeg/testimg.bmpbin35050 -> 35050 bytes
-rw-r--r--gs/jpeg/testimg.ppm2
-rw-r--r--gs/jpeg/transupp.c232
-rw-r--r--gs/jpeg/transupp.h22
-rw-r--r--gs/jpeg/usage.txt64
78 files changed, 20065 insertions, 3407 deletions
diff --git a/gs/jpeg/Makefile.am b/gs/jpeg/Makefile.am
index 42cff57f7..86895a1e9 100644
--- a/gs/jpeg/Makefile.am
+++ b/gs/jpeg/Makefile.am
@@ -51,11 +51,11 @@ CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \
51 jconfig.vms 51 jconfig.vms
52 52
53# Support scripts for configure 53# Support scripts for configure
54CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp missing 54CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp \
55 missing ar-lib
55 56
56# Miscellaneous support files 57# Miscellaneous support files
57OTHERFILES= jconfig.txt ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm \ 58OTHERFILES= jconfig.txt ckconfig.c jmemdosa.asm libjpeg.map
58 libjpeg.map
59 59
60# Test support files 60# Test support files
61TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \ 61TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \
diff --git a/gs/jpeg/Makefile.in b/gs/jpeg/Makefile.in
index 5bda1fb60..5654c7857 100644
--- a/gs/jpeg/Makefile.in
+++ b/gs/jpeg/Makefile.in
@@ -1,9 +1,8 @@
1# Makefile.in generated by automake 1.11.2 from Makefile.am. 1# Makefile.in generated by automake 1.14.1 from Makefile.am.
2# @configure_input@ 2# @configure_input@
3 3
4# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 4# Copyright (C) 1994-2013 Free Software Foundation, Inc.
5# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software 5
6# Foundation, Inc.
7# This Makefile.in is free software; the Free Software Foundation 6# This Makefile.in is free software; the Free Software Foundation
8# gives unlimited permission to copy and/or distribute it, 7# gives unlimited permission to copy and/or distribute it,
9# with or without modifications, as long as this notice is preserved. 8# with or without modifications, as long as this notice is preserved.
@@ -24,6 +23,51 @@
24 23
25 24
26VPATH = @srcdir@ 25VPATH = @srcdir@
26am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
27am__make_running_with_option = \
28 case $${target_option-} in \
29 ?) ;; \
30 *) echo "am__make_running_with_option: internal error: invalid" \
31 "target option '$${target_option-}' specified" >&2; \
32 exit 1;; \
33 esac; \
34 has_opt=no; \
35 sane_makeflags=$$MAKEFLAGS; \
36 if $(am__is_gnu_make); then \
37 sane_makeflags=$$MFLAGS; \
38 else \
39 case $$MAKEFLAGS in \
40 *\\[\ \ ]*) \
41 bs=\\; \
42 sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
43 | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
44 esac; \
45 fi; \
46 skip_next=no; \
47 strip_trailopt () \
48 { \
49 flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
50 }; \
51 for flg in $$sane_makeflags; do \
52 test $$skip_next = yes && { skip_next=no; continue; }; \
53 case $$flg in \
54 *=*|--*) continue;; \
55 -*I) strip_trailopt 'I'; skip_next=yes;; \
56 -*I?*) strip_trailopt 'I';; \
57 -*O) strip_trailopt 'O'; skip_next=yes;; \
58 -*O?*) strip_trailopt 'O';; \
59 -*l) strip_trailopt 'l'; skip_next=yes;; \
60 -*l?*) strip_trailopt 'l';; \
61 -[dEDm]) skip_next=yes;; \
62 -[JT]) skip_next=yes;; \
63 esac; \
64 case $$flg in \
65 *$$target_option*) has_opt=yes; break;; \
66 esac; \
67 done; \
68 test $$has_opt = yes
69am__make_dryrun = (target_option=n; $(am__make_running_with_option))
70am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
27pkgdatadir = $(datadir)/@PACKAGE@ 71pkgdatadir = $(datadir)/@PACKAGE@
28pkgincludedir = $(includedir)/@PACKAGE@ 72pkgincludedir = $(includedir)/@PACKAGE@
29pkglibdir = $(libdir)/@PACKAGE@ 73pkglibdir = $(libdir)/@PACKAGE@
@@ -43,15 +87,14 @@ POST_UNINSTALL = :
43build_triplet = @build@ 87build_triplet = @build@
44host_triplet = @host@ 88host_triplet = @host@
45target_triplet = @target@ 89target_triplet = @target@
46ANSI2KNR = @ANSI2KNR@
47@HAVE_LD_VERSION_SCRIPT_TRUE@am__append_1 = -Wl,--version-script=$(srcdir)/libjpeg.map 90@HAVE_LD_VERSION_SCRIPT_TRUE@am__append_1 = -Wl,--version-script=$(srcdir)/libjpeg.map
48bin_PROGRAMS = cjpeg$(EXEEXT) djpeg$(EXEEXT) jpegtran$(EXEEXT) \ 91bin_PROGRAMS = cjpeg$(EXEEXT) djpeg$(EXEEXT) jpegtran$(EXEEXT) \
49 rdjpgcom$(EXEEXT) wrjpgcom$(EXEEXT) 92 rdjpgcom$(EXEEXT) wrjpgcom$(EXEEXT)
50subdir = . 93subdir = .
51DIST_COMMON = README $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ 94DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
52 $(top_srcdir)/configure $(am__configure_deps) \ 95 $(top_srcdir)/configure $(am__configure_deps) \
53 $(srcdir)/jconfig.cfg ansi2knr.c ansi2knr.1 depcomp \ 96 $(srcdir)/jconfig.cfg depcomp $(include_HEADERS) \
54 $(include_HEADERS) $(noinst_HEADERS) 97 $(noinst_HEADERS)
55ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 98ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
56am__aclocal_m4_deps = $(top_srcdir)/configure.ac 99am__aclocal_m4_deps = $(top_srcdir)/configure.ac
57am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ 100am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
@@ -93,47 +136,58 @@ am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" \
93 "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(includedir)" 136 "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(includedir)"
94LTLIBRARIES = $(lib_LTLIBRARIES) 137LTLIBRARIES = $(lib_LTLIBRARIES)
95libjpeg_la_LIBADD = 138libjpeg_la_LIBADD =
96am__objects_1 = jaricom$U.lo jcapimin$U.lo jcapistd$U.lo jcarith$U.lo \ 139am__objects_1 = jaricom.lo jcapimin.lo jcapistd.lo jcarith.lo \
97 jccoefct$U.lo jccolor$U.lo jcdctmgr$U.lo jchuff$U.lo \ 140 jccoefct.lo jccolor.lo jcdctmgr.lo jchuff.lo jcinit.lo \
98 jcinit$U.lo jcmainct$U.lo jcmarker$U.lo jcmaster$U.lo \ 141 jcmainct.lo jcmarker.lo jcmaster.lo jcomapi.lo jcparam.lo \
99 jcomapi$U.lo jcparam$U.lo jcprepct$U.lo jcsample$U.lo \ 142 jcprepct.lo jcsample.lo jctrans.lo jdapimin.lo jdapistd.lo \
100 jctrans$U.lo jdapimin$U.lo jdapistd$U.lo jdarith$U.lo \ 143 jdarith.lo jdatadst.lo jdatasrc.lo jdcoefct.lo jdcolor.lo \
101 jdatadst$U.lo jdatasrc$U.lo jdcoefct$U.lo jdcolor$U.lo \ 144 jddctmgr.lo jdhuff.lo jdinput.lo jdmainct.lo jdmarker.lo \
102 jddctmgr$U.lo jdhuff$U.lo jdinput$U.lo jdmainct$U.lo \ 145 jdmaster.lo jdmerge.lo jdpostct.lo jdsample.lo jdtrans.lo \
103 jdmarker$U.lo jdmaster$U.lo jdmerge$U.lo jdpostct$U.lo \ 146 jerror.lo jfdctflt.lo jfdctfst.lo jfdctint.lo jidctflt.lo \
104 jdsample$U.lo jdtrans$U.lo jerror$U.lo jfdctflt$U.lo \ 147 jidctfst.lo jidctint.lo jquant1.lo jquant2.lo jutils.lo \
105 jfdctfst$U.lo jfdctint$U.lo jidctflt$U.lo jidctfst$U.lo \ 148 jmemmgr.lo @MEMORYMGR@.lo
106 jidctint$U.lo jquant1$U.lo jquant2$U.lo jutils$U.lo \
107 jmemmgr$U.lo @MEMORYMGR@$U.lo
108am_libjpeg_la_OBJECTS = $(am__objects_1) 149am_libjpeg_la_OBJECTS = $(am__objects_1)
109libjpeg_la_OBJECTS = $(am_libjpeg_la_OBJECTS) 150libjpeg_la_OBJECTS = $(am_libjpeg_la_OBJECTS)
110AM_V_lt = $(am__v_lt_$(V)) 151AM_V_lt = $(am__v_lt_@AM_V@)
111am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) 152am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
112am__v_lt_0 = --silent 153am__v_lt_0 = --silent
154am__v_lt_1 =
113libjpeg_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ 155libjpeg_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
114 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ 156 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
115 $(libjpeg_la_LDFLAGS) $(LDFLAGS) -o $@ 157 $(libjpeg_la_LDFLAGS) $(LDFLAGS) -o $@
116PROGRAMS = $(bin_PROGRAMS) 158PROGRAMS = $(bin_PROGRAMS)
117am_cjpeg_OBJECTS = cjpeg$U.$(OBJEXT) rdppm$U.$(OBJEXT) \ 159am_cjpeg_OBJECTS = cjpeg.$(OBJEXT) rdppm.$(OBJEXT) rdgif.$(OBJEXT) \
118 rdgif$U.$(OBJEXT) rdtarga$U.$(OBJEXT) rdrle$U.$(OBJEXT) \ 160 rdtarga.$(OBJEXT) rdrle.$(OBJEXT) rdbmp.$(OBJEXT) \
119 rdbmp$U.$(OBJEXT) rdswitch$U.$(OBJEXT) cdjpeg$U.$(OBJEXT) 161 rdswitch.$(OBJEXT) cdjpeg.$(OBJEXT)
120cjpeg_OBJECTS = $(am_cjpeg_OBJECTS) 162cjpeg_OBJECTS = $(am_cjpeg_OBJECTS)
121cjpeg_DEPENDENCIES = libjpeg.la 163cjpeg_DEPENDENCIES = libjpeg.la
122am_djpeg_OBJECTS = djpeg$U.$(OBJEXT) wrppm$U.$(OBJEXT) \ 164am_djpeg_OBJECTS = djpeg.$(OBJEXT) wrppm.$(OBJEXT) wrgif.$(OBJEXT) \
123 wrgif$U.$(OBJEXT) wrtarga$U.$(OBJEXT) wrrle$U.$(OBJEXT) \ 165 wrtarga.$(OBJEXT) wrrle.$(OBJEXT) wrbmp.$(OBJEXT) \
124 wrbmp$U.$(OBJEXT) rdcolmap$U.$(OBJEXT) cdjpeg$U.$(OBJEXT) 166 rdcolmap.$(OBJEXT) cdjpeg.$(OBJEXT)
125djpeg_OBJECTS = $(am_djpeg_OBJECTS) 167djpeg_OBJECTS = $(am_djpeg_OBJECTS)
126djpeg_DEPENDENCIES = libjpeg.la 168djpeg_DEPENDENCIES = libjpeg.la
127am_jpegtran_OBJECTS = jpegtran$U.$(OBJEXT) rdswitch$U.$(OBJEXT) \ 169am_jpegtran_OBJECTS = jpegtran.$(OBJEXT) rdswitch.$(OBJEXT) \
128 cdjpeg$U.$(OBJEXT) transupp$U.$(OBJEXT) 170 cdjpeg.$(OBJEXT) transupp.$(OBJEXT)
129jpegtran_OBJECTS = $(am_jpegtran_OBJECTS) 171jpegtran_OBJECTS = $(am_jpegtran_OBJECTS)
130jpegtran_DEPENDENCIES = libjpeg.la 172jpegtran_DEPENDENCIES = libjpeg.la
131am_rdjpgcom_OBJECTS = rdjpgcom$U.$(OBJEXT) 173am_rdjpgcom_OBJECTS = rdjpgcom.$(OBJEXT)
132rdjpgcom_OBJECTS = $(am_rdjpgcom_OBJECTS) 174rdjpgcom_OBJECTS = $(am_rdjpgcom_OBJECTS)
133rdjpgcom_LDADD = $(LDADD) 175rdjpgcom_LDADD = $(LDADD)
134am_wrjpgcom_OBJECTS = wrjpgcom$U.$(OBJEXT) 176am_wrjpgcom_OBJECTS = wrjpgcom.$(OBJEXT)
135wrjpgcom_OBJECTS = $(am_wrjpgcom_OBJECTS) 177wrjpgcom_OBJECTS = $(am_wrjpgcom_OBJECTS)
136wrjpgcom_LDADD = $(LDADD) 178wrjpgcom_LDADD = $(LDADD)
179AM_V_P = $(am__v_P_@AM_V@)
180am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
181am__v_P_0 = false
182am__v_P_1 = :
183AM_V_GEN = $(am__v_GEN_@AM_V@)
184am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
185am__v_GEN_0 = @echo " GEN " $@;
186am__v_GEN_1 =
187AM_V_at = $(am__v_at_@AM_V@)
188am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
189am__v_at_0 = @
190am__v_at_1 =
137DEFAULT_INCLUDES = -I.@am__isrc@ 191DEFAULT_INCLUDES = -I.@am__isrc@
138depcomp = $(SHELL) $(top_srcdir)/depcomp 192depcomp = $(SHELL) $(top_srcdir)/depcomp
139am__depfiles_maybe = depfiles 193am__depfiles_maybe = depfiles
@@ -144,30 +198,51 @@ LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
144 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ 198 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
145 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ 199 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
146 $(AM_CFLAGS) $(CFLAGS) 200 $(AM_CFLAGS) $(CFLAGS)
147AM_V_CC = $(am__v_CC_$(V)) 201AM_V_CC = $(am__v_CC_@AM_V@)
148am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) 202am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
149am__v_CC_0 = @echo " CC " $@; 203am__v_CC_0 = @echo " CC " $@;
150AM_V_at = $(am__v_at_$(V)) 204am__v_CC_1 =
151am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
152am__v_at_0 = @
153CCLD = $(CC) 205CCLD = $(CC)
154LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ 206LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
155 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ 207 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
156 $(AM_LDFLAGS) $(LDFLAGS) -o $@ 208 $(AM_LDFLAGS) $(LDFLAGS) -o $@
157AM_V_CCLD = $(am__v_CCLD_$(V)) 209AM_V_CCLD = $(am__v_CCLD_@AM_V@)
158am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) 210am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
159am__v_CCLD_0 = @echo " CCLD " $@; 211am__v_CCLD_0 = @echo " CCLD " $@;
160AM_V_GEN = $(am__v_GEN_$(V)) 212am__v_CCLD_1 =
161am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
162am__v_GEN_0 = @echo " GEN " $@;
163SOURCES = $(libjpeg_la_SOURCES) $(cjpeg_SOURCES) $(djpeg_SOURCES) \ 213SOURCES = $(libjpeg_la_SOURCES) $(cjpeg_SOURCES) $(djpeg_SOURCES) \
164 $(jpegtran_SOURCES) $(rdjpgcom_SOURCES) $(wrjpgcom_SOURCES) 214 $(jpegtran_SOURCES) $(rdjpgcom_SOURCES) $(wrjpgcom_SOURCES)
215am__can_run_installinfo = \
216 case $$AM_UPDATE_INFO_DIR in \
217 n|no|NO) false;; \
218 *) (install-info --version) >/dev/null 2>&1;; \
219 esac
165man1dir = $(mandir)/man1 220man1dir = $(mandir)/man1
166NROFF = nroff 221NROFF = nroff
167MANS = $(man_MANS) 222MANS = $(man_MANS)
168HEADERS = $(include_HEADERS) $(noinst_HEADERS) 223HEADERS = $(include_HEADERS) $(noinst_HEADERS)
224am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
225 $(LISP)jconfig.cfg
226# Read a list of newline-separated strings from the standard input,
227# and print each of them once, without duplicates. Input order is
228# *not* preserved.
229am__uniquify_input = $(AWK) '\
230 BEGIN { nonempty = 0; } \
231 { items[$$0] = 1; nonempty = 1; } \
232 END { if (nonempty) { for (i in items) print i; }; } \
233'
234# Make sure the list of sources is unique. This is necessary because,
235# e.g., the same source file might be shared among _SOURCES variables
236# for different programs/libraries.
237am__define_uniq_tagged_files = \
238 list='$(am__tagged_files)'; \
239 unique=`for i in $$list; do \
240 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
241 done | $(am__uniquify_input)`
169ETAGS = etags 242ETAGS = etags
170CTAGS = ctags 243CTAGS = ctags
244CSCOPE = cscope
245AM_RECURSIVE_TARGETS = cscope
171ACLOCAL = @ACLOCAL@ 246ACLOCAL = @ACLOCAL@
172AMTAR = @AMTAR@ 247AMTAR = @AMTAR@
173AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ 248AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
@@ -233,7 +308,6 @@ SED = @SED@
233SET_MAKE = @SET_MAKE@ 308SET_MAKE = @SET_MAKE@
234SHELL = @SHELL@ 309SHELL = @SHELL@
235STRIP = @STRIP@ 310STRIP = @STRIP@
236U = @U@
237VERSION = @VERSION@ 311VERSION = @VERSION@
238abs_builddir = @abs_builddir@ 312abs_builddir = @abs_builddir@
239abs_srcdir = @abs_srcdir@ 313abs_srcdir = @abs_srcdir@
@@ -343,12 +417,12 @@ CONFIGFILES = jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \
343 417
344 418
345# Support scripts for configure 419# Support scripts for configure
346CONFIGUREFILES = config.guess config.sub install-sh ltmain.sh depcomp missing 420CONFIGUREFILES = config.guess config.sub install-sh ltmain.sh depcomp \
421 missing ar-lib
347 422
348# Miscellaneous support files
349OTHERFILES = jconfig.txt ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm \
350 libjpeg.map
351 423
424# Miscellaneous support files
425OTHERFILES = jconfig.txt ckconfig.c jmemdosa.asm libjpeg.map
352 426
353# Test support files 427# Test support files
354TESTFILES = testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \ 428TESTFILES = testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \
@@ -438,8 +512,8 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
438$(am__aclocal_m4_deps): 512$(am__aclocal_m4_deps):
439 513
440jconfig.h: stamp-h1 514jconfig.h: stamp-h1
441 @if test ! -f $@; then rm -f stamp-h1; else :; fi 515 @test -f $@ || rm -f stamp-h1
442 @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi 516 @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
443 517
444stamp-h1: $(srcdir)/jconfig.cfg $(top_builddir)/config.status 518stamp-h1: $(srcdir)/jconfig.cfg $(top_builddir)/config.status
445 @rm -f stamp-h1 519 @rm -f stamp-h1
@@ -451,9 +525,9 @@ $(srcdir)/jconfig.cfg: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
451 525
452distclean-hdr: 526distclean-hdr:
453 -rm -f jconfig.h stamp-h1 527 -rm -f jconfig.h stamp-h1
528
454install-libLTLIBRARIES: $(lib_LTLIBRARIES) 529install-libLTLIBRARIES: $(lib_LTLIBRARIES)
455 @$(NORMAL_INSTALL) 530 @$(NORMAL_INSTALL)
456 test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
457 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ 531 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
458 list2=; for p in $$list; do \ 532 list2=; for p in $$list; do \
459 if test -f $$p; then \ 533 if test -f $$p; then \
@@ -461,6 +535,8 @@ install-libLTLIBRARIES: $(lib_LTLIBRARIES)
461 else :; fi; \ 535 else :; fi; \
462 done; \ 536 done; \
463 test -z "$$list2" || { \ 537 test -z "$$list2" || { \
538 echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \
539 $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \
464 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \ 540 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
465 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \ 541 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
466 } 542 }
@@ -476,24 +552,32 @@ uninstall-libLTLIBRARIES:
476 552
477clean-libLTLIBRARIES: 553clean-libLTLIBRARIES:
478 -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) 554 -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
479 @list='$(lib_LTLIBRARIES)'; for p in $$list; do \ 555 @list='$(lib_LTLIBRARIES)'; \
480 dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ 556 locs=`for p in $$list; do echo $$p; done | \
481 test "$$dir" != "$$p" || dir=.; \ 557 sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
482 echo "rm -f \"$${dir}/so_locations\""; \ 558 sort -u`; \
483 rm -f "$${dir}/so_locations"; \ 559 test -z "$$locs" || { \
484 done 560 echo rm -f $${locs}; \
485libjpeg.la: $(libjpeg_la_OBJECTS) $(libjpeg_la_DEPENDENCIES) 561 rm -f $${locs}; \
562 }
563
564libjpeg.la: $(libjpeg_la_OBJECTS) $(libjpeg_la_DEPENDENCIES) $(EXTRA_libjpeg_la_DEPENDENCIES)
486 $(AM_V_CCLD)$(libjpeg_la_LINK) -rpath $(libdir) $(libjpeg_la_OBJECTS) $(libjpeg_la_LIBADD) $(LIBS) 565 $(AM_V_CCLD)$(libjpeg_la_LINK) -rpath $(libdir) $(libjpeg_la_OBJECTS) $(libjpeg_la_LIBADD) $(LIBS)
487install-binPROGRAMS: $(bin_PROGRAMS) 566install-binPROGRAMS: $(bin_PROGRAMS)
488 @$(NORMAL_INSTALL) 567 @$(NORMAL_INSTALL)
489 test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
490 @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ 568 @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
569 if test -n "$$list"; then \
570 echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
571 $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
572 fi; \
491 for p in $$list; do echo "$$p $$p"; done | \ 573 for p in $$list; do echo "$$p $$p"; done | \
492 sed 's/$(EXEEXT)$$//' | \ 574 sed 's/$(EXEEXT)$$//' | \
493 while read p p1; do if test -f $$p || test -f $$p1; \ 575 while read p p1; do if test -f $$p \
494 then echo "$$p"; echo "$$p"; else :; fi; \ 576 || test -f $$p1 \
577 ; then echo "$$p"; echo "$$p"; else :; fi; \
495 done | \ 578 done | \
496 sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \ 579 sed -e 'p;s,.*/,,;n;h' \
580 -e 's|.*|.|' \
497 -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ 581 -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
498 sed 'N;N;N;s,\n, ,g' | \ 582 sed 'N;N;N;s,\n, ,g' | \
499 $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ 583 $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -514,7 +598,8 @@ uninstall-binPROGRAMS:
514 @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ 598 @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
515 files=`for p in $$list; do echo "$$p"; done | \ 599 files=`for p in $$list; do echo "$$p"; done | \
516 sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ 600 sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
517 -e 's/$$/$(EXEEXT)/' `; \ 601 -e 's/$$/$(EXEEXT)/' \
602 `; \
518 test -n "$$list" || exit 0; \ 603 test -n "$$list" || exit 0; \
519 echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ 604 echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
520 cd "$(DESTDIR)$(bindir)" && rm -f $$files 605 cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -527,19 +612,24 @@ clean-binPROGRAMS:
527 list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ 612 list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
528 echo " rm -f" $$list; \ 613 echo " rm -f" $$list; \
529 rm -f $$list 614 rm -f $$list
530cjpeg$(EXEEXT): $(cjpeg_OBJECTS) $(cjpeg_DEPENDENCIES) 615
616cjpeg$(EXEEXT): $(cjpeg_OBJECTS) $(cjpeg_DEPENDENCIES) $(EXTRA_cjpeg_DEPENDENCIES)
531 @rm -f cjpeg$(EXEEXT) 617 @rm -f cjpeg$(EXEEXT)
532 $(AM_V_CCLD)$(LINK) $(cjpeg_OBJECTS) $(cjpeg_LDADD) $(LIBS) 618 $(AM_V_CCLD)$(LINK) $(cjpeg_OBJECTS) $(cjpeg_LDADD) $(LIBS)
533djpeg$(EXEEXT): $(djpeg_OBJECTS) $(djpeg_DEPENDENCIES) 619
620djpeg$(EXEEXT): $(djpeg_OBJECTS) $(djpeg_DEPENDENCIES) $(EXTRA_djpeg_DEPENDENCIES)
534 @rm -f djpeg$(EXEEXT) 621 @rm -f djpeg$(EXEEXT)
535 $(AM_V_CCLD)$(LINK) $(djpeg_OBJECTS) $(djpeg_LDADD) $(LIBS) 622 $(AM_V_CCLD)$(LINK) $(djpeg_OBJECTS) $(djpeg_LDADD) $(LIBS)
536jpegtran$(EXEEXT): $(jpegtran_OBJECTS) $(jpegtran_DEPENDENCIES) 623
624jpegtran$(EXEEXT): $(jpegtran_OBJECTS) $(jpegtran_DEPENDENCIES) $(EXTRA_jpegtran_DEPENDENCIES)
537 @rm -f jpegtran$(EXEEXT) 625 @rm -f jpegtran$(EXEEXT)
538 $(AM_V_CCLD)$(LINK) $(jpegtran_OBJECTS) $(jpegtran_LDADD) $(LIBS) 626 $(AM_V_CCLD)$(LINK) $(jpegtran_OBJECTS) $(jpegtran_LDADD) $(LIBS)
539rdjpgcom$(EXEEXT): $(rdjpgcom_OBJECTS) $(rdjpgcom_DEPENDENCIES) 627
628rdjpgcom$(EXEEXT): $(rdjpgcom_OBJECTS) $(rdjpgcom_DEPENDENCIES) $(EXTRA_rdjpgcom_DEPENDENCIES)
540 @rm -f rdjpgcom$(EXEEXT) 629 @rm -f rdjpgcom$(EXEEXT)
541 $(AM_V_CCLD)$(LINK) $(rdjpgcom_OBJECTS) $(rdjpgcom_LDADD) $(LIBS) 630 $(AM_V_CCLD)$(LINK) $(rdjpgcom_OBJECTS) $(rdjpgcom_LDADD) $(LIBS)
542wrjpgcom$(EXEEXT): $(wrjpgcom_OBJECTS) $(wrjpgcom_DEPENDENCIES) 631
632wrjpgcom$(EXEEXT): $(wrjpgcom_OBJECTS) $(wrjpgcom_DEPENDENCIES) $(EXTRA_wrjpgcom_DEPENDENCIES)
543 @rm -f wrjpgcom$(EXEEXT) 633 @rm -f wrjpgcom$(EXEEXT)
544 $(AM_V_CCLD)$(LINK) $(wrjpgcom_OBJECTS) $(wrjpgcom_LDADD) $(LIBS) 634 $(AM_V_CCLD)$(LINK) $(wrjpgcom_OBJECTS) $(wrjpgcom_LDADD) $(LIBS)
545 635
@@ -548,95 +638,86 @@ mostlyclean-compile:
548 638
549distclean-compile: 639distclean-compile:
550 -rm -f *.tab.c 640 -rm -f *.tab.c
551./ansi2knr: ansi2knr.$(OBJEXT) 641
552 $(LINK) ansi2knr.$(OBJEXT) $(LIBS) 642@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/@MEMORYMGR@.Plo@am__quote@
553ansi2knr.$(OBJEXT): $(CONFIG_HEADER) 643@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cdjpeg.Po@am__quote@
554 644@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cjpeg.Po@am__quote@
555clean-krextra: 645@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/djpeg.Po@am__quote@
556 -rm -f ansi2knr 646@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jaricom.Plo@am__quote@
557 647@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcapimin.Plo@am__quote@
558mostlyclean-kr: 648@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcapistd.Plo@am__quote@
559 -test "$U" = "" || rm -f *_.c 649@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcarith.Plo@am__quote@
560 650@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jccoefct.Plo@am__quote@
561@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/@MEMORYMGR@$U.Plo@am__quote@ 651@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jccolor.Plo@am__quote@
562@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cdjpeg$U.Po@am__quote@ 652@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcdctmgr.Plo@am__quote@
563@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cjpeg$U.Po@am__quote@ 653@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jchuff.Plo@am__quote@
564@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/djpeg$U.Po@am__quote@ 654@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcinit.Plo@am__quote@
565@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jaricom$U.Plo@am__quote@ 655@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcmainct.Plo@am__quote@
566@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcapimin$U.Plo@am__quote@ 656@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcmarker.Plo@am__quote@
567@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcapistd$U.Plo@am__quote@ 657@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcmaster.Plo@am__quote@
568@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcarith$U.Plo@am__quote@ 658@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcomapi.Plo@am__quote@
569@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jccoefct$U.Plo@am__quote@ 659@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcparam.Plo@am__quote@
570@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jccolor$U.Plo@am__quote@ 660@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcprepct.Plo@am__quote@
571@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcdctmgr$U.Plo@am__quote@ 661@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcsample.Plo@am__quote@
572@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jchuff$U.Plo@am__quote@ 662@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jctrans.Plo@am__quote@
573@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcinit$U.Plo@am__quote@ 663@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdapimin.Plo@am__quote@
574@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcmainct$U.Plo@am__quote@ 664@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdapistd.Plo@am__quote@
575@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcmarker$U.Plo@am__quote@ 665@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdarith.Plo@am__quote@
576@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcmaster$U.Plo@am__quote@ 666@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdatadst.Plo@am__quote@
577@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcomapi$U.Plo@am__quote@ 667@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdatasrc.Plo@am__quote@
578@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcparam$U.Plo@am__quote@ 668@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdcoefct.Plo@am__quote@
579@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcprepct$U.Plo@am__quote@ 669@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdcolor.Plo@am__quote@
580@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jcsample$U.Plo@am__quote@ 670@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jddctmgr.Plo@am__quote@
581@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jctrans$U.Plo@am__quote@ 671@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdhuff.Plo@am__quote@
582@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdapimin$U.Plo@am__quote@ 672@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdinput.Plo@am__quote@
583@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdapistd$U.Plo@am__quote@ 673@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdmainct.Plo@am__quote@
584@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdarith$U.Plo@am__quote@ 674@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdmarker.Plo@am__quote@
585@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdatadst$U.Plo@am__quote@ 675@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdmaster.Plo@am__quote@
586@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdatasrc$U.Plo@am__quote@ 676@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdmerge.Plo@am__quote@
587@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdcoefct$U.Plo@am__quote@ 677@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdpostct.Plo@am__quote@
588@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdcolor$U.Plo@am__quote@ 678@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdsample.Plo@am__quote@
589@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jddctmgr$U.Plo@am__quote@ 679@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdtrans.Plo@am__quote@
590@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdhuff$U.Plo@am__quote@ 680@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jerror.Plo@am__quote@
591@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdinput$U.Plo@am__quote@ 681@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jfdctflt.Plo@am__quote@
592@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdmainct$U.Plo@am__quote@ 682@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jfdctfst.Plo@am__quote@
593@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdmarker$U.Plo@am__quote@ 683@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jfdctint.Plo@am__quote@
594@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdmaster$U.Plo@am__quote@ 684@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jidctflt.Plo@am__quote@
595@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdmerge$U.Plo@am__quote@ 685@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jidctfst.Plo@am__quote@
596@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdpostct$U.Plo@am__quote@ 686@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jidctint.Plo@am__quote@
597@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdsample$U.Plo@am__quote@ 687@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jmemmgr.Plo@am__quote@
598@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jdtrans$U.Plo@am__quote@ 688@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jpegtran.Po@am__quote@
599@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jerror$U.Plo@am__quote@ 689@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jquant1.Plo@am__quote@
600@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jfdctflt$U.Plo@am__quote@ 690@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jquant2.Plo@am__quote@
601@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jfdctfst$U.Plo@am__quote@ 691@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jutils.Plo@am__quote@
602@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jfdctint$U.Plo@am__quote@ 692@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdbmp.Po@am__quote@
603@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jidctflt$U.Plo@am__quote@ 693@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdcolmap.Po@am__quote@
604@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jidctfst$U.Plo@am__quote@ 694@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdgif.Po@am__quote@
605@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jidctint$U.Plo@am__quote@ 695@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdjpgcom.Po@am__quote@
606@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jmemmgr$U.Plo@am__quote@ 696@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdppm.Po@am__quote@
607@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jpegtran$U.Po@am__quote@ 697@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdrle.Po@am__quote@
608@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jquant1$U.Plo@am__quote@ 698@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdswitch.Po@am__quote@
609@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jquant2$U.Plo@am__quote@ 699@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdtarga.Po@am__quote@
610@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jutils$U.Plo@am__quote@ 700@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/transupp.Po@am__quote@
611@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdbmp$U.Po@am__quote@ 701@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wrbmp.Po@am__quote@
612@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdcolmap$U.Po@am__quote@ 702@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wrgif.Po@am__quote@
613@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdgif$U.Po@am__quote@ 703@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wrjpgcom.Po@am__quote@
614@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdjpgcom$U.Po@am__quote@ 704@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wrppm.Po@am__quote@
615@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdppm$U.Po@am__quote@ 705@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wrrle.Po@am__quote@
616@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdrle$U.Po@am__quote@ 706@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wrtarga.Po@am__quote@
617@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdswitch$U.Po@am__quote@
618@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rdtarga$U.Po@am__quote@
619@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/transupp$U.Po@am__quote@
620@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wrbmp$U.Po@am__quote@
621@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wrgif$U.Po@am__quote@
622@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wrjpgcom$U.Po@am__quote@
623@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wrppm$U.Po@am__quote@
624@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wrrle$U.Po@am__quote@
625@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wrtarga$U.Po@am__quote@
626 707
627.c.o: 708.c.o:
628@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< 709@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
629@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po 710@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
630@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ 711@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
631@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 712@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
632@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $< 713@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
633 714
634.c.obj: 715.c.obj:
635@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` 716@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
636@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po 717@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
637@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ 718@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
638@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 719@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
639@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'` 720@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
640 721
641.c.lo: 722.c.lo:
642@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< 723@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -644,169 +725,6 @@ mostlyclean-kr:
644@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ 725@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
645@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 726@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
646@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< 727@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
647@MEMORYMGR@_.c: @MEMORYMGR@.c $(ANSI2KNR)
648 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/@MEMORYMGR@.c; then echo $(srcdir)/@MEMORYMGR@.c; else echo @MEMORYMGR@.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
649cdjpeg_.c: cdjpeg.c $(ANSI2KNR)
650 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/cdjpeg.c; then echo $(srcdir)/cdjpeg.c; else echo cdjpeg.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
651cjpeg_.c: cjpeg.c $(ANSI2KNR)
652 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/cjpeg.c; then echo $(srcdir)/cjpeg.c; else echo cjpeg.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
653djpeg_.c: djpeg.c $(ANSI2KNR)
654 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/djpeg.c; then echo $(srcdir)/djpeg.c; else echo djpeg.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
655jaricom_.c: jaricom.c $(ANSI2KNR)
656 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jaricom.c; then echo $(srcdir)/jaricom.c; else echo jaricom.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
657jcapimin_.c: jcapimin.c $(ANSI2KNR)
658 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jcapimin.c; then echo $(srcdir)/jcapimin.c; else echo jcapimin.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
659jcapistd_.c: jcapistd.c $(ANSI2KNR)
660 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jcapistd.c; then echo $(srcdir)/jcapistd.c; else echo jcapistd.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
661jcarith_.c: jcarith.c $(ANSI2KNR)
662 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jcarith.c; then echo $(srcdir)/jcarith.c; else echo jcarith.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
663jccoefct_.c: jccoefct.c $(ANSI2KNR)
664 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jccoefct.c; then echo $(srcdir)/jccoefct.c; else echo jccoefct.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
665jccolor_.c: jccolor.c $(ANSI2KNR)
666 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jccolor.c; then echo $(srcdir)/jccolor.c; else echo jccolor.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
667jcdctmgr_.c: jcdctmgr.c $(ANSI2KNR)
668 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jcdctmgr.c; then echo $(srcdir)/jcdctmgr.c; else echo jcdctmgr.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
669jchuff_.c: jchuff.c $(ANSI2KNR)
670 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jchuff.c; then echo $(srcdir)/jchuff.c; else echo jchuff.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
671jcinit_.c: jcinit.c $(ANSI2KNR)
672 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jcinit.c; then echo $(srcdir)/jcinit.c; else echo jcinit.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
673jcmainct_.c: jcmainct.c $(ANSI2KNR)
674 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jcmainct.c; then echo $(srcdir)/jcmainct.c; else echo jcmainct.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
675jcmarker_.c: jcmarker.c $(ANSI2KNR)
676 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jcmarker.c; then echo $(srcdir)/jcmarker.c; else echo jcmarker.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
677jcmaster_.c: jcmaster.c $(ANSI2KNR)
678 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jcmaster.c; then echo $(srcdir)/jcmaster.c; else echo jcmaster.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
679jcomapi_.c: jcomapi.c $(ANSI2KNR)
680 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jcomapi.c; then echo $(srcdir)/jcomapi.c; else echo jcomapi.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
681jcparam_.c: jcparam.c $(ANSI2KNR)
682 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jcparam.c; then echo $(srcdir)/jcparam.c; else echo jcparam.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
683jcprepct_.c: jcprepct.c $(ANSI2KNR)
684 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jcprepct.c; then echo $(srcdir)/jcprepct.c; else echo jcprepct.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
685jcsample_.c: jcsample.c $(ANSI2KNR)
686 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jcsample.c; then echo $(srcdir)/jcsample.c; else echo jcsample.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
687jctrans_.c: jctrans.c $(ANSI2KNR)
688 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jctrans.c; then echo $(srcdir)/jctrans.c; else echo jctrans.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
689jdapimin_.c: jdapimin.c $(ANSI2KNR)
690 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdapimin.c; then echo $(srcdir)/jdapimin.c; else echo jdapimin.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
691jdapistd_.c: jdapistd.c $(ANSI2KNR)
692 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdapistd.c; then echo $(srcdir)/jdapistd.c; else echo jdapistd.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
693jdarith_.c: jdarith.c $(ANSI2KNR)
694 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdarith.c; then echo $(srcdir)/jdarith.c; else echo jdarith.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
695jdatadst_.c: jdatadst.c $(ANSI2KNR)
696 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdatadst.c; then echo $(srcdir)/jdatadst.c; else echo jdatadst.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
697jdatasrc_.c: jdatasrc.c $(ANSI2KNR)
698 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdatasrc.c; then echo $(srcdir)/jdatasrc.c; else echo jdatasrc.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
699jdcoefct_.c: jdcoefct.c $(ANSI2KNR)
700 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdcoefct.c; then echo $(srcdir)/jdcoefct.c; else echo jdcoefct.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
701jdcolor_.c: jdcolor.c $(ANSI2KNR)
702 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdcolor.c; then echo $(srcdir)/jdcolor.c; else echo jdcolor.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
703jddctmgr_.c: jddctmgr.c $(ANSI2KNR)
704 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jddctmgr.c; then echo $(srcdir)/jddctmgr.c; else echo jddctmgr.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
705jdhuff_.c: jdhuff.c $(ANSI2KNR)
706 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdhuff.c; then echo $(srcdir)/jdhuff.c; else echo jdhuff.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
707jdinput_.c: jdinput.c $(ANSI2KNR)
708 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdinput.c; then echo $(srcdir)/jdinput.c; else echo jdinput.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
709jdmainct_.c: jdmainct.c $(ANSI2KNR)
710 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdmainct.c; then echo $(srcdir)/jdmainct.c; else echo jdmainct.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
711jdmarker_.c: jdmarker.c $(ANSI2KNR)
712 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdmarker.c; then echo $(srcdir)/jdmarker.c; else echo jdmarker.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
713jdmaster_.c: jdmaster.c $(ANSI2KNR)
714 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdmaster.c; then echo $(srcdir)/jdmaster.c; else echo jdmaster.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
715jdmerge_.c: jdmerge.c $(ANSI2KNR)
716 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdmerge.c; then echo $(srcdir)/jdmerge.c; else echo jdmerge.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
717jdpostct_.c: jdpostct.c $(ANSI2KNR)
718 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdpostct.c; then echo $(srcdir)/jdpostct.c; else echo jdpostct.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
719jdsample_.c: jdsample.c $(ANSI2KNR)
720 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdsample.c; then echo $(srcdir)/jdsample.c; else echo jdsample.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
721jdtrans_.c: jdtrans.c $(ANSI2KNR)
722 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jdtrans.c; then echo $(srcdir)/jdtrans.c; else echo jdtrans.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
723jerror_.c: jerror.c $(ANSI2KNR)
724 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jerror.c; then echo $(srcdir)/jerror.c; else echo jerror.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
725jfdctflt_.c: jfdctflt.c $(ANSI2KNR)
726 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jfdctflt.c; then echo $(srcdir)/jfdctflt.c; else echo jfdctflt.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
727jfdctfst_.c: jfdctfst.c $(ANSI2KNR)
728 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jfdctfst.c; then echo $(srcdir)/jfdctfst.c; else echo jfdctfst.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
729jfdctint_.c: jfdctint.c $(ANSI2KNR)
730 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jfdctint.c; then echo $(srcdir)/jfdctint.c; else echo jfdctint.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
731jidctflt_.c: jidctflt.c $(ANSI2KNR)
732 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jidctflt.c; then echo $(srcdir)/jidctflt.c; else echo jidctflt.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
733jidctfst_.c: jidctfst.c $(ANSI2KNR)
734 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jidctfst.c; then echo $(srcdir)/jidctfst.c; else echo jidctfst.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
735jidctint_.c: jidctint.c $(ANSI2KNR)
736 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jidctint.c; then echo $(srcdir)/jidctint.c; else echo jidctint.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
737jmemmgr_.c: jmemmgr.c $(ANSI2KNR)
738 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jmemmgr.c; then echo $(srcdir)/jmemmgr.c; else echo jmemmgr.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
739jpegtran_.c: jpegtran.c $(ANSI2KNR)
740 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jpegtran.c; then echo $(srcdir)/jpegtran.c; else echo jpegtran.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
741jquant1_.c: jquant1.c $(ANSI2KNR)
742 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jquant1.c; then echo $(srcdir)/jquant1.c; else echo jquant1.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
743jquant2_.c: jquant2.c $(ANSI2KNR)
744 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jquant2.c; then echo $(srcdir)/jquant2.c; else echo jquant2.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
745jutils_.c: jutils.c $(ANSI2KNR)
746 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/jutils.c; then echo $(srcdir)/jutils.c; else echo jutils.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
747rdbmp_.c: rdbmp.c $(ANSI2KNR)
748 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/rdbmp.c; then echo $(srcdir)/rdbmp.c; else echo rdbmp.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
749rdcolmap_.c: rdcolmap.c $(ANSI2KNR)
750 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/rdcolmap.c; then echo $(srcdir)/rdcolmap.c; else echo rdcolmap.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
751rdgif_.c: rdgif.c $(ANSI2KNR)
752 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/rdgif.c; then echo $(srcdir)/rdgif.c; else echo rdgif.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
753rdjpgcom_.c: rdjpgcom.c $(ANSI2KNR)
754 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/rdjpgcom.c; then echo $(srcdir)/rdjpgcom.c; else echo rdjpgcom.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
755rdppm_.c: rdppm.c $(ANSI2KNR)
756 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/rdppm.c; then echo $(srcdir)/rdppm.c; else echo rdppm.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
757rdrle_.c: rdrle.c $(ANSI2KNR)
758 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/rdrle.c; then echo $(srcdir)/rdrle.c; else echo rdrle.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
759rdswitch_.c: rdswitch.c $(ANSI2KNR)
760 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/rdswitch.c; then echo $(srcdir)/rdswitch.c; else echo rdswitch.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
761rdtarga_.c: rdtarga.c $(ANSI2KNR)
762 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/rdtarga.c; then echo $(srcdir)/rdtarga.c; else echo rdtarga.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
763transupp_.c: transupp.c $(ANSI2KNR)
764 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/transupp.c; then echo $(srcdir)/transupp.c; else echo transupp.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
765wrbmp_.c: wrbmp.c $(ANSI2KNR)
766 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/wrbmp.c; then echo $(srcdir)/wrbmp.c; else echo wrbmp.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
767wrgif_.c: wrgif.c $(ANSI2KNR)
768 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/wrgif.c; then echo $(srcdir)/wrgif.c; else echo wrgif.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
769wrjpgcom_.c: wrjpgcom.c $(ANSI2KNR)
770 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/wrjpgcom.c; then echo $(srcdir)/wrjpgcom.c; else echo wrjpgcom.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
771wrppm_.c: wrppm.c $(ANSI2KNR)
772 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/wrppm.c; then echo $(srcdir)/wrppm.c; else echo wrppm.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
773wrrle_.c: wrrle.c $(ANSI2KNR)
774 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/wrrle.c; then echo $(srcdir)/wrrle.c; else echo wrrle.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
775wrtarga_.c: wrtarga.c $(ANSI2KNR)
776 $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/wrtarga.c; then echo $(srcdir)/wrtarga.c; else echo wrtarga.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@
777@MEMORYMGR@_.$(OBJEXT) @MEMORYMGR@_.lo cdjpeg_.$(OBJEXT) cdjpeg_.lo \
778cjpeg_.$(OBJEXT) cjpeg_.lo djpeg_.$(OBJEXT) djpeg_.lo \
779jaricom_.$(OBJEXT) jaricom_.lo jcapimin_.$(OBJEXT) jcapimin_.lo \
780jcapistd_.$(OBJEXT) jcapistd_.lo jcarith_.$(OBJEXT) jcarith_.lo \
781jccoefct_.$(OBJEXT) jccoefct_.lo jccolor_.$(OBJEXT) jccolor_.lo \
782jcdctmgr_.$(OBJEXT) jcdctmgr_.lo jchuff_.$(OBJEXT) jchuff_.lo \
783jcinit_.$(OBJEXT) jcinit_.lo jcmainct_.$(OBJEXT) jcmainct_.lo \
784jcmarker_.$(OBJEXT) jcmarker_.lo jcmaster_.$(OBJEXT) jcmaster_.lo \
785jcomapi_.$(OBJEXT) jcomapi_.lo jcparam_.$(OBJEXT) jcparam_.lo \
786jcprepct_.$(OBJEXT) jcprepct_.lo jcsample_.$(OBJEXT) jcsample_.lo \
787jctrans_.$(OBJEXT) jctrans_.lo jdapimin_.$(OBJEXT) jdapimin_.lo \
788jdapistd_.$(OBJEXT) jdapistd_.lo jdarith_.$(OBJEXT) jdarith_.lo \
789jdatadst_.$(OBJEXT) jdatadst_.lo jdatasrc_.$(OBJEXT) jdatasrc_.lo \
790jdcoefct_.$(OBJEXT) jdcoefct_.lo jdcolor_.$(OBJEXT) jdcolor_.lo \
791jddctmgr_.$(OBJEXT) jddctmgr_.lo jdhuff_.$(OBJEXT) jdhuff_.lo \
792jdinput_.$(OBJEXT) jdinput_.lo jdmainct_.$(OBJEXT) jdmainct_.lo \
793jdmarker_.$(OBJEXT) jdmarker_.lo jdmaster_.$(OBJEXT) jdmaster_.lo \
794jdmerge_.$(OBJEXT) jdmerge_.lo jdpostct_.$(OBJEXT) jdpostct_.lo \
795jdsample_.$(OBJEXT) jdsample_.lo jdtrans_.$(OBJEXT) jdtrans_.lo \
796jerror_.$(OBJEXT) jerror_.lo jfdctflt_.$(OBJEXT) jfdctflt_.lo \
797jfdctfst_.$(OBJEXT) jfdctfst_.lo jfdctint_.$(OBJEXT) jfdctint_.lo \
798jidctflt_.$(OBJEXT) jidctflt_.lo jidctfst_.$(OBJEXT) jidctfst_.lo \
799jidctint_.$(OBJEXT) jidctint_.lo jmemmgr_.$(OBJEXT) jmemmgr_.lo \
800jpegtran_.$(OBJEXT) jpegtran_.lo jquant1_.$(OBJEXT) jquant1_.lo \
801jquant2_.$(OBJEXT) jquant2_.lo jutils_.$(OBJEXT) jutils_.lo \
802rdbmp_.$(OBJEXT) rdbmp_.lo rdcolmap_.$(OBJEXT) rdcolmap_.lo \
803rdgif_.$(OBJEXT) rdgif_.lo rdjpgcom_.$(OBJEXT) rdjpgcom_.lo \
804rdppm_.$(OBJEXT) rdppm_.lo rdrle_.$(OBJEXT) rdrle_.lo \
805rdswitch_.$(OBJEXT) rdswitch_.lo rdtarga_.$(OBJEXT) rdtarga_.lo \
806transupp_.$(OBJEXT) transupp_.lo wrbmp_.$(OBJEXT) wrbmp_.lo \
807wrgif_.$(OBJEXT) wrgif_.lo wrjpgcom_.$(OBJEXT) wrjpgcom_.lo \
808wrppm_.$(OBJEXT) wrppm_.lo wrrle_.$(OBJEXT) wrrle_.lo \
809wrtarga_.$(OBJEXT) wrtarga_.lo : $(ANSI2KNR)
810 728
811mostlyclean-libtool: 729mostlyclean-libtool:
812 -rm -f *.lo 730 -rm -f *.lo
@@ -818,11 +736,18 @@ distclean-libtool:
818 -rm -f libtool config.lt 736 -rm -f libtool config.lt
819install-man1: $(man_MANS) 737install-man1: $(man_MANS)
820 @$(NORMAL_INSTALL) 738 @$(NORMAL_INSTALL)
821 test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)" 739 @list1=''; \
822 @list=''; test -n "$(man1dir)" || exit 0; \ 740 list2='$(man_MANS)'; \
823 { for i in $$list; do echo "$$i"; done; \ 741 test -n "$(man1dir)" \
824 l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ 742 && test -n "`echo $$list1$$list2`" \
825 sed -n '/\.1[a-z]*$$/p'; \ 743 || exit 0; \
744 echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
745 $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
746 { for i in $$list1; do echo "$$i"; done; \
747 if test -n "$$list2"; then \
748 for i in $$list2; do echo "$$i"; done \
749 | sed -n '/\.1[a-z]*$$/p'; \
750 fi; \
826 } | while read p; do \ 751 } | while read p; do \
827 if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ 752 if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
828 echo "$$d$$p"; echo "$$p"; \ 753 echo "$$d$$p"; echo "$$p"; \
@@ -854,8 +779,11 @@ uninstall-man1:
854 dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir) 779 dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
855install-includeHEADERS: $(include_HEADERS) 780install-includeHEADERS: $(include_HEADERS)
856 @$(NORMAL_INSTALL) 781 @$(NORMAL_INSTALL)
857 test -z "$(includedir)" || $(MKDIR_P) "$(DESTDIR)$(includedir)"
858 @list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \ 782 @list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
783 if test -n "$$list"; then \
784 echo " $(MKDIR_P) '$(DESTDIR)$(includedir)'"; \
785 $(MKDIR_P) "$(DESTDIR)$(includedir)" || exit 1; \
786 fi; \
859 for p in $$list; do \ 787 for p in $$list; do \
860 if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ 788 if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
861 echo "$$d$$p"; \ 789 echo "$$d$$p"; \
@@ -871,26 +799,15 @@ uninstall-includeHEADERS:
871 files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ 799 files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
872 dir='$(DESTDIR)$(includedir)'; $(am__uninstall_files_from_dir) 800 dir='$(DESTDIR)$(includedir)'; $(am__uninstall_files_from_dir)
873 801
874ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) 802ID: $(am__tagged_files)
875 list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ 803 $(am__define_uniq_tagged_files); mkid -fID $$unique
876 unique=`for i in $$list; do \ 804tags: tags-am
877 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ 805TAGS: tags
878 done | \ 806
879 $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ 807tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
880 END { if (nonempty) { for (i in files) print i; }; }'`; \
881 mkid -fID $$unique
882tags: TAGS
883
884TAGS: $(HEADERS) $(SOURCES) jconfig.cfg $(TAGS_DEPENDENCIES) \
885 $(TAGS_FILES) $(LISP)
886 set x; \ 808 set x; \
887 here=`pwd`; \ 809 here=`pwd`; \
888 list='$(SOURCES) $(HEADERS) jconfig.cfg $(LISP) $(TAGS_FILES)'; \ 810 $(am__define_uniq_tagged_files); \
889 unique=`for i in $$list; do \
890 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
891 done | \
892 $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
893 END { if (nonempty) { for (i in files) print i; }; }'`; \
894 shift; \ 811 shift; \
895 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ 812 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
896 test -n "$$unique" || unique=$$empty_fix; \ 813 test -n "$$unique" || unique=$$empty_fix; \
@@ -902,15 +819,11 @@ TAGS: $(HEADERS) $(SOURCES) jconfig.cfg $(TAGS_DEPENDENCIES) \
902 $$unique; \ 819 $$unique; \
903 fi; \ 820 fi; \
904 fi 821 fi
905ctags: CTAGS 822ctags: ctags-am
906CTAGS: $(HEADERS) $(SOURCES) jconfig.cfg $(TAGS_DEPENDENCIES) \ 823
907 $(TAGS_FILES) $(LISP) 824CTAGS: ctags
908 list='$(SOURCES) $(HEADERS) jconfig.cfg $(LISP) $(TAGS_FILES)'; \ 825ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
909 unique=`for i in $$list; do \ 826 $(am__define_uniq_tagged_files); \
910 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
911 done | \
912 $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
913 END { if (nonempty) { for (i in files) print i; }; }'`; \
914 test -z "$(CTAGS_ARGS)$$unique" \ 827 test -z "$(CTAGS_ARGS)$$unique" \
915 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ 828 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
916 $$unique 829 $$unique
@@ -919,14 +832,36 @@ GTAGS:
919 here=`$(am__cd) $(top_builddir) && pwd` \ 832 here=`$(am__cd) $(top_builddir) && pwd` \
920 && $(am__cd) $(top_srcdir) \ 833 && $(am__cd) $(top_srcdir) \
921 && gtags -i $(GTAGS_ARGS) "$$here" 834 && gtags -i $(GTAGS_ARGS) "$$here"
835cscope: cscope.files
836 test ! -s cscope.files \
837 || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
838clean-cscope:
839 -rm -f cscope.files
840cscope.files: clean-cscope cscopelist
841cscopelist: cscopelist-am
842
843cscopelist-am: $(am__tagged_files)
844 list='$(am__tagged_files)'; \
845 case "$(srcdir)" in \
846 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
847 *) sdir=$(subdir)/$(srcdir) ;; \
848 esac; \
849 for i in $$list; do \
850 if test -f "$$i"; then \
851 echo "$(subdir)/$$i"; \
852 else \
853 echo "$$sdir/$$i"; \
854 fi; \
855 done >> $(top_builddir)/cscope.files
922 856
923distclean-tags: 857distclean-tags:
924 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags 858 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
859 -rm -f cscope.out cscope.in.out cscope.po.out cscope.files
925check-am: all-am 860check-am: all-am
926 $(MAKE) $(AM_MAKEFLAGS) check-local 861 $(MAKE) $(AM_MAKEFLAGS) check-local
927check: check-am 862check: check-am
928all-am: Makefile $(ANSI2KNR) $(LTLIBRARIES) $(PROGRAMS) $(MANS) \ 863all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(MANS) $(HEADERS) \
929 $(HEADERS) jconfig.h 864 jconfig.h
930install-binPROGRAMS: install-libLTLIBRARIES 865install-binPROGRAMS: install-libLTLIBRARIES
931 866
932installdirs: 867installdirs:
@@ -966,8 +901,8 @@ maintainer-clean-generic:
966 @echo "it deletes files that may require special tools to rebuild." 901 @echo "it deletes files that may require special tools to rebuild."
967clean: clean-am 902clean: clean-am
968 903
969clean-am: clean-binPROGRAMS clean-generic clean-krextra \ 904clean-am: clean-binPROGRAMS clean-generic clean-libLTLIBRARIES \
970 clean-libLTLIBRARIES clean-libtool mostlyclean-am 905 clean-libtool mostlyclean-am
971 906
972distclean: distclean-am 907distclean: distclean-am
973 -rm -f $(am__CONFIG_DISTCLEAN_FILES) 908 -rm -f $(am__CONFIG_DISTCLEAN_FILES)
@@ -1025,7 +960,7 @@ maintainer-clean-am: distclean-am maintainer-clean-generic
1025 960
1026mostlyclean: mostlyclean-am 961mostlyclean: mostlyclean-am
1027 962
1028mostlyclean-am: mostlyclean-compile mostlyclean-generic mostlyclean-kr \ 963mostlyclean-am: mostlyclean-compile mostlyclean-generic \
1029 mostlyclean-libtool 964 mostlyclean-libtool
1030 965
1031pdf: pdf-am 966pdf: pdf-am
@@ -1043,22 +978,22 @@ uninstall-man: uninstall-man1
1043 978
1044.MAKE: all check-am install-am install-strip 979.MAKE: all check-am install-am install-strip
1045 980
1046.PHONY: CTAGS GTAGS all all-am am--refresh check check-am check-local \ 981.PHONY: CTAGS GTAGS TAGS all all-am am--refresh check check-am \
1047 clean clean-binPROGRAMS clean-generic clean-krextra \ 982 check-local clean clean-binPROGRAMS clean-cscope clean-generic \
1048 clean-libLTLIBRARIES clean-libtool ctags distclean \ 983 clean-libLTLIBRARIES clean-libtool cscope cscopelist-am ctags \
1049 distclean-compile distclean-generic distclean-hdr \ 984 ctags-am distclean distclean-compile distclean-generic \
1050 distclean-libtool distclean-tags dvi dvi-am html html-am info \ 985 distclean-hdr distclean-libtool distclean-tags dvi dvi-am html \
1051 info-am install install-am install-binPROGRAMS install-data \ 986 html-am info info-am install install-am install-binPROGRAMS \
1052 install-data-am install-data-local install-dvi install-dvi-am \ 987 install-data install-data-am install-data-local install-dvi \
1053 install-exec install-exec-am install-html install-html-am \ 988 install-dvi-am install-exec install-exec-am install-html \
1054 install-includeHEADERS install-info install-info-am \ 989 install-html-am install-includeHEADERS install-info \
1055 install-libLTLIBRARIES install-man install-man1 install-pdf \ 990 install-info-am install-libLTLIBRARIES install-man \
1056 install-pdf-am install-ps install-ps-am install-strip \ 991 install-man1 install-pdf install-pdf-am install-ps \
1057 installcheck installcheck-am installdirs maintainer-clean \ 992 install-ps-am install-strip installcheck installcheck-am \
1058 maintainer-clean-generic mostlyclean mostlyclean-compile \ 993 installdirs maintainer-clean maintainer-clean-generic \
1059 mostlyclean-generic mostlyclean-kr mostlyclean-libtool pdf \ 994 mostlyclean mostlyclean-compile mostlyclean-generic \
1060 pdf-am ps ps-am tags uninstall uninstall-am \ 995 mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
1061 uninstall-binPROGRAMS uninstall-includeHEADERS \ 996 uninstall-am uninstall-binPROGRAMS uninstall-includeHEADERS \
1062 uninstall-libLTLIBRARIES uninstall-local uninstall-man \ 997 uninstall-libLTLIBRARIES uninstall-local uninstall-man \
1063 uninstall-man1 998 uninstall-man1
1064 999
diff --git a/gs/jpeg/README b/gs/jpeg/README
index 0a23c1959..014ad3017 100644
--- a/gs/jpeg/README
+++ b/gs/jpeg/README
@@ -1,10 +1,10 @@
1The Independent JPEG Group's JPEG software 1The Independent JPEG Group's JPEG software
2========================================== 2==========================================
3 3
4README for release 8d of 15-Jan-2012 4README for release 9a of 19-Jan-2014
5==================================== 5====================================
6 6
7This distribution contains the eighth public release of the Independent JPEG 7This distribution contains the ninth public release of the Independent JPEG
8Group's free JPEG software. You are welcome to redistribute this software and 8Group's free JPEG software. You are welcome to redistribute this software and
9to use it for any purpose, subject to the conditions under LEGAL ISSUES, below. 9to use it for any purpose, subject to the conditions under LEGAL ISSUES, below.
10 10
@@ -14,7 +14,7 @@ Julian Minguillon, Luis Ortiz, George Phillips, Davide Rossi, Ge' Weijers,
14and other members of the Independent JPEG Group. 14and other members of the Independent JPEG Group.
15 15
16IJG is not affiliated with the ISO/IEC JTC1/SC29/WG1 standards committee 16IJG is not affiliated with the ISO/IEC JTC1/SC29/WG1 standards committee
17(also known as JPEG, together with ITU-T SG16). 17(previously known as JPEG, together with ITU-T SG16).
18 18
19 19
20DOCUMENTATION ROADMAP 20DOCUMENTATION ROADMAP
@@ -115,7 +115,7 @@ with respect to this software, its quality, accuracy, merchantability, or
115fitness for a particular purpose. This software is provided "AS IS", and you, 115fitness for a particular purpose. This software is provided "AS IS", and you,
116its user, assume the entire risk as to its quality and accuracy. 116its user, assume the entire risk as to its quality and accuracy.
117 117
118This software is copyright (C) 1991-2012, Thomas G. Lane, Guido Vollbeding. 118This software is copyright (C) 1991-2014, Thomas G. Lane, Guido Vollbeding.
119All Rights Reserved except as specified below. 119All Rights Reserved except as specified below.
120 120
121Permission is hereby granted to use, copy, modify, and distribute this 121Permission is hereby granted to use, copy, modify, and distribute this
@@ -146,15 +146,6 @@ commercial products, provided that all warranty or liability claims are
146assumed by the product vendor. 146assumed by the product vendor.
147 147
148 148
149ansi2knr.c is included in this distribution by permission of L. Peter Deutsch,
150sole proprietor of its copyright holder, Aladdin Enterprises of Menlo Park, CA.
151ansi2knr.c is NOT covered by the above copyright and conditions, but instead
152by the usual distribution terms of the Free Software Foundation; principally,
153that you must include source code if you redistribute it. (See the file
154ansi2knr.c for full details.) However, since ansi2knr.c is not needed as part
155of any program generated from the IJG code, this does not limit you more than
156the foregoing paragraphs do.
157
158The Unix configuration script "configure" was produced with GNU Autoconf. 149The Unix configuration script "configure" was produced with GNU Autoconf.
159It is copyright by the Free Software Foundation but is freely distributable. 150It is copyright by the Free Software Foundation but is freely distributable.
160The same holds for its supporting scripts (config.guess, config.sub, 151The same holds for its supporting scripts (config.guess, config.sub,
@@ -162,11 +153,11 @@ ltmain.sh). Another support script, install-sh, is copyright by X Consortium
162but is also freely distributable. 153but is also freely distributable.
163 154
164The IJG distribution formerly included code to read and write GIF files. 155The IJG distribution formerly included code to read and write GIF files.
165To avoid entanglement with the Unisys LZW patent, GIF reading support has 156To avoid entanglement with the Unisys LZW patent (now expired), GIF reading
166been removed altogether, and the GIF writer has been simplified to produce 157support has been removed altogether, and the GIF writer has been simplified
167"uncompressed GIFs". This technique does not use the LZW algorithm; the 158to produce "uncompressed GIFs". This technique does not use the LZW
168resulting GIF files are larger than usual, but are readable by all standard 159algorithm; the resulting GIF files are larger than usual, but are readable
169GIF decoders. 160by all standard GIF decoders.
170 161
171We are required to state that 162We are required to state that
172 "The Graphics Interchange Format(c) is the Copyright property of 163 "The Graphics Interchange Format(c) is the Copyright property of
@@ -222,12 +213,16 @@ Part 1: Requirements and guidelines" and has document numbers ISO/IEC IS
22210918-1, ITU-T T.81. Part 2 is titled "Digital Compression and Coding of 21310918-1, ITU-T T.81. Part 2 is titled "Digital Compression and Coding of
223Continuous-tone Still Images, Part 2: Compliance testing" and has document 214Continuous-tone Still Images, Part 2: Compliance testing" and has document
224numbers ISO/IEC IS 10918-2, ITU-T T.83. 215numbers ISO/IEC IS 10918-2, ITU-T T.83.
225IJG JPEG 8 introduces an implementation of the JPEG SmartScale extension 216IJG JPEG 8 introduced an implementation of the JPEG SmartScale extension
226which is specified in two documents: A contributed document at ITU and ISO 217which is specified in two documents: A contributed document at ITU and ISO
227with title "ITU-T JPEG-Plus Proposal for Extending ITU-T T.81 for Advanced 218with title "ITU-T JPEG-Plus Proposal for Extending ITU-T T.81 for Advanced
228Image Coding", April 2006, Geneva, Switzerland. The latest version of this 219Image Coding", April 2006, Geneva, Switzerland. The latest version of this
229document is Revision 3. And a contributed document ISO/IEC JTC1/SC29/WG1 N 220document is Revision 3. And a contributed document ISO/IEC JTC1/SC29/WG1 N
2305799 with title "Evolution of JPEG", June/July 2011, Berlin, Germany. 2215799 with title "Evolution of JPEG", June/July 2011, Berlin, Germany.
222IJG JPEG 9 introduces a reversible color transform for improved lossless
223compression which is described in a contributed document ISO/IEC JTC1/SC29/
224WG1 N 6080 with title "JPEG 9 Lossless Coding", June/July 2012, Paris,
225France.
231 226
232The JPEG standard does not specify all details of an interchangeable file 227The JPEG standard does not specify all details of an interchangeable file
233format. For the omitted details we follow the "JFIF" conventions, revision 228format. For the omitted details we follow the "JFIF" conventions, revision
@@ -257,8 +252,8 @@ ARCHIVE LOCATIONS
257The "official" archive site for this software is www.ijg.org. 252The "official" archive site for this software is www.ijg.org.
258The most recent released version can always be found there in 253The most recent released version can always be found there in
259directory "files". This particular version will be archived as 254directory "files". This particular version will be archived as
260http://www.ijg.org/files/jpegsrc.v8d.tar.gz, and in Windows-compatible 255http://www.ijg.org/files/jpegsrc.v9a.tar.gz, and in Windows-compatible
261"zip" archive format as http://www.ijg.org/files/jpegsr8d.zip. 256"zip" archive format as http://www.ijg.org/files/jpegsr9a.zip.
262 257
263The JPEG FAQ (Frequently Asked Questions) article is a source of some 258The JPEG FAQ (Frequently Asked Questions) article is a source of some
264general information about JPEG. 259general information about JPEG.
@@ -285,7 +280,7 @@ Thank to Thomas Wiegand and Gary Sullivan for inviting me to the
285Joint Video Team (MPEG & ITU) meeting in Geneva, Switzerland. 280Joint Video Team (MPEG & ITU) meeting in Geneva, Switzerland.
286 281
287Thank to Thomas Richter and Daniel Lee for inviting me to the 282Thank to Thomas Richter and Daniel Lee for inviting me to the
288ISO/IEC JTC1/SC29/WG1 (also known as JPEG, together with ITU-T SG16) 283ISO/IEC JTC1/SC29/WG1 (previously known as JPEG, together with ITU-T SG16)
289meeting in Berlin, Germany. 284meeting in Berlin, Germany.
290 285
291Thank to John Korejwa and Massimo Ballerini for inviting me to 286Thank to John Korejwa and Massimo Ballerini for inviting me to
@@ -311,10 +306,10 @@ design and development of this singular software package.
311FILE FORMAT WARS 306FILE FORMAT WARS
312================ 307================
313 308
314The ISO/IEC JTC1/SC29/WG1 standards committee (also known as JPEG, together 309The ISO/IEC JTC1/SC29/WG1 standards committee (previously known as JPEG,
315with ITU-T SG16) currently promotes different formats containing the name 310together with ITU-T SG16) currently promotes different formats containing
316"JPEG" which is misleading because these formats are incompatible with 311the name "JPEG" which is misleading because these formats are incompatible
317original DCT-based JPEG and are based on faulty technologies. 312with original DCT-based JPEG and are based on faulty technologies.
318IJG therefore does not and will not support such momentary mistakes 313IJG therefore does not and will not support such momentary mistakes
319(see REFERENCES). 314(see REFERENCES).
320There exist also distributions under the name "OpenJPEG" promoting such 315There exist also distributions under the name "OpenJPEG" promoting such
@@ -327,25 +322,60 @@ Don't use an incompatible file format!
327(In any case, our decoder will remain capable of reading existing JPEG 322(In any case, our decoder will remain capable of reading existing JPEG
328image files indefinitely.) 323image files indefinitely.)
329 324
330Furthermore, the ISO committee pretends to be "responsible for the popular 325The ISO committee pretends to be "responsible for the popular JPEG" in their
331JPEG" in their public reports which is not true because they don't respond to 326public reports which is not true because they don't respond to actual
332actual requirements for the maintenance of the original JPEG specification. 327requirements for the maintenance of the original JPEG specification.
333 328Furthermore, the ISO committee pretends to "ensure interoperability" with
334There are currently distributions in circulation containing the name 329their standards which is not true because their "standards" support only
335"libjpeg" which claim to be a "derivative" or "fork" of the original 330application-specific and proprietary use cases and contain mathematically
336libjpeg, but don't have the features and are incompatible with formats 331incorrect code.
337supported by actual IJG libjpeg distributions. Furthermore, they 332
338violate the license conditions as described under LEGAL ISSUES above. 333There are currently different distributions in circulation containing the
339We have no sympathy for the release of misleading and illegal 334name "libjpeg" which is misleading because they don't have the features and
335are incompatible with formats supported by actual IJG libjpeg distributions.
336One of those fakes is released by members of the ISO committee and just uses
337the name of libjpeg for misdirection of people, similar to the abuse of the
338name JPEG as described above, while having nothing in common with actual IJG
339libjpeg distributions and containing mathematically incorrect code.
340The other one claims to be a "derivative" or "fork" of the original libjpeg,
341but violates the license conditions as described under LEGAL ISSUES above
342and violates basic C programming properties.
343We have no sympathy for the release of misleading, incorrect and illegal
340distributions derived from obsolete code bases. 344distributions derived from obsolete code bases.
341Don't use an obsolete code base! 345Don't use an obsolete code base!
342 346
347According to the UCC (Uniform Commercial Code) law, IJG has the lawful and
348legal right to foreclose on certain standardization bodies and other
349institutions or corporations that knowingly perform substantial and
350systematic deceptive acts and practices, fraud, theft, and damaging of the
351value of the people of this planet without their knowing, willing and
352intentional consent.
353The titles, ownership, and rights of these institutions and all their assets
354are now duly secured and held in trust for the free people of this planet.
355People of the planet, on every country, may have a financial interest in
356the assets of these former principals, agents, and beneficiaries of the
357foreclosed institutions and corporations.
358IJG asserts what is: that each man, woman, and child has unalienable value
359and rights granted and deposited in them by the Creator and not any one of
360the people is subordinate to any artificial principality, corporate fiction
361or the special interest of another without their appropriate knowing,
362willing and intentional consent made by contract or accommodation agreement.
363IJG expresses that which already was.
364The people have already determined and demanded that public administration
365entities, national governments, and their supporting judicial systems must
366be fully transparent, accountable, and liable.
367IJG has secured the value for all concerned free people of the planet.
368
369A partial list of foreclosed institutions and corporations ("Hall of Shame")
370is currently prepared and will be published later.
371
343 372
344TO DO 373TO DO
345===== 374=====
346 375
347Version 8 is the first release of a new generation JPEG standard 376Version 9 is the second release of a new generation JPEG standard
348to overcome the limitations of the original JPEG specification. 377to overcome the limitations of the original JPEG specification,
378and is the first true source reference JPEG codec.
349More features are being prepared for coming releases... 379More features are being prepared for coming releases...
350 380
351Please send bug reports, offers of help, etc. to jpeg-info@jpegclub.org. 381Please send bug reports, offers of help, etc. to jpeg-info@jpegclub.org.
diff --git a/gs/jpeg/aclocal.m4 b/gs/jpeg/aclocal.m4
index 9b38b974a..9e947ab46 100644
--- a/gs/jpeg/aclocal.m4
+++ b/gs/jpeg/aclocal.m4
@@ -1,8 +1,7 @@
1# generated automatically by aclocal 1.11.2 -*- Autoconf -*- 1# generated automatically by aclocal 1.14.1 -*- Autoconf -*-
2
3# Copyright (C) 1996-2013 Free Software Foundation, Inc.
2 4
3# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
4# 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation,
5# Inc.
6# This file is free software; the Free Software Foundation 5# This file is free software; the Free Software Foundation
7# gives unlimited permission to copy and/or distribute it, 6# gives unlimited permission to copy and/or distribute it,
8# with or without modifications, as long as this notice is preserved. 7# with or without modifications, as long as this notice is preserved.
@@ -12,13 +11,14 @@
12# even the implied warranty of MERCHANTABILITY or FITNESS FOR A 11# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
13# PARTICULAR PURPOSE. 12# PARTICULAR PURPOSE.
14 13
14m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
15m4_ifndef([AC_AUTOCONF_VERSION], 15m4_ifndef([AC_AUTOCONF_VERSION],
16 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl 16 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
17m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],, 17m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
18[m4_warning([this file was generated for autoconf 2.68. 18[m4_warning([this file was generated for autoconf 2.69.
19You have another version of autoconf. It may work, but is not guaranteed to. 19You have another version of autoconf. It may work, but is not guaranteed to.
20If you have problems, you may need to regenerate the build system entirely. 20If you have problems, you may need to regenerate the build system entirely.
21To do so, use the procedure documented by the package, typically `autoreconf'.])]) 21To do so, use the procedure documented by the package, typically 'autoreconf'.])])
22 22
23# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- 23# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
24# 24#
@@ -8607,25 +8607,22 @@ m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
8607m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])]) 8607m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
8608m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])]) 8608m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
8609 8609
8610# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008, 2011 Free Software 8610# Copyright (C) 2002-2013 Free Software Foundation, Inc.
8611# Foundation, Inc.
8612# 8611#
8613# This file is free software; the Free Software Foundation 8612# This file is free software; the Free Software Foundation
8614# gives unlimited permission to copy and/or distribute it, 8613# gives unlimited permission to copy and/or distribute it,
8615# with or without modifications, as long as this notice is preserved. 8614# with or without modifications, as long as this notice is preserved.
8616 8615
8617# serial 1
8618
8619# AM_AUTOMAKE_VERSION(VERSION) 8616# AM_AUTOMAKE_VERSION(VERSION)
8620# ---------------------------- 8617# ----------------------------
8621# Automake X.Y traces this macro to ensure aclocal.m4 has been 8618# Automake X.Y traces this macro to ensure aclocal.m4 has been
8622# generated from the m4 files accompanying Automake X.Y. 8619# generated from the m4 files accompanying Automake X.Y.
8623# (This private macro should not be called outside this file.) 8620# (This private macro should not be called outside this file.)
8624AC_DEFUN([AM_AUTOMAKE_VERSION], 8621AC_DEFUN([AM_AUTOMAKE_VERSION],
8625[am__api_version='1.11' 8622[am__api_version='1.14'
8626dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to 8623dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
8627dnl require some minimum version. Point them to the right macro. 8624dnl require some minimum version. Point them to the right macro.
8628m4_if([$1], [1.11.2], [], 8625m4_if([$1], [1.14.1], [],
8629 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl 8626 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
8630]) 8627])
8631 8628
@@ -8641,24 +8638,82 @@ m4_define([_AM_AUTOCONF_VERSION], [])
8641# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. 8638# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
8642# This function is AC_REQUIREd by AM_INIT_AUTOMAKE. 8639# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
8643AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], 8640AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
8644[AM_AUTOMAKE_VERSION([1.11.2])dnl 8641[AM_AUTOMAKE_VERSION([1.14.1])dnl
8645m4_ifndef([AC_AUTOCONF_VERSION], 8642m4_ifndef([AC_AUTOCONF_VERSION],
8646 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl 8643 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
8647_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) 8644_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
8648 8645
8646# Copyright (C) 2011-2013 Free Software Foundation, Inc.
8647#
8648# This file is free software; the Free Software Foundation
8649# gives unlimited permission to copy and/or distribute it,
8650# with or without modifications, as long as this notice is preserved.
8651
8652# AM_PROG_AR([ACT-IF-FAIL])
8653# -------------------------
8654# Try to determine the archiver interface, and trigger the ar-lib wrapper
8655# if it is needed. If the detection of archiver interface fails, run
8656# ACT-IF-FAIL (default is to abort configure with a proper error message).
8657AC_DEFUN([AM_PROG_AR],
8658[AC_BEFORE([$0], [LT_INIT])dnl
8659AC_BEFORE([$0], [AC_PROG_LIBTOOL])dnl
8660AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
8661AC_REQUIRE_AUX_FILE([ar-lib])dnl
8662AC_CHECK_TOOLS([AR], [ar lib "link -lib"], [false])
8663: ${AR=ar}
8664
8665AC_CACHE_CHECK([the archiver ($AR) interface], [am_cv_ar_interface],
8666 [AC_LANG_PUSH([C])
8667 am_cv_ar_interface=ar
8668 AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int some_variable = 0;]])],
8669 [am_ar_try='$AR cru libconftest.a conftest.$ac_objext >&AS_MESSAGE_LOG_FD'
8670 AC_TRY_EVAL([am_ar_try])
8671 if test "$ac_status" -eq 0; then
8672 am_cv_ar_interface=ar
8673 else
8674 am_ar_try='$AR -NOLOGO -OUT:conftest.lib conftest.$ac_objext >&AS_MESSAGE_LOG_FD'
8675 AC_TRY_EVAL([am_ar_try])
8676 if test "$ac_status" -eq 0; then
8677 am_cv_ar_interface=lib
8678 else
8679 am_cv_ar_interface=unknown
8680 fi
8681 fi
8682 rm -f conftest.lib libconftest.a
8683 ])
8684 AC_LANG_POP([C])])
8685
8686case $am_cv_ar_interface in
8687ar)
8688 ;;
8689lib)
8690 # Microsoft lib, so override with the ar-lib wrapper script.
8691 # FIXME: It is wrong to rewrite AR.
8692 # But if we don't then we get into trouble of one sort or another.
8693 # A longer-term fix would be to have automake use am__AR in this case,
8694 # and then we could set am__AR="$am_aux_dir/ar-lib \$(AR)" or something
8695 # similar.
8696 AR="$am_aux_dir/ar-lib $AR"
8697 ;;
8698unknown)
8699 m4_default([$1],
8700 [AC_MSG_ERROR([could not determine $AR interface])])
8701 ;;
8702esac
8703AC_SUBST([AR])dnl
8704])
8705
8649# AM_AUX_DIR_EXPAND -*- Autoconf -*- 8706# AM_AUX_DIR_EXPAND -*- Autoconf -*-
8650 8707
8651# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc. 8708# Copyright (C) 2001-2013 Free Software Foundation, Inc.
8652# 8709#
8653# This file is free software; the Free Software Foundation 8710# This file is free software; the Free Software Foundation
8654# gives unlimited permission to copy and/or distribute it, 8711# gives unlimited permission to copy and/or distribute it,
8655# with or without modifications, as long as this notice is preserved. 8712# with or without modifications, as long as this notice is preserved.
8656 8713
8657# serial 1
8658
8659# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets 8714# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
8660# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to 8715# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to
8661# `$srcdir', `$srcdir/..', or `$srcdir/../..'. 8716# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
8662# 8717#
8663# Of course, Automake must honor this variable whenever it calls a 8718# Of course, Automake must honor this variable whenever it calls a
8664# tool from the auxiliary directory. The problem is that $srcdir (and 8719# tool from the auxiliary directory. The problem is that $srcdir (and
@@ -8677,7 +8732,7 @@ _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
8677# 8732#
8678# The reason of the latter failure is that $top_srcdir and $ac_aux_dir 8733# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
8679# are both prefixed by $srcdir. In an in-source build this is usually 8734# are both prefixed by $srcdir. In an in-source build this is usually
8680# harmless because $srcdir is `.', but things will broke when you 8735# harmless because $srcdir is '.', but things will broke when you
8681# start a VPATH build or use an absolute $srcdir. 8736# start a VPATH build or use an absolute $srcdir.
8682# 8737#
8683# So we could use something similar to $top_srcdir/$ac_aux_dir/missing, 8738# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
@@ -8703,22 +8758,19 @@ am_aux_dir=`cd $ac_aux_dir && pwd`
8703 8758
8704# AM_CONDITIONAL -*- Autoconf -*- 8759# AM_CONDITIONAL -*- Autoconf -*-
8705 8760
8706# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008 8761# Copyright (C) 1997-2013 Free Software Foundation, Inc.
8707# Free Software Foundation, Inc.
8708# 8762#
8709# This file is free software; the Free Software Foundation 8763# This file is free software; the Free Software Foundation
8710# gives unlimited permission to copy and/or distribute it, 8764# gives unlimited permission to copy and/or distribute it,
8711# with or without modifications, as long as this notice is preserved. 8765# with or without modifications, as long as this notice is preserved.
8712 8766
8713# serial 9
8714
8715# AM_CONDITIONAL(NAME, SHELL-CONDITION) 8767# AM_CONDITIONAL(NAME, SHELL-CONDITION)
8716# ------------------------------------- 8768# -------------------------------------
8717# Define a conditional. 8769# Define a conditional.
8718AC_DEFUN([AM_CONDITIONAL], 8770AC_DEFUN([AM_CONDITIONAL],
8719[AC_PREREQ(2.52)dnl 8771[AC_PREREQ([2.52])dnl
8720 ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], 8772 m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
8721 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl 8773 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
8722AC_SUBST([$1_TRUE])dnl 8774AC_SUBST([$1_TRUE])dnl
8723AC_SUBST([$1_FALSE])dnl 8775AC_SUBST([$1_FALSE])dnl
8724_AM_SUBST_NOTMAKE([$1_TRUE])dnl 8776_AM_SUBST_NOTMAKE([$1_TRUE])dnl
@@ -8737,16 +8789,14 @@ AC_CONFIG_COMMANDS_PRE(
8737Usually this means the macro was only invoked conditionally.]]) 8789Usually this means the macro was only invoked conditionally.]])
8738fi])]) 8790fi])])
8739 8791
8740# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009, 8792# Copyright (C) 1999-2013 Free Software Foundation, Inc.
8741# 2010, 2011 Free Software Foundation, Inc.
8742# 8793#
8743# This file is free software; the Free Software Foundation 8794# This file is free software; the Free Software Foundation
8744# gives unlimited permission to copy and/or distribute it, 8795# gives unlimited permission to copy and/or distribute it,
8745# with or without modifications, as long as this notice is preserved. 8796# with or without modifications, as long as this notice is preserved.
8746 8797
8747# serial 12
8748 8798
8749# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be 8799# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
8750# written in clear, in which case automake, when reading aclocal.m4, 8800# written in clear, in which case automake, when reading aclocal.m4,
8751# will think it sees a *use*, and therefore will trigger all it's 8801# will think it sees a *use*, and therefore will trigger all it's
8752# C support machinery. Also note that it means that autoscan, seeing 8802# C support machinery. Also note that it means that autoscan, seeing
@@ -8756,7 +8806,7 @@ fi])])
8756# _AM_DEPENDENCIES(NAME) 8806# _AM_DEPENDENCIES(NAME)
8757# ---------------------- 8807# ----------------------
8758# See how the compiler implements dependency checking. 8808# See how the compiler implements dependency checking.
8759# NAME is "CC", "CXX", "GCJ", or "OBJC". 8809# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
8760# We try a few techniques and use that to set a single cache variable. 8810# We try a few techniques and use that to set a single cache variable.
8761# 8811#
8762# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was 8812# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
@@ -8769,12 +8819,13 @@ AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
8769AC_REQUIRE([AM_MAKE_INCLUDE])dnl 8819AC_REQUIRE([AM_MAKE_INCLUDE])dnl
8770AC_REQUIRE([AM_DEP_TRACK])dnl 8820AC_REQUIRE([AM_DEP_TRACK])dnl
8771 8821
8772ifelse([$1], CC, [depcc="$CC" am_compiler_list=], 8822m4_if([$1], [CC], [depcc="$CC" am_compiler_list=],
8773 [$1], CXX, [depcc="$CXX" am_compiler_list=], 8823 [$1], [CXX], [depcc="$CXX" am_compiler_list=],
8774 [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], 8824 [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
8775 [$1], UPC, [depcc="$UPC" am_compiler_list=], 8825 [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
8776 [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], 8826 [$1], [UPC], [depcc="$UPC" am_compiler_list=],
8777 [depcc="$$1" am_compiler_list=]) 8827 [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
8828 [depcc="$$1" am_compiler_list=])
8778 8829
8779AC_CACHE_CHECK([dependency style of $depcc], 8830AC_CACHE_CHECK([dependency style of $depcc],
8780 [am_cv_$1_dependencies_compiler_type], 8831 [am_cv_$1_dependencies_compiler_type],
@@ -8782,8 +8833,8 @@ AC_CACHE_CHECK([dependency style of $depcc],
8782 # We make a subdir and do the tests there. Otherwise we can end up 8833 # We make a subdir and do the tests there. Otherwise we can end up
8783 # making bogus files that we don't know about and never remove. For 8834 # making bogus files that we don't know about and never remove. For
8784 # instance it was reported that on HP-UX the gcc test will end up 8835 # instance it was reported that on HP-UX the gcc test will end up
8785 # making a dummy file named `D' -- because `-MD' means `put the output 8836 # making a dummy file named 'D' -- because '-MD' means "put the output
8786 # in D'. 8837 # in D".
8787 rm -rf conftest.dir 8838 rm -rf conftest.dir
8788 mkdir conftest.dir 8839 mkdir conftest.dir
8789 # Copy depcomp to subdir because otherwise we won't find it if we're 8840 # Copy depcomp to subdir because otherwise we won't find it if we're
@@ -8823,16 +8874,16 @@ AC_CACHE_CHECK([dependency style of $depcc],
8823 : > sub/conftest.c 8874 : > sub/conftest.c
8824 for i in 1 2 3 4 5 6; do 8875 for i in 1 2 3 4 5 6; do
8825 echo '#include "conftst'$i'.h"' >> sub/conftest.c 8876 echo '#include "conftst'$i'.h"' >> sub/conftest.c
8826 # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with 8877 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
8827 # Solaris 8's {/usr,}/bin/sh. 8878 # Solaris 10 /bin/sh.
8828 touch sub/conftst$i.h 8879 echo '/* dummy */' > sub/conftst$i.h
8829 done 8880 done
8830 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf 8881 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
8831 8882
8832 # We check with `-c' and `-o' for the sake of the "dashmstdout" 8883 # We check with '-c' and '-o' for the sake of the "dashmstdout"
8833 # mode. It turns out that the SunPro C++ compiler does not properly 8884 # mode. It turns out that the SunPro C++ compiler does not properly
8834 # handle `-M -o', and we need to detect this. Also, some Intel 8885 # handle '-M -o', and we need to detect this. Also, some Intel
8835 # versions had trouble with output in subdirs 8886 # versions had trouble with output in subdirs.
8836 am__obj=sub/conftest.${OBJEXT-o} 8887 am__obj=sub/conftest.${OBJEXT-o}
8837 am__minus_obj="-o $am__obj" 8888 am__minus_obj="-o $am__obj"
8838 case $depmode in 8889 case $depmode in
@@ -8841,8 +8892,8 @@ AC_CACHE_CHECK([dependency style of $depcc],
8841 test "$am__universal" = false || continue 8892 test "$am__universal" = false || continue
8842 ;; 8893 ;;
8843 nosideeffect) 8894 nosideeffect)
8844 # after this tag, mechanisms are not by side-effect, so they'll 8895 # After this tag, mechanisms are not by side-effect, so they'll
8845 # only be used when explicitly requested 8896 # only be used when explicitly requested.
8846 if test "x$enable_dependency_tracking" = xyes; then 8897 if test "x$enable_dependency_tracking" = xyes; then
8847 continue 8898 continue
8848 else 8899 else
@@ -8850,7 +8901,7 @@ AC_CACHE_CHECK([dependency style of $depcc],
8850 fi 8901 fi
8851 ;; 8902 ;;
8852 msvc7 | msvc7msys | msvisualcpp | msvcmsys) 8903 msvc7 | msvc7msys | msvisualcpp | msvcmsys)
8853 # This compiler won't grok `-c -o', but also, the minuso test has 8904 # This compiler won't grok '-c -o', but also, the minuso test has
8854 # not run yet. These depmodes are late enough in the game, and 8905 # not run yet. These depmodes are late enough in the game, and
8855 # so weak that their functioning should not be impacted. 8906 # so weak that their functioning should not be impacted.
8856 am__obj=conftest.${OBJEXT-o} 8907 am__obj=conftest.${OBJEXT-o}
@@ -8898,7 +8949,7 @@ AM_CONDITIONAL([am__fastdep$1], [
8898# AM_SET_DEPDIR 8949# AM_SET_DEPDIR
8899# ------------- 8950# -------------
8900# Choose a directory name for dependency files. 8951# Choose a directory name for dependency files.
8901# This macro is AC_REQUIREd in _AM_DEPENDENCIES 8952# This macro is AC_REQUIREd in _AM_DEPENDENCIES.
8902AC_DEFUN([AM_SET_DEPDIR], 8953AC_DEFUN([AM_SET_DEPDIR],
8903[AC_REQUIRE([AM_SET_LEADING_DOT])dnl 8954[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
8904AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl 8955AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
@@ -8908,9 +8959,13 @@ AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
8908# AM_DEP_TRACK 8959# AM_DEP_TRACK
8909# ------------ 8960# ------------
8910AC_DEFUN([AM_DEP_TRACK], 8961AC_DEFUN([AM_DEP_TRACK],
8911[AC_ARG_ENABLE(dependency-tracking, 8962[AC_ARG_ENABLE([dependency-tracking], [dnl
8912[ --disable-dependency-tracking speeds up one-time build 8963AS_HELP_STRING(
8913 --enable-dependency-tracking do not reject slow dependency extractors]) 8964 [--enable-dependency-tracking],
8965 [do not reject slow dependency extractors])
8966AS_HELP_STRING(
8967 [--disable-dependency-tracking],
8968 [speeds up one-time build])])
8914if test "x$enable_dependency_tracking" != xno; then 8969if test "x$enable_dependency_tracking" != xno; then
8915 am_depcomp="$ac_aux_dir/depcomp" 8970 am_depcomp="$ac_aux_dir/depcomp"
8916 AMDEPBACKSLASH='\' 8971 AMDEPBACKSLASH='\'
@@ -8925,20 +8980,18 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
8925 8980
8926# Generate code to set up dependency tracking. -*- Autoconf -*- 8981# Generate code to set up dependency tracking. -*- Autoconf -*-
8927 8982
8928# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008 8983# Copyright (C) 1999-2013 Free Software Foundation, Inc.
8929# Free Software Foundation, Inc.
8930# 8984#
8931# This file is free software; the Free Software Foundation 8985# This file is free software; the Free Software Foundation
8932# gives unlimited permission to copy and/or distribute it, 8986# gives unlimited permission to copy and/or distribute it,
8933# with or without modifications, as long as this notice is preserved. 8987# with or without modifications, as long as this notice is preserved.
8934 8988
8935#serial 5
8936 8989
8937# _AM_OUTPUT_DEPENDENCY_COMMANDS 8990# _AM_OUTPUT_DEPENDENCY_COMMANDS
8938# ------------------------------ 8991# ------------------------------
8939AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], 8992AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
8940[{ 8993[{
8941 # Autoconf 2.62 quotes --file arguments for eval, but not when files 8994 # Older Autoconf quotes --file arguments for eval, but not when files
8942 # are listed without --file. Let's play safe and only enable the eval 8995 # are listed without --file. Let's play safe and only enable the eval
8943 # if we detect the quoting. 8996 # if we detect the quoting.
8944 case $CONFIG_FILES in 8997 case $CONFIG_FILES in
@@ -8951,7 +9004,7 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
8951 # Strip MF so we end up with the name of the file. 9004 # Strip MF so we end up with the name of the file.
8952 mf=`echo "$mf" | sed -e 's/:.*$//'` 9005 mf=`echo "$mf" | sed -e 's/:.*$//'`
8953 # Check whether this is an Automake generated Makefile or not. 9006 # Check whether this is an Automake generated Makefile or not.
8954 # We used to match only the files named `Makefile.in', but 9007 # We used to match only the files named 'Makefile.in', but
8955 # some people rename them; so instead we look at the file content. 9008 # some people rename them; so instead we look at the file content.
8956 # Grep'ing the first line is not enough: some people post-process 9009 # Grep'ing the first line is not enough: some people post-process
8957 # each Makefile.in and add a new line on top of each file to say so. 9010 # each Makefile.in and add a new line on top of each file to say so.
@@ -8963,21 +9016,19 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
8963 continue 9016 continue
8964 fi 9017 fi
8965 # Extract the definition of DEPDIR, am__include, and am__quote 9018 # Extract the definition of DEPDIR, am__include, and am__quote
8966 # from the Makefile without running `make'. 9019 # from the Makefile without running 'make'.
8967 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` 9020 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
8968 test -z "$DEPDIR" && continue 9021 test -z "$DEPDIR" && continue
8969 am__include=`sed -n 's/^am__include = //p' < "$mf"` 9022 am__include=`sed -n 's/^am__include = //p' < "$mf"`
8970 test -z "am__include" && continue 9023 test -z "$am__include" && continue
8971 am__quote=`sed -n 's/^am__quote = //p' < "$mf"` 9024 am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
8972 # When using ansi2knr, U may be empty or an underscore; expand it
8973 U=`sed -n 's/^U = //p' < "$mf"`
8974 # Find all dependency output files, they are included files with 9025 # Find all dependency output files, they are included files with
8975 # $(DEPDIR) in their names. We invoke sed twice because it is the 9026 # $(DEPDIR) in their names. We invoke sed twice because it is the
8976 # simplest approach to changing $(DEPDIR) to its actual value in the 9027 # simplest approach to changing $(DEPDIR) to its actual value in the
8977 # expansion. 9028 # expansion.
8978 for file in `sed -n " 9029 for file in `sed -n "
8979 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ 9030 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
8980 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do 9031 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
8981 # Make sure the directory exists. 9032 # Make sure the directory exists.
8982 test -f "$dirpart/$file" && continue 9033 test -f "$dirpart/$file" && continue
8983 fdir=`AS_DIRNAME(["$file"])` 9034 fdir=`AS_DIRNAME(["$file"])`
@@ -8995,7 +9046,7 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
8995# This macro should only be invoked once -- use via AC_REQUIRE. 9046# This macro should only be invoked once -- use via AC_REQUIRE.
8996# 9047#
8997# This code is only required when automatic dependency tracking 9048# This code is only required when automatic dependency tracking
8998# is enabled. FIXME. This creates each `.P' file that we will 9049# is enabled. FIXME. This creates each '.P' file that we will
8999# need in order to bootstrap the dependency handling code. 9050# need in order to bootstrap the dependency handling code.
9000AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], 9051AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
9001[AC_CONFIG_COMMANDS([depfiles], 9052[AC_CONFIG_COMMANDS([depfiles],
@@ -9005,18 +9056,21 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
9005 9056
9006# Do all the work for Automake. -*- Autoconf -*- 9057# Do all the work for Automake. -*- Autoconf -*-
9007 9058
9008# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 9059# Copyright (C) 1996-2013 Free Software Foundation, Inc.
9009# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
9010# 9060#
9011# This file is free software; the Free Software Foundation 9061# This file is free software; the Free Software Foundation
9012# gives unlimited permission to copy and/or distribute it, 9062# gives unlimited permission to copy and/or distribute it,
9013# with or without modifications, as long as this notice is preserved. 9063# with or without modifications, as long as this notice is preserved.
9014 9064
9015# serial 16
9016
9017# This macro actually does too much. Some checks are only needed if 9065# This macro actually does too much. Some checks are only needed if
9018# your package does certain things. But this isn't really a big deal. 9066# your package does certain things. But this isn't really a big deal.
9019 9067
9068dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
9069m4_define([AC_PROG_CC],
9070m4_defn([AC_PROG_CC])
9071[_AM_PROG_CC_C_O
9072])
9073
9020# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) 9074# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
9021# AM_INIT_AUTOMAKE([OPTIONS]) 9075# AM_INIT_AUTOMAKE([OPTIONS])
9022# ----------------------------------------------- 9076# -----------------------------------------------
@@ -9029,7 +9083,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
9029# arguments mandatory, and then we can depend on a new Autoconf 9083# arguments mandatory, and then we can depend on a new Autoconf
9030# release and drop the old call support. 9084# release and drop the old call support.
9031AC_DEFUN([AM_INIT_AUTOMAKE], 9085AC_DEFUN([AM_INIT_AUTOMAKE],
9032[AC_PREREQ([2.62])dnl 9086[AC_PREREQ([2.65])dnl
9033dnl Autoconf wants to disallow AM_ names. We explicitly allow 9087dnl Autoconf wants to disallow AM_ names. We explicitly allow
9034dnl the ones we care about. 9088dnl the ones we care about.
9035m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl 9089m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
@@ -9058,31 +9112,40 @@ AC_SUBST([CYGPATH_W])
9058# Define the identity of the package. 9112# Define the identity of the package.
9059dnl Distinguish between old-style and new-style calls. 9113dnl Distinguish between old-style and new-style calls.
9060m4_ifval([$2], 9114m4_ifval([$2],
9061[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl 9115[AC_DIAGNOSE([obsolete],
9116 [$0: two- and three-arguments forms are deprecated.])
9117m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
9062 AC_SUBST([PACKAGE], [$1])dnl 9118 AC_SUBST([PACKAGE], [$1])dnl
9063 AC_SUBST([VERSION], [$2])], 9119 AC_SUBST([VERSION], [$2])],
9064[_AM_SET_OPTIONS([$1])dnl 9120[_AM_SET_OPTIONS([$1])dnl
9065dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. 9121dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
9066m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,, 9122m4_if(
9123 m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
9124 [ok:ok],,
9067 [m4_fatal([AC_INIT should be called with package and version arguments])])dnl 9125 [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
9068 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl 9126 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
9069 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl 9127 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
9070 9128
9071_AM_IF_OPTION([no-define],, 9129_AM_IF_OPTION([no-define],,
9072[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) 9130[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
9073 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl 9131 AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
9074 9132
9075# Some tools Automake needs. 9133# Some tools Automake needs.
9076AC_REQUIRE([AM_SANITY_CHECK])dnl 9134AC_REQUIRE([AM_SANITY_CHECK])dnl
9077AC_REQUIRE([AC_ARG_PROGRAM])dnl 9135AC_REQUIRE([AC_ARG_PROGRAM])dnl
9078AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}) 9136AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
9079AM_MISSING_PROG(AUTOCONF, autoconf) 9137AM_MISSING_PROG([AUTOCONF], [autoconf])
9080AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) 9138AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
9081AM_MISSING_PROG(AUTOHEADER, autoheader) 9139AM_MISSING_PROG([AUTOHEADER], [autoheader])
9082AM_MISSING_PROG(MAKEINFO, makeinfo) 9140AM_MISSING_PROG([MAKEINFO], [makeinfo])
9083AC_REQUIRE([AM_PROG_INSTALL_SH])dnl 9141AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9084AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl 9142AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
9085AC_REQUIRE([AM_PROG_MKDIR_P])dnl 9143AC_REQUIRE([AC_PROG_MKDIR_P])dnl
9144# For better backward compatibility. To be removed once Automake 1.9.x
9145# dies out for good. For more background, see:
9146# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
9147# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
9148AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
9086# We need awk for the "check" target. The system "awk" is bad on 9149# We need awk for the "check" target. The system "awk" is bad on
9087# some platforms. 9150# some platforms.
9088AC_REQUIRE([AC_PROG_AWK])dnl 9151AC_REQUIRE([AC_PROG_AWK])dnl
@@ -9093,34 +9156,78 @@ _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
9093 [_AM_PROG_TAR([v7])])]) 9156 [_AM_PROG_TAR([v7])])])
9094_AM_IF_OPTION([no-dependencies],, 9157_AM_IF_OPTION([no-dependencies],,
9095[AC_PROVIDE_IFELSE([AC_PROG_CC], 9158[AC_PROVIDE_IFELSE([AC_PROG_CC],
9096 [_AM_DEPENDENCIES(CC)], 9159 [_AM_DEPENDENCIES([CC])],
9097 [define([AC_PROG_CC], 9160 [m4_define([AC_PROG_CC],
9098 defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl 9161 m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
9099AC_PROVIDE_IFELSE([AC_PROG_CXX], 9162AC_PROVIDE_IFELSE([AC_PROG_CXX],
9100 [_AM_DEPENDENCIES(CXX)], 9163 [_AM_DEPENDENCIES([CXX])],
9101 [define([AC_PROG_CXX], 9164 [m4_define([AC_PROG_CXX],
9102 defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl 9165 m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
9103AC_PROVIDE_IFELSE([AC_PROG_OBJC], 9166AC_PROVIDE_IFELSE([AC_PROG_OBJC],
9104 [_AM_DEPENDENCIES(OBJC)], 9167 [_AM_DEPENDENCIES([OBJC])],
9105 [define([AC_PROG_OBJC], 9168 [m4_define([AC_PROG_OBJC],
9106 defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl 9169 m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
9170AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
9171 [_AM_DEPENDENCIES([OBJCXX])],
9172 [m4_define([AC_PROG_OBJCXX],
9173 m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
9107]) 9174])
9108_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl 9175AC_REQUIRE([AM_SILENT_RULES])dnl
9109dnl The `parallel-tests' driver may need to know about EXEEXT, so add the 9176dnl The testsuite driver may need to know about EXEEXT, so add the
9110dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro 9177dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This
9111dnl is hooked onto _AC_COMPILER_EXEEXT early, see below. 9178dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
9112AC_CONFIG_COMMANDS_PRE(dnl 9179AC_CONFIG_COMMANDS_PRE(dnl
9113[m4_provide_if([_AM_COMPILER_EXEEXT], 9180[m4_provide_if([_AM_COMPILER_EXEEXT],
9114 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl 9181 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
9115])
9116 9182
9117dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not 9183# POSIX will say in a future version that running "rm -f" with no argument
9184# is OK; and we want to be able to make that assumption in our Makefile
9185# recipes. So use an aggressive probe to check that the usage we want is
9186# actually supported "in the wild" to an acceptable degree.
9187# See automake bug#10828.
9188# To make any issue more visible, cause the running configure to be aborted
9189# by default if the 'rm' program in use doesn't match our expectations; the
9190# user can still override this though.
9191if rm -f && rm -fr && rm -rf; then : OK; else
9192 cat >&2 <<'END'
9193Oops!
9194
9195Your 'rm' program seems unable to run without file operands specified
9196on the command line, even when the '-f' option is present. This is contrary
9197to the behaviour of most rm programs out there, and not conforming with
9198the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
9199
9200Please tell bug-automake@gnu.org about your system, including the value
9201of your $PATH and any error possibly output before this message. This
9202can help us improve future automake versions.
9203
9204END
9205 if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
9206 echo 'Configuration will proceed anyway, since you have set the' >&2
9207 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
9208 echo >&2
9209 else
9210 cat >&2 <<'END'
9211Aborting the configuration process, to ensure you take notice of the issue.
9212
9213You can download and install GNU coreutils to get an 'rm' implementation
9214that behaves properly: <http://www.gnu.org/software/coreutils/>.
9215
9216If you want to complete the configuration process using your problematic
9217'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
9218to "yes", and re-run configure.
9219
9220END
9221 AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
9222 fi
9223fi])
9224
9225dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
9118dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further 9226dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
9119dnl mangled by Autoconf and run in a shell conditional statement. 9227dnl mangled by Autoconf and run in a shell conditional statement.
9120m4_define([_AC_COMPILER_EXEEXT], 9228m4_define([_AC_COMPILER_EXEEXT],
9121m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) 9229m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
9122 9230
9123
9124# When config.status generates a header, we must update the stamp-h file. 9231# When config.status generates a header, we must update the stamp-h file.
9125# This file resides in the same directory as the config header 9232# This file resides in the same directory as the config header
9126# that is generated. The stamp files are numbered to have different names. 9233# that is generated. The stamp files are numbered to have different names.
@@ -9142,15 +9249,12 @@ for _am_header in $config_headers :; do
9142done 9249done
9143echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) 9250echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
9144 9251
9145# Copyright (C) 2001, 2003, 2005, 2008, 2011 Free Software Foundation, 9252# Copyright (C) 2001-2013 Free Software Foundation, Inc.
9146# Inc.
9147# 9253#
9148# This file is free software; the Free Software Foundation 9254# This file is free software; the Free Software Foundation
9149# gives unlimited permission to copy and/or distribute it, 9255# gives unlimited permission to copy and/or distribute it,
9150# with or without modifications, as long as this notice is preserved. 9256# with or without modifications, as long as this notice is preserved.
9151 9257
9152# serial 1
9153
9154# AM_PROG_INSTALL_SH 9258# AM_PROG_INSTALL_SH
9155# ------------------ 9259# ------------------
9156# Define $install_sh. 9260# Define $install_sh.
@@ -9164,16 +9268,14 @@ if test x"${install_sh}" != xset; then
9164 install_sh="\${SHELL} $am_aux_dir/install-sh" 9268 install_sh="\${SHELL} $am_aux_dir/install-sh"
9165 esac 9269 esac
9166fi 9270fi
9167AC_SUBST(install_sh)]) 9271AC_SUBST([install_sh])])
9168 9272
9169# Copyright (C) 2003, 2005 Free Software Foundation, Inc. 9273# Copyright (C) 2003-2013 Free Software Foundation, Inc.
9170# 9274#
9171# This file is free software; the Free Software Foundation 9275# This file is free software; the Free Software Foundation
9172# gives unlimited permission to copy and/or distribute it, 9276# gives unlimited permission to copy and/or distribute it,
9173# with or without modifications, as long as this notice is preserved. 9277# with or without modifications, as long as this notice is preserved.
9174 9278
9175# serial 2
9176
9177# Check whether the underlying file-system supports filenames 9279# Check whether the underlying file-system supports filenames
9178# with a leading dot. For instance MS-DOS doesn't. 9280# with a leading dot. For instance MS-DOS doesn't.
9179AC_DEFUN([AM_SET_LEADING_DOT], 9281AC_DEFUN([AM_SET_LEADING_DOT],
@@ -9190,20 +9292,17 @@ AC_SUBST([am__leading_dot])])
9190# Add --enable-maintainer-mode option to configure. -*- Autoconf -*- 9292# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
9191# From Jim Meyering 9293# From Jim Meyering
9192 9294
9193# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008, 9295# Copyright (C) 1996-2013 Free Software Foundation, Inc.
9194# 2011 Free Software Foundation, Inc.
9195# 9296#
9196# This file is free software; the Free Software Foundation 9297# This file is free software; the Free Software Foundation
9197# gives unlimited permission to copy and/or distribute it, 9298# gives unlimited permission to copy and/or distribute it,
9198# with or without modifications, as long as this notice is preserved. 9299# with or without modifications, as long as this notice is preserved.
9199 9300
9200# serial 5
9201
9202# AM_MAINTAINER_MODE([DEFAULT-MODE]) 9301# AM_MAINTAINER_MODE([DEFAULT-MODE])
9203# ---------------------------------- 9302# ----------------------------------
9204# Control maintainer-specific portions of Makefiles. 9303# Control maintainer-specific portions of Makefiles.
9205# Default is to disable them, unless `enable' is passed literally. 9304# Default is to disable them, unless 'enable' is passed literally.
9206# For symmetry, `disable' may be passed as well. Anyway, the user 9305# For symmetry, 'disable' may be passed as well. Anyway, the user
9207# can override the default with the --enable/--disable switch. 9306# can override the default with the --enable/--disable switch.
9208AC_DEFUN([AM_MAINTAINER_MODE], 9307AC_DEFUN([AM_MAINTAINER_MODE],
9209[m4_case(m4_default([$1], [disable]), 9308[m4_case(m4_default([$1], [disable]),
@@ -9214,10 +9313,11 @@ AC_DEFUN([AM_MAINTAINER_MODE],
9214AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) 9313AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
9215 dnl maintainer-mode's default is 'disable' unless 'enable' is passed 9314 dnl maintainer-mode's default is 'disable' unless 'enable' is passed
9216 AC_ARG_ENABLE([maintainer-mode], 9315 AC_ARG_ENABLE([maintainer-mode],
9217[ --][am_maintainer_other][-maintainer-mode am_maintainer_other make rules and dependencies not useful 9316 [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode],
9218 (and sometimes confusing) to the casual installer], 9317 am_maintainer_other[ make rules and dependencies not useful
9219 [USE_MAINTAINER_MODE=$enableval], 9318 (and sometimes confusing) to the casual installer])],
9220 [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes])) 9319 [USE_MAINTAINER_MODE=$enableval],
9320 [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
9221 AC_MSG_RESULT([$USE_MAINTAINER_MODE]) 9321 AC_MSG_RESULT([$USE_MAINTAINER_MODE])
9222 AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes]) 9322 AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
9223 MAINT=$MAINTAINER_MODE_TRUE 9323 MAINT=$MAINTAINER_MODE_TRUE
@@ -9225,18 +9325,14 @@ AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
9225] 9325]
9226) 9326)
9227 9327
9228AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
9229
9230# Check to see how 'make' treats includes. -*- Autoconf -*- 9328# Check to see how 'make' treats includes. -*- Autoconf -*-
9231 9329
9232# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc. 9330# Copyright (C) 2001-2013 Free Software Foundation, Inc.
9233# 9331#
9234# This file is free software; the Free Software Foundation 9332# This file is free software; the Free Software Foundation
9235# gives unlimited permission to copy and/or distribute it, 9333# gives unlimited permission to copy and/or distribute it,
9236# with or without modifications, as long as this notice is preserved. 9334# with or without modifications, as long as this notice is preserved.
9237 9335
9238# serial 4
9239
9240# AM_MAKE_INCLUDE() 9336# AM_MAKE_INCLUDE()
9241# ----------------- 9337# -----------------
9242# Check to see how make treats includes. 9338# Check to see how make treats includes.
@@ -9254,7 +9350,7 @@ am__quote=
9254_am_result=none 9350_am_result=none
9255# First try GNU make style include. 9351# First try GNU make style include.
9256echo "include confinc" > confmf 9352echo "include confinc" > confmf
9257# Ignore all kinds of additional output from `make'. 9353# Ignore all kinds of additional output from 'make'.
9258case `$am_make -s -f confmf 2> /dev/null` in #( 9354case `$am_make -s -f confmf 2> /dev/null` in #(
9259*the\ am__doit\ target*) 9355*the\ am__doit\ target*)
9260 am__include=include 9356 am__include=include
@@ -9281,15 +9377,12 @@ rm -f confinc confmf
9281 9377
9282# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- 9378# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
9283 9379
9284# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008 9380# Copyright (C) 1997-2013 Free Software Foundation, Inc.
9285# Free Software Foundation, Inc.
9286# 9381#
9287# This file is free software; the Free Software Foundation 9382# This file is free software; the Free Software Foundation
9288# gives unlimited permission to copy and/or distribute it, 9383# gives unlimited permission to copy and/or distribute it,
9289# with or without modifications, as long as this notice is preserved. 9384# with or without modifications, as long as this notice is preserved.
9290 9385
9291# serial 6
9292
9293# AM_MISSING_PROG(NAME, PROGRAM) 9386# AM_MISSING_PROG(NAME, PROGRAM)
9294# ------------------------------ 9387# ------------------------------
9295AC_DEFUN([AM_MISSING_PROG], 9388AC_DEFUN([AM_MISSING_PROG],
@@ -9297,11 +9390,10 @@ AC_DEFUN([AM_MISSING_PROG],
9297$1=${$1-"${am_missing_run}$2"} 9390$1=${$1-"${am_missing_run}$2"}
9298AC_SUBST($1)]) 9391AC_SUBST($1)])
9299 9392
9300
9301# AM_MISSING_HAS_RUN 9393# AM_MISSING_HAS_RUN
9302# ------------------ 9394# ------------------
9303# Define MISSING if not defined so far and test if it supports --run. 9395# Define MISSING if not defined so far and test if it is modern enough.
9304# If it does, set am_missing_run to use it, otherwise, to nothing. 9396# If it is, set am_missing_run to use it, otherwise, to nothing.
9305AC_DEFUN([AM_MISSING_HAS_RUN], 9397AC_DEFUN([AM_MISSING_HAS_RUN],
9306[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl 9398[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9307AC_REQUIRE_AUX_FILE([missing])dnl 9399AC_REQUIRE_AUX_FILE([missing])dnl
@@ -9314,54 +9406,22 @@ if test x"${MISSING+set}" != xset; then
9314 esac 9406 esac
9315fi 9407fi
9316# Use eval to expand $SHELL 9408# Use eval to expand $SHELL
9317if eval "$MISSING --run true"; then 9409if eval "$MISSING --is-lightweight"; then
9318 am_missing_run="$MISSING --run " 9410 am_missing_run="$MISSING "
9319else 9411else
9320 am_missing_run= 9412 am_missing_run=
9321 AC_MSG_WARN([`missing' script is too old or missing]) 9413 AC_MSG_WARN(['missing' script is too old or missing])
9322fi 9414fi
9323]) 9415])
9324 9416
9325# Copyright (C) 2003, 2004, 2005, 2006, 2011 Free Software Foundation,
9326# Inc.
9327#
9328# This file is free software; the Free Software Foundation
9329# gives unlimited permission to copy and/or distribute it,
9330# with or without modifications, as long as this notice is preserved.
9331
9332# serial 1
9333
9334# AM_PROG_MKDIR_P
9335# ---------------
9336# Check for `mkdir -p'.
9337AC_DEFUN([AM_PROG_MKDIR_P],
9338[AC_PREREQ([2.60])dnl
9339AC_REQUIRE([AC_PROG_MKDIR_P])dnl
9340dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P,
9341dnl while keeping a definition of mkdir_p for backward compatibility.
9342dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
9343dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
9344dnl Makefile.ins that do not define MKDIR_P, so we do our own
9345dnl adjustment using top_builddir (which is defined more often than
9346dnl MKDIR_P).
9347AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
9348case $mkdir_p in
9349 [[\\/$]]* | ?:[[\\/]]*) ;;
9350 */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
9351esac
9352])
9353
9354# Helper functions for option handling. -*- Autoconf -*- 9417# Helper functions for option handling. -*- Autoconf -*-
9355 9418
9356# Copyright (C) 2001, 2002, 2003, 2005, 2008, 2010 Free Software 9419# Copyright (C) 2001-2013 Free Software Foundation, Inc.
9357# Foundation, Inc.
9358# 9420#
9359# This file is free software; the Free Software Foundation 9421# This file is free software; the Free Software Foundation
9360# gives unlimited permission to copy and/or distribute it, 9422# gives unlimited permission to copy and/or distribute it,
9361# with or without modifications, as long as this notice is preserved. 9423# with or without modifications, as long as this notice is preserved.
9362 9424
9363# serial 5
9364
9365# _AM_MANGLE_OPTION(NAME) 9425# _AM_MANGLE_OPTION(NAME)
9366# ----------------------- 9426# -----------------------
9367AC_DEFUN([_AM_MANGLE_OPTION], 9427AC_DEFUN([_AM_MANGLE_OPTION],
@@ -9371,7 +9431,7 @@ AC_DEFUN([_AM_MANGLE_OPTION],
9371# -------------------- 9431# --------------------
9372# Set option NAME. Presently that only means defining a flag for this option. 9432# Set option NAME. Presently that only means defining a flag for this option.
9373AC_DEFUN([_AM_SET_OPTION], 9433AC_DEFUN([_AM_SET_OPTION],
9374[m4_define(_AM_MANGLE_OPTION([$1]), 1)]) 9434[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
9375 9435
9376# _AM_SET_OPTIONS(OPTIONS) 9436# _AM_SET_OPTIONS(OPTIONS)
9377# ------------------------ 9437# ------------------------
@@ -9385,52 +9445,82 @@ AC_DEFUN([_AM_SET_OPTIONS],
9385AC_DEFUN([_AM_IF_OPTION], 9445AC_DEFUN([_AM_IF_OPTION],
9386[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) 9446[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
9387 9447
9388# Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2005, 2006 9448# Copyright (C) 1999-2013 Free Software Foundation, Inc.
9389# Free Software Foundation, Inc.
9390# 9449#
9391# This file is free software; the Free Software Foundation 9450# This file is free software; the Free Software Foundation
9392# gives unlimited permission to copy and/or distribute it, 9451# gives unlimited permission to copy and/or distribute it,
9393# with or without modifications, as long as this notice is preserved. 9452# with or without modifications, as long as this notice is preserved.
9394 9453
9395# serial 5 9454# _AM_PROG_CC_C_O
9396 9455# ---------------
9397AC_DEFUN([AM_C_PROTOTYPES], 9456# Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC
9398[AC_REQUIRE([AC_C_PROTOTYPES]) 9457# to automatically call this.
9399AC_DIAGNOSE([obsolete], 9458AC_DEFUN([_AM_PROG_CC_C_O],
9400 [$0: automatic de-ANSI-fication support is deprecated]) 9459[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9401if test "$ac_cv_prog_cc_stdc" != no; then 9460AC_REQUIRE_AUX_FILE([compile])dnl
9402 U= ANSI2KNR= 9461AC_LANG_PUSH([C])dnl
9403else 9462AC_CACHE_CHECK(
9404 U=_ ANSI2KNR=./ansi2knr 9463 [whether $CC understands -c and -o together],
9464 [am_cv_prog_cc_c_o],
9465 [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
9466 # Make sure it works both with $CC and with simple cc.
9467 # Following AC_PROG_CC_C_O, we do the test twice because some
9468 # compilers refuse to overwrite an existing .o file with -o,
9469 # though they will create one.
9470 am_cv_prog_cc_c_o=yes
9471 for am_i in 1 2; do
9472 if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
9473 && test -f conftest2.$ac_objext; then
9474 : OK
9475 else
9476 am_cv_prog_cc_c_o=no
9477 break
9478 fi
9479 done
9480 rm -f core conftest*
9481 unset am_i])
9482if test "$am_cv_prog_cc_c_o" != yes; then
9483 # Losing compiler, so override with the script.
9484 # FIXME: It is wrong to rewrite CC.
9485 # But if we don't then we get into trouble of one sort or another.
9486 # A longer-term fix would be to have automake use am__CC in this case,
9487 # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
9488 CC="$am_aux_dir/compile $CC"
9405fi 9489fi
9406# Ensure some checks needed by ansi2knr itself. 9490AC_LANG_POP([C])])
9407AC_REQUIRE([AC_HEADER_STDC])
9408AC_CHECK_HEADERS([string.h])
9409AC_SUBST([U])dnl
9410AC_SUBST([ANSI2KNR])dnl
9411_AM_SUBST_NOTMAKE([ANSI2KNR])dnl
9412])
9413 9491
9414AU_DEFUN([fp_C_PROTOTYPES], [AM_C_PROTOTYPES]) 9492# For backward compatibility.
9493AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
9494
9495# Copyright (C) 2001-2013 Free Software Foundation, Inc.
9496#
9497# This file is free software; the Free Software Foundation
9498# gives unlimited permission to copy and/or distribute it,
9499# with or without modifications, as long as this notice is preserved.
9500
9501# AM_RUN_LOG(COMMAND)
9502# -------------------
9503# Run COMMAND, save the exit status in ac_status, and log it.
9504# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
9505AC_DEFUN([AM_RUN_LOG],
9506[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
9507 ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
9508 ac_status=$?
9509 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
9510 (exit $ac_status); }])
9415 9511
9416# Check to make sure that the build environment is sane. -*- Autoconf -*- 9512# Check to make sure that the build environment is sane. -*- Autoconf -*-
9417 9513
9418# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008 9514# Copyright (C) 1996-2013 Free Software Foundation, Inc.
9419# Free Software Foundation, Inc.
9420# 9515#
9421# This file is free software; the Free Software Foundation 9516# This file is free software; the Free Software Foundation
9422# gives unlimited permission to copy and/or distribute it, 9517# gives unlimited permission to copy and/or distribute it,
9423# with or without modifications, as long as this notice is preserved. 9518# with or without modifications, as long as this notice is preserved.
9424 9519
9425# serial 5
9426
9427# AM_SANITY_CHECK 9520# AM_SANITY_CHECK
9428# --------------- 9521# ---------------
9429AC_DEFUN([AM_SANITY_CHECK], 9522AC_DEFUN([AM_SANITY_CHECK],
9430[AC_MSG_CHECKING([whether build environment is sane]) 9523[AC_MSG_CHECKING([whether build environment is sane])
9431# Just in case
9432sleep 1
9433echo timestamp > conftest.file
9434# Reject unsafe characters in $srcdir or the absolute working directory 9524# Reject unsafe characters in $srcdir or the absolute working directory
9435# name. Accept space and tab only in the latter. 9525# name. Accept space and tab only in the latter.
9436am_lf=' 9526am_lf='
@@ -9441,32 +9531,40 @@ case `pwd` in
9441esac 9531esac
9442case $srcdir in 9532case $srcdir in
9443 *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) 9533 *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
9444 AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);; 9534 AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
9445esac 9535esac
9446 9536
9447# Do `set' in a subshell so we don't clobber the current shell's 9537# Do 'set' in a subshell so we don't clobber the current shell's
9448# arguments. Must try -L first in case configure is actually a 9538# arguments. Must try -L first in case configure is actually a
9449# symlink; some systems play weird games with the mod time of symlinks 9539# symlink; some systems play weird games with the mod time of symlinks
9450# (eg FreeBSD returns the mod time of the symlink's containing 9540# (eg FreeBSD returns the mod time of the symlink's containing
9451# directory). 9541# directory).
9452if ( 9542if (
9453 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` 9543 am_has_slept=no
9454 if test "$[*]" = "X"; then 9544 for am_try in 1 2; do
9455 # -L didn't work. 9545 echo "timestamp, slept: $am_has_slept" > conftest.file
9456 set X `ls -t "$srcdir/configure" conftest.file` 9546 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
9457 fi 9547 if test "$[*]" = "X"; then
9458 rm -f conftest.file 9548 # -L didn't work.
9459 if test "$[*]" != "X $srcdir/configure conftest.file" \ 9549 set X `ls -t "$srcdir/configure" conftest.file`
9460 && test "$[*]" != "X conftest.file $srcdir/configure"; then 9550 fi
9461 9551 if test "$[*]" != "X $srcdir/configure conftest.file" \
9462 # If neither matched, then we have a broken ls. This can happen 9552 && test "$[*]" != "X conftest.file $srcdir/configure"; then
9463 # if, for instance, CONFIG_SHELL is bash and it inherits a 9553
9464 # broken ls alias from the environment. This has actually 9554 # If neither matched, then we have a broken ls. This can happen
9465 # happened. Such a system could not be considered "sane". 9555 # if, for instance, CONFIG_SHELL is bash and it inherits a
9466 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken 9556 # broken ls alias from the environment. This has actually
9467alias in your environment]) 9557 # happened. Such a system could not be considered "sane".
9468 fi 9558 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
9469 9559 alias in your environment])
9560 fi
9561 if test "$[2]" = conftest.file || test $am_try -eq 2; then
9562 break
9563 fi
9564 # Just in case.
9565 sleep 1
9566 am_has_slept=yes
9567 done
9470 test "$[2]" = conftest.file 9568 test "$[2]" = conftest.file
9471 ) 9569 )
9472then 9570then
@@ -9476,73 +9574,118 @@ else
9476 AC_MSG_ERROR([newly created file is older than distributed files! 9574 AC_MSG_ERROR([newly created file is older than distributed files!
9477Check your system clock]) 9575Check your system clock])
9478fi 9576fi
9479AC_MSG_RESULT(yes)]) 9577AC_MSG_RESULT([yes])
9578# If we didn't sleep, we still need to ensure time stamps of config.status and
9579# generated files are strictly newer.
9580am_sleep_pid=
9581if grep 'slept: no' conftest.file >/dev/null 2>&1; then
9582 ( sleep 1 ) &
9583 am_sleep_pid=$!
9584fi
9585AC_CONFIG_COMMANDS_PRE(
9586 [AC_MSG_CHECKING([that generated files are newer than configure])
9587 if test -n "$am_sleep_pid"; then
9588 # Hide warnings about reused PIDs.
9589 wait $am_sleep_pid 2>/dev/null
9590 fi
9591 AC_MSG_RESULT([done])])
9592rm -f conftest.file
9593])
9480 9594
9481# Copyright (C) 2009 Free Software Foundation, Inc. 9595# Copyright (C) 2009-2013 Free Software Foundation, Inc.
9482# 9596#
9483# This file is free software; the Free Software Foundation 9597# This file is free software; the Free Software Foundation
9484# gives unlimited permission to copy and/or distribute it, 9598# gives unlimited permission to copy and/or distribute it,
9485# with or without modifications, as long as this notice is preserved. 9599# with or without modifications, as long as this notice is preserved.
9486 9600
9487# serial 1
9488
9489# AM_SILENT_RULES([DEFAULT]) 9601# AM_SILENT_RULES([DEFAULT])
9490# -------------------------- 9602# --------------------------
9491# Enable less verbose build rules; with the default set to DEFAULT 9603# Enable less verbose build rules; with the default set to DEFAULT
9492# (`yes' being less verbose, `no' or empty being verbose). 9604# ("yes" being less verbose, "no" or empty being verbose).
9493AC_DEFUN([AM_SILENT_RULES], 9605AC_DEFUN([AM_SILENT_RULES],
9494[AC_ARG_ENABLE([silent-rules], 9606[AC_ARG_ENABLE([silent-rules], [dnl
9495[ --enable-silent-rules less verbose build output (undo: `make V=1') 9607AS_HELP_STRING(
9496 --disable-silent-rules verbose build output (undo: `make V=0')]) 9608 [--enable-silent-rules],
9497case $enable_silent_rules in 9609 [less verbose build output (undo: "make V=1")])
9498yes) AM_DEFAULT_VERBOSITY=0;; 9610AS_HELP_STRING(
9499no) AM_DEFAULT_VERBOSITY=1;; 9611 [--disable-silent-rules],
9500*) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; 9612 [verbose build output (undo: "make V=0")])dnl
9613])
9614case $enable_silent_rules in @%:@ (((
9615 yes) AM_DEFAULT_VERBOSITY=0;;
9616 no) AM_DEFAULT_VERBOSITY=1;;
9617 *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
9501esac 9618esac
9619dnl
9620dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
9621dnl do not support nested variable expansions.
9622dnl See automake bug#9928 and bug#10237.
9623am_make=${MAKE-make}
9624AC_CACHE_CHECK([whether $am_make supports nested variables],
9625 [am_cv_make_support_nested_variables],
9626 [if AS_ECHO([['TRUE=$(BAR$(V))
9627BAR0=false
9628BAR1=true
9629V=1
9630am__doit:
9631 @$(TRUE)
9632.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
9633 am_cv_make_support_nested_variables=yes
9634else
9635 am_cv_make_support_nested_variables=no
9636fi])
9637if test $am_cv_make_support_nested_variables = yes; then
9638 dnl Using '$V' instead of '$(V)' breaks IRIX make.
9639 AM_V='$(V)'
9640 AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
9641else
9642 AM_V=$AM_DEFAULT_VERBOSITY
9643 AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
9644fi
9645AC_SUBST([AM_V])dnl
9646AM_SUBST_NOTMAKE([AM_V])dnl
9647AC_SUBST([AM_DEFAULT_V])dnl
9648AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
9502AC_SUBST([AM_DEFAULT_VERBOSITY])dnl 9649AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
9503AM_BACKSLASH='\' 9650AM_BACKSLASH='\'
9504AC_SUBST([AM_BACKSLASH])dnl 9651AC_SUBST([AM_BACKSLASH])dnl
9505_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl 9652_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
9506]) 9653])
9507 9654
9508# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc. 9655# Copyright (C) 2001-2013 Free Software Foundation, Inc.
9509# 9656#
9510# This file is free software; the Free Software Foundation 9657# This file is free software; the Free Software Foundation
9511# gives unlimited permission to copy and/or distribute it, 9658# gives unlimited permission to copy and/or distribute it,
9512# with or without modifications, as long as this notice is preserved. 9659# with or without modifications, as long as this notice is preserved.
9513 9660
9514# serial 1
9515
9516# AM_PROG_INSTALL_STRIP 9661# AM_PROG_INSTALL_STRIP
9517# --------------------- 9662# ---------------------
9518# One issue with vendor `install' (even GNU) is that you can't 9663# One issue with vendor 'install' (even GNU) is that you can't
9519# specify the program used to strip binaries. This is especially 9664# specify the program used to strip binaries. This is especially
9520# annoying in cross-compiling environments, where the build's strip 9665# annoying in cross-compiling environments, where the build's strip
9521# is unlikely to handle the host's binaries. 9666# is unlikely to handle the host's binaries.
9522# Fortunately install-sh will honor a STRIPPROG variable, so we 9667# Fortunately install-sh will honor a STRIPPROG variable, so we
9523# always use install-sh in `make install-strip', and initialize 9668# always use install-sh in "make install-strip", and initialize
9524# STRIPPROG with the value of the STRIP variable (set by the user). 9669# STRIPPROG with the value of the STRIP variable (set by the user).
9525AC_DEFUN([AM_PROG_INSTALL_STRIP], 9670AC_DEFUN([AM_PROG_INSTALL_STRIP],
9526[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl 9671[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9527# Installed binaries are usually stripped using `strip' when the user 9672# Installed binaries are usually stripped using 'strip' when the user
9528# run `make install-strip'. However `strip' might not be the right 9673# run "make install-strip". However 'strip' might not be the right
9529# tool to use in cross-compilation environments, therefore Automake 9674# tool to use in cross-compilation environments, therefore Automake
9530# will honor the `STRIP' environment variable to overrule this program. 9675# will honor the 'STRIP' environment variable to overrule this program.
9531dnl Don't test for $cross_compiling = yes, because it might be `maybe'. 9676dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
9532if test "$cross_compiling" != no; then 9677if test "$cross_compiling" != no; then
9533 AC_CHECK_TOOL([STRIP], [strip], :) 9678 AC_CHECK_TOOL([STRIP], [strip], :)
9534fi 9679fi
9535INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" 9680INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
9536AC_SUBST([INSTALL_STRIP_PROGRAM])]) 9681AC_SUBST([INSTALL_STRIP_PROGRAM])])
9537 9682
9538# Copyright (C) 2006, 2008, 2010 Free Software Foundation, Inc. 9683# Copyright (C) 2006-2013 Free Software Foundation, Inc.
9539# 9684#
9540# This file is free software; the Free Software Foundation 9685# This file is free software; the Free Software Foundation
9541# gives unlimited permission to copy and/or distribute it, 9686# gives unlimited permission to copy and/or distribute it,
9542# with or without modifications, as long as this notice is preserved. 9687# with or without modifications, as long as this notice is preserved.
9543 9688
9544# serial 3
9545
9546# _AM_SUBST_NOTMAKE(VARIABLE) 9689# _AM_SUBST_NOTMAKE(VARIABLE)
9547# --------------------------- 9690# ---------------------------
9548# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. 9691# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
@@ -9556,18 +9699,16 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
9556 9699
9557# Check how to create a tarball. -*- Autoconf -*- 9700# Check how to create a tarball. -*- Autoconf -*-
9558 9701
9559# Copyright (C) 2004, 2005 Free Software Foundation, Inc. 9702# Copyright (C) 2004-2013 Free Software Foundation, Inc.
9560# 9703#
9561# This file is free software; the Free Software Foundation 9704# This file is free software; the Free Software Foundation
9562# gives unlimited permission to copy and/or distribute it, 9705# gives unlimited permission to copy and/or distribute it,
9563# with or without modifications, as long as this notice is preserved. 9706# with or without modifications, as long as this notice is preserved.
9564 9707
9565# serial 2
9566
9567# _AM_PROG_TAR(FORMAT) 9708# _AM_PROG_TAR(FORMAT)
9568# -------------------- 9709# --------------------
9569# Check how to create a tarball in format FORMAT. 9710# Check how to create a tarball in format FORMAT.
9570# FORMAT should be one of `v7', `ustar', or `pax'. 9711# FORMAT should be one of 'v7', 'ustar', or 'pax'.
9571# 9712#
9572# Substitute a variable $(am__tar) that is a command 9713# Substitute a variable $(am__tar) that is a command
9573# writing to stdout a FORMAT-tarball containing the directory 9714# writing to stdout a FORMAT-tarball containing the directory
@@ -9577,75 +9718,114 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
9577# Substitute a variable $(am__untar) that extract such 9718# Substitute a variable $(am__untar) that extract such
9578# a tarball read from stdin. 9719# a tarball read from stdin.
9579# $(am__untar) < result.tar 9720# $(am__untar) < result.tar
9721#
9580AC_DEFUN([_AM_PROG_TAR], 9722AC_DEFUN([_AM_PROG_TAR],
9581[# Always define AMTAR for backward compatibility. 9723[# Always define AMTAR for backward compatibility. Yes, it's still used
9582AM_MISSING_PROG([AMTAR], [tar]) 9724# in the wild :-( We should find a proper way to deprecate it ...
9583m4_if([$1], [v7], 9725AC_SUBST([AMTAR], ['$${TAR-tar}'])
9584 [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'], 9726
9585 [m4_case([$1], [ustar],, [pax],, 9727# We'll loop over all known methods to create a tar archive until one works.
9586 [m4_fatal([Unknown tar format])])
9587AC_MSG_CHECKING([how to create a $1 tar archive])
9588# Loop over all known methods to create a tar archive until one works.
9589_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' 9728_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
9590_am_tools=${am_cv_prog_tar_$1-$_am_tools}
9591# Do not fold the above two line into one, because Tru64 sh and
9592# Solaris sh will not grok spaces in the rhs of `-'.
9593for _am_tool in $_am_tools
9594do
9595 case $_am_tool in
9596 gnutar)
9597 for _am_tar in tar gnutar gtar;
9598 do
9599 AM_RUN_LOG([$_am_tar --version]) && break
9600 done
9601 am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
9602 am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
9603 am__untar="$_am_tar -xf -"
9604 ;;
9605 plaintar)
9606 # Must skip GNU tar: if it does not support --format= it doesn't create
9607 # ustar tarball either.
9608 (tar --version) >/dev/null 2>&1 && continue
9609 am__tar='tar chf - "$$tardir"'
9610 am__tar_='tar chf - "$tardir"'
9611 am__untar='tar xf -'
9612 ;;
9613 pax)
9614 am__tar='pax -L -x $1 -w "$$tardir"'
9615 am__tar_='pax -L -x $1 -w "$tardir"'
9616 am__untar='pax -r'
9617 ;;
9618 cpio)
9619 am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
9620 am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
9621 am__untar='cpio -i -H $1 -d'
9622 ;;
9623 none)
9624 am__tar=false
9625 am__tar_=false
9626 am__untar=false
9627 ;;
9628 esac
9629 9729
9630 # If the value was cached, stop now. We just wanted to have am__tar 9730m4_if([$1], [v7],
9631 # and am__untar set. 9731 [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
9632 test -n "${am_cv_prog_tar_$1}" && break 9732
9733 [m4_case([$1],
9734 [ustar],
9735 [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
9736 # There is notably a 21 bits limit for the UID and the GID. In fact,
9737 # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
9738 # and bug#13588).
9739 am_max_uid=2097151 # 2^21 - 1
9740 am_max_gid=$am_max_uid
9741 # The $UID and $GID variables are not portable, so we need to resort
9742 # to the POSIX-mandated id(1) utility. Errors in the 'id' calls
9743 # below are definitely unexpected, so allow the users to see them
9744 # (that is, avoid stderr redirection).
9745 am_uid=`id -u || echo unknown`
9746 am_gid=`id -g || echo unknown`
9747 AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
9748 if test $am_uid -le $am_max_uid; then
9749 AC_MSG_RESULT([yes])
9750 else
9751 AC_MSG_RESULT([no])
9752 _am_tools=none
9753 fi
9754 AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
9755 if test $am_gid -le $am_max_gid; then
9756 AC_MSG_RESULT([yes])
9757 else
9758 AC_MSG_RESULT([no])
9759 _am_tools=none
9760 fi],
9761
9762 [pax],
9763 [],
9633 9764
9634 # tar/untar a dummy directory, and stop if the command works 9765 [m4_fatal([Unknown tar format])])
9635 rm -rf conftest.dir 9766
9636 mkdir conftest.dir 9767 AC_MSG_CHECKING([how to create a $1 tar archive])
9637 echo GrepMe > conftest.dir/file 9768
9638 AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) 9769 # Go ahead even if we have the value already cached. We do so because we
9770 # need to set the values for the 'am__tar' and 'am__untar' variables.
9771 _am_tools=${am_cv_prog_tar_$1-$_am_tools}
9772
9773 for _am_tool in $_am_tools; do
9774 case $_am_tool in
9775 gnutar)
9776 for _am_tar in tar gnutar gtar; do
9777 AM_RUN_LOG([$_am_tar --version]) && break
9778 done
9779 am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
9780 am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
9781 am__untar="$_am_tar -xf -"
9782 ;;
9783 plaintar)
9784 # Must skip GNU tar: if it does not support --format= it doesn't create
9785 # ustar tarball either.
9786 (tar --version) >/dev/null 2>&1 && continue
9787 am__tar='tar chf - "$$tardir"'
9788 am__tar_='tar chf - "$tardir"'
9789 am__untar='tar xf -'
9790 ;;
9791 pax)
9792 am__tar='pax -L -x $1 -w "$$tardir"'
9793 am__tar_='pax -L -x $1 -w "$tardir"'
9794 am__untar='pax -r'
9795 ;;
9796 cpio)
9797 am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
9798 am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
9799 am__untar='cpio -i -H $1 -d'
9800 ;;
9801 none)
9802 am__tar=false
9803 am__tar_=false
9804 am__untar=false
9805 ;;
9806 esac
9807
9808 # If the value was cached, stop now. We just wanted to have am__tar
9809 # and am__untar set.
9810 test -n "${am_cv_prog_tar_$1}" && break
9811
9812 # tar/untar a dummy directory, and stop if the command works.
9813 rm -rf conftest.dir
9814 mkdir conftest.dir
9815 echo GrepMe > conftest.dir/file
9816 AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
9817 rm -rf conftest.dir
9818 if test -s conftest.tar; then
9819 AM_RUN_LOG([$am__untar <conftest.tar])
9820 AM_RUN_LOG([cat conftest.dir/file])
9821 grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
9822 fi
9823 done
9639 rm -rf conftest.dir 9824 rm -rf conftest.dir
9640 if test -s conftest.tar; then
9641 AM_RUN_LOG([$am__untar <conftest.tar])
9642 grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
9643 fi
9644done
9645rm -rf conftest.dir
9646 9825
9647AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) 9826 AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
9648AC_MSG_RESULT([$am_cv_prog_tar_$1])]) 9827 AC_MSG_RESULT([$am_cv_prog_tar_$1])])
9828
9649AC_SUBST([am__tar]) 9829AC_SUBST([am__tar])
9650AC_SUBST([am__untar]) 9830AC_SUBST([am__untar])
9651]) # _AM_PROG_TAR 9831]) # _AM_PROG_TAR
diff --git a/gs/jpeg/ansi2knr.1 b/gs/jpeg/ansi2knr.1
deleted file mode 100644
index f9ee5a631..000000000
--- a/gs/jpeg/ansi2knr.1
+++ /dev/null
@@ -1,36 +0,0 @@
1.TH ANSI2KNR 1 "19 Jan 1996"
2.SH NAME
3ansi2knr \- convert ANSI C to Kernighan & Ritchie C
4.SH SYNOPSIS
5.I ansi2knr
6[--varargs] input_file [output_file]
7.SH DESCRIPTION
8If no output_file is supplied, output goes to stdout.
9.br
10There are no error messages.
11.sp
12.I ansi2knr
13recognizes function definitions by seeing a non-keyword identifier at the left
14margin, followed by a left parenthesis, with a right parenthesis as the last
15character on the line, and with a left brace as the first token on the
16following line (ignoring possible intervening comments). It will recognize a
17multi-line header provided that no intervening line ends with a left or right
18brace or a semicolon. These algorithms ignore whitespace and comments, except
19that the function name must be the first thing on the line.
20.sp
21The following constructs will confuse it:
22.br
23 - Any other construct that starts at the left margin and follows the
24above syntax (such as a macro or function call).
25.br
26 - Some macros that tinker with the syntax of the function header.
27.sp
28The --varargs switch is obsolete, and is recognized only for
29backwards compatibility. The present version of
30.I ansi2knr
31will always attempt to convert a ... argument to va_alist and va_dcl.
32.SH AUTHOR
33L. Peter Deutsch <ghost@aladdin.com> wrote the original ansi2knr and
34continues to maintain the current version; most of the code in the current
35version is his work. ansi2knr also includes contributions by Francois
36Pinard <pinard@iro.umontreal.ca> and Jim Avera <jima@netcom.com>.
diff --git a/gs/jpeg/ansi2knr.c b/gs/jpeg/ansi2knr.c
deleted file mode 100644
index e84c210b6..000000000
--- a/gs/jpeg/ansi2knr.c
+++ /dev/null
@@ -1,739 +0,0 @@
1/* Copyright (C) 1989, 2000 Aladdin Enterprises. All rights reserved. */
2
3/*$Id: ansi2knr.c,v 1.14 2003/09/06 05:36:56 eggert Exp $*/
4/* Convert ANSI C function definitions to K&R ("traditional C") syntax */
5
6/*
7ansi2knr is distributed in the hope that it will be useful, but WITHOUT ANY
8WARRANTY. No author or distributor accepts responsibility to anyone for the
9consequences of using it or for whether it serves any particular purpose or
10works at all, unless he says so in writing. Refer to the GNU General Public
11License (the "GPL") for full details.
12
13Everyone is granted permission to copy, modify and redistribute ansi2knr,
14but only under the conditions described in the GPL. A copy of this license
15is supposed to have been given to you along with ansi2knr so you can know
16your rights and responsibilities. It should be in a file named COPYLEFT,
17or, if there is no file named COPYLEFT, a file named COPYING. Among other
18things, the copyright notice and this notice must be preserved on all
19copies.
20
21We explicitly state here what we believe is already implied by the GPL: if
22the ansi2knr program is distributed as a separate set of sources and a
23separate executable file which are aggregated on a storage medium together
24with another program, this in itself does not bring the other program under
25the GPL, nor does the mere fact that such a program or the procedures for
26constructing it invoke the ansi2knr executable bring any other part of the
27program under the GPL.
28*/
29
30/*
31 * Usage:
32 ansi2knr [--filename FILENAME] [INPUT_FILE [OUTPUT_FILE]]
33 * --filename provides the file name for the #line directive in the output,
34 * overriding input_file (if present).
35 * If no input_file is supplied, input is read from stdin.
36 * If no output_file is supplied, output goes to stdout.
37 * There are no error messages.
38 *
39 * ansi2knr recognizes function definitions by seeing a non-keyword
40 * identifier at the left margin, followed by a left parenthesis, with a
41 * right parenthesis as the last character on the line, and with a left
42 * brace as the first token on the following line (ignoring possible
43 * intervening comments and/or preprocessor directives), except that a line
44 * consisting of only
45 * identifier1(identifier2)
46 * will not be considered a function definition unless identifier2 is
47 * the word "void", and a line consisting of
48 * identifier1(identifier2, <<arbitrary>>)
49 * will not be considered a function definition.
50 * ansi2knr will recognize a multi-line header provided that no intervening
51 * line ends with a left or right brace or a semicolon. These algorithms
52 * ignore whitespace, comments, and preprocessor directives, except that
53 * the function name must be the first thing on the line. The following
54 * constructs will confuse it:
55 * - Any other construct that starts at the left margin and
56 * follows the above syntax (such as a macro or function call).
57 * - Some macros that tinker with the syntax of function headers.
58 */
59
60/*
61 * The original and principal author of ansi2knr is L. Peter Deutsch
62 * <ghost@aladdin.com>. Other authors are noted in the change history
63 * that follows (in reverse chronological order):
64
65 lpd 2000-04-12 backs out Eggert's changes because of bugs:
66 - concatlits didn't declare the type of its bufend argument;
67 - concatlits didn't recognize when it was inside a comment;
68 - scanstring could scan backward past the beginning of the string; when
69 - the check for \ + newline in scanstring was unnecessary.
70
71 2000-03-05 Paul Eggert <eggert@twinsun.com>
72
73 Add support for concatenated string literals.
74 * ansi2knr.c (concatlits): New decl.
75 (main): Invoke concatlits to concatenate string literals.
76 (scanstring): Handle backslash-newline correctly. Work with
77 character constants. Fix bug when scanning backwards through
78 backslash-quote. Check for unterminated strings.
79 (convert1): Parse character constants, too.
80 (appendline, concatlits): New functions.
81 * ansi2knr.1: Document this.
82
83 lpd 1999-08-17 added code to allow preprocessor directives
84 wherever comments are allowed
85 lpd 1999-04-12 added minor fixes from Pavel Roskin
86 <pavel_roskin@geocities.com> for clean compilation with
87 gcc -W -Wall
88 lpd 1999-03-22 added hack to recognize lines consisting of
89 identifier1(identifier2, xxx) as *not* being procedures
90 lpd 1999-02-03 made indentation of preprocessor commands consistent
91 lpd 1999-01-28 fixed two bugs: a '/' in an argument list caused an
92 endless loop; quoted strings within an argument list
93 confused the parser
94 lpd 1999-01-24 added a check for write errors on the output,
95 suggested by Jim Meyering <meyering@ascend.com>
96 lpd 1998-11-09 added further hack to recognize identifier(void)
97 as being a procedure
98 lpd 1998-10-23 added hack to recognize lines consisting of
99 identifier1(identifier2) as *not* being procedures
100 lpd 1997-12-08 made input_file optional; only closes input and/or
101 output file if not stdin or stdout respectively; prints
102 usage message on stderr rather than stdout; adds
103 --filename switch (changes suggested by
104 <ceder@lysator.liu.se>)
105 lpd 1996-01-21 added code to cope with not HAVE_CONFIG_H and with
106 compilers that don't understand void, as suggested by
107 Tom Lane
108 lpd 1996-01-15 changed to require that the first non-comment token
109 on the line following a function header be a left brace,
110 to reduce sensitivity to macros, as suggested by Tom Lane
111 <tgl@sss.pgh.pa.us>
112 lpd 1995-06-22 removed #ifndefs whose sole purpose was to define
113 undefined preprocessor symbols as 0; changed all #ifdefs
114 for configuration symbols to #ifs
115 lpd 1995-04-05 changed copyright notice to make it clear that
116 including ansi2knr in a program does not bring the entire
117 program under the GPL
118 lpd 1994-12-18 added conditionals for systems where ctype macros
119 don't handle 8-bit characters properly, suggested by
120 Francois Pinard <pinard@iro.umontreal.ca>;
121 removed --varargs switch (this is now the default)
122 lpd 1994-10-10 removed CONFIG_BROKETS conditional
123 lpd 1994-07-16 added some conditionals to help GNU `configure',
124 suggested by Francois Pinard <pinard@iro.umontreal.ca>;
125 properly erase prototype args in function parameters,
126 contributed by Jim Avera <jima@netcom.com>;
127 correct error in writeblanks (it shouldn't erase EOLs)
128 lpd 1989-xx-xx original version
129 */
130
131/* Most of the conditionals here are to make ansi2knr work with */
132/* or without the GNU configure machinery. */
133
134#if HAVE_CONFIG_H
135# include <config.h>
136#endif
137
138#include <stdio.h>
139#include <ctype.h>
140
141#if HAVE_CONFIG_H
142
143/*
144 For properly autoconfiguring ansi2knr, use AC_CONFIG_HEADER(config.h).
145 This will define HAVE_CONFIG_H and so, activate the following lines.
146 */
147
148# if STDC_HEADERS || HAVE_STRING_H
149# include <string.h>
150# else
151# include <strings.h>
152# endif
153
154#else /* not HAVE_CONFIG_H */
155
156/* Otherwise do it the hard way */
157
158# ifdef BSD
159# include <strings.h>
160# else
161# ifdef VMS
162 extern int strlen(), strncmp();
163# else
164# include <string.h>
165# endif
166# endif
167
168#endif /* not HAVE_CONFIG_H */
169
170#if STDC_HEADERS
171# include <stdlib.h>
172#else
173/*
174 malloc and free should be declared in stdlib.h,
175 but if you've got a K&R compiler, they probably aren't.
176 */
177# ifdef MSDOS
178# include <malloc.h>
179# else
180# ifdef VMS
181 extern char *malloc();
182 extern void free();
183# else
184 extern char *malloc();
185 extern int free();
186# endif
187# endif
188
189#endif
190
191/* Define NULL (for *very* old compilers). */
192#ifndef NULL
193# define NULL (0)
194#endif
195
196/*
197 * The ctype macros don't always handle 8-bit characters correctly.
198 * Compensate for this here.
199 */
200#ifdef isascii
201# undef HAVE_ISASCII /* just in case */
202# define HAVE_ISASCII 1
203#else
204#endif
205#if STDC_HEADERS || !HAVE_ISASCII
206# define is_ascii(c) 1
207#else
208# define is_ascii(c) isascii(c)
209#endif
210
211#define is_space(c) (is_ascii(c) && isspace(c))
212#define is_alpha(c) (is_ascii(c) && isalpha(c))
213#define is_alnum(c) (is_ascii(c) && isalnum(c))
214
215/* Scanning macros */
216#define isidchar(ch) (is_alnum(ch) || (ch) == '_')
217#define isidfirstchar(ch) (is_alpha(ch) || (ch) == '_')
218
219/* Forward references */
220char *ppdirforward();
221char *ppdirbackward();
222char *skipspace();
223char *scanstring();
224int writeblanks();
225int test1();
226int convert1();
227
228/* The main program */
229int
230main(argc, argv)
231 int argc;
232 char *argv[];
233{ FILE *in = stdin;
234 FILE *out = stdout;
235 char *filename = 0;
236 char *program_name = argv[0];
237 char *output_name = 0;
238#define bufsize 5000 /* arbitrary size */
239 char *buf;
240 char *line;
241 char *more;
242 char *usage =
243 "Usage: ansi2knr [--filename FILENAME] [INPUT_FILE [OUTPUT_FILE]]\n";
244 /*
245 * In previous versions, ansi2knr recognized a --varargs switch.
246 * If this switch was supplied, ansi2knr would attempt to convert
247 * a ... argument to va_alist and va_dcl; if this switch was not
248 * supplied, ansi2knr would simply drop any such arguments.
249 * Now, ansi2knr always does this conversion, and we only
250 * check for this switch for backward compatibility.
251 */
252 int convert_varargs = 1;
253 int output_error;
254
255 while ( argc > 1 && argv[1][0] == '-' ) {
256 if ( !strcmp(argv[1], "--varargs") ) {
257 convert_varargs = 1;
258 argc--;
259 argv++;
260 continue;
261 }
262 if ( !strcmp(argv[1], "--filename") && argc > 2 ) {
263 filename = argv[2];
264 argc -= 2;
265 argv += 2;
266 continue;
267 }
268 fprintf(stderr, "%s: Unrecognized switch: %s\n", program_name,
269 argv[1]);
270 fprintf(stderr, usage);
271 exit(1);
272 }
273 switch ( argc )
274 {
275 default:
276 fprintf(stderr, usage);
277 exit(0);
278 case 3:
279 output_name = argv[2];
280 out = fopen(output_name, "w");
281 if ( out == NULL ) {
282 fprintf(stderr, "%s: Cannot open output file %s\n",
283 program_name, output_name);
284 exit(1);
285 }
286 /* falls through */
287 case 2:
288 in = fopen(argv[1], "r");
289 if ( in == NULL ) {
290 fprintf(stderr, "%s: Cannot open input file %s\n",
291 program_name, argv[1]);
292 exit(1);
293 }
294 if ( filename == 0 )
295 filename = argv[1];
296 /* falls through */
297 case 1:
298 break;
299 }
300 if ( filename )
301 fprintf(out, "#line 1 \"%s\"\n", filename);
302 buf = malloc(bufsize);
303 if ( buf == NULL )
304 {
305 fprintf(stderr, "Unable to allocate read buffer!\n");
306 exit(1);
307 }
308 line = buf;
309 while ( fgets(line, (unsigned)(buf + bufsize - line), in) != NULL )
310 {
311test: line += strlen(line);
312 switch ( test1(buf) )
313 {
314 case 2: /* a function header */
315 convert1(buf, out, 1, convert_varargs);
316 break;
317 case 1: /* a function */
318 /* Check for a { at the start of the next line. */
319 more = ++line;
320f: if ( line >= buf + (bufsize - 1) ) /* overflow check */
321 goto wl;
322 if ( fgets(line, (unsigned)(buf + bufsize - line), in) == NULL )
323 goto wl;
324 switch ( *skipspace(ppdirforward(more), 1) )
325 {
326 case '{':
327 /* Definitely a function header. */
328 convert1(buf, out, 0, convert_varargs);
329 fputs(more, out);
330 break;
331 case 0:
332 /* The next line was blank or a comment: */
333 /* keep scanning for a non-comment. */
334 line += strlen(line);
335 goto f;
336 default:
337 /* buf isn't a function header, but */
338 /* more might be. */
339 fputs(buf, out);
340 strcpy(buf, more);
341 line = buf;
342 goto test;
343 }
344 break;
345 case -1: /* maybe the start of a function */
346 if ( line != buf + (bufsize - 1) ) /* overflow check */
347 continue;
348 /* falls through */
349 default: /* not a function */
350wl: fputs(buf, out);
351 break;
352 }
353 line = buf;
354 }
355 if ( line != buf )
356 fputs(buf, out);
357 free(buf);
358 if ( output_name ) {
359 output_error = ferror(out);
360 output_error |= fclose(out);
361 } else { /* out == stdout */
362 fflush(out);
363 output_error = ferror(out);
364 }
365 if ( output_error ) {
366 fprintf(stderr, "%s: error writing to %s\n", program_name,
367 (output_name ? output_name : "stdout"));
368 exit(1);
369 }
370 if ( in != stdin )
371 fclose(in);
372 return 0;
373}
374
375/*
376 * Skip forward or backward over one or more preprocessor directives.
377 */
378char *
379ppdirforward(p)
380 char *p;
381{
382 for (; *p == '#'; ++p) {
383 for (; *p != '\r' && *p != '\n'; ++p)
384 if (*p == 0)
385 return p;
386 if (*p == '\r' && p[1] == '\n')
387 ++p;
388 }
389 return p;
390}
391char *
392ppdirbackward(p, limit)
393 char *p;
394 char *limit;
395{
396 char *np = p;
397
398 for (;; p = --np) {
399 if (*np == '\n' && np[-1] == '\r')
400 --np;
401 for (; np > limit && np[-1] != '\r' && np[-1] != '\n'; --np)
402 if (np[-1] == 0)
403 return np;
404 if (*np != '#')
405 return p;
406 }
407}
408
409/*
410 * Skip over whitespace, comments, and preprocessor directives,
411 * in either direction.
412 */
413char *
414skipspace(p, dir)
415 char *p;
416 int dir; /* 1 for forward, -1 for backward */
417{
418 for ( ; ; ) {
419 while ( is_space(*p) )
420 p += dir;
421 if ( !(*p == '/' && p[dir] == '*') )
422 break;
423 p += dir; p += dir;
424 while ( !(*p == '*' && p[dir] == '/') ) {
425 if ( *p == 0 )
426 return p; /* multi-line comment?? */
427 p += dir;
428 }
429 p += dir; p += dir;
430 }
431 return p;
432}
433
434/* Scan over a quoted string, in either direction. */
435char *
436scanstring(p, dir)
437 char *p;
438 int dir;
439{
440 for (p += dir; ; p += dir)
441 if (*p == '"' && p[-dir] != '\\')
442 return p + dir;
443}
444
445/*
446 * Write blanks over part of a string.
447 * Don't overwrite end-of-line characters.
448 */
449int
450writeblanks(start, end)
451 char *start;
452 char *end;
453{ char *p;
454 for ( p = start; p < end; p++ )
455 if ( *p != '\r' && *p != '\n' )
456 *p = ' ';
457 return 0;
458}
459
460/*
461 * Test whether the string in buf is a function definition.
462 * The string may contain and/or end with a newline.
463 * Return as follows:
464 * 0 - definitely not a function definition;
465 * 1 - definitely a function definition;
466 * 2 - definitely a function prototype (NOT USED);
467 * -1 - may be the beginning of a function definition,
468 * append another line and look again.
469 * The reason we don't attempt to convert function prototypes is that
470 * Ghostscript's declaration-generating macros look too much like
471 * prototypes, and confuse the algorithms.
472 */
473int
474test1(buf)
475 char *buf;
476{ char *p = buf;
477 char *bend;
478 char *endfn;
479 int contin;
480
481 if ( !isidfirstchar(*p) )
482 return 0; /* no name at left margin */
483 bend = skipspace(ppdirbackward(buf + strlen(buf) - 1, buf), -1);
484 switch ( *bend )
485 {
486 case ';': contin = 0 /*2*/; break;
487 case ')': contin = 1; break;
488 case '{': return 0; /* not a function */
489 case '}': return 0; /* not a function */
490 default: contin = -1;
491 }
492 while ( isidchar(*p) )
493 p++;
494 endfn = p;
495 p = skipspace(p, 1);
496 if ( *p++ != '(' )
497 return 0; /* not a function */
498 p = skipspace(p, 1);
499 if ( *p == ')' )
500 return 0; /* no parameters */
501 /* Check that the apparent function name isn't a keyword. */
502 /* We only need to check for keywords that could be followed */
503 /* by a left parenthesis (which, unfortunately, is most of them). */
504 { static char *words[] =
505 { "asm", "auto", "case", "char", "const", "double",
506 "extern", "float", "for", "if", "int", "long",
507 "register", "return", "short", "signed", "sizeof",
508 "static", "switch", "typedef", "unsigned",
509 "void", "volatile", "while", 0
510 };
511 char **key = words;
512 char *kp;
513 unsigned len = endfn - buf;
514
515 while ( (kp = *key) != 0 )
516 { if ( strlen(kp) == len && !strncmp(kp, buf, len) )
517 return 0; /* name is a keyword */
518 key++;
519 }
520 }
521 {
522 char *id = p;
523 int len;
524 /*
525 * Check for identifier1(identifier2) and not
526 * identifier1(void), or identifier1(identifier2, xxxx).
527 */
528
529 while ( isidchar(*p) )
530 p++;
531 len = p - id;
532 p = skipspace(p, 1);
533 if (*p == ',' ||
534 (*p == ')' && (len != 4 || strncmp(id, "void", 4)))
535 )
536 return 0; /* not a function */
537 }
538 /*
539 * If the last significant character was a ), we need to count
540 * parentheses, because it might be part of a formal parameter
541 * that is a procedure.
542 */
543 if (contin > 0) {
544 int level = 0;
545
546 for (p = skipspace(buf, 1); *p; p = skipspace(p + 1, 1))
547 level += (*p == '(' ? 1 : *p == ')' ? -1 : 0);
548 if (level > 0)
549 contin = -1;
550 }
551 return contin;
552}
553
554/* Convert a recognized function definition or header to K&R syntax. */
555int
556convert1(buf, out, header, convert_varargs)
557 char *buf;
558 FILE *out;
559 int header; /* Boolean */
560 int convert_varargs; /* Boolean */
561{ char *endfn;
562 char *p;
563 /*
564 * The breaks table contains pointers to the beginning and end
565 * of each argument.
566 */
567 char **breaks;
568 unsigned num_breaks = 2; /* for testing */
569 char **btop;
570 char **bp;
571 char **ap;
572 char *vararg = 0;
573
574 /* Pre-ANSI implementations don't agree on whether strchr */
575 /* is called strchr or index, so we open-code it here. */
576 for ( endfn = buf; *(endfn++) != '('; )
577 ;
578top: p = endfn;
579 breaks = (char **)malloc(sizeof(char *) * num_breaks * 2);
580 if ( breaks == NULL )
581 { /* Couldn't allocate break table, give up */
582 fprintf(stderr, "Unable to allocate break table!\n");
583 fputs(buf, out);
584 return -1;
585 }
586 btop = breaks + num_breaks * 2 - 2;
587 bp = breaks;
588 /* Parse the argument list */
589 do
590 { int level = 0;
591 char *lp = NULL;
592 char *rp = NULL;
593 char *end = NULL;
594
595 if ( bp >= btop )
596 { /* Filled up break table. */
597 /* Allocate a bigger one and start over. */
598 free((char *)breaks);
599 num_breaks <<= 1;
600 goto top;
601 }
602 *bp++ = p;
603 /* Find the end of the argument */
604 for ( ; end == NULL; p++ )
605 { switch(*p)
606 {
607 case ',':
608 if ( !level ) end = p;
609 break;
610 case '(':
611 if ( !level ) lp = p;
612 level++;
613 break;
614 case ')':
615 if ( --level < 0 ) end = p;
616 else rp = p;
617 break;
618 case '/':
619 if (p[1] == '*')
620 p = skipspace(p, 1) - 1;
621 break;
622 case '"':
623 p = scanstring(p, 1) - 1;
624 break;
625 default:
626 ;
627 }
628 }
629 /* Erase any embedded prototype parameters. */
630 if ( lp && rp )
631 writeblanks(lp + 1, rp);
632 p--; /* back up over terminator */
633 /* Find the name being declared. */
634 /* This is complicated because of procedure and */
635 /* array modifiers. */
636 for ( ; ; )
637 { p = skipspace(p - 1, -1);
638 switch ( *p )
639 {
640 case ']': /* skip array dimension(s) */
641 case ')': /* skip procedure args OR name */
642 { int level = 1;
643 while ( level )
644 switch ( *--p )
645 {
646 case ']': case ')':
647 level++;
648 break;
649 case '[': case '(':
650 level--;
651 break;
652 case '/':
653 if (p > buf && p[-1] == '*')
654 p = skipspace(p, -1) + 1;
655 break;
656 case '"':
657 p = scanstring(p, -1) + 1;
658 break;
659 default: ;
660 }
661 }
662 if ( *p == '(' && *skipspace(p + 1, 1) == '*' )
663 { /* We found the name being declared */
664 while ( !isidfirstchar(*p) )
665 p = skipspace(p, 1) + 1;
666 goto found;
667 }
668 break;
669 default:
670 goto found;
671 }
672 }
673found: if ( *p == '.' && p[-1] == '.' && p[-2] == '.' )
674 { if ( convert_varargs )
675 { *bp++ = "va_alist";
676 vararg = p-2;
677 }
678 else
679 { p++;
680 if ( bp == breaks + 1 ) /* sole argument */
681 writeblanks(breaks[0], p);
682 else
683 writeblanks(bp[-1] - 1, p);
684 bp--;
685 }
686 }
687 else
688 { while ( isidchar(*p) ) p--;
689 *bp++ = p+1;
690 }
691 p = end;
692 }
693 while ( *p++ == ',' );
694 *bp = p;
695 /* Make a special check for 'void' arglist */
696 if ( bp == breaks+2 )
697 { p = skipspace(breaks[0], 1);
698 if ( !strncmp(p, "void", 4) )
699 { p = skipspace(p+4, 1);
700 if ( p == breaks[2] - 1 )
701 { bp = breaks; /* yup, pretend arglist is empty */
702 writeblanks(breaks[0], p + 1);
703 }
704 }
705 }
706 /* Put out the function name and left parenthesis. */
707 p = buf;
708 while ( p != endfn ) putc(*p, out), p++;
709 /* Put out the declaration. */
710 if ( header )
711 { fputs(");", out);
712 for ( p = breaks[0]; *p; p++ )
713 if ( *p == '\r' || *p == '\n' )
714 putc(*p, out);
715 }
716 else
717 { for ( ap = breaks+1; ap < bp; ap += 2 )
718 { p = *ap;
719 while ( isidchar(*p) )
720 putc(*p, out), p++;
721 if ( ap < bp - 1 )
722 fputs(", ", out);
723 }
724 fputs(") ", out);
725 /* Put out the argument declarations */
726 for ( ap = breaks+2; ap <= bp; ap += 2 )
727 (*ap)[-1] = ';';
728 if ( vararg != 0 )
729 { *vararg = 0;
730 fputs(breaks[0], out); /* any prior args */
731 fputs("va_dcl", out); /* the final arg */
732 fputs(bp[0], out);
733 }
734 else
735 fputs(breaks[0], out);
736 }
737 free((char *)breaks);
738 return 0;
739}
diff --git a/gs/jpeg/ar-lib b/gs/jpeg/ar-lib
new file mode 100755
index 000000000..fe2301e71
--- /dev/null
+++ b/gs/jpeg/ar-lib
@@ -0,0 +1,270 @@
1#! /bin/sh
2# Wrapper for Microsoft lib.exe
3
4me=ar-lib
5scriptversion=2012-03-01.08; # UTC
6
7# Copyright (C) 2010-2013 Free Software Foundation, Inc.
8# Written by Peter Rosin <peda@lysator.liu.se>.
9#
10# This program is free software; you can redistribute it and/or modify
11# it under the terms of the GNU General Public License as published by
12# the Free Software Foundation; either version 2, or (at your option)
13# any later version.
14#
15# This program is distributed in the hope that it will be useful,
16# but WITHOUT ANY WARRANTY; without even the implied warranty of
17# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18# GNU General Public License for more details.
19#
20# You should have received a copy of the GNU General Public License
21# along with this program. If not, see <http://www.gnu.org/licenses/>.
22
23# As a special exception to the GNU General Public License, if you
24# distribute this file as part of a program that contains a
25# configuration script generated by Autoconf, you may include it under
26# the same distribution terms that you use for the rest of that program.
27
28# This file is maintained in Automake, please report
29# bugs to <bug-automake@gnu.org> or send patches to
30# <automake-patches@gnu.org>.
31
32
33# func_error message
34func_error ()
35{
36 echo "$me: $1" 1>&2
37 exit 1
38}
39
40file_conv=
41
42# func_file_conv build_file
43# Convert a $build file to $host form and store it in $file
44# Currently only supports Windows hosts.
45func_file_conv ()
46{
47 file=$1
48 case $file in
49 / | /[!/]*) # absolute file, and not a UNC file
50 if test -z "$file_conv"; then
51 # lazily determine how to convert abs files
52 case `uname -s` in
53 MINGW*)
54 file_conv=mingw
55 ;;
56 CYGWIN*)
57 file_conv=cygwin
58 ;;
59 *)
60 file_conv=wine
61 ;;
62 esac
63 fi
64 case $file_conv in
65 mingw)
66 file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
67 ;;
68 cygwin)
69 file=`cygpath -m "$file" || echo "$file"`
70 ;;
71 wine)
72 file=`winepath -w "$file" || echo "$file"`
73 ;;
74 esac
75 ;;
76 esac
77}
78
79# func_at_file at_file operation archive
80# Iterate over all members in AT_FILE performing OPERATION on ARCHIVE
81# for each of them.
82# When interpreting the content of the @FILE, do NOT use func_file_conv,
83# since the user would need to supply preconverted file names to
84# binutils ar, at least for MinGW.
85func_at_file ()
86{
87 operation=$2
88 archive=$3
89 at_file_contents=`cat "$1"`
90 eval set x "$at_file_contents"
91 shift
92
93 for member
94 do
95 $AR -NOLOGO $operation:"$member" "$archive" || exit $?
96 done
97}
98
99case $1 in
100 '')
101 func_error "no command. Try '$0 --help' for more information."
102 ;;
103 -h | --h*)
104 cat <<EOF
105Usage: $me [--help] [--version] PROGRAM ACTION ARCHIVE [MEMBER...]
106
107Members may be specified in a file named with @FILE.
108EOF
109 exit $?
110 ;;
111 -v | --v*)
112 echo "$me, version $scriptversion"
113 exit $?
114 ;;
115esac
116
117if test $# -lt 3; then
118 func_error "you must specify a program, an action and an archive"
119fi
120
121AR=$1
122shift
123while :
124do
125 if test $# -lt 2; then
126 func_error "you must specify a program, an action and an archive"
127 fi
128 case $1 in
129 -lib | -LIB \
130 | -ltcg | -LTCG \
131 | -machine* | -MACHINE* \
132 | -subsystem* | -SUBSYSTEM* \
133 | -verbose | -VERBOSE \
134 | -wx* | -WX* )
135 AR="$AR $1"
136 shift
137 ;;
138 *)
139 action=$1
140 shift
141 break
142 ;;
143 esac
144done
145orig_archive=$1
146shift
147func_file_conv "$orig_archive"
148archive=$file
149
150# strip leading dash in $action
151action=${action#-}
152
153delete=
154extract=
155list=
156quick=
157replace=
158index=
159create=
160
161while test -n "$action"
162do
163 case $action in
164 d*) delete=yes ;;
165 x*) extract=yes ;;
166 t*) list=yes ;;
167 q*) quick=yes ;;
168 r*) replace=yes ;;
169 s*) index=yes ;;
170 S*) ;; # the index is always updated implicitly
171 c*) create=yes ;;
172 u*) ;; # TODO: don't ignore the update modifier
173 v*) ;; # TODO: don't ignore the verbose modifier
174 *)
175 func_error "unknown action specified"
176 ;;
177 esac
178 action=${action#?}
179done
180
181case $delete$extract$list$quick$replace,$index in
182 yes,* | ,yes)
183 ;;
184 yesyes*)
185 func_error "more than one action specified"
186 ;;
187 *)
188 func_error "no action specified"
189 ;;
190esac
191
192if test -n "$delete"; then
193 if test ! -f "$orig_archive"; then
194 func_error "archive not found"
195 fi
196 for member
197 do
198 case $1 in
199 @*)
200 func_at_file "${1#@}" -REMOVE "$archive"
201 ;;
202 *)
203 func_file_conv "$1"
204 $AR -NOLOGO -REMOVE:"$file" "$archive" || exit $?
205 ;;
206 esac
207 done
208
209elif test -n "$extract"; then
210 if test ! -f "$orig_archive"; then
211 func_error "archive not found"
212 fi
213 if test $# -gt 0; then
214 for member
215 do
216 case $1 in
217 @*)
218 func_at_file "${1#@}" -EXTRACT "$archive"
219 ;;
220 *)
221 func_file_conv "$1"
222 $AR -NOLOGO -EXTRACT:"$file" "$archive" || exit $?
223 ;;
224 esac
225 done
226 else
227 $AR -NOLOGO -LIST "$archive" | sed -e 's/\\/\\\\/g' | while read member
228 do
229 $AR -NOLOGO -EXTRACT:"$member" "$archive" || exit $?
230 done
231 fi
232
233elif test -n "$quick$replace"; then
234 if test ! -f "$orig_archive"; then
235 if test -z "$create"; then
236 echo "$me: creating $orig_archive"
237 fi
238 orig_archive=
239 else
240 orig_archive=$archive
241 fi
242
243 for member
244 do
245 case $1 in
246 @*)
247 func_file_conv "${1#@}"
248 set x "$@" "@$file"
249 ;;
250 *)
251 func_file_conv "$1"
252 set x "$@" "$file"
253 ;;
254 esac
255 shift
256 shift
257 done
258
259 if test -n "$orig_archive"; then
260 $AR -NOLOGO -OUT:"$archive" "$orig_archive" "$@" || exit $?
261 else
262 $AR -NOLOGO -OUT:"$archive" "$@" || exit $?
263 fi
264
265elif test -n "$list"; then
266 if test ! -f "$orig_archive"; then
267 func_error "archive not found"
268 fi
269 $AR -NOLOGO -LIST "$archive" || exit $?
270fi
diff --git a/gs/jpeg/change.log b/gs/jpeg/change.log
index 729bca6cf..97cde1d43 100644
--- a/gs/jpeg/change.log
+++ b/gs/jpeg/change.log
@@ -1,6 +1,69 @@
1CHANGE LOG for Independent JPEG Group's JPEG software 1CHANGE LOG for Independent JPEG Group's JPEG software
2 2
3 3
4Version 9a 19-Jan-2014
5-----------------------
6
7Add support for wide gamut color spaces (JFIF version 2).
8Improve clarity and accuracy in color conversion modules.
9Note: Requires rebuild of test images.
10
11Extend the bit depth support to all values from 8 to 12
12(BITS_IN_JSAMPLE configuration option in jmorecfg.h).
13jpegtran now supports N bits sample data precision with all N from 8 to 12
14in a single instance. Thank to Roland Fassauer for inspiration.
15
16Try to resolve issues with new boolean type definition.
17Thank also to v4hn for suggestion.
18
19Enable option to use default Huffman tables for lossless compression
20(for hardware solution), and in this case improve lossless RGB compression
21with reversible color transform. Thank to Benny Alexandar for hint.
22
23Extend the entropy decoding structure, so that extraneous bytes between
24compressed scan data and following marker can be reported correctly.
25Thank to Nigel Tao for hint.
26
27Add jpegtran -wipe option and extension for -crop.
28Thank to Andrew Senior, David Clunie, and Josef Schmid for suggestion.
29
30
31Version 9 13-Jan-2013
32----------------------
33
34Add cjpeg -rgb1 option to create an RGB JPEG file, and insert
35a simple reversible color transform into the processing which
36significantly improves the compression.
37The recommended command for lossless coding of RGB images is now
38cjpeg -rgb1 -block 1 -arithmetic.
39As said, this option improves the compression significantly, but
40the files are not compatible with JPEG decoders prior to IJG v9
41due to the included color transform.
42The used color transform and marker signaling is compatible with
43other JPEG standards (e.g., JPEG-LS part 2).
44
45Remove the automatic de-ANSI-fication support (Automake 1.12).
46Thank also to Nitin A Kamble for suggestion.
47
48Add remark for jpeg_mem_dest() in jdatadst.c.
49Thank to Elie-Gregoire Khoury for the hint.
50
51Support files with invalid component identifiers (created
52by Adobe PDF). Thank to Robin Watts for the suggestion.
53
54Adapt full buffer case in jcmainct.c for use with scaled DCT.
55Thank to Sergii Biloshytskyi for the suggestion.
56
57Add type identifier for declaration of noreturn functions.
58Thank to Brett L. Moore for the suggestion.
59
60Correct argument type in format string, avoid compiler warnings.
61Thank to Vincent Torri for hint.
62
63Add missing #include directives in configuration checks, avoid
64configuration errors. Thank to John Spencer for the hint.
65
66
4Version 8d 15-Jan-2012 67Version 8d 15-Jan-2012
5----------------------- 68-----------------------
6 69
diff --git a/gs/jpeg/cjpeg.1 b/gs/jpeg/cjpeg.1
index c10f97126..8684331e9 100644
--- a/gs/jpeg/cjpeg.1
+++ b/gs/jpeg/cjpeg.1
@@ -1,4 +1,4 @@
1.TH CJPEG 1 "28 August 2011" 1.TH CJPEG 1 "23 November 2013"
2.SH NAME 2.SH NAME
3cjpeg \- compress an image file to a JPEG file 3cjpeg \- compress an image file to a JPEG file
4.SH SYNOPSIS 4.SH SYNOPSIS
@@ -53,9 +53,12 @@ you'll get a smaller JPEG file that takes less time to process.
53Create RGB JPEG file. 53Create RGB JPEG file.
54Using this switch suppresses the conversion from RGB 54Using this switch suppresses the conversion from RGB
55colorspace input to the default YCbCr JPEG colorspace. 55colorspace input to the default YCbCr JPEG colorspace.
56Use this switch in combination with the 56You can use this switch in combination with the
57.BI \-block " N" 57.BI \-block " N"
58switch (see below) for lossless JPEG coding. 58switch (see below) for lossless JPEG coding.
59See also the
60.B \-rgb1
61switch below.
59.TP 62.TP
60.B \-optimize 63.B \-optimize
61Perform optimization of entropy encoding parameters. Without this, default 64Perform optimization of entropy encoding parameters. Without this, default
@@ -166,8 +169,8 @@ Switches for advanced users:
166.B \-arithmetic 169.B \-arithmetic
167Use arithmetic coding. 170Use arithmetic coding.
168.B Caution: 171.B Caution:
169arithmetic coded JPEG is not yet widely implemented, so many decoders will be 172arithmetic coded JPEG is not yet widely implemented, so many decoders will
170unable to view an arithmetic coded JPEG file at all. 173be unable to view an arithmetic coded JPEG file at all.
171.TP 174.TP
172.BI \-block " N" 175.BI \-block " N"
173Set DCT block size. All N from 1 to 16 are possible. 176Set DCT block size. All N from 1 to 16 are possible.
@@ -181,6 +184,41 @@ An implementation of the JPEG SmartScale extension is required for this
181feature. SmartScale enabled JPEG is not yet widely implemented, so many 184feature. SmartScale enabled JPEG is not yet widely implemented, so many
182decoders will be unable to view a SmartScale extended JPEG file at all. 185decoders will be unable to view a SmartScale extended JPEG file at all.
183.TP 186.TP
187.B \-rgb1
188Create RGB JPEG file with reversible color transform.
189Works like the
190.B \-rgb
191switch (see above) and inserts a simple reversible color transform
192into the processing which significantly improves the compression.
193Use this switch in combination with the
194.BI \-block " N"
195switch (see above) for lossless JPEG coding.
196.B Caution:
197A decoder with inverse color transform support is required for
198this feature. Reversible color transform support is not yet
199widely implemented, so many decoders will be unable to view
200a reversible color transformed JPEG file at all.
201.TP
202.B \-bgycc
203Create big gamut YCC JPEG file.
204In this type of encoding the color difference components are quantized
205further by a factor of 2 compared to the normal Cb/Cr values, thus creating
206space to allow larger color values with higher saturation than the normal
207gamut limits to be encoded. In order to compensate for the loss of color
208fidelity compared to a normal YCC encoded file, the color quantization
209tables can be adjusted accordingly. For example,
210.B cjpeg \-bgycc \-quality
21180,90 will give similar results as
212.B cjpeg \-quality
21380.
214.B Caution:
215For correct decompression a decoder with big gamut YCC support (JFIF
216version 2) is required. An old decoder may or may not display a big
217gamut YCC encoded JPEG file, depending on JFIF version check and
218corresponding warning/error configuration. In case of a granted
219decompression the old decoder will display the image with half
220saturated colors.
221.TP
184.B \-dct int 222.B \-dct int
185Use integer DCT method (default). 223Use integer DCT method (default).
186.TP 224.TP
@@ -337,7 +375,8 @@ Communications of the ACM, April 1991 (vol. 34, no. 4), pp. 30-44.
337.SH AUTHOR 375.SH AUTHOR
338Independent JPEG Group 376Independent JPEG Group
339.SH BUGS 377.SH BUGS
340GIF input files are no longer supported, to avoid the Unisys LZW patent. 378GIF input files are no longer supported, to avoid the Unisys LZW patent
379(now expired).
341(Conversion of GIF files to JPEG is usually a bad idea anyway.) 380(Conversion of GIF files to JPEG is usually a bad idea anyway.)
342.PP 381.PP
343Not all variants of BMP and Targa file formats are supported. 382Not all variants of BMP and Targa file formats are supported.
diff --git a/gs/jpeg/cjpeg.c b/gs/jpeg/cjpeg.c
index 9a9a09a72..3cb07fa4b 100644
--- a/gs/jpeg/cjpeg.c
+++ b/gs/jpeg/cjpeg.c
@@ -2,7 +2,7 @@
2 * cjpeg.c 2 * cjpeg.c
3 * 3 *
4 * Copyright (C) 1991-1998, Thomas G. Lane. 4 * Copyright (C) 1991-1998, Thomas G. Lane.
5 * Modified 2003-2011 by Guido Vollbeding. 5 * Modified 2003-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -172,6 +172,10 @@ usage (void)
172#ifdef DCT_SCALING_SUPPORTED 172#ifdef DCT_SCALING_SUPPORTED
173 fprintf(stderr, " -block N DCT block size (1..16; default is 8)\n"); 173 fprintf(stderr, " -block N DCT block size (1..16; default is 8)\n");
174#endif 174#endif
175#if JPEG_LIB_VERSION_MAJOR >= 9
176 fprintf(stderr, " -rgb1 Create RGB JPEG file with reversible color transform\n");
177 fprintf(stderr, " -bgycc Create big gamut YCC JPEG file\n");
178#endif
175#ifdef DCT_ISLOW_SUPPORTED 179#ifdef DCT_ISLOW_SUPPORTED
176 fprintf(stderr, " -dct int Use integer DCT method%s\n", 180 fprintf(stderr, " -dct int Use integer DCT method%s\n",
177 (JDCT_DEFAULT == JDCT_ISLOW ? " (default)" : "")); 181 (JDCT_DEFAULT == JDCT_ISLOW ? " (default)" : ""));
@@ -310,10 +314,27 @@ parse_switches (j_compress_ptr cinfo, int argc, char **argv,
310 /* Force a monochrome JPEG file to be generated. */ 314 /* Force a monochrome JPEG file to be generated. */
311 jpeg_set_colorspace(cinfo, JCS_GRAYSCALE); 315 jpeg_set_colorspace(cinfo, JCS_GRAYSCALE);
312 316
313 } else if (keymatch(arg, "rgb", 3)) { 317 } else if (keymatch(arg, "rgb", 3) || keymatch(arg, "rgb1", 4)) {
314 /* Force an RGB JPEG file to be generated. */ 318 /* Force an RGB JPEG file to be generated. */
319#if JPEG_LIB_VERSION_MAJOR >= 9
320 /* Note: Entropy table assignment in jpeg_set_colorspace depends
321 * on color_transform.
322 */
323 cinfo->color_transform = arg[3] ? JCT_SUBTRACT_GREEN : JCT_NONE;
324#endif
315 jpeg_set_colorspace(cinfo, JCS_RGB); 325 jpeg_set_colorspace(cinfo, JCS_RGB);
316 326
327 } else if (keymatch(arg, "bgycc", 5)) {
328 /* Force a big gamut YCC JPEG file to be generated. */
329#if JPEG_LIB_VERSION_MAJOR >= 9 && \
330 (JPEG_LIB_VERSION_MAJOR > 9 || JPEG_LIB_VERSION_MINOR >= 1)
331 jpeg_set_colorspace(cinfo, JCS_BG_YCC);
332#else
333 fprintf(stderr, "%s: sorry, BG_YCC colorspace not supported\n",
334 progname);
335 exit(EXIT_FAILURE);
336#endif
337
317 } else if (keymatch(arg, "maxmemory", 3)) { 338 } else if (keymatch(arg, "maxmemory", 3)) {
318 /* Maximum memory in Kb (or Mb with 'm'). */ 339 /* Maximum memory in Kb (or Mb with 'm'). */
319 long lval; 340 long lval;
@@ -328,7 +349,7 @@ parse_switches (j_compress_ptr cinfo, int argc, char **argv,
328 cinfo->mem->max_memory_to_use = lval * 1000L; 349 cinfo->mem->max_memory_to_use = lval * 1000L;
329 350
330 } else if (keymatch(arg, "nosmooth", 3)) { 351 } else if (keymatch(arg, "nosmooth", 3)) {
331 /* Suppress fancy downsampling */ 352 /* Suppress fancy downsampling. */
332 cinfo->do_fancy_downsampling = FALSE; 353 cinfo->do_fancy_downsampling = FALSE;
333 354
334 } else if (keymatch(arg, "optimize", 1) || keymatch(arg, "optimise", 1)) { 355 } else if (keymatch(arg, "optimize", 1) || keymatch(arg, "optimise", 1)) {
@@ -414,7 +435,7 @@ parse_switches (j_compress_ptr cinfo, int argc, char **argv,
414 /* Scale the image by a fraction M/N. */ 435 /* Scale the image by a fraction M/N. */
415 if (++argn >= argc) /* advance to next argument */ 436 if (++argn >= argc) /* advance to next argument */
416 usage(); 437 usage();
417 if (sscanf(argv[argn], "%d/%d", 438 if (sscanf(argv[argn], "%u/%u",
418 &cinfo->scale_num, &cinfo->scale_denom) != 2) 439 &cinfo->scale_num, &cinfo->scale_denom) != 2)
419 usage(); 440 usage();
420 441
diff --git a/gs/jpeg/compile b/gs/jpeg/compile
new file mode 100755
index 000000000..531136b06
--- /dev/null
+++ b/gs/jpeg/compile
@@ -0,0 +1,347 @@
1#! /bin/sh
2# Wrapper for compilers which do not understand '-c -o'.
3
4scriptversion=2012-10-14.11; # UTC
5
6# Copyright (C) 1999-2013 Free Software Foundation, Inc.
7# Written by Tom Tromey <tromey@cygnus.com>.
8#
9# This program is free software; you can redistribute it and/or modify
10# it under the terms of the GNU General Public License as published by
11# the Free Software Foundation; either version 2, or (at your option)
12# any later version.
13#
14# This program is distributed in the hope that it will be useful,
15# but WITHOUT ANY WARRANTY; without even the implied warranty of
16# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17# GNU General Public License for more details.
18#
19# You should have received a copy of the GNU General Public License
20# along with this program. If not, see <http://www.gnu.org/licenses/>.
21
22# As a special exception to the GNU General Public License, if you
23# distribute this file as part of a program that contains a
24# configuration script generated by Autoconf, you may include it under
25# the same distribution terms that you use for the rest of that program.
26
27# This file is maintained in Automake, please report
28# bugs to <bug-automake@gnu.org> or send patches to
29# <automake-patches@gnu.org>.
30
31nl='
32'
33
34# We need space, tab and new line, in precisely that order. Quoting is
35# there to prevent tools from complaining about whitespace usage.
36IFS=" "" $nl"
37
38file_conv=
39
40# func_file_conv build_file lazy
41# Convert a $build file to $host form and store it in $file
42# Currently only supports Windows hosts. If the determined conversion
43# type is listed in (the comma separated) LAZY, no conversion will
44# take place.
45func_file_conv ()
46{
47 file=$1
48 case $file in
49 / | /[!/]*) # absolute file, and not a UNC file
50 if test -z "$file_conv"; then
51 # lazily determine how to convert abs files
52 case `uname -s` in
53 MINGW*)
54 file_conv=mingw
55 ;;
56 CYGWIN*)
57 file_conv=cygwin
58 ;;
59 *)
60 file_conv=wine
61 ;;
62 esac
63 fi
64 case $file_conv/,$2, in
65 *,$file_conv,*)
66 ;;
67 mingw/*)
68 file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
69 ;;
70 cygwin/*)
71 file=`cygpath -m "$file" || echo "$file"`
72 ;;
73 wine/*)
74 file=`winepath -w "$file" || echo "$file"`
75 ;;
76 esac
77 ;;
78 esac
79}
80
81# func_cl_dashL linkdir
82# Make cl look for libraries in LINKDIR
83func_cl_dashL ()
84{
85 func_file_conv "$1"
86 if test -z "$lib_path"; then
87 lib_path=$file
88 else
89 lib_path="$lib_path;$file"
90 fi
91 linker_opts="$linker_opts -LIBPATH:$file"
92}
93
94# func_cl_dashl library
95# Do a library search-path lookup for cl
96func_cl_dashl ()
97{
98 lib=$1
99 found=no
100 save_IFS=$IFS
101 IFS=';'
102 for dir in $lib_path $LIB
103 do
104 IFS=$save_IFS
105 if $shared && test -f "$dir/$lib.dll.lib"; then
106 found=yes
107 lib=$dir/$lib.dll.lib
108 break
109 fi
110 if test -f "$dir/$lib.lib"; then
111 found=yes
112 lib=$dir/$lib.lib
113 break
114 fi
115 if test -f "$dir/lib$lib.a"; then
116 found=yes
117 lib=$dir/lib$lib.a
118 break
119 fi
120 done
121 IFS=$save_IFS
122
123 if test "$found" != yes; then
124 lib=$lib.lib
125 fi
126}
127
128# func_cl_wrapper cl arg...
129# Adjust compile command to suit cl
130func_cl_wrapper ()
131{
132 # Assume a capable shell
133 lib_path=
134 shared=:
135 linker_opts=
136 for arg
137 do
138 if test -n "$eat"; then
139 eat=
140 else
141 case $1 in
142 -o)
143 # configure might choose to run compile as 'compile cc -o foo foo.c'.
144 eat=1
145 case $2 in
146 *.o | *.[oO][bB][jJ])
147 func_file_conv "$2"
148 set x "$@" -Fo"$file"
149 shift
150 ;;
151 *)
152 func_file_conv "$2"
153 set x "$@" -Fe"$file"
154 shift
155 ;;
156 esac
157 ;;
158 -I)
159 eat=1
160 func_file_conv "$2" mingw
161 set x "$@" -I"$file"
162 shift
163 ;;
164 -I*)
165 func_file_conv "${1#-I}" mingw
166 set x "$@" -I"$file"
167 shift
168 ;;
169 -l)
170 eat=1
171 func_cl_dashl "$2"
172 set x "$@" "$lib"
173 shift
174 ;;
175 -l*)
176 func_cl_dashl "${1#-l}"
177 set x "$@" "$lib"
178 shift
179 ;;
180 -L)
181 eat=1
182 func_cl_dashL "$2"
183 ;;
184 -L*)
185 func_cl_dashL "${1#-L}"
186 ;;
187 -static)
188 shared=false
189 ;;
190 -Wl,*)
191 arg=${1#-Wl,}
192 save_ifs="$IFS"; IFS=','
193 for flag in $arg; do
194 IFS="$save_ifs"
195 linker_opts="$linker_opts $flag"
196 done
197 IFS="$save_ifs"
198 ;;
199 -Xlinker)
200 eat=1
201 linker_opts="$linker_opts $2"
202 ;;
203 -*)
204 set x "$@" "$1"
205 shift
206 ;;
207 *.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
208 func_file_conv "$1"
209 set x "$@" -Tp"$file"
210 shift
211 ;;
212 *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
213 func_file_conv "$1" mingw
214 set x "$@" "$file"
215 shift
216 ;;
217 *)
218 set x "$@" "$1"
219 shift
220 ;;
221 esac
222 fi
223 shift
224 done
225 if test -n "$linker_opts"; then
226 linker_opts="-link$linker_opts"
227 fi
228 exec "$@" $linker_opts
229 exit 1
230}
231
232eat=
233
234case $1 in
235 '')
236 echo "$0: No command. Try '$0 --help' for more information." 1>&2
237 exit 1;
238 ;;
239 -h | --h*)
240 cat <<\EOF
241Usage: compile [--help] [--version] PROGRAM [ARGS]
242
243Wrapper for compilers which do not understand '-c -o'.
244Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
245arguments, and rename the output as expected.
246
247If you are trying to build a whole package this is not the
248right script to run: please start by reading the file 'INSTALL'.
249
250Report bugs to <bug-automake@gnu.org>.
251EOF
252 exit $?
253 ;;
254 -v | --v*)
255 echo "compile $scriptversion"
256 exit $?
257 ;;
258 cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
259 func_cl_wrapper "$@" # Doesn't return...
260 ;;
261esac
262
263ofile=
264cfile=
265
266for arg
267do
268 if test -n "$eat"; then
269 eat=
270 else
271 case $1 in
272 -o)
273 # configure might choose to run compile as 'compile cc -o foo foo.c'.
274 # So we strip '-o arg' only if arg is an object.
275 eat=1
276 case $2 in
277 *.o | *.obj)
278 ofile=$2
279 ;;
280 *)
281 set x "$@" -o "$2"
282 shift
283 ;;
284 esac
285 ;;
286 *.c)
287 cfile=$1
288 set x "$@" "$1"
289 shift
290 ;;
291 *)
292 set x "$@" "$1"
293 shift
294 ;;
295 esac
296 fi
297 shift
298done
299
300if test -z "$ofile" || test -z "$cfile"; then
301 # If no '-o' option was seen then we might have been invoked from a
302 # pattern rule where we don't need one. That is ok -- this is a
303 # normal compilation that the losing compiler can handle. If no
304 # '.c' file was seen then we are probably linking. That is also
305 # ok.
306 exec "$@"
307fi
308
309# Name of file we expect compiler to create.
310cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
311
312# Create the lock directory.
313# Note: use '[/\\:.-]' here to ensure that we don't use the same name
314# that we are using for the .o file. Also, base the name on the expected
315# object file name, since that is what matters with a parallel build.
316lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
317while true; do
318 if mkdir "$lockdir" >/dev/null 2>&1; then
319 break
320 fi
321 sleep 1
322done
323# FIXME: race condition here if user kills between mkdir and trap.
324trap "rmdir '$lockdir'; exit 1" 1 2 15
325
326# Run the compile.
327"$@"
328ret=$?
329
330if test -f "$cofile"; then
331 test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
332elif test -f "${cofile}bj"; then
333 test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
334fi
335
336rmdir "$lockdir"
337exit $ret
338
339# Local Variables:
340# mode: shell-script
341# sh-indentation: 2
342# eval: (add-hook 'write-file-hooks 'time-stamp)
343# time-stamp-start: "scriptversion="
344# time-stamp-format: "%:y-%02m-%02d.%02H"
345# time-stamp-time-zone: "UTC"
346# time-stamp-end: "; # UTC"
347# End:
diff --git a/gs/jpeg/config.guess b/gs/jpeg/config.guess
index 8152efd67..9afd67620 100755
--- a/gs/jpeg/config.guess
+++ b/gs/jpeg/config.guess
@@ -1,14 +1,12 @@
1#! /bin/sh 1#! /bin/sh
2# Attempt to guess a canonical system name. 2# Attempt to guess a canonical system name.
3# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 3# Copyright 1992-2013 Free Software Foundation, Inc.
4# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
5# 2011 Free Software Foundation, Inc.
6 4
7timestamp='2011-11-11' 5timestamp='2013-11-29'
8 6
9# This file is free software; you can redistribute it and/or modify it 7# This file is free software; you can redistribute it and/or modify it
10# under the terms of the GNU General Public License as published by 8# under the terms of the GNU General Public License as published by
11# the Free Software Foundation; either version 2 of the License, or 9# the Free Software Foundation; either version 3 of the License, or
12# (at your option) any later version. 10# (at your option) any later version.
13# 11#
14# This program is distributed in the hope that it will be useful, but 12# This program is distributed in the hope that it will be useful, but
@@ -17,26 +15,22 @@ timestamp='2011-11-11'
17# General Public License for more details. 15# General Public License for more details.
18# 16#
19# You should have received a copy of the GNU General Public License 17# You should have received a copy of the GNU General Public License
20# along with this program; if not, write to the Free Software 18# along with this program; if not, see <http://www.gnu.org/licenses/>.
21# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
22# 02110-1301, USA.
23# 19#
24# As a special exception to the GNU General Public License, if you 20# As a special exception to the GNU General Public License, if you
25# distribute this file as part of a program that contains a 21# distribute this file as part of a program that contains a
26# configuration script generated by Autoconf, you may include it under 22# configuration script generated by Autoconf, you may include it under
27# the same distribution terms that you use for the rest of that program. 23# the same distribution terms that you use for the rest of that
28 24# program. This Exception is an additional permission under section 7
29 25# of the GNU General Public License, version 3 ("GPLv3").
30# Originally written by Per Bothner. Please send patches (context
31# diff format) to <config-patches@gnu.org> and include a ChangeLog
32# entry.
33# 26#
34# This script attempts to guess a canonical system name similar to 27# Originally written by Per Bothner.
35# config.sub. If it succeeds, it prints the system name on stdout, and
36# exits with 0. Otherwise, it exits with 1.
37# 28#
38# You can get the latest version of this script from: 29# You can get the latest version of this script from:
39# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD 30# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
31#
32# Please send patches with a ChangeLog entry to config-patches@gnu.org.
33
40 34
41me=`echo "$0" | sed -e 's,.*/,,'` 35me=`echo "$0" | sed -e 's,.*/,,'`
42 36
@@ -56,9 +50,7 @@ version="\
56GNU config.guess ($timestamp) 50GNU config.guess ($timestamp)
57 51
58Originally written by Per Bothner. 52Originally written by Per Bothner.
59Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 53Copyright 1992-2013 Free Software Foundation, Inc.
602001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free
61Software Foundation, Inc.
62 54
63This is free software; see the source for copying conditions. There is NO 55This is free software; see the source for copying conditions. There is NO
64warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 56warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -140,12 +132,33 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
140UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown 132UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
141UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown 133UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
142 134
135case "${UNAME_SYSTEM}" in
136Linux|GNU|GNU/*)
137 # If the system lacks a compiler, then just pick glibc.
138 # We could probably try harder.
139 LIBC=gnu
140
141 eval $set_cc_for_build
142 cat <<-EOF > $dummy.c
143 #include <features.h>
144 #if defined(__UCLIBC__)
145 LIBC=uclibc
146 #elif defined(__dietlibc__)
147 LIBC=dietlibc
148 #else
149 LIBC=gnu
150 #endif
151 EOF
152 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
153 ;;
154esac
155
143# Note: order is significant - the case branches are not exclusive. 156# Note: order is significant - the case branches are not exclusive.
144 157
145case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 158case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
146 *:NetBSD:*:*) 159 *:NetBSD:*:*)
147 # NetBSD (nbsd) targets should (where applicable) match one or 160 # NetBSD (nbsd) targets should (where applicable) match one or
148 # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, 161 # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
149 # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently 162 # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
150 # switched to ELF, *-*-netbsd* would select the old 163 # switched to ELF, *-*-netbsd* would select the old
151 # object file format. This provides both forward 164 # object file format. This provides both forward
@@ -202,6 +215,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
202 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. 215 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
203 echo "${machine}-${os}${release}" 216 echo "${machine}-${os}${release}"
204 exit ;; 217 exit ;;
218 *:Bitrig:*:*)
219 UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
220 echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
221 exit ;;
205 *:OpenBSD:*:*) 222 *:OpenBSD:*:*)
206 UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` 223 UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
207 echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} 224 echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
@@ -304,7 +321,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
304 arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) 321 arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
305 echo arm-acorn-riscix${UNAME_RELEASE} 322 echo arm-acorn-riscix${UNAME_RELEASE}
306 exit ;; 323 exit ;;
307 arm:riscos:*:*|arm:RISCOS:*:*) 324 arm*:riscos:*:*|arm*:RISCOS:*:*)
308 echo arm-unknown-riscos 325 echo arm-unknown-riscos
309 exit ;; 326 exit ;;
310 SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) 327 SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
@@ -803,6 +820,9 @@ EOF
803 i*:CYGWIN*:*) 820 i*:CYGWIN*:*)
804 echo ${UNAME_MACHINE}-pc-cygwin 821 echo ${UNAME_MACHINE}-pc-cygwin
805 exit ;; 822 exit ;;
823 *:MINGW64*:*)
824 echo ${UNAME_MACHINE}-pc-mingw64
825 exit ;;
806 *:MINGW*:*) 826 *:MINGW*:*)
807 echo ${UNAME_MACHINE}-pc-mingw32 827 echo ${UNAME_MACHINE}-pc-mingw32
808 exit ;; 828 exit ;;
@@ -854,15 +874,22 @@ EOF
854 exit ;; 874 exit ;;
855 *:GNU:*:*) 875 *:GNU:*:*)
856 # the GNU system 876 # the GNU system
857 echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` 877 echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
858 exit ;; 878 exit ;;
859 *:GNU/*:*:*) 879 *:GNU/*:*:*)
860 # other systems with GNU libc and userland 880 # other systems with GNU libc and userland
861 echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu 881 echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
862 exit ;; 882 exit ;;
863 i*86:Minix:*:*) 883 i*86:Minix:*:*)
864 echo ${UNAME_MACHINE}-pc-minix 884 echo ${UNAME_MACHINE}-pc-minix
865 exit ;; 885 exit ;;
886 aarch64:Linux:*:*)
887 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
888 exit ;;
889 aarch64_be:Linux:*:*)
890 UNAME_MACHINE=aarch64_be
891 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
892 exit ;;
866 alpha:Linux:*:*) 893 alpha:Linux:*:*)
867 case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in 894 case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
868 EV5) UNAME_MACHINE=alphaev5 ;; 895 EV5) UNAME_MACHINE=alphaev5 ;;
@@ -874,59 +901,54 @@ EOF
874 EV68*) UNAME_MACHINE=alphaev68 ;; 901 EV68*) UNAME_MACHINE=alphaev68 ;;
875 esac 902 esac
876 objdump --private-headers /bin/sh | grep -q ld.so.1 903 objdump --private-headers /bin/sh | grep -q ld.so.1
877 if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi 904 if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
878 echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} 905 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
906 exit ;;
907 arc:Linux:*:* | arceb:Linux:*:*)
908 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
879 exit ;; 909 exit ;;
880 arm*:Linux:*:*) 910 arm*:Linux:*:*)
881 eval $set_cc_for_build 911 eval $set_cc_for_build
882 if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ 912 if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
883 | grep -q __ARM_EABI__ 913 | grep -q __ARM_EABI__
884 then 914 then
885 echo ${UNAME_MACHINE}-unknown-linux-gnu 915 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
886 else 916 else
887 if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ 917 if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
888 | grep -q __ARM_PCS_VFP 918 | grep -q __ARM_PCS_VFP
889 then 919 then
890 echo ${UNAME_MACHINE}-unknown-linux-gnueabi 920 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
891 else 921 else
892 echo ${UNAME_MACHINE}-unknown-linux-gnueabihf 922 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
893 fi 923 fi
894 fi 924 fi
895 exit ;; 925 exit ;;
896 avr32*:Linux:*:*) 926 avr32*:Linux:*:*)
897 echo ${UNAME_MACHINE}-unknown-linux-gnu 927 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
898 exit ;; 928 exit ;;
899 cris:Linux:*:*) 929 cris:Linux:*:*)
900 echo cris-axis-linux-gnu 930 echo ${UNAME_MACHINE}-axis-linux-${LIBC}
901 exit ;; 931 exit ;;
902 crisv32:Linux:*:*) 932 crisv32:Linux:*:*)
903 echo crisv32-axis-linux-gnu 933 echo ${UNAME_MACHINE}-axis-linux-${LIBC}
904 exit ;; 934 exit ;;
905 frv:Linux:*:*) 935 frv:Linux:*:*)
906 echo frv-unknown-linux-gnu 936 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
907 exit ;; 937 exit ;;
908 hexagon:Linux:*:*) 938 hexagon:Linux:*:*)
909 echo hexagon-unknown-linux-gnu 939 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
910 exit ;; 940 exit ;;
911 i*86:Linux:*:*) 941 i*86:Linux:*:*)
912 LIBC=gnu 942 echo ${UNAME_MACHINE}-pc-linux-${LIBC}
913 eval $set_cc_for_build
914 sed 's/^ //' << EOF >$dummy.c
915 #ifdef __dietlibc__
916 LIBC=dietlibc
917 #endif
918EOF
919 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
920 echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
921 exit ;; 943 exit ;;
922 ia64:Linux:*:*) 944 ia64:Linux:*:*)
923 echo ${UNAME_MACHINE}-unknown-linux-gnu 945 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
924 exit ;; 946 exit ;;
925 m32r*:Linux:*:*) 947 m32r*:Linux:*:*)
926 echo ${UNAME_MACHINE}-unknown-linux-gnu 948 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
927 exit ;; 949 exit ;;
928 m68*:Linux:*:*) 950 m68*:Linux:*:*)
929 echo ${UNAME_MACHINE}-unknown-linux-gnu 951 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
930 exit ;; 952 exit ;;
931 mips:Linux:*:* | mips64:Linux:*:*) 953 mips:Linux:*:* | mips64:Linux:*:*)
932 eval $set_cc_for_build 954 eval $set_cc_for_build
@@ -945,54 +967,63 @@ EOF
945 #endif 967 #endif
946EOF 968EOF
947 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` 969 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
948 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } 970 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
949 ;; 971 ;;
972 or1k:Linux:*:*)
973 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
974 exit ;;
950 or32:Linux:*:*) 975 or32:Linux:*:*)
951 echo or32-unknown-linux-gnu 976 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
952 exit ;; 977 exit ;;
953 padre:Linux:*:*) 978 padre:Linux:*:*)
954 echo sparc-unknown-linux-gnu 979 echo sparc-unknown-linux-${LIBC}
955 exit ;; 980 exit ;;
956 parisc64:Linux:*:* | hppa64:Linux:*:*) 981 parisc64:Linux:*:* | hppa64:Linux:*:*)
957 echo hppa64-unknown-linux-gnu 982 echo hppa64-unknown-linux-${LIBC}
958 exit ;; 983 exit ;;
959 parisc:Linux:*:* | hppa:Linux:*:*) 984 parisc:Linux:*:* | hppa:Linux:*:*)
960 # Look for CPU level 985 # Look for CPU level
961 case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in 986 case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
962 PA7*) echo hppa1.1-unknown-linux-gnu ;; 987 PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
963 PA8*) echo hppa2.0-unknown-linux-gnu ;; 988 PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
964 *) echo hppa-unknown-linux-gnu ;; 989 *) echo hppa-unknown-linux-${LIBC} ;;
965 esac 990 esac
966 exit ;; 991 exit ;;
967 ppc64:Linux:*:*) 992 ppc64:Linux:*:*)
968 echo powerpc64-unknown-linux-gnu 993 echo powerpc64-unknown-linux-${LIBC}
969 exit ;; 994 exit ;;
970 ppc:Linux:*:*) 995 ppc:Linux:*:*)
971 echo powerpc-unknown-linux-gnu 996 echo powerpc-unknown-linux-${LIBC}
997 exit ;;
998 ppc64le:Linux:*:*)
999 echo powerpc64le-unknown-linux-${LIBC}
1000 exit ;;
1001 ppcle:Linux:*:*)
1002 echo powerpcle-unknown-linux-${LIBC}
972 exit ;; 1003 exit ;;
973 s390:Linux:*:* | s390x:Linux:*:*) 1004 s390:Linux:*:* | s390x:Linux:*:*)
974 echo ${UNAME_MACHINE}-ibm-linux 1005 echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
975 exit ;; 1006 exit ;;
976 sh64*:Linux:*:*) 1007 sh64*:Linux:*:*)
977 echo ${UNAME_MACHINE}-unknown-linux-gnu 1008 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
978 exit ;; 1009 exit ;;
979 sh*:Linux:*:*) 1010 sh*:Linux:*:*)
980 echo ${UNAME_MACHINE}-unknown-linux-gnu 1011 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
981 exit ;; 1012 exit ;;
982 sparc:Linux:*:* | sparc64:Linux:*:*) 1013 sparc:Linux:*:* | sparc64:Linux:*:*)
983 echo ${UNAME_MACHINE}-unknown-linux-gnu 1014 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
984 exit ;; 1015 exit ;;
985 tile*:Linux:*:*) 1016 tile*:Linux:*:*)
986 echo ${UNAME_MACHINE}-unknown-linux-gnu 1017 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
987 exit ;; 1018 exit ;;
988 vax:Linux:*:*) 1019 vax:Linux:*:*)
989 echo ${UNAME_MACHINE}-dec-linux-gnu 1020 echo ${UNAME_MACHINE}-dec-linux-${LIBC}
990 exit ;; 1021 exit ;;
991 x86_64:Linux:*:*) 1022 x86_64:Linux:*:*)
992 echo x86_64-unknown-linux-gnu 1023 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
993 exit ;; 1024 exit ;;
994 xtensa*:Linux:*:*) 1025 xtensa*:Linux:*:*)
995 echo ${UNAME_MACHINE}-unknown-linux-gnu 1026 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
996 exit ;; 1027 exit ;;
997 i*86:DYNIX/ptx:4*:*) 1028 i*86:DYNIX/ptx:4*:*)
998 # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. 1029 # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
@@ -1196,6 +1227,9 @@ EOF
1196 BePC:Haiku:*:*) # Haiku running on Intel PC compatible. 1227 BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
1197 echo i586-pc-haiku 1228 echo i586-pc-haiku
1198 exit ;; 1229 exit ;;
1230 x86_64:Haiku:*:*)
1231 echo x86_64-unknown-haiku
1232 exit ;;
1199 SX-4:SUPER-UX:*:*) 1233 SX-4:SUPER-UX:*:*)
1200 echo sx4-nec-superux${UNAME_RELEASE} 1234 echo sx4-nec-superux${UNAME_RELEASE}
1201 exit ;; 1235 exit ;;
@@ -1222,19 +1256,31 @@ EOF
1222 exit ;; 1256 exit ;;
1223 *:Darwin:*:*) 1257 *:Darwin:*:*)
1224 UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown 1258 UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1225 case $UNAME_PROCESSOR in 1259 eval $set_cc_for_build
1226 i386) 1260 if test "$UNAME_PROCESSOR" = unknown ; then
1227 eval $set_cc_for_build 1261 UNAME_PROCESSOR=powerpc
1228 if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then 1262 fi
1229 if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ 1263 if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
1230 (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ 1264 if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
1231 grep IS_64BIT_ARCH >/dev/null 1265 if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1232 then 1266 (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
1233 UNAME_PROCESSOR="x86_64" 1267 grep IS_64BIT_ARCH >/dev/null
1234 fi 1268 then
1235 fi ;; 1269 case $UNAME_PROCESSOR in
1236 unknown) UNAME_PROCESSOR=powerpc ;; 1270 i386) UNAME_PROCESSOR=x86_64 ;;
1237 esac 1271 powerpc) UNAME_PROCESSOR=powerpc64 ;;
1272 esac
1273 fi
1274 fi
1275 elif test "$UNAME_PROCESSOR" = i386 ; then
1276 # Avoid executing cc on OS X 10.9, as it ships with a stub
1277 # that puts up a graphical alert prompting to install
1278 # developer tools. Any system running Mac OS X 10.7 or
1279 # later (Darwin 11 and later) is required to have a 64-bit
1280 # processor. This is not true of the ARM version of Darwin
1281 # that Apple uses in portable devices.
1282 UNAME_PROCESSOR=x86_64
1283 fi
1238 echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} 1284 echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1239 exit ;; 1285 exit ;;
1240 *:procnto*:*:* | *:QNX:[0123456789]*:*) 1286 *:procnto*:*:* | *:QNX:[0123456789]*:*)
@@ -1251,7 +1297,7 @@ EOF
1251 NEO-?:NONSTOP_KERNEL:*:*) 1297 NEO-?:NONSTOP_KERNEL:*:*)
1252 echo neo-tandem-nsk${UNAME_RELEASE} 1298 echo neo-tandem-nsk${UNAME_RELEASE}
1253 exit ;; 1299 exit ;;
1254 NSE-?:NONSTOP_KERNEL:*:*) 1300 NSE-*:NONSTOP_KERNEL:*:*)
1255 echo nse-tandem-nsk${UNAME_RELEASE} 1301 echo nse-tandem-nsk${UNAME_RELEASE}
1256 exit ;; 1302 exit ;;
1257 NSR-?:NONSTOP_KERNEL:*:*) 1303 NSR-?:NONSTOP_KERNEL:*:*)
@@ -1320,11 +1366,11 @@ EOF
1320 i*86:AROS:*:*) 1366 i*86:AROS:*:*)
1321 echo ${UNAME_MACHINE}-pc-aros 1367 echo ${UNAME_MACHINE}-pc-aros
1322 exit ;; 1368 exit ;;
1369 x86_64:VMkernel:*:*)
1370 echo ${UNAME_MACHINE}-unknown-esx
1371 exit ;;
1323esac 1372esac
1324 1373
1325#echo '(No uname command or uname output not recognized.)' 1>&2
1326#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1327
1328eval $set_cc_for_build 1374eval $set_cc_for_build
1329cat >$dummy.c <<EOF 1375cat >$dummy.c <<EOF
1330#ifdef _SEQUENT_ 1376#ifdef _SEQUENT_
diff --git a/gs/jpeg/config.sub b/gs/jpeg/config.sub
index e76eaf472..61cb4bc22 100755
--- a/gs/jpeg/config.sub
+++ b/gs/jpeg/config.sub
@@ -1,38 +1,31 @@
1#! /bin/sh 1#! /bin/sh
2# Configuration validation subroutine script. 2# Configuration validation subroutine script.
3# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 3# Copyright 1992-2013 Free Software Foundation, Inc.
4# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
5# 2011 Free Software Foundation, Inc.
6 4
7timestamp='2011-11-11' 5timestamp='2013-10-01'
8 6
9# This file is (in principle) common to ALL GNU software. 7# This file is free software; you can redistribute it and/or modify it
10# The presence of a machine in this file suggests that SOME GNU software 8# under the terms of the GNU General Public License as published by
11# can handle that machine. It does not imply ALL GNU software can. 9# the Free Software Foundation; either version 3 of the License, or
12#
13# This file is free software; you can redistribute it and/or modify
14# it under the terms of the GNU General Public License as published by
15# the Free Software Foundation; either version 2 of the License, or
16# (at your option) any later version. 10# (at your option) any later version.
17# 11#
18# This program is distributed in the hope that it will be useful, 12# This program is distributed in the hope that it will be useful, but
19# but WITHOUT ANY WARRANTY; without even the implied warranty of 13# WITHOUT ANY WARRANTY; without even the implied warranty of
20# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21# GNU General Public License for more details. 15# General Public License for more details.
22# 16#
23# You should have received a copy of the GNU General Public License 17# You should have received a copy of the GNU General Public License
24# along with this program; if not, write to the Free Software 18# along with this program; if not, see <http://www.gnu.org/licenses/>.
25# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
26# 02110-1301, USA.
27# 19#
28# As a special exception to the GNU General Public License, if you 20# As a special exception to the GNU General Public License, if you
29# distribute this file as part of a program that contains a 21# distribute this file as part of a program that contains a
30# configuration script generated by Autoconf, you may include it under 22# configuration script generated by Autoconf, you may include it under
31# the same distribution terms that you use for the rest of that program. 23# the same distribution terms that you use for the rest of that
24# program. This Exception is an additional permission under section 7
25# of the GNU General Public License, version 3 ("GPLv3").
32 26
33 27
34# Please send patches to <config-patches@gnu.org>. Submit a context 28# Please send patches with a ChangeLog entry to config-patches@gnu.org.
35# diff and a properly formatted GNU ChangeLog entry.
36# 29#
37# Configuration subroutine to validate and canonicalize a configuration type. 30# Configuration subroutine to validate and canonicalize a configuration type.
38# Supply the specified configuration type as an argument. 31# Supply the specified configuration type as an argument.
@@ -75,9 +68,7 @@ Report bugs and patches to <config-patches@gnu.org>."
75version="\ 68version="\
76GNU config.sub ($timestamp) 69GNU config.sub ($timestamp)
77 70
78Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 71Copyright 1992-2013 Free Software Foundation, Inc.
792001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free
80Software Foundation, Inc.
81 72
82This is free software; see the source for copying conditions. There is NO 73This is free software; see the source for copying conditions. There is NO
83warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." 74warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -125,13 +116,17 @@ esac
125maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` 116maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
126case $maybe_os in 117case $maybe_os in
127 nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ 118 nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
128 linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ 119 linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
129 knetbsd*-gnu* | netbsd*-gnu* | \ 120 knetbsd*-gnu* | netbsd*-gnu* | \
130 kopensolaris*-gnu* | \ 121 kopensolaris*-gnu* | \
131 storm-chaos* | os2-emx* | rtmk-nova*) 122 storm-chaos* | os2-emx* | rtmk-nova*)
132 os=-$maybe_os 123 os=-$maybe_os
133 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` 124 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
134 ;; 125 ;;
126 android-linux)
127 os=-linux-android
128 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
129 ;;
135 *) 130 *)
136 basic_machine=`echo $1 | sed 's/-[^-]*$//'` 131 basic_machine=`echo $1 | sed 's/-[^-]*$//'`
137 if [ $basic_machine != $1 ] 132 if [ $basic_machine != $1 ]
@@ -154,7 +149,7 @@ case $os in
154 -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ 149 -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
155 -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ 150 -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
156 -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ 151 -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
157 -apple | -axis | -knuth | -cray | -microblaze) 152 -apple | -axis | -knuth | -cray | -microblaze*)
158 os= 153 os=
159 basic_machine=$1 154 basic_machine=$1
160 ;; 155 ;;
@@ -223,6 +218,12 @@ case $os in
223 -isc*) 218 -isc*)
224 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` 219 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
225 ;; 220 ;;
221 -lynx*178)
222 os=-lynxos178
223 ;;
224 -lynx*5)
225 os=-lynxos5
226 ;;
226 -lynx*) 227 -lynx*)
227 os=-lynxos 228 os=-lynxos
228 ;; 229 ;;
@@ -247,13 +248,16 @@ case $basic_machine in
247 # Some are omitted here because they have special meanings below. 248 # Some are omitted here because they have special meanings below.
248 1750a | 580 \ 249 1750a | 580 \
249 | a29k \ 250 | a29k \
251 | aarch64 | aarch64_be \
250 | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ 252 | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
251 | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ 253 | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
252 | am33_2.0 \ 254 | am33_2.0 \
253 | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ 255 | arc | arceb \
254 | be32 | be64 \ 256 | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
257 | avr | avr32 \
258 | be32 | be64 \
255 | bfin \ 259 | bfin \
256 | c4x | clipper \ 260 | c4x | c8051 | clipper \
257 | d10v | d30v | dlx | dsp16xx \ 261 | d10v | d30v | dlx | dsp16xx \
258 | epiphany \ 262 | epiphany \
259 | fido | fr30 | frv \ 263 | fido | fr30 | frv \
@@ -261,10 +265,11 @@ case $basic_machine in
261 | hexagon \ 265 | hexagon \
262 | i370 | i860 | i960 | ia64 \ 266 | i370 | i860 | i960 | ia64 \
263 | ip2k | iq2000 \ 267 | ip2k | iq2000 \
268 | k1om \
264 | le32 | le64 \ 269 | le32 | le64 \
265 | lm32 \ 270 | lm32 \
266 | m32c | m32r | m32rle | m68000 | m68k | m88k \ 271 | m32c | m32r | m32rle | m68000 | m68k | m88k \
267 | maxq | mb | microblaze | mcore | mep | metag \ 272 | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
268 | mips | mipsbe | mipseb | mipsel | mipsle \ 273 | mips | mipsbe | mipseb | mipsel | mipsle \
269 | mips16 \ 274 | mips16 \
270 | mips64 | mips64el \ 275 | mips64 | mips64el \
@@ -282,16 +287,17 @@ case $basic_machine in
282 | mipsisa64r2 | mipsisa64r2el \ 287 | mipsisa64r2 | mipsisa64r2el \
283 | mipsisa64sb1 | mipsisa64sb1el \ 288 | mipsisa64sb1 | mipsisa64sb1el \
284 | mipsisa64sr71k | mipsisa64sr71kel \ 289 | mipsisa64sr71k | mipsisa64sr71kel \
290 | mipsr5900 | mipsr5900el \
285 | mipstx39 | mipstx39el \ 291 | mipstx39 | mipstx39el \
286 | mn10200 | mn10300 \ 292 | mn10200 | mn10300 \
287 | moxie \ 293 | moxie \
288 | mt \ 294 | mt \
289 | msp430 \ 295 | msp430 \
290 | nds32 | nds32le | nds32be \ 296 | nds32 | nds32le | nds32be \
291 | nios | nios2 \ 297 | nios | nios2 | nios2eb | nios2el \
292 | ns16k | ns32k \ 298 | ns16k | ns32k \
293 | open8 \ 299 | open8 \
294 | or32 \ 300 | or1k | or32 \
295 | pdp10 | pdp11 | pj | pjl \ 301 | pdp10 | pdp11 | pj | pjl \
296 | powerpc | powerpc64 | powerpc64le | powerpcle \ 302 | powerpc | powerpc64 | powerpc64le | powerpcle \
297 | pyramid \ 303 | pyramid \
@@ -319,8 +325,7 @@ case $basic_machine in
319 c6x) 325 c6x)
320 basic_machine=tic6x-unknown 326 basic_machine=tic6x-unknown
321 ;; 327 ;;
322 m6811 | m68hc11 | m6812 | m68hc12 | picochip) 328 m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
323 # Motorola 68HC11/12.
324 basic_machine=$basic_machine-unknown 329 basic_machine=$basic_machine-unknown
325 os=-none 330 os=-none
326 ;; 331 ;;
@@ -333,7 +338,10 @@ case $basic_machine in
333 strongarm | thumb | xscale) 338 strongarm | thumb | xscale)
334 basic_machine=arm-unknown 339 basic_machine=arm-unknown
335 ;; 340 ;;
336 341 xgate)
342 basic_machine=$basic_machine-unknown
343 os=-none
344 ;;
337 xscaleeb) 345 xscaleeb)
338 basic_machine=armeb-unknown 346 basic_machine=armeb-unknown
339 ;; 347 ;;
@@ -356,15 +364,16 @@ case $basic_machine in
356 # Recognize the basic CPU types with company name. 364 # Recognize the basic CPU types with company name.
357 580-* \ 365 580-* \
358 | a29k-* \ 366 | a29k-* \
367 | aarch64-* | aarch64_be-* \
359 | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 368 | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
360 | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 369 | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
361 | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 370 | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
362 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 371 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
363 | avr-* | avr32-* \ 372 | avr-* | avr32-* \
364 | be32-* | be64-* \ 373 | be32-* | be64-* \
365 | bfin-* | bs2000-* \ 374 | bfin-* | bs2000-* \
366 | c[123]* | c30-* | [cjt]90-* | c4x-* \ 375 | c[123]* | c30-* | [cjt]90-* | c4x-* \
367 | clipper-* | craynv-* | cydra-* \ 376 | c8051-* | clipper-* | craynv-* | cydra-* \
368 | d10v-* | d30v-* | dlx-* \ 377 | d10v-* | d30v-* | dlx-* \
369 | elxsi-* \ 378 | elxsi-* \
370 | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 379 | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
@@ -373,11 +382,13 @@ case $basic_machine in
373 | hexagon-* \ 382 | hexagon-* \
374 | i*86-* | i860-* | i960-* | ia64-* \ 383 | i*86-* | i860-* | i960-* | ia64-* \
375 | ip2k-* | iq2000-* \ 384 | ip2k-* | iq2000-* \
385 | k1om-* \
376 | le32-* | le64-* \ 386 | le32-* | le64-* \
377 | lm32-* \ 387 | lm32-* \
378 | m32c-* | m32r-* | m32rle-* \ 388 | m32c-* | m32r-* | m32rle-* \
379 | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 389 | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
380 | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 390 | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
391 | microblaze-* | microblazeel-* \
381 | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 392 | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
382 | mips16-* \ 393 | mips16-* \
383 | mips64-* | mips64el-* \ 394 | mips64-* | mips64el-* \
@@ -395,12 +406,13 @@ case $basic_machine in
395 | mipsisa64r2-* | mipsisa64r2el-* \ 406 | mipsisa64r2-* | mipsisa64r2el-* \
396 | mipsisa64sb1-* | mipsisa64sb1el-* \ 407 | mipsisa64sb1-* | mipsisa64sb1el-* \
397 | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 408 | mipsisa64sr71k-* | mipsisa64sr71kel-* \
409 | mipsr5900-* | mipsr5900el-* \
398 | mipstx39-* | mipstx39el-* \ 410 | mipstx39-* | mipstx39el-* \
399 | mmix-* \ 411 | mmix-* \
400 | mt-* \ 412 | mt-* \
401 | msp430-* \ 413 | msp430-* \
402 | nds32-* | nds32le-* | nds32be-* \ 414 | nds32-* | nds32le-* | nds32be-* \
403 | nios-* | nios2-* \ 415 | nios-* | nios2-* | nios2eb-* | nios2el-* \
404 | none-* | np1-* | ns16k-* | ns32k-* \ 416 | none-* | np1-* | ns16k-* | ns32k-* \
405 | open8-* \ 417 | open8-* \
406 | orion-* \ 418 | orion-* \
@@ -719,7 +731,6 @@ case $basic_machine in
719 i370-ibm* | ibm*) 731 i370-ibm* | ibm*)
720 basic_machine=i370-ibm 732 basic_machine=i370-ibm
721 ;; 733 ;;
722# I'm not sure what "Sysv32" means. Should this be sysv3.2?
723 i*86v32) 734 i*86v32)
724 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 735 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
725 os=-sysv32 736 os=-sysv32
@@ -777,11 +788,15 @@ case $basic_machine in
777 basic_machine=ns32k-utek 788 basic_machine=ns32k-utek
778 os=-sysv 789 os=-sysv
779 ;; 790 ;;
780 microblaze) 791 microblaze*)
781 basic_machine=microblaze-xilinx 792 basic_machine=microblaze-xilinx
782 ;; 793 ;;
794 mingw64)
795 basic_machine=x86_64-pc
796 os=-mingw64
797 ;;
783 mingw32) 798 mingw32)
784 basic_machine=i386-pc 799 basic_machine=i686-pc
785 os=-mingw32 800 os=-mingw32
786 ;; 801 ;;
787 mingw32ce) 802 mingw32ce)
@@ -817,7 +832,7 @@ case $basic_machine in
817 basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 832 basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
818 ;; 833 ;;
819 msys) 834 msys)
820 basic_machine=i386-pc 835 basic_machine=i686-pc
821 os=-msys 836 os=-msys
822 ;; 837 ;;
823 mvs) 838 mvs)
@@ -1008,7 +1023,11 @@ case $basic_machine in
1008 basic_machine=i586-unknown 1023 basic_machine=i586-unknown
1009 os=-pw32 1024 os=-pw32
1010 ;; 1025 ;;
1011 rdos) 1026 rdos | rdos64)
1027 basic_machine=x86_64-pc
1028 os=-rdos
1029 ;;
1030 rdos32)
1012 basic_machine=i386-pc 1031 basic_machine=i386-pc
1013 os=-rdos 1032 os=-rdos
1014 ;; 1033 ;;
@@ -1335,21 +1354,21 @@ case $os in
1335 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 1354 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1336 | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 1355 | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
1337 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1356 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
1338 | -sym* | -kopensolaris* \ 1357 | -sym* | -kopensolaris* | -plan9* \
1339 | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1358 | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1340 | -aos* | -aros* \ 1359 | -aos* | -aros* \
1341 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 1360 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1342 | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1361 | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1343 | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1362 | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1344 | -openbsd* | -solidbsd* \ 1363 | -bitrig* | -openbsd* | -solidbsd* \
1345 | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1364 | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1346 | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 1365 | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1347 | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 1366 | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1348 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1367 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1349 | -chorusos* | -chorusrdb* | -cegcc* \ 1368 | -chorusos* | -chorusrdb* | -cegcc* \
1350 | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1369 | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1351 | -mingw32* | -linux-gnu* | -linux-android* \ 1370 | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
1352 | -linux-newlib* | -linux-uclibc* \ 1371 | -linux-newlib* | -linux-musl* | -linux-uclibc* \
1353 | -uxpv* | -beos* | -mpeix* | -udk* \ 1372 | -uxpv* | -beos* | -mpeix* | -udk* \
1354 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 1373 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1355 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1374 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
@@ -1481,9 +1500,6 @@ case $os in
1481 -aros*) 1500 -aros*)
1482 os=-aros 1501 os=-aros
1483 ;; 1502 ;;
1484 -kaos*)
1485 os=-kaos
1486 ;;
1487 -zvmoe) 1503 -zvmoe)
1488 os=-zvmoe 1504 os=-zvmoe
1489 ;; 1505 ;;
@@ -1532,6 +1548,12 @@ case $basic_machine in
1532 c4x-* | tic4x-*) 1548 c4x-* | tic4x-*)
1533 os=-coff 1549 os=-coff
1534 ;; 1550 ;;
1551 c8051-*)
1552 os=-elf
1553 ;;
1554 hexagon-*)
1555 os=-elf
1556 ;;
1535 tic54x-*) 1557 tic54x-*)
1536 os=-coff 1558 os=-coff
1537 ;; 1559 ;;
@@ -1559,9 +1581,6 @@ case $basic_machine in
1559 ;; 1581 ;;
1560 m68000-sun) 1582 m68000-sun)
1561 os=-sunos3 1583 os=-sunos3
1562 # This also exists in the configure program, but was not the
1563 # default.
1564 # os=-sunos4
1565 ;; 1584 ;;
1566 m68*-cisco) 1585 m68*-cisco)
1567 os=-aout 1586 os=-aout
@@ -1575,6 +1594,9 @@ case $basic_machine in
1575 mips*-*) 1594 mips*-*)
1576 os=-elf 1595 os=-elf
1577 ;; 1596 ;;
1597 or1k-*)
1598 os=-elf
1599 ;;
1578 or32-*) 1600 or32-*)
1579 os=-coff 1601 os=-coff
1580 ;; 1602 ;;
diff --git a/gs/jpeg/configure b/gs/jpeg/configure
new file mode 100755
index 000000000..77a5df322
--- /dev/null
+++ b/gs/jpeg/configure
@@ -0,0 +1,15462 @@
1#! /bin/sh
2# Guess values for system-dependent variables and create Makefiles.
3# Generated by GNU Autoconf 2.69 for libjpeg 9.1.0.
4#
5#
6# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
7#
8#
9# This configure script is free software; the Free Software Foundation
10# gives unlimited permission to copy, distribute and modify it.
11## -------------------- ##
12## M4sh Initialization. ##
13## -------------------- ##
14
15# Be more Bourne compatible
16DUALCASE=1; export DUALCASE # for MKS sh
17if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
18 emulate sh
19 NULLCMD=:
20 # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
21 # is contrary to our usage. Disable this feature.
22 alias -g '${1+"$@"}'='"$@"'
23 setopt NO_GLOB_SUBST
24else
25 case `(set -o) 2>/dev/null` in #(
26 *posix*) :
27 set -o posix ;; #(
28 *) :
29 ;;
30esac
31fi
32
33
34as_nl='
35'
36export as_nl
37# Printing a long string crashes Solaris 7 /usr/bin/printf.
38as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
39as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
40as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
41# Prefer a ksh shell builtin over an external printf program on Solaris,
42# but without wasting forks for bash or zsh.
43if test -z "$BASH_VERSION$ZSH_VERSION" \
44 && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
45 as_echo='print -r --'
46 as_echo_n='print -rn --'
47elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
48 as_echo='printf %s\n'
49 as_echo_n='printf %s'
50else
51 if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
52 as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
53 as_echo_n='/usr/ucb/echo -n'
54 else
55 as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
56 as_echo_n_body='eval
57 arg=$1;
58 case $arg in #(
59 *"$as_nl"*)
60 expr "X$arg" : "X\\(.*\\)$as_nl";
61 arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
62 esac;
63 expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
64 '
65 export as_echo_n_body
66 as_echo_n='sh -c $as_echo_n_body as_echo'
67 fi
68 export as_echo_body
69 as_echo='sh -c $as_echo_body as_echo'
70fi
71
72# The user is always right.
73if test "${PATH_SEPARATOR+set}" != set; then
74 PATH_SEPARATOR=:
75 (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
76 (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
77 PATH_SEPARATOR=';'
78 }
79fi
80
81
82# IFS
83# We need space, tab and new line, in precisely that order. Quoting is
84# there to prevent editors from complaining about space-tab.
85# (If _AS_PATH_WALK were called with IFS unset, it would disable word
86# splitting by setting IFS to empty value.)
87IFS=" "" $as_nl"
88
89# Find who we are. Look in the path if we contain no directory separator.
90as_myself=
91case $0 in #((
92 *[\\/]* ) as_myself=$0 ;;
93 *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
94for as_dir in $PATH
95do
96 IFS=$as_save_IFS
97 test -z "$as_dir" && as_dir=.
98 test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
99 done
100IFS=$as_save_IFS
101
102 ;;
103esac
104# We did not find ourselves, most probably we were run as `sh COMMAND'
105# in which case we are not to be found in the path.
106if test "x$as_myself" = x; then
107 as_myself=$0
108fi
109if test ! -f "$as_myself"; then
110 $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
111 exit 1
112fi
113
114# Unset variables that we do not need and which cause bugs (e.g. in
115# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
116# suppresses any "Segmentation fault" message there. '((' could
117# trigger a bug in pdksh 5.2.14.
118for as_var in BASH_ENV ENV MAIL MAILPATH
119do eval test x\${$as_var+set} = xset \
120 && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
121done
122PS1='$ '
123PS2='> '
124PS4='+ '
125
126# NLS nuisances.
127LC_ALL=C
128export LC_ALL
129LANGUAGE=C
130export LANGUAGE
131
132# CDPATH.
133(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
134
135# Use a proper internal environment variable to ensure we don't fall
136 # into an infinite loop, continuously re-executing ourselves.
137 if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
138 _as_can_reexec=no; export _as_can_reexec;
139 # We cannot yet assume a decent shell, so we have to provide a
140# neutralization value for shells without unset; and this also
141# works around shells that cannot unset nonexistent variables.
142# Preserve -v and -x to the replacement shell.
143BASH_ENV=/dev/null
144ENV=/dev/null
145(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
146case $- in # ((((
147 *v*x* | *x*v* ) as_opts=-vx ;;
148 *v* ) as_opts=-v ;;
149 *x* ) as_opts=-x ;;
150 * ) as_opts= ;;
151esac
152exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
153# Admittedly, this is quite paranoid, since all the known shells bail
154# out after a failed `exec'.
155$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
156as_fn_exit 255
157 fi
158 # We don't want this to propagate to other subprocesses.
159 { _as_can_reexec=; unset _as_can_reexec;}
160if test "x$CONFIG_SHELL" = x; then
161 as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
162 emulate sh
163 NULLCMD=:
164 # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
165 # is contrary to our usage. Disable this feature.
166 alias -g '\${1+\"\$@\"}'='\"\$@\"'
167 setopt NO_GLOB_SUBST
168else
169 case \`(set -o) 2>/dev/null\` in #(
170 *posix*) :
171 set -o posix ;; #(
172 *) :
173 ;;
174esac
175fi
176"
177 as_required="as_fn_return () { (exit \$1); }
178as_fn_success () { as_fn_return 0; }
179as_fn_failure () { as_fn_return 1; }
180as_fn_ret_success () { return 0; }
181as_fn_ret_failure () { return 1; }
182
183exitcode=0
184as_fn_success || { exitcode=1; echo as_fn_success failed.; }
185as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
186as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
187as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
188if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
189
190else
191 exitcode=1; echo positional parameters were not saved.
192fi
193test x\$exitcode = x0 || exit 1
194test -x / || exit 1"
195 as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
196 as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
197 eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
198 test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
199test \$(( 1 + 1 )) = 2 || exit 1
200
201 test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || (
202 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
203 ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO
204 ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO
205 PATH=/empty FPATH=/empty; export PATH FPATH
206 test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\
207 || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1"
208 if (eval "$as_required") 2>/dev/null; then :
209 as_have_required=yes
210else
211 as_have_required=no
212fi
213 if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
214
215else
216 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
217as_found=false
218for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
219do
220 IFS=$as_save_IFS
221 test -z "$as_dir" && as_dir=.
222 as_found=:
223 case $as_dir in #(
224 /*)
225 for as_base in sh bash ksh sh5; do
226 # Try only shells that exist, to save several forks.
227 as_shell=$as_dir/$as_base
228 if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
229 { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
230 CONFIG_SHELL=$as_shell as_have_required=yes
231 if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
232 break 2
233fi
234fi
235 done;;
236 esac
237 as_found=false
238done
239$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
240 { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
241 CONFIG_SHELL=$SHELL as_have_required=yes
242fi; }
243IFS=$as_save_IFS
244
245
246 if test "x$CONFIG_SHELL" != x; then :
247 export CONFIG_SHELL
248 # We cannot yet assume a decent shell, so we have to provide a
249# neutralization value for shells without unset; and this also
250# works around shells that cannot unset nonexistent variables.
251# Preserve -v and -x to the replacement shell.
252BASH_ENV=/dev/null
253ENV=/dev/null
254(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
255case $- in # ((((
256 *v*x* | *x*v* ) as_opts=-vx ;;
257 *v* ) as_opts=-v ;;
258 *x* ) as_opts=-x ;;
259 * ) as_opts= ;;
260esac
261exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
262# Admittedly, this is quite paranoid, since all the known shells bail
263# out after a failed `exec'.
264$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
265exit 255
266fi
267
268 if test x$as_have_required = xno; then :
269 $as_echo "$0: This script requires a shell more modern than all"
270 $as_echo "$0: the shells that I found on your system."
271 if test x${ZSH_VERSION+set} = xset ; then
272 $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
273 $as_echo "$0: be upgraded to zsh 4.3.4 or later."
274 else
275 $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
276$0: including any error possibly output before this
277$0: message. Then install a modern shell, or manually run
278$0: the script under such a shell if you do have one."
279 fi
280 exit 1
281fi
282fi
283fi
284SHELL=${CONFIG_SHELL-/bin/sh}
285export SHELL
286# Unset more variables known to interfere with behavior of common tools.
287CLICOLOR_FORCE= GREP_OPTIONS=
288unset CLICOLOR_FORCE GREP_OPTIONS
289
290## --------------------- ##
291## M4sh Shell Functions. ##
292## --------------------- ##
293# as_fn_unset VAR
294# ---------------
295# Portably unset VAR.
296as_fn_unset ()
297{
298 { eval $1=; unset $1;}
299}
300as_unset=as_fn_unset
301
302# as_fn_set_status STATUS
303# -----------------------
304# Set $? to STATUS, without forking.
305as_fn_set_status ()
306{
307 return $1
308} # as_fn_set_status
309
310# as_fn_exit STATUS
311# -----------------
312# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
313as_fn_exit ()
314{
315 set +e
316 as_fn_set_status $1
317 exit $1
318} # as_fn_exit
319
320# as_fn_mkdir_p
321# -------------
322# Create "$as_dir" as a directory, including parents if necessary.
323as_fn_mkdir_p ()
324{
325
326 case $as_dir in #(
327 -*) as_dir=./$as_dir;;
328 esac
329 test -d "$as_dir" || eval $as_mkdir_p || {
330 as_dirs=
331 while :; do
332 case $as_dir in #(
333 *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
334 *) as_qdir=$as_dir;;
335 esac
336 as_dirs="'$as_qdir' $as_dirs"
337 as_dir=`$as_dirname -- "$as_dir" ||
338$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
339 X"$as_dir" : 'X\(//\)[^/]' \| \
340 X"$as_dir" : 'X\(//\)$' \| \
341 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
342$as_echo X"$as_dir" |
343 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
344 s//\1/
345 q
346 }
347 /^X\(\/\/\)[^/].*/{
348 s//\1/
349 q
350 }
351 /^X\(\/\/\)$/{
352 s//\1/
353 q
354 }
355 /^X\(\/\).*/{
356 s//\1/
357 q
358 }
359 s/.*/./; q'`
360 test -d "$as_dir" && break
361 done
362 test -z "$as_dirs" || eval "mkdir $as_dirs"
363 } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
364
365
366} # as_fn_mkdir_p
367
368# as_fn_executable_p FILE
369# -----------------------
370# Test if FILE is an executable regular file.
371as_fn_executable_p ()
372{
373 test -f "$1" && test -x "$1"
374} # as_fn_executable_p
375# as_fn_append VAR VALUE
376# ----------------------
377# Append the text in VALUE to the end of the definition contained in VAR. Take
378# advantage of any shell optimizations that allow amortized linear growth over
379# repeated appends, instead of the typical quadratic growth present in naive
380# implementations.
381if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
382 eval 'as_fn_append ()
383 {
384 eval $1+=\$2
385 }'
386else
387 as_fn_append ()
388 {
389 eval $1=\$$1\$2
390 }
391fi # as_fn_append
392
393# as_fn_arith ARG...
394# ------------------
395# Perform arithmetic evaluation on the ARGs, and store the result in the
396# global $as_val. Take advantage of shells that can avoid forks. The arguments
397# must be portable across $(()) and expr.
398if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
399 eval 'as_fn_arith ()
400 {
401 as_val=$(( $* ))
402 }'
403else
404 as_fn_arith ()
405 {
406 as_val=`expr "$@" || test $? -eq 1`
407 }
408fi # as_fn_arith
409
410
411# as_fn_error STATUS ERROR [LINENO LOG_FD]
412# ----------------------------------------
413# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
414# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
415# script with STATUS, using 1 if that was 0.
416as_fn_error ()
417{
418 as_status=$1; test $as_status -eq 0 && as_status=1
419 if test "$4"; then
420 as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
421 $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
422 fi
423 $as_echo "$as_me: error: $2" >&2
424 as_fn_exit $as_status
425} # as_fn_error
426
427if expr a : '\(a\)' >/dev/null 2>&1 &&
428 test "X`expr 00001 : '.*\(...\)'`" = X001; then
429 as_expr=expr
430else
431 as_expr=false
432fi
433
434if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
435 as_basename=basename
436else
437 as_basename=false
438fi
439
440if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
441 as_dirname=dirname
442else
443 as_dirname=false
444fi
445
446as_me=`$as_basename -- "$0" ||
447$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
448 X"$0" : 'X\(//\)$' \| \
449 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
450$as_echo X/"$0" |
451 sed '/^.*\/\([^/][^/]*\)\/*$/{
452 s//\1/
453 q
454 }
455 /^X\/\(\/\/\)$/{
456 s//\1/
457 q
458 }
459 /^X\/\(\/\).*/{
460 s//\1/
461 q
462 }
463 s/.*/./; q'`
464
465# Avoid depending upon Character Ranges.
466as_cr_letters='abcdefghijklmnopqrstuvwxyz'
467as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
468as_cr_Letters=$as_cr_letters$as_cr_LETTERS
469as_cr_digits='0123456789'
470as_cr_alnum=$as_cr_Letters$as_cr_digits
471
472
473 as_lineno_1=$LINENO as_lineno_1a=$LINENO
474 as_lineno_2=$LINENO as_lineno_2a=$LINENO
475 eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
476 test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
477 # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
478 sed -n '
479 p
480 /[$]LINENO/=
481 ' <$as_myself |
482 sed '
483 s/[$]LINENO.*/&-/
484 t lineno
485 b
486 :lineno
487 N
488 :loop
489 s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
490 t loop
491 s/-\n.*//
492 ' >$as_me.lineno &&
493 chmod +x "$as_me.lineno" ||
494 { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
495
496 # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
497 # already done that, so ensure we don't try to do so again and fall
498 # in an infinite loop. This has already happened in practice.
499 _as_can_reexec=no; export _as_can_reexec
500 # Don't try to exec as it changes $[0], causing all sort of problems
501 # (the dirname of $[0] is not the place where we might find the
502 # original and so on. Autoconf is especially sensitive to this).
503 . "./$as_me.lineno"
504 # Exit status is that of the last command.
505 exit
506}
507
508ECHO_C= ECHO_N= ECHO_T=
509case `echo -n x` in #(((((
510-n*)
511 case `echo 'xy\c'` in
512 *c*) ECHO_T=' ';; # ECHO_T is single tab character.
513 xy) ECHO_C='\c';;
514 *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
515 ECHO_T=' ';;
516 esac;;
517*)
518 ECHO_N='-n';;
519esac
520
521rm -f conf$$ conf$$.exe conf$$.file
522if test -d conf$$.dir; then
523 rm -f conf$$.dir/conf$$.file
524else
525 rm -f conf$$.dir
526 mkdir conf$$.dir 2>/dev/null
527fi
528if (echo >conf$$.file) 2>/dev/null; then
529 if ln -s conf$$.file conf$$ 2>/dev/null; then
530 as_ln_s='ln -s'
531 # ... but there are two gotchas:
532 # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
533 # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
534 # In both cases, we have to default to `cp -pR'.
535 ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
536 as_ln_s='cp -pR'
537 elif ln conf$$.file conf$$ 2>/dev/null; then
538 as_ln_s=ln
539 else
540 as_ln_s='cp -pR'
541 fi
542else
543 as_ln_s='cp -pR'
544fi
545rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
546rmdir conf$$.dir 2>/dev/null
547
548if mkdir -p . 2>/dev/null; then
549 as_mkdir_p='mkdir -p "$as_dir"'
550else
551 test -d ./-p && rmdir ./-p
552 as_mkdir_p=false
553fi
554
555as_test_x='test -x'
556as_executable_p=as_fn_executable_p
557
558# Sed expression to map a string onto a valid CPP name.
559as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
560
561# Sed expression to map a string onto a valid variable name.
562as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
563
564SHELL=${CONFIG_SHELL-/bin/sh}
565
566
567test -n "$DJDIR" || exec 7<&0 </dev/null
568exec 6>&1
569
570# Name of the host.
571# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
572# so uname gets run too.
573ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
574
575#
576# Initializations.
577#
578ac_default_prefix=/usr/local
579ac_clean_files=
580ac_config_libobj_dir=.
581LIBOBJS=
582cross_compiling=no
583subdirs=
584MFLAGS=
585MAKEFLAGS=
586
587# Identity of this package.
588PACKAGE_NAME='libjpeg'
589PACKAGE_TARNAME='libjpeg'
590PACKAGE_VERSION='9.1.0'
591PACKAGE_STRING='libjpeg 9.1.0'
592PACKAGE_BUGREPORT=''
593PACKAGE_URL=''
594
595# Factoring default headers for most tests.
596ac_includes_default="\
597#include <stdio.h>
598#ifdef HAVE_SYS_TYPES_H
599# include <sys/types.h>
600#endif
601#ifdef HAVE_SYS_STAT_H
602# include <sys/stat.h>
603#endif
604#ifdef STDC_HEADERS
605# include <stdlib.h>
606# include <stddef.h>
607#else
608# ifdef HAVE_STDLIB_H
609# include <stdlib.h>
610# endif
611#endif
612#ifdef HAVE_STRING_H
613# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
614# include <memory.h>
615# endif
616# include <string.h>
617#endif
618#ifdef HAVE_STRINGS_H
619# include <strings.h>
620#endif
621#ifdef HAVE_INTTYPES_H
622# include <inttypes.h>
623#endif
624#ifdef HAVE_STDINT_H
625# include <stdint.h>
626#endif
627#ifdef HAVE_UNISTD_H
628# include <unistd.h>
629#endif"
630
631ac_subst_vars='am__EXEEXT_FALSE
632am__EXEEXT_TRUE
633LTLIBOBJS
634LIBOBJS
635JPEG_LIB_VERSION
636MEMORYMGR
637OTOOL64
638OTOOL
639LIPO
640NMEDIT
641DSYMUTIL
642MANIFEST_TOOL
643RANLIB
644NM
645ac_ct_DUMPBIN
646DUMPBIN
647LD
648FGREP
649SED
650LIBTOOL
651OBJDUMP
652DLLTOOL
653AS
654EGREP
655GREP
656HAVE_LD_VERSION_SCRIPT_FALSE
657HAVE_LD_VERSION_SCRIPT_TRUE
658ac_ct_AR
659AR
660LN_S
661CPP
662am__fastdepCC_FALSE
663am__fastdepCC_TRUE
664CCDEPMODE
665am__nodep
666AMDEPBACKSLASH
667AMDEP_FALSE
668AMDEP_TRUE
669am__quote
670am__include
671DEPDIR
672OBJEXT
673EXEEXT
674ac_ct_CC
675CPPFLAGS
676LDFLAGS
677CFLAGS
678CC
679MAINT
680MAINTAINER_MODE_FALSE
681MAINTAINER_MODE_TRUE
682AM_BACKSLASH
683AM_DEFAULT_VERBOSITY
684AM_DEFAULT_V
685AM_V
686am__untar
687am__tar
688AMTAR
689am__leading_dot
690SET_MAKE
691AWK
692mkdir_p
693MKDIR_P
694INSTALL_STRIP_PROGRAM
695STRIP
696install_sh
697MAKEINFO
698AUTOHEADER
699AUTOMAKE
700AUTOCONF
701ACLOCAL
702VERSION
703PACKAGE
704CYGPATH_W
705am__isrc
706INSTALL_DATA
707INSTALL_SCRIPT
708INSTALL_PROGRAM
709target_os
710target_vendor
711target_cpu
712target
713host_os
714host_vendor
715host_cpu
716host
717build_os
718build_vendor
719build_cpu
720build
721target_alias
722host_alias
723build_alias
724LIBS
725ECHO_T
726ECHO_N
727ECHO_C
728DEFS
729mandir
730localedir
731libdir
732psdir
733pdfdir
734dvidir
735htmldir
736infodir
737docdir
738oldincludedir
739includedir
740localstatedir
741sharedstatedir
742sysconfdir
743datadir
744datarootdir
745libexecdir
746sbindir
747bindir
748program_transform_name
749prefix
750exec_prefix
751PACKAGE_URL
752PACKAGE_BUGREPORT
753PACKAGE_STRING
754PACKAGE_VERSION
755PACKAGE_TARNAME
756PACKAGE_NAME
757PATH_SEPARATOR
758SHELL'
759ac_subst_files=''
760ac_user_opts='
761enable_option_checking
762enable_silent_rules
763enable_maintainer_mode
764enable_dependency_tracking
765enable_ld_version_script
766enable_shared
767enable_static
768with_pic
769enable_fast_install
770with_gnu_ld
771with_sysroot
772enable_libtool_lock
773enable_maxmem
774'
775 ac_precious_vars='build_alias
776host_alias
777target_alias
778CC
779CFLAGS
780LDFLAGS
781LIBS
782CPPFLAGS
783CPP'
784
785
786# Initialize some variables set by options.
787ac_init_help=
788ac_init_version=false
789ac_unrecognized_opts=
790ac_unrecognized_sep=
791# The variables have the same names as the options, with
792# dashes changed to underlines.
793cache_file=/dev/null
794exec_prefix=NONE
795no_create=
796no_recursion=
797prefix=NONE
798program_prefix=NONE
799program_suffix=NONE
800program_transform_name=s,x,x,
801silent=
802site=
803srcdir=
804verbose=
805x_includes=NONE
806x_libraries=NONE
807
808# Installation directory options.
809# These are left unexpanded so users can "make install exec_prefix=/foo"
810# and all the variables that are supposed to be based on exec_prefix
811# by default will actually change.
812# Use braces instead of parens because sh, perl, etc. also accept them.
813# (The list follows the same order as the GNU Coding Standards.)
814bindir='${exec_prefix}/bin'
815sbindir='${exec_prefix}/sbin'
816libexecdir='${exec_prefix}/libexec'
817datarootdir='${prefix}/share'
818datadir='${datarootdir}'
819sysconfdir='${prefix}/etc'
820sharedstatedir='${prefix}/com'
821localstatedir='${prefix}/var'
822includedir='${prefix}/include'
823oldincludedir='/usr/include'
824docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
825infodir='${datarootdir}/info'
826htmldir='${docdir}'
827dvidir='${docdir}'
828pdfdir='${docdir}'
829psdir='${docdir}'
830libdir='${exec_prefix}/lib'
831localedir='${datarootdir}/locale'
832mandir='${datarootdir}/man'
833
834ac_prev=
835ac_dashdash=
836for ac_option
837do
838 # If the previous option needs an argument, assign it.
839 if test -n "$ac_prev"; then
840 eval $ac_prev=\$ac_option
841 ac_prev=
842 continue
843 fi
844
845 case $ac_option in
846 *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
847 *=) ac_optarg= ;;
848 *) ac_optarg=yes ;;
849 esac
850
851 # Accept the important Cygnus configure options, so we can diagnose typos.
852
853 case $ac_dashdash$ac_option in
854 --)
855 ac_dashdash=yes ;;
856
857 -bindir | --bindir | --bindi | --bind | --bin | --bi)
858 ac_prev=bindir ;;
859 -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
860 bindir=$ac_optarg ;;
861
862 -build | --build | --buil | --bui | --bu)
863 ac_prev=build_alias ;;
864 -build=* | --build=* | --buil=* | --bui=* | --bu=*)
865 build_alias=$ac_optarg ;;
866
867 -cache-file | --cache-file | --cache-fil | --cache-fi \
868 | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
869 ac_prev=cache_file ;;
870 -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
871 | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
872 cache_file=$ac_optarg ;;
873
874 --config-cache | -C)
875 cache_file=config.cache ;;
876
877 -datadir | --datadir | --datadi | --datad)
878 ac_prev=datadir ;;
879 -datadir=* | --datadir=* | --datadi=* | --datad=*)
880 datadir=$ac_optarg ;;
881
882 -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
883 | --dataroo | --dataro | --datar)
884 ac_prev=datarootdir ;;
885 -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
886 | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
887 datarootdir=$ac_optarg ;;
888
889 -disable-* | --disable-*)
890 ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
891 # Reject names that are not valid shell variable names.
892 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
893 as_fn_error $? "invalid feature name: $ac_useropt"
894 ac_useropt_orig=$ac_useropt
895 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
896 case $ac_user_opts in
897 *"
898"enable_$ac_useropt"
899"*) ;;
900 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
901 ac_unrecognized_sep=', ';;
902 esac
903 eval enable_$ac_useropt=no ;;
904
905 -docdir | --docdir | --docdi | --doc | --do)
906 ac_prev=docdir ;;
907 -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
908 docdir=$ac_optarg ;;
909
910 -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
911 ac_prev=dvidir ;;
912 -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
913 dvidir=$ac_optarg ;;
914
915 -enable-* | --enable-*)
916 ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
917 # Reject names that are not valid shell variable names.
918 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
919 as_fn_error $? "invalid feature name: $ac_useropt"
920 ac_useropt_orig=$ac_useropt
921 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
922 case $ac_user_opts in
923 *"
924"enable_$ac_useropt"
925"*) ;;
926 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
927 ac_unrecognized_sep=', ';;
928 esac
929 eval enable_$ac_useropt=\$ac_optarg ;;
930
931 -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
932 | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
933 | --exec | --exe | --ex)
934 ac_prev=exec_prefix ;;
935 -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
936 | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
937 | --exec=* | --exe=* | --ex=*)
938 exec_prefix=$ac_optarg ;;
939
940 -gas | --gas | --ga | --g)
941 # Obsolete; use --with-gas.
942 with_gas=yes ;;
943
944 -help | --help | --hel | --he | -h)
945 ac_init_help=long ;;
946 -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
947 ac_init_help=recursive ;;
948 -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
949 ac_init_help=short ;;
950
951 -host | --host | --hos | --ho)
952 ac_prev=host_alias ;;
953 -host=* | --host=* | --hos=* | --ho=*)
954 host_alias=$ac_optarg ;;
955
956 -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
957 ac_prev=htmldir ;;
958 -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
959 | --ht=*)
960 htmldir=$ac_optarg ;;
961
962 -includedir | --includedir | --includedi | --included | --include \
963 | --includ | --inclu | --incl | --inc)
964 ac_prev=includedir ;;
965 -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
966 | --includ=* | --inclu=* | --incl=* | --inc=*)
967 includedir=$ac_optarg ;;
968
969 -infodir | --infodir | --infodi | --infod | --info | --inf)
970 ac_prev=infodir ;;
971 -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
972 infodir=$ac_optarg ;;
973
974 -libdir | --libdir | --libdi | --libd)
975 ac_prev=libdir ;;
976 -libdir=* | --libdir=* | --libdi=* | --libd=*)
977 libdir=$ac_optarg ;;
978
979 -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
980 | --libexe | --libex | --libe)
981 ac_prev=libexecdir ;;
982 -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
983 | --libexe=* | --libex=* | --libe=*)
984 libexecdir=$ac_optarg ;;
985
986 -localedir | --localedir | --localedi | --localed | --locale)
987 ac_prev=localedir ;;
988 -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
989 localedir=$ac_optarg ;;
990
991 -localstatedir | --localstatedir | --localstatedi | --localstated \
992 | --localstate | --localstat | --localsta | --localst | --locals)
993 ac_prev=localstatedir ;;
994 -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
995 | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
996 localstatedir=$ac_optarg ;;
997
998 -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
999 ac_prev=mandir ;;
1000 -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
1001 mandir=$ac_optarg ;;
1002
1003 -nfp | --nfp | --nf)
1004 # Obsolete; use --without-fp.
1005 with_fp=no ;;
1006
1007 -no-create | --no-create | --no-creat | --no-crea | --no-cre \
1008 | --no-cr | --no-c | -n)
1009 no_create=yes ;;
1010
1011 -no-recursion | --no-recursion | --no-recursio | --no-recursi \
1012 | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
1013 no_recursion=yes ;;
1014
1015 -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
1016 | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
1017 | --oldin | --oldi | --old | --ol | --o)
1018 ac_prev=oldincludedir ;;
1019 -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
1020 | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
1021 | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
1022 oldincludedir=$ac_optarg ;;
1023
1024 -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
1025 ac_prev=prefix ;;
1026 -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
1027 prefix=$ac_optarg ;;
1028
1029 -program-prefix | --program-prefix | --program-prefi | --program-pref \
1030 | --program-pre | --program-pr | --program-p)
1031 ac_prev=program_prefix ;;
1032 -program-prefix=* | --program-prefix=* | --program-prefi=* \
1033 | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
1034 program_prefix=$ac_optarg ;;
1035
1036 -program-suffix | --program-suffix | --program-suffi | --program-suff \
1037 | --program-suf | --program-su | --program-s)
1038 ac_prev=program_suffix ;;
1039 -program-suffix=* | --program-suffix=* | --program-suffi=* \
1040 | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
1041 program_suffix=$ac_optarg ;;
1042
1043 -program-transform-name | --program-transform-name \
1044 | --program-transform-nam | --program-transform-na \
1045 | --program-transform-n | --program-transform- \
1046 | --program-transform | --program-transfor \
1047 | --program-transfo | --program-transf \
1048 | --program-trans | --program-tran \
1049 | --progr-tra | --program-tr | --program-t)
1050 ac_prev=program_transform_name ;;
1051 -program-transform-name=* | --program-transform-name=* \
1052 | --program-transform-nam=* | --program-transform-na=* \
1053 | --program-transform-n=* | --program-transform-=* \
1054 | --program-transform=* | --program-transfor=* \
1055 | --program-transfo=* | --program-transf=* \
1056 | --program-trans=* | --program-tran=* \
1057 | --progr-tra=* | --program-tr=* | --program-t=*)
1058 program_transform_name=$ac_optarg ;;
1059
1060 -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
1061 ac_prev=pdfdir ;;
1062 -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
1063 pdfdir=$ac_optarg ;;
1064
1065 -psdir | --psdir | --psdi | --psd | --ps)
1066 ac_prev=psdir ;;
1067 -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
1068 psdir=$ac_optarg ;;
1069
1070 -q | -quiet | --quiet | --quie | --qui | --qu | --q \
1071 | -silent | --silent | --silen | --sile | --sil)
1072 silent=yes ;;
1073
1074 -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
1075 ac_prev=sbindir ;;
1076 -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
1077 | --sbi=* | --sb=*)
1078 sbindir=$ac_optarg ;;
1079
1080 -sharedstatedir | --sharedstatedir | --sharedstatedi \
1081 | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
1082 | --sharedst | --shareds | --shared | --share | --shar \
1083 | --sha | --sh)
1084 ac_prev=sharedstatedir ;;
1085 -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
1086 | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
1087 | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
1088 | --sha=* | --sh=*)
1089 sharedstatedir=$ac_optarg ;;
1090
1091 -site | --site | --sit)
1092 ac_prev=site ;;
1093 -site=* | --site=* | --sit=*)
1094 site=$ac_optarg ;;
1095
1096 -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
1097 ac_prev=srcdir ;;
1098 -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
1099 srcdir=$ac_optarg ;;
1100
1101 -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
1102 | --syscon | --sysco | --sysc | --sys | --sy)
1103 ac_prev=sysconfdir ;;
1104 -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
1105 | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
1106 sysconfdir=$ac_optarg ;;
1107
1108 -target | --target | --targe | --targ | --tar | --ta | --t)
1109 ac_prev=target_alias ;;
1110 -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
1111 target_alias=$ac_optarg ;;
1112
1113 -v | -verbose | --verbose | --verbos | --verbo | --verb)
1114 verbose=yes ;;
1115
1116 -version | --version | --versio | --versi | --vers | -V)
1117 ac_init_version=: ;;
1118
1119 -with-* | --with-*)
1120 ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
1121 # Reject names that are not valid shell variable names.
1122 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
1123 as_fn_error $? "invalid package name: $ac_useropt"
1124 ac_useropt_orig=$ac_useropt
1125 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
1126 case $ac_user_opts in
1127 *"
1128"with_$ac_useropt"
1129"*) ;;
1130 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
1131 ac_unrecognized_sep=', ';;
1132 esac
1133 eval with_$ac_useropt=\$ac_optarg ;;
1134
1135 -without-* | --without-*)
1136 ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
1137 # Reject names that are not valid shell variable names.
1138 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
1139 as_fn_error $? "invalid package name: $ac_useropt"
1140 ac_useropt_orig=$ac_useropt
1141 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
1142 case $ac_user_opts in
1143 *"
1144"with_$ac_useropt"
1145"*) ;;
1146 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
1147 ac_unrecognized_sep=', ';;
1148 esac
1149 eval with_$ac_useropt=no ;;
1150
1151 --x)
1152 # Obsolete; use --with-x.
1153 with_x=yes ;;
1154
1155 -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
1156 | --x-incl | --x-inc | --x-in | --x-i)
1157 ac_prev=x_includes ;;
1158 -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
1159 | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
1160 x_includes=$ac_optarg ;;
1161
1162 -x-libraries | --x-libraries | --x-librarie | --x-librari \
1163 | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
1164 ac_prev=x_libraries ;;
1165 -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
1166 | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
1167 x_libraries=$ac_optarg ;;
1168
1169 -*) as_fn_error $? "unrecognized option: \`$ac_option'
1170Try \`$0 --help' for more information"
1171 ;;
1172
1173 *=*)
1174 ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
1175 # Reject names that are not valid shell variable names.
1176 case $ac_envvar in #(
1177 '' | [0-9]* | *[!_$as_cr_alnum]* )
1178 as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
1179 esac
1180 eval $ac_envvar=\$ac_optarg
1181 export $ac_envvar ;;
1182
1183 *)
1184 # FIXME: should be removed in autoconf 3.0.
1185 $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
1186 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
1187 $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
1188 : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
1189 ;;
1190
1191 esac
1192done
1193
1194if test -n "$ac_prev"; then
1195 ac_option=--`echo $ac_prev | sed 's/_/-/g'`
1196 as_fn_error $? "missing argument to $ac_option"
1197fi
1198
1199if test -n "$ac_unrecognized_opts"; then
1200 case $enable_option_checking in
1201 no) ;;
1202 fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
1203 *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
1204 esac
1205fi
1206
1207# Check all directory arguments for consistency.
1208for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
1209 datadir sysconfdir sharedstatedir localstatedir includedir \
1210 oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
1211 libdir localedir mandir
1212do
1213 eval ac_val=\$$ac_var
1214 # Remove trailing slashes.
1215 case $ac_val in
1216 */ )
1217 ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
1218 eval $ac_var=\$ac_val;;
1219 esac
1220 # Be sure to have absolute directory names.
1221 case $ac_val in
1222 [\\/$]* | ?:[\\/]* ) continue;;
1223 NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
1224 esac
1225 as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
1226done
1227
1228# There might be people who depend on the old broken behavior: `$host'
1229# used to hold the argument of --host etc.
1230# FIXME: To remove some day.
1231build=$build_alias
1232host=$host_alias
1233target=$target_alias
1234
1235# FIXME: To remove some day.
1236if test "x$host_alias" != x; then
1237 if test "x$build_alias" = x; then
1238 cross_compiling=maybe
1239 elif test "x$build_alias" != "x$host_alias"; then
1240 cross_compiling=yes
1241 fi
1242fi
1243
1244ac_tool_prefix=
1245test -n "$host_alias" && ac_tool_prefix=$host_alias-
1246
1247test "$silent" = yes && exec 6>/dev/null
1248
1249
1250ac_pwd=`pwd` && test -n "$ac_pwd" &&
1251ac_ls_di=`ls -di .` &&
1252ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
1253 as_fn_error $? "working directory cannot be determined"
1254test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
1255 as_fn_error $? "pwd does not report name of working directory"
1256
1257
1258# Find the source files, if location was not specified.
1259if test -z "$srcdir"; then
1260 ac_srcdir_defaulted=yes
1261 # Try the directory containing this script, then the parent directory.
1262 ac_confdir=`$as_dirname -- "$as_myself" ||
1263$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
1264 X"$as_myself" : 'X\(//\)[^/]' \| \
1265 X"$as_myself" : 'X\(//\)$' \| \
1266 X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
1267$as_echo X"$as_myself" |
1268 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
1269 s//\1/
1270 q
1271 }
1272 /^X\(\/\/\)[^/].*/{
1273 s//\1/
1274 q
1275 }
1276 /^X\(\/\/\)$/{
1277 s//\1/
1278 q
1279 }
1280 /^X\(\/\).*/{
1281 s//\1/
1282 q
1283 }
1284 s/.*/./; q'`
1285 srcdir=$ac_confdir
1286 if test ! -r "$srcdir/$ac_unique_file"; then
1287 srcdir=..
1288 fi
1289else
1290 ac_srcdir_defaulted=no
1291fi
1292if test ! -r "$srcdir/$ac_unique_file"; then
1293 test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
1294 as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
1295fi
1296ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
1297ac_abs_confdir=`(
1298 cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
1299 pwd)`
1300# When building in place, set srcdir=.
1301if test "$ac_abs_confdir" = "$ac_pwd"; then
1302 srcdir=.
1303fi
1304# Remove unnecessary trailing slashes from srcdir.
1305# Double slashes in file names in object file debugging info
1306# mess up M-x gdb in Emacs.
1307case $srcdir in
1308*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
1309esac
1310for ac_var in $ac_precious_vars; do
1311 eval ac_env_${ac_var}_set=\${${ac_var}+set}
1312 eval ac_env_${ac_var}_value=\$${ac_var}
1313 eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
1314 eval ac_cv_env_${ac_var}_value=\$${ac_var}
1315done
1316
1317#
1318# Report the --help message.
1319#
1320if test "$ac_init_help" = "long"; then
1321 # Omit some internal or obsolete options to make the list less imposing.
1322 # This message is too long to be a string in the A/UX 3.1 sh.
1323 cat <<_ACEOF
1324\`configure' configures libjpeg 9.1.0 to adapt to many kinds of systems.
1325
1326Usage: $0 [OPTION]... [VAR=VALUE]...
1327
1328To assign environment variables (e.g., CC, CFLAGS...), specify them as
1329VAR=VALUE. See below for descriptions of some of the useful variables.
1330
1331Defaults for the options are specified in brackets.
1332
1333Configuration:
1334 -h, --help display this help and exit
1335 --help=short display options specific to this package
1336 --help=recursive display the short help of all the included packages
1337 -V, --version display version information and exit
1338 -q, --quiet, --silent do not print \`checking ...' messages
1339 --cache-file=FILE cache test results in FILE [disabled]
1340 -C, --config-cache alias for \`--cache-file=config.cache'
1341 -n, --no-create do not create output files
1342 --srcdir=DIR find the sources in DIR [configure dir or \`..']
1343
1344Installation directories:
1345 --prefix=PREFIX install architecture-independent files in PREFIX
1346 [$ac_default_prefix]
1347 --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
1348 [PREFIX]
1349
1350By default, \`make install' will install all the files in
1351\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
1352an installation prefix other than \`$ac_default_prefix' using \`--prefix',
1353for instance \`--prefix=\$HOME'.
1354
1355For better control, use the options below.
1356
1357Fine tuning of the installation directories:
1358 --bindir=DIR user executables [EPREFIX/bin]
1359 --sbindir=DIR system admin executables [EPREFIX/sbin]
1360 --libexecdir=DIR program executables [EPREFIX/libexec]
1361 --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
1362 --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
1363 --localstatedir=DIR modifiable single-machine data [PREFIX/var]
1364 --libdir=DIR object code libraries [EPREFIX/lib]
1365 --includedir=DIR C header files [PREFIX/include]
1366 --oldincludedir=DIR C header files for non-gcc [/usr/include]
1367 --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
1368 --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
1369 --infodir=DIR info documentation [DATAROOTDIR/info]
1370 --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
1371 --mandir=DIR man documentation [DATAROOTDIR/man]
1372 --docdir=DIR documentation root [DATAROOTDIR/doc/libjpeg]
1373 --htmldir=DIR html documentation [DOCDIR]
1374 --dvidir=DIR dvi documentation [DOCDIR]
1375 --pdfdir=DIR pdf documentation [DOCDIR]
1376 --psdir=DIR ps documentation [DOCDIR]
1377_ACEOF
1378
1379 cat <<\_ACEOF
1380
1381Program names:
1382 --program-prefix=PREFIX prepend PREFIX to installed program names
1383 --program-suffix=SUFFIX append SUFFIX to installed program names
1384 --program-transform-name=PROGRAM run sed PROGRAM on installed program names
1385
1386System types:
1387 --build=BUILD configure for building on BUILD [guessed]
1388 --host=HOST cross-compile to build programs to run on HOST [BUILD]
1389 --target=TARGET configure for building compilers for TARGET [HOST]
1390_ACEOF
1391fi
1392
1393if test -n "$ac_init_help"; then
1394 case $ac_init_help in
1395 short | recursive ) echo "Configuration of libjpeg 9.1.0:";;
1396 esac
1397 cat <<\_ACEOF
1398
1399Optional Features:
1400 --disable-option-checking ignore unrecognized --enable/--with options
1401 --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
1402 --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
1403 --enable-silent-rules less verbose build output (undo: "make V=1")
1404 --disable-silent-rules verbose build output (undo: "make V=0")
1405 --enable-maintainer-mode
1406 enable make rules and dependencies not useful (and
1407 sometimes confusing) to the casual installer
1408 --enable-dependency-tracking
1409 do not reject slow dependency extractors
1410 --disable-dependency-tracking
1411 speeds up one-time build
1412 --enable-ld-version-script
1413 enable linker version script (default is enabled
1414 when possible)
1415 --enable-shared[=PKGS] build shared libraries [default=yes]
1416 --enable-static[=PKGS] build static libraries [default=yes]
1417 --enable-fast-install[=PKGS]
1418 optimize for fast installation [default=yes]
1419 --disable-libtool-lock avoid locking (might break parallel builds)
1420 --enable-maxmem=N enable use of temp files, set max mem usage to N MB
1421
1422Optional Packages:
1423 --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
1424 --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
1425 --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
1426 both]
1427 --with-gnu-ld assume the C compiler uses GNU ld [default=no]
1428 --with-sysroot=DIR Search for dependent libraries within DIR
1429 (or the compiler's sysroot if not specified).
1430
1431Some influential environment variables:
1432 CC C compiler command
1433 CFLAGS C compiler flags
1434 LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
1435 nonstandard directory <lib dir>
1436 LIBS libraries to pass to the linker, e.g. -l<library>
1437 CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
1438 you have headers in a nonstandard directory <include dir>
1439 CPP C preprocessor
1440
1441Use these variables to override the choices made by `configure' or to help
1442it to find libraries and programs with nonstandard names/locations.
1443
1444Report bugs to the package provider.
1445_ACEOF
1446ac_status=$?
1447fi
1448
1449if test "$ac_init_help" = "recursive"; then
1450 # If there are subdirs, report their specific --help.
1451 for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
1452 test -d "$ac_dir" ||
1453 { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
1454 continue
1455 ac_builddir=.
1456
1457case "$ac_dir" in
1458.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
1459*)
1460 ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
1461 # A ".." for each directory in $ac_dir_suffix.
1462 ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
1463 case $ac_top_builddir_sub in
1464 "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
1465 *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
1466 esac ;;
1467esac
1468ac_abs_top_builddir=$ac_pwd
1469ac_abs_builddir=$ac_pwd$ac_dir_suffix
1470# for backward compatibility:
1471ac_top_builddir=$ac_top_build_prefix
1472
1473case $srcdir in
1474 .) # We are building in place.
1475 ac_srcdir=.
1476 ac_top_srcdir=$ac_top_builddir_sub
1477 ac_abs_top_srcdir=$ac_pwd ;;
1478 [\\/]* | ?:[\\/]* ) # Absolute name.
1479 ac_srcdir=$srcdir$ac_dir_suffix;
1480 ac_top_srcdir=$srcdir
1481 ac_abs_top_srcdir=$srcdir ;;
1482 *) # Relative name.
1483 ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
1484 ac_top_srcdir=$ac_top_build_prefix$srcdir
1485 ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
1486esac
1487ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
1488
1489 cd "$ac_dir" || { ac_status=$?; continue; }
1490 # Check for guested configure.
1491 if test -f "$ac_srcdir/configure.gnu"; then
1492 echo &&
1493 $SHELL "$ac_srcdir/configure.gnu" --help=recursive
1494 elif test -f "$ac_srcdir/configure"; then
1495 echo &&
1496 $SHELL "$ac_srcdir/configure" --help=recursive
1497 else
1498 $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
1499 fi || ac_status=$?
1500 cd "$ac_pwd" || { ac_status=$?; break; }
1501 done
1502fi
1503
1504test -n "$ac_init_help" && exit $ac_status
1505if $ac_init_version; then
1506 cat <<\_ACEOF
1507libjpeg configure 9.1.0
1508generated by GNU Autoconf 2.69
1509
1510Copyright (C) 2012 Free Software Foundation, Inc.
1511This configure script is free software; the Free Software Foundation
1512gives unlimited permission to copy, distribute and modify it.
1513_ACEOF
1514 exit
1515fi
1516
1517## ------------------------ ##
1518## Autoconf initialization. ##
1519## ------------------------ ##
1520
1521# ac_fn_c_try_compile LINENO
1522# --------------------------
1523# Try to compile conftest.$ac_ext, and return whether this succeeded.
1524ac_fn_c_try_compile ()
1525{
1526 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1527 rm -f conftest.$ac_objext
1528 if { { ac_try="$ac_compile"
1529case "(($ac_try" in
1530 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1531 *) ac_try_echo=$ac_try;;
1532esac
1533eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1534$as_echo "$ac_try_echo"; } >&5
1535 (eval "$ac_compile") 2>conftest.err
1536 ac_status=$?
1537 if test -s conftest.err; then
1538 grep -v '^ *+' conftest.err >conftest.er1
1539 cat conftest.er1 >&5
1540 mv -f conftest.er1 conftest.err
1541 fi
1542 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1543 test $ac_status = 0; } && {
1544 test -z "$ac_c_werror_flag" ||
1545 test ! -s conftest.err
1546 } && test -s conftest.$ac_objext; then :
1547 ac_retval=0
1548else
1549 $as_echo "$as_me: failed program was:" >&5
1550sed 's/^/| /' conftest.$ac_ext >&5
1551
1552 ac_retval=1
1553fi
1554 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1555 as_fn_set_status $ac_retval
1556
1557} # ac_fn_c_try_compile
1558
1559# ac_fn_c_try_cpp LINENO
1560# ----------------------
1561# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
1562ac_fn_c_try_cpp ()
1563{
1564 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1565 if { { ac_try="$ac_cpp conftest.$ac_ext"
1566case "(($ac_try" in
1567 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1568 *) ac_try_echo=$ac_try;;
1569esac
1570eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1571$as_echo "$ac_try_echo"; } >&5
1572 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
1573 ac_status=$?
1574 if test -s conftest.err; then
1575 grep -v '^ *+' conftest.err >conftest.er1
1576 cat conftest.er1 >&5
1577 mv -f conftest.er1 conftest.err
1578 fi
1579 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1580 test $ac_status = 0; } > conftest.i && {
1581 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
1582 test ! -s conftest.err
1583 }; then :
1584 ac_retval=0
1585else
1586 $as_echo "$as_me: failed program was:" >&5
1587sed 's/^/| /' conftest.$ac_ext >&5
1588
1589 ac_retval=1
1590fi
1591 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1592 as_fn_set_status $ac_retval
1593
1594} # ac_fn_c_try_cpp
1595
1596# ac_fn_c_try_link LINENO
1597# -----------------------
1598# Try to link conftest.$ac_ext, and return whether this succeeded.
1599ac_fn_c_try_link ()
1600{
1601 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1602 rm -f conftest.$ac_objext conftest$ac_exeext
1603 if { { ac_try="$ac_link"
1604case "(($ac_try" in
1605 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1606 *) ac_try_echo=$ac_try;;
1607esac
1608eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1609$as_echo "$ac_try_echo"; } >&5
1610 (eval "$ac_link") 2>conftest.err
1611 ac_status=$?
1612 if test -s conftest.err; then
1613 grep -v '^ *+' conftest.err >conftest.er1
1614 cat conftest.er1 >&5
1615 mv -f conftest.er1 conftest.err
1616 fi
1617 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1618 test $ac_status = 0; } && {
1619 test -z "$ac_c_werror_flag" ||
1620 test ! -s conftest.err
1621 } && test -s conftest$ac_exeext && {
1622 test "$cross_compiling" = yes ||
1623 test -x conftest$ac_exeext
1624 }; then :
1625 ac_retval=0
1626else
1627 $as_echo "$as_me: failed program was:" >&5
1628sed 's/^/| /' conftest.$ac_ext >&5
1629
1630 ac_retval=1
1631fi
1632 # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
1633 # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
1634 # interfere with the next link command; also delete a directory that is
1635 # left behind by Apple's compiler. We do this before executing the actions.
1636 rm -rf conftest.dSYM conftest_ipa8_conftest.oo
1637 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1638 as_fn_set_status $ac_retval
1639
1640} # ac_fn_c_try_link
1641
1642# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
1643# -------------------------------------------------------
1644# Tests whether HEADER exists, giving a warning if it cannot be compiled using
1645# the include files in INCLUDES and setting the cache variable VAR
1646# accordingly.
1647ac_fn_c_check_header_mongrel ()
1648{
1649 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1650 if eval \${$3+:} false; then :
1651 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
1652$as_echo_n "checking for $2... " >&6; }
1653if eval \${$3+:} false; then :
1654 $as_echo_n "(cached) " >&6
1655fi
1656eval ac_res=\$$3
1657 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1658$as_echo "$ac_res" >&6; }
1659else
1660 # Is the header compilable?
1661{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
1662$as_echo_n "checking $2 usability... " >&6; }
1663cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1664/* end confdefs.h. */
1665$4
1666#include <$2>
1667_ACEOF
1668if ac_fn_c_try_compile "$LINENO"; then :
1669 ac_header_compiler=yes
1670else
1671 ac_header_compiler=no
1672fi
1673rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
1674{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
1675$as_echo "$ac_header_compiler" >&6; }
1676
1677# Is the header present?
1678{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
1679$as_echo_n "checking $2 presence... " >&6; }
1680cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1681/* end confdefs.h. */
1682#include <$2>
1683_ACEOF
1684if ac_fn_c_try_cpp "$LINENO"; then :
1685 ac_header_preproc=yes
1686else
1687 ac_header_preproc=no
1688fi
1689rm -f conftest.err conftest.i conftest.$ac_ext
1690{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
1691$as_echo "$ac_header_preproc" >&6; }
1692
1693# So? What about this header?
1694case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
1695 yes:no: )
1696 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
1697$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
1698 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
1699$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
1700 ;;
1701 no:yes:* )
1702 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
1703$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
1704 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
1705$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
1706 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
1707$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
1708 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
1709$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
1710 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
1711$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
1712 ;;
1713esac
1714 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
1715$as_echo_n "checking for $2... " >&6; }
1716if eval \${$3+:} false; then :
1717 $as_echo_n "(cached) " >&6
1718else
1719 eval "$3=\$ac_header_compiler"
1720fi
1721eval ac_res=\$$3
1722 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1723$as_echo "$ac_res" >&6; }
1724fi
1725 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1726
1727} # ac_fn_c_check_header_mongrel
1728
1729# ac_fn_c_try_run LINENO
1730# ----------------------
1731# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
1732# that executables *can* be run.
1733ac_fn_c_try_run ()
1734{
1735 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1736 if { { ac_try="$ac_link"
1737case "(($ac_try" in
1738 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1739 *) ac_try_echo=$ac_try;;
1740esac
1741eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1742$as_echo "$ac_try_echo"; } >&5
1743 (eval "$ac_link") 2>&5
1744 ac_status=$?
1745 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1746 test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
1747 { { case "(($ac_try" in
1748 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1749 *) ac_try_echo=$ac_try;;
1750esac
1751eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1752$as_echo "$ac_try_echo"; } >&5
1753 (eval "$ac_try") 2>&5
1754 ac_status=$?
1755 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1756 test $ac_status = 0; }; }; then :
1757 ac_retval=0
1758else
1759 $as_echo "$as_me: program exited with status $ac_status" >&5
1760 $as_echo "$as_me: failed program was:" >&5
1761sed 's/^/| /' conftest.$ac_ext >&5
1762
1763 ac_retval=$ac_status
1764fi
1765 rm -rf conftest.dSYM conftest_ipa8_conftest.oo
1766 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1767 as_fn_set_status $ac_retval
1768
1769} # ac_fn_c_try_run
1770
1771# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
1772# -------------------------------------------------------
1773# Tests whether HEADER exists and can be compiled using the include files in
1774# INCLUDES, setting the cache variable VAR accordingly.
1775ac_fn_c_check_header_compile ()
1776{
1777 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1778 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
1779$as_echo_n "checking for $2... " >&6; }
1780if eval \${$3+:} false; then :
1781 $as_echo_n "(cached) " >&6
1782else
1783 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1784/* end confdefs.h. */
1785$4
1786#include <$2>
1787_ACEOF
1788if ac_fn_c_try_compile "$LINENO"; then :
1789 eval "$3=yes"
1790else
1791 eval "$3=no"
1792fi
1793rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
1794fi
1795eval ac_res=\$$3
1796 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1797$as_echo "$ac_res" >&6; }
1798 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1799
1800} # ac_fn_c_check_header_compile
1801
1802# ac_fn_c_check_func LINENO FUNC VAR
1803# ----------------------------------
1804# Tests whether FUNC exists, setting the cache variable VAR accordingly
1805ac_fn_c_check_func ()
1806{
1807 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1808 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
1809$as_echo_n "checking for $2... " >&6; }
1810if eval \${$3+:} false; then :
1811 $as_echo_n "(cached) " >&6
1812else
1813 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1814/* end confdefs.h. */
1815/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
1816 For example, HP-UX 11i <limits.h> declares gettimeofday. */
1817#define $2 innocuous_$2
1818
1819/* System header to define __stub macros and hopefully few prototypes,
1820 which can conflict with char $2 (); below.
1821 Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
1822 <limits.h> exists even on freestanding compilers. */
1823
1824#ifdef __STDC__
1825# include <limits.h>
1826#else
1827# include <assert.h>
1828#endif
1829
1830#undef $2
1831
1832/* Override any GCC internal prototype to avoid an error.
1833 Use char because int might match the return type of a GCC
1834 builtin and then its argument prototype would still apply. */
1835#ifdef __cplusplus
1836extern "C"
1837#endif
1838char $2 ();
1839/* The GNU C library defines this for functions which it implements
1840 to always fail with ENOSYS. Some functions are actually named
1841 something starting with __ and the normal name is an alias. */
1842#if defined __stub_$2 || defined __stub___$2
1843choke me
1844#endif
1845
1846int
1847main ()
1848{
1849return $2 ();
1850 ;
1851 return 0;
1852}
1853_ACEOF
1854if ac_fn_c_try_link "$LINENO"; then :
1855 eval "$3=yes"
1856else
1857 eval "$3=no"
1858fi
1859rm -f core conftest.err conftest.$ac_objext \
1860 conftest$ac_exeext conftest.$ac_ext
1861fi
1862eval ac_res=\$$3
1863 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1864$as_echo "$ac_res" >&6; }
1865 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1866
1867} # ac_fn_c_check_func
1868cat >config.log <<_ACEOF
1869This file contains any messages produced by compilers while
1870running configure, to aid debugging if configure makes a mistake.
1871
1872It was created by libjpeg $as_me 9.1.0, which was
1873generated by GNU Autoconf 2.69. Invocation command line was
1874
1875 $ $0 $@
1876
1877_ACEOF
1878exec 5>>config.log
1879{
1880cat <<_ASUNAME
1881## --------- ##
1882## Platform. ##
1883## --------- ##
1884
1885hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
1886uname -m = `(uname -m) 2>/dev/null || echo unknown`
1887uname -r = `(uname -r) 2>/dev/null || echo unknown`
1888uname -s = `(uname -s) 2>/dev/null || echo unknown`
1889uname -v = `(uname -v) 2>/dev/null || echo unknown`
1890
1891/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
1892/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
1893
1894/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
1895/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
1896/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
1897/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
1898/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
1899/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
1900/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
1901
1902_ASUNAME
1903
1904as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
1905for as_dir in $PATH
1906do
1907 IFS=$as_save_IFS
1908 test -z "$as_dir" && as_dir=.
1909 $as_echo "PATH: $as_dir"
1910 done
1911IFS=$as_save_IFS
1912
1913} >&5
1914
1915cat >&5 <<_ACEOF
1916
1917
1918## ----------- ##
1919## Core tests. ##
1920## ----------- ##
1921
1922_ACEOF
1923
1924
1925# Keep a trace of the command line.
1926# Strip out --no-create and --no-recursion so they do not pile up.
1927# Strip out --silent because we don't want to record it for future runs.
1928# Also quote any args containing shell meta-characters.
1929# Make two passes to allow for proper duplicate-argument suppression.
1930ac_configure_args=
1931ac_configure_args0=
1932ac_configure_args1=
1933ac_must_keep_next=false
1934for ac_pass in 1 2
1935do
1936 for ac_arg
1937 do
1938 case $ac_arg in
1939 -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
1940 -q | -quiet | --quiet | --quie | --qui | --qu | --q \
1941 | -silent | --silent | --silen | --sile | --sil)
1942 continue ;;
1943 *\'*)
1944 ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
1945 esac
1946 case $ac_pass in
1947 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
1948 2)
1949 as_fn_append ac_configure_args1 " '$ac_arg'"
1950 if test $ac_must_keep_next = true; then
1951 ac_must_keep_next=false # Got value, back to normal.
1952 else
1953 case $ac_arg in
1954 *=* | --config-cache | -C | -disable-* | --disable-* \
1955 | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
1956 | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
1957 | -with-* | --with-* | -without-* | --without-* | --x)
1958 case "$ac_configure_args0 " in
1959 "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
1960 esac
1961 ;;
1962 -* ) ac_must_keep_next=true ;;
1963 esac
1964 fi
1965 as_fn_append ac_configure_args " '$ac_arg'"
1966 ;;
1967 esac
1968 done
1969done
1970{ ac_configure_args0=; unset ac_configure_args0;}
1971{ ac_configure_args1=; unset ac_configure_args1;}
1972
1973# When interrupted or exit'd, cleanup temporary files, and complete
1974# config.log. We remove comments because anyway the quotes in there
1975# would cause problems or look ugly.
1976# WARNING: Use '\'' to represent an apostrophe within the trap.
1977# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
1978trap 'exit_status=$?
1979 # Save into config.log some information that might help in debugging.
1980 {
1981 echo
1982
1983 $as_echo "## ---------------- ##
1984## Cache variables. ##
1985## ---------------- ##"
1986 echo
1987 # The following way of writing the cache mishandles newlines in values,
1988(
1989 for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
1990 eval ac_val=\$$ac_var
1991 case $ac_val in #(
1992 *${as_nl}*)
1993 case $ac_var in #(
1994 *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
1995$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
1996 esac
1997 case $ac_var in #(
1998 _ | IFS | as_nl) ;; #(
1999 BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
2000 *) { eval $ac_var=; unset $ac_var;} ;;
2001 esac ;;
2002 esac
2003 done
2004 (set) 2>&1 |
2005 case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
2006 *${as_nl}ac_space=\ *)
2007 sed -n \
2008 "s/'\''/'\''\\\\'\'''\''/g;
2009 s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
2010 ;; #(
2011 *)
2012 sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
2013 ;;
2014 esac |
2015 sort
2016)
2017 echo
2018
2019 $as_echo "## ----------------- ##
2020## Output variables. ##
2021## ----------------- ##"
2022 echo
2023 for ac_var in $ac_subst_vars
2024 do
2025 eval ac_val=\$$ac_var
2026 case $ac_val in
2027 *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
2028 esac
2029 $as_echo "$ac_var='\''$ac_val'\''"
2030 done | sort
2031 echo
2032
2033 if test -n "$ac_subst_files"; then
2034 $as_echo "## ------------------- ##
2035## File substitutions. ##
2036## ------------------- ##"
2037 echo
2038 for ac_var in $ac_subst_files
2039 do
2040 eval ac_val=\$$ac_var
2041 case $ac_val in
2042 *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
2043 esac
2044 $as_echo "$ac_var='\''$ac_val'\''"
2045 done | sort
2046 echo
2047 fi
2048
2049 if test -s confdefs.h; then
2050 $as_echo "## ----------- ##
2051## confdefs.h. ##
2052## ----------- ##"
2053 echo
2054 cat confdefs.h
2055 echo
2056 fi
2057 test "$ac_signal" != 0 &&
2058 $as_echo "$as_me: caught signal $ac_signal"
2059 $as_echo "$as_me: exit $exit_status"
2060 } >&5
2061 rm -f core *.core core.conftest.* &&
2062 rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
2063 exit $exit_status
2064' 0
2065for ac_signal in 1 2 13 15; do
2066 trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
2067done
2068ac_signal=0
2069
2070# confdefs.h avoids OS command line length limits that DEFS can exceed.
2071rm -f -r conftest* confdefs.h
2072
2073$as_echo "/* confdefs.h */" > confdefs.h
2074
2075# Predefined preprocessor variables.
2076
2077cat >>confdefs.h <<_ACEOF
2078#define PACKAGE_NAME "$PACKAGE_NAME"
2079_ACEOF
2080
2081cat >>confdefs.h <<_ACEOF
2082#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
2083_ACEOF
2084
2085cat >>confdefs.h <<_ACEOF
2086#define PACKAGE_VERSION "$PACKAGE_VERSION"
2087_ACEOF
2088
2089cat >>confdefs.h <<_ACEOF
2090#define PACKAGE_STRING "$PACKAGE_STRING"
2091_ACEOF
2092
2093cat >>confdefs.h <<_ACEOF
2094#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
2095_ACEOF
2096
2097cat >>confdefs.h <<_ACEOF
2098#define PACKAGE_URL "$PACKAGE_URL"
2099_ACEOF
2100
2101
2102# Let the site file select an alternate cache file if it wants to.
2103# Prefer an explicitly selected file to automatically selected ones.
2104ac_site_file1=NONE
2105ac_site_file2=NONE
2106if test -n "$CONFIG_SITE"; then
2107 # We do not want a PATH search for config.site.
2108 case $CONFIG_SITE in #((
2109 -*) ac_site_file1=./$CONFIG_SITE;;
2110 */*) ac_site_file1=$CONFIG_SITE;;
2111 *) ac_site_file1=./$CONFIG_SITE;;
2112 esac
2113elif test "x$prefix" != xNONE; then
2114 ac_site_file1=$prefix/share/config.site
2115 ac_site_file2=$prefix/etc/config.site
2116else
2117 ac_site_file1=$ac_default_prefix/share/config.site
2118 ac_site_file2=$ac_default_prefix/etc/config.site
2119fi
2120for ac_site_file in "$ac_site_file1" "$ac_site_file2"
2121do
2122 test "x$ac_site_file" = xNONE && continue
2123 if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
2124 { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
2125$as_echo "$as_me: loading site script $ac_site_file" >&6;}
2126 sed 's/^/| /' "$ac_site_file" >&5
2127 . "$ac_site_file" \
2128 || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
2129$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
2130as_fn_error $? "failed to load site script $ac_site_file
2131See \`config.log' for more details" "$LINENO" 5; }
2132 fi
2133done
2134
2135if test -r "$cache_file"; then
2136 # Some versions of bash will fail to source /dev/null (special files
2137 # actually), so we avoid doing that. DJGPP emulates it as a regular file.
2138 if test /dev/null != "$cache_file" && test -f "$cache_file"; then
2139 { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
2140$as_echo "$as_me: loading cache $cache_file" >&6;}
2141 case $cache_file in
2142 [\\/]* | ?:[\\/]* ) . "$cache_file";;
2143 *) . "./$cache_file";;
2144 esac
2145 fi
2146else
2147 { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
2148$as_echo "$as_me: creating cache $cache_file" >&6;}
2149 >$cache_file
2150fi
2151
2152# Check that the precious variables saved in the cache have kept the same
2153# value.
2154ac_cache_corrupted=false
2155for ac_var in $ac_precious_vars; do
2156 eval ac_old_set=\$ac_cv_env_${ac_var}_set
2157 eval ac_new_set=\$ac_env_${ac_var}_set
2158 eval ac_old_val=\$ac_cv_env_${ac_var}_value
2159 eval ac_new_val=\$ac_env_${ac_var}_value
2160 case $ac_old_set,$ac_new_set in
2161 set,)
2162 { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
2163$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
2164 ac_cache_corrupted=: ;;
2165 ,set)
2166 { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
2167$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
2168 ac_cache_corrupted=: ;;
2169 ,);;
2170 *)
2171 if test "x$ac_old_val" != "x$ac_new_val"; then
2172 # differences in whitespace do not lead to failure.
2173 ac_old_val_w=`echo x $ac_old_val`
2174 ac_new_val_w=`echo x $ac_new_val`
2175 if test "$ac_old_val_w" != "$ac_new_val_w"; then
2176 { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
2177$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
2178 ac_cache_corrupted=:
2179 else
2180 { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
2181$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
2182 eval $ac_var=\$ac_old_val
2183 fi
2184 { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
2185$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
2186 { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
2187$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
2188 fi;;
2189 esac
2190 # Pass precious variables to config.status.
2191 if test "$ac_new_set" = set; then
2192 case $ac_new_val in
2193 *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
2194 *) ac_arg=$ac_var=$ac_new_val ;;
2195 esac
2196 case " $ac_configure_args " in
2197 *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
2198 *) as_fn_append ac_configure_args " '$ac_arg'" ;;
2199 esac
2200 fi
2201done
2202if $ac_cache_corrupted; then
2203 { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
2204$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
2205 { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
2206$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
2207 as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
2208fi
2209## -------------------- ##
2210## Main body of script. ##
2211## -------------------- ##
2212
2213ac_ext=c
2214ac_cpp='$CPP $CPPFLAGS'
2215ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
2216ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
2217ac_compiler_gnu=$ac_cv_c_compiler_gnu
2218
2219
2220
2221# Directory where autotools helper scripts lives.
2222ac_aux_dir=
2223for ac_dir in . "$srcdir"/.; do
2224 if test -f "$ac_dir/install-sh"; then
2225 ac_aux_dir=$ac_dir
2226 ac_install_sh="$ac_aux_dir/install-sh -c"
2227 break
2228 elif test -f "$ac_dir/install.sh"; then
2229 ac_aux_dir=$ac_dir
2230 ac_install_sh="$ac_aux_dir/install.sh -c"
2231 break
2232 elif test -f "$ac_dir/shtool"; then
2233 ac_aux_dir=$ac_dir
2234 ac_install_sh="$ac_aux_dir/shtool install -c"
2235 break
2236 fi
2237done
2238if test -z "$ac_aux_dir"; then
2239 as_fn_error $? "cannot find install-sh, install.sh, or shtool in . \"$srcdir\"/." "$LINENO" 5
2240fi
2241
2242# These three variables are undocumented and unsupported,
2243# and are intended to be withdrawn in a future Autoconf release.
2244# They can cause serious problems if a builder's source tree is in a directory
2245# whose full name contains unusual characters.
2246ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
2247ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
2248ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
2249
2250
2251
2252# Generate configuration headers.
2253ac_config_headers="$ac_config_headers jconfig.h:jconfig.cfg"
2254
2255
2256# Hack: disable autoheader so that it doesn't overwrite our cfg template.
2257AUTOHEADER="echo autoheader ignored"
2258
2259# Check system type
2260# Make sure we can run config.sub.
2261$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
2262 as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
2263
2264{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
2265$as_echo_n "checking build system type... " >&6; }
2266if ${ac_cv_build+:} false; then :
2267 $as_echo_n "(cached) " >&6
2268else
2269 ac_build_alias=$build_alias
2270test "x$ac_build_alias" = x &&
2271 ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
2272test "x$ac_build_alias" = x &&
2273 as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
2274ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
2275 as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
2276
2277fi
2278{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
2279$as_echo "$ac_cv_build" >&6; }
2280case $ac_cv_build in
2281*-*-*) ;;
2282*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
2283esac
2284build=$ac_cv_build
2285ac_save_IFS=$IFS; IFS='-'
2286set x $ac_cv_build
2287shift
2288build_cpu=$1
2289build_vendor=$2
2290shift; shift
2291# Remember, the first character of IFS is used to create $*,
2292# except with old shells:
2293build_os=$*
2294IFS=$ac_save_IFS
2295case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
2296
2297
2298{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
2299$as_echo_n "checking host system type... " >&6; }
2300if ${ac_cv_host+:} false; then :
2301 $as_echo_n "(cached) " >&6
2302else
2303 if test "x$host_alias" = x; then
2304 ac_cv_host=$ac_cv_build
2305else
2306 ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
2307 as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
2308fi
2309
2310fi
2311{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
2312$as_echo "$ac_cv_host" >&6; }
2313case $ac_cv_host in
2314*-*-*) ;;
2315*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
2316esac
2317host=$ac_cv_host
2318ac_save_IFS=$IFS; IFS='-'
2319set x $ac_cv_host
2320shift
2321host_cpu=$1
2322host_vendor=$2
2323shift; shift
2324# Remember, the first character of IFS is used to create $*,
2325# except with old shells:
2326host_os=$*
2327IFS=$ac_save_IFS
2328case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
2329
2330
2331{ $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5
2332$as_echo_n "checking target system type... " >&6; }
2333if ${ac_cv_target+:} false; then :
2334 $as_echo_n "(cached) " >&6
2335else
2336 if test "x$target_alias" = x; then
2337 ac_cv_target=$ac_cv_host
2338else
2339 ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` ||
2340 as_fn_error $? "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5
2341fi
2342
2343fi
2344{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5
2345$as_echo "$ac_cv_target" >&6; }
2346case $ac_cv_target in
2347*-*-*) ;;
2348*) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;;
2349esac
2350target=$ac_cv_target
2351ac_save_IFS=$IFS; IFS='-'
2352set x $ac_cv_target
2353shift
2354target_cpu=$1
2355target_vendor=$2
2356shift; shift
2357# Remember, the first character of IFS is used to create $*,
2358# except with old shells:
2359target_os=$*
2360IFS=$ac_save_IFS
2361case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac
2362
2363
2364# The aliases save the names the user supplied, while $host etc.
2365# will get canonicalized.
2366test -n "$target_alias" &&
2367 test "$program_prefix$program_suffix$program_transform_name" = \
2368 NONENONEs,x,x, &&
2369 program_prefix=${target_alias}-
2370
2371# Initialize Automake
2372# Don't require all the GNU mandated files
2373am__api_version='1.14'
2374
2375# Find a good install program. We prefer a C program (faster),
2376# so one script is as good as another. But avoid the broken or
2377# incompatible versions:
2378# SysV /etc/install, /usr/sbin/install
2379# SunOS /usr/etc/install
2380# IRIX /sbin/install
2381# AIX /bin/install
2382# AmigaOS /C/install, which installs bootblocks on floppy discs
2383# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
2384# AFS /usr/afsws/bin/install, which mishandles nonexistent args
2385# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
2386# OS/2's system install, which has a completely different semantic
2387# ./install, which can be erroneously created by make from ./install.sh.
2388# Reject install programs that cannot install multiple files.
2389{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
2390$as_echo_n "checking for a BSD-compatible install... " >&6; }
2391if test -z "$INSTALL"; then
2392if ${ac_cv_path_install+:} false; then :
2393 $as_echo_n "(cached) " >&6
2394else
2395 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2396for as_dir in $PATH
2397do
2398 IFS=$as_save_IFS
2399 test -z "$as_dir" && as_dir=.
2400 # Account for people who put trailing slashes in PATH elements.
2401case $as_dir/ in #((
2402 ./ | .// | /[cC]/* | \
2403 /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
2404 ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
2405 /usr/ucb/* ) ;;
2406 *)
2407 # OSF1 and SCO ODT 3.0 have their own names for install.
2408 # Don't use installbsd from OSF since it installs stuff as root
2409 # by default.
2410 for ac_prog in ginstall scoinst install; do
2411 for ac_exec_ext in '' $ac_executable_extensions; do
2412 if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
2413 if test $ac_prog = install &&
2414 grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
2415 # AIX install. It has an incompatible calling convention.
2416 :
2417 elif test $ac_prog = install &&
2418 grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
2419 # program-specific install script used by HP pwplus--don't use.
2420 :
2421 else
2422 rm -rf conftest.one conftest.two conftest.dir
2423 echo one > conftest.one
2424 echo two > conftest.two
2425 mkdir conftest.dir
2426 if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
2427 test -s conftest.one && test -s conftest.two &&
2428 test -s conftest.dir/conftest.one &&
2429 test -s conftest.dir/conftest.two
2430 then
2431 ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
2432 break 3
2433 fi
2434 fi
2435 fi
2436 done
2437 done
2438 ;;
2439esac
2440
2441 done
2442IFS=$as_save_IFS
2443
2444rm -rf conftest.one conftest.two conftest.dir
2445
2446fi
2447 if test "${ac_cv_path_install+set}" = set; then
2448 INSTALL=$ac_cv_path_install
2449 else
2450 # As a last resort, use the slow shell script. Don't cache a
2451 # value for INSTALL within a source directory, because that will
2452 # break other packages using the cache if that directory is
2453 # removed, or if the value is a relative name.
2454 INSTALL=$ac_install_sh
2455 fi
2456fi
2457{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
2458$as_echo "$INSTALL" >&6; }
2459
2460# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
2461# It thinks the first close brace ends the variable substitution.
2462test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
2463
2464test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
2465
2466test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
2467
2468{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
2469$as_echo_n "checking whether build environment is sane... " >&6; }
2470# Reject unsafe characters in $srcdir or the absolute working directory
2471# name. Accept space and tab only in the latter.
2472am_lf='
2473'
2474case `pwd` in
2475 *[\\\"\#\$\&\'\`$am_lf]*)
2476 as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;;
2477esac
2478case $srcdir in
2479 *[\\\"\#\$\&\'\`$am_lf\ \ ]*)
2480 as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;;
2481esac
2482
2483# Do 'set' in a subshell so we don't clobber the current shell's
2484# arguments. Must try -L first in case configure is actually a
2485# symlink; some systems play weird games with the mod time of symlinks
2486# (eg FreeBSD returns the mod time of the symlink's containing
2487# directory).
2488if (
2489 am_has_slept=no
2490 for am_try in 1 2; do
2491 echo "timestamp, slept: $am_has_slept" > conftest.file
2492 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
2493 if test "$*" = "X"; then
2494 # -L didn't work.
2495 set X `ls -t "$srcdir/configure" conftest.file`
2496 fi
2497 if test "$*" != "X $srcdir/configure conftest.file" \
2498 && test "$*" != "X conftest.file $srcdir/configure"; then
2499
2500 # If neither matched, then we have a broken ls. This can happen
2501 # if, for instance, CONFIG_SHELL is bash and it inherits a
2502 # broken ls alias from the environment. This has actually
2503 # happened. Such a system could not be considered "sane".
2504 as_fn_error $? "ls -t appears to fail. Make sure there is not a broken
2505 alias in your environment" "$LINENO" 5
2506 fi
2507 if test "$2" = conftest.file || test $am_try -eq 2; then
2508 break
2509 fi
2510 # Just in case.
2511 sleep 1
2512 am_has_slept=yes
2513 done
2514 test "$2" = conftest.file
2515 )
2516then
2517 # Ok.
2518 :
2519else
2520 as_fn_error $? "newly created file is older than distributed files!
2521Check your system clock" "$LINENO" 5
2522fi
2523{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
2524$as_echo "yes" >&6; }
2525# If we didn't sleep, we still need to ensure time stamps of config.status and
2526# generated files are strictly newer.
2527am_sleep_pid=
2528if grep 'slept: no' conftest.file >/dev/null 2>&1; then
2529 ( sleep 1 ) &
2530 am_sleep_pid=$!
2531fi
2532
2533rm -f conftest.file
2534
2535test "$program_prefix" != NONE &&
2536 program_transform_name="s&^&$program_prefix&;$program_transform_name"
2537# Use a double $ so make ignores it.
2538test "$program_suffix" != NONE &&
2539 program_transform_name="s&\$&$program_suffix&;$program_transform_name"
2540# Double any \ or $.
2541# By default was `s,x,x', remove it if useless.
2542ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
2543program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
2544
2545# expand $ac_aux_dir to an absolute path
2546am_aux_dir=`cd $ac_aux_dir && pwd`
2547
2548if test x"${MISSING+set}" != xset; then
2549 case $am_aux_dir in
2550 *\ * | *\ *)
2551 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
2552 *)
2553 MISSING="\${SHELL} $am_aux_dir/missing" ;;
2554 esac
2555fi
2556# Use eval to expand $SHELL
2557if eval "$MISSING --is-lightweight"; then
2558 am_missing_run="$MISSING "
2559else
2560 am_missing_run=
2561 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
2562$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
2563fi
2564
2565if test x"${install_sh}" != xset; then
2566 case $am_aux_dir in
2567 *\ * | *\ *)
2568 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
2569 *)
2570 install_sh="\${SHELL} $am_aux_dir/install-sh"
2571 esac
2572fi
2573
2574# Installed binaries are usually stripped using 'strip' when the user
2575# run "make install-strip". However 'strip' might not be the right
2576# tool to use in cross-compilation environments, therefore Automake
2577# will honor the 'STRIP' environment variable to overrule this program.
2578if test "$cross_compiling" != no; then
2579 if test -n "$ac_tool_prefix"; then
2580 # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
2581set dummy ${ac_tool_prefix}strip; ac_word=$2
2582{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
2583$as_echo_n "checking for $ac_word... " >&6; }
2584if ${ac_cv_prog_STRIP+:} false; then :
2585 $as_echo_n "(cached) " >&6
2586else
2587 if test -n "$STRIP"; then
2588 ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
2589else
2590as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2591for as_dir in $PATH
2592do
2593 IFS=$as_save_IFS
2594 test -z "$as_dir" && as_dir=.
2595 for ac_exec_ext in '' $ac_executable_extensions; do
2596 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
2597 ac_cv_prog_STRIP="${ac_tool_prefix}strip"
2598 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
2599 break 2
2600 fi
2601done
2602 done
2603IFS=$as_save_IFS
2604
2605fi
2606fi
2607STRIP=$ac_cv_prog_STRIP
2608if test -n "$STRIP"; then
2609 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
2610$as_echo "$STRIP" >&6; }
2611else
2612 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2613$as_echo "no" >&6; }
2614fi
2615
2616
2617fi
2618if test -z "$ac_cv_prog_STRIP"; then
2619 ac_ct_STRIP=$STRIP
2620 # Extract the first word of "strip", so it can be a program name with args.
2621set dummy strip; ac_word=$2
2622{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
2623$as_echo_n "checking for $ac_word... " >&6; }
2624if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
2625 $as_echo_n "(cached) " >&6
2626else
2627 if test -n "$ac_ct_STRIP"; then
2628 ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
2629else
2630as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2631for as_dir in $PATH
2632do
2633 IFS=$as_save_IFS
2634 test -z "$as_dir" && as_dir=.
2635 for ac_exec_ext in '' $ac_executable_extensions; do
2636 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
2637 ac_cv_prog_ac_ct_STRIP="strip"
2638 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
2639 break 2
2640 fi
2641done
2642 done
2643IFS=$as_save_IFS
2644
2645fi
2646fi
2647ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
2648if test -n "$ac_ct_STRIP"; then
2649 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
2650$as_echo "$ac_ct_STRIP" >&6; }
2651else
2652 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2653$as_echo "no" >&6; }
2654fi
2655
2656 if test "x$ac_ct_STRIP" = x; then
2657 STRIP=":"
2658 else
2659 case $cross_compiling:$ac_tool_warned in
2660yes:)
2661{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
2662$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
2663ac_tool_warned=yes ;;
2664esac
2665 STRIP=$ac_ct_STRIP
2666 fi
2667else
2668 STRIP="$ac_cv_prog_STRIP"
2669fi
2670
2671fi
2672INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
2673
2674{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
2675$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
2676if test -z "$MKDIR_P"; then
2677 if ${ac_cv_path_mkdir+:} false; then :
2678 $as_echo_n "(cached) " >&6
2679else
2680 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2681for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
2682do
2683 IFS=$as_save_IFS
2684 test -z "$as_dir" && as_dir=.
2685 for ac_prog in mkdir gmkdir; do
2686 for ac_exec_ext in '' $ac_executable_extensions; do
2687 as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
2688 case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
2689 'mkdir (GNU coreutils) '* | \
2690 'mkdir (coreutils) '* | \
2691 'mkdir (fileutils) '4.1*)
2692 ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
2693 break 3;;
2694 esac
2695 done
2696 done
2697 done
2698IFS=$as_save_IFS
2699
2700fi
2701
2702 test -d ./--version && rmdir ./--version
2703 if test "${ac_cv_path_mkdir+set}" = set; then
2704 MKDIR_P="$ac_cv_path_mkdir -p"
2705 else
2706 # As a last resort, use the slow shell script. Don't cache a
2707 # value for MKDIR_P within a source directory, because that will
2708 # break other packages using the cache if that directory is
2709 # removed, or if the value is a relative name.
2710 MKDIR_P="$ac_install_sh -d"
2711 fi
2712fi
2713{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
2714$as_echo "$MKDIR_P" >&6; }
2715
2716for ac_prog in gawk mawk nawk awk
2717do
2718 # Extract the first word of "$ac_prog", so it can be a program name with args.
2719set dummy $ac_prog; ac_word=$2
2720{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
2721$as_echo_n "checking for $ac_word... " >&6; }
2722if ${ac_cv_prog_AWK+:} false; then :
2723 $as_echo_n "(cached) " >&6
2724else
2725 if test -n "$AWK"; then
2726 ac_cv_prog_AWK="$AWK" # Let the user override the test.
2727else
2728as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2729for as_dir in $PATH
2730do
2731 IFS=$as_save_IFS
2732 test -z "$as_dir" && as_dir=.
2733 for ac_exec_ext in '' $ac_executable_extensions; do
2734 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
2735 ac_cv_prog_AWK="$ac_prog"
2736 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
2737 break 2
2738 fi
2739done
2740 done
2741IFS=$as_save_IFS
2742
2743fi
2744fi
2745AWK=$ac_cv_prog_AWK
2746if test -n "$AWK"; then
2747 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
2748$as_echo "$AWK" >&6; }
2749else
2750 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2751$as_echo "no" >&6; }
2752fi
2753
2754
2755 test -n "$AWK" && break
2756done
2757
2758{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
2759$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
2760set x ${MAKE-make}
2761ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
2762if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
2763 $as_echo_n "(cached) " >&6
2764else
2765 cat >conftest.make <<\_ACEOF
2766SHELL = /bin/sh
2767all:
2768 @echo '@@@%%%=$(MAKE)=@@@%%%'
2769_ACEOF
2770# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
2771case `${MAKE-make} -f conftest.make 2>/dev/null` in
2772 *@@@%%%=?*=@@@%%%*)
2773 eval ac_cv_prog_make_${ac_make}_set=yes;;
2774 *)
2775 eval ac_cv_prog_make_${ac_make}_set=no;;
2776esac
2777rm -f conftest.make
2778fi
2779if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
2780 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
2781$as_echo "yes" >&6; }
2782 SET_MAKE=
2783else
2784 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2785$as_echo "no" >&6; }
2786 SET_MAKE="MAKE=${MAKE-make}"
2787fi
2788
2789rm -rf .tst 2>/dev/null
2790mkdir .tst 2>/dev/null
2791if test -d .tst; then
2792 am__leading_dot=.
2793else
2794 am__leading_dot=_
2795fi
2796rmdir .tst 2>/dev/null
2797
2798# Check whether --enable-silent-rules was given.
2799if test "${enable_silent_rules+set}" = set; then :
2800 enableval=$enable_silent_rules;
2801fi
2802
2803case $enable_silent_rules in # (((
2804 yes) AM_DEFAULT_VERBOSITY=0;;
2805 no) AM_DEFAULT_VERBOSITY=1;;
2806 *) AM_DEFAULT_VERBOSITY=1;;
2807esac
2808am_make=${MAKE-make}
2809{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
2810$as_echo_n "checking whether $am_make supports nested variables... " >&6; }
2811if ${am_cv_make_support_nested_variables+:} false; then :
2812 $as_echo_n "(cached) " >&6
2813else
2814 if $as_echo 'TRUE=$(BAR$(V))
2815BAR0=false
2816BAR1=true
2817V=1
2818am__doit:
2819 @$(TRUE)
2820.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then
2821 am_cv_make_support_nested_variables=yes
2822else
2823 am_cv_make_support_nested_variables=no
2824fi
2825fi
2826{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
2827$as_echo "$am_cv_make_support_nested_variables" >&6; }
2828if test $am_cv_make_support_nested_variables = yes; then
2829 AM_V='$(V)'
2830 AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
2831else
2832 AM_V=$AM_DEFAULT_VERBOSITY
2833 AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
2834fi
2835AM_BACKSLASH='\'
2836
2837if test "`cd $srcdir && pwd`" != "`pwd`"; then
2838 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
2839 # is not polluted with repeated "-I."
2840 am__isrc=' -I$(srcdir)'
2841 # test to see if srcdir already configured
2842 if test -f $srcdir/config.status; then
2843 as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
2844 fi
2845fi
2846
2847# test whether we have cygpath
2848if test -z "$CYGPATH_W"; then
2849 if (cygpath --version) >/dev/null 2>/dev/null; then
2850 CYGPATH_W='cygpath -w'
2851 else
2852 CYGPATH_W=echo
2853 fi
2854fi
2855
2856
2857# Define the identity of the package.
2858 PACKAGE='libjpeg'
2859 VERSION='9.1.0'
2860
2861
2862cat >>confdefs.h <<_ACEOF
2863#define PACKAGE "$PACKAGE"
2864_ACEOF
2865
2866
2867cat >>confdefs.h <<_ACEOF
2868#define VERSION "$VERSION"
2869_ACEOF
2870
2871# Some tools Automake needs.
2872
2873ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
2874
2875
2876AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
2877
2878
2879AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
2880
2881
2882AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
2883
2884
2885MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
2886
2887# For better backward compatibility. To be removed once Automake 1.9.x
2888# dies out for good. For more background, see:
2889# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
2890# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
2891mkdir_p='$(MKDIR_P)'
2892
2893# We need awk for the "check" target. The system "awk" is bad on
2894# some platforms.
2895# Always define AMTAR for backward compatibility. Yes, it's still used
2896# in the wild :-( We should find a proper way to deprecate it ...
2897AMTAR='$${TAR-tar}'
2898
2899
2900# We'll loop over all known methods to create a tar archive until one works.
2901_am_tools='gnutar pax cpio none'
2902
2903am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
2904
2905
2906
2907
2908
2909
2910# POSIX will say in a future version that running "rm -f" with no argument
2911# is OK; and we want to be able to make that assumption in our Makefile
2912# recipes. So use an aggressive probe to check that the usage we want is
2913# actually supported "in the wild" to an acceptable degree.
2914# See automake bug#10828.
2915# To make any issue more visible, cause the running configure to be aborted
2916# by default if the 'rm' program in use doesn't match our expectations; the
2917# user can still override this though.
2918if rm -f && rm -fr && rm -rf; then : OK; else
2919 cat >&2 <<'END'
2920Oops!
2921
2922Your 'rm' program seems unable to run without file operands specified
2923on the command line, even when the '-f' option is present. This is contrary
2924to the behaviour of most rm programs out there, and not conforming with
2925the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
2926
2927Please tell bug-automake@gnu.org about your system, including the value
2928of your $PATH and any error possibly output before this message. This
2929can help us improve future automake versions.
2930
2931END
2932 if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
2933 echo 'Configuration will proceed anyway, since you have set the' >&2
2934 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
2935 echo >&2
2936 else
2937 cat >&2 <<'END'
2938Aborting the configuration process, to ensure you take notice of the issue.
2939
2940You can download and install GNU coreutils to get an 'rm' implementation
2941that behaves properly: <http://www.gnu.org/software/coreutils/>.
2942
2943If you want to complete the configuration process using your problematic
2944'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
2945to "yes", and re-run configure.
2946
2947END
2948 as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5
2949 fi
2950fi
2951
2952# Make --enable-silent-rules the default.
2953# To get verbose build output you may configure
2954# with --disable-silent-rules or use "make V=1".
2955# Check whether --enable-silent-rules was given.
2956if test "${enable_silent_rules+set}" = set; then :
2957 enableval=$enable_silent_rules;
2958fi
2959
2960case $enable_silent_rules in # (((
2961 yes) AM_DEFAULT_VERBOSITY=0;;
2962 no) AM_DEFAULT_VERBOSITY=1;;
2963 *) AM_DEFAULT_VERBOSITY=0;;
2964esac
2965am_make=${MAKE-make}
2966{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
2967$as_echo_n "checking whether $am_make supports nested variables... " >&6; }
2968if ${am_cv_make_support_nested_variables+:} false; then :
2969 $as_echo_n "(cached) " >&6
2970else
2971 if $as_echo 'TRUE=$(BAR$(V))
2972BAR0=false
2973BAR1=true
2974V=1
2975am__doit:
2976 @$(TRUE)
2977.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then
2978 am_cv_make_support_nested_variables=yes
2979else
2980 am_cv_make_support_nested_variables=no
2981fi
2982fi
2983{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
2984$as_echo "$am_cv_make_support_nested_variables" >&6; }
2985if test $am_cv_make_support_nested_variables = yes; then
2986 AM_V='$(V)'
2987 AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
2988else
2989 AM_V=$AM_DEFAULT_VERBOSITY
2990 AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
2991fi
2992AM_BACKSLASH='\'
2993
2994
2995# Add configure option --enable-maintainer-mode which enables
2996# dependency checking and generation useful to package maintainers.
2997# This is made an option to avoid confusing end users.
2998
2999{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
3000$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
3001 # Check whether --enable-maintainer-mode was given.
3002if test "${enable_maintainer_mode+set}" = set; then :
3003 enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval
3004else
3005 USE_MAINTAINER_MODE=no
3006fi
3007
3008 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5
3009$as_echo "$USE_MAINTAINER_MODE" >&6; }
3010 if test $USE_MAINTAINER_MODE = yes; then
3011 MAINTAINER_MODE_TRUE=
3012 MAINTAINER_MODE_FALSE='#'
3013else
3014 MAINTAINER_MODE_TRUE='#'
3015 MAINTAINER_MODE_FALSE=
3016fi
3017
3018 MAINT=$MAINTAINER_MODE_TRUE
3019
3020
3021
3022# Check for programs
3023ac_ext=c
3024ac_cpp='$CPP $CPPFLAGS'
3025ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
3026ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
3027ac_compiler_gnu=$ac_cv_c_compiler_gnu
3028if test -n "$ac_tool_prefix"; then
3029 # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
3030set dummy ${ac_tool_prefix}gcc; ac_word=$2
3031{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
3032$as_echo_n "checking for $ac_word... " >&6; }
3033if ${ac_cv_prog_CC+:} false; then :
3034 $as_echo_n "(cached) " >&6
3035else
3036 if test -n "$CC"; then
3037 ac_cv_prog_CC="$CC" # Let the user override the test.
3038else
3039as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3040for as_dir in $PATH
3041do
3042 IFS=$as_save_IFS
3043 test -z "$as_dir" && as_dir=.
3044 for ac_exec_ext in '' $ac_executable_extensions; do
3045 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
3046 ac_cv_prog_CC="${ac_tool_prefix}gcc"
3047 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
3048 break 2
3049 fi
3050done
3051 done
3052IFS=$as_save_IFS
3053
3054fi
3055fi
3056CC=$ac_cv_prog_CC
3057if test -n "$CC"; then
3058 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
3059$as_echo "$CC" >&6; }
3060else
3061 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3062$as_echo "no" >&6; }
3063fi
3064
3065
3066fi
3067if test -z "$ac_cv_prog_CC"; then
3068 ac_ct_CC=$CC
3069 # Extract the first word of "gcc", so it can be a program name with args.
3070set dummy gcc; ac_word=$2
3071{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
3072$as_echo_n "checking for $ac_word... " >&6; }
3073if ${ac_cv_prog_ac_ct_CC+:} false; then :
3074 $as_echo_n "(cached) " >&6
3075else
3076 if test -n "$ac_ct_CC"; then
3077 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
3078else
3079as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3080for as_dir in $PATH
3081do
3082 IFS=$as_save_IFS
3083 test -z "$as_dir" && as_dir=.
3084 for ac_exec_ext in '' $ac_executable_extensions; do
3085 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
3086 ac_cv_prog_ac_ct_CC="gcc"
3087 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
3088 break 2
3089 fi
3090done
3091 done
3092IFS=$as_save_IFS
3093
3094fi
3095fi
3096ac_ct_CC=$ac_cv_prog_ac_ct_CC
3097if test -n "$ac_ct_CC"; then
3098 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
3099$as_echo "$ac_ct_CC" >&6; }
3100else
3101 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3102$as_echo "no" >&6; }
3103fi
3104
3105 if test "x$ac_ct_CC" = x; then
3106 CC=""
3107 else
3108 case $cross_compiling:$ac_tool_warned in
3109yes:)
3110{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
3111$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
3112ac_tool_warned=yes ;;
3113esac
3114 CC=$ac_ct_CC
3115 fi
3116else
3117 CC="$ac_cv_prog_CC"
3118fi
3119
3120if test -z "$CC"; then
3121 if test -n "$ac_tool_prefix"; then
3122 # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
3123set dummy ${ac_tool_prefix}cc; ac_word=$2
3124{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
3125$as_echo_n "checking for $ac_word... " >&6; }
3126if ${ac_cv_prog_CC+:} false; then :
3127 $as_echo_n "(cached) " >&6
3128else
3129 if test -n "$CC"; then
3130 ac_cv_prog_CC="$CC" # Let the user override the test.
3131else
3132as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3133for as_dir in $PATH
3134do
3135 IFS=$as_save_IFS
3136 test -z "$as_dir" && as_dir=.
3137 for ac_exec_ext in '' $ac_executable_extensions; do
3138 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
3139 ac_cv_prog_CC="${ac_tool_prefix}cc"
3140 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
3141 break 2
3142 fi
3143done
3144 done
3145IFS=$as_save_IFS
3146
3147fi
3148fi
3149CC=$ac_cv_prog_CC
3150if test -n "$CC"; then
3151 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
3152$as_echo "$CC" >&6; }
3153else
3154 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3155$as_echo "no" >&6; }
3156fi
3157
3158
3159 fi
3160fi
3161if test -z "$CC"; then
3162 # Extract the first word of "cc", so it can be a program name with args.
3163set dummy cc; ac_word=$2
3164{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
3165$as_echo_n "checking for $ac_word... " >&6; }
3166if ${ac_cv_prog_CC+:} false; then :
3167 $as_echo_n "(cached) " >&6
3168else
3169 if test -n "$CC"; then
3170 ac_cv_prog_CC="$CC" # Let the user override the test.
3171else
3172 ac_prog_rejected=no
3173as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3174for as_dir in $PATH
3175do
3176 IFS=$as_save_IFS
3177 test -z "$as_dir" && as_dir=.
3178 for ac_exec_ext in '' $ac_executable_extensions; do
3179 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
3180 if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
3181 ac_prog_rejected=yes
3182 continue
3183 fi
3184 ac_cv_prog_CC="cc"
3185 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
3186 break 2
3187 fi
3188done
3189 done
3190IFS=$as_save_IFS
3191
3192if test $ac_prog_rejected = yes; then
3193 # We found a bogon in the path, so make sure we never use it.
3194 set dummy $ac_cv_prog_CC
3195 shift
3196 if test $# != 0; then
3197 # We chose a different compiler from the bogus one.
3198 # However, it has the same basename, so the bogon will be chosen
3199 # first if we set CC to just the basename; use the full file name.
3200 shift
3201 ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
3202 fi
3203fi
3204fi
3205fi
3206CC=$ac_cv_prog_CC
3207if test -n "$CC"; then
3208 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
3209$as_echo "$CC" >&6; }
3210else
3211 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3212$as_echo "no" >&6; }
3213fi
3214
3215
3216fi
3217if test -z "$CC"; then
3218 if test -n "$ac_tool_prefix"; then
3219 for ac_prog in cl.exe
3220 do
3221 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
3222set dummy $ac_tool_prefix$ac_prog; ac_word=$2
3223{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
3224$as_echo_n "checking for $ac_word... " >&6; }
3225if ${ac_cv_prog_CC+:} false; then :
3226 $as_echo_n "(cached) " >&6
3227else
3228 if test -n "$CC"; then
3229 ac_cv_prog_CC="$CC" # Let the user override the test.
3230else
3231as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3232for as_dir in $PATH
3233do
3234 IFS=$as_save_IFS
3235 test -z "$as_dir" && as_dir=.
3236 for ac_exec_ext in '' $ac_executable_extensions; do
3237 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
3238 ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
3239 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
3240 break 2
3241 fi
3242done
3243 done
3244IFS=$as_save_IFS
3245
3246fi
3247fi
3248CC=$ac_cv_prog_CC
3249if test -n "$CC"; then
3250 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
3251$as_echo "$CC" >&6; }
3252else
3253 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3254$as_echo "no" >&6; }
3255fi
3256
3257
3258 test -n "$CC" && break
3259 done
3260fi
3261if test -z "$CC"; then
3262 ac_ct_CC=$CC
3263 for ac_prog in cl.exe
3264do
3265 # Extract the first word of "$ac_prog", so it can be a program name with args.
3266set dummy $ac_prog; ac_word=$2
3267{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
3268$as_echo_n "checking for $ac_word... " >&6; }
3269if ${ac_cv_prog_ac_ct_CC+:} false; then :
3270 $as_echo_n "(cached) " >&6
3271else
3272 if test -n "$ac_ct_CC"; then
3273 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
3274else
3275as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3276for as_dir in $PATH
3277do
3278 IFS=$as_save_IFS
3279 test -z "$as_dir" && as_dir=.
3280 for ac_exec_ext in '' $ac_executable_extensions; do
3281 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
3282 ac_cv_prog_ac_ct_CC="$ac_prog"
3283 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
3284 break 2
3285 fi
3286done
3287 done
3288IFS=$as_save_IFS
3289
3290fi
3291fi
3292ac_ct_CC=$ac_cv_prog_ac_ct_CC
3293if test -n "$ac_ct_CC"; then
3294 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
3295$as_echo "$ac_ct_CC" >&6; }
3296else
3297 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3298$as_echo "no" >&6; }
3299fi
3300
3301
3302 test -n "$ac_ct_CC" && break
3303done
3304
3305 if test "x$ac_ct_CC" = x; then
3306 CC=""
3307 else
3308 case $cross_compiling:$ac_tool_warned in
3309yes:)
3310{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
3311$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
3312ac_tool_warned=yes ;;
3313esac
3314 CC=$ac_ct_CC
3315 fi
3316fi
3317
3318fi
3319
3320
3321test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3322$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3323as_fn_error $? "no acceptable C compiler found in \$PATH
3324See \`config.log' for more details" "$LINENO" 5; }
3325
3326# Provide some information about the compiler.
3327$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
3328set X $ac_compile
3329ac_compiler=$2
3330for ac_option in --version -v -V -qversion; do
3331 { { ac_try="$ac_compiler $ac_option >&5"
3332case "(($ac_try" in
3333 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3334 *) ac_try_echo=$ac_try;;
3335esac
3336eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3337$as_echo "$ac_try_echo"; } >&5
3338 (eval "$ac_compiler $ac_option >&5") 2>conftest.err
3339 ac_status=$?
3340 if test -s conftest.err; then
3341 sed '10a\
3342... rest of stderr output deleted ...
3343 10q' conftest.err >conftest.er1
3344 cat conftest.er1 >&5
3345 fi
3346 rm -f conftest.er1 conftest.err
3347 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3348 test $ac_status = 0; }
3349done
3350
3351cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3352/* end confdefs.h. */
3353
3354int
3355main ()
3356{
3357
3358 ;
3359 return 0;
3360}
3361_ACEOF
3362ac_clean_files_save=$ac_clean_files
3363ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
3364# Try to create an executable without -o first, disregard a.out.
3365# It will help us diagnose broken compilers, and finding out an intuition
3366# of exeext.
3367{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
3368$as_echo_n "checking whether the C compiler works... " >&6; }
3369ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
3370
3371# The possible output files:
3372ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
3373
3374ac_rmfiles=
3375for ac_file in $ac_files
3376do
3377 case $ac_file in
3378 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
3379 * ) ac_rmfiles="$ac_rmfiles $ac_file";;
3380 esac
3381done
3382rm -f $ac_rmfiles
3383
3384if { { ac_try="$ac_link_default"
3385case "(($ac_try" in
3386 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3387 *) ac_try_echo=$ac_try;;
3388esac
3389eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3390$as_echo "$ac_try_echo"; } >&5
3391 (eval "$ac_link_default") 2>&5
3392 ac_status=$?
3393 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3394 test $ac_status = 0; }; then :
3395 # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
3396# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
3397# in a Makefile. We should not override ac_cv_exeext if it was cached,
3398# so that the user can short-circuit this test for compilers unknown to
3399# Autoconf.
3400for ac_file in $ac_files ''
3401do
3402 test -f "$ac_file" || continue
3403 case $ac_file in
3404 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
3405 ;;
3406 [ab].out )
3407 # We found the default executable, but exeext='' is most
3408 # certainly right.
3409 break;;
3410 *.* )
3411 if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
3412 then :; else
3413 ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
3414 fi
3415 # We set ac_cv_exeext here because the later test for it is not
3416 # safe: cross compilers may not add the suffix if given an `-o'
3417 # argument, so we may need to know it at that point already.
3418 # Even if this section looks crufty: it has the advantage of
3419 # actually working.
3420 break;;
3421 * )
3422 break;;
3423 esac
3424done
3425test "$ac_cv_exeext" = no && ac_cv_exeext=
3426
3427else
3428 ac_file=''
3429fi
3430if test -z "$ac_file"; then :
3431 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3432$as_echo "no" >&6; }
3433$as_echo "$as_me: failed program was:" >&5
3434sed 's/^/| /' conftest.$ac_ext >&5
3435
3436{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3437$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3438as_fn_error 77 "C compiler cannot create executables
3439See \`config.log' for more details" "$LINENO" 5; }
3440else
3441 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
3442$as_echo "yes" >&6; }
3443fi
3444{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
3445$as_echo_n "checking for C compiler default output file name... " >&6; }
3446{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
3447$as_echo "$ac_file" >&6; }
3448ac_exeext=$ac_cv_exeext
3449
3450rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
3451ac_clean_files=$ac_clean_files_save
3452{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
3453$as_echo_n "checking for suffix of executables... " >&6; }
3454if { { ac_try="$ac_link"
3455case "(($ac_try" in
3456 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3457 *) ac_try_echo=$ac_try;;
3458esac
3459eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3460$as_echo "$ac_try_echo"; } >&5
3461 (eval "$ac_link") 2>&5
3462 ac_status=$?
3463 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3464 test $ac_status = 0; }; then :
3465 # If both `conftest.exe' and `conftest' are `present' (well, observable)
3466# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
3467# work properly (i.e., refer to `conftest.exe'), while it won't with
3468# `rm'.
3469for ac_file in conftest.exe conftest conftest.*; do
3470 test -f "$ac_file" || continue
3471 case $ac_file in
3472 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
3473 *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
3474 break;;
3475 * ) break;;
3476 esac
3477done
3478else
3479 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3480$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3481as_fn_error $? "cannot compute suffix of executables: cannot compile and link
3482See \`config.log' for more details" "$LINENO" 5; }
3483fi
3484rm -f conftest conftest$ac_cv_exeext
3485{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
3486$as_echo "$ac_cv_exeext" >&6; }
3487
3488rm -f conftest.$ac_ext
3489EXEEXT=$ac_cv_exeext
3490ac_exeext=$EXEEXT
3491cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3492/* end confdefs.h. */
3493#include <stdio.h>
3494int
3495main ()
3496{
3497FILE *f = fopen ("conftest.out", "w");
3498 return ferror (f) || fclose (f) != 0;
3499
3500 ;
3501 return 0;
3502}
3503_ACEOF
3504ac_clean_files="$ac_clean_files conftest.out"
3505# Check that the compiler produces executables we can run. If not, either
3506# the compiler is broken, or we cross compile.
3507{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
3508$as_echo_n "checking whether we are cross compiling... " >&6; }
3509if test "$cross_compiling" != yes; then
3510 { { ac_try="$ac_link"
3511case "(($ac_try" in
3512 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3513 *) ac_try_echo=$ac_try;;
3514esac
3515eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3516$as_echo "$ac_try_echo"; } >&5
3517 (eval "$ac_link") 2>&5
3518 ac_status=$?
3519 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3520 test $ac_status = 0; }
3521 if { ac_try='./conftest$ac_cv_exeext'
3522 { { case "(($ac_try" in
3523 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3524 *) ac_try_echo=$ac_try;;
3525esac
3526eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3527$as_echo "$ac_try_echo"; } >&5
3528 (eval "$ac_try") 2>&5
3529 ac_status=$?
3530 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3531 test $ac_status = 0; }; }; then
3532 cross_compiling=no
3533 else
3534 if test "$cross_compiling" = maybe; then
3535 cross_compiling=yes
3536 else
3537 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3538$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3539as_fn_error $? "cannot run C compiled programs.
3540If you meant to cross compile, use \`--host'.
3541See \`config.log' for more details" "$LINENO" 5; }
3542 fi
3543 fi
3544fi
3545{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
3546$as_echo "$cross_compiling" >&6; }
3547
3548rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
3549ac_clean_files=$ac_clean_files_save
3550{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
3551$as_echo_n "checking for suffix of object files... " >&6; }
3552if ${ac_cv_objext+:} false; then :
3553 $as_echo_n "(cached) " >&6
3554else
3555 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3556/* end confdefs.h. */
3557
3558int
3559main ()
3560{
3561
3562 ;
3563 return 0;
3564}
3565_ACEOF
3566rm -f conftest.o conftest.obj
3567if { { ac_try="$ac_compile"
3568case "(($ac_try" in
3569 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3570 *) ac_try_echo=$ac_try;;
3571esac
3572eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3573$as_echo "$ac_try_echo"; } >&5
3574 (eval "$ac_compile") 2>&5
3575 ac_status=$?
3576 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3577 test $ac_status = 0; }; then :
3578 for ac_file in conftest.o conftest.obj conftest.*; do
3579 test -f "$ac_file" || continue;
3580 case $ac_file in
3581 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
3582 *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
3583 break;;
3584 esac
3585done
3586else
3587 $as_echo "$as_me: failed program was:" >&5
3588sed 's/^/| /' conftest.$ac_ext >&5
3589
3590{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3591$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3592as_fn_error $? "cannot compute suffix of object files: cannot compile
3593See \`config.log' for more details" "$LINENO" 5; }
3594fi
3595rm -f conftest.$ac_cv_objext conftest.$ac_ext
3596fi
3597{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
3598$as_echo "$ac_cv_objext" >&6; }
3599OBJEXT=$ac_cv_objext
3600ac_objext=$OBJEXT
3601{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
3602$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
3603if ${ac_cv_c_compiler_gnu+:} false; then :
3604 $as_echo_n "(cached) " >&6
3605else
3606 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3607/* end confdefs.h. */
3608
3609int
3610main ()
3611{
3612#ifndef __GNUC__
3613 choke me
3614#endif
3615
3616 ;
3617 return 0;
3618}
3619_ACEOF
3620if ac_fn_c_try_compile "$LINENO"; then :
3621 ac_compiler_gnu=yes
3622else
3623 ac_compiler_gnu=no
3624fi
3625rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3626ac_cv_c_compiler_gnu=$ac_compiler_gnu
3627
3628fi
3629{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
3630$as_echo "$ac_cv_c_compiler_gnu" >&6; }
3631if test $ac_compiler_gnu = yes; then
3632 GCC=yes
3633else
3634 GCC=
3635fi
3636ac_test_CFLAGS=${CFLAGS+set}
3637ac_save_CFLAGS=$CFLAGS
3638{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
3639$as_echo_n "checking whether $CC accepts -g... " >&6; }
3640if ${ac_cv_prog_cc_g+:} false; then :
3641 $as_echo_n "(cached) " >&6
3642else
3643 ac_save_c_werror_flag=$ac_c_werror_flag
3644 ac_c_werror_flag=yes
3645 ac_cv_prog_cc_g=no
3646 CFLAGS="-g"
3647 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3648/* end confdefs.h. */
3649
3650int
3651main ()
3652{
3653
3654 ;
3655 return 0;
3656}
3657_ACEOF
3658if ac_fn_c_try_compile "$LINENO"; then :
3659 ac_cv_prog_cc_g=yes
3660else
3661 CFLAGS=""
3662 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3663/* end confdefs.h. */
3664
3665int
3666main ()
3667{
3668
3669 ;
3670 return 0;
3671}
3672_ACEOF
3673if ac_fn_c_try_compile "$LINENO"; then :
3674
3675else
3676 ac_c_werror_flag=$ac_save_c_werror_flag
3677 CFLAGS="-g"
3678 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3679/* end confdefs.h. */
3680
3681int
3682main ()
3683{
3684
3685 ;
3686 return 0;
3687}
3688_ACEOF
3689if ac_fn_c_try_compile "$LINENO"; then :
3690 ac_cv_prog_cc_g=yes
3691fi
3692rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3693fi
3694rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3695fi
3696rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3697 ac_c_werror_flag=$ac_save_c_werror_flag
3698fi
3699{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
3700$as_echo "$ac_cv_prog_cc_g" >&6; }
3701if test "$ac_test_CFLAGS" = set; then
3702 CFLAGS=$ac_save_CFLAGS
3703elif test $ac_cv_prog_cc_g = yes; then
3704 if test "$GCC" = yes; then
3705 CFLAGS="-g -O2"
3706 else
3707 CFLAGS="-g"
3708 fi
3709else
3710 if test "$GCC" = yes; then
3711 CFLAGS="-O2"
3712 else
3713 CFLAGS=
3714 fi
3715fi
3716{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
3717$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
3718if ${ac_cv_prog_cc_c89+:} false; then :
3719 $as_echo_n "(cached) " >&6
3720else
3721 ac_cv_prog_cc_c89=no
3722ac_save_CC=$CC
3723cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3724/* end confdefs.h. */
3725#include <stdarg.h>
3726#include <stdio.h>
3727struct stat;
3728/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
3729struct buf { int x; };
3730FILE * (*rcsopen) (struct buf *, struct stat *, int);
3731static char *e (p, i)
3732 char **p;
3733 int i;
3734{
3735 return p[i];
3736}
3737static char *f (char * (*g) (char **, int), char **p, ...)
3738{
3739 char *s;
3740 va_list v;
3741 va_start (v,p);
3742 s = g (p, va_arg (v,int));
3743 va_end (v);
3744 return s;
3745}
3746
3747/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
3748 function prototypes and stuff, but not '\xHH' hex character constants.
3749 These don't provoke an error unfortunately, instead are silently treated
3750 as 'x'. The following induces an error, until -std is added to get
3751 proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
3752 array size at least. It's necessary to write '\x00'==0 to get something
3753 that's true only with -std. */
3754int osf4_cc_array ['\x00' == 0 ? 1 : -1];
3755
3756/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
3757 inside strings and character constants. */
3758#define FOO(x) 'x'
3759int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
3760
3761int test (int i, double x);
3762struct s1 {int (*f) (int a);};
3763struct s2 {int (*f) (double a);};
3764int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
3765int argc;
3766char **argv;
3767int
3768main ()
3769{
3770return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
3771 ;
3772 return 0;
3773}
3774_ACEOF
3775for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
3776 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
3777do
3778 CC="$ac_save_CC $ac_arg"
3779 if ac_fn_c_try_compile "$LINENO"; then :
3780 ac_cv_prog_cc_c89=$ac_arg
3781fi
3782rm -f core conftest.err conftest.$ac_objext
3783 test "x$ac_cv_prog_cc_c89" != "xno" && break
3784done
3785rm -f conftest.$ac_ext
3786CC=$ac_save_CC
3787
3788fi
3789# AC_CACHE_VAL
3790case "x$ac_cv_prog_cc_c89" in
3791 x)
3792 { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
3793$as_echo "none needed" >&6; } ;;
3794 xno)
3795 { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
3796$as_echo "unsupported" >&6; } ;;
3797 *)
3798 CC="$CC $ac_cv_prog_cc_c89"
3799 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
3800$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
3801esac
3802if test "x$ac_cv_prog_cc_c89" != xno; then :
3803
3804fi
3805
3806ac_ext=c
3807ac_cpp='$CPP $CPPFLAGS'
3808ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
3809ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
3810ac_compiler_gnu=$ac_cv_c_compiler_gnu
3811
3812ac_ext=c
3813ac_cpp='$CPP $CPPFLAGS'
3814ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
3815ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
3816ac_compiler_gnu=$ac_cv_c_compiler_gnu
3817{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
3818$as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
3819if ${am_cv_prog_cc_c_o+:} false; then :
3820 $as_echo_n "(cached) " >&6
3821else
3822 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3823/* end confdefs.h. */
3824
3825int
3826main ()
3827{
3828
3829 ;
3830 return 0;
3831}
3832_ACEOF
3833 # Make sure it works both with $CC and with simple cc.
3834 # Following AC_PROG_CC_C_O, we do the test twice because some
3835 # compilers refuse to overwrite an existing .o file with -o,
3836 # though they will create one.
3837 am_cv_prog_cc_c_o=yes
3838 for am_i in 1 2; do
3839 if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5
3840 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5
3841 ac_status=$?
3842 echo "$as_me:$LINENO: \$? = $ac_status" >&5
3843 (exit $ac_status); } \
3844 && test -f conftest2.$ac_objext; then
3845 : OK
3846 else
3847 am_cv_prog_cc_c_o=no
3848 break
3849 fi
3850 done
3851 rm -f core conftest*
3852 unset am_i
3853fi
3854{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
3855$as_echo "$am_cv_prog_cc_c_o" >&6; }
3856if test "$am_cv_prog_cc_c_o" != yes; then
3857 # Losing compiler, so override with the script.
3858 # FIXME: It is wrong to rewrite CC.
3859 # But if we don't then we get into trouble of one sort or another.
3860 # A longer-term fix would be to have automake use am__CC in this case,
3861 # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
3862 CC="$am_aux_dir/compile $CC"
3863fi
3864ac_ext=c
3865ac_cpp='$CPP $CPPFLAGS'
3866ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
3867ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
3868ac_compiler_gnu=$ac_cv_c_compiler_gnu
3869
3870DEPDIR="${am__leading_dot}deps"
3871
3872ac_config_commands="$ac_config_commands depfiles"
3873
3874
3875am_make=${MAKE-make}
3876cat > confinc << 'END'
3877am__doit:
3878 @echo this is the am__doit target
3879.PHONY: am__doit
3880END
3881# If we don't find an include directive, just comment out the code.
3882{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
3883$as_echo_n "checking for style of include used by $am_make... " >&6; }
3884am__include="#"
3885am__quote=
3886_am_result=none
3887# First try GNU make style include.
3888echo "include confinc" > confmf
3889# Ignore all kinds of additional output from 'make'.
3890case `$am_make -s -f confmf 2> /dev/null` in #(
3891*the\ am__doit\ target*)
3892 am__include=include
3893 am__quote=
3894 _am_result=GNU
3895 ;;
3896esac
3897# Now try BSD make style include.
3898if test "$am__include" = "#"; then
3899 echo '.include "confinc"' > confmf
3900 case `$am_make -s -f confmf 2> /dev/null` in #(
3901 *the\ am__doit\ target*)
3902 am__include=.include
3903 am__quote="\""
3904 _am_result=BSD
3905 ;;
3906 esac
3907fi
3908
3909
3910{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
3911$as_echo "$_am_result" >&6; }
3912rm -f confinc confmf
3913
3914# Check whether --enable-dependency-tracking was given.
3915if test "${enable_dependency_tracking+set}" = set; then :
3916 enableval=$enable_dependency_tracking;
3917fi
3918
3919if test "x$enable_dependency_tracking" != xno; then
3920 am_depcomp="$ac_aux_dir/depcomp"
3921 AMDEPBACKSLASH='\'
3922 am__nodep='_no'
3923fi
3924 if test "x$enable_dependency_tracking" != xno; then
3925 AMDEP_TRUE=
3926 AMDEP_FALSE='#'
3927else
3928 AMDEP_TRUE='#'
3929 AMDEP_FALSE=
3930fi
3931
3932
3933
3934depcc="$CC" am_compiler_list=
3935
3936{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
3937$as_echo_n "checking dependency style of $depcc... " >&6; }
3938if ${am_cv_CC_dependencies_compiler_type+:} false; then :
3939 $as_echo_n "(cached) " >&6
3940else
3941 if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
3942 # We make a subdir and do the tests there. Otherwise we can end up
3943 # making bogus files that we don't know about and never remove. For
3944 # instance it was reported that on HP-UX the gcc test will end up
3945 # making a dummy file named 'D' -- because '-MD' means "put the output
3946 # in D".
3947 rm -rf conftest.dir
3948 mkdir conftest.dir
3949 # Copy depcomp to subdir because otherwise we won't find it if we're
3950 # using a relative directory.
3951 cp "$am_depcomp" conftest.dir
3952 cd conftest.dir
3953 # We will build objects and dependencies in a subdirectory because
3954 # it helps to detect inapplicable dependency modes. For instance
3955 # both Tru64's cc and ICC support -MD to output dependencies as a
3956 # side effect of compilation, but ICC will put the dependencies in
3957 # the current directory while Tru64 will put them in the object
3958 # directory.
3959 mkdir sub
3960
3961 am_cv_CC_dependencies_compiler_type=none
3962 if test "$am_compiler_list" = ""; then
3963 am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
3964 fi
3965 am__universal=false
3966 case " $depcc " in #(
3967 *\ -arch\ *\ -arch\ *) am__universal=true ;;
3968 esac
3969
3970 for depmode in $am_compiler_list; do
3971 # Setup a source with many dependencies, because some compilers
3972 # like to wrap large dependency lists on column 80 (with \), and
3973 # we should not choose a depcomp mode which is confused by this.
3974 #
3975 # We need to recreate these files for each test, as the compiler may
3976 # overwrite some of them when testing with obscure command lines.
3977 # This happens at least with the AIX C compiler.
3978 : > sub/conftest.c
3979 for i in 1 2 3 4 5 6; do
3980 echo '#include "conftst'$i'.h"' >> sub/conftest.c
3981 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
3982 # Solaris 10 /bin/sh.
3983 echo '/* dummy */' > sub/conftst$i.h
3984 done
3985 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
3986
3987 # We check with '-c' and '-o' for the sake of the "dashmstdout"
3988 # mode. It turns out that the SunPro C++ compiler does not properly
3989 # handle '-M -o', and we need to detect this. Also, some Intel
3990 # versions had trouble with output in subdirs.
3991 am__obj=sub/conftest.${OBJEXT-o}
3992 am__minus_obj="-o $am__obj"
3993 case $depmode in
3994 gcc)
3995 # This depmode causes a compiler race in universal mode.
3996 test "$am__universal" = false || continue
3997 ;;
3998 nosideeffect)
3999 # After this tag, mechanisms are not by side-effect, so they'll
4000 # only be used when explicitly requested.
4001 if test "x$enable_dependency_tracking" = xyes; then
4002 continue
4003 else
4004 break
4005 fi
4006 ;;
4007 msvc7 | msvc7msys | msvisualcpp | msvcmsys)
4008 # This compiler won't grok '-c -o', but also, the minuso test has
4009 # not run yet. These depmodes are late enough in the game, and
4010 # so weak that their functioning should not be impacted.
4011 am__obj=conftest.${OBJEXT-o}
4012 am__minus_obj=
4013 ;;
4014 none) break ;;
4015 esac
4016 if depmode=$depmode \
4017 source=sub/conftest.c object=$am__obj \
4018 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
4019 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
4020 >/dev/null 2>conftest.err &&
4021 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
4022 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
4023 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
4024 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
4025 # icc doesn't choke on unknown options, it will just issue warnings
4026 # or remarks (even with -Werror). So we grep stderr for any message
4027 # that says an option was ignored or not supported.
4028 # When given -MP, icc 7.0 and 7.1 complain thusly:
4029 # icc: Command line warning: ignoring option '-M'; no argument required
4030 # The diagnosis changed in icc 8.0:
4031 # icc: Command line remark: option '-MP' not supported
4032 if (grep 'ignoring option' conftest.err ||
4033 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
4034 am_cv_CC_dependencies_compiler_type=$depmode
4035 break
4036 fi
4037 fi
4038 done
4039
4040 cd ..
4041 rm -rf conftest.dir
4042else
4043 am_cv_CC_dependencies_compiler_type=none
4044fi
4045
4046fi
4047{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
4048$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
4049CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
4050
4051 if
4052 test "x$enable_dependency_tracking" != xno \
4053 && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
4054 am__fastdepCC_TRUE=
4055 am__fastdepCC_FALSE='#'
4056else
4057 am__fastdepCC_TRUE='#'
4058 am__fastdepCC_FALSE=
4059fi
4060
4061
4062 case $ac_cv_prog_cc_stdc in #(
4063 no) :
4064 ac_cv_prog_cc_c99=no; ac_cv_prog_cc_c89=no ;; #(
4065 *) :
4066 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C99" >&5
4067$as_echo_n "checking for $CC option to accept ISO C99... " >&6; }
4068if ${ac_cv_prog_cc_c99+:} false; then :
4069 $as_echo_n "(cached) " >&6
4070else
4071 ac_cv_prog_cc_c99=no
4072ac_save_CC=$CC
4073cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4074/* end confdefs.h. */
4075#include <stdarg.h>
4076#include <stdbool.h>
4077#include <stdlib.h>
4078#include <wchar.h>
4079#include <stdio.h>
4080
4081// Check varargs macros. These examples are taken from C99 6.10.3.5.
4082#define debug(...) fprintf (stderr, __VA_ARGS__)
4083#define showlist(...) puts (#__VA_ARGS__)
4084#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
4085static void
4086test_varargs_macros (void)
4087{
4088 int x = 1234;
4089 int y = 5678;
4090 debug ("Flag");
4091 debug ("X = %d\n", x);
4092 showlist (The first, second, and third items.);
4093 report (x>y, "x is %d but y is %d", x, y);
4094}
4095
4096// Check long long types.
4097#define BIG64 18446744073709551615ull
4098#define BIG32 4294967295ul
4099#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
4100#if !BIG_OK
4101 your preprocessor is broken;
4102#endif
4103#if BIG_OK
4104#else
4105 your preprocessor is broken;
4106#endif
4107static long long int bignum = -9223372036854775807LL;
4108static unsigned long long int ubignum = BIG64;
4109
4110struct incomplete_array
4111{
4112 int datasize;
4113 double data[];
4114};
4115
4116struct named_init {
4117 int number;
4118 const wchar_t *name;
4119 double average;
4120};
4121
4122typedef const char *ccp;
4123
4124static inline int
4125test_restrict (ccp restrict text)
4126{
4127 // See if C++-style comments work.
4128 // Iterate through items via the restricted pointer.
4129 // Also check for declarations in for loops.
4130 for (unsigned int i = 0; *(text+i) != '\0'; ++i)
4131 continue;
4132 return 0;
4133}
4134
4135// Check varargs and va_copy.
4136static void
4137test_varargs (const char *format, ...)
4138{
4139 va_list args;
4140 va_start (args, format);
4141 va_list args_copy;
4142 va_copy (args_copy, args);
4143
4144 const char *str;
4145 int number;
4146 float fnumber;
4147
4148 while (*format)
4149 {
4150 switch (*format++)
4151 {
4152 case 's': // string
4153 str = va_arg (args_copy, const char *);
4154 break;
4155 case 'd': // int
4156 number = va_arg (args_copy, int);
4157 break;
4158 case 'f': // float
4159 fnumber = va_arg (args_copy, double);
4160 break;
4161 default:
4162 break;
4163 }
4164 }
4165 va_end (args_copy);
4166 va_end (args);
4167}
4168
4169int
4170main ()
4171{
4172
4173 // Check bool.
4174 _Bool success = false;
4175
4176 // Check restrict.
4177 if (test_restrict ("String literal") == 0)
4178 success = true;
4179 char *restrict newvar = "Another string";
4180
4181 // Check varargs.
4182 test_varargs ("s, d' f .", "string", 65, 34.234);
4183 test_varargs_macros ();
4184
4185 // Check flexible array members.
4186 struct incomplete_array *ia =
4187 malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
4188 ia->datasize = 10;
4189 for (int i = 0; i < ia->datasize; ++i)
4190 ia->data[i] = i * 1.234;
4191
4192 // Check named initializers.
4193 struct named_init ni = {
4194 .number = 34,
4195 .name = L"Test wide string",
4196 .average = 543.34343,
4197 };
4198
4199 ni.number = 58;
4200
4201 int dynamic_array[ni.number];
4202 dynamic_array[ni.number - 1] = 543;
4203
4204 // work around unused variable warnings
4205 return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
4206 || dynamic_array[ni.number - 1] != 543);
4207
4208 ;
4209 return 0;
4210}
4211_ACEOF
4212for ac_arg in '' -std=gnu99 -std=c99 -c99 -AC99 -D_STDC_C99= -qlanglvl=extc99
4213do
4214 CC="$ac_save_CC $ac_arg"
4215 if ac_fn_c_try_compile "$LINENO"; then :
4216 ac_cv_prog_cc_c99=$ac_arg
4217fi
4218rm -f core conftest.err conftest.$ac_objext
4219 test "x$ac_cv_prog_cc_c99" != "xno" && break
4220done
4221rm -f conftest.$ac_ext
4222CC=$ac_save_CC
4223
4224fi
4225# AC_CACHE_VAL
4226case "x$ac_cv_prog_cc_c99" in
4227 x)
4228 { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
4229$as_echo "none needed" >&6; } ;;
4230 xno)
4231 { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
4232$as_echo "unsupported" >&6; } ;;
4233 *)
4234 CC="$CC $ac_cv_prog_cc_c99"
4235 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5
4236$as_echo "$ac_cv_prog_cc_c99" >&6; } ;;
4237esac
4238if test "x$ac_cv_prog_cc_c99" != xno; then :
4239 ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99
4240else
4241 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
4242$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
4243if ${ac_cv_prog_cc_c89+:} false; then :
4244 $as_echo_n "(cached) " >&6
4245else
4246 ac_cv_prog_cc_c89=no
4247ac_save_CC=$CC
4248cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4249/* end confdefs.h. */
4250#include <stdarg.h>
4251#include <stdio.h>
4252struct stat;
4253/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
4254struct buf { int x; };
4255FILE * (*rcsopen) (struct buf *, struct stat *, int);
4256static char *e (p, i)
4257 char **p;
4258 int i;
4259{
4260 return p[i];
4261}
4262static char *f (char * (*g) (char **, int), char **p, ...)
4263{
4264 char *s;
4265 va_list v;
4266 va_start (v,p);
4267 s = g (p, va_arg (v,int));
4268 va_end (v);
4269 return s;
4270}
4271
4272/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
4273 function prototypes and stuff, but not '\xHH' hex character constants.
4274 These don't provoke an error unfortunately, instead are silently treated
4275 as 'x'. The following induces an error, until -std is added to get
4276 proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
4277 array size at least. It's necessary to write '\x00'==0 to get something
4278 that's true only with -std. */
4279int osf4_cc_array ['\x00' == 0 ? 1 : -1];
4280
4281/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
4282 inside strings and character constants. */
4283#define FOO(x) 'x'
4284int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
4285
4286int test (int i, double x);
4287struct s1 {int (*f) (int a);};
4288struct s2 {int (*f) (double a);};
4289int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
4290int argc;
4291char **argv;
4292int
4293main ()
4294{
4295return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
4296 ;
4297 return 0;
4298}
4299_ACEOF
4300for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
4301 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
4302do
4303 CC="$ac_save_CC $ac_arg"
4304 if ac_fn_c_try_compile "$LINENO"; then :
4305 ac_cv_prog_cc_c89=$ac_arg
4306fi
4307rm -f core conftest.err conftest.$ac_objext
4308 test "x$ac_cv_prog_cc_c89" != "xno" && break
4309done
4310rm -f conftest.$ac_ext
4311CC=$ac_save_CC
4312
4313fi
4314# AC_CACHE_VAL
4315case "x$ac_cv_prog_cc_c89" in
4316 x)
4317 { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
4318$as_echo "none needed" >&6; } ;;
4319 xno)
4320 { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
4321$as_echo "unsupported" >&6; } ;;
4322 *)
4323 CC="$CC $ac_cv_prog_cc_c89"
4324 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
4325$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
4326esac
4327if test "x$ac_cv_prog_cc_c89" != xno; then :
4328 ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89
4329else
4330 ac_cv_prog_cc_stdc=no
4331fi
4332
4333fi
4334 ;;
4335esac
4336 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO Standard C" >&5
4337$as_echo_n "checking for $CC option to accept ISO Standard C... " >&6; }
4338 if ${ac_cv_prog_cc_stdc+:} false; then :
4339 $as_echo_n "(cached) " >&6
4340fi
4341
4342 case $ac_cv_prog_cc_stdc in #(
4343 no) :
4344 { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
4345$as_echo "unsupported" >&6; } ;; #(
4346 '') :
4347 { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
4348$as_echo "none needed" >&6; } ;; #(
4349 *) :
4350 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_stdc" >&5
4351$as_echo "$ac_cv_prog_cc_stdc" >&6; } ;;
4352esac
4353
4354ac_ext=c
4355ac_cpp='$CPP $CPPFLAGS'
4356ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4357ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4358ac_compiler_gnu=$ac_cv_c_compiler_gnu
4359{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
4360$as_echo_n "checking how to run the C preprocessor... " >&6; }
4361# On Suns, sometimes $CPP names a directory.
4362if test -n "$CPP" && test -d "$CPP"; then
4363 CPP=
4364fi
4365if test -z "$CPP"; then
4366 if ${ac_cv_prog_CPP+:} false; then :
4367 $as_echo_n "(cached) " >&6
4368else
4369 # Double quotes because CPP needs to be expanded
4370 for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
4371 do
4372 ac_preproc_ok=false
4373for ac_c_preproc_warn_flag in '' yes
4374do
4375 # Use a header file that comes with gcc, so configuring glibc
4376 # with a fresh cross-compiler works.
4377 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
4378 # <limits.h> exists even on freestanding compilers.
4379 # On the NeXT, cc -E runs the code through the compiler's parser,
4380 # not just through cpp. "Syntax error" is here to catch this case.
4381 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4382/* end confdefs.h. */
4383#ifdef __STDC__
4384# include <limits.h>
4385#else
4386# include <assert.h>
4387#endif
4388 Syntax error
4389_ACEOF
4390if ac_fn_c_try_cpp "$LINENO"; then :
4391
4392else
4393 # Broken: fails on valid input.
4394continue
4395fi
4396rm -f conftest.err conftest.i conftest.$ac_ext
4397
4398 # OK, works on sane cases. Now check whether nonexistent headers
4399 # can be detected and how.
4400 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4401/* end confdefs.h. */
4402#include <ac_nonexistent.h>
4403_ACEOF
4404if ac_fn_c_try_cpp "$LINENO"; then :
4405 # Broken: success on invalid input.
4406continue
4407else
4408 # Passes both tests.
4409ac_preproc_ok=:
4410break
4411fi
4412rm -f conftest.err conftest.i conftest.$ac_ext
4413
4414done
4415# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
4416rm -f conftest.i conftest.err conftest.$ac_ext
4417if $ac_preproc_ok; then :
4418 break
4419fi
4420
4421 done
4422 ac_cv_prog_CPP=$CPP
4423
4424fi
4425 CPP=$ac_cv_prog_CPP
4426else
4427 ac_cv_prog_CPP=$CPP
4428fi
4429{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
4430$as_echo "$CPP" >&6; }
4431ac_preproc_ok=false
4432for ac_c_preproc_warn_flag in '' yes
4433do
4434 # Use a header file that comes with gcc, so configuring glibc
4435 # with a fresh cross-compiler works.
4436 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
4437 # <limits.h> exists even on freestanding compilers.
4438 # On the NeXT, cc -E runs the code through the compiler's parser,
4439 # not just through cpp. "Syntax error" is here to catch this case.
4440 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4441/* end confdefs.h. */
4442#ifdef __STDC__
4443# include <limits.h>
4444#else
4445# include <assert.h>
4446#endif
4447 Syntax error
4448_ACEOF
4449if ac_fn_c_try_cpp "$LINENO"; then :
4450
4451else
4452 # Broken: fails on valid input.
4453continue
4454fi
4455rm -f conftest.err conftest.i conftest.$ac_ext
4456
4457 # OK, works on sane cases. Now check whether nonexistent headers
4458 # can be detected and how.
4459 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4460/* end confdefs.h. */
4461#include <ac_nonexistent.h>
4462_ACEOF
4463if ac_fn_c_try_cpp "$LINENO"; then :
4464 # Broken: success on invalid input.
4465continue
4466else
4467 # Passes both tests.
4468ac_preproc_ok=:
4469break
4470fi
4471rm -f conftest.err conftest.i conftest.$ac_ext
4472
4473done
4474# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
4475rm -f conftest.i conftest.err conftest.$ac_ext
4476if $ac_preproc_ok; then :
4477
4478else
4479 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
4480$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
4481as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
4482See \`config.log' for more details" "$LINENO" 5; }
4483fi
4484
4485ac_ext=c
4486ac_cpp='$CPP $CPPFLAGS'
4487ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4488ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4489ac_compiler_gnu=$ac_cv_c_compiler_gnu
4490
4491
4492{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
4493$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
4494set x ${MAKE-make}
4495ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
4496if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
4497 $as_echo_n "(cached) " >&6
4498else
4499 cat >conftest.make <<\_ACEOF
4500SHELL = /bin/sh
4501all:
4502 @echo '@@@%%%=$(MAKE)=@@@%%%'
4503_ACEOF
4504# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
4505case `${MAKE-make} -f conftest.make 2>/dev/null` in
4506 *@@@%%%=?*=@@@%%%*)
4507 eval ac_cv_prog_make_${ac_make}_set=yes;;
4508 *)
4509 eval ac_cv_prog_make_${ac_make}_set=no;;
4510esac
4511rm -f conftest.make
4512fi
4513if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
4514 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
4515$as_echo "yes" >&6; }
4516 SET_MAKE=
4517else
4518 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4519$as_echo "no" >&6; }
4520 SET_MAKE="MAKE=${MAKE-make}"
4521fi
4522
4523{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
4524$as_echo_n "checking whether ln -s works... " >&6; }
4525LN_S=$as_ln_s
4526if test "$LN_S" = "ln -s"; then
4527 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
4528$as_echo "yes" >&6; }
4529else
4530 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
4531$as_echo "no, using $LN_S" >&6; }
4532fi
4533
4534
4535if test -n "$ac_tool_prefix"; then
4536 for ac_prog in ar lib "link -lib"
4537 do
4538 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
4539set dummy $ac_tool_prefix$ac_prog; ac_word=$2
4540{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4541$as_echo_n "checking for $ac_word... " >&6; }
4542if ${ac_cv_prog_AR+:} false; then :
4543 $as_echo_n "(cached) " >&6
4544else
4545 if test -n "$AR"; then
4546 ac_cv_prog_AR="$AR" # Let the user override the test.
4547else
4548as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4549for as_dir in $PATH
4550do
4551 IFS=$as_save_IFS
4552 test -z "$as_dir" && as_dir=.
4553 for ac_exec_ext in '' $ac_executable_extensions; do
4554 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4555 ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
4556 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4557 break 2
4558 fi
4559done
4560 done
4561IFS=$as_save_IFS
4562
4563fi
4564fi
4565AR=$ac_cv_prog_AR
4566if test -n "$AR"; then
4567 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
4568$as_echo "$AR" >&6; }
4569else
4570 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4571$as_echo "no" >&6; }
4572fi
4573
4574
4575 test -n "$AR" && break
4576 done
4577fi
4578if test -z "$AR"; then
4579 ac_ct_AR=$AR
4580 for ac_prog in ar lib "link -lib"
4581do
4582 # Extract the first word of "$ac_prog", so it can be a program name with args.
4583set dummy $ac_prog; ac_word=$2
4584{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4585$as_echo_n "checking for $ac_word... " >&6; }
4586if ${ac_cv_prog_ac_ct_AR+:} false; then :
4587 $as_echo_n "(cached) " >&6
4588else
4589 if test -n "$ac_ct_AR"; then
4590 ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
4591else
4592as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4593for as_dir in $PATH
4594do
4595 IFS=$as_save_IFS
4596 test -z "$as_dir" && as_dir=.
4597 for ac_exec_ext in '' $ac_executable_extensions; do
4598 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4599 ac_cv_prog_ac_ct_AR="$ac_prog"
4600 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4601 break 2
4602 fi
4603done
4604 done
4605IFS=$as_save_IFS
4606
4607fi
4608fi
4609ac_ct_AR=$ac_cv_prog_ac_ct_AR
4610if test -n "$ac_ct_AR"; then
4611 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
4612$as_echo "$ac_ct_AR" >&6; }
4613else
4614 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4615$as_echo "no" >&6; }
4616fi
4617
4618
4619 test -n "$ac_ct_AR" && break
4620done
4621
4622 if test "x$ac_ct_AR" = x; then
4623 AR="false"
4624 else
4625 case $cross_compiling:$ac_tool_warned in
4626yes:)
4627{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
4628$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
4629ac_tool_warned=yes ;;
4630esac
4631 AR=$ac_ct_AR
4632 fi
4633fi
4634
4635: ${AR=ar}
4636
4637{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the archiver ($AR) interface" >&5
4638$as_echo_n "checking the archiver ($AR) interface... " >&6; }
4639if ${am_cv_ar_interface+:} false; then :
4640 $as_echo_n "(cached) " >&6
4641else
4642 ac_ext=c
4643ac_cpp='$CPP $CPPFLAGS'
4644ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4645ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4646ac_compiler_gnu=$ac_cv_c_compiler_gnu
4647
4648 am_cv_ar_interface=ar
4649 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4650/* end confdefs.h. */
4651int some_variable = 0;
4652_ACEOF
4653if ac_fn_c_try_compile "$LINENO"; then :
4654 am_ar_try='$AR cru libconftest.a conftest.$ac_objext >&5'
4655 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$am_ar_try\""; } >&5
4656 (eval $am_ar_try) 2>&5
4657 ac_status=$?
4658 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
4659 test $ac_status = 0; }
4660 if test "$ac_status" -eq 0; then
4661 am_cv_ar_interface=ar
4662 else
4663 am_ar_try='$AR -NOLOGO -OUT:conftest.lib conftest.$ac_objext >&5'
4664 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$am_ar_try\""; } >&5
4665 (eval $am_ar_try) 2>&5
4666 ac_status=$?
4667 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
4668 test $ac_status = 0; }
4669 if test "$ac_status" -eq 0; then
4670 am_cv_ar_interface=lib
4671 else
4672 am_cv_ar_interface=unknown
4673 fi
4674 fi
4675 rm -f conftest.lib libconftest.a
4676
4677fi
4678rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
4679 ac_ext=c
4680ac_cpp='$CPP $CPPFLAGS'
4681ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4682ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4683ac_compiler_gnu=$ac_cv_c_compiler_gnu
4684
4685fi
4686{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_ar_interface" >&5
4687$as_echo "$am_cv_ar_interface" >&6; }
4688
4689case $am_cv_ar_interface in
4690ar)
4691 ;;
4692lib)
4693 # Microsoft lib, so override with the ar-lib wrapper script.
4694 # FIXME: It is wrong to rewrite AR.
4695 # But if we don't then we get into trouble of one sort or another.
4696 # A longer-term fix would be to have automake use am__AR in this case,
4697 # and then we could set am__AR="$am_aux_dir/ar-lib \$(AR)" or something
4698 # similar.
4699 AR="$am_aux_dir/ar-lib $AR"
4700 ;;
4701unknown)
4702 as_fn_error $? "could not determine $AR interface" "$LINENO" 5
4703 ;;
4704esac
4705
4706
4707# Check if LD supports linker scripts,
4708# and define automake conditional HAVE_LD_VERSION_SCRIPT if so.
4709# Check whether --enable-ld-version-script was given.
4710if test "${enable_ld_version_script+set}" = set; then :
4711 enableval=$enable_ld_version_script; have_ld_version_script=$enableval
4712fi
4713
4714if test -z "$have_ld_version_script"; then
4715 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if LD -Wl,--version-script works" >&5
4716$as_echo_n "checking if LD -Wl,--version-script works... " >&6; }
4717 save_LDFLAGS="$LDFLAGS"
4718 LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map"
4719 cat > conftest.map <<EOF
4720VERS_1 {
4721 global: sym;
4722};
4723
4724VERS_2 {
4725 global: sym;
4726} VERS_1;
4727EOF
4728 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4729/* end confdefs.h. */
4730
4731int
4732main ()
4733{
4734
4735 ;
4736 return 0;
4737}
4738_ACEOF
4739if ac_fn_c_try_link "$LINENO"; then :
4740 have_ld_version_script=yes
4741else
4742 have_ld_version_script=no
4743fi
4744rm -f core conftest.err conftest.$ac_objext \
4745 conftest$ac_exeext conftest.$ac_ext
4746 rm -f conftest.map
4747 LDFLAGS="$save_LDFLAGS"
4748 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_ld_version_script" >&5
4749$as_echo "$have_ld_version_script" >&6; }
4750fi
4751 if test "$have_ld_version_script" = "yes"; then
4752 HAVE_LD_VERSION_SCRIPT_TRUE=
4753 HAVE_LD_VERSION_SCRIPT_FALSE='#'
4754else
4755 HAVE_LD_VERSION_SCRIPT_TRUE='#'
4756 HAVE_LD_VERSION_SCRIPT_FALSE=
4757fi
4758
4759
4760# See if compiler supports prototypes.
4761{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for function prototypes" >&5
4762$as_echo_n "checking for function prototypes... " >&6; }
4763if ${ijg_cv_have_prototypes+:} false; then :
4764 $as_echo_n "(cached) " >&6
4765else
4766 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4767/* end confdefs.h. */
4768
4769int testfunction (int arg1, int * arg2); /* check prototypes */
4770struct methods_struct { /* check method-pointer declarations */
4771 int (*error_exit) (char *msgtext);
4772 int (*trace_message) (char *msgtext);
4773 int (*another_method) (void);
4774};
4775int testfunction (int arg1, int * arg2) /* check definitions */
4776{ return arg2[arg1]; }
4777int test2function (void) /* check void arg list */
4778{ return 0; }
4779
4780_ACEOF
4781if ac_fn_c_try_compile "$LINENO"; then :
4782 ijg_cv_have_prototypes=yes
4783else
4784 ijg_cv_have_prototypes=no
4785fi
4786rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
4787fi
4788
4789{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ijg_cv_have_prototypes" >&5
4790$as_echo "$ijg_cv_have_prototypes" >&6; }
4791if test $ijg_cv_have_prototypes = yes; then
4792
4793$as_echo "#define HAVE_PROTOTYPES 1" >>confdefs.h
4794
4795else
4796 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Your compiler does not seem to know about function prototypes.
4797 Perhaps it needs a special switch to enable ANSI C mode.
4798 If so, we recommend running configure like this:
4799 ./configure CC='cc -switch'
4800 where -switch is the proper switch." >&5
4801$as_echo "$as_me: WARNING: Your compiler does not seem to know about function prototypes.
4802 Perhaps it needs a special switch to enable ANSI C mode.
4803 If so, we recommend running configure like this:
4804 ./configure CC='cc -switch'
4805 where -switch is the proper switch." >&2;}
4806fi
4807
4808# Check header files
4809
4810{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
4811$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
4812if ${ac_cv_path_GREP+:} false; then :
4813 $as_echo_n "(cached) " >&6
4814else
4815 if test -z "$GREP"; then
4816 ac_path_GREP_found=false
4817 # Loop through the user's path and test for each of PROGNAME-LIST
4818 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4819for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
4820do
4821 IFS=$as_save_IFS
4822 test -z "$as_dir" && as_dir=.
4823 for ac_prog in grep ggrep; do
4824 for ac_exec_ext in '' $ac_executable_extensions; do
4825 ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
4826 as_fn_executable_p "$ac_path_GREP" || continue
4827# Check for GNU ac_path_GREP and select it if it is found.
4828 # Check for GNU $ac_path_GREP
4829case `"$ac_path_GREP" --version 2>&1` in
4830*GNU*)
4831 ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
4832*)
4833 ac_count=0
4834 $as_echo_n 0123456789 >"conftest.in"
4835 while :
4836 do
4837 cat "conftest.in" "conftest.in" >"conftest.tmp"
4838 mv "conftest.tmp" "conftest.in"
4839 cp "conftest.in" "conftest.nl"
4840 $as_echo 'GREP' >> "conftest.nl"
4841 "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
4842 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
4843 as_fn_arith $ac_count + 1 && ac_count=$as_val
4844 if test $ac_count -gt ${ac_path_GREP_max-0}; then
4845 # Best one so far, save it but keep looking for a better one
4846 ac_cv_path_GREP="$ac_path_GREP"
4847 ac_path_GREP_max=$ac_count
4848 fi
4849 # 10*(2^10) chars as input seems more than enough
4850 test $ac_count -gt 10 && break
4851 done
4852 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
4853esac
4854
4855 $ac_path_GREP_found && break 3
4856 done
4857 done
4858 done
4859IFS=$as_save_IFS
4860 if test -z "$ac_cv_path_GREP"; then
4861 as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
4862 fi
4863else
4864 ac_cv_path_GREP=$GREP
4865fi
4866
4867fi
4868{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
4869$as_echo "$ac_cv_path_GREP" >&6; }
4870 GREP="$ac_cv_path_GREP"
4871
4872
4873{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
4874$as_echo_n "checking for egrep... " >&6; }
4875if ${ac_cv_path_EGREP+:} false; then :
4876 $as_echo_n "(cached) " >&6
4877else
4878 if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
4879 then ac_cv_path_EGREP="$GREP -E"
4880 else
4881 if test -z "$EGREP"; then
4882 ac_path_EGREP_found=false
4883 # Loop through the user's path and test for each of PROGNAME-LIST
4884 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4885for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
4886do
4887 IFS=$as_save_IFS
4888 test -z "$as_dir" && as_dir=.
4889 for ac_prog in egrep; do
4890 for ac_exec_ext in '' $ac_executable_extensions; do
4891 ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
4892 as_fn_executable_p "$ac_path_EGREP" || continue
4893# Check for GNU ac_path_EGREP and select it if it is found.
4894 # Check for GNU $ac_path_EGREP
4895case `"$ac_path_EGREP" --version 2>&1` in
4896*GNU*)
4897 ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
4898*)
4899 ac_count=0
4900 $as_echo_n 0123456789 >"conftest.in"
4901 while :
4902 do
4903 cat "conftest.in" "conftest.in" >"conftest.tmp"
4904 mv "conftest.tmp" "conftest.in"
4905 cp "conftest.in" "conftest.nl"
4906 $as_echo 'EGREP' >> "conftest.nl"
4907 "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
4908 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
4909 as_fn_arith $ac_count + 1 && ac_count=$as_val
4910 if test $ac_count -gt ${ac_path_EGREP_max-0}; then
4911 # Best one so far, save it but keep looking for a better one
4912 ac_cv_path_EGREP="$ac_path_EGREP"
4913 ac_path_EGREP_max=$ac_count
4914 fi
4915 # 10*(2^10) chars as input seems more than enough
4916 test $ac_count -gt 10 && break
4917 done
4918 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
4919esac
4920
4921 $ac_path_EGREP_found && break 3
4922 done
4923 done
4924 done
4925IFS=$as_save_IFS
4926 if test -z "$ac_cv_path_EGREP"; then
4927 as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
4928 fi
4929else
4930 ac_cv_path_EGREP=$EGREP
4931fi
4932
4933 fi
4934fi
4935{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
4936$as_echo "$ac_cv_path_EGREP" >&6; }
4937 EGREP="$ac_cv_path_EGREP"
4938
4939
4940{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
4941$as_echo_n "checking for ANSI C header files... " >&6; }
4942if ${ac_cv_header_stdc+:} false; then :
4943 $as_echo_n "(cached) " >&6
4944else
4945 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4946/* end confdefs.h. */
4947#include <stdlib.h>
4948#include <stdarg.h>
4949#include <string.h>
4950#include <float.h>
4951
4952int
4953main ()
4954{
4955
4956 ;
4957 return 0;
4958}
4959_ACEOF
4960if ac_fn_c_try_compile "$LINENO"; then :
4961 ac_cv_header_stdc=yes
4962else
4963 ac_cv_header_stdc=no
4964fi
4965rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
4966
4967if test $ac_cv_header_stdc = yes; then
4968 # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
4969 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4970/* end confdefs.h. */
4971#include <string.h>
4972
4973_ACEOF
4974if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
4975 $EGREP "memchr" >/dev/null 2>&1; then :
4976
4977else
4978 ac_cv_header_stdc=no
4979fi
4980rm -f conftest*
4981
4982fi
4983
4984if test $ac_cv_header_stdc = yes; then
4985 # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
4986 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4987/* end confdefs.h. */
4988#include <stdlib.h>
4989
4990_ACEOF
4991if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
4992 $EGREP "free" >/dev/null 2>&1; then :
4993
4994else
4995 ac_cv_header_stdc=no
4996fi
4997rm -f conftest*
4998
4999fi
5000
5001if test $ac_cv_header_stdc = yes; then
5002 # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
5003 if test "$cross_compiling" = yes; then :
5004 :
5005else
5006 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5007/* end confdefs.h. */
5008#include <ctype.h>
5009#include <stdlib.h>
5010#if ((' ' & 0x0FF) == 0x020)
5011# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
5012# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
5013#else
5014# define ISLOWER(c) \
5015 (('a' <= (c) && (c) <= 'i') \
5016 || ('j' <= (c) && (c) <= 'r') \
5017 || ('s' <= (c) && (c) <= 'z'))
5018# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
5019#endif
5020
5021#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
5022int
5023main ()
5024{
5025 int i;
5026 for (i = 0; i < 256; i++)
5027 if (XOR (islower (i), ISLOWER (i))
5028 || toupper (i) != TOUPPER (i))
5029 return 2;
5030 return 0;
5031}
5032_ACEOF
5033if ac_fn_c_try_run "$LINENO"; then :
5034
5035else
5036 ac_cv_header_stdc=no
5037fi
5038rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
5039 conftest.$ac_objext conftest.beam conftest.$ac_ext
5040fi
5041
5042fi
5043fi
5044{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
5045$as_echo "$ac_cv_header_stdc" >&6; }
5046if test $ac_cv_header_stdc = yes; then
5047
5048$as_echo "#define STDC_HEADERS 1" >>confdefs.h
5049
5050fi
5051
5052# On IRIX 5.3, sys/types and inttypes.h are conflicting.
5053for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
5054 inttypes.h stdint.h unistd.h
5055do :
5056 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
5057ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
5058"
5059if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
5060 cat >>confdefs.h <<_ACEOF
5061#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
5062_ACEOF
5063
5064fi
5065
5066done
5067
5068
5069for ac_header in stddef.h stdlib.h locale.h
5070do :
5071 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
5072ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
5073if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
5074 cat >>confdefs.h <<_ACEOF
5075#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
5076_ACEOF
5077
5078fi
5079
5080done
5081
5082ac_fn_c_check_header_mongrel "$LINENO" "string.h" "ac_cv_header_string_h" "$ac_includes_default"
5083if test "x$ac_cv_header_string_h" = xyes; then :
5084
5085else
5086
5087$as_echo "#define NEED_BSD_STRINGS 1" >>confdefs.h
5088
5089fi
5090
5091
5092
5093# See whether type size_t is defined in any ANSI-standard places;
5094# if not, perhaps it is defined in <sys/types.h>.
5095{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for size_t" >&5
5096$as_echo_n "checking for size_t... " >&6; }
5097cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5098/* end confdefs.h. */
5099
5100#ifdef HAVE_STDDEF_H
5101#include <stddef.h>
5102#endif
5103#ifdef HAVE_STDLIB_H
5104#include <stdlib.h>
5105#endif
5106#include <stdio.h>
5107#ifdef NEED_BSD_STRINGS
5108#include <strings.h>
5109#else
5110#include <string.h>
5111#endif
5112typedef size_t my_size_t;
5113
5114int
5115main ()
5116{
5117 my_size_t foovar;
5118 ;
5119 return 0;
5120}
5121_ACEOF
5122if ac_fn_c_try_compile "$LINENO"; then :
5123 ijg_size_t_ok=yes
5124else
5125 ijg_size_t_ok="not ANSI, perhaps it is in sys/types.h"
5126fi
5127rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5128{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ijg_size_t_ok" >&5
5129$as_echo "$ijg_size_t_ok" >&6; }
5130if test "$ijg_size_t_ok" != yes; then
5131 ac_fn_c_check_header_mongrel "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$ac_includes_default"
5132if test "x$ac_cv_header_sys_types_h" = xyes; then :
5133
5134$as_echo "#define NEED_SYS_TYPES_H 1" >>confdefs.h
5135
5136 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5137/* end confdefs.h. */
5138#include <sys/types.h>
5139_ACEOF
5140if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
5141 $EGREP "size_t" >/dev/null 2>&1; then :
5142 ijg_size_t_ok="size_t is in sys/types.h"
5143else
5144 ijg_size_t_ok=no
5145fi
5146rm -f conftest*
5147
5148else
5149 ijg_size_t_ok=no
5150fi
5151
5152
5153 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ijg_size_t_ok" >&5
5154$as_echo "$ijg_size_t_ok" >&6; }
5155 if test "$ijg_size_t_ok" = no; then
5156 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Type size_t is not defined in any of the usual places.
5157 Try putting '\"typedef unsigned int size_t;\"' in jconfig.h." >&5
5158$as_echo "$as_me: WARNING: Type size_t is not defined in any of the usual places.
5159 Try putting '\"typedef unsigned int size_t;\"' in jconfig.h." >&2;}
5160 fi
5161fi
5162
5163# Check compiler characteristics
5164{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for type unsigned char" >&5
5165$as_echo_n "checking for type unsigned char... " >&6; }
5166cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5167/* end confdefs.h. */
5168
5169int
5170main ()
5171{
5172 unsigned char un_char;
5173 ;
5174 return 0;
5175}
5176_ACEOF
5177if ac_fn_c_try_compile "$LINENO"; then :
5178 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5179$as_echo "yes" >&6; }
5180
5181$as_echo "#define HAVE_UNSIGNED_CHAR 1" >>confdefs.h
5182
5183else
5184 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5185$as_echo "no" >&6; }
5186fi
5187rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5188
5189{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for type unsigned short" >&5
5190$as_echo_n "checking for type unsigned short... " >&6; }
5191cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5192/* end confdefs.h. */
5193
5194int
5195main ()
5196{
5197 unsigned short un_short;
5198 ;
5199 return 0;
5200}
5201_ACEOF
5202if ac_fn_c_try_compile "$LINENO"; then :
5203 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5204$as_echo "yes" >&6; }
5205
5206$as_echo "#define HAVE_UNSIGNED_SHORT 1" >>confdefs.h
5207
5208else
5209 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5210$as_echo "no" >&6; }
5211fi
5212rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5213
5214{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for type void" >&5
5215$as_echo_n "checking for type void... " >&6; }
5216cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5217/* end confdefs.h. */
5218
5219/* Caution: a C++ compiler will insist on valid prototypes */
5220typedef void * void_ptr; /* check void * */
5221#ifdef HAVE_PROTOTYPES /* check ptr to function returning void */
5222typedef void (*void_func) (int a, int b);
5223#else
5224typedef void (*void_func) ();
5225#endif
5226
5227#ifdef HAVE_PROTOTYPES /* check void function result */
5228void test3function (void_ptr arg1, void_func arg2)
5229#else
5230void test3function (arg1, arg2)
5231 void_ptr arg1;
5232 void_func arg2;
5233#endif
5234{
5235 char * locptr = (char *) arg1; /* check casting to and from void * */
5236 arg1 = (void *) locptr;
5237 (*arg2) (1, 2); /* check call of fcn returning void */
5238}
5239
5240int
5241main ()
5242{
5243
5244 ;
5245 return 0;
5246}
5247_ACEOF
5248if ac_fn_c_try_compile "$LINENO"; then :
5249 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5250$as_echo "yes" >&6; }
5251else
5252 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5253$as_echo "no" >&6; }
5254
5255$as_echo "#define void char" >>confdefs.h
5256
5257fi
5258rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5259{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
5260$as_echo_n "checking for an ANSI C-conforming const... " >&6; }
5261if ${ac_cv_c_const+:} false; then :
5262 $as_echo_n "(cached) " >&6
5263else
5264 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5265/* end confdefs.h. */
5266
5267int
5268main ()
5269{
5270
5271#ifndef __cplusplus
5272 /* Ultrix mips cc rejects this sort of thing. */
5273 typedef int charset[2];
5274 const charset cs = { 0, 0 };
5275 /* SunOS 4.1.1 cc rejects this. */
5276 char const *const *pcpcc;
5277 char **ppc;
5278 /* NEC SVR4.0.2 mips cc rejects this. */
5279 struct point {int x, y;};
5280 static struct point const zero = {0,0};
5281 /* AIX XL C 1.02.0.0 rejects this.
5282 It does not let you subtract one const X* pointer from another in
5283 an arm of an if-expression whose if-part is not a constant
5284 expression */
5285 const char *g = "string";
5286 pcpcc = &g + (g ? g-g : 0);
5287 /* HPUX 7.0 cc rejects these. */
5288 ++pcpcc;
5289 ppc = (char**) pcpcc;
5290 pcpcc = (char const *const *) ppc;
5291 { /* SCO 3.2v4 cc rejects this sort of thing. */
5292 char tx;
5293 char *t = &tx;
5294 char const *s = 0 ? (char *) 0 : (char const *) 0;
5295
5296 *t++ = 0;
5297 if (s) return 0;
5298 }
5299 { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */
5300 int x[] = {25, 17};
5301 const int *foo = &x[0];
5302 ++foo;
5303 }
5304 { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
5305 typedef const int *iptr;
5306 iptr p = 0;
5307 ++p;
5308 }
5309 { /* AIX XL C 1.02.0.0 rejects this sort of thing, saying
5310 "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
5311 struct s { int j; const int *ap[3]; } bx;
5312 struct s *b = &bx; b->j = 5;
5313 }
5314 { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
5315 const int foo = 10;
5316 if (!foo) return 0;
5317 }
5318 return !cs[0] && !zero.x;
5319#endif
5320
5321 ;
5322 return 0;
5323}
5324_ACEOF
5325if ac_fn_c_try_compile "$LINENO"; then :
5326 ac_cv_c_const=yes
5327else
5328 ac_cv_c_const=no
5329fi
5330rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5331fi
5332{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5
5333$as_echo "$ac_cv_c_const" >&6; }
5334if test $ac_cv_c_const = no; then
5335
5336$as_echo "#define const /**/" >>confdefs.h
5337
5338fi
5339
5340
5341# Check for non-broken inline under various spellings
5342{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
5343$as_echo_n "checking for inline... " >&6; }
5344ijg_cv_inline=""
5345cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5346/* end confdefs.h. */
5347
5348int
5349main ()
5350{
5351} __inline__ int foo() { return 0; }
5352int bar() { return foo();
5353 ;
5354 return 0;
5355}
5356_ACEOF
5357if ac_fn_c_try_compile "$LINENO"; then :
5358 ijg_cv_inline="__inline__"
5359else
5360 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5361/* end confdefs.h. */
5362
5363int
5364main ()
5365{
5366} __inline int foo() { return 0; }
5367int bar() { return foo();
5368 ;
5369 return 0;
5370}
5371_ACEOF
5372if ac_fn_c_try_compile "$LINENO"; then :
5373 ijg_cv_inline="__inline"
5374else
5375 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5376/* end confdefs.h. */
5377
5378int
5379main ()
5380{
5381} inline int foo() { return 0; }
5382int bar() { return foo();
5383 ;
5384 return 0;
5385}
5386_ACEOF
5387if ac_fn_c_try_compile "$LINENO"; then :
5388 ijg_cv_inline="inline"
5389fi
5390rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5391fi
5392rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5393fi
5394rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5395{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ijg_cv_inline" >&5
5396$as_echo "$ijg_cv_inline" >&6; }
5397
5398cat >>confdefs.h <<_ACEOF
5399#define INLINE $ijg_cv_inline
5400_ACEOF
5401
5402
5403# We cannot check for bogus warnings, but at least we can check for errors
5404{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for broken incomplete types" >&5
5405$as_echo_n "checking for broken incomplete types... " >&6; }
5406cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5407/* end confdefs.h. */
5408 typedef struct undefined_structure * undef_struct_ptr;
5409int
5410main ()
5411{
5412
5413 ;
5414 return 0;
5415}
5416_ACEOF
5417if ac_fn_c_try_compile "$LINENO"; then :
5418 { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
5419$as_echo "ok" >&6; }
5420else
5421 { $as_echo "$as_me:${as_lineno-$LINENO}: result: broken" >&5
5422$as_echo "broken" >&6; }
5423
5424$as_echo "#define INCOMPLETE_TYPES_BROKEN 1" >>confdefs.h
5425
5426fi
5427rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5428
5429# Test whether global names are unique to at least 15 chars
5430{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for short external names" >&5
5431$as_echo_n "checking for short external names... " >&6; }
5432cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5433/* end confdefs.h. */
5434
5435int possibly_duplicate_function () { return 0; }
5436int possibly_dupli_function () { return 1; }
5437
5438int
5439main ()
5440{
5441
5442 ;
5443 return 0;
5444}
5445_ACEOF
5446if ac_fn_c_try_link "$LINENO"; then :
5447 { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
5448$as_echo "ok" >&6; }
5449else
5450 { $as_echo "$as_me:${as_lineno-$LINENO}: result: short" >&5
5451$as_echo "short" >&6; }
5452
5453$as_echo "#define NEED_SHORT_EXTERNAL_NAMES 1" >>confdefs.h
5454
5455fi
5456rm -f core conftest.err conftest.$ac_objext \
5457 conftest$ac_exeext conftest.$ac_ext
5458
5459# Run-time checks
5460{ $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if char is signed" >&5
5461$as_echo_n "checking to see if char is signed... " >&6; }
5462if test "$cross_compiling" = yes; then :
5463 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Assuming that char is signed on target machine.
5464 If it is unsigned, this will be a little bit inefficient." >&5
5465$as_echo "$as_me: WARNING: Assuming that char is signed on target machine.
5466 If it is unsigned, this will be a little bit inefficient." >&2;}
5467
5468else
5469 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5470/* end confdefs.h. */
5471
5472#ifdef HAVE_STDLIB_H
5473#include <stdlib.h>
5474#endif
5475#include <stdio.h>
5476#ifdef HAVE_PROTOTYPES
5477int is_char_signed (int arg)
5478#else
5479int is_char_signed (arg)
5480 int arg;
5481#endif
5482{
5483 if (arg == 189) { /* expected result for unsigned char */
5484 return 0; /* type char is unsigned */
5485 }
5486 else if (arg != -67) { /* expected result for signed char */
5487 printf("Hmm, it seems 'char' is not eight bits wide on your machine.\n");
5488 printf("I fear the JPEG software will not work at all.\n\n");
5489 }
5490 return 1; /* assume char is signed otherwise */
5491}
5492char signed_char_check = (char) (-67);
5493int main() {
5494 exit(is_char_signed((int) signed_char_check));
5495}
5496_ACEOF
5497if ac_fn_c_try_run "$LINENO"; then :
5498 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5499$as_echo "no" >&6; }
5500
5501$as_echo "#define CHAR_IS_UNSIGNED 1" >>confdefs.h
5502
5503else
5504 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5505$as_echo "yes" >&6; }
5506fi
5507rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
5508 conftest.$ac_objext conftest.beam conftest.$ac_ext
5509fi
5510
5511
5512{ $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if right shift is signed" >&5
5513$as_echo_n "checking to see if right shift is signed... " >&6; }
5514if test "$cross_compiling" = yes; then :
5515 { $as_echo "$as_me:${as_lineno-$LINENO}: result: Assuming that right shift is signed on target machine." >&5
5516$as_echo "Assuming that right shift is signed on target machine." >&6; }
5517else
5518 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5519/* end confdefs.h. */
5520
5521#ifdef HAVE_STDLIB_H
5522#include <stdlib.h>
5523#endif
5524#include <stdio.h>
5525#ifdef HAVE_PROTOTYPES
5526int is_shifting_signed (long arg)
5527#else
5528int is_shifting_signed (arg)
5529 long arg;
5530#endif
5531/* See whether right-shift on a long is signed or not. */
5532{
5533 long res = arg >> 4;
5534
5535 if (res == -0x7F7E80CL) { /* expected result for signed shift */
5536 return 1; /* right shift is signed */
5537 }
5538 /* see if unsigned-shift hack will fix it. */
5539 /* we can't just test exact value since it depends on width of long... */
5540 res |= (~0L) << (32-4);
5541 if (res == -0x7F7E80CL) { /* expected result now? */
5542 return 0; /* right shift is unsigned */
5543 }
5544 printf("Right shift isn't acting as I expect it to.\n");
5545 printf("I fear the JPEG software will not work at all.\n\n");
5546 return 0; /* try it with unsigned anyway */
5547}
5548int main() {
5549 exit(is_shifting_signed(-0x7F7E80B1L));
5550}
5551_ACEOF
5552if ac_fn_c_try_run "$LINENO"; then :
5553 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5554$as_echo "no" >&6; }
5555
5556$as_echo "#define RIGHT_SHIFT_IS_UNSIGNED 1" >>confdefs.h
5557
5558else
5559 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5560$as_echo "yes" >&6; }
5561fi
5562rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
5563 conftest.$ac_objext conftest.beam conftest.$ac_ext
5564fi
5565
5566
5567{ $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if fopen accepts b spec" >&5
5568$as_echo_n "checking to see if fopen accepts b spec... " >&6; }
5569if test "$cross_compiling" = yes; then :
5570 { $as_echo "$as_me:${as_lineno-$LINENO}: result: Assuming that it does." >&5
5571$as_echo "Assuming that it does." >&6; }
5572else
5573 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5574/* end confdefs.h. */
5575
5576#ifdef HAVE_STDLIB_H
5577#include <stdlib.h>
5578#endif
5579#include <stdio.h>
5580int main() {
5581 if (fopen("conftestdata", "wb") != NULL)
5582 exit(0);
5583 exit(1);
5584}
5585_ACEOF
5586if ac_fn_c_try_run "$LINENO"; then :
5587 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
5588$as_echo "yes" >&6; }
5589else
5590 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5591$as_echo "no" >&6; }
5592
5593$as_echo "#define DONT_USE_B_MODE 1" >>confdefs.h
5594
5595fi
5596rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
5597 conftest.$ac_objext conftest.beam conftest.$ac_ext
5598fi
5599
5600
5601# Configure libtool
5602enable_win32_dll=yes
5603
5604case $host in
5605*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
5606 if test -n "$ac_tool_prefix"; then
5607 # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
5608set dummy ${ac_tool_prefix}as; ac_word=$2
5609{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5610$as_echo_n "checking for $ac_word... " >&6; }
5611if ${ac_cv_prog_AS+:} false; then :
5612 $as_echo_n "(cached) " >&6
5613else
5614 if test -n "$AS"; then
5615 ac_cv_prog_AS="$AS" # Let the user override the test.
5616else
5617as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5618for as_dir in $PATH
5619do
5620 IFS=$as_save_IFS
5621 test -z "$as_dir" && as_dir=.
5622 for ac_exec_ext in '' $ac_executable_extensions; do
5623 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5624 ac_cv_prog_AS="${ac_tool_prefix}as"
5625 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5626 break 2
5627 fi
5628done
5629 done
5630IFS=$as_save_IFS
5631
5632fi
5633fi
5634AS=$ac_cv_prog_AS
5635if test -n "$AS"; then
5636 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AS" >&5
5637$as_echo "$AS" >&6; }
5638else
5639 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5640$as_echo "no" >&6; }
5641fi
5642
5643
5644fi
5645if test -z "$ac_cv_prog_AS"; then
5646 ac_ct_AS=$AS
5647 # Extract the first word of "as", so it can be a program name with args.
5648set dummy as; ac_word=$2
5649{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5650$as_echo_n "checking for $ac_word... " >&6; }
5651if ${ac_cv_prog_ac_ct_AS+:} false; then :
5652 $as_echo_n "(cached) " >&6
5653else
5654 if test -n "$ac_ct_AS"; then
5655 ac_cv_prog_ac_ct_AS="$ac_ct_AS" # Let the user override the test.
5656else
5657as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5658for as_dir in $PATH
5659do
5660 IFS=$as_save_IFS
5661 test -z "$as_dir" && as_dir=.
5662 for ac_exec_ext in '' $ac_executable_extensions; do
5663 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5664 ac_cv_prog_ac_ct_AS="as"
5665 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5666 break 2
5667 fi
5668done
5669 done
5670IFS=$as_save_IFS
5671
5672fi
5673fi
5674ac_ct_AS=$ac_cv_prog_ac_ct_AS
5675if test -n "$ac_ct_AS"; then
5676 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5
5677$as_echo "$ac_ct_AS" >&6; }
5678else
5679 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5680$as_echo "no" >&6; }
5681fi
5682
5683 if test "x$ac_ct_AS" = x; then
5684 AS="false"
5685 else
5686 case $cross_compiling:$ac_tool_warned in
5687yes:)
5688{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
5689$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
5690ac_tool_warned=yes ;;
5691esac
5692 AS=$ac_ct_AS
5693 fi
5694else
5695 AS="$ac_cv_prog_AS"
5696fi
5697
5698 if test -n "$ac_tool_prefix"; then
5699 # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
5700set dummy ${ac_tool_prefix}dlltool; ac_word=$2
5701{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5702$as_echo_n "checking for $ac_word... " >&6; }
5703if ${ac_cv_prog_DLLTOOL+:} false; then :
5704 $as_echo_n "(cached) " >&6
5705else
5706 if test -n "$DLLTOOL"; then
5707 ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
5708else
5709as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5710for as_dir in $PATH
5711do
5712 IFS=$as_save_IFS
5713 test -z "$as_dir" && as_dir=.
5714 for ac_exec_ext in '' $ac_executable_extensions; do
5715 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5716 ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
5717 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5718 break 2
5719 fi
5720done
5721 done
5722IFS=$as_save_IFS
5723
5724fi
5725fi
5726DLLTOOL=$ac_cv_prog_DLLTOOL
5727if test -n "$DLLTOOL"; then
5728 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
5729$as_echo "$DLLTOOL" >&6; }
5730else
5731 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5732$as_echo "no" >&6; }
5733fi
5734
5735
5736fi
5737if test -z "$ac_cv_prog_DLLTOOL"; then
5738 ac_ct_DLLTOOL=$DLLTOOL
5739 # Extract the first word of "dlltool", so it can be a program name with args.
5740set dummy dlltool; ac_word=$2
5741{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5742$as_echo_n "checking for $ac_word... " >&6; }
5743if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
5744 $as_echo_n "(cached) " >&6
5745else
5746 if test -n "$ac_ct_DLLTOOL"; then
5747 ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
5748else
5749as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5750for as_dir in $PATH
5751do
5752 IFS=$as_save_IFS
5753 test -z "$as_dir" && as_dir=.
5754 for ac_exec_ext in '' $ac_executable_extensions; do
5755 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5756 ac_cv_prog_ac_ct_DLLTOOL="dlltool"
5757 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5758 break 2
5759 fi
5760done
5761 done
5762IFS=$as_save_IFS
5763
5764fi
5765fi
5766ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
5767if test -n "$ac_ct_DLLTOOL"; then
5768 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
5769$as_echo "$ac_ct_DLLTOOL" >&6; }
5770else
5771 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5772$as_echo "no" >&6; }
5773fi
5774
5775 if test "x$ac_ct_DLLTOOL" = x; then
5776 DLLTOOL="false"
5777 else
5778 case $cross_compiling:$ac_tool_warned in
5779yes:)
5780{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
5781$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
5782ac_tool_warned=yes ;;
5783esac
5784 DLLTOOL=$ac_ct_DLLTOOL
5785 fi
5786else
5787 DLLTOOL="$ac_cv_prog_DLLTOOL"
5788fi
5789
5790 if test -n "$ac_tool_prefix"; then
5791 # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
5792set dummy ${ac_tool_prefix}objdump; ac_word=$2
5793{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5794$as_echo_n "checking for $ac_word... " >&6; }
5795if ${ac_cv_prog_OBJDUMP+:} false; then :
5796 $as_echo_n "(cached) " >&6
5797else
5798 if test -n "$OBJDUMP"; then
5799 ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
5800else
5801as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5802for as_dir in $PATH
5803do
5804 IFS=$as_save_IFS
5805 test -z "$as_dir" && as_dir=.
5806 for ac_exec_ext in '' $ac_executable_extensions; do
5807 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5808 ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
5809 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5810 break 2
5811 fi
5812done
5813 done
5814IFS=$as_save_IFS
5815
5816fi
5817fi
5818OBJDUMP=$ac_cv_prog_OBJDUMP
5819if test -n "$OBJDUMP"; then
5820 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
5821$as_echo "$OBJDUMP" >&6; }
5822else
5823 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5824$as_echo "no" >&6; }
5825fi
5826
5827
5828fi
5829if test -z "$ac_cv_prog_OBJDUMP"; then
5830 ac_ct_OBJDUMP=$OBJDUMP
5831 # Extract the first word of "objdump", so it can be a program name with args.
5832set dummy objdump; ac_word=$2
5833{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5834$as_echo_n "checking for $ac_word... " >&6; }
5835if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
5836 $as_echo_n "(cached) " >&6
5837else
5838 if test -n "$ac_ct_OBJDUMP"; then
5839 ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
5840else
5841as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5842for as_dir in $PATH
5843do
5844 IFS=$as_save_IFS
5845 test -z "$as_dir" && as_dir=.
5846 for ac_exec_ext in '' $ac_executable_extensions; do
5847 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5848 ac_cv_prog_ac_ct_OBJDUMP="objdump"
5849 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5850 break 2
5851 fi
5852done
5853 done
5854IFS=$as_save_IFS
5855
5856fi
5857fi
5858ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
5859if test -n "$ac_ct_OBJDUMP"; then
5860 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
5861$as_echo "$ac_ct_OBJDUMP" >&6; }
5862else
5863 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5864$as_echo "no" >&6; }
5865fi
5866
5867 if test "x$ac_ct_OBJDUMP" = x; then
5868 OBJDUMP="false"
5869 else
5870 case $cross_compiling:$ac_tool_warned in
5871yes:)
5872{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
5873$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
5874ac_tool_warned=yes ;;
5875esac
5876 OBJDUMP=$ac_ct_OBJDUMP
5877 fi
5878else
5879 OBJDUMP="$ac_cv_prog_OBJDUMP"
5880fi
5881
5882 ;;
5883esac
5884
5885test -z "$AS" && AS=as
5886
5887
5888
5889
5890
5891test -z "$DLLTOOL" && DLLTOOL=dlltool
5892
5893
5894
5895
5896
5897test -z "$OBJDUMP" && OBJDUMP=objdump
5898
5899
5900
5901
5902
5903
5904
5905case `pwd` in
5906 *\ * | *\ *)
5907 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
5908$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
5909esac
5910
5911
5912
5913macro_version='2.4.2'
5914macro_revision='1.3337'
5915
5916
5917
5918
5919
5920
5921
5922
5923
5924
5925
5926
5927
5928ltmain="$ac_aux_dir/ltmain.sh"
5929
5930# Backslashify metacharacters that are still active within
5931# double-quoted strings.
5932sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
5933
5934# Same as above, but do not quote variable references.
5935double_quote_subst='s/\(["`\\]\)/\\\1/g'
5936
5937# Sed substitution to delay expansion of an escaped shell variable in a
5938# double_quote_subst'ed string.
5939delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
5940
5941# Sed substitution to delay expansion of an escaped single quote.
5942delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
5943
5944# Sed substitution to avoid accidental globbing in evaled expressions
5945no_glob_subst='s/\*/\\\*/g'
5946
5947ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
5948ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
5949ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
5950
5951{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
5952$as_echo_n "checking how to print strings... " >&6; }
5953# Test print first, because it will be a builtin if present.
5954if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
5955 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
5956 ECHO='print -r --'
5957elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
5958 ECHO='printf %s\n'
5959else
5960 # Use this function as a fallback that always works.
5961 func_fallback_echo ()
5962 {
5963 eval 'cat <<_LTECHO_EOF
5964$1
5965_LTECHO_EOF'
5966 }
5967 ECHO='func_fallback_echo'
5968fi
5969
5970# func_echo_all arg...
5971# Invoke $ECHO with all args, space-separated.
5972func_echo_all ()
5973{
5974 $ECHO ""
5975}
5976
5977case "$ECHO" in
5978 printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5
5979$as_echo "printf" >&6; } ;;
5980 print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5
5981$as_echo "print -r" >&6; } ;;
5982 *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5
5983$as_echo "cat" >&6; } ;;
5984esac
5985
5986
5987
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
6000$as_echo_n "checking for a sed that does not truncate output... " >&6; }
6001if ${ac_cv_path_SED+:} false; then :
6002 $as_echo_n "(cached) " >&6
6003else
6004 ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
6005 for ac_i in 1 2 3 4 5 6 7; do
6006 ac_script="$ac_script$as_nl$ac_script"
6007 done
6008 echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
6009 { ac_script=; unset ac_script;}
6010 if test -z "$SED"; then
6011 ac_path_SED_found=false
6012 # Loop through the user's path and test for each of PROGNAME-LIST
6013 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6014for as_dir in $PATH
6015do
6016 IFS=$as_save_IFS
6017 test -z "$as_dir" && as_dir=.
6018 for ac_prog in sed gsed; do
6019 for ac_exec_ext in '' $ac_executable_extensions; do
6020 ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
6021 as_fn_executable_p "$ac_path_SED" || continue
6022# Check for GNU ac_path_SED and select it if it is found.
6023 # Check for GNU $ac_path_SED
6024case `"$ac_path_SED" --version 2>&1` in
6025*GNU*)
6026 ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
6027*)
6028 ac_count=0
6029 $as_echo_n 0123456789 >"conftest.in"
6030 while :
6031 do
6032 cat "conftest.in" "conftest.in" >"conftest.tmp"
6033 mv "conftest.tmp" "conftest.in"
6034 cp "conftest.in" "conftest.nl"
6035 $as_echo '' >> "conftest.nl"
6036 "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
6037 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
6038 as_fn_arith $ac_count + 1 && ac_count=$as_val
6039 if test $ac_count -gt ${ac_path_SED_max-0}; then
6040 # Best one so far, save it but keep looking for a better one
6041 ac_cv_path_SED="$ac_path_SED"
6042 ac_path_SED_max=$ac_count
6043 fi
6044 # 10*(2^10) chars as input seems more than enough
6045 test $ac_count -gt 10 && break
6046 done
6047 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
6048esac
6049
6050 $ac_path_SED_found && break 3
6051 done
6052 done
6053 done
6054IFS=$as_save_IFS
6055 if test -z "$ac_cv_path_SED"; then
6056 as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5
6057 fi
6058else
6059 ac_cv_path_SED=$SED
6060fi
6061
6062fi
6063{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
6064$as_echo "$ac_cv_path_SED" >&6; }
6065 SED="$ac_cv_path_SED"
6066 rm -f conftest.sed
6067
6068test -z "$SED" && SED=sed
6069Xsed="$SED -e 1s/^X//"
6070
6071
6072
6073
6074
6075
6076
6077
6078
6079
6080
6081{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
6082$as_echo_n "checking for fgrep... " >&6; }
6083if ${ac_cv_path_FGREP+:} false; then :
6084 $as_echo_n "(cached) " >&6
6085else
6086 if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
6087 then ac_cv_path_FGREP="$GREP -F"
6088 else
6089 if test -z "$FGREP"; then
6090 ac_path_FGREP_found=false
6091 # Loop through the user's path and test for each of PROGNAME-LIST
6092 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6093for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
6094do
6095 IFS=$as_save_IFS
6096 test -z "$as_dir" && as_dir=.
6097 for ac_prog in fgrep; do
6098 for ac_exec_ext in '' $ac_executable_extensions; do
6099 ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
6100 as_fn_executable_p "$ac_path_FGREP" || continue
6101# Check for GNU ac_path_FGREP and select it if it is found.
6102 # Check for GNU $ac_path_FGREP
6103case `"$ac_path_FGREP" --version 2>&1` in
6104*GNU*)
6105 ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;
6106*)
6107 ac_count=0
6108 $as_echo_n 0123456789 >"conftest.in"
6109 while :
6110 do
6111 cat "conftest.in" "conftest.in" >"conftest.tmp"
6112 mv "conftest.tmp" "conftest.in"
6113 cp "conftest.in" "conftest.nl"
6114 $as_echo 'FGREP' >> "conftest.nl"
6115 "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break
6116 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
6117 as_fn_arith $ac_count + 1 && ac_count=$as_val
6118 if test $ac_count -gt ${ac_path_FGREP_max-0}; then
6119 # Best one so far, save it but keep looking for a better one
6120 ac_cv_path_FGREP="$ac_path_FGREP"
6121 ac_path_FGREP_max=$ac_count
6122 fi
6123 # 10*(2^10) chars as input seems more than enough
6124 test $ac_count -gt 10 && break
6125 done
6126 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
6127esac
6128
6129 $ac_path_FGREP_found && break 3
6130 done
6131 done
6132 done
6133IFS=$as_save_IFS
6134 if test -z "$ac_cv_path_FGREP"; then
6135 as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
6136 fi
6137else
6138 ac_cv_path_FGREP=$FGREP
6139fi
6140
6141 fi
6142fi
6143{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
6144$as_echo "$ac_cv_path_FGREP" >&6; }
6145 FGREP="$ac_cv_path_FGREP"
6146
6147
6148test -z "$GREP" && GREP=grep
6149
6150
6151
6152
6153
6154
6155
6156
6157
6158
6159
6160
6161
6162
6163
6164
6165
6166
6167
6168# Check whether --with-gnu-ld was given.
6169if test "${with_gnu_ld+set}" = set; then :
6170 withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
6171else
6172 with_gnu_ld=no
6173fi
6174
6175ac_prog=ld
6176if test "$GCC" = yes; then
6177 # Check if gcc -print-prog-name=ld gives a path.
6178 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
6179$as_echo_n "checking for ld used by $CC... " >&6; }
6180 case $host in
6181 *-*-mingw*)
6182 # gcc leaves a trailing carriage return which upsets mingw
6183 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
6184 *)
6185 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
6186 esac
6187 case $ac_prog in
6188 # Accept absolute paths.
6189 [\\/]* | ?:[\\/]*)
6190 re_direlt='/[^/][^/]*/\.\./'
6191 # Canonicalize the pathname of ld
6192 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
6193 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
6194 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
6195 done
6196 test -z "$LD" && LD="$ac_prog"
6197 ;;
6198 "")
6199 # If it fails, then pretend we aren't using GCC.
6200 ac_prog=ld
6201 ;;
6202 *)
6203 # If it is relative, then search for the first ld in PATH.
6204 with_gnu_ld=unknown
6205 ;;
6206 esac
6207elif test "$with_gnu_ld" = yes; then
6208 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
6209$as_echo_n "checking for GNU ld... " >&6; }
6210else
6211 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
6212$as_echo_n "checking for non-GNU ld... " >&6; }
6213fi
6214if ${lt_cv_path_LD+:} false; then :
6215 $as_echo_n "(cached) " >&6
6216else
6217 if test -z "$LD"; then
6218 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
6219 for ac_dir in $PATH; do
6220 IFS="$lt_save_ifs"
6221 test -z "$ac_dir" && ac_dir=.
6222 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
6223 lt_cv_path_LD="$ac_dir/$ac_prog"
6224 # Check to see if the program is GNU ld. I'd rather use --version,
6225 # but apparently some variants of GNU ld only accept -v.
6226 # Break only if it was the GNU/non-GNU ld that we prefer.
6227 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
6228 *GNU* | *'with BFD'*)
6229 test "$with_gnu_ld" != no && break
6230 ;;
6231 *)
6232 test "$with_gnu_ld" != yes && break
6233 ;;
6234 esac
6235 fi
6236 done
6237 IFS="$lt_save_ifs"
6238else
6239 lt_cv_path_LD="$LD" # Let the user override the test with a path.
6240fi
6241fi
6242
6243LD="$lt_cv_path_LD"
6244if test -n "$LD"; then
6245 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
6246$as_echo "$LD" >&6; }
6247else
6248 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6249$as_echo "no" >&6; }
6250fi
6251test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
6252{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
6253$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
6254if ${lt_cv_prog_gnu_ld+:} false; then :
6255 $as_echo_n "(cached) " >&6
6256else
6257 # I'd rather use --version here, but apparently some GNU lds only accept -v.
6258case `$LD -v 2>&1 </dev/null` in
6259*GNU* | *'with BFD'*)
6260 lt_cv_prog_gnu_ld=yes
6261 ;;
6262*)
6263 lt_cv_prog_gnu_ld=no
6264 ;;
6265esac
6266fi
6267{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
6268$as_echo "$lt_cv_prog_gnu_ld" >&6; }
6269with_gnu_ld=$lt_cv_prog_gnu_ld
6270
6271
6272
6273
6274
6275
6276
6277
6278
6279{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
6280$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
6281if ${lt_cv_path_NM+:} false; then :
6282 $as_echo_n "(cached) " >&6
6283else
6284 if test -n "$NM"; then
6285 # Let the user override the test.
6286 lt_cv_path_NM="$NM"
6287else
6288 lt_nm_to_check="${ac_tool_prefix}nm"
6289 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
6290 lt_nm_to_check="$lt_nm_to_check nm"
6291 fi
6292 for lt_tmp_nm in $lt_nm_to_check; do
6293 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
6294 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
6295 IFS="$lt_save_ifs"
6296 test -z "$ac_dir" && ac_dir=.
6297 tmp_nm="$ac_dir/$lt_tmp_nm"
6298 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
6299 # Check to see if the nm accepts a BSD-compat flag.
6300 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
6301 # nm: unknown option "B" ignored
6302 # Tru64's nm complains that /dev/null is an invalid object file
6303 case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
6304 */dev/null* | *'Invalid file or object type'*)
6305 lt_cv_path_NM="$tmp_nm -B"
6306 break
6307 ;;
6308 *)
6309 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
6310 */dev/null*)
6311 lt_cv_path_NM="$tmp_nm -p"
6312 break
6313 ;;
6314 *)
6315 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
6316 continue # so that we can try to find one that supports BSD flags
6317 ;;
6318 esac
6319 ;;
6320 esac
6321 fi
6322 done
6323 IFS="$lt_save_ifs"
6324 done
6325 : ${lt_cv_path_NM=no}
6326fi
6327fi
6328{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
6329$as_echo "$lt_cv_path_NM" >&6; }
6330if test "$lt_cv_path_NM" != "no"; then
6331 NM="$lt_cv_path_NM"
6332else
6333 # Didn't find any BSD compatible name lister, look for dumpbin.
6334 if test -n "$DUMPBIN"; then :
6335 # Let the user override the test.
6336 else
6337 if test -n "$ac_tool_prefix"; then
6338 for ac_prog in dumpbin "link -dump"
6339 do
6340 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
6341set dummy $ac_tool_prefix$ac_prog; ac_word=$2
6342{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6343$as_echo_n "checking for $ac_word... " >&6; }
6344if ${ac_cv_prog_DUMPBIN+:} false; then :
6345 $as_echo_n "(cached) " >&6
6346else
6347 if test -n "$DUMPBIN"; then
6348 ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.
6349else
6350as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6351for as_dir in $PATH
6352do
6353 IFS=$as_save_IFS
6354 test -z "$as_dir" && as_dir=.
6355 for ac_exec_ext in '' $ac_executable_extensions; do
6356 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6357 ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
6358 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6359 break 2
6360 fi
6361done
6362 done
6363IFS=$as_save_IFS
6364
6365fi
6366fi
6367DUMPBIN=$ac_cv_prog_DUMPBIN
6368if test -n "$DUMPBIN"; then
6369 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
6370$as_echo "$DUMPBIN" >&6; }
6371else
6372 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6373$as_echo "no" >&6; }
6374fi
6375
6376
6377 test -n "$DUMPBIN" && break
6378 done
6379fi
6380if test -z "$DUMPBIN"; then
6381 ac_ct_DUMPBIN=$DUMPBIN
6382 for ac_prog in dumpbin "link -dump"
6383do
6384 # Extract the first word of "$ac_prog", so it can be a program name with args.
6385set dummy $ac_prog; ac_word=$2
6386{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6387$as_echo_n "checking for $ac_word... " >&6; }
6388if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then :
6389 $as_echo_n "(cached) " >&6
6390else
6391 if test -n "$ac_ct_DUMPBIN"; then
6392 ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.
6393else
6394as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6395for as_dir in $PATH
6396do
6397 IFS=$as_save_IFS
6398 test -z "$as_dir" && as_dir=.
6399 for ac_exec_ext in '' $ac_executable_extensions; do
6400 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6401 ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
6402 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6403 break 2
6404 fi
6405done
6406 done
6407IFS=$as_save_IFS
6408
6409fi
6410fi
6411ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN
6412if test -n "$ac_ct_DUMPBIN"; then
6413 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
6414$as_echo "$ac_ct_DUMPBIN" >&6; }
6415else
6416 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6417$as_echo "no" >&6; }
6418fi
6419
6420
6421 test -n "$ac_ct_DUMPBIN" && break
6422done
6423
6424 if test "x$ac_ct_DUMPBIN" = x; then
6425 DUMPBIN=":"
6426 else
6427 case $cross_compiling:$ac_tool_warned in
6428yes:)
6429{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
6430$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
6431ac_tool_warned=yes ;;
6432esac
6433 DUMPBIN=$ac_ct_DUMPBIN
6434 fi
6435fi
6436
6437 case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
6438 *COFF*)
6439 DUMPBIN="$DUMPBIN -symbols"
6440 ;;
6441 *)
6442 DUMPBIN=:
6443 ;;
6444 esac
6445 fi
6446
6447 if test "$DUMPBIN" != ":"; then
6448 NM="$DUMPBIN"
6449 fi
6450fi
6451test -z "$NM" && NM=nm
6452
6453
6454
6455
6456
6457
6458{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
6459$as_echo_n "checking the name lister ($NM) interface... " >&6; }
6460if ${lt_cv_nm_interface+:} false; then :
6461 $as_echo_n "(cached) " >&6
6462else
6463 lt_cv_nm_interface="BSD nm"
6464 echo "int some_variable = 0;" > conftest.$ac_ext
6465 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5)
6466 (eval "$ac_compile" 2>conftest.err)
6467 cat conftest.err >&5
6468 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
6469 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
6470 cat conftest.err >&5
6471 (eval echo "\"\$as_me:$LINENO: output\"" >&5)
6472 cat conftest.out >&5
6473 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
6474 lt_cv_nm_interface="MS dumpbin"
6475 fi
6476 rm -f conftest*
6477fi
6478{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
6479$as_echo "$lt_cv_nm_interface" >&6; }
6480
6481# find the maximum length of command line arguments
6482{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
6483$as_echo_n "checking the maximum length of command line arguments... " >&6; }
6484if ${lt_cv_sys_max_cmd_len+:} false; then :
6485 $as_echo_n "(cached) " >&6
6486else
6487 i=0
6488 teststring="ABCD"
6489
6490 case $build_os in
6491 msdosdjgpp*)
6492 # On DJGPP, this test can blow up pretty badly due to problems in libc
6493 # (any single argument exceeding 2000 bytes causes a buffer overrun
6494 # during glob expansion). Even if it were fixed, the result of this
6495 # check would be larger than it should be.
6496 lt_cv_sys_max_cmd_len=12288; # 12K is about right
6497 ;;
6498
6499 gnu*)
6500 # Under GNU Hurd, this test is not required because there is
6501 # no limit to the length of command line arguments.
6502 # Libtool will interpret -1 as no limit whatsoever
6503 lt_cv_sys_max_cmd_len=-1;
6504 ;;
6505
6506 cygwin* | mingw* | cegcc*)
6507 # On Win9x/ME, this test blows up -- it succeeds, but takes
6508 # about 5 minutes as the teststring grows exponentially.
6509 # Worse, since 9x/ME are not pre-emptively multitasking,
6510 # you end up with a "frozen" computer, even though with patience
6511 # the test eventually succeeds (with a max line length of 256k).
6512 # Instead, let's just punt: use the minimum linelength reported by
6513 # all of the supported platforms: 8192 (on NT/2K/XP).
6514 lt_cv_sys_max_cmd_len=8192;
6515 ;;
6516
6517 mint*)
6518 # On MiNT this can take a long time and run out of memory.
6519 lt_cv_sys_max_cmd_len=8192;
6520 ;;
6521
6522 amigaos*)
6523 # On AmigaOS with pdksh, this test takes hours, literally.
6524 # So we just punt and use a minimum line length of 8192.
6525 lt_cv_sys_max_cmd_len=8192;
6526 ;;
6527
6528 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
6529 # This has been around since 386BSD, at least. Likely further.
6530 if test -x /sbin/sysctl; then
6531 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
6532 elif test -x /usr/sbin/sysctl; then
6533 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
6534 else
6535 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
6536 fi
6537 # And add a safety zone
6538 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
6539 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
6540 ;;
6541
6542 interix*)
6543 # We know the value 262144 and hardcode it with a safety zone (like BSD)
6544 lt_cv_sys_max_cmd_len=196608
6545 ;;
6546
6547 os2*)
6548 # The test takes a long time on OS/2.
6549 lt_cv_sys_max_cmd_len=8192
6550 ;;
6551
6552 osf*)
6553 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
6554 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
6555 # nice to cause kernel panics so lets avoid the loop below.
6556 # First set a reasonable default.
6557 lt_cv_sys_max_cmd_len=16384
6558 #
6559 if test -x /sbin/sysconfig; then
6560 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
6561 *1*) lt_cv_sys_max_cmd_len=-1 ;;
6562 esac
6563 fi
6564 ;;
6565 sco3.2v5*)
6566 lt_cv_sys_max_cmd_len=102400
6567 ;;
6568 sysv5* | sco5v6* | sysv4.2uw2*)
6569 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
6570 if test -n "$kargmax"; then
6571 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'`
6572 else
6573 lt_cv_sys_max_cmd_len=32768
6574 fi
6575 ;;
6576 *)
6577 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
6578 if test -n "$lt_cv_sys_max_cmd_len"; then
6579 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
6580 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
6581 else
6582 # Make teststring a little bigger before we do anything with it.
6583 # a 1K string should be a reasonable start.
6584 for i in 1 2 3 4 5 6 7 8 ; do
6585 teststring=$teststring$teststring
6586 done
6587 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
6588 # If test is not a shell built-in, we'll probably end up computing a
6589 # maximum length that is only half of the actual maximum length, but
6590 # we can't tell.
6591 while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
6592 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
6593 test $i != 17 # 1/2 MB should be enough
6594 do
6595 i=`expr $i + 1`
6596 teststring=$teststring$teststring
6597 done
6598 # Only check the string length outside the loop.
6599 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
6600 teststring=
6601 # Add a significant safety factor because C++ compilers can tack on
6602 # massive amounts of additional arguments before passing them to the
6603 # linker. It appears as though 1/2 is a usable value.
6604 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
6605 fi
6606 ;;
6607 esac
6608
6609fi
6610
6611if test -n $lt_cv_sys_max_cmd_len ; then
6612 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
6613$as_echo "$lt_cv_sys_max_cmd_len" >&6; }
6614else
6615 { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
6616$as_echo "none" >&6; }
6617fi
6618max_cmd_len=$lt_cv_sys_max_cmd_len
6619
6620
6621
6622
6623
6624
6625: ${CP="cp -f"}
6626: ${MV="mv -f"}
6627: ${RM="rm -f"}
6628
6629{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5
6630$as_echo_n "checking whether the shell understands some XSI constructs... " >&6; }
6631# Try some XSI features
6632xsi_shell=no
6633( _lt_dummy="a/b/c"
6634 test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
6635 = c,a/b,b/c, \
6636 && eval 'test $(( 1 + 1 )) -eq 2 \
6637 && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
6638 && xsi_shell=yes
6639{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5
6640$as_echo "$xsi_shell" >&6; }
6641
6642
6643{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5
6644$as_echo_n "checking whether the shell understands \"+=\"... " >&6; }
6645lt_shell_append=no
6646( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \
6647 >/dev/null 2>&1 \
6648 && lt_shell_append=yes
6649{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5
6650$as_echo "$lt_shell_append" >&6; }
6651
6652
6653if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
6654 lt_unset=unset
6655else
6656 lt_unset=false
6657fi
6658
6659
6660
6661
6662
6663# test EBCDIC or ASCII
6664case `echo X|tr X '\101'` in
6665 A) # ASCII based system
6666 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
6667 lt_SP2NL='tr \040 \012'
6668 lt_NL2SP='tr \015\012 \040\040'
6669 ;;
6670 *) # EBCDIC based system
6671 lt_SP2NL='tr \100 \n'
6672 lt_NL2SP='tr \r\n \100\100'
6673 ;;
6674esac
6675
6676
6677
6678
6679
6680
6681
6682
6683
6684{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
6685$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
6686if ${lt_cv_to_host_file_cmd+:} false; then :
6687 $as_echo_n "(cached) " >&6
6688else
6689 case $host in
6690 *-*-mingw* )
6691 case $build in
6692 *-*-mingw* ) # actually msys
6693 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
6694 ;;
6695 *-*-cygwin* )
6696 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
6697 ;;
6698 * ) # otherwise, assume *nix
6699 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
6700 ;;
6701 esac
6702 ;;
6703 *-*-cygwin* )
6704 case $build in
6705 *-*-mingw* ) # actually msys
6706 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
6707 ;;
6708 *-*-cygwin* )
6709 lt_cv_to_host_file_cmd=func_convert_file_noop
6710 ;;
6711 * ) # otherwise, assume *nix
6712 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
6713 ;;
6714 esac
6715 ;;
6716 * ) # unhandled hosts (and "normal" native builds)
6717 lt_cv_to_host_file_cmd=func_convert_file_noop
6718 ;;
6719esac
6720
6721fi
6722
6723to_host_file_cmd=$lt_cv_to_host_file_cmd
6724{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5
6725$as_echo "$lt_cv_to_host_file_cmd" >&6; }
6726
6727
6728
6729
6730
6731{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
6732$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
6733if ${lt_cv_to_tool_file_cmd+:} false; then :
6734 $as_echo_n "(cached) " >&6
6735else
6736 #assume ordinary cross tools, or native build.
6737lt_cv_to_tool_file_cmd=func_convert_file_noop
6738case $host in
6739 *-*-mingw* )
6740 case $build in
6741 *-*-mingw* ) # actually msys
6742 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
6743 ;;
6744 esac
6745 ;;
6746esac
6747
6748fi
6749
6750to_tool_file_cmd=$lt_cv_to_tool_file_cmd
6751{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5
6752$as_echo "$lt_cv_to_tool_file_cmd" >&6; }
6753
6754
6755
6756
6757
6758{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
6759$as_echo_n "checking for $LD option to reload object files... " >&6; }
6760if ${lt_cv_ld_reload_flag+:} false; then :
6761 $as_echo_n "(cached) " >&6
6762else
6763 lt_cv_ld_reload_flag='-r'
6764fi
6765{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
6766$as_echo "$lt_cv_ld_reload_flag" >&6; }
6767reload_flag=$lt_cv_ld_reload_flag
6768case $reload_flag in
6769"" | " "*) ;;
6770*) reload_flag=" $reload_flag" ;;
6771esac
6772reload_cmds='$LD$reload_flag -o $output$reload_objs'
6773case $host_os in
6774 cygwin* | mingw* | pw32* | cegcc*)
6775 if test "$GCC" != yes; then
6776 reload_cmds=false
6777 fi
6778 ;;
6779 darwin*)
6780 if test "$GCC" = yes; then
6781 reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
6782 else
6783 reload_cmds='$LD$reload_flag -o $output$reload_objs'
6784 fi
6785 ;;
6786esac
6787
6788
6789
6790
6791
6792
6793
6794
6795
6796if test -n "$ac_tool_prefix"; then
6797 # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
6798set dummy ${ac_tool_prefix}objdump; ac_word=$2
6799{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6800$as_echo_n "checking for $ac_word... " >&6; }
6801if ${ac_cv_prog_OBJDUMP+:} false; then :
6802 $as_echo_n "(cached) " >&6
6803else
6804 if test -n "$OBJDUMP"; then
6805 ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
6806else
6807as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6808for as_dir in $PATH
6809do
6810 IFS=$as_save_IFS
6811 test -z "$as_dir" && as_dir=.
6812 for ac_exec_ext in '' $ac_executable_extensions; do
6813 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6814 ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
6815 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6816 break 2
6817 fi
6818done
6819 done
6820IFS=$as_save_IFS
6821
6822fi
6823fi
6824OBJDUMP=$ac_cv_prog_OBJDUMP
6825if test -n "$OBJDUMP"; then
6826 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
6827$as_echo "$OBJDUMP" >&6; }
6828else
6829 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6830$as_echo "no" >&6; }
6831fi
6832
6833
6834fi
6835if test -z "$ac_cv_prog_OBJDUMP"; then
6836 ac_ct_OBJDUMP=$OBJDUMP
6837 # Extract the first word of "objdump", so it can be a program name with args.
6838set dummy objdump; ac_word=$2
6839{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6840$as_echo_n "checking for $ac_word... " >&6; }
6841if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
6842 $as_echo_n "(cached) " >&6
6843else
6844 if test -n "$ac_ct_OBJDUMP"; then
6845 ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
6846else
6847as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6848for as_dir in $PATH
6849do
6850 IFS=$as_save_IFS
6851 test -z "$as_dir" && as_dir=.
6852 for ac_exec_ext in '' $ac_executable_extensions; do
6853 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6854 ac_cv_prog_ac_ct_OBJDUMP="objdump"
6855 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6856 break 2
6857 fi
6858done
6859 done
6860IFS=$as_save_IFS
6861
6862fi
6863fi
6864ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
6865if test -n "$ac_ct_OBJDUMP"; then
6866 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
6867$as_echo "$ac_ct_OBJDUMP" >&6; }
6868else
6869 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6870$as_echo "no" >&6; }
6871fi
6872
6873 if test "x$ac_ct_OBJDUMP" = x; then
6874 OBJDUMP="false"
6875 else
6876 case $cross_compiling:$ac_tool_warned in
6877yes:)
6878{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
6879$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
6880ac_tool_warned=yes ;;
6881esac
6882 OBJDUMP=$ac_ct_OBJDUMP
6883 fi
6884else
6885 OBJDUMP="$ac_cv_prog_OBJDUMP"
6886fi
6887
6888test -z "$OBJDUMP" && OBJDUMP=objdump
6889
6890
6891
6892
6893
6894
6895{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
6896$as_echo_n "checking how to recognize dependent libraries... " >&6; }
6897if ${lt_cv_deplibs_check_method+:} false; then :
6898 $as_echo_n "(cached) " >&6
6899else
6900 lt_cv_file_magic_cmd='$MAGIC_CMD'
6901lt_cv_file_magic_test_file=
6902lt_cv_deplibs_check_method='unknown'
6903# Need to set the preceding variable on all platforms that support
6904# interlibrary dependencies.
6905# 'none' -- dependencies not supported.
6906# `unknown' -- same as none, but documents that we really don't know.
6907# 'pass_all' -- all dependencies passed with no checks.
6908# 'test_compile' -- check by making test program.
6909# 'file_magic [[regex]]' -- check by looking for files in library path
6910# which responds to the $file_magic_cmd with a given extended regex.
6911# If you have `file' or equivalent on your system and you're not sure
6912# whether `pass_all' will *always* work, you probably want this one.
6913
6914case $host_os in
6915aix[4-9]*)
6916 lt_cv_deplibs_check_method=pass_all
6917 ;;
6918
6919beos*)
6920 lt_cv_deplibs_check_method=pass_all
6921 ;;
6922
6923bsdi[45]*)
6924 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
6925 lt_cv_file_magic_cmd='/usr/bin/file -L'
6926 lt_cv_file_magic_test_file=/shlib/libc.so
6927 ;;
6928
6929cygwin*)
6930 # func_win32_libid is a shell function defined in ltmain.sh
6931 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
6932 lt_cv_file_magic_cmd='func_win32_libid'
6933 ;;
6934
6935mingw* | pw32*)
6936 # Base MSYS/MinGW do not provide the 'file' command needed by
6937 # func_win32_libid shell function, so use a weaker test based on 'objdump',
6938 # unless we find 'file', for example because we are cross-compiling.
6939 # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
6940 if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
6941 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
6942 lt_cv_file_magic_cmd='func_win32_libid'
6943 else
6944 # Keep this pattern in sync with the one in func_win32_libid.
6945 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
6946 lt_cv_file_magic_cmd='$OBJDUMP -f'
6947 fi
6948 ;;
6949
6950cegcc*)
6951 # use the weaker test based on 'objdump'. See mingw*.
6952 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
6953 lt_cv_file_magic_cmd='$OBJDUMP -f'
6954 ;;
6955
6956darwin* | rhapsody*)
6957 lt_cv_deplibs_check_method=pass_all
6958 ;;
6959
6960freebsd* | dragonfly*)
6961 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
6962 case $host_cpu in
6963 i*86 )
6964 # Not sure whether the presence of OpenBSD here was a mistake.
6965 # Let's accept both of them until this is cleared up.
6966 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'
6967 lt_cv_file_magic_cmd=/usr/bin/file
6968 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
6969 ;;
6970 esac
6971 else
6972 lt_cv_deplibs_check_method=pass_all
6973 fi
6974 ;;
6975
6976gnu*)
6977 lt_cv_deplibs_check_method=pass_all
6978 ;;
6979
6980haiku*)
6981 lt_cv_deplibs_check_method=pass_all
6982 ;;
6983
6984hpux10.20* | hpux11*)
6985 lt_cv_file_magic_cmd=/usr/bin/file
6986 case $host_cpu in
6987 ia64*)
6988 lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
6989 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
6990 ;;
6991 hppa*64*)
6992 lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]'
6993 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
6994 ;;
6995 *)
6996 lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library'
6997 lt_cv_file_magic_test_file=/usr/lib/libc.sl
6998 ;;
6999 esac
7000 ;;
7001
7002interix[3-9]*)
7003 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
7004 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'
7005 ;;
7006
7007irix5* | irix6* | nonstopux*)
7008 case $LD in
7009 *-32|*"-32 ") libmagic=32-bit;;
7010 *-n32|*"-n32 ") libmagic=N32;;
7011 *-64|*"-64 ") libmagic=64-bit;;
7012 *) libmagic=never-match;;
7013 esac
7014 lt_cv_deplibs_check_method=pass_all
7015 ;;
7016
7017# This must be glibc/ELF.
7018linux* | k*bsd*-gnu | kopensolaris*-gnu)
7019 lt_cv_deplibs_check_method=pass_all
7020 ;;
7021
7022netbsd*)
7023 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
7024 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
7025 else
7026 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'
7027 fi
7028 ;;
7029
7030newos6*)
7031 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
7032 lt_cv_file_magic_cmd=/usr/bin/file
7033 lt_cv_file_magic_test_file=/usr/lib/libnls.so
7034 ;;
7035
7036*nto* | *qnx*)
7037 lt_cv_deplibs_check_method=pass_all
7038 ;;
7039
7040openbsd*)
7041 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
7042 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
7043 else
7044 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
7045 fi
7046 ;;
7047
7048osf3* | osf4* | osf5*)
7049 lt_cv_deplibs_check_method=pass_all
7050 ;;
7051
7052rdos*)
7053 lt_cv_deplibs_check_method=pass_all
7054 ;;
7055
7056solaris*)
7057 lt_cv_deplibs_check_method=pass_all
7058 ;;
7059
7060sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
7061 lt_cv_deplibs_check_method=pass_all
7062 ;;
7063
7064sysv4 | sysv4.3*)
7065 case $host_vendor in
7066 motorola)
7067 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
7068 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
7069 ;;
7070 ncr)
7071 lt_cv_deplibs_check_method=pass_all
7072 ;;
7073 sequent)
7074 lt_cv_file_magic_cmd='/bin/file'
7075 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
7076 ;;
7077 sni)
7078 lt_cv_file_magic_cmd='/bin/file'
7079 lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"
7080 lt_cv_file_magic_test_file=/lib/libc.so
7081 ;;
7082 siemens)
7083 lt_cv_deplibs_check_method=pass_all
7084 ;;
7085 pc)
7086 lt_cv_deplibs_check_method=pass_all
7087 ;;
7088 esac
7089 ;;
7090
7091tpf*)
7092 lt_cv_deplibs_check_method=pass_all
7093 ;;
7094esac
7095
7096fi
7097{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
7098$as_echo "$lt_cv_deplibs_check_method" >&6; }
7099
7100file_magic_glob=
7101want_nocaseglob=no
7102if test "$build" = "$host"; then
7103 case $host_os in
7104 mingw* | pw32*)
7105 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
7106 want_nocaseglob=yes
7107 else
7108 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"`
7109 fi
7110 ;;
7111 esac
7112fi
7113
7114file_magic_cmd=$lt_cv_file_magic_cmd
7115deplibs_check_method=$lt_cv_deplibs_check_method
7116test -z "$deplibs_check_method" && deplibs_check_method=unknown
7117
7118
7119
7120
7121
7122
7123
7124
7125
7126
7127
7128
7129
7130
7131
7132
7133
7134
7135
7136
7137
7138
7139if test -n "$ac_tool_prefix"; then
7140 # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
7141set dummy ${ac_tool_prefix}dlltool; ac_word=$2
7142{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7143$as_echo_n "checking for $ac_word... " >&6; }
7144if ${ac_cv_prog_DLLTOOL+:} false; then :
7145 $as_echo_n "(cached) " >&6
7146else
7147 if test -n "$DLLTOOL"; then
7148 ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
7149else
7150as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7151for as_dir in $PATH
7152do
7153 IFS=$as_save_IFS
7154 test -z "$as_dir" && as_dir=.
7155 for ac_exec_ext in '' $ac_executable_extensions; do
7156 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7157 ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
7158 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7159 break 2
7160 fi
7161done
7162 done
7163IFS=$as_save_IFS
7164
7165fi
7166fi
7167DLLTOOL=$ac_cv_prog_DLLTOOL
7168if test -n "$DLLTOOL"; then
7169 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
7170$as_echo "$DLLTOOL" >&6; }
7171else
7172 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7173$as_echo "no" >&6; }
7174fi
7175
7176
7177fi
7178if test -z "$ac_cv_prog_DLLTOOL"; then
7179 ac_ct_DLLTOOL=$DLLTOOL
7180 # Extract the first word of "dlltool", so it can be a program name with args.
7181set dummy dlltool; ac_word=$2
7182{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7183$as_echo_n "checking for $ac_word... " >&6; }
7184if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
7185 $as_echo_n "(cached) " >&6
7186else
7187 if test -n "$ac_ct_DLLTOOL"; then
7188 ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
7189else
7190as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7191for as_dir in $PATH
7192do
7193 IFS=$as_save_IFS
7194 test -z "$as_dir" && as_dir=.
7195 for ac_exec_ext in '' $ac_executable_extensions; do
7196 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7197 ac_cv_prog_ac_ct_DLLTOOL="dlltool"
7198 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7199 break 2
7200 fi
7201done
7202 done
7203IFS=$as_save_IFS
7204
7205fi
7206fi
7207ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
7208if test -n "$ac_ct_DLLTOOL"; then
7209 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
7210$as_echo "$ac_ct_DLLTOOL" >&6; }
7211else
7212 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7213$as_echo "no" >&6; }
7214fi
7215
7216 if test "x$ac_ct_DLLTOOL" = x; then
7217 DLLTOOL="false"
7218 else
7219 case $cross_compiling:$ac_tool_warned in
7220yes:)
7221{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
7222$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
7223ac_tool_warned=yes ;;
7224esac
7225 DLLTOOL=$ac_ct_DLLTOOL
7226 fi
7227else
7228 DLLTOOL="$ac_cv_prog_DLLTOOL"
7229fi
7230
7231test -z "$DLLTOOL" && DLLTOOL=dlltool
7232
7233
7234
7235
7236
7237
7238
7239{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
7240$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
7241if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
7242 $as_echo_n "(cached) " >&6
7243else
7244 lt_cv_sharedlib_from_linklib_cmd='unknown'
7245
7246case $host_os in
7247cygwin* | mingw* | pw32* | cegcc*)
7248 # two different shell functions defined in ltmain.sh
7249 # decide which to use based on capabilities of $DLLTOOL
7250 case `$DLLTOOL --help 2>&1` in
7251 *--identify-strict*)
7252 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
7253 ;;
7254 *)
7255 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
7256 ;;
7257 esac
7258 ;;
7259*)
7260 # fallback: assume linklib IS sharedlib
7261 lt_cv_sharedlib_from_linklib_cmd="$ECHO"
7262 ;;
7263esac
7264
7265fi
7266{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5
7267$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; }
7268sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
7269test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
7270
7271
7272
7273
7274
7275
7276
7277if test -n "$ac_tool_prefix"; then
7278 for ac_prog in ar
7279 do
7280 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
7281set dummy $ac_tool_prefix$ac_prog; ac_word=$2
7282{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7283$as_echo_n "checking for $ac_word... " >&6; }
7284if ${ac_cv_prog_AR+:} false; then :
7285 $as_echo_n "(cached) " >&6
7286else
7287 if test -n "$AR"; then
7288 ac_cv_prog_AR="$AR" # Let the user override the test.
7289else
7290as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7291for as_dir in $PATH
7292do
7293 IFS=$as_save_IFS
7294 test -z "$as_dir" && as_dir=.
7295 for ac_exec_ext in '' $ac_executable_extensions; do
7296 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7297 ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
7298 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7299 break 2
7300 fi
7301done
7302 done
7303IFS=$as_save_IFS
7304
7305fi
7306fi
7307AR=$ac_cv_prog_AR
7308if test -n "$AR"; then
7309 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
7310$as_echo "$AR" >&6; }
7311else
7312 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7313$as_echo "no" >&6; }
7314fi
7315
7316
7317 test -n "$AR" && break
7318 done
7319fi
7320if test -z "$AR"; then
7321 ac_ct_AR=$AR
7322 for ac_prog in ar
7323do
7324 # Extract the first word of "$ac_prog", so it can be a program name with args.
7325set dummy $ac_prog; ac_word=$2
7326{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7327$as_echo_n "checking for $ac_word... " >&6; }
7328if ${ac_cv_prog_ac_ct_AR+:} false; then :
7329 $as_echo_n "(cached) " >&6
7330else
7331 if test -n "$ac_ct_AR"; then
7332 ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
7333else
7334as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7335for as_dir in $PATH
7336do
7337 IFS=$as_save_IFS
7338 test -z "$as_dir" && as_dir=.
7339 for ac_exec_ext in '' $ac_executable_extensions; do
7340 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7341 ac_cv_prog_ac_ct_AR="$ac_prog"
7342 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7343 break 2
7344 fi
7345done
7346 done
7347IFS=$as_save_IFS
7348
7349fi
7350fi
7351ac_ct_AR=$ac_cv_prog_ac_ct_AR
7352if test -n "$ac_ct_AR"; then
7353 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
7354$as_echo "$ac_ct_AR" >&6; }
7355else
7356 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7357$as_echo "no" >&6; }
7358fi
7359
7360
7361 test -n "$ac_ct_AR" && break
7362done
7363
7364 if test "x$ac_ct_AR" = x; then
7365 AR="false"
7366 else
7367 case $cross_compiling:$ac_tool_warned in
7368yes:)
7369{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
7370$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
7371ac_tool_warned=yes ;;
7372esac
7373 AR=$ac_ct_AR
7374 fi
7375fi
7376
7377: ${AR=ar}
7378: ${AR_FLAGS=cru}
7379
7380
7381
7382
7383
7384
7385
7386
7387
7388
7389
7390{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
7391$as_echo_n "checking for archiver @FILE support... " >&6; }
7392if ${lt_cv_ar_at_file+:} false; then :
7393 $as_echo_n "(cached) " >&6
7394else
7395 lt_cv_ar_at_file=no
7396 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7397/* end confdefs.h. */
7398
7399int
7400main ()
7401{
7402
7403 ;
7404 return 0;
7405}
7406_ACEOF
7407if ac_fn_c_try_compile "$LINENO"; then :
7408 echo conftest.$ac_objext > conftest.lst
7409 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5'
7410 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
7411 (eval $lt_ar_try) 2>&5
7412 ac_status=$?
7413 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
7414 test $ac_status = 0; }
7415 if test "$ac_status" -eq 0; then
7416 # Ensure the archiver fails upon bogus file names.
7417 rm -f conftest.$ac_objext libconftest.a
7418 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
7419 (eval $lt_ar_try) 2>&5
7420 ac_status=$?
7421 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
7422 test $ac_status = 0; }
7423 if test "$ac_status" -ne 0; then
7424 lt_cv_ar_at_file=@
7425 fi
7426 fi
7427 rm -f conftest.* libconftest.a
7428
7429fi
7430rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7431
7432fi
7433{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
7434$as_echo "$lt_cv_ar_at_file" >&6; }
7435
7436if test "x$lt_cv_ar_at_file" = xno; then
7437 archiver_list_spec=
7438else
7439 archiver_list_spec=$lt_cv_ar_at_file
7440fi
7441
7442
7443
7444
7445
7446
7447
7448if test -n "$ac_tool_prefix"; then
7449 # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
7450set dummy ${ac_tool_prefix}strip; ac_word=$2
7451{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7452$as_echo_n "checking for $ac_word... " >&6; }
7453if ${ac_cv_prog_STRIP+:} false; then :
7454 $as_echo_n "(cached) " >&6
7455else
7456 if test -n "$STRIP"; then
7457 ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
7458else
7459as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7460for as_dir in $PATH
7461do
7462 IFS=$as_save_IFS
7463 test -z "$as_dir" && as_dir=.
7464 for ac_exec_ext in '' $ac_executable_extensions; do
7465 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7466 ac_cv_prog_STRIP="${ac_tool_prefix}strip"
7467 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7468 break 2
7469 fi
7470done
7471 done
7472IFS=$as_save_IFS
7473
7474fi
7475fi
7476STRIP=$ac_cv_prog_STRIP
7477if test -n "$STRIP"; then
7478 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
7479$as_echo "$STRIP" >&6; }
7480else
7481 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7482$as_echo "no" >&6; }
7483fi
7484
7485
7486fi
7487if test -z "$ac_cv_prog_STRIP"; then
7488 ac_ct_STRIP=$STRIP
7489 # Extract the first word of "strip", so it can be a program name with args.
7490set dummy strip; ac_word=$2
7491{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7492$as_echo_n "checking for $ac_word... " >&6; }
7493if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
7494 $as_echo_n "(cached) " >&6
7495else
7496 if test -n "$ac_ct_STRIP"; then
7497 ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
7498else
7499as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7500for as_dir in $PATH
7501do
7502 IFS=$as_save_IFS
7503 test -z "$as_dir" && as_dir=.
7504 for ac_exec_ext in '' $ac_executable_extensions; do
7505 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7506 ac_cv_prog_ac_ct_STRIP="strip"
7507 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7508 break 2
7509 fi
7510done
7511 done
7512IFS=$as_save_IFS
7513
7514fi
7515fi
7516ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
7517if test -n "$ac_ct_STRIP"; then
7518 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
7519$as_echo "$ac_ct_STRIP" >&6; }
7520else
7521 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7522$as_echo "no" >&6; }
7523fi
7524
7525 if test "x$ac_ct_STRIP" = x; then
7526 STRIP=":"
7527 else
7528 case $cross_compiling:$ac_tool_warned in
7529yes:)
7530{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
7531$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
7532ac_tool_warned=yes ;;
7533esac
7534 STRIP=$ac_ct_STRIP
7535 fi
7536else
7537 STRIP="$ac_cv_prog_STRIP"
7538fi
7539
7540test -z "$STRIP" && STRIP=:
7541
7542
7543
7544
7545
7546
7547if test -n "$ac_tool_prefix"; then
7548 # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
7549set dummy ${ac_tool_prefix}ranlib; ac_word=$2
7550{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7551$as_echo_n "checking for $ac_word... " >&6; }
7552if ${ac_cv_prog_RANLIB+:} false; then :
7553 $as_echo_n "(cached) " >&6
7554else
7555 if test -n "$RANLIB"; then
7556 ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
7557else
7558as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7559for as_dir in $PATH
7560do
7561 IFS=$as_save_IFS
7562 test -z "$as_dir" && as_dir=.
7563 for ac_exec_ext in '' $ac_executable_extensions; do
7564 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7565 ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
7566 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7567 break 2
7568 fi
7569done
7570 done
7571IFS=$as_save_IFS
7572
7573fi
7574fi
7575RANLIB=$ac_cv_prog_RANLIB
7576if test -n "$RANLIB"; then
7577 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
7578$as_echo "$RANLIB" >&6; }
7579else
7580 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7581$as_echo "no" >&6; }
7582fi
7583
7584
7585fi
7586if test -z "$ac_cv_prog_RANLIB"; then
7587 ac_ct_RANLIB=$RANLIB
7588 # Extract the first word of "ranlib", so it can be a program name with args.
7589set dummy ranlib; ac_word=$2
7590{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7591$as_echo_n "checking for $ac_word... " >&6; }
7592if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
7593 $as_echo_n "(cached) " >&6
7594else
7595 if test -n "$ac_ct_RANLIB"; then
7596 ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
7597else
7598as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7599for as_dir in $PATH
7600do
7601 IFS=$as_save_IFS
7602 test -z "$as_dir" && as_dir=.
7603 for ac_exec_ext in '' $ac_executable_extensions; do
7604 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7605 ac_cv_prog_ac_ct_RANLIB="ranlib"
7606 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7607 break 2
7608 fi
7609done
7610 done
7611IFS=$as_save_IFS
7612
7613fi
7614fi
7615ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
7616if test -n "$ac_ct_RANLIB"; then
7617 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
7618$as_echo "$ac_ct_RANLIB" >&6; }
7619else
7620 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7621$as_echo "no" >&6; }
7622fi
7623
7624 if test "x$ac_ct_RANLIB" = x; then
7625 RANLIB=":"
7626 else
7627 case $cross_compiling:$ac_tool_warned in
7628yes:)
7629{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
7630$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
7631ac_tool_warned=yes ;;
7632esac
7633 RANLIB=$ac_ct_RANLIB
7634 fi
7635else
7636 RANLIB="$ac_cv_prog_RANLIB"
7637fi
7638
7639test -z "$RANLIB" && RANLIB=:
7640
7641
7642
7643
7644
7645
7646# Determine commands to create old-style static archives.
7647old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
7648old_postinstall_cmds='chmod 644 $oldlib'
7649old_postuninstall_cmds=
7650
7651if test -n "$RANLIB"; then
7652 case $host_os in
7653 openbsd*)
7654 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
7655 ;;
7656 *)
7657 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
7658 ;;
7659 esac
7660 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
7661fi
7662
7663case $host_os in
7664 darwin*)
7665 lock_old_archive_extraction=yes ;;
7666 *)
7667 lock_old_archive_extraction=no ;;
7668esac
7669
7670
7671
7672
7673
7674
7675
7676
7677
7678
7679
7680
7681
7682
7683
7684
7685
7686
7687
7688
7689
7690
7691
7692
7693
7694
7695
7696
7697
7698
7699
7700
7701
7702
7703
7704
7705
7706
7707
7708# If no C compiler was specified, use CC.
7709LTCC=${LTCC-"$CC"}
7710
7711# If no C compiler flags were specified, use CFLAGS.
7712LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
7713
7714# Allow CC to be a program name with arguments.
7715compiler=$CC
7716
7717
7718# Check for command to grab the raw symbol name followed by C symbol from nm.
7719{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
7720$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
7721if ${lt_cv_sys_global_symbol_pipe+:} false; then :
7722 $as_echo_n "(cached) " >&6
7723else
7724
7725# These are sane defaults that work on at least a few old systems.
7726# [They come from Ultrix. What could be older than Ultrix?!! ;)]
7727
7728# Character class describing NM global symbol codes.
7729symcode='[BCDEGRST]'
7730
7731# Regexp to match symbols that can be accessed directly from C.
7732sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
7733
7734# Define system-specific variables.
7735case $host_os in
7736aix*)
7737 symcode='[BCDT]'
7738 ;;
7739cygwin* | mingw* | pw32* | cegcc*)
7740 symcode='[ABCDGISTW]'
7741 ;;
7742hpux*)
7743 if test "$host_cpu" = ia64; then
7744 symcode='[ABCDEGRST]'
7745 fi
7746 ;;
7747irix* | nonstopux*)
7748 symcode='[BCDEGRST]'
7749 ;;
7750osf*)
7751 symcode='[BCDEGQRST]'
7752 ;;
7753solaris*)
7754 symcode='[BDRT]'
7755 ;;
7756sco3.2v5*)
7757 symcode='[DT]'
7758 ;;
7759sysv4.2uw2*)
7760 symcode='[DT]'
7761 ;;
7762sysv5* | sco5v6* | unixware* | OpenUNIX*)
7763 symcode='[ABDT]'
7764 ;;
7765sysv4)
7766 symcode='[DFNSTU]'
7767 ;;
7768esac
7769
7770# If we're using GNU nm, then use its standard symbol codes.
7771case `$NM -V 2>&1` in
7772*GNU* | *'with BFD'*)
7773 symcode='[ABCDGIRSTW]' ;;
7774esac
7775
7776# Transform an extracted symbol line into a proper C declaration.
7777# Some systems (esp. on ia64) link data and code symbols differently,
7778# so use this general approach.
7779lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
7780
7781# Transform an extracted symbol line into symbol name and symbol address
7782lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'"
7783lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
7784
7785# Handle CRLF in mingw tool chain
7786opt_cr=
7787case $build_os in
7788mingw*)
7789 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
7790 ;;
7791esac
7792
7793# Try without a prefix underscore, then with it.
7794for ac_symprfx in "" "_"; do
7795
7796 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
7797 symxfrm="\\1 $ac_symprfx\\2 \\2"
7798
7799 # Write the raw and C identifiers.
7800 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
7801 # Fake it for dumpbin and say T for any non-static function
7802 # and D for any global variable.
7803 # Also find C++ and __fastcall symbols from MSVC++,
7804 # which start with @ or ?.
7805 lt_cv_sys_global_symbol_pipe="$AWK '"\
7806" {last_section=section; section=\$ 3};"\
7807" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
7808" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
7809" \$ 0!~/External *\|/{next};"\
7810" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
7811" {if(hide[section]) next};"\
7812" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
7813" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
7814" s[1]~/^[@?]/{print s[1], s[1]; next};"\
7815" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
7816" ' prfx=^$ac_symprfx"
7817 else
7818 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
7819 fi
7820 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
7821
7822 # Check to see that the pipe works correctly.
7823 pipe_works=no
7824
7825 rm -f conftest*
7826 cat > conftest.$ac_ext <<_LT_EOF
7827#ifdef __cplusplus
7828extern "C" {
7829#endif
7830char nm_test_var;
7831void nm_test_func(void);
7832void nm_test_func(void){}
7833#ifdef __cplusplus
7834}
7835#endif
7836int main(){nm_test_var='a';nm_test_func();return(0);}
7837_LT_EOF
7838
7839 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
7840 (eval $ac_compile) 2>&5
7841 ac_status=$?
7842 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
7843 test $ac_status = 0; }; then
7844 # Now try to grab the symbols.
7845 nlist=conftest.nm
7846 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5
7847 (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5
7848 ac_status=$?
7849 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
7850 test $ac_status = 0; } && test -s "$nlist"; then
7851 # Try sorting and uniquifying the output.
7852 if sort "$nlist" | uniq > "$nlist"T; then
7853 mv -f "$nlist"T "$nlist"
7854 else
7855 rm -f "$nlist"T
7856 fi
7857
7858 # Make sure that we snagged all the symbols we need.
7859 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
7860 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
7861 cat <<_LT_EOF > conftest.$ac_ext
7862/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
7863#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
7864/* DATA imports from DLLs on WIN32 con't be const, because runtime
7865 relocations are performed -- see ld's documentation on pseudo-relocs. */
7866# define LT_DLSYM_CONST
7867#elif defined(__osf__)
7868/* This system does not cope well with relocations in const data. */
7869# define LT_DLSYM_CONST
7870#else
7871# define LT_DLSYM_CONST const
7872#endif
7873
7874#ifdef __cplusplus
7875extern "C" {
7876#endif
7877
7878_LT_EOF
7879 # Now generate the symbol file.
7880 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
7881
7882 cat <<_LT_EOF >> conftest.$ac_ext
7883
7884/* The mapping between symbol names and symbols. */
7885LT_DLSYM_CONST struct {
7886 const char *name;
7887 void *address;
7888}
7889lt__PROGRAM__LTX_preloaded_symbols[] =
7890{
7891 { "@PROGRAM@", (void *) 0 },
7892_LT_EOF
7893 $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
7894 cat <<\_LT_EOF >> conftest.$ac_ext
7895 {0, (void *) 0}
7896};
7897
7898/* This works around a problem in FreeBSD linker */
7899#ifdef FREEBSD_WORKAROUND
7900static const void *lt_preloaded_setup() {
7901 return lt__PROGRAM__LTX_preloaded_symbols;
7902}
7903#endif
7904
7905#ifdef __cplusplus
7906}
7907#endif
7908_LT_EOF
7909 # Now try linking the two files.
7910 mv conftest.$ac_objext conftstm.$ac_objext
7911 lt_globsym_save_LIBS=$LIBS
7912 lt_globsym_save_CFLAGS=$CFLAGS
7913 LIBS="conftstm.$ac_objext"
7914 CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
7915 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
7916 (eval $ac_link) 2>&5
7917 ac_status=$?
7918 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
7919 test $ac_status = 0; } && test -s conftest${ac_exeext}; then
7920 pipe_works=yes
7921 fi
7922 LIBS=$lt_globsym_save_LIBS
7923 CFLAGS=$lt_globsym_save_CFLAGS
7924 else
7925 echo "cannot find nm_test_func in $nlist" >&5
7926 fi
7927 else
7928 echo "cannot find nm_test_var in $nlist" >&5
7929 fi
7930 else
7931 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5
7932 fi
7933 else
7934 echo "$progname: failed program was:" >&5
7935 cat conftest.$ac_ext >&5
7936 fi
7937 rm -rf conftest* conftst*
7938
7939 # Do not use the global_symbol_pipe unless it works.
7940 if test "$pipe_works" = yes; then
7941 break
7942 else
7943 lt_cv_sys_global_symbol_pipe=
7944 fi
7945done
7946
7947fi
7948
7949if test -z "$lt_cv_sys_global_symbol_pipe"; then
7950 lt_cv_sys_global_symbol_to_cdecl=
7951fi
7952if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
7953 { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
7954$as_echo "failed" >&6; }
7955else
7956 { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
7957$as_echo "ok" >&6; }
7958fi
7959
7960# Response file support.
7961if test "$lt_cv_nm_interface" = "MS dumpbin"; then
7962 nm_file_list_spec='@'
7963elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then
7964 nm_file_list_spec='@'
7965fi
7966
7967
7968
7969
7970
7971
7972
7973
7974
7975
7976
7977
7978
7979
7980
7981
7982
7983
7984
7985
7986
7987
7988
7989
7990
7991
7992
7993{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
7994$as_echo_n "checking for sysroot... " >&6; }
7995
7996# Check whether --with-sysroot was given.
7997if test "${with_sysroot+set}" = set; then :
7998 withval=$with_sysroot;
7999else
8000 with_sysroot=no
8001fi
8002
8003
8004lt_sysroot=
8005case ${with_sysroot} in #(
8006 yes)
8007 if test "$GCC" = yes; then
8008 lt_sysroot=`$CC --print-sysroot 2>/dev/null`
8009 fi
8010 ;; #(
8011 /*)
8012 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
8013 ;; #(
8014 no|'')
8015 ;; #(
8016 *)
8017 { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
8018$as_echo "${with_sysroot}" >&6; }
8019 as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
8020 ;;
8021esac
8022
8023 { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
8024$as_echo "${lt_sysroot:-no}" >&6; }
8025
8026
8027
8028
8029
8030# Check whether --enable-libtool-lock was given.
8031if test "${enable_libtool_lock+set}" = set; then :
8032 enableval=$enable_libtool_lock;
8033fi
8034
8035test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
8036
8037# Some flags need to be propagated to the compiler or linker for good
8038# libtool support.
8039case $host in
8040ia64-*-hpux*)
8041 # Find out which ABI we are using.
8042 echo 'int i;' > conftest.$ac_ext
8043 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
8044 (eval $ac_compile) 2>&5
8045 ac_status=$?
8046 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
8047 test $ac_status = 0; }; then
8048 case `/usr/bin/file conftest.$ac_objext` in
8049 *ELF-32*)
8050 HPUX_IA64_MODE="32"
8051 ;;
8052 *ELF-64*)
8053 HPUX_IA64_MODE="64"
8054 ;;
8055 esac
8056 fi
8057 rm -rf conftest*
8058 ;;
8059*-*-irix6*)
8060 # Find out which ABI we are using.
8061 echo '#line '$LINENO' "configure"' > conftest.$ac_ext
8062 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
8063 (eval $ac_compile) 2>&5
8064 ac_status=$?
8065 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
8066 test $ac_status = 0; }; then
8067 if test "$lt_cv_prog_gnu_ld" = yes; then
8068 case `/usr/bin/file conftest.$ac_objext` in
8069 *32-bit*)
8070 LD="${LD-ld} -melf32bsmip"
8071 ;;
8072 *N32*)
8073 LD="${LD-ld} -melf32bmipn32"
8074 ;;
8075 *64-bit*)
8076 LD="${LD-ld} -melf64bmip"
8077 ;;
8078 esac
8079 else
8080 case `/usr/bin/file conftest.$ac_objext` in
8081 *32-bit*)
8082 LD="${LD-ld} -32"
8083 ;;
8084 *N32*)
8085 LD="${LD-ld} -n32"
8086 ;;
8087 *64-bit*)
8088 LD="${LD-ld} -64"
8089 ;;
8090 esac
8091 fi
8092 fi
8093 rm -rf conftest*
8094 ;;
8095
8096x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
8097s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
8098 # Find out which ABI we are using.
8099 echo 'int i;' > conftest.$ac_ext
8100 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
8101 (eval $ac_compile) 2>&5
8102 ac_status=$?
8103 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
8104 test $ac_status = 0; }; then
8105 case `/usr/bin/file conftest.o` in
8106 *32-bit*)
8107 case $host in
8108 x86_64-*kfreebsd*-gnu)
8109 LD="${LD-ld} -m elf_i386_fbsd"
8110 ;;
8111 x86_64-*linux*)
8112 LD="${LD-ld} -m elf_i386"
8113 ;;
8114 ppc64-*linux*|powerpc64-*linux*)
8115 LD="${LD-ld} -m elf32ppclinux"
8116 ;;
8117 s390x-*linux*)
8118 LD="${LD-ld} -m elf_s390"
8119 ;;
8120 sparc64-*linux*)
8121 LD="${LD-ld} -m elf32_sparc"
8122 ;;
8123 esac
8124 ;;
8125 *64-bit*)
8126 case $host in
8127 x86_64-*kfreebsd*-gnu)
8128 LD="${LD-ld} -m elf_x86_64_fbsd"
8129 ;;
8130 x86_64-*linux*)
8131 LD="${LD-ld} -m elf_x86_64"
8132 ;;
8133 ppc*-*linux*|powerpc*-*linux*)
8134 LD="${LD-ld} -m elf64ppc"
8135 ;;
8136 s390*-*linux*|s390*-*tpf*)
8137 LD="${LD-ld} -m elf64_s390"
8138 ;;
8139 sparc*-*linux*)
8140 LD="${LD-ld} -m elf64_sparc"
8141 ;;
8142 esac
8143 ;;
8144 esac
8145 fi
8146 rm -rf conftest*
8147 ;;
8148
8149*-*-sco3.2v5*)
8150 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
8151 SAVE_CFLAGS="$CFLAGS"
8152 CFLAGS="$CFLAGS -belf"
8153 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
8154$as_echo_n "checking whether the C compiler needs -belf... " >&6; }
8155if ${lt_cv_cc_needs_belf+:} false; then :
8156 $as_echo_n "(cached) " >&6
8157else
8158 ac_ext=c
8159ac_cpp='$CPP $CPPFLAGS'
8160ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
8161ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
8162ac_compiler_gnu=$ac_cv_c_compiler_gnu
8163
8164 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
8165/* end confdefs.h. */
8166
8167int
8168main ()
8169{
8170
8171 ;
8172 return 0;
8173}
8174_ACEOF
8175if ac_fn_c_try_link "$LINENO"; then :
8176 lt_cv_cc_needs_belf=yes
8177else
8178 lt_cv_cc_needs_belf=no
8179fi
8180rm -f core conftest.err conftest.$ac_objext \
8181 conftest$ac_exeext conftest.$ac_ext
8182 ac_ext=c
8183ac_cpp='$CPP $CPPFLAGS'
8184ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
8185ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
8186ac_compiler_gnu=$ac_cv_c_compiler_gnu
8187
8188fi
8189{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
8190$as_echo "$lt_cv_cc_needs_belf" >&6; }
8191 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
8192 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
8193 CFLAGS="$SAVE_CFLAGS"
8194 fi
8195 ;;
8196*-*solaris*)
8197 # Find out which ABI we are using.
8198 echo 'int i;' > conftest.$ac_ext
8199 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
8200 (eval $ac_compile) 2>&5
8201 ac_status=$?
8202 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
8203 test $ac_status = 0; }; then
8204 case `/usr/bin/file conftest.o` in
8205 *64-bit*)
8206 case $lt_cv_prog_gnu_ld in
8207 yes*)
8208 case $host in
8209 i?86-*-solaris*)
8210 LD="${LD-ld} -m elf_x86_64"
8211 ;;
8212 sparc*-*-solaris*)
8213 LD="${LD-ld} -m elf64_sparc"
8214 ;;
8215 esac
8216 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
8217 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
8218 LD="${LD-ld}_sol2"
8219 fi
8220 ;;
8221 *)
8222 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
8223 LD="${LD-ld} -64"
8224 fi
8225 ;;
8226 esac
8227 ;;
8228 esac
8229 fi
8230 rm -rf conftest*
8231 ;;
8232esac
8233
8234need_locks="$enable_libtool_lock"
8235
8236if test -n "$ac_tool_prefix"; then
8237 # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.
8238set dummy ${ac_tool_prefix}mt; ac_word=$2
8239{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
8240$as_echo_n "checking for $ac_word... " >&6; }
8241if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
8242 $as_echo_n "(cached) " >&6
8243else
8244 if test -n "$MANIFEST_TOOL"; then
8245 ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test.
8246else
8247as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8248for as_dir in $PATH
8249do
8250 IFS=$as_save_IFS
8251 test -z "$as_dir" && as_dir=.
8252 for ac_exec_ext in '' $ac_executable_extensions; do
8253 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
8254 ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
8255 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
8256 break 2
8257 fi
8258done
8259 done
8260IFS=$as_save_IFS
8261
8262fi
8263fi
8264MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL
8265if test -n "$MANIFEST_TOOL"; then
8266 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5
8267$as_echo "$MANIFEST_TOOL" >&6; }
8268else
8269 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8270$as_echo "no" >&6; }
8271fi
8272
8273
8274fi
8275if test -z "$ac_cv_prog_MANIFEST_TOOL"; then
8276 ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL
8277 # Extract the first word of "mt", so it can be a program name with args.
8278set dummy mt; ac_word=$2
8279{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
8280$as_echo_n "checking for $ac_word... " >&6; }
8281if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
8282 $as_echo_n "(cached) " >&6
8283else
8284 if test -n "$ac_ct_MANIFEST_TOOL"; then
8285 ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test.
8286else
8287as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8288for as_dir in $PATH
8289do
8290 IFS=$as_save_IFS
8291 test -z "$as_dir" && as_dir=.
8292 for ac_exec_ext in '' $ac_executable_extensions; do
8293 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
8294 ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
8295 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
8296 break 2
8297 fi
8298done
8299 done
8300IFS=$as_save_IFS
8301
8302fi
8303fi
8304ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL
8305if test -n "$ac_ct_MANIFEST_TOOL"; then
8306 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5
8307$as_echo "$ac_ct_MANIFEST_TOOL" >&6; }
8308else
8309 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8310$as_echo "no" >&6; }
8311fi
8312
8313 if test "x$ac_ct_MANIFEST_TOOL" = x; then
8314 MANIFEST_TOOL=":"
8315 else
8316 case $cross_compiling:$ac_tool_warned in
8317yes:)
8318{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
8319$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
8320ac_tool_warned=yes ;;
8321esac
8322 MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL
8323 fi
8324else
8325 MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL"
8326fi
8327
8328test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
8329{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
8330$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
8331if ${lt_cv_path_mainfest_tool+:} false; then :
8332 $as_echo_n "(cached) " >&6
8333else
8334 lt_cv_path_mainfest_tool=no
8335 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5
8336 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
8337 cat conftest.err >&5
8338 if $GREP 'Manifest Tool' conftest.out > /dev/null; then
8339 lt_cv_path_mainfest_tool=yes
8340 fi
8341 rm -f conftest*
8342fi
8343{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
8344$as_echo "$lt_cv_path_mainfest_tool" >&6; }
8345if test "x$lt_cv_path_mainfest_tool" != xyes; then
8346 MANIFEST_TOOL=:
8347fi
8348
8349
8350
8351
8352
8353
8354 case $host_os in
8355 rhapsody* | darwin*)
8356 if test -n "$ac_tool_prefix"; then
8357 # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
8358set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
8359{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
8360$as_echo_n "checking for $ac_word... " >&6; }
8361if ${ac_cv_prog_DSYMUTIL+:} false; then :
8362 $as_echo_n "(cached) " >&6
8363else
8364 if test -n "$DSYMUTIL"; then
8365 ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
8366else
8367as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8368for as_dir in $PATH
8369do
8370 IFS=$as_save_IFS
8371 test -z "$as_dir" && as_dir=.
8372 for ac_exec_ext in '' $ac_executable_extensions; do
8373 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
8374 ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
8375 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
8376 break 2
8377 fi
8378done
8379 done
8380IFS=$as_save_IFS
8381
8382fi
8383fi
8384DSYMUTIL=$ac_cv_prog_DSYMUTIL
8385if test -n "$DSYMUTIL"; then
8386 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
8387$as_echo "$DSYMUTIL" >&6; }
8388else
8389 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8390$as_echo "no" >&6; }
8391fi
8392
8393
8394fi
8395if test -z "$ac_cv_prog_DSYMUTIL"; then
8396 ac_ct_DSYMUTIL=$DSYMUTIL
8397 # Extract the first word of "dsymutil", so it can be a program name with args.
8398set dummy dsymutil; ac_word=$2
8399{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
8400$as_echo_n "checking for $ac_word... " >&6; }
8401if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then :
8402 $as_echo_n "(cached) " >&6
8403else
8404 if test -n "$ac_ct_DSYMUTIL"; then
8405 ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
8406else
8407as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8408for as_dir in $PATH
8409do
8410 IFS=$as_save_IFS
8411 test -z "$as_dir" && as_dir=.
8412 for ac_exec_ext in '' $ac_executable_extensions; do
8413 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
8414 ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
8415 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
8416 break 2
8417 fi
8418done
8419 done
8420IFS=$as_save_IFS
8421
8422fi
8423fi
8424ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
8425if test -n "$ac_ct_DSYMUTIL"; then
8426 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
8427$as_echo "$ac_ct_DSYMUTIL" >&6; }
8428else
8429 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8430$as_echo "no" >&6; }
8431fi
8432
8433 if test "x$ac_ct_DSYMUTIL" = x; then
8434 DSYMUTIL=":"
8435 else
8436 case $cross_compiling:$ac_tool_warned in
8437yes:)
8438{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
8439$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
8440ac_tool_warned=yes ;;
8441esac
8442 DSYMUTIL=$ac_ct_DSYMUTIL
8443 fi
8444else
8445 DSYMUTIL="$ac_cv_prog_DSYMUTIL"
8446fi
8447
8448 if test -n "$ac_tool_prefix"; then
8449 # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
8450set dummy ${ac_tool_prefix}nmedit; ac_word=$2
8451{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
8452$as_echo_n "checking for $ac_word... " >&6; }
8453if ${ac_cv_prog_NMEDIT+:} false; then :
8454 $as_echo_n "(cached) " >&6
8455else
8456 if test -n "$NMEDIT"; then
8457 ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
8458else
8459as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8460for as_dir in $PATH
8461do
8462 IFS=$as_save_IFS
8463 test -z "$as_dir" && as_dir=.
8464 for ac_exec_ext in '' $ac_executable_extensions; do
8465 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
8466 ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
8467 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
8468 break 2
8469 fi
8470done
8471 done
8472IFS=$as_save_IFS
8473
8474fi
8475fi
8476NMEDIT=$ac_cv_prog_NMEDIT
8477if test -n "$NMEDIT"; then
8478 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
8479$as_echo "$NMEDIT" >&6; }
8480else
8481 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8482$as_echo "no" >&6; }
8483fi
8484
8485
8486fi
8487if test -z "$ac_cv_prog_NMEDIT"; then
8488 ac_ct_NMEDIT=$NMEDIT
8489 # Extract the first word of "nmedit", so it can be a program name with args.
8490set dummy nmedit; ac_word=$2
8491{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
8492$as_echo_n "checking for $ac_word... " >&6; }
8493if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then :
8494 $as_echo_n "(cached) " >&6
8495else
8496 if test -n "$ac_ct_NMEDIT"; then
8497 ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
8498else
8499as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8500for as_dir in $PATH
8501do
8502 IFS=$as_save_IFS
8503 test -z "$as_dir" && as_dir=.
8504 for ac_exec_ext in '' $ac_executable_extensions; do
8505 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
8506 ac_cv_prog_ac_ct_NMEDIT="nmedit"
8507 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
8508 break 2
8509 fi
8510done
8511 done
8512IFS=$as_save_IFS
8513
8514fi
8515fi
8516ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
8517if test -n "$ac_ct_NMEDIT"; then
8518 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
8519$as_echo "$ac_ct_NMEDIT" >&6; }
8520else
8521 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8522$as_echo "no" >&6; }
8523fi
8524
8525 if test "x$ac_ct_NMEDIT" = x; then
8526 NMEDIT=":"
8527 else
8528 case $cross_compiling:$ac_tool_warned in
8529yes:)
8530{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
8531$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
8532ac_tool_warned=yes ;;
8533esac
8534 NMEDIT=$ac_ct_NMEDIT
8535 fi
8536else
8537 NMEDIT="$ac_cv_prog_NMEDIT"
8538fi
8539
8540 if test -n "$ac_tool_prefix"; then
8541 # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
8542set dummy ${ac_tool_prefix}lipo; ac_word=$2
8543{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
8544$as_echo_n "checking for $ac_word... " >&6; }
8545if ${ac_cv_prog_LIPO+:} false; then :
8546 $as_echo_n "(cached) " >&6
8547else
8548 if test -n "$LIPO"; then
8549 ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
8550else
8551as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8552for as_dir in $PATH
8553do
8554 IFS=$as_save_IFS
8555 test -z "$as_dir" && as_dir=.
8556 for ac_exec_ext in '' $ac_executable_extensions; do
8557 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
8558 ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
8559 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
8560 break 2
8561 fi
8562done
8563 done
8564IFS=$as_save_IFS
8565
8566fi
8567fi
8568LIPO=$ac_cv_prog_LIPO
8569if test -n "$LIPO"; then
8570 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
8571$as_echo "$LIPO" >&6; }
8572else
8573 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8574$as_echo "no" >&6; }
8575fi
8576
8577
8578fi
8579if test -z "$ac_cv_prog_LIPO"; then
8580 ac_ct_LIPO=$LIPO
8581 # Extract the first word of "lipo", so it can be a program name with args.
8582set dummy lipo; ac_word=$2
8583{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
8584$as_echo_n "checking for $ac_word... " >&6; }
8585if ${ac_cv_prog_ac_ct_LIPO+:} false; then :
8586 $as_echo_n "(cached) " >&6
8587else
8588 if test -n "$ac_ct_LIPO"; then
8589 ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
8590else
8591as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8592for as_dir in $PATH
8593do
8594 IFS=$as_save_IFS
8595 test -z "$as_dir" && as_dir=.
8596 for ac_exec_ext in '' $ac_executable_extensions; do
8597 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
8598 ac_cv_prog_ac_ct_LIPO="lipo"
8599 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
8600 break 2
8601 fi
8602done
8603 done
8604IFS=$as_save_IFS
8605
8606fi
8607fi
8608ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
8609if test -n "$ac_ct_LIPO"; then
8610 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
8611$as_echo "$ac_ct_LIPO" >&6; }
8612else
8613 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8614$as_echo "no" >&6; }
8615fi
8616
8617 if test "x$ac_ct_LIPO" = x; then
8618 LIPO=":"
8619 else
8620 case $cross_compiling:$ac_tool_warned in
8621yes:)
8622{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
8623$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
8624ac_tool_warned=yes ;;
8625esac
8626 LIPO=$ac_ct_LIPO
8627 fi
8628else
8629 LIPO="$ac_cv_prog_LIPO"
8630fi
8631
8632 if test -n "$ac_tool_prefix"; then
8633 # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
8634set dummy ${ac_tool_prefix}otool; ac_word=$2
8635{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
8636$as_echo_n "checking for $ac_word... " >&6; }
8637if ${ac_cv_prog_OTOOL+:} false; then :
8638 $as_echo_n "(cached) " >&6
8639else
8640 if test -n "$OTOOL"; then
8641 ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
8642else
8643as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8644for as_dir in $PATH
8645do
8646 IFS=$as_save_IFS
8647 test -z "$as_dir" && as_dir=.
8648 for ac_exec_ext in '' $ac_executable_extensions; do
8649 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
8650 ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
8651 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
8652 break 2
8653 fi
8654done
8655 done
8656IFS=$as_save_IFS
8657
8658fi
8659fi
8660OTOOL=$ac_cv_prog_OTOOL
8661if test -n "$OTOOL"; then
8662 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
8663$as_echo "$OTOOL" >&6; }
8664else
8665 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8666$as_echo "no" >&6; }
8667fi
8668
8669
8670fi
8671if test -z "$ac_cv_prog_OTOOL"; then
8672 ac_ct_OTOOL=$OTOOL
8673 # Extract the first word of "otool", so it can be a program name with args.
8674set dummy otool; ac_word=$2
8675{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
8676$as_echo_n "checking for $ac_word... " >&6; }
8677if ${ac_cv_prog_ac_ct_OTOOL+:} false; then :
8678 $as_echo_n "(cached) " >&6
8679else
8680 if test -n "$ac_ct_OTOOL"; then
8681 ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
8682else
8683as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8684for as_dir in $PATH
8685do
8686 IFS=$as_save_IFS
8687 test -z "$as_dir" && as_dir=.
8688 for ac_exec_ext in '' $ac_executable_extensions; do
8689 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
8690 ac_cv_prog_ac_ct_OTOOL="otool"
8691 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
8692 break 2
8693 fi
8694done
8695 done
8696IFS=$as_save_IFS
8697
8698fi
8699fi
8700ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
8701if test -n "$ac_ct_OTOOL"; then
8702 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
8703$as_echo "$ac_ct_OTOOL" >&6; }
8704else
8705 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8706$as_echo "no" >&6; }
8707fi
8708
8709 if test "x$ac_ct_OTOOL" = x; then
8710 OTOOL=":"
8711 else
8712 case $cross_compiling:$ac_tool_warned in
8713yes:)
8714{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
8715$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
8716ac_tool_warned=yes ;;
8717esac
8718 OTOOL=$ac_ct_OTOOL
8719 fi
8720else
8721 OTOOL="$ac_cv_prog_OTOOL"
8722fi
8723
8724 if test -n "$ac_tool_prefix"; then
8725 # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
8726set dummy ${ac_tool_prefix}otool64; ac_word=$2
8727{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
8728$as_echo_n "checking for $ac_word... " >&6; }
8729if ${ac_cv_prog_OTOOL64+:} false; then :
8730 $as_echo_n "(cached) " >&6
8731else
8732 if test -n "$OTOOL64"; then
8733 ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
8734else
8735as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8736for as_dir in $PATH
8737do
8738 IFS=$as_save_IFS
8739 test -z "$as_dir" && as_dir=.
8740 for ac_exec_ext in '' $ac_executable_extensions; do
8741 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
8742 ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
8743 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
8744 break 2
8745 fi
8746done
8747 done
8748IFS=$as_save_IFS
8749
8750fi
8751fi
8752OTOOL64=$ac_cv_prog_OTOOL64
8753if test -n "$OTOOL64"; then
8754 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
8755$as_echo "$OTOOL64" >&6; }
8756else
8757 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8758$as_echo "no" >&6; }
8759fi
8760
8761
8762fi
8763if test -z "$ac_cv_prog_OTOOL64"; then
8764 ac_ct_OTOOL64=$OTOOL64
8765 # Extract the first word of "otool64", so it can be a program name with args.
8766set dummy otool64; ac_word=$2
8767{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
8768$as_echo_n "checking for $ac_word... " >&6; }
8769if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then :
8770 $as_echo_n "(cached) " >&6
8771else
8772 if test -n "$ac_ct_OTOOL64"; then
8773 ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
8774else
8775as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8776for as_dir in $PATH
8777do
8778 IFS=$as_save_IFS
8779 test -z "$as_dir" && as_dir=.
8780 for ac_exec_ext in '' $ac_executable_extensions; do
8781 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
8782 ac_cv_prog_ac_ct_OTOOL64="otool64"
8783 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
8784 break 2
8785 fi
8786done
8787 done
8788IFS=$as_save_IFS
8789
8790fi
8791fi
8792ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
8793if test -n "$ac_ct_OTOOL64"; then
8794 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
8795$as_echo "$ac_ct_OTOOL64" >&6; }
8796else
8797 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8798$as_echo "no" >&6; }
8799fi
8800
8801 if test "x$ac_ct_OTOOL64" = x; then
8802 OTOOL64=":"
8803 else
8804 case $cross_compiling:$ac_tool_warned in
8805yes:)
8806{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
8807$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
8808ac_tool_warned=yes ;;
8809esac
8810 OTOOL64=$ac_ct_OTOOL64
8811 fi
8812else
8813 OTOOL64="$ac_cv_prog_OTOOL64"
8814fi
8815
8816
8817
8818
8819
8820
8821
8822
8823
8824
8825
8826
8827
8828
8829
8830
8831
8832
8833
8834
8835
8836
8837
8838
8839
8840
8841
8842 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
8843$as_echo_n "checking for -single_module linker flag... " >&6; }
8844if ${lt_cv_apple_cc_single_mod+:} false; then :
8845 $as_echo_n "(cached) " >&6
8846else
8847 lt_cv_apple_cc_single_mod=no
8848 if test -z "${LT_MULTI_MODULE}"; then
8849 # By default we will add the -single_module flag. You can override
8850 # by either setting the environment variable LT_MULTI_MODULE
8851 # non-empty at configure time, or by adding -multi_module to the
8852 # link flags.
8853 rm -rf libconftest.dylib*
8854 echo "int foo(void){return 1;}" > conftest.c
8855 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
8856-dynamiclib -Wl,-single_module conftest.c" >&5
8857 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
8858 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
8859 _lt_result=$?
8860 # If there is a non-empty error log, and "single_module"
8861 # appears in it, assume the flag caused a linker warning
8862 if test -s conftest.err && $GREP single_module conftest.err; then
8863 cat conftest.err >&5
8864 # Otherwise, if the output was created with a 0 exit code from
8865 # the compiler, it worked.
8866 elif test -f libconftest.dylib && test $_lt_result -eq 0; then
8867 lt_cv_apple_cc_single_mod=yes
8868 else
8869 cat conftest.err >&5
8870 fi
8871 rm -rf libconftest.dylib*
8872 rm -f conftest.*
8873 fi
8874fi
8875{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
8876$as_echo "$lt_cv_apple_cc_single_mod" >&6; }
8877
8878 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
8879$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
8880if ${lt_cv_ld_exported_symbols_list+:} false; then :
8881 $as_echo_n "(cached) " >&6
8882else
8883 lt_cv_ld_exported_symbols_list=no
8884 save_LDFLAGS=$LDFLAGS
8885 echo "_main" > conftest.sym
8886 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
8887 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
8888/* end confdefs.h. */
8889
8890int
8891main ()
8892{
8893
8894 ;
8895 return 0;
8896}
8897_ACEOF
8898if ac_fn_c_try_link "$LINENO"; then :
8899 lt_cv_ld_exported_symbols_list=yes
8900else
8901 lt_cv_ld_exported_symbols_list=no
8902fi
8903rm -f core conftest.err conftest.$ac_objext \
8904 conftest$ac_exeext conftest.$ac_ext
8905 LDFLAGS="$save_LDFLAGS"
8906
8907fi
8908{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
8909$as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
8910
8911 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5
8912$as_echo_n "checking for -force_load linker flag... " >&6; }
8913if ${lt_cv_ld_force_load+:} false; then :
8914 $as_echo_n "(cached) " >&6
8915else
8916 lt_cv_ld_force_load=no
8917 cat > conftest.c << _LT_EOF
8918int forced_loaded() { return 2;}
8919_LT_EOF
8920 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5
8921 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
8922 echo "$AR cru libconftest.a conftest.o" >&5
8923 $AR cru libconftest.a conftest.o 2>&5
8924 echo "$RANLIB libconftest.a" >&5
8925 $RANLIB libconftest.a 2>&5
8926 cat > conftest.c << _LT_EOF
8927int main() { return 0;}
8928_LT_EOF
8929 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5
8930 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
8931 _lt_result=$?
8932 if test -s conftest.err && $GREP force_load conftest.err; then
8933 cat conftest.err >&5
8934 elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
8935 lt_cv_ld_force_load=yes
8936 else
8937 cat conftest.err >&5
8938 fi
8939 rm -f conftest.err libconftest.a conftest conftest.c
8940 rm -rf conftest.dSYM
8941
8942fi
8943{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
8944$as_echo "$lt_cv_ld_force_load" >&6; }
8945 case $host_os in
8946 rhapsody* | darwin1.[012])
8947 _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
8948 darwin1.*)
8949 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
8950 darwin*) # darwin 5.x on
8951 # if running on 10.5 or later, the deployment target defaults
8952 # to the OS version, if on x86, and 10.4, the deployment
8953 # target defaults to 10.4. Don't you love it?
8954 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
8955 10.0,*86*-darwin8*|10.0,*-darwin[91]*)
8956 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
8957 10.[012]*)
8958 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
8959 10.*)
8960 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
8961 esac
8962 ;;
8963 esac
8964 if test "$lt_cv_apple_cc_single_mod" = "yes"; then
8965 _lt_dar_single_mod='$single_module'
8966 fi
8967 if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
8968 _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
8969 else
8970 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
8971 fi
8972 if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
8973 _lt_dsymutil='~$DSYMUTIL $lib || :'
8974 else
8975 _lt_dsymutil=
8976 fi
8977 ;;
8978 esac
8979
8980for ac_header in dlfcn.h
8981do :
8982 ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
8983"
8984if test "x$ac_cv_header_dlfcn_h" = xyes; then :
8985 cat >>confdefs.h <<_ACEOF
8986#define HAVE_DLFCN_H 1
8987_ACEOF
8988
8989fi
8990
8991done
8992
8993
8994
8995
8996
8997# Set options
8998
8999
9000
9001 enable_dlopen=no
9002
9003
9004
9005 # Check whether --enable-shared was given.
9006if test "${enable_shared+set}" = set; then :
9007 enableval=$enable_shared; p=${PACKAGE-default}
9008 case $enableval in
9009 yes) enable_shared=yes ;;
9010 no) enable_shared=no ;;
9011 *)
9012 enable_shared=no
9013 # Look at the argument we got. We use all the common list separators.
9014 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
9015 for pkg in $enableval; do
9016 IFS="$lt_save_ifs"
9017 if test "X$pkg" = "X$p"; then
9018 enable_shared=yes
9019 fi
9020 done
9021 IFS="$lt_save_ifs"
9022 ;;
9023 esac
9024else
9025 enable_shared=yes
9026fi
9027
9028
9029
9030
9031
9032
9033
9034
9035
9036 # Check whether --enable-static was given.
9037if test "${enable_static+set}" = set; then :
9038 enableval=$enable_static; p=${PACKAGE-default}
9039 case $enableval in
9040 yes) enable_static=yes ;;
9041 no) enable_static=no ;;
9042 *)
9043 enable_static=no
9044 # Look at the argument we got. We use all the common list separators.
9045 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
9046 for pkg in $enableval; do
9047 IFS="$lt_save_ifs"
9048 if test "X$pkg" = "X$p"; then
9049 enable_static=yes
9050 fi
9051 done
9052 IFS="$lt_save_ifs"
9053 ;;
9054 esac
9055else
9056 enable_static=yes
9057fi
9058
9059
9060
9061
9062
9063
9064
9065
9066
9067
9068# Check whether --with-pic was given.
9069if test "${with_pic+set}" = set; then :
9070 withval=$with_pic; lt_p=${PACKAGE-default}
9071 case $withval in
9072 yes|no) pic_mode=$withval ;;
9073 *)
9074 pic_mode=default
9075 # Look at the argument we got. We use all the common list separators.
9076 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
9077 for lt_pkg in $withval; do
9078 IFS="$lt_save_ifs"
9079 if test "X$lt_pkg" = "X$lt_p"; then
9080 pic_mode=yes
9081 fi
9082 done
9083 IFS="$lt_save_ifs"
9084 ;;
9085 esac
9086else
9087 pic_mode=default
9088fi
9089
9090
9091test -z "$pic_mode" && pic_mode=default
9092
9093
9094
9095
9096
9097
9098
9099 # Check whether --enable-fast-install was given.
9100if test "${enable_fast_install+set}" = set; then :
9101 enableval=$enable_fast_install; p=${PACKAGE-default}
9102 case $enableval in
9103 yes) enable_fast_install=yes ;;
9104 no) enable_fast_install=no ;;
9105 *)
9106 enable_fast_install=no
9107 # Look at the argument we got. We use all the common list separators.
9108 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
9109 for pkg in $enableval; do
9110 IFS="$lt_save_ifs"
9111 if test "X$pkg" = "X$p"; then
9112 enable_fast_install=yes
9113 fi
9114 done
9115 IFS="$lt_save_ifs"
9116 ;;
9117 esac
9118else
9119 enable_fast_install=yes
9120fi
9121
9122
9123
9124
9125
9126
9127
9128
9129
9130
9131
9132# This can be used to rebuild libtool when needed
9133LIBTOOL_DEPS="$ltmain"
9134
9135# Always use our own libtool.
9136LIBTOOL='$(SHELL) $(top_builddir)/libtool'
9137
9138
9139
9140
9141
9142
9143
9144
9145
9146
9147
9148
9149
9150
9151
9152
9153
9154
9155
9156
9157
9158
9159
9160
9161
9162
9163
9164
9165
9166
9167test -z "$LN_S" && LN_S="ln -s"
9168
9169
9170
9171
9172
9173
9174
9175
9176
9177
9178
9179
9180
9181
9182if test -n "${ZSH_VERSION+set}" ; then
9183 setopt NO_GLOB_SUBST
9184fi
9185
9186{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
9187$as_echo_n "checking for objdir... " >&6; }
9188if ${lt_cv_objdir+:} false; then :
9189 $as_echo_n "(cached) " >&6
9190else
9191 rm -f .libs 2>/dev/null
9192mkdir .libs 2>/dev/null
9193if test -d .libs; then
9194 lt_cv_objdir=.libs
9195else
9196 # MS-DOS does not allow filenames that begin with a dot.
9197 lt_cv_objdir=_libs
9198fi
9199rmdir .libs 2>/dev/null
9200fi
9201{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
9202$as_echo "$lt_cv_objdir" >&6; }
9203objdir=$lt_cv_objdir
9204
9205
9206
9207
9208
9209cat >>confdefs.h <<_ACEOF
9210#define LT_OBJDIR "$lt_cv_objdir/"
9211_ACEOF
9212
9213
9214
9215
9216case $host_os in
9217aix3*)
9218 # AIX sometimes has problems with the GCC collect2 program. For some
9219 # reason, if we set the COLLECT_NAMES environment variable, the problems
9220 # vanish in a puff of smoke.
9221 if test "X${COLLECT_NAMES+set}" != Xset; then
9222 COLLECT_NAMES=
9223 export COLLECT_NAMES
9224 fi
9225 ;;
9226esac
9227
9228# Global variables:
9229ofile=libtool
9230can_build_shared=yes
9231
9232# All known linkers require a `.a' archive for static linking (except MSVC,
9233# which needs '.lib').
9234libext=a
9235
9236with_gnu_ld="$lt_cv_prog_gnu_ld"
9237
9238old_CC="$CC"
9239old_CFLAGS="$CFLAGS"
9240
9241# Set sane defaults for various variables
9242test -z "$CC" && CC=cc
9243test -z "$LTCC" && LTCC=$CC
9244test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
9245test -z "$LD" && LD=ld
9246test -z "$ac_objext" && ac_objext=o
9247
9248for cc_temp in $compiler""; do
9249 case $cc_temp in
9250 compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
9251 distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
9252 \-*) ;;
9253 *) break;;
9254 esac
9255done
9256cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
9257
9258
9259# Only perform the check for file, if the check method requires it
9260test -z "$MAGIC_CMD" && MAGIC_CMD=file
9261case $deplibs_check_method in
9262file_magic*)
9263 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
9264 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
9265$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
9266if ${lt_cv_path_MAGIC_CMD+:} false; then :
9267 $as_echo_n "(cached) " >&6
9268else
9269 case $MAGIC_CMD in
9270[\\/*] | ?:[\\/]*)
9271 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
9272 ;;
9273*)
9274 lt_save_MAGIC_CMD="$MAGIC_CMD"
9275 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
9276 ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
9277 for ac_dir in $ac_dummy; do
9278 IFS="$lt_save_ifs"
9279 test -z "$ac_dir" && ac_dir=.
9280 if test -f $ac_dir/${ac_tool_prefix}file; then
9281 lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file"
9282 if test -n "$file_magic_test_file"; then
9283 case $deplibs_check_method in
9284 "file_magic "*)
9285 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
9286 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
9287 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
9288 $EGREP "$file_magic_regex" > /dev/null; then
9289 :
9290 else
9291 cat <<_LT_EOF 1>&2
9292
9293*** Warning: the command libtool uses to detect shared libraries,
9294*** $file_magic_cmd, produces output that libtool cannot recognize.
9295*** The result is that libtool may fail to recognize shared libraries
9296*** as such. This will affect the creation of libtool libraries that
9297*** depend on shared libraries, but programs linked with such libtool
9298*** libraries will work regardless of this problem. Nevertheless, you
9299*** may want to report the problem to your system manager and/or to
9300*** bug-libtool@gnu.org
9301
9302_LT_EOF
9303 fi ;;
9304 esac
9305 fi
9306 break
9307 fi
9308 done
9309 IFS="$lt_save_ifs"
9310 MAGIC_CMD="$lt_save_MAGIC_CMD"
9311 ;;
9312esac
9313fi
9314
9315MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
9316if test -n "$MAGIC_CMD"; then
9317 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
9318$as_echo "$MAGIC_CMD" >&6; }
9319else
9320 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
9321$as_echo "no" >&6; }
9322fi
9323
9324
9325
9326
9327
9328if test -z "$lt_cv_path_MAGIC_CMD"; then
9329 if test -n "$ac_tool_prefix"; then
9330 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5
9331$as_echo_n "checking for file... " >&6; }
9332if ${lt_cv_path_MAGIC_CMD+:} false; then :
9333 $as_echo_n "(cached) " >&6
9334else
9335 case $MAGIC_CMD in
9336[\\/*] | ?:[\\/]*)
9337 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
9338 ;;
9339*)
9340 lt_save_MAGIC_CMD="$MAGIC_CMD"
9341 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
9342 ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
9343 for ac_dir in $ac_dummy; do
9344 IFS="$lt_save_ifs"
9345 test -z "$ac_dir" && ac_dir=.
9346 if test -f $ac_dir/file; then
9347 lt_cv_path_MAGIC_CMD="$ac_dir/file"
9348 if test -n "$file_magic_test_file"; then
9349 case $deplibs_check_method in
9350 "file_magic "*)
9351 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
9352 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
9353 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
9354 $EGREP "$file_magic_regex" > /dev/null; then
9355 :
9356 else
9357 cat <<_LT_EOF 1>&2
9358
9359*** Warning: the command libtool uses to detect shared libraries,
9360*** $file_magic_cmd, produces output that libtool cannot recognize.
9361*** The result is that libtool may fail to recognize shared libraries
9362*** as such. This will affect the creation of libtool libraries that
9363*** depend on shared libraries, but programs linked with such libtool
9364*** libraries will work regardless of this problem. Nevertheless, you
9365*** may want to report the problem to your system manager and/or to
9366*** bug-libtool@gnu.org
9367
9368_LT_EOF
9369 fi ;;
9370 esac
9371 fi
9372 break
9373 fi
9374 done
9375 IFS="$lt_save_ifs"
9376 MAGIC_CMD="$lt_save_MAGIC_CMD"
9377 ;;
9378esac
9379fi
9380
9381MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
9382if test -n "$MAGIC_CMD"; then
9383 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
9384$as_echo "$MAGIC_CMD" >&6; }
9385else
9386 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
9387$as_echo "no" >&6; }
9388fi
9389
9390
9391 else
9392 MAGIC_CMD=:
9393 fi
9394fi
9395
9396 fi
9397 ;;
9398esac
9399
9400# Use C for the default configuration in the libtool script
9401
9402lt_save_CC="$CC"
9403ac_ext=c
9404ac_cpp='$CPP $CPPFLAGS'
9405ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
9406ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
9407ac_compiler_gnu=$ac_cv_c_compiler_gnu
9408
9409
9410# Source file extension for C test sources.
9411ac_ext=c
9412
9413# Object file extension for compiled C test sources.
9414objext=o
9415objext=$objext
9416
9417# Code to be used in simple compile tests
9418lt_simple_compile_test_code="int some_variable = 0;"
9419
9420# Code to be used in simple link tests
9421lt_simple_link_test_code='int main(){return(0);}'
9422
9423
9424
9425
9426
9427
9428
9429# If no C compiler was specified, use CC.
9430LTCC=${LTCC-"$CC"}
9431
9432# If no C compiler flags were specified, use CFLAGS.
9433LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
9434
9435# Allow CC to be a program name with arguments.
9436compiler=$CC
9437
9438# Save the default compiler, since it gets overwritten when the other
9439# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
9440compiler_DEFAULT=$CC
9441
9442# save warnings/boilerplate of simple test code
9443ac_outfile=conftest.$ac_objext
9444echo "$lt_simple_compile_test_code" >conftest.$ac_ext
9445eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
9446_lt_compiler_boilerplate=`cat conftest.err`
9447$RM conftest*
9448
9449ac_outfile=conftest.$ac_objext
9450echo "$lt_simple_link_test_code" >conftest.$ac_ext
9451eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
9452_lt_linker_boilerplate=`cat conftest.err`
9453$RM -r conftest*
9454
9455
9456if test -n "$compiler"; then
9457
9458lt_prog_compiler_no_builtin_flag=
9459
9460if test "$GCC" = yes; then
9461 case $cc_basename in
9462 nvcc*)
9463 lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;;
9464 *)
9465 lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;;
9466 esac
9467
9468 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
9469$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
9470if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then :
9471 $as_echo_n "(cached) " >&6
9472else
9473 lt_cv_prog_compiler_rtti_exceptions=no
9474 ac_outfile=conftest.$ac_objext
9475 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
9476 lt_compiler_flag="-fno-rtti -fno-exceptions"
9477 # Insert the option either (1) after the last *FLAGS variable, or
9478 # (2) before a word containing "conftest.", or (3) at the end.
9479 # Note that $ac_compile itself does not contain backslashes and begins
9480 # with a dollar sign (not a hyphen), so the echo should work correctly.
9481 # The option is referenced via a variable to avoid confusing sed.
9482 lt_compile=`echo "$ac_compile" | $SED \
9483 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
9484 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
9485 -e 's:$: $lt_compiler_flag:'`
9486 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
9487 (eval "$lt_compile" 2>conftest.err)
9488 ac_status=$?
9489 cat conftest.err >&5
9490 echo "$as_me:$LINENO: \$? = $ac_status" >&5
9491 if (exit $ac_status) && test -s "$ac_outfile"; then
9492 # The compiler can only warn and ignore the option if not recognized
9493 # So say no if there are warnings other than the usual output.
9494 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
9495 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
9496 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
9497 lt_cv_prog_compiler_rtti_exceptions=yes
9498 fi
9499 fi
9500 $RM conftest*
9501
9502fi
9503{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
9504$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
9505
9506if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then
9507 lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
9508else
9509 :
9510fi
9511
9512fi
9513
9514
9515
9516
9517
9518
9519 lt_prog_compiler_wl=
9520lt_prog_compiler_pic=
9521lt_prog_compiler_static=
9522
9523
9524 if test "$GCC" = yes; then
9525 lt_prog_compiler_wl='-Wl,'
9526 lt_prog_compiler_static='-static'
9527
9528 case $host_os in
9529 aix*)
9530 # All AIX code is PIC.
9531 if test "$host_cpu" = ia64; then
9532 # AIX 5 now supports IA64 processor
9533 lt_prog_compiler_static='-Bstatic'
9534 fi
9535 ;;
9536
9537 amigaos*)
9538 case $host_cpu in
9539 powerpc)
9540 # see comment about AmigaOS4 .so support
9541 lt_prog_compiler_pic='-fPIC'
9542 ;;
9543 m68k)
9544 # FIXME: we need at least 68020 code to build shared libraries, but
9545 # adding the `-m68020' flag to GCC prevents building anything better,
9546 # like `-m68040'.
9547 lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
9548 ;;
9549 esac
9550 ;;
9551
9552 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
9553 # PIC is the default for these OSes.
9554 ;;
9555
9556 mingw* | cygwin* | pw32* | os2* | cegcc*)
9557 # This hack is so that the source file can tell whether it is being
9558 # built for inclusion in a dll (and should export symbols for example).
9559 # Although the cygwin gcc ignores -fPIC, still need this for old-style
9560 # (--disable-auto-import) libraries
9561 lt_prog_compiler_pic='-DDLL_EXPORT'
9562 ;;
9563
9564 darwin* | rhapsody*)
9565 # PIC is the default on this platform
9566 # Common symbols not allowed in MH_DYLIB files
9567 lt_prog_compiler_pic='-fno-common'
9568 ;;
9569
9570 haiku*)
9571 # PIC is the default for Haiku.
9572 # The "-static" flag exists, but is broken.
9573 lt_prog_compiler_static=
9574 ;;
9575
9576 hpux*)
9577 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
9578 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
9579 # sets the default TLS model and affects inlining.
9580 case $host_cpu in
9581 hppa*64*)
9582 # +Z the default
9583 ;;
9584 *)
9585 lt_prog_compiler_pic='-fPIC'
9586 ;;
9587 esac
9588 ;;
9589
9590 interix[3-9]*)
9591 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
9592 # Instead, we relocate shared libraries at runtime.
9593 ;;
9594
9595 msdosdjgpp*)
9596 # Just because we use GCC doesn't mean we suddenly get shared libraries
9597 # on systems that don't support them.
9598 lt_prog_compiler_can_build_shared=no
9599 enable_shared=no
9600 ;;
9601
9602 *nto* | *qnx*)
9603 # QNX uses GNU C++, but need to define -shared option too, otherwise
9604 # it will coredump.
9605 lt_prog_compiler_pic='-fPIC -shared'
9606 ;;
9607
9608 sysv4*MP*)
9609 if test -d /usr/nec; then
9610 lt_prog_compiler_pic=-Kconform_pic
9611 fi
9612 ;;
9613
9614 *)
9615 lt_prog_compiler_pic='-fPIC'
9616 ;;
9617 esac
9618
9619 case $cc_basename in
9620 nvcc*) # Cuda Compiler Driver 2.2
9621 lt_prog_compiler_wl='-Xlinker '
9622 if test -n "$lt_prog_compiler_pic"; then
9623 lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic"
9624 fi
9625 ;;
9626 esac
9627 else
9628 # PORTME Check for flag to pass linker flags through the system compiler.
9629 case $host_os in
9630 aix*)
9631 lt_prog_compiler_wl='-Wl,'
9632 if test "$host_cpu" = ia64; then
9633 # AIX 5 now supports IA64 processor
9634 lt_prog_compiler_static='-Bstatic'
9635 else
9636 lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
9637 fi
9638 ;;
9639
9640 mingw* | cygwin* | pw32* | os2* | cegcc*)
9641 # This hack is so that the source file can tell whether it is being
9642 # built for inclusion in a dll (and should export symbols for example).
9643 lt_prog_compiler_pic='-DDLL_EXPORT'
9644 ;;
9645
9646 hpux9* | hpux10* | hpux11*)
9647 lt_prog_compiler_wl='-Wl,'
9648 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
9649 # not for PA HP-UX.
9650 case $host_cpu in
9651 hppa*64*|ia64*)
9652 # +Z the default
9653 ;;
9654 *)
9655 lt_prog_compiler_pic='+Z'
9656 ;;
9657 esac
9658 # Is there a better lt_prog_compiler_static that works with the bundled CC?
9659 lt_prog_compiler_static='${wl}-a ${wl}archive'
9660 ;;
9661
9662 irix5* | irix6* | nonstopux*)
9663 lt_prog_compiler_wl='-Wl,'
9664 # PIC (with -KPIC) is the default.
9665 lt_prog_compiler_static='-non_shared'
9666 ;;
9667
9668 linux* | k*bsd*-gnu | kopensolaris*-gnu)
9669 case $cc_basename in
9670 # old Intel for x86_64 which still supported -KPIC.
9671 ecc*)
9672 lt_prog_compiler_wl='-Wl,'
9673 lt_prog_compiler_pic='-KPIC'
9674 lt_prog_compiler_static='-static'
9675 ;;
9676 # icc used to be incompatible with GCC.
9677 # ICC 10 doesn't accept -KPIC any more.
9678 icc* | ifort*)
9679 lt_prog_compiler_wl='-Wl,'
9680 lt_prog_compiler_pic='-fPIC'
9681 lt_prog_compiler_static='-static'
9682 ;;
9683 # Lahey Fortran 8.1.
9684 lf95*)
9685 lt_prog_compiler_wl='-Wl,'
9686 lt_prog_compiler_pic='--shared'
9687 lt_prog_compiler_static='--static'
9688 ;;
9689 nagfor*)
9690 # NAG Fortran compiler
9691 lt_prog_compiler_wl='-Wl,-Wl,,'
9692 lt_prog_compiler_pic='-PIC'
9693 lt_prog_compiler_static='-Bstatic'
9694 ;;
9695 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
9696 # Portland Group compilers (*not* the Pentium gcc compiler,
9697 # which looks to be a dead project)
9698 lt_prog_compiler_wl='-Wl,'
9699 lt_prog_compiler_pic='-fpic'
9700 lt_prog_compiler_static='-Bstatic'
9701 ;;
9702 ccc*)
9703 lt_prog_compiler_wl='-Wl,'
9704 # All Alpha code is PIC.
9705 lt_prog_compiler_static='-non_shared'
9706 ;;
9707 xl* | bgxl* | bgf* | mpixl*)
9708 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
9709 lt_prog_compiler_wl='-Wl,'
9710 lt_prog_compiler_pic='-qpic'
9711 lt_prog_compiler_static='-qstaticlink'
9712 ;;
9713 *)
9714 case `$CC -V 2>&1 | sed 5q` in
9715 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*)
9716 # Sun Fortran 8.3 passes all unrecognized flags to the linker
9717 lt_prog_compiler_pic='-KPIC'
9718 lt_prog_compiler_static='-Bstatic'
9719 lt_prog_compiler_wl=''
9720 ;;
9721 *Sun\ F* | *Sun*Fortran*)
9722 lt_prog_compiler_pic='-KPIC'
9723 lt_prog_compiler_static='-Bstatic'
9724 lt_prog_compiler_wl='-Qoption ld '
9725 ;;
9726 *Sun\ C*)
9727 # Sun C 5.9
9728 lt_prog_compiler_pic='-KPIC'
9729 lt_prog_compiler_static='-Bstatic'
9730 lt_prog_compiler_wl='-Wl,'
9731 ;;
9732 *Intel*\ [CF]*Compiler*)
9733 lt_prog_compiler_wl='-Wl,'
9734 lt_prog_compiler_pic='-fPIC'
9735 lt_prog_compiler_static='-static'
9736 ;;
9737 *Portland\ Group*)
9738 lt_prog_compiler_wl='-Wl,'
9739 lt_prog_compiler_pic='-fpic'
9740 lt_prog_compiler_static='-Bstatic'
9741 ;;
9742 esac
9743 ;;
9744 esac
9745 ;;
9746
9747 newsos6)
9748 lt_prog_compiler_pic='-KPIC'
9749 lt_prog_compiler_static='-Bstatic'
9750 ;;
9751
9752 *nto* | *qnx*)
9753 # QNX uses GNU C++, but need to define -shared option too, otherwise
9754 # it will coredump.
9755 lt_prog_compiler_pic='-fPIC -shared'
9756 ;;
9757
9758 osf3* | osf4* | osf5*)
9759 lt_prog_compiler_wl='-Wl,'
9760 # All OSF/1 code is PIC.
9761 lt_prog_compiler_static='-non_shared'
9762 ;;
9763
9764 rdos*)
9765 lt_prog_compiler_static='-non_shared'
9766 ;;
9767
9768 solaris*)
9769 lt_prog_compiler_pic='-KPIC'
9770 lt_prog_compiler_static='-Bstatic'
9771 case $cc_basename in
9772 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
9773 lt_prog_compiler_wl='-Qoption ld ';;
9774 *)
9775 lt_prog_compiler_wl='-Wl,';;
9776 esac
9777 ;;
9778
9779 sunos4*)
9780 lt_prog_compiler_wl='-Qoption ld '
9781 lt_prog_compiler_pic='-PIC'
9782 lt_prog_compiler_static='-Bstatic'
9783 ;;
9784
9785 sysv4 | sysv4.2uw2* | sysv4.3*)
9786 lt_prog_compiler_wl='-Wl,'
9787 lt_prog_compiler_pic='-KPIC'
9788 lt_prog_compiler_static='-Bstatic'
9789 ;;
9790
9791 sysv4*MP*)
9792 if test -d /usr/nec ;then
9793 lt_prog_compiler_pic='-Kconform_pic'
9794 lt_prog_compiler_static='-Bstatic'
9795 fi
9796 ;;
9797
9798 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
9799 lt_prog_compiler_wl='-Wl,'
9800 lt_prog_compiler_pic='-KPIC'
9801 lt_prog_compiler_static='-Bstatic'
9802 ;;
9803
9804 unicos*)
9805 lt_prog_compiler_wl='-Wl,'
9806 lt_prog_compiler_can_build_shared=no
9807 ;;
9808
9809 uts4*)
9810 lt_prog_compiler_pic='-pic'
9811 lt_prog_compiler_static='-Bstatic'
9812 ;;
9813
9814 *)
9815 lt_prog_compiler_can_build_shared=no
9816 ;;
9817 esac
9818 fi
9819
9820case $host_os in
9821 # For platforms which do not support PIC, -DPIC is meaningless:
9822 *djgpp*)
9823 lt_prog_compiler_pic=
9824 ;;
9825 *)
9826 lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
9827 ;;
9828esac
9829
9830{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
9831$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
9832if ${lt_cv_prog_compiler_pic+:} false; then :
9833 $as_echo_n "(cached) " >&6
9834else
9835 lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
9836fi
9837{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5
9838$as_echo "$lt_cv_prog_compiler_pic" >&6; }
9839lt_prog_compiler_pic=$lt_cv_prog_compiler_pic
9840
9841#
9842# Check to make sure the PIC flag actually works.
9843#
9844if test -n "$lt_prog_compiler_pic"; then
9845 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
9846$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
9847if ${lt_cv_prog_compiler_pic_works+:} false; then :
9848 $as_echo_n "(cached) " >&6
9849else
9850 lt_cv_prog_compiler_pic_works=no
9851 ac_outfile=conftest.$ac_objext
9852 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
9853 lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
9854 # Insert the option either (1) after the last *FLAGS variable, or
9855 # (2) before a word containing "conftest.", or (3) at the end.
9856 # Note that $ac_compile itself does not contain backslashes and begins
9857 # with a dollar sign (not a hyphen), so the echo should work correctly.
9858 # The option is referenced via a variable to avoid confusing sed.
9859 lt_compile=`echo "$ac_compile" | $SED \
9860 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
9861 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
9862 -e 's:$: $lt_compiler_flag:'`
9863 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
9864 (eval "$lt_compile" 2>conftest.err)
9865 ac_status=$?
9866 cat conftest.err >&5
9867 echo "$as_me:$LINENO: \$? = $ac_status" >&5
9868 if (exit $ac_status) && test -s "$ac_outfile"; then
9869 # The compiler can only warn and ignore the option if not recognized
9870 # So say no if there are warnings other than the usual output.
9871 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
9872 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
9873 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
9874 lt_cv_prog_compiler_pic_works=yes
9875 fi
9876 fi
9877 $RM conftest*
9878
9879fi
9880{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
9881$as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
9882
9883if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
9884 case $lt_prog_compiler_pic in
9885 "" | " "*) ;;
9886 *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
9887 esac
9888else
9889 lt_prog_compiler_pic=
9890 lt_prog_compiler_can_build_shared=no
9891fi
9892
9893fi
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905#
9906# Check to make sure the static flag actually works.
9907#
9908wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
9909{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
9910$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
9911if ${lt_cv_prog_compiler_static_works+:} false; then :
9912 $as_echo_n "(cached) " >&6
9913else
9914 lt_cv_prog_compiler_static_works=no
9915 save_LDFLAGS="$LDFLAGS"
9916 LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
9917 echo "$lt_simple_link_test_code" > conftest.$ac_ext
9918 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
9919 # The linker can only warn and ignore the option if not recognized
9920 # So say no if there are warnings
9921 if test -s conftest.err; then
9922 # Append any errors to the config.log.
9923 cat conftest.err 1>&5
9924 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
9925 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
9926 if diff conftest.exp conftest.er2 >/dev/null; then
9927 lt_cv_prog_compiler_static_works=yes
9928 fi
9929 else
9930 lt_cv_prog_compiler_static_works=yes
9931 fi
9932 fi
9933 $RM -r conftest*
9934 LDFLAGS="$save_LDFLAGS"
9935
9936fi
9937{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
9938$as_echo "$lt_cv_prog_compiler_static_works" >&6; }
9939
9940if test x"$lt_cv_prog_compiler_static_works" = xyes; then
9941 :
9942else
9943 lt_prog_compiler_static=
9944fi
9945
9946
9947
9948
9949
9950
9951
9952 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
9953$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
9954if ${lt_cv_prog_compiler_c_o+:} false; then :
9955 $as_echo_n "(cached) " >&6
9956else
9957 lt_cv_prog_compiler_c_o=no
9958 $RM -r conftest 2>/dev/null
9959 mkdir conftest
9960 cd conftest
9961 mkdir out
9962 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
9963
9964 lt_compiler_flag="-o out/conftest2.$ac_objext"
9965 # Insert the option either (1) after the last *FLAGS variable, or
9966 # (2) before a word containing "conftest.", or (3) at the end.
9967 # Note that $ac_compile itself does not contain backslashes and begins
9968 # with a dollar sign (not a hyphen), so the echo should work correctly.
9969 lt_compile=`echo "$ac_compile" | $SED \
9970 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
9971 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
9972 -e 's:$: $lt_compiler_flag:'`
9973 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
9974 (eval "$lt_compile" 2>out/conftest.err)
9975 ac_status=$?
9976 cat out/conftest.err >&5
9977 echo "$as_me:$LINENO: \$? = $ac_status" >&5
9978 if (exit $ac_status) && test -s out/conftest2.$ac_objext
9979 then
9980 # The compiler can only warn and ignore the option if not recognized
9981 # So say no if there are warnings
9982 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
9983 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
9984 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
9985 lt_cv_prog_compiler_c_o=yes
9986 fi
9987 fi
9988 chmod u+w . 2>&5
9989 $RM conftest*
9990 # SGI C++ compiler will create directory out/ii_files/ for
9991 # template instantiation
9992 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
9993 $RM out/* && rmdir out
9994 cd ..
9995 $RM -r conftest
9996 $RM conftest*
9997
9998fi
9999{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
10000$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
10001
10002
10003
10004
10005
10006
10007 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
10008$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
10009if ${lt_cv_prog_compiler_c_o+:} false; then :
10010 $as_echo_n "(cached) " >&6
10011else
10012 lt_cv_prog_compiler_c_o=no
10013 $RM -r conftest 2>/dev/null
10014 mkdir conftest
10015 cd conftest
10016 mkdir out
10017 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
10018
10019 lt_compiler_flag="-o out/conftest2.$ac_objext"
10020 # Insert the option either (1) after the last *FLAGS variable, or
10021 # (2) before a word containing "conftest.", or (3) at the end.
10022 # Note that $ac_compile itself does not contain backslashes and begins
10023 # with a dollar sign (not a hyphen), so the echo should work correctly.
10024 lt_compile=`echo "$ac_compile" | $SED \
10025 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
10026 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
10027 -e 's:$: $lt_compiler_flag:'`
10028 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
10029 (eval "$lt_compile" 2>out/conftest.err)
10030 ac_status=$?
10031 cat out/conftest.err >&5
10032 echo "$as_me:$LINENO: \$? = $ac_status" >&5
10033 if (exit $ac_status) && test -s out/conftest2.$ac_objext
10034 then
10035 # The compiler can only warn and ignore the option if not recognized
10036 # So say no if there are warnings
10037 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
10038 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
10039 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
10040 lt_cv_prog_compiler_c_o=yes
10041 fi
10042 fi
10043 chmod u+w . 2>&5
10044 $RM conftest*
10045 # SGI C++ compiler will create directory out/ii_files/ for
10046 # template instantiation
10047 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
10048 $RM out/* && rmdir out
10049 cd ..
10050 $RM -r conftest
10051 $RM conftest*
10052
10053fi
10054{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
10055$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
10056
10057
10058
10059
10060hard_links="nottested"
10061if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then
10062 # do not overwrite the value of need_locks provided by the user
10063 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
10064$as_echo_n "checking if we can lock with hard links... " >&6; }
10065 hard_links=yes
10066 $RM conftest*
10067 ln conftest.a conftest.b 2>/dev/null && hard_links=no
10068 touch conftest.a
10069 ln conftest.a conftest.b 2>&5 || hard_links=no
10070 ln conftest.a conftest.b 2>/dev/null && hard_links=no
10071 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
10072$as_echo "$hard_links" >&6; }
10073 if test "$hard_links" = no; then
10074 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
10075$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
10076 need_locks=warn
10077 fi
10078else
10079 need_locks=no
10080fi
10081
10082
10083
10084
10085
10086
10087 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
10088$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
10089
10090 runpath_var=
10091 allow_undefined_flag=
10092 always_export_symbols=no
10093 archive_cmds=
10094 archive_expsym_cmds=
10095 compiler_needs_object=no
10096 enable_shared_with_static_runtimes=no
10097 export_dynamic_flag_spec=
10098 export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
10099 hardcode_automatic=no
10100 hardcode_direct=no
10101 hardcode_direct_absolute=no
10102 hardcode_libdir_flag_spec=
10103 hardcode_libdir_separator=
10104 hardcode_minus_L=no
10105 hardcode_shlibpath_var=unsupported
10106 inherit_rpath=no
10107 link_all_deplibs=unknown
10108 module_cmds=
10109 module_expsym_cmds=
10110 old_archive_from_new_cmds=
10111 old_archive_from_expsyms_cmds=
10112 thread_safe_flag_spec=
10113 whole_archive_flag_spec=
10114 # include_expsyms should be a list of space-separated symbols to be *always*
10115 # included in the symbol list
10116 include_expsyms=
10117 # exclude_expsyms can be an extended regexp of symbols to exclude
10118 # it will be wrapped by ` (' and `)$', so one must not match beginning or
10119 # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
10120 # as well as any symbol that contains `d'.
10121 exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
10122 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
10123 # platforms (ab)use it in PIC code, but their linkers get confused if
10124 # the symbol is explicitly referenced. Since portable code cannot
10125 # rely on this symbol name, it's probably fine to never include it in
10126 # preloaded symbol tables.
10127 # Exclude shared library initialization/finalization symbols.
10128 extract_expsyms_cmds=
10129
10130 case $host_os in
10131 cygwin* | mingw* | pw32* | cegcc*)
10132 # FIXME: the MSVC++ port hasn't been tested in a loooong time
10133 # When not using gcc, we currently assume that we are using
10134 # Microsoft Visual C++.
10135 if test "$GCC" != yes; then
10136 with_gnu_ld=no
10137 fi
10138 ;;
10139 interix*)
10140 # we just hope/assume this is gcc and not c89 (= MSVC++)
10141 with_gnu_ld=yes
10142 ;;
10143 openbsd*)
10144 with_gnu_ld=no
10145 ;;
10146 esac
10147
10148 ld_shlibs=yes
10149
10150 # On some targets, GNU ld is compatible enough with the native linker
10151 # that we're better off using the native interface for both.
10152 lt_use_gnu_ld_interface=no
10153 if test "$with_gnu_ld" = yes; then
10154 case $host_os in
10155 aix*)
10156 # The AIX port of GNU ld has always aspired to compatibility
10157 # with the native linker. However, as the warning in the GNU ld
10158 # block says, versions before 2.19.5* couldn't really create working
10159 # shared libraries, regardless of the interface used.
10160 case `$LD -v 2>&1` in
10161 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
10162 *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;;
10163 *\ \(GNU\ Binutils\)\ [3-9]*) ;;
10164 *)
10165 lt_use_gnu_ld_interface=yes
10166 ;;
10167 esac
10168 ;;
10169 *)
10170 lt_use_gnu_ld_interface=yes
10171 ;;
10172 esac
10173 fi
10174
10175 if test "$lt_use_gnu_ld_interface" = yes; then
10176 # If archive_cmds runs LD, not CC, wlarc should be empty
10177 wlarc='${wl}'
10178
10179 # Set some defaults for GNU ld with shared library support. These
10180 # are reset later if shared libraries are not supported. Putting them
10181 # here allows them to be overridden if necessary.
10182 runpath_var=LD_RUN_PATH
10183 hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
10184 export_dynamic_flag_spec='${wl}--export-dynamic'
10185 # ancient GNU ld didn't support --whole-archive et. al.
10186 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
10187 whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
10188 else
10189 whole_archive_flag_spec=
10190 fi
10191 supports_anon_versioning=no
10192 case `$LD -v 2>&1` in
10193 *GNU\ gold*) supports_anon_versioning=yes ;;
10194 *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
10195 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
10196 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
10197 *\ 2.11.*) ;; # other 2.11 versions
10198 *) supports_anon_versioning=yes ;;
10199 esac
10200
10201 # See if GNU ld supports shared libraries.
10202 case $host_os in
10203 aix[3-9]*)
10204 # On AIX/PPC, the GNU linker is very broken
10205 if test "$host_cpu" != ia64; then
10206 ld_shlibs=no
10207 cat <<_LT_EOF 1>&2
10208
10209*** Warning: the GNU linker, at least up to release 2.19, is reported
10210*** to be unable to reliably create shared libraries on AIX.
10211*** Therefore, libtool is disabling shared libraries support. If you
10212*** really care for shared libraries, you may want to install binutils
10213*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
10214*** You will then need to restart the configuration process.
10215
10216_LT_EOF
10217 fi
10218 ;;
10219
10220 amigaos*)
10221 case $host_cpu in
10222 powerpc)
10223 # see comment about AmigaOS4 .so support
10224 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
10225 archive_expsym_cmds=''
10226 ;;
10227 m68k)
10228 archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
10229 hardcode_libdir_flag_spec='-L$libdir'
10230 hardcode_minus_L=yes
10231 ;;
10232 esac
10233 ;;
10234
10235 beos*)
10236 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
10237 allow_undefined_flag=unsupported
10238 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
10239 # support --undefined. This deserves some investigation. FIXME
10240 archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
10241 else
10242 ld_shlibs=no
10243 fi
10244 ;;
10245
10246 cygwin* | mingw* | pw32* | cegcc*)
10247 # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
10248 # as there is no search path for DLLs.
10249 hardcode_libdir_flag_spec='-L$libdir'
10250 export_dynamic_flag_spec='${wl}--export-all-symbols'
10251 allow_undefined_flag=unsupported
10252 always_export_symbols=no
10253 enable_shared_with_static_runtimes=yes
10254 export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'
10255 exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'
10256
10257 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
10258 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
10259 # If the export-symbols file already is a .def file (1st line
10260 # is EXPORTS), use it as is; otherwise, prepend...
10261 archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
10262 cp $export_symbols $output_objdir/$soname.def;
10263 else
10264 echo EXPORTS > $output_objdir/$soname.def;
10265 cat $export_symbols >> $output_objdir/$soname.def;
10266 fi~
10267 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
10268 else
10269 ld_shlibs=no
10270 fi
10271 ;;
10272
10273 haiku*)
10274 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
10275 link_all_deplibs=yes
10276 ;;
10277
10278 interix[3-9]*)
10279 hardcode_direct=no
10280 hardcode_shlibpath_var=no
10281 hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
10282 export_dynamic_flag_spec='${wl}-E'
10283 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
10284 # Instead, shared libraries are loaded at an image base (0x10000000 by
10285 # default) and relocated if they conflict, which is a slow very memory
10286 # consuming and fragmenting process. To avoid this, we pick a random,
10287 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
10288 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
10289 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
10290 archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
10291 ;;
10292
10293 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
10294 tmp_diet=no
10295 if test "$host_os" = linux-dietlibc; then
10296 case $cc_basename in
10297 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
10298 esac
10299 fi
10300 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
10301 && test "$tmp_diet" = no
10302 then
10303 tmp_addflag=' $pic_flag'
10304 tmp_sharedflag='-shared'
10305 case $cc_basename,$host_cpu in
10306 pgcc*) # Portland Group C compiler
10307 whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
10308 tmp_addflag=' $pic_flag'
10309 ;;
10310 pgf77* | pgf90* | pgf95* | pgfortran*)
10311 # Portland Group f77 and f90 compilers
10312 whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
10313 tmp_addflag=' $pic_flag -Mnomain' ;;
10314 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
10315 tmp_addflag=' -i_dynamic' ;;
10316 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
10317 tmp_addflag=' -i_dynamic -nofor_main' ;;
10318 ifc* | ifort*) # Intel Fortran compiler
10319 tmp_addflag=' -nofor_main' ;;
10320 lf95*) # Lahey Fortran 8.1
10321 whole_archive_flag_spec=
10322 tmp_sharedflag='--shared' ;;
10323 xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)
10324 tmp_sharedflag='-qmkshrobj'
10325 tmp_addflag= ;;
10326 nvcc*) # Cuda Compiler Driver 2.2
10327 whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
10328 compiler_needs_object=yes
10329 ;;
10330 esac
10331 case `$CC -V 2>&1 | sed 5q` in
10332 *Sun\ C*) # Sun C 5.9
10333 whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
10334 compiler_needs_object=yes
10335 tmp_sharedflag='-G' ;;
10336 *Sun\ F*) # Sun Fortran 8.3
10337 tmp_sharedflag='-G' ;;
10338 esac
10339 archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
10340
10341 if test "x$supports_anon_versioning" = xyes; then
10342 archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
10343 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
10344 echo "local: *; };" >> $output_objdir/$libname.ver~
10345 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
10346 fi
10347
10348 case $cc_basename in
10349 xlf* | bgf* | bgxlf* | mpixlf*)
10350 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
10351 whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
10352 hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
10353 archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
10354 if test "x$supports_anon_versioning" = xyes; then
10355 archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
10356 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
10357 echo "local: *; };" >> $output_objdir/$libname.ver~
10358 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
10359 fi
10360 ;;
10361 esac
10362 else
10363 ld_shlibs=no
10364 fi
10365 ;;
10366
10367 netbsd*)
10368 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
10369 archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
10370 wlarc=
10371 else
10372 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
10373 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
10374 fi
10375 ;;
10376
10377 solaris*)
10378 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
10379 ld_shlibs=no
10380 cat <<_LT_EOF 1>&2
10381
10382*** Warning: The releases 2.8.* of the GNU linker cannot reliably
10383*** create shared libraries on Solaris systems. Therefore, libtool
10384*** is disabling shared libraries support. We urge you to upgrade GNU
10385*** binutils to release 2.9.1 or newer. Another option is to modify
10386*** your PATH or compiler configuration so that the native linker is
10387*** used, and then restart.
10388
10389_LT_EOF
10390 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
10391 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
10392 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
10393 else
10394 ld_shlibs=no
10395 fi
10396 ;;
10397
10398 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
10399 case `$LD -v 2>&1` in
10400 *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
10401 ld_shlibs=no
10402 cat <<_LT_EOF 1>&2
10403
10404*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
10405*** reliably create shared libraries on SCO systems. Therefore, libtool
10406*** is disabling shared libraries support. We urge you to upgrade GNU
10407*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
10408*** your PATH or compiler configuration so that the native linker is
10409*** used, and then restart.
10410
10411_LT_EOF
10412 ;;
10413 *)
10414 # For security reasons, it is highly recommended that you always
10415 # use absolute paths for naming shared libraries, and exclude the
10416 # DT_RUNPATH tag from executables and libraries. But doing so
10417 # requires that you compile everything twice, which is a pain.
10418 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
10419 hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
10420 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
10421 archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
10422 else
10423 ld_shlibs=no
10424 fi
10425 ;;
10426 esac
10427 ;;
10428
10429 sunos4*)
10430 archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
10431 wlarc=
10432 hardcode_direct=yes
10433 hardcode_shlibpath_var=no
10434 ;;
10435
10436 *)
10437 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
10438 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
10439 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
10440 else
10441 ld_shlibs=no
10442 fi
10443 ;;
10444 esac
10445
10446 if test "$ld_shlibs" = no; then
10447 runpath_var=
10448 hardcode_libdir_flag_spec=
10449 export_dynamic_flag_spec=
10450 whole_archive_flag_spec=
10451 fi
10452 else
10453 # PORTME fill in a description of your system's linker (not GNU ld)
10454 case $host_os in
10455 aix3*)
10456 allow_undefined_flag=unsupported
10457 always_export_symbols=yes
10458 archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
10459 # Note: this linker hardcodes the directories in LIBPATH if there
10460 # are no directories specified by -L.
10461 hardcode_minus_L=yes
10462 if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
10463 # Neither direct hardcoding nor static linking is supported with a
10464 # broken collect2.
10465 hardcode_direct=unsupported
10466 fi
10467 ;;
10468
10469 aix[4-9]*)
10470 if test "$host_cpu" = ia64; then
10471 # On IA64, the linker does run time linking by default, so we don't
10472 # have to do anything special.
10473 aix_use_runtimelinking=no
10474 exp_sym_flag='-Bexport'
10475 no_entry_flag=""
10476 else
10477 # If we're using GNU nm, then we don't want the "-C" option.
10478 # -C means demangle to AIX nm, but means don't demangle with GNU nm
10479 # Also, AIX nm treats weak defined symbols like other global
10480 # defined symbols, whereas GNU nm marks them as "W".
10481 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
10482 export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
10483 else
10484 export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
10485 fi
10486 aix_use_runtimelinking=no
10487
10488 # Test if we are trying to use run time linking or normal
10489 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
10490 # need to do runtime linking.
10491 case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
10492 for ld_flag in $LDFLAGS; do
10493 if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
10494 aix_use_runtimelinking=yes
10495 break
10496 fi
10497 done
10498 ;;
10499 esac
10500
10501 exp_sym_flag='-bexport'
10502 no_entry_flag='-bnoentry'
10503 fi
10504
10505 # When large executables or shared objects are built, AIX ld can
10506 # have problems creating the table of contents. If linking a library
10507 # or program results in "error TOC overflow" add -mminimal-toc to
10508 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
10509 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
10510
10511 archive_cmds=''
10512 hardcode_direct=yes
10513 hardcode_direct_absolute=yes
10514 hardcode_libdir_separator=':'
10515 link_all_deplibs=yes
10516 file_list_spec='${wl}-f,'
10517
10518 if test "$GCC" = yes; then
10519 case $host_os in aix4.[012]|aix4.[012].*)
10520 # We only want to do this on AIX 4.2 and lower, the check
10521 # below for broken collect2 doesn't work under 4.3+
10522 collect2name=`${CC} -print-prog-name=collect2`
10523 if test -f "$collect2name" &&
10524 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
10525 then
10526 # We have reworked collect2
10527 :
10528 else
10529 # We have old collect2
10530 hardcode_direct=unsupported
10531 # It fails to find uninstalled libraries when the uninstalled
10532 # path is not listed in the libpath. Setting hardcode_minus_L
10533 # to unsupported forces relinking
10534 hardcode_minus_L=yes
10535 hardcode_libdir_flag_spec='-L$libdir'
10536 hardcode_libdir_separator=
10537 fi
10538 ;;
10539 esac
10540 shared_flag='-shared'
10541 if test "$aix_use_runtimelinking" = yes; then
10542 shared_flag="$shared_flag "'${wl}-G'
10543 fi
10544 else
10545 # not using gcc
10546 if test "$host_cpu" = ia64; then
10547 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
10548 # chokes on -Wl,-G. The following line is correct:
10549 shared_flag='-G'
10550 else
10551 if test "$aix_use_runtimelinking" = yes; then
10552 shared_flag='${wl}-G'
10553 else
10554 shared_flag='${wl}-bM:SRE'
10555 fi
10556 fi
10557 fi
10558
10559 export_dynamic_flag_spec='${wl}-bexpall'
10560 # It seems that -bexpall does not export symbols beginning with
10561 # underscore (_), so it is better to generate a list of symbols to export.
10562 always_export_symbols=yes
10563 if test "$aix_use_runtimelinking" = yes; then
10564 # Warning - without using the other runtime loading flags (-brtl),
10565 # -berok will link without error, but may produce a broken library.
10566 allow_undefined_flag='-berok'
10567 # Determine the default libpath from the value encoded in an
10568 # empty executable.
10569 if test "${lt_cv_aix_libpath+set}" = set; then
10570 aix_libpath=$lt_cv_aix_libpath
10571else
10572 if ${lt_cv_aix_libpath_+:} false; then :
10573 $as_echo_n "(cached) " >&6
10574else
10575 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10576/* end confdefs.h. */
10577
10578int
10579main ()
10580{
10581
10582 ;
10583 return 0;
10584}
10585_ACEOF
10586if ac_fn_c_try_link "$LINENO"; then :
10587
10588 lt_aix_libpath_sed='
10589 /Import File Strings/,/^$/ {
10590 /^0/ {
10591 s/^0 *\([^ ]*\) *$/\1/
10592 p
10593 }
10594 }'
10595 lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
10596 # Check for a 64-bit object if we didn't find anything.
10597 if test -z "$lt_cv_aix_libpath_"; then
10598 lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
10599 fi
10600fi
10601rm -f core conftest.err conftest.$ac_objext \
10602 conftest$ac_exeext conftest.$ac_ext
10603 if test -z "$lt_cv_aix_libpath_"; then
10604 lt_cv_aix_libpath_="/usr/lib:/lib"
10605 fi
10606
10607fi
10608
10609 aix_libpath=$lt_cv_aix_libpath_
10610fi
10611
10612 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
10613 archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
10614 else
10615 if test "$host_cpu" = ia64; then
10616 hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
10617 allow_undefined_flag="-z nodefs"
10618 archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
10619 else
10620 # Determine the default libpath from the value encoded in an
10621 # empty executable.
10622 if test "${lt_cv_aix_libpath+set}" = set; then
10623 aix_libpath=$lt_cv_aix_libpath
10624else
10625 if ${lt_cv_aix_libpath_+:} false; then :
10626 $as_echo_n "(cached) " >&6
10627else
10628 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10629/* end confdefs.h. */
10630
10631int
10632main ()
10633{
10634
10635 ;
10636 return 0;
10637}
10638_ACEOF
10639if ac_fn_c_try_link "$LINENO"; then :
10640
10641 lt_aix_libpath_sed='
10642 /Import File Strings/,/^$/ {
10643 /^0/ {
10644 s/^0 *\([^ ]*\) *$/\1/
10645 p
10646 }
10647 }'
10648 lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
10649 # Check for a 64-bit object if we didn't find anything.
10650 if test -z "$lt_cv_aix_libpath_"; then
10651 lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
10652 fi
10653fi
10654rm -f core conftest.err conftest.$ac_objext \
10655 conftest$ac_exeext conftest.$ac_ext
10656 if test -z "$lt_cv_aix_libpath_"; then
10657 lt_cv_aix_libpath_="/usr/lib:/lib"
10658 fi
10659
10660fi
10661
10662 aix_libpath=$lt_cv_aix_libpath_
10663fi
10664
10665 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
10666 # Warning - without using the other run time loading flags,
10667 # -berok will link without error, but may produce a broken library.
10668 no_undefined_flag=' ${wl}-bernotok'
10669 allow_undefined_flag=' ${wl}-berok'
10670 if test "$with_gnu_ld" = yes; then
10671 # We only use this code for GNU lds that support --whole-archive.
10672 whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
10673 else
10674 # Exported symbols can be pulled into shared objects from archives
10675 whole_archive_flag_spec='$convenience'
10676 fi
10677 archive_cmds_need_lc=yes
10678 # This is similar to how AIX traditionally builds its shared libraries.
10679 archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
10680 fi
10681 fi
10682 ;;
10683
10684 amigaos*)
10685 case $host_cpu in
10686 powerpc)
10687 # see comment about AmigaOS4 .so support
10688 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
10689 archive_expsym_cmds=''
10690 ;;
10691 m68k)
10692 archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
10693 hardcode_libdir_flag_spec='-L$libdir'
10694 hardcode_minus_L=yes
10695 ;;
10696 esac
10697 ;;
10698
10699 bsdi[45]*)
10700 export_dynamic_flag_spec=-rdynamic
10701 ;;
10702
10703 cygwin* | mingw* | pw32* | cegcc*)
10704 # When not using gcc, we currently assume that we are using
10705 # Microsoft Visual C++.
10706 # hardcode_libdir_flag_spec is actually meaningless, as there is
10707 # no search path for DLLs.
10708 case $cc_basename in
10709 cl*)
10710 # Native MSVC
10711 hardcode_libdir_flag_spec=' '
10712 allow_undefined_flag=unsupported
10713 always_export_symbols=yes
10714 file_list_spec='@'
10715 # Tell ltmain to make .lib files, not .a files.
10716 libext=lib
10717 # Tell ltmain to make .dll files, not .so files.
10718 shrext_cmds=".dll"
10719 # FIXME: Setting linknames here is a bad hack.
10720 archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
10721 archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
10722 sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
10723 else
10724 sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
10725 fi~
10726 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
10727 linknames='
10728 # The linker will not automatically build a static lib if we build a DLL.
10729 # _LT_TAGVAR(old_archive_from_new_cmds, )='true'
10730 enable_shared_with_static_runtimes=yes
10731 exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
10732 export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
10733 # Don't use ranlib
10734 old_postinstall_cmds='chmod 644 $oldlib'
10735 postlink_cmds='lt_outputfile="@OUTPUT@"~
10736 lt_tool_outputfile="@TOOL_OUTPUT@"~
10737 case $lt_outputfile in
10738 *.exe|*.EXE) ;;
10739 *)
10740 lt_outputfile="$lt_outputfile.exe"
10741 lt_tool_outputfile="$lt_tool_outputfile.exe"
10742 ;;
10743 esac~
10744 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
10745 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
10746 $RM "$lt_outputfile.manifest";
10747 fi'
10748 ;;
10749 *)
10750 # Assume MSVC wrapper
10751 hardcode_libdir_flag_spec=' '
10752 allow_undefined_flag=unsupported
10753 # Tell ltmain to make .lib files, not .a files.
10754 libext=lib
10755 # Tell ltmain to make .dll files, not .so files.
10756 shrext_cmds=".dll"
10757 # FIXME: Setting linknames here is a bad hack.
10758 archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
10759 # The linker will automatically build a .lib file if we build a DLL.
10760 old_archive_from_new_cmds='true'
10761 # FIXME: Should let the user specify the lib program.
10762 old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'
10763 enable_shared_with_static_runtimes=yes
10764 ;;
10765 esac
10766 ;;
10767
10768 darwin* | rhapsody*)
10769
10770
10771 archive_cmds_need_lc=no
10772 hardcode_direct=no
10773 hardcode_automatic=yes
10774 hardcode_shlibpath_var=unsupported
10775 if test "$lt_cv_ld_force_load" = "yes"; then
10776 whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
10777
10778 else
10779 whole_archive_flag_spec=''
10780 fi
10781 link_all_deplibs=yes
10782 allow_undefined_flag="$_lt_dar_allow_undefined"
10783 case $cc_basename in
10784 ifort*) _lt_dar_can_shared=yes ;;
10785 *) _lt_dar_can_shared=$GCC ;;
10786 esac
10787 if test "$_lt_dar_can_shared" = "yes"; then
10788 output_verbose_link_cmd=func_echo_all
10789 archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
10790 module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
10791 archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
10792 module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
10793
10794 else
10795 ld_shlibs=no
10796 fi
10797
10798 ;;
10799
10800 dgux*)
10801 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
10802 hardcode_libdir_flag_spec='-L$libdir'
10803 hardcode_shlibpath_var=no
10804 ;;
10805
10806 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
10807 # support. Future versions do this automatically, but an explicit c++rt0.o
10808 # does not break anything, and helps significantly (at the cost of a little
10809 # extra space).
10810 freebsd2.2*)
10811 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
10812 hardcode_libdir_flag_spec='-R$libdir'
10813 hardcode_direct=yes
10814 hardcode_shlibpath_var=no
10815 ;;
10816
10817 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
10818 freebsd2.*)
10819 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
10820 hardcode_direct=yes
10821 hardcode_minus_L=yes
10822 hardcode_shlibpath_var=no
10823 ;;
10824
10825 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
10826 freebsd* | dragonfly*)
10827 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
10828 hardcode_libdir_flag_spec='-R$libdir'
10829 hardcode_direct=yes
10830 hardcode_shlibpath_var=no
10831 ;;
10832
10833 hpux9*)
10834 if test "$GCC" = yes; then
10835 archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
10836 else
10837 archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
10838 fi
10839 hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
10840 hardcode_libdir_separator=:
10841 hardcode_direct=yes
10842
10843 # hardcode_minus_L: Not really in the search PATH,
10844 # but as the default location of the library.
10845 hardcode_minus_L=yes
10846 export_dynamic_flag_spec='${wl}-E'
10847 ;;
10848
10849 hpux10*)
10850 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
10851 archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
10852 else
10853 archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
10854 fi
10855 if test "$with_gnu_ld" = no; then
10856 hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
10857 hardcode_libdir_separator=:
10858 hardcode_direct=yes
10859 hardcode_direct_absolute=yes
10860 export_dynamic_flag_spec='${wl}-E'
10861 # hardcode_minus_L: Not really in the search PATH,
10862 # but as the default location of the library.
10863 hardcode_minus_L=yes
10864 fi
10865 ;;
10866
10867 hpux11*)
10868 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
10869 case $host_cpu in
10870 hppa*64*)
10871 archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
10872 ;;
10873 ia64*)
10874 archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
10875 ;;
10876 *)
10877 archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
10878 ;;
10879 esac
10880 else
10881 case $host_cpu in
10882 hppa*64*)
10883 archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
10884 ;;
10885 ia64*)
10886 archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
10887 ;;
10888 *)
10889
10890 # Older versions of the 11.00 compiler do not understand -b yet
10891 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
10892 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5
10893$as_echo_n "checking if $CC understands -b... " >&6; }
10894if ${lt_cv_prog_compiler__b+:} false; then :
10895 $as_echo_n "(cached) " >&6
10896else
10897 lt_cv_prog_compiler__b=no
10898 save_LDFLAGS="$LDFLAGS"
10899 LDFLAGS="$LDFLAGS -b"
10900 echo "$lt_simple_link_test_code" > conftest.$ac_ext
10901 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
10902 # The linker can only warn and ignore the option if not recognized
10903 # So say no if there are warnings
10904 if test -s conftest.err; then
10905 # Append any errors to the config.log.
10906 cat conftest.err 1>&5
10907 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
10908 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
10909 if diff conftest.exp conftest.er2 >/dev/null; then
10910 lt_cv_prog_compiler__b=yes
10911 fi
10912 else
10913 lt_cv_prog_compiler__b=yes
10914 fi
10915 fi
10916 $RM -r conftest*
10917 LDFLAGS="$save_LDFLAGS"
10918
10919fi
10920{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
10921$as_echo "$lt_cv_prog_compiler__b" >&6; }
10922
10923if test x"$lt_cv_prog_compiler__b" = xyes; then
10924 archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
10925else
10926 archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
10927fi
10928
10929 ;;
10930 esac
10931 fi
10932 if test "$with_gnu_ld" = no; then
10933 hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
10934 hardcode_libdir_separator=:
10935
10936 case $host_cpu in
10937 hppa*64*|ia64*)
10938 hardcode_direct=no
10939 hardcode_shlibpath_var=no
10940 ;;
10941 *)
10942 hardcode_direct=yes
10943 hardcode_direct_absolute=yes
10944 export_dynamic_flag_spec='${wl}-E'
10945
10946 # hardcode_minus_L: Not really in the search PATH,
10947 # but as the default location of the library.
10948 hardcode_minus_L=yes
10949 ;;
10950 esac
10951 fi
10952 ;;
10953
10954 irix5* | irix6* | nonstopux*)
10955 if test "$GCC" = yes; then
10956 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
10957 # Try to use the -exported_symbol ld option, if it does not
10958 # work, assume that -exports_file does not work either and
10959 # implicitly export all symbols.
10960 # This should be the same for all languages, so no per-tag cache variable.
10961 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
10962$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
10963if ${lt_cv_irix_exported_symbol+:} false; then :
10964 $as_echo_n "(cached) " >&6
10965else
10966 save_LDFLAGS="$LDFLAGS"
10967 LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
10968 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
10969/* end confdefs.h. */
10970int foo (void) { return 0; }
10971_ACEOF
10972if ac_fn_c_try_link "$LINENO"; then :
10973 lt_cv_irix_exported_symbol=yes
10974else
10975 lt_cv_irix_exported_symbol=no
10976fi
10977rm -f core conftest.err conftest.$ac_objext \
10978 conftest$ac_exeext conftest.$ac_ext
10979 LDFLAGS="$save_LDFLAGS"
10980fi
10981{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
10982$as_echo "$lt_cv_irix_exported_symbol" >&6; }
10983 if test "$lt_cv_irix_exported_symbol" = yes; then
10984 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
10985 fi
10986 else
10987 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
10988 archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
10989 fi
10990 archive_cmds_need_lc='no'
10991 hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
10992 hardcode_libdir_separator=:
10993 inherit_rpath=yes
10994 link_all_deplibs=yes
10995 ;;
10996
10997 netbsd*)
10998 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
10999 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
11000 else
11001 archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
11002 fi
11003 hardcode_libdir_flag_spec='-R$libdir'
11004 hardcode_direct=yes
11005 hardcode_shlibpath_var=no
11006 ;;
11007
11008 newsos6)
11009 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
11010 hardcode_direct=yes
11011 hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
11012 hardcode_libdir_separator=:
11013 hardcode_shlibpath_var=no
11014 ;;
11015
11016 *nto* | *qnx*)
11017 ;;
11018
11019 openbsd*)
11020 if test -f /usr/libexec/ld.so; then
11021 hardcode_direct=yes
11022 hardcode_shlibpath_var=no
11023 hardcode_direct_absolute=yes
11024 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
11025 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
11026 archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
11027 hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
11028 export_dynamic_flag_spec='${wl}-E'
11029 else
11030 case $host_os in
11031 openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
11032 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
11033 hardcode_libdir_flag_spec='-R$libdir'
11034 ;;
11035 *)
11036 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
11037 hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
11038 ;;
11039 esac
11040 fi
11041 else
11042 ld_shlibs=no
11043 fi
11044 ;;
11045
11046 os2*)
11047 hardcode_libdir_flag_spec='-L$libdir'
11048 hardcode_minus_L=yes
11049 allow_undefined_flag=unsupported
11050 archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
11051 old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
11052 ;;
11053
11054 osf3*)
11055 if test "$GCC" = yes; then
11056 allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
11057 archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
11058 else
11059 allow_undefined_flag=' -expect_unresolved \*'
11060 archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
11061 fi
11062 archive_cmds_need_lc='no'
11063 hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
11064 hardcode_libdir_separator=:
11065 ;;
11066
11067 osf4* | osf5*) # as osf3* with the addition of -msym flag
11068 if test "$GCC" = yes; then
11069 allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
11070 archive_cmds='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
11071 hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
11072 else
11073 allow_undefined_flag=' -expect_unresolved \*'
11074 archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
11075 archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
11076 $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
11077
11078 # Both c and cxx compiler support -rpath directly
11079 hardcode_libdir_flag_spec='-rpath $libdir'
11080 fi
11081 archive_cmds_need_lc='no'
11082 hardcode_libdir_separator=:
11083 ;;
11084
11085 solaris*)
11086 no_undefined_flag=' -z defs'
11087 if test "$GCC" = yes; then
11088 wlarc='${wl}'
11089 archive_cmds='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
11090 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
11091 $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
11092 else
11093 case `$CC -V 2>&1` in
11094 *"Compilers 5.0"*)
11095 wlarc=''
11096 archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
11097 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
11098 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
11099 ;;
11100 *)
11101 wlarc='${wl}'
11102 archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
11103 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
11104 $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
11105 ;;
11106 esac
11107 fi
11108 hardcode_libdir_flag_spec='-R$libdir'
11109 hardcode_shlibpath_var=no
11110 case $host_os in
11111 solaris2.[0-5] | solaris2.[0-5].*) ;;
11112 *)
11113 # The compiler driver will combine and reorder linker options,
11114 # but understands `-z linker_flag'. GCC discards it without `$wl',
11115 # but is careful enough not to reorder.
11116 # Supported since Solaris 2.6 (maybe 2.5.1?)
11117 if test "$GCC" = yes; then
11118 whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
11119 else
11120 whole_archive_flag_spec='-z allextract$convenience -z defaultextract'
11121 fi
11122 ;;
11123 esac
11124 link_all_deplibs=yes
11125 ;;
11126
11127 sunos4*)
11128 if test "x$host_vendor" = xsequent; then
11129 # Use $CC to link under sequent, because it throws in some extra .o
11130 # files that make .init and .fini sections work.
11131 archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
11132 else
11133 archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
11134 fi
11135 hardcode_libdir_flag_spec='-L$libdir'
11136 hardcode_direct=yes
11137 hardcode_minus_L=yes
11138 hardcode_shlibpath_var=no
11139 ;;
11140
11141 sysv4)
11142 case $host_vendor in
11143 sni)
11144 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
11145 hardcode_direct=yes # is this really true???
11146 ;;
11147 siemens)
11148 ## LD is ld it makes a PLAMLIB
11149 ## CC just makes a GrossModule.
11150 archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
11151 reload_cmds='$CC -r -o $output$reload_objs'
11152 hardcode_direct=no
11153 ;;
11154 motorola)
11155 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
11156 hardcode_direct=no #Motorola manual says yes, but my tests say they lie
11157 ;;
11158 esac
11159 runpath_var='LD_RUN_PATH'
11160 hardcode_shlibpath_var=no
11161 ;;
11162
11163 sysv4.3*)
11164 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
11165 hardcode_shlibpath_var=no
11166 export_dynamic_flag_spec='-Bexport'
11167 ;;
11168
11169 sysv4*MP*)
11170 if test -d /usr/nec; then
11171 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
11172 hardcode_shlibpath_var=no
11173 runpath_var=LD_RUN_PATH
11174 hardcode_runpath_var=yes
11175 ld_shlibs=yes
11176 fi
11177 ;;
11178
11179 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
11180 no_undefined_flag='${wl}-z,text'
11181 archive_cmds_need_lc=no
11182 hardcode_shlibpath_var=no
11183 runpath_var='LD_RUN_PATH'
11184
11185 if test "$GCC" = yes; then
11186 archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
11187 archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
11188 else
11189 archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
11190 archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
11191 fi
11192 ;;
11193
11194 sysv5* | sco3.2v5* | sco5v6*)
11195 # Note: We can NOT use -z defs as we might desire, because we do not
11196 # link with -lc, and that would cause any symbols used from libc to
11197 # always be unresolved, which means just about no library would
11198 # ever link correctly. If we're not using GNU ld we use -z text
11199 # though, which does catch some bad symbols but isn't as heavy-handed
11200 # as -z defs.
11201 no_undefined_flag='${wl}-z,text'
11202 allow_undefined_flag='${wl}-z,nodefs'
11203 archive_cmds_need_lc=no
11204 hardcode_shlibpath_var=no
11205 hardcode_libdir_flag_spec='${wl}-R,$libdir'
11206 hardcode_libdir_separator=':'
11207 link_all_deplibs=yes
11208 export_dynamic_flag_spec='${wl}-Bexport'
11209 runpath_var='LD_RUN_PATH'
11210
11211 if test "$GCC" = yes; then
11212 archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
11213 archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
11214 else
11215 archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
11216 archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
11217 fi
11218 ;;
11219
11220 uts4*)
11221 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
11222 hardcode_libdir_flag_spec='-L$libdir'
11223 hardcode_shlibpath_var=no
11224 ;;
11225
11226 *)
11227 ld_shlibs=no
11228 ;;
11229 esac
11230
11231 if test x$host_vendor = xsni; then
11232 case $host in
11233 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
11234 export_dynamic_flag_spec='${wl}-Blargedynsym'
11235 ;;
11236 esac
11237 fi
11238 fi
11239
11240{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
11241$as_echo "$ld_shlibs" >&6; }
11242test "$ld_shlibs" = no && can_build_shared=no
11243
11244with_gnu_ld=$with_gnu_ld
11245
11246
11247
11248
11249
11250
11251
11252
11253
11254
11255
11256
11257
11258
11259
11260#
11261# Do we need to explicitly link libc?
11262#
11263case "x$archive_cmds_need_lc" in
11264x|xyes)
11265 # Assume -lc should be added
11266 archive_cmds_need_lc=yes
11267
11268 if test "$enable_shared" = yes && test "$GCC" = yes; then
11269 case $archive_cmds in
11270 *'~'*)
11271 # FIXME: we may have to deal with multi-command sequences.
11272 ;;
11273 '$CC '*)
11274 # Test whether the compiler implicitly links with -lc since on some
11275 # systems, -lgcc has to come before -lc. If gcc already passes -lc
11276 # to ld, don't add -lc before -lgcc.
11277 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
11278$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
11279if ${lt_cv_archive_cmds_need_lc+:} false; then :
11280 $as_echo_n "(cached) " >&6
11281else
11282 $RM conftest*
11283 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
11284
11285 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
11286 (eval $ac_compile) 2>&5
11287 ac_status=$?
11288 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
11289 test $ac_status = 0; } 2>conftest.err; then
11290 soname=conftest
11291 lib=conftest
11292 libobjs=conftest.$ac_objext
11293 deplibs=
11294 wl=$lt_prog_compiler_wl
11295 pic_flag=$lt_prog_compiler_pic
11296 compiler_flags=-v
11297 linker_flags=-v
11298 verstring=
11299 output_objdir=.
11300 libname=conftest
11301 lt_save_allow_undefined_flag=$allow_undefined_flag
11302 allow_undefined_flag=
11303 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
11304 (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
11305 ac_status=$?
11306 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
11307 test $ac_status = 0; }
11308 then
11309 lt_cv_archive_cmds_need_lc=no
11310 else
11311 lt_cv_archive_cmds_need_lc=yes
11312 fi
11313 allow_undefined_flag=$lt_save_allow_undefined_flag
11314 else
11315 cat conftest.err 1>&5
11316 fi
11317 $RM conftest*
11318
11319fi
11320{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5
11321$as_echo "$lt_cv_archive_cmds_need_lc" >&6; }
11322 archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc
11323 ;;
11324 esac
11325 fi
11326 ;;
11327esac
11328
11329
11330
11331
11332
11333
11334
11335
11336
11337
11338
11339
11340
11341
11342
11343
11344
11345
11346
11347
11348
11349
11350
11351
11352
11353
11354
11355
11356
11357
11358
11359
11360
11361
11362
11363
11364
11365
11366
11367
11368
11369
11370
11371
11372
11373
11374
11375
11376
11377
11378
11379
11380
11381
11382
11383
11384
11385
11386
11387
11388
11389
11390
11391
11392
11393
11394
11395
11396
11397
11398
11399
11400
11401
11402
11403
11404
11405
11406
11407
11408
11409
11410
11411
11412
11413
11414
11415
11416
11417
11418
11419
11420
11421
11422
11423
11424
11425
11426
11427
11428
11429
11430
11431
11432
11433
11434
11435
11436
11437
11438
11439
11440
11441
11442
11443
11444
11445
11446
11447
11448
11449
11450
11451
11452
11453
11454
11455
11456
11457
11458
11459
11460
11461
11462
11463
11464
11465
11466
11467
11468
11469
11470
11471
11472
11473
11474
11475
11476
11477
11478
11479
11480 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
11481$as_echo_n "checking dynamic linker characteristics... " >&6; }
11482
11483if test "$GCC" = yes; then
11484 case $host_os in
11485 darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
11486 *) lt_awk_arg="/^libraries:/" ;;
11487 esac
11488 case $host_os in
11489 mingw* | cegcc*) lt_sed_strip_eq="s,=\([A-Za-z]:\),\1,g" ;;
11490 *) lt_sed_strip_eq="s,=/,/,g" ;;
11491 esac
11492 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
11493 case $lt_search_path_spec in
11494 *\;*)
11495 # if the path contains ";" then we assume it to be the separator
11496 # otherwise default to the standard path separator (i.e. ":") - it is
11497 # assumed that no part of a normal pathname contains ";" but that should
11498 # okay in the real world where ";" in dirpaths is itself problematic.
11499 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
11500 ;;
11501 *)
11502 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
11503 ;;
11504 esac
11505 # Ok, now we have the path, separated by spaces, we can step through it
11506 # and add multilib dir if necessary.
11507 lt_tmp_lt_search_path_spec=
11508 lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
11509 for lt_sys_path in $lt_search_path_spec; do
11510 if test -d "$lt_sys_path/$lt_multi_os_dir"; then
11511 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
11512 else
11513 test -d "$lt_sys_path" && \
11514 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
11515 fi
11516 done
11517 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
11518BEGIN {RS=" "; FS="/|\n";} {
11519 lt_foo="";
11520 lt_count=0;
11521 for (lt_i = NF; lt_i > 0; lt_i--) {
11522 if ($lt_i != "" && $lt_i != ".") {
11523 if ($lt_i == "..") {
11524 lt_count++;
11525 } else {
11526 if (lt_count == 0) {
11527 lt_foo="/" $lt_i lt_foo;
11528 } else {
11529 lt_count--;
11530 }
11531 }
11532 }
11533 }
11534 if (lt_foo != "") { lt_freq[lt_foo]++; }
11535 if (lt_freq[lt_foo] == 1) { print lt_foo; }
11536}'`
11537 # AWK program above erroneously prepends '/' to C:/dos/paths
11538 # for these hosts.
11539 case $host_os in
11540 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
11541 $SED 's,/\([A-Za-z]:\),\1,g'` ;;
11542 esac
11543 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
11544else
11545 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
11546fi
11547library_names_spec=
11548libname_spec='lib$name'
11549soname_spec=
11550shrext_cmds=".so"
11551postinstall_cmds=
11552postuninstall_cmds=
11553finish_cmds=
11554finish_eval=
11555shlibpath_var=
11556shlibpath_overrides_runpath=unknown
11557version_type=none
11558dynamic_linker="$host_os ld.so"
11559sys_lib_dlsearch_path_spec="/lib /usr/lib"
11560need_lib_prefix=unknown
11561hardcode_into_libs=no
11562
11563# when you set need_version to no, make sure it does not cause -set_version
11564# flags to be left without arguments
11565need_version=unknown
11566
11567case $host_os in
11568aix3*)
11569 version_type=linux # correct to gnu/linux during the next big refactor
11570 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
11571 shlibpath_var=LIBPATH
11572
11573 # AIX 3 has no versioning support, so we append a major version to the name.
11574 soname_spec='${libname}${release}${shared_ext}$major'
11575 ;;
11576
11577aix[4-9]*)
11578 version_type=linux # correct to gnu/linux during the next big refactor
11579 need_lib_prefix=no
11580 need_version=no
11581 hardcode_into_libs=yes
11582 if test "$host_cpu" = ia64; then
11583 # AIX 5 supports IA64
11584 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
11585 shlibpath_var=LD_LIBRARY_PATH
11586 else
11587 # With GCC up to 2.95.x, collect2 would create an import file
11588 # for dependence libraries. The import file would start with
11589 # the line `#! .'. This would cause the generated library to
11590 # depend on `.', always an invalid library. This was fixed in
11591 # development snapshots of GCC prior to 3.0.
11592 case $host_os in
11593 aix4 | aix4.[01] | aix4.[01].*)
11594 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
11595 echo ' yes '
11596 echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
11597 :
11598 else
11599 can_build_shared=no
11600 fi
11601 ;;
11602 esac
11603 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
11604 # soname into executable. Probably we can add versioning support to
11605 # collect2, so additional links can be useful in future.
11606 if test "$aix_use_runtimelinking" = yes; then
11607 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
11608 # instead of lib<name>.a to let people know that these are not
11609 # typical AIX shared libraries.
11610 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
11611 else
11612 # We preserve .a as extension for shared libraries through AIX4.2
11613 # and later when we are not doing run time linking.
11614 library_names_spec='${libname}${release}.a $libname.a'
11615 soname_spec='${libname}${release}${shared_ext}$major'
11616 fi
11617 shlibpath_var=LIBPATH
11618 fi
11619 ;;
11620
11621amigaos*)
11622 case $host_cpu in
11623 powerpc)
11624 # Since July 2007 AmigaOS4 officially supports .so libraries.
11625 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
11626 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
11627 ;;
11628 m68k)
11629 library_names_spec='$libname.ixlibrary $libname.a'
11630 # Create ${libname}_ixlibrary.a entries in /sys/libs.
11631 finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
11632 ;;
11633 esac
11634 ;;
11635
11636beos*)
11637 library_names_spec='${libname}${shared_ext}'
11638 dynamic_linker="$host_os ld.so"
11639 shlibpath_var=LIBRARY_PATH
11640 ;;
11641
11642bsdi[45]*)
11643 version_type=linux # correct to gnu/linux during the next big refactor
11644 need_version=no
11645 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
11646 soname_spec='${libname}${release}${shared_ext}$major'
11647 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
11648 shlibpath_var=LD_LIBRARY_PATH
11649 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
11650 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
11651 # the default ld.so.conf also contains /usr/contrib/lib and
11652 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
11653 # libtool to hard-code these into programs
11654 ;;
11655
11656cygwin* | mingw* | pw32* | cegcc*)
11657 version_type=windows
11658 shrext_cmds=".dll"
11659 need_version=no
11660 need_lib_prefix=no
11661
11662 case $GCC,$cc_basename in
11663 yes,*)
11664 # gcc
11665 library_names_spec='$libname.dll.a'
11666 # DLL is installed to $(libdir)/../bin by postinstall_cmds
11667 postinstall_cmds='base_file=`basename \${file}`~
11668 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
11669 dldir=$destdir/`dirname \$dlpath`~
11670 test -d \$dldir || mkdir -p \$dldir~
11671 $install_prog $dir/$dlname \$dldir/$dlname~
11672 chmod a+x \$dldir/$dlname~
11673 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
11674 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
11675 fi'
11676 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
11677 dlpath=$dir/\$dldll~
11678 $RM \$dlpath'
11679 shlibpath_overrides_runpath=yes
11680
11681 case $host_os in
11682 cygwin*)
11683 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
11684 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
11685
11686 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"
11687 ;;
11688 mingw* | cegcc*)
11689 # MinGW DLLs use traditional 'lib' prefix
11690 soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
11691 ;;
11692 pw32*)
11693 # pw32 DLLs use 'pw' prefix rather than 'lib'
11694 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
11695 ;;
11696 esac
11697 dynamic_linker='Win32 ld.exe'
11698 ;;
11699
11700 *,cl*)
11701 # Native MSVC
11702 libname_spec='$name'
11703 soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
11704 library_names_spec='${libname}.dll.lib'
11705
11706 case $build_os in
11707 mingw*)
11708 sys_lib_search_path_spec=
11709 lt_save_ifs=$IFS
11710 IFS=';'
11711 for lt_path in $LIB
11712 do
11713 IFS=$lt_save_ifs
11714 # Let DOS variable expansion print the short 8.3 style file name.
11715 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
11716 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
11717 done
11718 IFS=$lt_save_ifs
11719 # Convert to MSYS style.
11720 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
11721 ;;
11722 cygwin*)
11723 # Convert to unix form, then to dos form, then back to unix form
11724 # but this time dos style (no spaces!) so that the unix form looks
11725 # like /cygdrive/c/PROGRA~1:/cygdr...
11726 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
11727 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
11728 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
11729 ;;
11730 *)
11731 sys_lib_search_path_spec="$LIB"
11732 if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
11733 # It is most probably a Windows format PATH.
11734 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
11735 else
11736 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
11737 fi
11738 # FIXME: find the short name or the path components, as spaces are
11739 # common. (e.g. "Program Files" -> "PROGRA~1")
11740 ;;
11741 esac
11742
11743 # DLL is installed to $(libdir)/../bin by postinstall_cmds
11744 postinstall_cmds='base_file=`basename \${file}`~
11745 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
11746 dldir=$destdir/`dirname \$dlpath`~
11747 test -d \$dldir || mkdir -p \$dldir~
11748 $install_prog $dir/$dlname \$dldir/$dlname'
11749 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
11750 dlpath=$dir/\$dldll~
11751 $RM \$dlpath'
11752 shlibpath_overrides_runpath=yes
11753 dynamic_linker='Win32 link.exe'
11754 ;;
11755
11756 *)
11757 # Assume MSVC wrapper
11758 library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib'
11759 dynamic_linker='Win32 ld.exe'
11760 ;;
11761 esac
11762 # FIXME: first we should search . and the directory the executable is in
11763 shlibpath_var=PATH
11764 ;;
11765
11766darwin* | rhapsody*)
11767 dynamic_linker="$host_os dyld"
11768 version_type=darwin
11769 need_lib_prefix=no
11770 need_version=no
11771 library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
11772 soname_spec='${libname}${release}${major}$shared_ext'
11773 shlibpath_overrides_runpath=yes
11774 shlibpath_var=DYLD_LIBRARY_PATH
11775 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
11776
11777 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"
11778 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
11779 ;;
11780
11781dgux*)
11782 version_type=linux # correct to gnu/linux during the next big refactor
11783 need_lib_prefix=no
11784 need_version=no
11785 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
11786 soname_spec='${libname}${release}${shared_ext}$major'
11787 shlibpath_var=LD_LIBRARY_PATH
11788 ;;
11789
11790freebsd* | dragonfly*)
11791 # DragonFly does not have aout. When/if they implement a new
11792 # versioning mechanism, adjust this.
11793 if test -x /usr/bin/objformat; then
11794 objformat=`/usr/bin/objformat`
11795 else
11796 case $host_os in
11797 freebsd[23].*) objformat=aout ;;
11798 *) objformat=elf ;;
11799 esac
11800 fi
11801 version_type=freebsd-$objformat
11802 case $version_type in
11803 freebsd-elf*)
11804 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
11805 need_version=no
11806 need_lib_prefix=no
11807 ;;
11808 freebsd-*)
11809 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
11810 need_version=yes
11811 ;;
11812 esac
11813 shlibpath_var=LD_LIBRARY_PATH
11814 case $host_os in
11815 freebsd2.*)
11816 shlibpath_overrides_runpath=yes
11817 ;;
11818 freebsd3.[01]* | freebsdelf3.[01]*)
11819 shlibpath_overrides_runpath=yes
11820 hardcode_into_libs=yes
11821 ;;
11822 freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
11823 freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
11824 shlibpath_overrides_runpath=no
11825 hardcode_into_libs=yes
11826 ;;
11827 *) # from 4.6 on, and DragonFly
11828 shlibpath_overrides_runpath=yes
11829 hardcode_into_libs=yes
11830 ;;
11831 esac
11832 ;;
11833
11834gnu*)
11835 version_type=linux # correct to gnu/linux during the next big refactor
11836 need_lib_prefix=no
11837 need_version=no
11838 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
11839 soname_spec='${libname}${release}${shared_ext}$major'
11840 shlibpath_var=LD_LIBRARY_PATH
11841 shlibpath_overrides_runpath=no
11842 hardcode_into_libs=yes
11843 ;;
11844
11845haiku*)
11846 version_type=linux # correct to gnu/linux during the next big refactor
11847 need_lib_prefix=no
11848 need_version=no
11849 dynamic_linker="$host_os runtime_loader"
11850 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
11851 soname_spec='${libname}${release}${shared_ext}$major'
11852 shlibpath_var=LIBRARY_PATH
11853 shlibpath_overrides_runpath=yes
11854 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
11855 hardcode_into_libs=yes
11856 ;;
11857
11858hpux9* | hpux10* | hpux11*)
11859 # Give a soname corresponding to the major version so that dld.sl refuses to
11860 # link against other versions.
11861 version_type=sunos
11862 need_lib_prefix=no
11863 need_version=no
11864 case $host_cpu in
11865 ia64*)
11866 shrext_cmds='.so'
11867 hardcode_into_libs=yes
11868 dynamic_linker="$host_os dld.so"
11869 shlibpath_var=LD_LIBRARY_PATH
11870 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
11871 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
11872 soname_spec='${libname}${release}${shared_ext}$major'
11873 if test "X$HPUX_IA64_MODE" = X32; then
11874 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
11875 else
11876 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
11877 fi
11878 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
11879 ;;
11880 hppa*64*)
11881 shrext_cmds='.sl'
11882 hardcode_into_libs=yes
11883 dynamic_linker="$host_os dld.sl"
11884 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
11885 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
11886 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
11887 soname_spec='${libname}${release}${shared_ext}$major'
11888 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
11889 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
11890 ;;
11891 *)
11892 shrext_cmds='.sl'
11893 dynamic_linker="$host_os dld.sl"
11894 shlibpath_var=SHLIB_PATH
11895 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
11896 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
11897 soname_spec='${libname}${release}${shared_ext}$major'
11898 ;;
11899 esac
11900 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
11901 postinstall_cmds='chmod 555 $lib'
11902 # or fails outright, so override atomically:
11903 install_override_mode=555
11904 ;;
11905
11906interix[3-9]*)
11907 version_type=linux # correct to gnu/linux during the next big refactor
11908 need_lib_prefix=no
11909 need_version=no
11910 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
11911 soname_spec='${libname}${release}${shared_ext}$major'
11912 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
11913 shlibpath_var=LD_LIBRARY_PATH
11914 shlibpath_overrides_runpath=no
11915 hardcode_into_libs=yes
11916 ;;
11917
11918irix5* | irix6* | nonstopux*)
11919 case $host_os in
11920 nonstopux*) version_type=nonstopux ;;
11921 *)
11922 if test "$lt_cv_prog_gnu_ld" = yes; then
11923 version_type=linux # correct to gnu/linux during the next big refactor
11924 else
11925 version_type=irix
11926 fi ;;
11927 esac
11928 need_lib_prefix=no
11929 need_version=no
11930 soname_spec='${libname}${release}${shared_ext}$major'
11931 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
11932 case $host_os in
11933 irix5* | nonstopux*)
11934 libsuff= shlibsuff=
11935 ;;
11936 *)
11937 case $LD in # libtool.m4 will add one of these switches to LD
11938 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
11939 libsuff= shlibsuff= libmagic=32-bit;;
11940 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
11941 libsuff=32 shlibsuff=N32 libmagic=N32;;
11942 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
11943 libsuff=64 shlibsuff=64 libmagic=64-bit;;
11944 *) libsuff= shlibsuff= libmagic=never-match;;
11945 esac
11946 ;;
11947 esac
11948 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
11949 shlibpath_overrides_runpath=no
11950 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
11951 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
11952 hardcode_into_libs=yes
11953 ;;
11954
11955# No shared lib support for Linux oldld, aout, or coff.
11956linux*oldld* | linux*aout* | linux*coff*)
11957 dynamic_linker=no
11958 ;;
11959
11960# This must be glibc/ELF.
11961linux* | k*bsd*-gnu | kopensolaris*-gnu)
11962 version_type=linux # correct to gnu/linux during the next big refactor
11963 need_lib_prefix=no
11964 need_version=no
11965 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
11966 soname_spec='${libname}${release}${shared_ext}$major'
11967 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
11968 shlibpath_var=LD_LIBRARY_PATH
11969 shlibpath_overrides_runpath=no
11970
11971 # Some binutils ld are patched to set DT_RUNPATH
11972 if ${lt_cv_shlibpath_overrides_runpath+:} false; then :
11973 $as_echo_n "(cached) " >&6
11974else
11975 lt_cv_shlibpath_overrides_runpath=no
11976 save_LDFLAGS=$LDFLAGS
11977 save_libdir=$libdir
11978 eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \
11979 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""
11980 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11981/* end confdefs.h. */
11982
11983int
11984main ()
11985{
11986
11987 ;
11988 return 0;
11989}
11990_ACEOF
11991if ac_fn_c_try_link "$LINENO"; then :
11992 if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
11993 lt_cv_shlibpath_overrides_runpath=yes
11994fi
11995fi
11996rm -f core conftest.err conftest.$ac_objext \
11997 conftest$ac_exeext conftest.$ac_ext
11998 LDFLAGS=$save_LDFLAGS
11999 libdir=$save_libdir
12000
12001fi
12002
12003 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
12004
12005 # This implies no fast_install, which is unacceptable.
12006 # Some rework will be needed to allow for fast_install
12007 # before this can be enabled.
12008 hardcode_into_libs=yes
12009
12010 # Append ld.so.conf contents to the search path
12011 if test -f /etc/ld.so.conf; then
12012 lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
12013 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
12014 fi
12015
12016 # We used to test for /lib/ld.so.1 and disable shared libraries on
12017 # powerpc, because MkLinux only supported shared libraries with the
12018 # GNU dynamic linker. Since this was broken with cross compilers,
12019 # most powerpc-linux boxes support dynamic linking these days and
12020 # people can always --disable-shared, the test was removed, and we
12021 # assume the GNU/Linux dynamic linker is in use.
12022 dynamic_linker='GNU/Linux ld.so'
12023 ;;
12024
12025netbsd*)
12026 version_type=sunos
12027 need_lib_prefix=no
12028 need_version=no
12029 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
12030 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
12031 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
12032 dynamic_linker='NetBSD (a.out) ld.so'
12033 else
12034 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
12035 soname_spec='${libname}${release}${shared_ext}$major'
12036 dynamic_linker='NetBSD ld.elf_so'
12037 fi
12038 shlibpath_var=LD_LIBRARY_PATH
12039 shlibpath_overrides_runpath=yes
12040 hardcode_into_libs=yes
12041 ;;
12042
12043newsos6)
12044 version_type=linux # correct to gnu/linux during the next big refactor
12045 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
12046 shlibpath_var=LD_LIBRARY_PATH
12047 shlibpath_overrides_runpath=yes
12048 ;;
12049
12050*nto* | *qnx*)
12051 version_type=qnx
12052 need_lib_prefix=no
12053 need_version=no
12054 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
12055 soname_spec='${libname}${release}${shared_ext}$major'
12056 shlibpath_var=LD_LIBRARY_PATH
12057 shlibpath_overrides_runpath=no
12058 hardcode_into_libs=yes
12059 dynamic_linker='ldqnx.so'
12060 ;;
12061
12062openbsd*)
12063 version_type=sunos
12064 sys_lib_dlsearch_path_spec="/usr/lib"
12065 need_lib_prefix=no
12066 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
12067 case $host_os in
12068 openbsd3.3 | openbsd3.3.*) need_version=yes ;;
12069 *) need_version=no ;;
12070 esac
12071 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
12072 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
12073 shlibpath_var=LD_LIBRARY_PATH
12074 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
12075 case $host_os in
12076 openbsd2.[89] | openbsd2.[89].*)
12077 shlibpath_overrides_runpath=no
12078 ;;
12079 *)
12080 shlibpath_overrides_runpath=yes
12081 ;;
12082 esac
12083 else
12084 shlibpath_overrides_runpath=yes
12085 fi
12086 ;;
12087
12088os2*)
12089 libname_spec='$name'
12090 shrext_cmds=".dll"
12091 need_lib_prefix=no
12092 library_names_spec='$libname${shared_ext} $libname.a'
12093 dynamic_linker='OS/2 ld.exe'
12094 shlibpath_var=LIBPATH
12095 ;;
12096
12097osf3* | osf4* | osf5*)
12098 version_type=osf
12099 need_lib_prefix=no
12100 need_version=no
12101 soname_spec='${libname}${release}${shared_ext}$major'
12102 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
12103 shlibpath_var=LD_LIBRARY_PATH
12104 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
12105 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
12106 ;;
12107
12108rdos*)
12109 dynamic_linker=no
12110 ;;
12111
12112solaris*)
12113 version_type=linux # correct to gnu/linux during the next big refactor
12114 need_lib_prefix=no
12115 need_version=no
12116 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
12117 soname_spec='${libname}${release}${shared_ext}$major'
12118 shlibpath_var=LD_LIBRARY_PATH
12119 shlibpath_overrides_runpath=yes
12120 hardcode_into_libs=yes
12121 # ldd complains unless libraries are executable
12122 postinstall_cmds='chmod +x $lib'
12123 ;;
12124
12125sunos4*)
12126 version_type=sunos
12127 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
12128 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
12129 shlibpath_var=LD_LIBRARY_PATH
12130 shlibpath_overrides_runpath=yes
12131 if test "$with_gnu_ld" = yes; then
12132 need_lib_prefix=no
12133 fi
12134 need_version=yes
12135 ;;
12136
12137sysv4 | sysv4.3*)
12138 version_type=linux # correct to gnu/linux during the next big refactor
12139 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
12140 soname_spec='${libname}${release}${shared_ext}$major'
12141 shlibpath_var=LD_LIBRARY_PATH
12142 case $host_vendor in
12143 sni)
12144 shlibpath_overrides_runpath=no
12145 need_lib_prefix=no
12146 runpath_var=LD_RUN_PATH
12147 ;;
12148 siemens)
12149 need_lib_prefix=no
12150 ;;
12151 motorola)
12152 need_lib_prefix=no
12153 need_version=no
12154 shlibpath_overrides_runpath=no
12155 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
12156 ;;
12157 esac
12158 ;;
12159
12160sysv4*MP*)
12161 if test -d /usr/nec ;then
12162 version_type=linux # correct to gnu/linux during the next big refactor
12163 library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
12164 soname_spec='$libname${shared_ext}.$major'
12165 shlibpath_var=LD_LIBRARY_PATH
12166 fi
12167 ;;
12168
12169sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
12170 version_type=freebsd-elf
12171 need_lib_prefix=no
12172 need_version=no
12173 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
12174 soname_spec='${libname}${release}${shared_ext}$major'
12175 shlibpath_var=LD_LIBRARY_PATH
12176 shlibpath_overrides_runpath=yes
12177 hardcode_into_libs=yes
12178 if test "$with_gnu_ld" = yes; then
12179 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
12180 else
12181 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
12182 case $host_os in
12183 sco3.2v5*)
12184 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
12185 ;;
12186 esac
12187 fi
12188 sys_lib_dlsearch_path_spec='/usr/lib'
12189 ;;
12190
12191tpf*)
12192 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
12193 version_type=linux # correct to gnu/linux during the next big refactor
12194 need_lib_prefix=no
12195 need_version=no
12196 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
12197 shlibpath_var=LD_LIBRARY_PATH
12198 shlibpath_overrides_runpath=no
12199 hardcode_into_libs=yes
12200 ;;
12201
12202uts4*)
12203 version_type=linux # correct to gnu/linux during the next big refactor
12204 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
12205 soname_spec='${libname}${release}${shared_ext}$major'
12206 shlibpath_var=LD_LIBRARY_PATH
12207 ;;
12208
12209*)
12210 dynamic_linker=no
12211 ;;
12212esac
12213{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
12214$as_echo "$dynamic_linker" >&6; }
12215test "$dynamic_linker" = no && can_build_shared=no
12216
12217variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
12218if test "$GCC" = yes; then
12219 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
12220fi
12221
12222if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
12223 sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
12224fi
12225if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
12226 sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
12227fi
12228
12229
12230
12231
12232
12233
12234
12235
12236
12237
12238
12239
12240
12241
12242
12243
12244
12245
12246
12247
12248
12249
12250
12251
12252
12253
12254
12255
12256
12257
12258
12259
12260
12261
12262
12263
12264
12265
12266
12267
12268
12269
12270
12271
12272
12273
12274
12275
12276
12277
12278
12279
12280
12281
12282
12283
12284
12285
12286
12287
12288
12289
12290
12291
12292
12293
12294
12295
12296
12297
12298
12299
12300
12301
12302
12303
12304
12305
12306
12307
12308
12309
12310
12311
12312
12313
12314
12315
12316
12317
12318
12319
12320 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
12321$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
12322hardcode_action=
12323if test -n "$hardcode_libdir_flag_spec" ||
12324 test -n "$runpath_var" ||
12325 test "X$hardcode_automatic" = "Xyes" ; then
12326
12327 # We can hardcode non-existent directories.
12328 if test "$hardcode_direct" != no &&
12329 # If the only mechanism to avoid hardcoding is shlibpath_var, we
12330 # have to relink, otherwise we might link with an installed library
12331 # when we should be linking with a yet-to-be-installed one
12332 ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no &&
12333 test "$hardcode_minus_L" != no; then
12334 # Linking always hardcodes the temporary library directory.
12335 hardcode_action=relink
12336 else
12337 # We can link without hardcoding, and we can hardcode nonexisting dirs.
12338 hardcode_action=immediate
12339 fi
12340else
12341 # We cannot hardcode anything, or else we can only hardcode existing
12342 # directories.
12343 hardcode_action=unsupported
12344fi
12345{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
12346$as_echo "$hardcode_action" >&6; }
12347
12348if test "$hardcode_action" = relink ||
12349 test "$inherit_rpath" = yes; then
12350 # Fast installation is not supported
12351 enable_fast_install=no
12352elif test "$shlibpath_overrides_runpath" = yes ||
12353 test "$enable_shared" = no; then
12354 # Fast installation is not necessary
12355 enable_fast_install=needless
12356fi
12357
12358
12359
12360
12361
12362
12363 if test "x$enable_dlopen" != xyes; then
12364 enable_dlopen=unknown
12365 enable_dlopen_self=unknown
12366 enable_dlopen_self_static=unknown
12367else
12368 lt_cv_dlopen=no
12369 lt_cv_dlopen_libs=
12370
12371 case $host_os in
12372 beos*)
12373 lt_cv_dlopen="load_add_on"
12374 lt_cv_dlopen_libs=
12375 lt_cv_dlopen_self=yes
12376 ;;
12377
12378 mingw* | pw32* | cegcc*)
12379 lt_cv_dlopen="LoadLibrary"
12380 lt_cv_dlopen_libs=
12381 ;;
12382
12383 cygwin*)
12384 lt_cv_dlopen="dlopen"
12385 lt_cv_dlopen_libs=
12386 ;;
12387
12388 darwin*)
12389 # if libdl is installed we need to link against it
12390 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
12391$as_echo_n "checking for dlopen in -ldl... " >&6; }
12392if ${ac_cv_lib_dl_dlopen+:} false; then :
12393 $as_echo_n "(cached) " >&6
12394else
12395 ac_check_lib_save_LIBS=$LIBS
12396LIBS="-ldl $LIBS"
12397cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12398/* end confdefs.h. */
12399
12400/* Override any GCC internal prototype to avoid an error.
12401 Use char because int might match the return type of a GCC
12402 builtin and then its argument prototype would still apply. */
12403#ifdef __cplusplus
12404extern "C"
12405#endif
12406char dlopen ();
12407int
12408main ()
12409{
12410return dlopen ();
12411 ;
12412 return 0;
12413}
12414_ACEOF
12415if ac_fn_c_try_link "$LINENO"; then :
12416 ac_cv_lib_dl_dlopen=yes
12417else
12418 ac_cv_lib_dl_dlopen=no
12419fi
12420rm -f core conftest.err conftest.$ac_objext \
12421 conftest$ac_exeext conftest.$ac_ext
12422LIBS=$ac_check_lib_save_LIBS
12423fi
12424{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
12425$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
12426if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
12427 lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
12428else
12429
12430 lt_cv_dlopen="dyld"
12431 lt_cv_dlopen_libs=
12432 lt_cv_dlopen_self=yes
12433
12434fi
12435
12436 ;;
12437
12438 *)
12439 ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
12440if test "x$ac_cv_func_shl_load" = xyes; then :
12441 lt_cv_dlopen="shl_load"
12442else
12443 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
12444$as_echo_n "checking for shl_load in -ldld... " >&6; }
12445if ${ac_cv_lib_dld_shl_load+:} false; then :
12446 $as_echo_n "(cached) " >&6
12447else
12448 ac_check_lib_save_LIBS=$LIBS
12449LIBS="-ldld $LIBS"
12450cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12451/* end confdefs.h. */
12452
12453/* Override any GCC internal prototype to avoid an error.
12454 Use char because int might match the return type of a GCC
12455 builtin and then its argument prototype would still apply. */
12456#ifdef __cplusplus
12457extern "C"
12458#endif
12459char shl_load ();
12460int
12461main ()
12462{
12463return shl_load ();
12464 ;
12465 return 0;
12466}
12467_ACEOF
12468if ac_fn_c_try_link "$LINENO"; then :
12469 ac_cv_lib_dld_shl_load=yes
12470else
12471 ac_cv_lib_dld_shl_load=no
12472fi
12473rm -f core conftest.err conftest.$ac_objext \
12474 conftest$ac_exeext conftest.$ac_ext
12475LIBS=$ac_check_lib_save_LIBS
12476fi
12477{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
12478$as_echo "$ac_cv_lib_dld_shl_load" >&6; }
12479if test "x$ac_cv_lib_dld_shl_load" = xyes; then :
12480 lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
12481else
12482 ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
12483if test "x$ac_cv_func_dlopen" = xyes; then :
12484 lt_cv_dlopen="dlopen"
12485else
12486 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
12487$as_echo_n "checking for dlopen in -ldl... " >&6; }
12488if ${ac_cv_lib_dl_dlopen+:} false; then :
12489 $as_echo_n "(cached) " >&6
12490else
12491 ac_check_lib_save_LIBS=$LIBS
12492LIBS="-ldl $LIBS"
12493cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12494/* end confdefs.h. */
12495
12496/* Override any GCC internal prototype to avoid an error.
12497 Use char because int might match the return type of a GCC
12498 builtin and then its argument prototype would still apply. */
12499#ifdef __cplusplus
12500extern "C"
12501#endif
12502char dlopen ();
12503int
12504main ()
12505{
12506return dlopen ();
12507 ;
12508 return 0;
12509}
12510_ACEOF
12511if ac_fn_c_try_link "$LINENO"; then :
12512 ac_cv_lib_dl_dlopen=yes
12513else
12514 ac_cv_lib_dl_dlopen=no
12515fi
12516rm -f core conftest.err conftest.$ac_objext \
12517 conftest$ac_exeext conftest.$ac_ext
12518LIBS=$ac_check_lib_save_LIBS
12519fi
12520{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
12521$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
12522if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
12523 lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
12524else
12525 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
12526$as_echo_n "checking for dlopen in -lsvld... " >&6; }
12527if ${ac_cv_lib_svld_dlopen+:} false; then :
12528 $as_echo_n "(cached) " >&6
12529else
12530 ac_check_lib_save_LIBS=$LIBS
12531LIBS="-lsvld $LIBS"
12532cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12533/* end confdefs.h. */
12534
12535/* Override any GCC internal prototype to avoid an error.
12536 Use char because int might match the return type of a GCC
12537 builtin and then its argument prototype would still apply. */
12538#ifdef __cplusplus
12539extern "C"
12540#endif
12541char dlopen ();
12542int
12543main ()
12544{
12545return dlopen ();
12546 ;
12547 return 0;
12548}
12549_ACEOF
12550if ac_fn_c_try_link "$LINENO"; then :
12551 ac_cv_lib_svld_dlopen=yes
12552else
12553 ac_cv_lib_svld_dlopen=no
12554fi
12555rm -f core conftest.err conftest.$ac_objext \
12556 conftest$ac_exeext conftest.$ac_ext
12557LIBS=$ac_check_lib_save_LIBS
12558fi
12559{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
12560$as_echo "$ac_cv_lib_svld_dlopen" >&6; }
12561if test "x$ac_cv_lib_svld_dlopen" = xyes; then :
12562 lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
12563else
12564 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
12565$as_echo_n "checking for dld_link in -ldld... " >&6; }
12566if ${ac_cv_lib_dld_dld_link+:} false; then :
12567 $as_echo_n "(cached) " >&6
12568else
12569 ac_check_lib_save_LIBS=$LIBS
12570LIBS="-ldld $LIBS"
12571cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12572/* end confdefs.h. */
12573
12574/* Override any GCC internal prototype to avoid an error.
12575 Use char because int might match the return type of a GCC
12576 builtin and then its argument prototype would still apply. */
12577#ifdef __cplusplus
12578extern "C"
12579#endif
12580char dld_link ();
12581int
12582main ()
12583{
12584return dld_link ();
12585 ;
12586 return 0;
12587}
12588_ACEOF
12589if ac_fn_c_try_link "$LINENO"; then :
12590 ac_cv_lib_dld_dld_link=yes
12591else
12592 ac_cv_lib_dld_dld_link=no
12593fi
12594rm -f core conftest.err conftest.$ac_objext \
12595 conftest$ac_exeext conftest.$ac_ext
12596LIBS=$ac_check_lib_save_LIBS
12597fi
12598{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
12599$as_echo "$ac_cv_lib_dld_dld_link" >&6; }
12600if test "x$ac_cv_lib_dld_dld_link" = xyes; then :
12601 lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
12602fi
12603
12604
12605fi
12606
12607
12608fi
12609
12610
12611fi
12612
12613
12614fi
12615
12616
12617fi
12618
12619 ;;
12620 esac
12621
12622 if test "x$lt_cv_dlopen" != xno; then
12623 enable_dlopen=yes
12624 else
12625 enable_dlopen=no
12626 fi
12627
12628 case $lt_cv_dlopen in
12629 dlopen)
12630 save_CPPFLAGS="$CPPFLAGS"
12631 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
12632
12633 save_LDFLAGS="$LDFLAGS"
12634 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
12635
12636 save_LIBS="$LIBS"
12637 LIBS="$lt_cv_dlopen_libs $LIBS"
12638
12639 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
12640$as_echo_n "checking whether a program can dlopen itself... " >&6; }
12641if ${lt_cv_dlopen_self+:} false; then :
12642 $as_echo_n "(cached) " >&6
12643else
12644 if test "$cross_compiling" = yes; then :
12645 lt_cv_dlopen_self=cross
12646else
12647 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
12648 lt_status=$lt_dlunknown
12649 cat > conftest.$ac_ext <<_LT_EOF
12650#line $LINENO "configure"
12651#include "confdefs.h"
12652
12653#if HAVE_DLFCN_H
12654#include <dlfcn.h>
12655#endif
12656
12657#include <stdio.h>
12658
12659#ifdef RTLD_GLOBAL
12660# define LT_DLGLOBAL RTLD_GLOBAL
12661#else
12662# ifdef DL_GLOBAL
12663# define LT_DLGLOBAL DL_GLOBAL
12664# else
12665# define LT_DLGLOBAL 0
12666# endif
12667#endif
12668
12669/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
12670 find out it does not work in some platform. */
12671#ifndef LT_DLLAZY_OR_NOW
12672# ifdef RTLD_LAZY
12673# define LT_DLLAZY_OR_NOW RTLD_LAZY
12674# else
12675# ifdef DL_LAZY
12676# define LT_DLLAZY_OR_NOW DL_LAZY
12677# else
12678# ifdef RTLD_NOW
12679# define LT_DLLAZY_OR_NOW RTLD_NOW
12680# else
12681# ifdef DL_NOW
12682# define LT_DLLAZY_OR_NOW DL_NOW
12683# else
12684# define LT_DLLAZY_OR_NOW 0
12685# endif
12686# endif
12687# endif
12688# endif
12689#endif
12690
12691/* When -fvisbility=hidden is used, assume the code has been annotated
12692 correspondingly for the symbols needed. */
12693#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
12694int fnord () __attribute__((visibility("default")));
12695#endif
12696
12697int fnord () { return 42; }
12698int main ()
12699{
12700 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
12701 int status = $lt_dlunknown;
12702
12703 if (self)
12704 {
12705 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
12706 else
12707 {
12708 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
12709 else puts (dlerror ());
12710 }
12711 /* dlclose (self); */
12712 }
12713 else
12714 puts (dlerror ());
12715
12716 return status;
12717}
12718_LT_EOF
12719 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
12720 (eval $ac_link) 2>&5
12721 ac_status=$?
12722 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
12723 test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
12724 (./conftest; exit; ) >&5 2>/dev/null
12725 lt_status=$?
12726 case x$lt_status in
12727 x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
12728 x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;
12729 x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;;
12730 esac
12731 else :
12732 # compilation failed
12733 lt_cv_dlopen_self=no
12734 fi
12735fi
12736rm -fr conftest*
12737
12738
12739fi
12740{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
12741$as_echo "$lt_cv_dlopen_self" >&6; }
12742
12743 if test "x$lt_cv_dlopen_self" = xyes; then
12744 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
12745 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
12746$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
12747if ${lt_cv_dlopen_self_static+:} false; then :
12748 $as_echo_n "(cached) " >&6
12749else
12750 if test "$cross_compiling" = yes; then :
12751 lt_cv_dlopen_self_static=cross
12752else
12753 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
12754 lt_status=$lt_dlunknown
12755 cat > conftest.$ac_ext <<_LT_EOF
12756#line $LINENO "configure"
12757#include "confdefs.h"
12758
12759#if HAVE_DLFCN_H
12760#include <dlfcn.h>
12761#endif
12762
12763#include <stdio.h>
12764
12765#ifdef RTLD_GLOBAL
12766# define LT_DLGLOBAL RTLD_GLOBAL
12767#else
12768# ifdef DL_GLOBAL
12769# define LT_DLGLOBAL DL_GLOBAL
12770# else
12771# define LT_DLGLOBAL 0
12772# endif
12773#endif
12774
12775/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
12776 find out it does not work in some platform. */
12777#ifndef LT_DLLAZY_OR_NOW
12778# ifdef RTLD_LAZY
12779# define LT_DLLAZY_OR_NOW RTLD_LAZY
12780# else
12781# ifdef DL_LAZY
12782# define LT_DLLAZY_OR_NOW DL_LAZY
12783# else
12784# ifdef RTLD_NOW
12785# define LT_DLLAZY_OR_NOW RTLD_NOW
12786# else
12787# ifdef DL_NOW
12788# define LT_DLLAZY_OR_NOW DL_NOW
12789# else
12790# define LT_DLLAZY_OR_NOW 0
12791# endif
12792# endif
12793# endif
12794# endif
12795#endif
12796
12797/* When -fvisbility=hidden is used, assume the code has been annotated
12798 correspondingly for the symbols needed. */
12799#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
12800int fnord () __attribute__((visibility("default")));
12801#endif
12802
12803int fnord () { return 42; }
12804int main ()
12805{
12806 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
12807 int status = $lt_dlunknown;
12808
12809 if (self)
12810 {
12811 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
12812 else
12813 {
12814 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
12815 else puts (dlerror ());
12816 }
12817 /* dlclose (self); */
12818 }
12819 else
12820 puts (dlerror ());
12821
12822 return status;
12823}
12824_LT_EOF
12825 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
12826 (eval $ac_link) 2>&5
12827 ac_status=$?
12828 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
12829 test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
12830 (./conftest; exit; ) >&5 2>/dev/null
12831 lt_status=$?
12832 case x$lt_status in
12833 x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
12834 x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;
12835 x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;;
12836 esac
12837 else :
12838 # compilation failed
12839 lt_cv_dlopen_self_static=no
12840 fi
12841fi
12842rm -fr conftest*
12843
12844
12845fi
12846{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
12847$as_echo "$lt_cv_dlopen_self_static" >&6; }
12848 fi
12849
12850 CPPFLAGS="$save_CPPFLAGS"
12851 LDFLAGS="$save_LDFLAGS"
12852 LIBS="$save_LIBS"
12853 ;;
12854 esac
12855
12856 case $lt_cv_dlopen_self in
12857 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
12858 *) enable_dlopen_self=unknown ;;
12859 esac
12860
12861 case $lt_cv_dlopen_self_static in
12862 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
12863 *) enable_dlopen_self_static=unknown ;;
12864 esac
12865fi
12866
12867
12868
12869
12870
12871
12872
12873
12874
12875
12876
12877
12878
12879
12880
12881
12882
12883striplib=
12884old_striplib=
12885{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
12886$as_echo_n "checking whether stripping libraries is possible... " >&6; }
12887if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
12888 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
12889 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
12890 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12891$as_echo "yes" >&6; }
12892else
12893# FIXME - insert some real tests, host_os isn't really good enough
12894 case $host_os in
12895 darwin*)
12896 if test -n "$STRIP" ; then
12897 striplib="$STRIP -x"
12898 old_striplib="$STRIP -S"
12899 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12900$as_echo "yes" >&6; }
12901 else
12902 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12903$as_echo "no" >&6; }
12904 fi
12905 ;;
12906 *)
12907 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12908$as_echo "no" >&6; }
12909 ;;
12910 esac
12911fi
12912
12913
12914
12915
12916
12917
12918
12919
12920
12921
12922
12923
12924 # Report which library types will actually be built
12925 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
12926$as_echo_n "checking if libtool supports shared libraries... " >&6; }
12927 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
12928$as_echo "$can_build_shared" >&6; }
12929
12930 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
12931$as_echo_n "checking whether to build shared libraries... " >&6; }
12932 test "$can_build_shared" = "no" && enable_shared=no
12933
12934 # On AIX, shared libraries and static libraries use the same namespace, and
12935 # are all built from PIC.
12936 case $host_os in
12937 aix3*)
12938 test "$enable_shared" = yes && enable_static=no
12939 if test -n "$RANLIB"; then
12940 archive_cmds="$archive_cmds~\$RANLIB \$lib"
12941 postinstall_cmds='$RANLIB $lib'
12942 fi
12943 ;;
12944
12945 aix[4-9]*)
12946 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
12947 test "$enable_shared" = yes && enable_static=no
12948 fi
12949 ;;
12950 esac
12951 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
12952$as_echo "$enable_shared" >&6; }
12953
12954 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
12955$as_echo_n "checking whether to build static libraries... " >&6; }
12956 # Make sure either enable_shared or enable_static is yes.
12957 test "$enable_shared" = yes || enable_static=yes
12958 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
12959$as_echo "$enable_static" >&6; }
12960
12961
12962
12963
12964fi
12965ac_ext=c
12966ac_cpp='$CPP $CPPFLAGS'
12967ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
12968ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
12969ac_compiler_gnu=$ac_cv_c_compiler_gnu
12970
12971CC="$lt_save_CC"
12972
12973
12974
12975
12976
12977
12978
12979
12980
12981
12982
12983
12984
12985
12986
12987 ac_config_commands="$ac_config_commands libtool"
12988
12989
12990
12991
12992# Only expand once:
12993
12994
12995
12996# Select memory manager depending on user input.
12997# If no "-enable-maxmem", use jmemnobs
12998MEMORYMGR='jmemnobs'
12999MAXMEM="no"
13000# Check whether --enable-maxmem was given.
13001if test "${enable_maxmem+set}" = set; then :
13002 enableval=$enable_maxmem; MAXMEM="$enableval"
13003fi
13004
13005if test "x$MAXMEM" = xyes; then
13006 MAXMEM=1
13007fi
13008if test "x$MAXMEM" != xno; then
13009 if test -n "`echo $MAXMEM | sed 's/[0-9]//g'`"; then
13010 as_fn_error $? "non-numeric argument to --enable-maxmem" "$LINENO" 5
13011 fi
13012 DEFAULTMAXMEM=`expr $MAXMEM \* 1048576`
13013
13014cat >>confdefs.h <<_ACEOF
13015#define DEFAULT_MAX_MEM ${DEFAULTMAXMEM}
13016_ACEOF
13017
13018 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 'tmpfile()'" >&5
13019$as_echo_n "checking for 'tmpfile()'... " >&6; }
13020 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13021/* end confdefs.h. */
13022#include <stdio.h>
13023int
13024main ()
13025{
13026 FILE * tfile = tmpfile();
13027 ;
13028 return 0;
13029}
13030_ACEOF
13031if ac_fn_c_try_link "$LINENO"; then :
13032 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
13033$as_echo "yes" >&6; }
13034 MEMORYMGR='jmemansi'
13035else
13036 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13037$as_echo "no" >&6; }
13038 MEMORYMGR='jmemname'
13039
13040 # Test for the need to remove temporary files using a signal handler
13041 # (for cjpeg/djpeg)
13042
13043$as_echo "#define NEED_SIGNAL_CATCHER 1" >>confdefs.h
13044
13045 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 'mktemp()'" >&5
13046$as_echo_n "checking for 'mktemp()'... " >&6; }
13047 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13048/* end confdefs.h. */
13049
13050int
13051main ()
13052{
13053 char fname[80]; mktemp(fname);
13054 ;
13055 return 0;
13056}
13057_ACEOF
13058if ac_fn_c_try_link "$LINENO"; then :
13059 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
13060$as_echo "yes" >&6; }
13061else
13062 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13063$as_echo "no" >&6; }
13064
13065$as_echo "#define NO_MKTEMP 1" >>confdefs.h
13066
13067fi
13068rm -f core conftest.err conftest.$ac_objext \
13069 conftest$ac_exeext conftest.$ac_ext
13070fi
13071rm -f core conftest.err conftest.$ac_objext \
13072 conftest$ac_exeext conftest.$ac_ext
13073fi
13074
13075
13076# Extract the library version IDs from jpeglib.h.
13077{ $as_echo "$as_me:${as_lineno-$LINENO}: checking libjpeg version number" >&5
13078$as_echo_n "checking libjpeg version number... " >&6; }
13079major=`sed -ne 's/^#define JPEG_LIB_VERSION_MAJOR *\([0-9][0-9]*\).*$/\1/p' $srcdir/jpeglib.h`
13080minor=`sed -ne 's/^#define JPEG_LIB_VERSION_MINOR *\([0-9][0-9]*\).*$/\1/p' $srcdir/jpeglib.h`
13081JPEG_LIB_VERSION=`expr $major + $minor`:0:$minor
13082
13083{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $JPEG_LIB_VERSION" >&5
13084$as_echo "$JPEG_LIB_VERSION" >&6; }
13085
13086ac_config_files="$ac_config_files Makefile"
13087
13088cat >confcache <<\_ACEOF
13089# This file is a shell script that caches the results of configure
13090# tests run on this system so they can be shared between configure
13091# scripts and configure runs, see configure's option --config-cache.
13092# It is not useful on other systems. If it contains results you don't
13093# want to keep, you may remove or edit it.
13094#
13095# config.status only pays attention to the cache file if you give it
13096# the --recheck option to rerun configure.
13097#
13098# `ac_cv_env_foo' variables (set or unset) will be overridden when
13099# loading this file, other *unset* `ac_cv_foo' will be assigned the
13100# following values.
13101
13102_ACEOF
13103
13104# The following way of writing the cache mishandles newlines in values,
13105# but we know of no workaround that is simple, portable, and efficient.
13106# So, we kill variables containing newlines.
13107# Ultrix sh set writes to stderr and can't be redirected directly,
13108# and sets the high bit in the cache file unless we assign to the vars.
13109(
13110 for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
13111 eval ac_val=\$$ac_var
13112 case $ac_val in #(
13113 *${as_nl}*)
13114 case $ac_var in #(
13115 *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
13116$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
13117 esac
13118 case $ac_var in #(
13119 _ | IFS | as_nl) ;; #(
13120 BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
13121 *) { eval $ac_var=; unset $ac_var;} ;;
13122 esac ;;
13123 esac
13124 done
13125
13126 (set) 2>&1 |
13127 case $as_nl`(ac_space=' '; set) 2>&1` in #(
13128 *${as_nl}ac_space=\ *)
13129 # `set' does not quote correctly, so add quotes: double-quote
13130 # substitution turns \\\\ into \\, and sed turns \\ into \.
13131 sed -n \
13132 "s/'/'\\\\''/g;
13133 s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
13134 ;; #(
13135 *)
13136 # `set' quotes correctly as required by POSIX, so do not add quotes.
13137 sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
13138 ;;
13139 esac |
13140 sort
13141) |
13142 sed '
13143 /^ac_cv_env_/b end
13144 t clear
13145 :clear
13146 s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
13147 t end
13148 s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
13149 :end' >>confcache
13150if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
13151 if test -w "$cache_file"; then
13152 if test "x$cache_file" != "x/dev/null"; then
13153 { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
13154$as_echo "$as_me: updating cache $cache_file" >&6;}
13155 if test ! -f "$cache_file" || test -h "$cache_file"; then
13156 cat confcache >"$cache_file"
13157 else
13158 case $cache_file in #(
13159 */* | ?:*)
13160 mv -f confcache "$cache_file"$$ &&
13161 mv -f "$cache_file"$$ "$cache_file" ;; #(
13162 *)
13163 mv -f confcache "$cache_file" ;;
13164 esac
13165 fi
13166 fi
13167 else
13168 { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
13169$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
13170 fi
13171fi
13172rm -f confcache
13173
13174test "x$prefix" = xNONE && prefix=$ac_default_prefix
13175# Let make expand exec_prefix.
13176test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
13177
13178DEFS=-DHAVE_CONFIG_H
13179
13180ac_libobjs=
13181ac_ltlibobjs=
13182U=
13183for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
13184 # 1. Remove the extension, and $U if already installed.
13185 ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
13186 ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
13187 # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
13188 # will be set to the directory where LIBOBJS objects are built.
13189 as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
13190 as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
13191done
13192LIBOBJS=$ac_libobjs
13193
13194LTLIBOBJS=$ac_ltlibobjs
13195
13196
13197{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
13198$as_echo_n "checking that generated files are newer than configure... " >&6; }
13199 if test -n "$am_sleep_pid"; then
13200 # Hide warnings about reused PIDs.
13201 wait $am_sleep_pid 2>/dev/null
13202 fi
13203 { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
13204$as_echo "done" >&6; }
13205 if test -n "$EXEEXT"; then
13206 am__EXEEXT_TRUE=
13207 am__EXEEXT_FALSE='#'
13208else
13209 am__EXEEXT_TRUE='#'
13210 am__EXEEXT_FALSE=
13211fi
13212
13213if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
13214 as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
13215Usually this means the macro was only invoked conditionally." "$LINENO" 5
13216fi
13217if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
13218 as_fn_error $? "conditional \"AMDEP\" was never defined.
13219Usually this means the macro was only invoked conditionally." "$LINENO" 5
13220fi
13221if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
13222 as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
13223Usually this means the macro was only invoked conditionally." "$LINENO" 5
13224fi
13225if test -z "${HAVE_LD_VERSION_SCRIPT_TRUE}" && test -z "${HAVE_LD_VERSION_SCRIPT_FALSE}"; then
13226 as_fn_error $? "conditional \"HAVE_LD_VERSION_SCRIPT\" was never defined.
13227Usually this means the macro was only invoked conditionally." "$LINENO" 5
13228fi
13229
13230: "${CONFIG_STATUS=./config.status}"
13231ac_write_fail=0
13232ac_clean_files_save=$ac_clean_files
13233ac_clean_files="$ac_clean_files $CONFIG_STATUS"
13234{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
13235$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
13236as_write_fail=0
13237cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
13238#! $SHELL
13239# Generated by $as_me.
13240# Run this file to recreate the current configuration.
13241# Compiler output produced by configure, useful for debugging
13242# configure, is in config.log if it exists.
13243
13244debug=false
13245ac_cs_recheck=false
13246ac_cs_silent=false
13247
13248SHELL=\${CONFIG_SHELL-$SHELL}
13249export SHELL
13250_ASEOF
13251cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
13252## -------------------- ##
13253## M4sh Initialization. ##
13254## -------------------- ##
13255
13256# Be more Bourne compatible
13257DUALCASE=1; export DUALCASE # for MKS sh
13258if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
13259 emulate sh
13260 NULLCMD=:
13261 # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
13262 # is contrary to our usage. Disable this feature.
13263 alias -g '${1+"$@"}'='"$@"'
13264 setopt NO_GLOB_SUBST
13265else
13266 case `(set -o) 2>/dev/null` in #(
13267 *posix*) :
13268 set -o posix ;; #(
13269 *) :
13270 ;;
13271esac
13272fi
13273
13274
13275as_nl='
13276'
13277export as_nl
13278# Printing a long string crashes Solaris 7 /usr/bin/printf.
13279as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
13280as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
13281as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
13282# Prefer a ksh shell builtin over an external printf program on Solaris,
13283# but without wasting forks for bash or zsh.
13284if test -z "$BASH_VERSION$ZSH_VERSION" \
13285 && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
13286 as_echo='print -r --'
13287 as_echo_n='print -rn --'
13288elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
13289 as_echo='printf %s\n'
13290 as_echo_n='printf %s'
13291else
13292 if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
13293 as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
13294 as_echo_n='/usr/ucb/echo -n'
13295 else
13296 as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
13297 as_echo_n_body='eval
13298 arg=$1;
13299 case $arg in #(
13300 *"$as_nl"*)
13301 expr "X$arg" : "X\\(.*\\)$as_nl";
13302 arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
13303 esac;
13304 expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
13305 '
13306 export as_echo_n_body
13307 as_echo_n='sh -c $as_echo_n_body as_echo'
13308 fi
13309 export as_echo_body
13310 as_echo='sh -c $as_echo_body as_echo'
13311fi
13312
13313# The user is always right.
13314if test "${PATH_SEPARATOR+set}" != set; then
13315 PATH_SEPARATOR=:
13316 (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
13317 (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
13318 PATH_SEPARATOR=';'
13319 }
13320fi
13321
13322
13323# IFS
13324# We need space, tab and new line, in precisely that order. Quoting is
13325# there to prevent editors from complaining about space-tab.
13326# (If _AS_PATH_WALK were called with IFS unset, it would disable word
13327# splitting by setting IFS to empty value.)
13328IFS=" "" $as_nl"
13329
13330# Find who we are. Look in the path if we contain no directory separator.
13331as_myself=
13332case $0 in #((
13333 *[\\/]* ) as_myself=$0 ;;
13334 *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
13335for as_dir in $PATH
13336do
13337 IFS=$as_save_IFS
13338 test -z "$as_dir" && as_dir=.
13339 test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
13340 done
13341IFS=$as_save_IFS
13342
13343 ;;
13344esac
13345# We did not find ourselves, most probably we were run as `sh COMMAND'
13346# in which case we are not to be found in the path.
13347if test "x$as_myself" = x; then
13348 as_myself=$0
13349fi
13350if test ! -f "$as_myself"; then
13351 $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
13352 exit 1
13353fi
13354
13355# Unset variables that we do not need and which cause bugs (e.g. in
13356# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
13357# suppresses any "Segmentation fault" message there. '((' could
13358# trigger a bug in pdksh 5.2.14.
13359for as_var in BASH_ENV ENV MAIL MAILPATH
13360do eval test x\${$as_var+set} = xset \
13361 && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
13362done
13363PS1='$ '
13364PS2='> '
13365PS4='+ '
13366
13367# NLS nuisances.
13368LC_ALL=C
13369export LC_ALL
13370LANGUAGE=C
13371export LANGUAGE
13372
13373# CDPATH.
13374(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
13375
13376
13377# as_fn_error STATUS ERROR [LINENO LOG_FD]
13378# ----------------------------------------
13379# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
13380# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
13381# script with STATUS, using 1 if that was 0.
13382as_fn_error ()
13383{
13384 as_status=$1; test $as_status -eq 0 && as_status=1
13385 if test "$4"; then
13386 as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
13387 $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
13388 fi
13389 $as_echo "$as_me: error: $2" >&2
13390 as_fn_exit $as_status
13391} # as_fn_error
13392
13393
13394# as_fn_set_status STATUS
13395# -----------------------
13396# Set $? to STATUS, without forking.
13397as_fn_set_status ()
13398{
13399 return $1
13400} # as_fn_set_status
13401
13402# as_fn_exit STATUS
13403# -----------------
13404# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
13405as_fn_exit ()
13406{
13407 set +e
13408 as_fn_set_status $1
13409 exit $1
13410} # as_fn_exit
13411
13412# as_fn_unset VAR
13413# ---------------
13414# Portably unset VAR.
13415as_fn_unset ()
13416{
13417 { eval $1=; unset $1;}
13418}
13419as_unset=as_fn_unset
13420# as_fn_append VAR VALUE
13421# ----------------------
13422# Append the text in VALUE to the end of the definition contained in VAR. Take
13423# advantage of any shell optimizations that allow amortized linear growth over
13424# repeated appends, instead of the typical quadratic growth present in naive
13425# implementations.
13426if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
13427 eval 'as_fn_append ()
13428 {
13429 eval $1+=\$2
13430 }'
13431else
13432 as_fn_append ()
13433 {
13434 eval $1=\$$1\$2
13435 }
13436fi # as_fn_append
13437
13438# as_fn_arith ARG...
13439# ------------------
13440# Perform arithmetic evaluation on the ARGs, and store the result in the
13441# global $as_val. Take advantage of shells that can avoid forks. The arguments
13442# must be portable across $(()) and expr.
13443if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
13444 eval 'as_fn_arith ()
13445 {
13446 as_val=$(( $* ))
13447 }'
13448else
13449 as_fn_arith ()
13450 {
13451 as_val=`expr "$@" || test $? -eq 1`
13452 }
13453fi # as_fn_arith
13454
13455
13456if expr a : '\(a\)' >/dev/null 2>&1 &&
13457 test "X`expr 00001 : '.*\(...\)'`" = X001; then
13458 as_expr=expr
13459else
13460 as_expr=false
13461fi
13462
13463if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
13464 as_basename=basename
13465else
13466 as_basename=false
13467fi
13468
13469if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
13470 as_dirname=dirname
13471else
13472 as_dirname=false
13473fi
13474
13475as_me=`$as_basename -- "$0" ||
13476$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
13477 X"$0" : 'X\(//\)$' \| \
13478 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
13479$as_echo X/"$0" |
13480 sed '/^.*\/\([^/][^/]*\)\/*$/{
13481 s//\1/
13482 q
13483 }
13484 /^X\/\(\/\/\)$/{
13485 s//\1/
13486 q
13487 }
13488 /^X\/\(\/\).*/{
13489 s//\1/
13490 q
13491 }
13492 s/.*/./; q'`
13493
13494# Avoid depending upon Character Ranges.
13495as_cr_letters='abcdefghijklmnopqrstuvwxyz'
13496as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
13497as_cr_Letters=$as_cr_letters$as_cr_LETTERS
13498as_cr_digits='0123456789'
13499as_cr_alnum=$as_cr_Letters$as_cr_digits
13500
13501ECHO_C= ECHO_N= ECHO_T=
13502case `echo -n x` in #(((((
13503-n*)
13504 case `echo 'xy\c'` in
13505 *c*) ECHO_T=' ';; # ECHO_T is single tab character.
13506 xy) ECHO_C='\c';;
13507 *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
13508 ECHO_T=' ';;
13509 esac;;
13510*)
13511 ECHO_N='-n';;
13512esac
13513
13514rm -f conf$$ conf$$.exe conf$$.file
13515if test -d conf$$.dir; then
13516 rm -f conf$$.dir/conf$$.file
13517else
13518 rm -f conf$$.dir
13519 mkdir conf$$.dir 2>/dev/null
13520fi
13521if (echo >conf$$.file) 2>/dev/null; then
13522 if ln -s conf$$.file conf$$ 2>/dev/null; then
13523 as_ln_s='ln -s'
13524 # ... but there are two gotchas:
13525 # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
13526 # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
13527 # In both cases, we have to default to `cp -pR'.
13528 ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
13529 as_ln_s='cp -pR'
13530 elif ln conf$$.file conf$$ 2>/dev/null; then
13531 as_ln_s=ln
13532 else
13533 as_ln_s='cp -pR'
13534 fi
13535else
13536 as_ln_s='cp -pR'
13537fi
13538rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
13539rmdir conf$$.dir 2>/dev/null
13540
13541
13542# as_fn_mkdir_p
13543# -------------
13544# Create "$as_dir" as a directory, including parents if necessary.
13545as_fn_mkdir_p ()
13546{
13547
13548 case $as_dir in #(
13549 -*) as_dir=./$as_dir;;
13550 esac
13551 test -d "$as_dir" || eval $as_mkdir_p || {
13552 as_dirs=
13553 while :; do
13554 case $as_dir in #(
13555 *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
13556 *) as_qdir=$as_dir;;
13557 esac
13558 as_dirs="'$as_qdir' $as_dirs"
13559 as_dir=`$as_dirname -- "$as_dir" ||
13560$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
13561 X"$as_dir" : 'X\(//\)[^/]' \| \
13562 X"$as_dir" : 'X\(//\)$' \| \
13563 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
13564$as_echo X"$as_dir" |
13565 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
13566 s//\1/
13567 q
13568 }
13569 /^X\(\/\/\)[^/].*/{
13570 s//\1/
13571 q
13572 }
13573 /^X\(\/\/\)$/{
13574 s//\1/
13575 q
13576 }
13577 /^X\(\/\).*/{
13578 s//\1/
13579 q
13580 }
13581 s/.*/./; q'`
13582 test -d "$as_dir" && break
13583 done
13584 test -z "$as_dirs" || eval "mkdir $as_dirs"
13585 } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
13586
13587
13588} # as_fn_mkdir_p
13589if mkdir -p . 2>/dev/null; then
13590 as_mkdir_p='mkdir -p "$as_dir"'
13591else
13592 test -d ./-p && rmdir ./-p
13593 as_mkdir_p=false
13594fi
13595
13596
13597# as_fn_executable_p FILE
13598# -----------------------
13599# Test if FILE is an executable regular file.
13600as_fn_executable_p ()
13601{
13602 test -f "$1" && test -x "$1"
13603} # as_fn_executable_p
13604as_test_x='test -x'
13605as_executable_p=as_fn_executable_p
13606
13607# Sed expression to map a string onto a valid CPP name.
13608as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
13609
13610# Sed expression to map a string onto a valid variable name.
13611as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
13612
13613
13614exec 6>&1
13615## ----------------------------------- ##
13616## Main body of $CONFIG_STATUS script. ##
13617## ----------------------------------- ##
13618_ASEOF
13619test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
13620
13621cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
13622# Save the log message, to keep $0 and so on meaningful, and to
13623# report actual input values of CONFIG_FILES etc. instead of their
13624# values after options handling.
13625ac_log="
13626This file was extended by libjpeg $as_me 9.1.0, which was
13627generated by GNU Autoconf 2.69. Invocation command line was
13628
13629 CONFIG_FILES = $CONFIG_FILES
13630 CONFIG_HEADERS = $CONFIG_HEADERS
13631 CONFIG_LINKS = $CONFIG_LINKS
13632 CONFIG_COMMANDS = $CONFIG_COMMANDS
13633 $ $0 $@
13634
13635on `(hostname || uname -n) 2>/dev/null | sed 1q`
13636"
13637
13638_ACEOF
13639
13640case $ac_config_files in *"
13641"*) set x $ac_config_files; shift; ac_config_files=$*;;
13642esac
13643
13644case $ac_config_headers in *"
13645"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
13646esac
13647
13648
13649cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
13650# Files that config.status was made for.
13651config_files="$ac_config_files"
13652config_headers="$ac_config_headers"
13653config_commands="$ac_config_commands"
13654
13655_ACEOF
13656
13657cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
13658ac_cs_usage="\
13659\`$as_me' instantiates files and other configuration actions
13660from templates according to the current configuration. Unless the files
13661and actions are specified as TAGs, all are instantiated by default.
13662
13663Usage: $0 [OPTION]... [TAG]...
13664
13665 -h, --help print this help, then exit
13666 -V, --version print version number and configuration settings, then exit
13667 --config print configuration, then exit
13668 -q, --quiet, --silent
13669 do not print progress messages
13670 -d, --debug don't remove temporary files
13671 --recheck update $as_me by reconfiguring in the same conditions
13672 --file=FILE[:TEMPLATE]
13673 instantiate the configuration file FILE
13674 --header=FILE[:TEMPLATE]
13675 instantiate the configuration header FILE
13676
13677Configuration files:
13678$config_files
13679
13680Configuration headers:
13681$config_headers
13682
13683Configuration commands:
13684$config_commands
13685
13686Report bugs to the package provider."
13687
13688_ACEOF
13689cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
13690ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
13691ac_cs_version="\\
13692libjpeg config.status 9.1.0
13693configured by $0, generated by GNU Autoconf 2.69,
13694 with options \\"\$ac_cs_config\\"
13695
13696Copyright (C) 2012 Free Software Foundation, Inc.
13697This config.status script is free software; the Free Software Foundation
13698gives unlimited permission to copy, distribute and modify it."
13699
13700ac_pwd='$ac_pwd'
13701srcdir='$srcdir'
13702INSTALL='$INSTALL'
13703MKDIR_P='$MKDIR_P'
13704AWK='$AWK'
13705test -n "\$AWK" || AWK=awk
13706_ACEOF
13707
13708cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
13709# The default lists apply if the user does not specify any file.
13710ac_need_defaults=:
13711while test $# != 0
13712do
13713 case $1 in
13714 --*=?*)
13715 ac_option=`expr "X$1" : 'X\([^=]*\)='`
13716 ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
13717 ac_shift=:
13718 ;;
13719 --*=)
13720 ac_option=`expr "X$1" : 'X\([^=]*\)='`
13721 ac_optarg=
13722 ac_shift=:
13723 ;;
13724 *)
13725 ac_option=$1
13726 ac_optarg=$2
13727 ac_shift=shift
13728 ;;
13729 esac
13730
13731 case $ac_option in
13732 # Handling of the options.
13733 -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
13734 ac_cs_recheck=: ;;
13735 --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
13736 $as_echo "$ac_cs_version"; exit ;;
13737 --config | --confi | --conf | --con | --co | --c )
13738 $as_echo "$ac_cs_config"; exit ;;
13739 --debug | --debu | --deb | --de | --d | -d )
13740 debug=: ;;
13741 --file | --fil | --fi | --f )
13742 $ac_shift
13743 case $ac_optarg in
13744 *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
13745 '') as_fn_error $? "missing file argument" ;;
13746 esac
13747 as_fn_append CONFIG_FILES " '$ac_optarg'"
13748 ac_need_defaults=false;;
13749 --header | --heade | --head | --hea )
13750 $ac_shift
13751 case $ac_optarg in
13752 *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
13753 esac
13754 as_fn_append CONFIG_HEADERS " '$ac_optarg'"
13755 ac_need_defaults=false;;
13756 --he | --h)
13757 # Conflict between --help and --header
13758 as_fn_error $? "ambiguous option: \`$1'
13759Try \`$0 --help' for more information.";;
13760 --help | --hel | -h )
13761 $as_echo "$ac_cs_usage"; exit ;;
13762 -q | -quiet | --quiet | --quie | --qui | --qu | --q \
13763 | -silent | --silent | --silen | --sile | --sil | --si | --s)
13764 ac_cs_silent=: ;;
13765
13766 # This is an error.
13767 -*) as_fn_error $? "unrecognized option: \`$1'
13768Try \`$0 --help' for more information." ;;
13769
13770 *) as_fn_append ac_config_targets " $1"
13771 ac_need_defaults=false ;;
13772
13773 esac
13774 shift
13775done
13776
13777ac_configure_extra_args=
13778
13779if $ac_cs_silent; then
13780 exec 6>/dev/null
13781 ac_configure_extra_args="$ac_configure_extra_args --silent"
13782fi
13783
13784_ACEOF
13785cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
13786if \$ac_cs_recheck; then
13787 set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
13788 shift
13789 \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
13790 CONFIG_SHELL='$SHELL'
13791 export CONFIG_SHELL
13792 exec "\$@"
13793fi
13794
13795_ACEOF
13796cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
13797exec 5>>config.log
13798{
13799 echo
13800 sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
13801## Running $as_me. ##
13802_ASBOX
13803 $as_echo "$ac_log"
13804} >&5
13805
13806_ACEOF
13807cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
13808#
13809# INIT-COMMANDS
13810#
13811AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
13812
13813
13814# The HP-UX ksh and POSIX shell print the target directory to stdout
13815# if CDPATH is set.
13816(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
13817
13818sed_quote_subst='$sed_quote_subst'
13819double_quote_subst='$double_quote_subst'
13820delay_variable_subst='$delay_variable_subst'
13821AS='`$ECHO "$AS" | $SED "$delay_single_quote_subst"`'
13822DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'
13823OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'
13824macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`'
13825macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`'
13826enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`'
13827enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'
13828pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`'
13829enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`'
13830SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`'
13831ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`'
13832PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`'
13833host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`'
13834host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`'
13835host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`'
13836build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`'
13837build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`'
13838build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`'
13839SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`'
13840Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`'
13841GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`'
13842EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`'
13843FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`'
13844LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`'
13845NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`'
13846LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`'
13847max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`'
13848ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`'
13849exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
13850lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
13851lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
13852lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
13853lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`'
13854lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'
13855reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'
13856reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'
13857deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'
13858file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'
13859file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`'
13860want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`'
13861sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'
13862AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'
13863AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'
13864archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'
13865STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
13866RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
13867old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
13868old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`'
13869old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`'
13870lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`'
13871CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`'
13872CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`'
13873compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`'
13874GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`'
13875lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`'
13876lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
13877lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
13878lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
13879nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`'
13880lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`'
13881objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`'
13882MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`'
13883lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`'
13884lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`'
13885lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`'
13886lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`'
13887lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`'
13888need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`'
13889MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`'
13890DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
13891NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
13892LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
13893OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`'
13894OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`'
13895libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`'
13896shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`'
13897extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`'
13898archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`'
13899enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`'
13900export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`'
13901whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`'
13902compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`'
13903old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`'
13904old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`'
13905archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`'
13906archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`'
13907module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`'
13908module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`'
13909with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`'
13910allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`'
13911no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`'
13912hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`'
13913hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`'
13914hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`'
13915hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`'
13916hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`'
13917hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`'
13918hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
13919inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
13920link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
13921always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`'
13922export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`'
13923exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`'
13924include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`'
13925prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`'
13926postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`'
13927file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
13928variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
13929need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
13930need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`'
13931version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`'
13932runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`'
13933shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`'
13934shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`'
13935libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`'
13936library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`'
13937soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`'
13938install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`'
13939postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`'
13940postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`'
13941finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`'
13942finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`'
13943hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`'
13944sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`'
13945sys_lib_dlsearch_path_spec='`$ECHO "$sys_lib_dlsearch_path_spec" | $SED "$delay_single_quote_subst"`'
13946hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`'
13947enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`'
13948enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`'
13949enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`'
13950old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`'
13951striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`'
13952
13953LTCC='$LTCC'
13954LTCFLAGS='$LTCFLAGS'
13955compiler='$compiler_DEFAULT'
13956
13957# A function that is used when there is no print builtin or printf.
13958func_fallback_echo ()
13959{
13960 eval 'cat <<_LTECHO_EOF
13961\$1
13962_LTECHO_EOF'
13963}
13964
13965# Quote evaled strings.
13966for var in AS \
13967DLLTOOL \
13968OBJDUMP \
13969SHELL \
13970ECHO \
13971PATH_SEPARATOR \
13972SED \
13973GREP \
13974EGREP \
13975FGREP \
13976LD \
13977NM \
13978LN_S \
13979lt_SP2NL \
13980lt_NL2SP \
13981reload_flag \
13982deplibs_check_method \
13983file_magic_cmd \
13984file_magic_glob \
13985want_nocaseglob \
13986sharedlib_from_linklib_cmd \
13987AR \
13988AR_FLAGS \
13989archiver_list_spec \
13990STRIP \
13991RANLIB \
13992CC \
13993CFLAGS \
13994compiler \
13995lt_cv_sys_global_symbol_pipe \
13996lt_cv_sys_global_symbol_to_cdecl \
13997lt_cv_sys_global_symbol_to_c_name_address \
13998lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
13999nm_file_list_spec \
14000lt_prog_compiler_no_builtin_flag \
14001lt_prog_compiler_pic \
14002lt_prog_compiler_wl \
14003lt_prog_compiler_static \
14004lt_cv_prog_compiler_c_o \
14005need_locks \
14006MANIFEST_TOOL \
14007DSYMUTIL \
14008NMEDIT \
14009LIPO \
14010OTOOL \
14011OTOOL64 \
14012shrext_cmds \
14013export_dynamic_flag_spec \
14014whole_archive_flag_spec \
14015compiler_needs_object \
14016with_gnu_ld \
14017allow_undefined_flag \
14018no_undefined_flag \
14019hardcode_libdir_flag_spec \
14020hardcode_libdir_separator \
14021exclude_expsyms \
14022include_expsyms \
14023file_list_spec \
14024variables_saved_for_relink \
14025libname_spec \
14026library_names_spec \
14027soname_spec \
14028install_override_mode \
14029finish_eval \
14030old_striplib \
14031striplib; do
14032 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
14033 *[\\\\\\\`\\"\\\$]*)
14034 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
14035 ;;
14036 *)
14037 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
14038 ;;
14039 esac
14040done
14041
14042# Double-quote double-evaled strings.
14043for var in reload_cmds \
14044old_postinstall_cmds \
14045old_postuninstall_cmds \
14046old_archive_cmds \
14047extract_expsyms_cmds \
14048old_archive_from_new_cmds \
14049old_archive_from_expsyms_cmds \
14050archive_cmds \
14051archive_expsym_cmds \
14052module_cmds \
14053module_expsym_cmds \
14054export_symbols_cmds \
14055prelink_cmds \
14056postlink_cmds \
14057postinstall_cmds \
14058postuninstall_cmds \
14059finish_cmds \
14060sys_lib_search_path_spec \
14061sys_lib_dlsearch_path_spec; do
14062 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
14063 *[\\\\\\\`\\"\\\$]*)
14064 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
14065 ;;
14066 *)
14067 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
14068 ;;
14069 esac
14070done
14071
14072ac_aux_dir='$ac_aux_dir'
14073xsi_shell='$xsi_shell'
14074lt_shell_append='$lt_shell_append'
14075
14076# See if we are running on zsh, and set the options which allow our
14077# commands through without removal of \ escapes INIT.
14078if test -n "\${ZSH_VERSION+set}" ; then
14079 setopt NO_GLOB_SUBST
14080fi
14081
14082
14083 PACKAGE='$PACKAGE'
14084 VERSION='$VERSION'
14085 TIMESTAMP='$TIMESTAMP'
14086 RM='$RM'
14087 ofile='$ofile'
14088
14089
14090
14091
14092_ACEOF
14093
14094cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
14095
14096# Handling of arguments.
14097for ac_config_target in $ac_config_targets
14098do
14099 case $ac_config_target in
14100 "jconfig.h") CONFIG_HEADERS="$CONFIG_HEADERS jconfig.h:jconfig.cfg" ;;
14101 "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
14102 "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
14103 "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
14104
14105 *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
14106 esac
14107done
14108
14109
14110# If the user did not use the arguments to specify the items to instantiate,
14111# then the envvar interface is used. Set only those that are not.
14112# We use the long form for the default assignment because of an extremely
14113# bizarre bug on SunOS 4.1.3.
14114if $ac_need_defaults; then
14115 test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
14116 test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
14117 test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
14118fi
14119
14120# Have a temporary directory for convenience. Make it in the build tree
14121# simply because there is no reason against having it here, and in addition,
14122# creating and moving files from /tmp can sometimes cause problems.
14123# Hook for its removal unless debugging.
14124# Note that there is a small window in which the directory will not be cleaned:
14125# after its creation but before its name has been assigned to `$tmp'.
14126$debug ||
14127{
14128 tmp= ac_tmp=
14129 trap 'exit_status=$?
14130 : "${ac_tmp:=$tmp}"
14131 { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
14132' 0
14133 trap 'as_fn_exit 1' 1 2 13 15
14134}
14135# Create a (secure) tmp directory for tmp files.
14136
14137{
14138 tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
14139 test -d "$tmp"
14140} ||
14141{
14142 tmp=./conf$$-$RANDOM
14143 (umask 077 && mkdir "$tmp")
14144} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
14145ac_tmp=$tmp
14146
14147# Set up the scripts for CONFIG_FILES section.
14148# No need to generate them if there are no CONFIG_FILES.
14149# This happens for instance with `./config.status config.h'.
14150if test -n "$CONFIG_FILES"; then
14151
14152
14153ac_cr=`echo X | tr X '\015'`
14154# On cygwin, bash can eat \r inside `` if the user requested igncr.
14155# But we know of no other shell where ac_cr would be empty at this
14156# point, so we can use a bashism as a fallback.
14157if test "x$ac_cr" = x; then
14158 eval ac_cr=\$\'\\r\'
14159fi
14160ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
14161if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
14162 ac_cs_awk_cr='\\r'
14163else
14164 ac_cs_awk_cr=$ac_cr
14165fi
14166
14167echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
14168_ACEOF
14169
14170
14171{
14172 echo "cat >conf$$subs.awk <<_ACEOF" &&
14173 echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
14174 echo "_ACEOF"
14175} >conf$$subs.sh ||
14176 as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
14177ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
14178ac_delim='%!_!# '
14179for ac_last_try in false false false false false :; do
14180 . ./conf$$subs.sh ||
14181 as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
14182
14183 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
14184 if test $ac_delim_n = $ac_delim_num; then
14185 break
14186 elif $ac_last_try; then
14187 as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
14188 else
14189 ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
14190 fi
14191done
14192rm -f conf$$subs.sh
14193
14194cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
14195cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
14196_ACEOF
14197sed -n '
14198h
14199s/^/S["/; s/!.*/"]=/
14200p
14201g
14202s/^[^!]*!//
14203:repl
14204t repl
14205s/'"$ac_delim"'$//
14206t delim
14207:nl
14208h
14209s/\(.\{148\}\)..*/\1/
14210t more1
14211s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
14212p
14213n
14214b repl
14215:more1
14216s/["\\]/\\&/g; s/^/"/; s/$/"\\/
14217p
14218g
14219s/.\{148\}//
14220t nl
14221:delim
14222h
14223s/\(.\{148\}\)..*/\1/
14224t more2
14225s/["\\]/\\&/g; s/^/"/; s/$/"/
14226p
14227b
14228:more2
14229s/["\\]/\\&/g; s/^/"/; s/$/"\\/
14230p
14231g
14232s/.\{148\}//
14233t delim
14234' <conf$$subs.awk | sed '
14235/^[^""]/{
14236 N
14237 s/\n//
14238}
14239' >>$CONFIG_STATUS || ac_write_fail=1
14240rm -f conf$$subs.awk
14241cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
14242_ACAWK
14243cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
14244 for (key in S) S_is_set[key] = 1
14245 FS = ""
14246
14247}
14248{
14249 line = $ 0
14250 nfields = split(line, field, "@")
14251 substed = 0
14252 len = length(field[1])
14253 for (i = 2; i < nfields; i++) {
14254 key = field[i]
14255 keylen = length(key)
14256 if (S_is_set[key]) {
14257 value = S[key]
14258 line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
14259 len += length(value) + length(field[++i])
14260 substed = 1
14261 } else
14262 len += 1 + keylen
14263 }
14264
14265 print line
14266}
14267
14268_ACAWK
14269_ACEOF
14270cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
14271if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
14272 sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
14273else
14274 cat
14275fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
14276 || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
14277_ACEOF
14278
14279# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
14280# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
14281# trailing colons and then remove the whole line if VPATH becomes empty
14282# (actually we leave an empty line to preserve line numbers).
14283if test "x$srcdir" = x.; then
14284 ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
14285h
14286s///
14287s/^/:/
14288s/[ ]*$/:/
14289s/:\$(srcdir):/:/g
14290s/:\${srcdir}:/:/g
14291s/:@srcdir@:/:/g
14292s/^:*//
14293s/:*$//
14294x
14295s/\(=[ ]*\).*/\1/
14296G
14297s/\n//
14298s/^[^=]*=[ ]*$//
14299}'
14300fi
14301
14302cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
14303fi # test -n "$CONFIG_FILES"
14304
14305# Set up the scripts for CONFIG_HEADERS section.
14306# No need to generate them if there are no CONFIG_HEADERS.
14307# This happens for instance with `./config.status Makefile'.
14308if test -n "$CONFIG_HEADERS"; then
14309cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
14310BEGIN {
14311_ACEOF
14312
14313# Transform confdefs.h into an awk script `defines.awk', embedded as
14314# here-document in config.status, that substitutes the proper values into
14315# config.h.in to produce config.h.
14316
14317# Create a delimiter string that does not exist in confdefs.h, to ease
14318# handling of long lines.
14319ac_delim='%!_!# '
14320for ac_last_try in false false :; do
14321 ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
14322 if test -z "$ac_tt"; then
14323 break
14324 elif $ac_last_try; then
14325 as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
14326 else
14327 ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
14328 fi
14329done
14330
14331# For the awk script, D is an array of macro values keyed by name,
14332# likewise P contains macro parameters if any. Preserve backslash
14333# newline sequences.
14334
14335ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
14336sed -n '
14337s/.\{148\}/&'"$ac_delim"'/g
14338t rset
14339:rset
14340s/^[ ]*#[ ]*define[ ][ ]*/ /
14341t def
14342d
14343:def
14344s/\\$//
14345t bsnl
14346s/["\\]/\\&/g
14347s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
14348D["\1"]=" \3"/p
14349s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
14350d
14351:bsnl
14352s/["\\]/\\&/g
14353s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
14354D["\1"]=" \3\\\\\\n"\\/p
14355t cont
14356s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
14357t cont
14358d
14359:cont
14360n
14361s/.\{148\}/&'"$ac_delim"'/g
14362t clear
14363:clear
14364s/\\$//
14365t bsnlc
14366s/["\\]/\\&/g; s/^/"/; s/$/"/p
14367d
14368:bsnlc
14369s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
14370b cont
14371' <confdefs.h | sed '
14372s/'"$ac_delim"'/"\\\
14373"/g' >>$CONFIG_STATUS || ac_write_fail=1
14374
14375cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
14376 for (key in D) D_is_set[key] = 1
14377 FS = ""
14378}
14379/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
14380 line = \$ 0
14381 split(line, arg, " ")
14382 if (arg[1] == "#") {
14383 defundef = arg[2]
14384 mac1 = arg[3]
14385 } else {
14386 defundef = substr(arg[1], 2)
14387 mac1 = arg[2]
14388 }
14389 split(mac1, mac2, "(") #)
14390 macro = mac2[1]
14391 prefix = substr(line, 1, index(line, defundef) - 1)
14392 if (D_is_set[macro]) {
14393 # Preserve the white space surrounding the "#".
14394 print prefix "define", macro P[macro] D[macro]
14395 next
14396 } else {
14397 # Replace #undef with comments. This is necessary, for example,
14398 # in the case of _POSIX_SOURCE, which is predefined and required
14399 # on some systems where configure will not decide to define it.
14400 if (defundef == "undef") {
14401 print "/*", prefix defundef, macro, "*/"
14402 next
14403 }
14404 }
14405}
14406{ print }
14407_ACAWK
14408_ACEOF
14409cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
14410 as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
14411fi # test -n "$CONFIG_HEADERS"
14412
14413
14414eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS"
14415shift
14416for ac_tag
14417do
14418 case $ac_tag in
14419 :[FHLC]) ac_mode=$ac_tag; continue;;
14420 esac
14421 case $ac_mode$ac_tag in
14422 :[FHL]*:*);;
14423 :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
14424 :[FH]-) ac_tag=-:-;;
14425 :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
14426 esac
14427 ac_save_IFS=$IFS
14428 IFS=:
14429 set x $ac_tag
14430 IFS=$ac_save_IFS
14431 shift
14432 ac_file=$1
14433 shift
14434
14435 case $ac_mode in
14436 :L) ac_source=$1;;
14437 :[FH])
14438 ac_file_inputs=
14439 for ac_f
14440 do
14441 case $ac_f in
14442 -) ac_f="$ac_tmp/stdin";;
14443 *) # Look for the file first in the build tree, then in the source tree
14444 # (if the path is not absolute). The absolute path cannot be DOS-style,
14445 # because $ac_f cannot contain `:'.
14446 test -f "$ac_f" ||
14447 case $ac_f in
14448 [\\/$]*) false;;
14449 *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
14450 esac ||
14451 as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
14452 esac
14453 case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
14454 as_fn_append ac_file_inputs " '$ac_f'"
14455 done
14456
14457 # Let's still pretend it is `configure' which instantiates (i.e., don't
14458 # use $as_me), people would be surprised to read:
14459 # /* config.h. Generated by config.status. */
14460 configure_input='Generated from '`
14461 $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
14462 `' by configure.'
14463 if test x"$ac_file" != x-; then
14464 configure_input="$ac_file. $configure_input"
14465 { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
14466$as_echo "$as_me: creating $ac_file" >&6;}
14467 fi
14468 # Neutralize special characters interpreted by sed in replacement strings.
14469 case $configure_input in #(
14470 *\&* | *\|* | *\\* )
14471 ac_sed_conf_input=`$as_echo "$configure_input" |
14472 sed 's/[\\\\&|]/\\\\&/g'`;; #(
14473 *) ac_sed_conf_input=$configure_input;;
14474 esac
14475
14476 case $ac_tag in
14477 *:-:* | *:-) cat >"$ac_tmp/stdin" \
14478 || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
14479 esac
14480 ;;
14481 esac
14482
14483 ac_dir=`$as_dirname -- "$ac_file" ||
14484$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
14485 X"$ac_file" : 'X\(//\)[^/]' \| \
14486 X"$ac_file" : 'X\(//\)$' \| \
14487 X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
14488$as_echo X"$ac_file" |
14489 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
14490 s//\1/
14491 q
14492 }
14493 /^X\(\/\/\)[^/].*/{
14494 s//\1/
14495 q
14496 }
14497 /^X\(\/\/\)$/{
14498 s//\1/
14499 q
14500 }
14501 /^X\(\/\).*/{
14502 s//\1/
14503 q
14504 }
14505 s/.*/./; q'`
14506 as_dir="$ac_dir"; as_fn_mkdir_p
14507 ac_builddir=.
14508
14509case "$ac_dir" in
14510.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
14511*)
14512 ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
14513 # A ".." for each directory in $ac_dir_suffix.
14514 ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
14515 case $ac_top_builddir_sub in
14516 "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
14517 *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
14518 esac ;;
14519esac
14520ac_abs_top_builddir=$ac_pwd
14521ac_abs_builddir=$ac_pwd$ac_dir_suffix
14522# for backward compatibility:
14523ac_top_builddir=$ac_top_build_prefix
14524
14525case $srcdir in
14526 .) # We are building in place.
14527 ac_srcdir=.
14528 ac_top_srcdir=$ac_top_builddir_sub
14529 ac_abs_top_srcdir=$ac_pwd ;;
14530 [\\/]* | ?:[\\/]* ) # Absolute name.
14531 ac_srcdir=$srcdir$ac_dir_suffix;
14532 ac_top_srcdir=$srcdir
14533 ac_abs_top_srcdir=$srcdir ;;
14534 *) # Relative name.
14535 ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
14536 ac_top_srcdir=$ac_top_build_prefix$srcdir
14537 ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
14538esac
14539ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
14540
14541
14542 case $ac_mode in
14543 :F)
14544 #
14545 # CONFIG_FILE
14546 #
14547
14548 case $INSTALL in
14549 [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
14550 *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
14551 esac
14552 ac_MKDIR_P=$MKDIR_P
14553 case $MKDIR_P in
14554 [\\/$]* | ?:[\\/]* ) ;;
14555 */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
14556 esac
14557_ACEOF
14558
14559cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
14560# If the template does not know about datarootdir, expand it.
14561# FIXME: This hack should be removed a few years after 2.60.
14562ac_datarootdir_hack=; ac_datarootdir_seen=
14563ac_sed_dataroot='
14564/datarootdir/ {
14565 p
14566 q
14567}
14568/@datadir@/p
14569/@docdir@/p
14570/@infodir@/p
14571/@localedir@/p
14572/@mandir@/p'
14573case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
14574*datarootdir*) ac_datarootdir_seen=yes;;
14575*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
14576 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
14577$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
14578_ACEOF
14579cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
14580 ac_datarootdir_hack='
14581 s&@datadir@&$datadir&g
14582 s&@docdir@&$docdir&g
14583 s&@infodir@&$infodir&g
14584 s&@localedir@&$localedir&g
14585 s&@mandir@&$mandir&g
14586 s&\\\${datarootdir}&$datarootdir&g' ;;
14587esac
14588_ACEOF
14589
14590# Neutralize VPATH when `$srcdir' = `.'.
14591# Shell code in configure.ac might set extrasub.
14592# FIXME: do we really want to maintain this feature?
14593cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
14594ac_sed_extra="$ac_vpsub
14595$extrasub
14596_ACEOF
14597cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
14598:t
14599/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
14600s|@configure_input@|$ac_sed_conf_input|;t t
14601s&@top_builddir@&$ac_top_builddir_sub&;t t
14602s&@top_build_prefix@&$ac_top_build_prefix&;t t
14603s&@srcdir@&$ac_srcdir&;t t
14604s&@abs_srcdir@&$ac_abs_srcdir&;t t
14605s&@top_srcdir@&$ac_top_srcdir&;t t
14606s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
14607s&@builddir@&$ac_builddir&;t t
14608s&@abs_builddir@&$ac_abs_builddir&;t t
14609s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
14610s&@INSTALL@&$ac_INSTALL&;t t
14611s&@MKDIR_P@&$ac_MKDIR_P&;t t
14612$ac_datarootdir_hack
14613"
14614eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
14615 >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
14616
14617test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
14618 { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
14619 { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
14620 "$ac_tmp/out"`; test -z "$ac_out"; } &&
14621 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
14622which seems to be undefined. Please make sure it is defined" >&5
14623$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
14624which seems to be undefined. Please make sure it is defined" >&2;}
14625
14626 rm -f "$ac_tmp/stdin"
14627 case $ac_file in
14628 -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
14629 *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
14630 esac \
14631 || as_fn_error $? "could not create $ac_file" "$LINENO" 5
14632 ;;
14633 :H)
14634 #
14635 # CONFIG_HEADER
14636 #
14637 if test x"$ac_file" != x-; then
14638 {
14639 $as_echo "/* $configure_input */" \
14640 && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
14641 } >"$ac_tmp/config.h" \
14642 || as_fn_error $? "could not create $ac_file" "$LINENO" 5
14643 if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
14644 { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
14645$as_echo "$as_me: $ac_file is unchanged" >&6;}
14646 else
14647 rm -f "$ac_file"
14648 mv "$ac_tmp/config.h" "$ac_file" \
14649 || as_fn_error $? "could not create $ac_file" "$LINENO" 5
14650 fi
14651 else
14652 $as_echo "/* $configure_input */" \
14653 && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
14654 || as_fn_error $? "could not create -" "$LINENO" 5
14655 fi
14656# Compute "$ac_file"'s index in $config_headers.
14657_am_arg="$ac_file"
14658_am_stamp_count=1
14659for _am_header in $config_headers :; do
14660 case $_am_header in
14661 $_am_arg | $_am_arg:* )
14662 break ;;
14663 * )
14664 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
14665 esac
14666done
14667echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" ||
14668$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
14669 X"$_am_arg" : 'X\(//\)[^/]' \| \
14670 X"$_am_arg" : 'X\(//\)$' \| \
14671 X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
14672$as_echo X"$_am_arg" |
14673 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
14674 s//\1/
14675 q
14676 }
14677 /^X\(\/\/\)[^/].*/{
14678 s//\1/
14679 q
14680 }
14681 /^X\(\/\/\)$/{
14682 s//\1/
14683 q
14684 }
14685 /^X\(\/\).*/{
14686 s//\1/
14687 q
14688 }
14689 s/.*/./; q'`/stamp-h$_am_stamp_count
14690 ;;
14691
14692 :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
14693$as_echo "$as_me: executing $ac_file commands" >&6;}
14694 ;;
14695 esac
14696
14697
14698 case $ac_file$ac_mode in
14699 "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
14700 # Older Autoconf quotes --file arguments for eval, but not when files
14701 # are listed without --file. Let's play safe and only enable the eval
14702 # if we detect the quoting.
14703 case $CONFIG_FILES in
14704 *\'*) eval set x "$CONFIG_FILES" ;;
14705 *) set x $CONFIG_FILES ;;
14706 esac
14707 shift
14708 for mf
14709 do
14710 # Strip MF so we end up with the name of the file.
14711 mf=`echo "$mf" | sed -e 's/:.*$//'`
14712 # Check whether this is an Automake generated Makefile or not.
14713 # We used to match only the files named 'Makefile.in', but
14714 # some people rename them; so instead we look at the file content.
14715 # Grep'ing the first line is not enough: some people post-process
14716 # each Makefile.in and add a new line on top of each file to say so.
14717 # Grep'ing the whole file is not good either: AIX grep has a line
14718 # limit of 2048, but all sed's we know have understand at least 4000.
14719 if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
14720 dirpart=`$as_dirname -- "$mf" ||
14721$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
14722 X"$mf" : 'X\(//\)[^/]' \| \
14723 X"$mf" : 'X\(//\)$' \| \
14724 X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
14725$as_echo X"$mf" |
14726 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
14727 s//\1/
14728 q
14729 }
14730 /^X\(\/\/\)[^/].*/{
14731 s//\1/
14732 q
14733 }
14734 /^X\(\/\/\)$/{
14735 s//\1/
14736 q
14737 }
14738 /^X\(\/\).*/{
14739 s//\1/
14740 q
14741 }
14742 s/.*/./; q'`
14743 else
14744 continue
14745 fi
14746 # Extract the definition of DEPDIR, am__include, and am__quote
14747 # from the Makefile without running 'make'.
14748 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
14749 test -z "$DEPDIR" && continue
14750 am__include=`sed -n 's/^am__include = //p' < "$mf"`
14751 test -z "$am__include" && continue
14752 am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
14753 # Find all dependency output files, they are included files with
14754 # $(DEPDIR) in their names. We invoke sed twice because it is the
14755 # simplest approach to changing $(DEPDIR) to its actual value in the
14756 # expansion.
14757 for file in `sed -n "
14758 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
14759 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
14760 # Make sure the directory exists.
14761 test -f "$dirpart/$file" && continue
14762 fdir=`$as_dirname -- "$file" ||
14763$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
14764 X"$file" : 'X\(//\)[^/]' \| \
14765 X"$file" : 'X\(//\)$' \| \
14766 X"$file" : 'X\(/\)' \| . 2>/dev/null ||
14767$as_echo X"$file" |
14768 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
14769 s//\1/
14770 q
14771 }
14772 /^X\(\/\/\)[^/].*/{
14773 s//\1/
14774 q
14775 }
14776 /^X\(\/\/\)$/{
14777 s//\1/
14778 q
14779 }
14780 /^X\(\/\).*/{
14781 s//\1/
14782 q
14783 }
14784 s/.*/./; q'`
14785 as_dir=$dirpart/$fdir; as_fn_mkdir_p
14786 # echo "creating $dirpart/$file"
14787 echo '# dummy' > "$dirpart/$file"
14788 done
14789 done
14790}
14791 ;;
14792 "libtool":C)
14793
14794 # See if we are running on zsh, and set the options which allow our
14795 # commands through without removal of \ escapes.
14796 if test -n "${ZSH_VERSION+set}" ; then
14797 setopt NO_GLOB_SUBST
14798 fi
14799
14800 cfgfile="${ofile}T"
14801 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
14802 $RM "$cfgfile"
14803
14804 cat <<_LT_EOF >> "$cfgfile"
14805#! $SHELL
14806
14807# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
14808# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
14809# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
14810# NOTE: Changes made to this file will be lost: look at ltmain.sh.
14811#
14812# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
14813# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
14814# Foundation, Inc.
14815# Written by Gordon Matzigkeit, 1996
14816#
14817# This file is part of GNU Libtool.
14818#
14819# GNU Libtool is free software; you can redistribute it and/or
14820# modify it under the terms of the GNU General Public License as
14821# published by the Free Software Foundation; either version 2 of
14822# the License, or (at your option) any later version.
14823#
14824# As a special exception to the GNU General Public License,
14825# if you distribute this file as part of a program or library that
14826# is built using GNU Libtool, you may include this file under the
14827# same distribution terms that you use for the rest of that program.
14828#
14829# GNU Libtool is distributed in the hope that it will be useful,
14830# but WITHOUT ANY WARRANTY; without even the implied warranty of
14831# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14832# GNU General Public License for more details.
14833#
14834# You should have received a copy of the GNU General Public License
14835# along with GNU Libtool; see the file COPYING. If not, a copy
14836# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
14837# obtained by writing to the Free Software Foundation, Inc.,
14838# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
14839
14840
14841# The names of the tagged configurations supported by this script.
14842available_tags=""
14843
14844# ### BEGIN LIBTOOL CONFIG
14845
14846# Assembler program.
14847AS=$lt_AS
14848
14849# DLL creation program.
14850DLLTOOL=$lt_DLLTOOL
14851
14852# Object dumper program.
14853OBJDUMP=$lt_OBJDUMP
14854
14855# Which release of libtool.m4 was used?
14856macro_version=$macro_version
14857macro_revision=$macro_revision
14858
14859# Whether or not to build shared libraries.
14860build_libtool_libs=$enable_shared
14861
14862# Whether or not to build static libraries.
14863build_old_libs=$enable_static
14864
14865# What type of objects to build.
14866pic_mode=$pic_mode
14867
14868# Whether or not to optimize for fast installation.
14869fast_install=$enable_fast_install
14870
14871# Shell to use when invoking shell scripts.
14872SHELL=$lt_SHELL
14873
14874# An echo program that protects backslashes.
14875ECHO=$lt_ECHO
14876
14877# The PATH separator for the build system.
14878PATH_SEPARATOR=$lt_PATH_SEPARATOR
14879
14880# The host system.
14881host_alias=$host_alias
14882host=$host
14883host_os=$host_os
14884
14885# The build system.
14886build_alias=$build_alias
14887build=$build
14888build_os=$build_os
14889
14890# A sed program that does not truncate output.
14891SED=$lt_SED
14892
14893# Sed that helps us avoid accidentally triggering echo(1) options like -n.
14894Xsed="\$SED -e 1s/^X//"
14895
14896# A grep program that handles long lines.
14897GREP=$lt_GREP
14898
14899# An ERE matcher.
14900EGREP=$lt_EGREP
14901
14902# A literal string matcher.
14903FGREP=$lt_FGREP
14904
14905# A BSD- or MS-compatible name lister.
14906NM=$lt_NM
14907
14908# Whether we need soft or hard links.
14909LN_S=$lt_LN_S
14910
14911# What is the maximum length of a command?
14912max_cmd_len=$max_cmd_len
14913
14914# Object file suffix (normally "o").
14915objext=$ac_objext
14916
14917# Executable file suffix (normally "").
14918exeext=$exeext
14919
14920# whether the shell understands "unset".
14921lt_unset=$lt_unset
14922
14923# turn spaces into newlines.
14924SP2NL=$lt_lt_SP2NL
14925
14926# turn newlines into spaces.
14927NL2SP=$lt_lt_NL2SP
14928
14929# convert \$build file names to \$host format.
14930to_host_file_cmd=$lt_cv_to_host_file_cmd
14931
14932# convert \$build files to toolchain format.
14933to_tool_file_cmd=$lt_cv_to_tool_file_cmd
14934
14935# Method to check whether dependent libraries are shared objects.
14936deplibs_check_method=$lt_deplibs_check_method
14937
14938# Command to use when deplibs_check_method = "file_magic".
14939file_magic_cmd=$lt_file_magic_cmd
14940
14941# How to find potential files when deplibs_check_method = "file_magic".
14942file_magic_glob=$lt_file_magic_glob
14943
14944# Find potential files using nocaseglob when deplibs_check_method = "file_magic".
14945want_nocaseglob=$lt_want_nocaseglob
14946
14947# Command to associate shared and link libraries.
14948sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd
14949
14950# The archiver.
14951AR=$lt_AR
14952
14953# Flags to create an archive.
14954AR_FLAGS=$lt_AR_FLAGS
14955
14956# How to feed a file listing to the archiver.
14957archiver_list_spec=$lt_archiver_list_spec
14958
14959# A symbol stripping program.
14960STRIP=$lt_STRIP
14961
14962# Commands used to install an old-style archive.
14963RANLIB=$lt_RANLIB
14964old_postinstall_cmds=$lt_old_postinstall_cmds
14965old_postuninstall_cmds=$lt_old_postuninstall_cmds
14966
14967# Whether to use a lock for old archive extraction.
14968lock_old_archive_extraction=$lock_old_archive_extraction
14969
14970# A C compiler.
14971LTCC=$lt_CC
14972
14973# LTCC compiler flags.
14974LTCFLAGS=$lt_CFLAGS
14975
14976# Take the output of nm and produce a listing of raw symbols and C names.
14977global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
14978
14979# Transform the output of nm in a proper C declaration.
14980global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
14981
14982# Transform the output of nm in a C name address pair.
14983global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
14984
14985# Transform the output of nm in a C name address pair when lib prefix is needed.
14986global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
14987
14988# Specify filename containing input files for \$NM.
14989nm_file_list_spec=$lt_nm_file_list_spec
14990
14991# The root where to search for dependent libraries,and in which our libraries should be installed.
14992lt_sysroot=$lt_sysroot
14993
14994# The name of the directory that contains temporary libtool files.
14995objdir=$objdir
14996
14997# Used to examine libraries when file_magic_cmd begins with "file".
14998MAGIC_CMD=$MAGIC_CMD
14999
15000# Must we lock files when doing compilation?
15001need_locks=$lt_need_locks
15002
15003# Manifest tool.
15004MANIFEST_TOOL=$lt_MANIFEST_TOOL
15005
15006# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
15007DSYMUTIL=$lt_DSYMUTIL
15008
15009# Tool to change global to local symbols on Mac OS X.
15010NMEDIT=$lt_NMEDIT
15011
15012# Tool to manipulate fat objects and archives on Mac OS X.
15013LIPO=$lt_LIPO
15014
15015# ldd/readelf like tool for Mach-O binaries on Mac OS X.
15016OTOOL=$lt_OTOOL
15017
15018# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
15019OTOOL64=$lt_OTOOL64
15020
15021# Old archive suffix (normally "a").
15022libext=$libext
15023
15024# Shared library suffix (normally ".so").
15025shrext_cmds=$lt_shrext_cmds
15026
15027# The commands to extract the exported symbol list from a shared archive.
15028extract_expsyms_cmds=$lt_extract_expsyms_cmds
15029
15030# Variables whose values should be saved in libtool wrapper scripts and
15031# restored at link time.
15032variables_saved_for_relink=$lt_variables_saved_for_relink
15033
15034# Do we need the "lib" prefix for modules?
15035need_lib_prefix=$need_lib_prefix
15036
15037# Do we need a version for libraries?
15038need_version=$need_version
15039
15040# Library versioning type.
15041version_type=$version_type
15042
15043# Shared library runtime path variable.
15044runpath_var=$runpath_var
15045
15046# Shared library path variable.
15047shlibpath_var=$shlibpath_var
15048
15049# Is shlibpath searched before the hard-coded library search path?
15050shlibpath_overrides_runpath=$shlibpath_overrides_runpath
15051
15052# Format of library name prefix.
15053libname_spec=$lt_libname_spec
15054
15055# List of archive names. First name is the real one, the rest are links.
15056# The last name is the one that the linker finds with -lNAME
15057library_names_spec=$lt_library_names_spec
15058
15059# The coded name of the library, if different from the real name.
15060soname_spec=$lt_soname_spec
15061
15062# Permission mode override for installation of shared libraries.
15063install_override_mode=$lt_install_override_mode
15064
15065# Command to use after installation of a shared archive.
15066postinstall_cmds=$lt_postinstall_cmds
15067
15068# Command to use after uninstallation of a shared archive.
15069postuninstall_cmds=$lt_postuninstall_cmds
15070
15071# Commands used to finish a libtool library installation in a directory.
15072finish_cmds=$lt_finish_cmds
15073
15074# As "finish_cmds", except a single script fragment to be evaled but
15075# not shown.
15076finish_eval=$lt_finish_eval
15077
15078# Whether we should hardcode library paths into libraries.
15079hardcode_into_libs=$hardcode_into_libs
15080
15081# Compile-time system search path for libraries.
15082sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
15083
15084# Run-time system search path for libraries.
15085sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
15086
15087# Whether dlopen is supported.
15088dlopen_support=$enable_dlopen
15089
15090# Whether dlopen of programs is supported.
15091dlopen_self=$enable_dlopen_self
15092
15093# Whether dlopen of statically linked programs is supported.
15094dlopen_self_static=$enable_dlopen_self_static
15095
15096# Commands to strip libraries.
15097old_striplib=$lt_old_striplib
15098striplib=$lt_striplib
15099
15100
15101# The linker used to build libraries.
15102LD=$lt_LD
15103
15104# How to create reloadable object files.
15105reload_flag=$lt_reload_flag
15106reload_cmds=$lt_reload_cmds
15107
15108# Commands used to build an old-style archive.
15109old_archive_cmds=$lt_old_archive_cmds
15110
15111# A language specific compiler.
15112CC=$lt_compiler
15113
15114# Is the compiler the GNU compiler?
15115with_gcc=$GCC
15116
15117# Compiler flag to turn off builtin functions.
15118no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
15119
15120# Additional compiler flags for building library objects.
15121pic_flag=$lt_lt_prog_compiler_pic
15122
15123# How to pass a linker flag through the compiler.
15124wl=$lt_lt_prog_compiler_wl
15125
15126# Compiler flag to prevent dynamic linking.
15127link_static_flag=$lt_lt_prog_compiler_static
15128
15129# Does compiler simultaneously support -c and -o options?
15130compiler_c_o=$lt_lt_cv_prog_compiler_c_o
15131
15132# Whether or not to add -lc for building shared libraries.
15133build_libtool_need_lc=$archive_cmds_need_lc
15134
15135# Whether or not to disallow shared libs when runtime libs are static.
15136allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes
15137
15138# Compiler flag to allow reflexive dlopens.
15139export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
15140
15141# Compiler flag to generate shared objects directly from archives.
15142whole_archive_flag_spec=$lt_whole_archive_flag_spec
15143
15144# Whether the compiler copes with passing no objects directly.
15145compiler_needs_object=$lt_compiler_needs_object
15146
15147# Create an old-style archive from a shared archive.
15148old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
15149
15150# Create a temporary old-style archive to link instead of a shared archive.
15151old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
15152
15153# Commands used to build a shared archive.
15154archive_cmds=$lt_archive_cmds
15155archive_expsym_cmds=$lt_archive_expsym_cmds
15156
15157# Commands used to build a loadable module if different from building
15158# a shared archive.
15159module_cmds=$lt_module_cmds
15160module_expsym_cmds=$lt_module_expsym_cmds
15161
15162# Whether we are building with GNU ld or not.
15163with_gnu_ld=$lt_with_gnu_ld
15164
15165# Flag that allows shared libraries with undefined symbols to be built.
15166allow_undefined_flag=$lt_allow_undefined_flag
15167
15168# Flag that enforces no undefined symbols.
15169no_undefined_flag=$lt_no_undefined_flag
15170
15171# Flag to hardcode \$libdir into a binary during linking.
15172# This must work even if \$libdir does not exist
15173hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
15174
15175# Whether we need a single "-rpath" flag with a separated argument.
15176hardcode_libdir_separator=$lt_hardcode_libdir_separator
15177
15178# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
15179# DIR into the resulting binary.
15180hardcode_direct=$hardcode_direct
15181
15182# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
15183# DIR into the resulting binary and the resulting library dependency is
15184# "absolute",i.e impossible to change by setting \${shlibpath_var} if the
15185# library is relocated.
15186hardcode_direct_absolute=$hardcode_direct_absolute
15187
15188# Set to "yes" if using the -LDIR flag during linking hardcodes DIR
15189# into the resulting binary.
15190hardcode_minus_L=$hardcode_minus_L
15191
15192# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
15193# into the resulting binary.
15194hardcode_shlibpath_var=$hardcode_shlibpath_var
15195
15196# Set to "yes" if building a shared library automatically hardcodes DIR
15197# into the library and all subsequent libraries and executables linked
15198# against it.
15199hardcode_automatic=$hardcode_automatic
15200
15201# Set to yes if linker adds runtime paths of dependent libraries
15202# to runtime path list.
15203inherit_rpath=$inherit_rpath
15204
15205# Whether libtool must link a program against all its dependency libraries.
15206link_all_deplibs=$link_all_deplibs
15207
15208# Set to "yes" if exported symbols are required.
15209always_export_symbols=$always_export_symbols
15210
15211# The commands to list exported symbols.
15212export_symbols_cmds=$lt_export_symbols_cmds
15213
15214# Symbols that should not be listed in the preloaded symbols.
15215exclude_expsyms=$lt_exclude_expsyms
15216
15217# Symbols that must always be exported.
15218include_expsyms=$lt_include_expsyms
15219
15220# Commands necessary for linking programs (against libraries) with templates.
15221prelink_cmds=$lt_prelink_cmds
15222
15223# Commands necessary for finishing linking programs.
15224postlink_cmds=$lt_postlink_cmds
15225
15226# Specify filename containing input files.
15227file_list_spec=$lt_file_list_spec
15228
15229# How to hardcode a shared library path into an executable.
15230hardcode_action=$hardcode_action
15231
15232# ### END LIBTOOL CONFIG
15233
15234_LT_EOF
15235
15236 case $host_os in
15237 aix3*)
15238 cat <<\_LT_EOF >> "$cfgfile"
15239# AIX sometimes has problems with the GCC collect2 program. For some
15240# reason, if we set the COLLECT_NAMES environment variable, the problems
15241# vanish in a puff of smoke.
15242if test "X${COLLECT_NAMES+set}" != Xset; then
15243 COLLECT_NAMES=
15244 export COLLECT_NAMES
15245fi
15246_LT_EOF
15247 ;;
15248 esac
15249
15250
15251ltmain="$ac_aux_dir/ltmain.sh"
15252
15253
15254 # We use sed instead of cat because bash on DJGPP gets confused if
15255 # if finds mixed CR/LF and LF-only lines. Since sed operates in
15256 # text mode, it properly converts lines to CR/LF. This bash problem
15257 # is reportedly fixed, but why not run on old versions too?
15258 sed '$q' "$ltmain" >> "$cfgfile" \
15259 || (rm -f "$cfgfile"; exit 1)
15260
15261 if test x"$xsi_shell" = xyes; then
15262 sed -e '/^func_dirname ()$/,/^} # func_dirname /c\
15263func_dirname ()\
15264{\
15265\ case ${1} in\
15266\ */*) func_dirname_result="${1%/*}${2}" ;;\
15267\ * ) func_dirname_result="${3}" ;;\
15268\ esac\
15269} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \
15270 && mv -f "$cfgfile.tmp" "$cfgfile" \
15271 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
15272test 0 -eq $? || _lt_function_replace_fail=:
15273
15274
15275 sed -e '/^func_basename ()$/,/^} # func_basename /c\
15276func_basename ()\
15277{\
15278\ func_basename_result="${1##*/}"\
15279} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \
15280 && mv -f "$cfgfile.tmp" "$cfgfile" \
15281 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
15282test 0 -eq $? || _lt_function_replace_fail=:
15283
15284
15285 sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\
15286func_dirname_and_basename ()\
15287{\
15288\ case ${1} in\
15289\ */*) func_dirname_result="${1%/*}${2}" ;;\
15290\ * ) func_dirname_result="${3}" ;;\
15291\ esac\
15292\ func_basename_result="${1##*/}"\
15293} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \
15294 && mv -f "$cfgfile.tmp" "$cfgfile" \
15295 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
15296test 0 -eq $? || _lt_function_replace_fail=:
15297
15298
15299 sed -e '/^func_stripname ()$/,/^} # func_stripname /c\
15300func_stripname ()\
15301{\
15302\ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\
15303\ # positional parameters, so assign one to ordinary parameter first.\
15304\ func_stripname_result=${3}\
15305\ func_stripname_result=${func_stripname_result#"${1}"}\
15306\ func_stripname_result=${func_stripname_result%"${2}"}\
15307} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \
15308 && mv -f "$cfgfile.tmp" "$cfgfile" \
15309 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
15310test 0 -eq $? || _lt_function_replace_fail=:
15311
15312
15313 sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\
15314func_split_long_opt ()\
15315{\
15316\ func_split_long_opt_name=${1%%=*}\
15317\ func_split_long_opt_arg=${1#*=}\
15318} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \
15319 && mv -f "$cfgfile.tmp" "$cfgfile" \
15320 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
15321test 0 -eq $? || _lt_function_replace_fail=:
15322
15323
15324 sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\
15325func_split_short_opt ()\
15326{\
15327\ func_split_short_opt_arg=${1#??}\
15328\ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\
15329} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \
15330 && mv -f "$cfgfile.tmp" "$cfgfile" \
15331 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
15332test 0 -eq $? || _lt_function_replace_fail=:
15333
15334
15335 sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\
15336func_lo2o ()\
15337{\
15338\ case ${1} in\
15339\ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\
15340\ *) func_lo2o_result=${1} ;;\
15341\ esac\
15342} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \
15343 && mv -f "$cfgfile.tmp" "$cfgfile" \
15344 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
15345test 0 -eq $? || _lt_function_replace_fail=:
15346
15347
15348 sed -e '/^func_xform ()$/,/^} # func_xform /c\
15349func_xform ()\
15350{\
15351 func_xform_result=${1%.*}.lo\
15352} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \
15353 && mv -f "$cfgfile.tmp" "$cfgfile" \
15354 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
15355test 0 -eq $? || _lt_function_replace_fail=:
15356
15357
15358 sed -e '/^func_arith ()$/,/^} # func_arith /c\
15359func_arith ()\
15360{\
15361 func_arith_result=$(( $* ))\
15362} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \
15363 && mv -f "$cfgfile.tmp" "$cfgfile" \
15364 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
15365test 0 -eq $? || _lt_function_replace_fail=:
15366
15367
15368 sed -e '/^func_len ()$/,/^} # func_len /c\
15369func_len ()\
15370{\
15371 func_len_result=${#1}\
15372} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \
15373 && mv -f "$cfgfile.tmp" "$cfgfile" \
15374 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
15375test 0 -eq $? || _lt_function_replace_fail=:
15376
15377fi
15378
15379if test x"$lt_shell_append" = xyes; then
15380 sed -e '/^func_append ()$/,/^} # func_append /c\
15381func_append ()\
15382{\
15383 eval "${1}+=\\${2}"\
15384} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \
15385 && mv -f "$cfgfile.tmp" "$cfgfile" \
15386 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
15387test 0 -eq $? || _lt_function_replace_fail=:
15388
15389
15390 sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\
15391func_append_quoted ()\
15392{\
15393\ func_quote_for_eval "${2}"\
15394\ eval "${1}+=\\\\ \\$func_quote_for_eval_result"\
15395} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \
15396 && mv -f "$cfgfile.tmp" "$cfgfile" \
15397 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
15398test 0 -eq $? || _lt_function_replace_fail=:
15399
15400
15401 # Save a `func_append' function call where possible by direct use of '+='
15402 sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
15403 && mv -f "$cfgfile.tmp" "$cfgfile" \
15404 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
15405 test 0 -eq $? || _lt_function_replace_fail=:
15406else
15407 # Save a `func_append' function call even when '+=' is not available
15408 sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
15409 && mv -f "$cfgfile.tmp" "$cfgfile" \
15410 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
15411 test 0 -eq $? || _lt_function_replace_fail=:
15412fi
15413
15414if test x"$_lt_function_replace_fail" = x":"; then
15415 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5
15416$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;}
15417fi
15418
15419
15420 mv -f "$cfgfile" "$ofile" ||
15421 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
15422 chmod +x "$ofile"
15423
15424 ;;
15425
15426 esac
15427done # for ac_tag
15428
15429
15430as_fn_exit 0
15431_ACEOF
15432ac_clean_files=$ac_clean_files_save
15433
15434test $ac_write_fail = 0 ||
15435 as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
15436
15437
15438# configure is writing to config.log, and then calls config.status.
15439# config.status does its own redirection, appending to config.log.
15440# Unfortunately, on DOS this fails, as config.log is still kept open
15441# by configure, so config.status won't be able to write to it; its
15442# output is simply discarded. So we exec the FD to /dev/null,
15443# effectively closing config.log, so it can be properly (re)opened and
15444# appended to by config.status. When coming back to configure, we
15445# need to make the FD available again.
15446if test "$no_create" != yes; then
15447 ac_cs_success=:
15448 ac_config_status_args=
15449 test "$silent" = yes &&
15450 ac_config_status_args="$ac_config_status_args --quiet"
15451 exec 5>/dev/null
15452 $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
15453 exec 5>>config.log
15454 # Use ||, not &&, to avoid exiting from the if with $? = 1, which
15455 # would make configure fail if this is the last instruction.
15456 $ac_cs_success || as_fn_exit 1
15457fi
15458if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
15459 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
15460$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
15461fi
15462
diff --git a/gs/jpeg/configure.ac b/gs/jpeg/configure.ac
index 12293b01c..934d07e9c 100644
--- a/gs/jpeg/configure.ac
+++ b/gs/jpeg/configure.ac
@@ -5,7 +5,7 @@
5# Configure script for IJG libjpeg 5# Configure script for IJG libjpeg
6# 6#
7 7
8AC_INIT([libjpeg], [8.4.0]) 8AC_INIT([libjpeg], [9.1.0])
9 9
10# Directory where autotools helper scripts lives. 10# Directory where autotools helper scripts lives.
11AC_CONFIG_AUX_DIR([.]) 11AC_CONFIG_AUX_DIR([.])
@@ -21,16 +21,13 @@ AC_CANONICAL_TARGET
21 21
22# Initialize Automake 22# Initialize Automake
23# Don't require all the GNU mandated files 23# Don't require all the GNU mandated files
24AM_INIT_AUTOMAKE([-Wall -Werror -Wno-obsolete ansi2knr no-dist foreign]) 24AM_INIT_AUTOMAKE([-Wall -Werror no-dist foreign])
25 25
26# Make --enable-silent-rules the default. 26# Make --enable-silent-rules the default.
27# To get verbose build output you may configure 27# To get verbose build output you may configure
28# with --disable-silent-rules or use "make V=1". 28# with --disable-silent-rules or use "make V=1".
29AM_SILENT_RULES([yes]) 29AM_SILENT_RULES([yes])
30 30
31# This is required when using the de-ANSI-fication feature.
32AM_C_PROTOTYPES
33
34# Add configure option --enable-maintainer-mode which enables 31# Add configure option --enable-maintainer-mode which enables
35# dependency checking and generation useful to package maintainers. 32# dependency checking and generation useful to package maintainers.
36# This is made an option to avoid confusing end users. 33# This is made an option to avoid confusing end users.
@@ -43,6 +40,7 @@ AC_PROG_CPP
43AC_PROG_INSTALL 40AC_PROG_INSTALL
44AC_PROG_MAKE_SET 41AC_PROG_MAKE_SET
45AC_PROG_LN_S 42AC_PROG_LN_S
43AM_PROG_AR
46 44
47# Check if LD supports linker scripts, 45# Check if LD supports linker scripts,
48# and define automake conditional HAVE_LD_VERSION_SCRIPT if so. 46# and define automake conditional HAVE_LD_VERSION_SCRIPT if so.
@@ -225,6 +223,10 @@ int possibly_dupli_function () { return 1; }
225# Run-time checks 223# Run-time checks
226AC_MSG_CHECKING([to see if char is signed]) 224AC_MSG_CHECKING([to see if char is signed])
227AC_TRY_RUN([ 225AC_TRY_RUN([
226#ifdef HAVE_STDLIB_H
227#include <stdlib.h>
228#endif
229#include <stdio.h>
228#ifdef HAVE_PROTOTYPES 230#ifdef HAVE_PROTOTYPES
229int is_char_signed (int arg) 231int is_char_signed (int arg)
230#else 232#else
@@ -254,6 +256,10 @@ int main() {
254 256
255AC_MSG_CHECKING([to see if right shift is signed]) 257AC_MSG_CHECKING([to see if right shift is signed])
256AC_TRY_RUN([ 258AC_TRY_RUN([
259#ifdef HAVE_STDLIB_H
260#include <stdlib.h>
261#endif
262#include <stdio.h>
257#ifdef HAVE_PROTOTYPES 263#ifdef HAVE_PROTOTYPES
258int is_shifting_signed (long arg) 264int is_shifting_signed (long arg)
259#else 265#else
@@ -288,6 +294,9 @@ int main() {
288 294
289AC_MSG_CHECKING([to see if fopen accepts b spec]) 295AC_MSG_CHECKING([to see if fopen accepts b spec])
290AC_TRY_RUN([ 296AC_TRY_RUN([
297#ifdef HAVE_STDLIB_H
298#include <stdlib.h>
299#endif
291#include <stdio.h> 300#include <stdio.h>
292int main() { 301int main() {
293 if (fopen("conftestdata", "wb") != NULL) 302 if (fopen("conftestdata", "wb") != NULL)
diff --git a/gs/jpeg/depcomp b/gs/jpeg/depcomp
index bd0ac0895..4ebd5b3a2 100755
--- a/gs/jpeg/depcomp
+++ b/gs/jpeg/depcomp
@@ -1,10 +1,9 @@
1#! /bin/sh 1#! /bin/sh
2# depcomp - compile a program generating dependencies as side-effects 2# depcomp - compile a program generating dependencies as side-effects
3 3
4scriptversion=2011-12-04.11; # UTC 4scriptversion=2013-05-30.07; # UTC
5 5
6# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010, 6# Copyright (C) 1999-2013 Free Software Foundation, Inc.
7# 2011 Free Software Foundation, Inc.
8 7
9# This program is free software; you can redistribute it and/or modify 8# This program is free software; you can redistribute it and/or modify
10# it under the terms of the GNU General Public License as published by 9# it under the terms of the GNU General Public License as published by
@@ -28,9 +27,9 @@ scriptversion=2011-12-04.11; # UTC
28 27
29case $1 in 28case $1 in
30 '') 29 '')
31 echo "$0: No command. Try \`$0 --help' for more information." 1>&2 30 echo "$0: No command. Try '$0 --help' for more information." 1>&2
32 exit 1; 31 exit 1;
33 ;; 32 ;;
34 -h | --h*) 33 -h | --h*)
35 cat <<\EOF 34 cat <<\EOF
36Usage: depcomp [--help] [--version] PROGRAM [ARGS] 35Usage: depcomp [--help] [--version] PROGRAM [ARGS]
@@ -40,8 +39,8 @@ as side-effects.
40 39
41Environment variables: 40Environment variables:
42 depmode Dependency tracking mode. 41 depmode Dependency tracking mode.
43 source Source file read by `PROGRAMS ARGS'. 42 source Source file read by 'PROGRAMS ARGS'.
44 object Object file output by `PROGRAMS ARGS'. 43 object Object file output by 'PROGRAMS ARGS'.
45 DEPDIR directory where to store dependencies. 44 DEPDIR directory where to store dependencies.
46 depfile Dependency file to output. 45 depfile Dependency file to output.
47 tmpdepfile Temporary file to use when outputting dependencies. 46 tmpdepfile Temporary file to use when outputting dependencies.
@@ -57,6 +56,66 @@ EOF
57 ;; 56 ;;
58esac 57esac
59 58
59# Get the directory component of the given path, and save it in the
60# global variables '$dir'. Note that this directory component will
61# be either empty or ending with a '/' character. This is deliberate.
62set_dir_from ()
63{
64 case $1 in
65 */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
66 *) dir=;;
67 esac
68}
69
70# Get the suffix-stripped basename of the given path, and save it the
71# global variable '$base'.
72set_base_from ()
73{
74 base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
75}
76
77# If no dependency file was actually created by the compiler invocation,
78# we still have to create a dummy depfile, to avoid errors with the
79# Makefile "include basename.Plo" scheme.
80make_dummy_depfile ()
81{
82 echo "#dummy" > "$depfile"
83}
84
85# Factor out some common post-processing of the generated depfile.
86# Requires the auxiliary global variable '$tmpdepfile' to be set.
87aix_post_process_depfile ()
88{
89 # If the compiler actually managed to produce a dependency file,
90 # post-process it.
91 if test -f "$tmpdepfile"; then
92 # Each line is of the form 'foo.o: dependency.h'.
93 # Do two passes, one to just change these to
94 # $object: dependency.h
95 # and one to simply output
96 # dependency.h:
97 # which is needed to avoid the deleted-header problem.
98 { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
99 sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
100 } > "$depfile"
101 rm -f "$tmpdepfile"
102 else
103 make_dummy_depfile
104 fi
105}
106
107# A tabulation character.
108tab=' '
109# A newline character.
110nl='
111'
112# Character ranges might be problematic outside the C locale.
113# These definitions help.
114upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
115lower=abcdefghijklmnopqrstuvwxyz
116digits=0123456789
117alpha=${upper}${lower}
118
60if test -z "$depmode" || test -z "$source" || test -z "$object"; then 119if test -z "$depmode" || test -z "$source" || test -z "$object"; then
61 echo "depcomp: Variables source, object and depmode must be set" 1>&2 120 echo "depcomp: Variables source, object and depmode must be set" 1>&2
62 exit 1 121 exit 1
@@ -69,6 +128,9 @@ tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
69 128
70rm -f "$tmpdepfile" 129rm -f "$tmpdepfile"
71 130
131# Avoid interferences from the environment.
132gccflag= dashmflag=
133
72# Some modes work just like other modes, but use different flags. We 134# Some modes work just like other modes, but use different flags. We
73# parameterize here, but still list the modes in the big case below, 135# parameterize here, but still list the modes in the big case below,
74# to make depend.m4 easier to write. Note that we *cannot* use a case 136# to make depend.m4 easier to write. Note that we *cannot* use a case
@@ -80,26 +142,32 @@ if test "$depmode" = hp; then
80fi 142fi
81 143
82if test "$depmode" = dashXmstdout; then 144if test "$depmode" = dashXmstdout; then
83 # This is just like dashmstdout with a different argument. 145 # This is just like dashmstdout with a different argument.
84 dashmflag=-xM 146 dashmflag=-xM
85 depmode=dashmstdout 147 depmode=dashmstdout
86fi 148fi
87 149
88cygpath_u="cygpath -u -f -" 150cygpath_u="cygpath -u -f -"
89if test "$depmode" = msvcmsys; then 151if test "$depmode" = msvcmsys; then
90 # This is just like msvisualcpp but w/o cygpath translation. 152 # This is just like msvisualcpp but w/o cygpath translation.
91 # Just convert the backslash-escaped backslashes to single forward 153 # Just convert the backslash-escaped backslashes to single forward
92 # slashes to satisfy depend.m4 154 # slashes to satisfy depend.m4
93 cygpath_u='sed s,\\\\,/,g' 155 cygpath_u='sed s,\\\\,/,g'
94 depmode=msvisualcpp 156 depmode=msvisualcpp
95fi 157fi
96 158
97if test "$depmode" = msvc7msys; then 159if test "$depmode" = msvc7msys; then
98 # This is just like msvc7 but w/o cygpath translation. 160 # This is just like msvc7 but w/o cygpath translation.
99 # Just convert the backslash-escaped backslashes to single forward 161 # Just convert the backslash-escaped backslashes to single forward
100 # slashes to satisfy depend.m4 162 # slashes to satisfy depend.m4
101 cygpath_u='sed s,\\\\,/,g' 163 cygpath_u='sed s,\\\\,/,g'
102 depmode=msvc7 164 depmode=msvc7
165fi
166
167if test "$depmode" = xlc; then
168 # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
169 gccflag=-qmakedep=gcc,-MF
170 depmode=gcc
103fi 171fi
104 172
105case "$depmode" in 173case "$depmode" in
@@ -122,8 +190,7 @@ gcc3)
122 done 190 done
123 "$@" 191 "$@"
124 stat=$? 192 stat=$?
125 if test $stat -eq 0; then : 193 if test $stat -ne 0; then
126 else
127 rm -f "$tmpdepfile" 194 rm -f "$tmpdepfile"
128 exit $stat 195 exit $stat
129 fi 196 fi
@@ -131,13 +198,17 @@ gcc3)
131 ;; 198 ;;
132 199
133gcc) 200gcc)
201## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
202## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
203## (see the conditional assignment to $gccflag above).
134## There are various ways to get dependency output from gcc. Here's 204## There are various ways to get dependency output from gcc. Here's
135## why we pick this rather obscure method: 205## why we pick this rather obscure method:
136## - Don't want to use -MD because we'd like the dependencies to end 206## - Don't want to use -MD because we'd like the dependencies to end
137## up in a subdir. Having to rename by hand is ugly. 207## up in a subdir. Having to rename by hand is ugly.
138## (We might end up doing this anyway to support other compilers.) 208## (We might end up doing this anyway to support other compilers.)
139## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like 209## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
140## -MM, not -M (despite what the docs say). 210## -MM, not -M (despite what the docs say). Also, it might not be
211## supported by the other compilers which use the 'gcc' depmode.
141## - Using -M directly means running the compiler twice (even worse 212## - Using -M directly means running the compiler twice (even worse
142## than renaming). 213## than renaming).
143 if test -z "$gccflag"; then 214 if test -z "$gccflag"; then
@@ -145,33 +216,31 @@ gcc)
145 fi 216 fi
146 "$@" -Wp,"$gccflag$tmpdepfile" 217 "$@" -Wp,"$gccflag$tmpdepfile"
147 stat=$? 218 stat=$?
148 if test $stat -eq 0; then : 219 if test $stat -ne 0; then
149 else
150 rm -f "$tmpdepfile" 220 rm -f "$tmpdepfile"
151 exit $stat 221 exit $stat
152 fi 222 fi
153 rm -f "$depfile" 223 rm -f "$depfile"
154 echo "$object : \\" > "$depfile" 224 echo "$object : \\" > "$depfile"
155 alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz 225 # The second -e expression handles DOS-style file names with drive
156## The second -e expression handles DOS-style file names with drive letters. 226 # letters.
157 sed -e 's/^[^:]*: / /' \ 227 sed -e 's/^[^:]*: / /' \
158 -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" 228 -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
159## This next piece of magic avoids the `deleted header file' problem. 229## This next piece of magic avoids the "deleted header file" problem.
160## The problem is that when a header file which appears in a .P file 230## The problem is that when a header file which appears in a .P file
161## is deleted, the dependency causes make to die (because there is 231## is deleted, the dependency causes make to die (because there is
162## typically no way to rebuild the header). We avoid this by adding 232## typically no way to rebuild the header). We avoid this by adding
163## dummy dependencies for each header file. Too bad gcc doesn't do 233## dummy dependencies for each header file. Too bad gcc doesn't do
164## this for us directly. 234## this for us directly.
165 tr ' ' ' 235## Some versions of gcc put a space before the ':'. On the theory
166' < "$tmpdepfile" |
167## Some versions of gcc put a space before the `:'. On the theory
168## that the space means something, we add a space to the output as 236## that the space means something, we add a space to the output as
169## well. hp depmode also adds that space, but also prefixes the VPATH 237## well. hp depmode also adds that space, but also prefixes the VPATH
170## to the object. Take care to not repeat it in the output. 238## to the object. Take care to not repeat it in the output.
171## Some versions of the HPUX 10.20 sed can't process this invocation 239## Some versions of the HPUX 10.20 sed can't process this invocation
172## correctly. Breaking it into two sed invocations is a workaround. 240## correctly. Breaking it into two sed invocations is a workaround.
173 sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ 241 tr ' ' "$nl" < "$tmpdepfile" \
174 | sed -e 's/$/ :/' >> "$depfile" 242 | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
243 | sed -e 's/$/ :/' >> "$depfile"
175 rm -f "$tmpdepfile" 244 rm -f "$tmpdepfile"
176 ;; 245 ;;
177 246
@@ -189,8 +258,7 @@ sgi)
189 "$@" -MDupdate "$tmpdepfile" 258 "$@" -MDupdate "$tmpdepfile"
190 fi 259 fi
191 stat=$? 260 stat=$?
192 if test $stat -eq 0; then : 261 if test $stat -ne 0; then
193 else
194 rm -f "$tmpdepfile" 262 rm -f "$tmpdepfile"
195 exit $stat 263 exit $stat
196 fi 264 fi
@@ -198,43 +266,41 @@ sgi)
198 266
199 if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files 267 if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
200 echo "$object : \\" > "$depfile" 268 echo "$object : \\" > "$depfile"
201
202 # Clip off the initial element (the dependent). Don't try to be 269 # Clip off the initial element (the dependent). Don't try to be
203 # clever and replace this with sed code, as IRIX sed won't handle 270 # clever and replace this with sed code, as IRIX sed won't handle
204 # lines with more than a fixed number of characters (4096 in 271 # lines with more than a fixed number of characters (4096 in
205 # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; 272 # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
206 # the IRIX cc adds comments like `#:fec' to the end of the 273 # the IRIX cc adds comments like '#:fec' to the end of the
207 # dependency line. 274 # dependency line.
208 tr ' ' ' 275 tr ' ' "$nl" < "$tmpdepfile" \
209' < "$tmpdepfile" \ 276 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
210 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ 277 | tr "$nl" ' ' >> "$depfile"
211 tr '
212' ' ' >> "$depfile"
213 echo >> "$depfile" 278 echo >> "$depfile"
214
215 # The second pass generates a dummy entry for each header file. 279 # The second pass generates a dummy entry for each header file.
216 tr ' ' ' 280 tr ' ' "$nl" < "$tmpdepfile" \
217' < "$tmpdepfile" \ 281 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
218 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ 282 >> "$depfile"
219 >> "$depfile"
220 else 283 else
221 # The sourcefile does not contain any dependencies, so just 284 make_dummy_depfile
222 # store a dummy comment line, to avoid errors with the Makefile
223 # "include basename.Plo" scheme.
224 echo "#dummy" > "$depfile"
225 fi 285 fi
226 rm -f "$tmpdepfile" 286 rm -f "$tmpdepfile"
227 ;; 287 ;;
228 288
289xlc)
290 # This case exists only to let depend.m4 do its work. It works by
291 # looking at the text of this script. This case will never be run,
292 # since it is checked for above.
293 exit 1
294 ;;
295
229aix) 296aix)
230 # The C for AIX Compiler uses -M and outputs the dependencies 297 # The C for AIX Compiler uses -M and outputs the dependencies
231 # in a .u file. In older versions, this file always lives in the 298 # in a .u file. In older versions, this file always lives in the
232 # current directory. Also, the AIX compiler puts `$object:' at the 299 # current directory. Also, the AIX compiler puts '$object:' at the
233 # start of each line; $object doesn't have directory information. 300 # start of each line; $object doesn't have directory information.
234 # Version 6 uses the directory in both cases. 301 # Version 6 uses the directory in both cases.
235 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` 302 set_dir_from "$object"
236 test "x$dir" = "x$object" && dir= 303 set_base_from "$object"
237 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
238 if test "$libtool" = yes; then 304 if test "$libtool" = yes; then
239 tmpdepfile1=$dir$base.u 305 tmpdepfile1=$dir$base.u
240 tmpdepfile2=$base.u 306 tmpdepfile2=$base.u
@@ -247,9 +313,7 @@ aix)
247 "$@" -M 313 "$@" -M
248 fi 314 fi
249 stat=$? 315 stat=$?
250 316 if test $stat -ne 0; then
251 if test $stat -eq 0; then :
252 else
253 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" 317 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
254 exit $stat 318 exit $stat
255 fi 319 fi
@@ -258,44 +322,100 @@ aix)
258 do 322 do
259 test -f "$tmpdepfile" && break 323 test -f "$tmpdepfile" && break
260 done 324 done
261 if test -f "$tmpdepfile"; then 325 aix_post_process_depfile
262 # Each line is of the form `foo.o: dependent.h'. 326 ;;
263 # Do two passes, one to just change these to 327
264 # `$object: dependent.h' and one to simply `dependent.h:'. 328tcc)
265 sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" 329 # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
266 # That's a tab and a space in the []. 330 # FIXME: That version still under development at the moment of writing.
267 sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" 331 # Make that this statement remains true also for stable, released
268 else 332 # versions.
269 # The sourcefile does not contain any dependencies, so just 333 # It will wrap lines (doesn't matter whether long or short) with a
270 # store a dummy comment line, to avoid errors with the Makefile 334 # trailing '\', as in:
271 # "include basename.Plo" scheme. 335 #
272 echo "#dummy" > "$depfile" 336 # foo.o : \
337 # foo.c \
338 # foo.h \
339 #
340 # It will put a trailing '\' even on the last line, and will use leading
341 # spaces rather than leading tabs (at least since its commit 0394caf7
342 # "Emit spaces for -MD").
343 "$@" -MD -MF "$tmpdepfile"
344 stat=$?
345 if test $stat -ne 0; then
346 rm -f "$tmpdepfile"
347 exit $stat
273 fi 348 fi
349 rm -f "$depfile"
350 # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
351 # We have to change lines of the first kind to '$object: \'.
352 sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
353 # And for each line of the second kind, we have to emit a 'dep.h:'
354 # dummy dependency, to avoid the deleted-header problem.
355 sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
274 rm -f "$tmpdepfile" 356 rm -f "$tmpdepfile"
275 ;; 357 ;;
276 358
277icc) 359## The order of this option in the case statement is important, since the
278 # Intel's C compiler understands `-MD -MF file'. However on 360## shell code in configure will try each of these formats in the order
279 # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c 361## listed in this file. A plain '-MD' option would be understood by many
280 # ICC 7.0 will fill foo.d with something like 362## compilers, so we must ensure this comes after the gcc and icc options.
281 # foo.o: sub/foo.c 363pgcc)
282 # foo.o: sub/foo.h 364 # Portland's C compiler understands '-MD'.
283 # which is wrong. We want: 365 # Will always output deps to 'file.d' where file is the root name of the
284 # sub/foo.o: sub/foo.c 366 # source file under compilation, even if file resides in a subdirectory.
285 # sub/foo.o: sub/foo.h 367 # The object file name does not affect the name of the '.d' file.
286 # sub/foo.c: 368 # pgcc 10.2 will output
287 # sub/foo.h:
288 # ICC 7.1 will output
289 # foo.o: sub/foo.c sub/foo.h 369 # foo.o: sub/foo.c sub/foo.h
290 # and will wrap long lines using \ : 370 # and will wrap long lines using '\' :
291 # foo.o: sub/foo.c ... \ 371 # foo.o: sub/foo.c ... \
292 # sub/foo.h ... \ 372 # sub/foo.h ... \
293 # ... 373 # ...
374 set_dir_from "$object"
375 # Use the source, not the object, to determine the base name, since
376 # that's sadly what pgcc will do too.
377 set_base_from "$source"
378 tmpdepfile=$base.d
379
380 # For projects that build the same source file twice into different object
381 # files, the pgcc approach of using the *source* file root name can cause
382 # problems in parallel builds. Use a locking strategy to avoid stomping on
383 # the same $tmpdepfile.
384 lockdir=$base.d-lock
385 trap "
386 echo '$0: caught signal, cleaning up...' >&2
387 rmdir '$lockdir'
388 exit 1
389 " 1 2 13 15
390 numtries=100
391 i=$numtries
392 while test $i -gt 0; do
393 # mkdir is a portable test-and-set.
394 if mkdir "$lockdir" 2>/dev/null; then
395 # This process acquired the lock.
396 "$@" -MD
397 stat=$?
398 # Release the lock.
399 rmdir "$lockdir"
400 break
401 else
402 # If the lock is being held by a different process, wait
403 # until the winning process is done or we timeout.
404 while test -d "$lockdir" && test $i -gt 0; do
405 sleep 1
406 i=`expr $i - 1`
407 done
408 fi
409 i=`expr $i - 1`
410 done
411 trap - 1 2 13 15
412 if test $i -le 0; then
413 echo "$0: failed to acquire lock after $numtries attempts" >&2
414 echo "$0: check lockdir '$lockdir'" >&2
415 exit 1
416 fi
294 417
295 "$@" -MD -MF "$tmpdepfile" 418 if test $stat -ne 0; then
296 stat=$?
297 if test $stat -eq 0; then :
298 else
299 rm -f "$tmpdepfile" 419 rm -f "$tmpdepfile"
300 exit $stat 420 exit $stat
301 fi 421 fi
@@ -307,8 +427,8 @@ icc)
307 sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" 427 sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
308 # Some versions of the HPUX 10.20 sed can't process this invocation 428 # Some versions of the HPUX 10.20 sed can't process this invocation
309 # correctly. Breaking it into two sed invocations is a workaround. 429 # correctly. Breaking it into two sed invocations is a workaround.
310 sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | 430 sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
311 sed -e 's/$/ :/' >> "$depfile" 431 | sed -e 's/$/ :/' >> "$depfile"
312 rm -f "$tmpdepfile" 432 rm -f "$tmpdepfile"
313 ;; 433 ;;
314 434
@@ -319,9 +439,8 @@ hp2)
319 # 'foo.d', which lands next to the object file, wherever that 439 # 'foo.d', which lands next to the object file, wherever that
320 # happens to be. 440 # happens to be.
321 # Much of this is similar to the tru64 case; see comments there. 441 # Much of this is similar to the tru64 case; see comments there.
322 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` 442 set_dir_from "$object"
323 test "x$dir" = "x$object" && dir= 443 set_base_from "$object"
324 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
325 if test "$libtool" = yes; then 444 if test "$libtool" = yes; then
326 tmpdepfile1=$dir$base.d 445 tmpdepfile1=$dir$base.d
327 tmpdepfile2=$dir.libs/$base.d 446 tmpdepfile2=$dir.libs/$base.d
@@ -332,8 +451,7 @@ hp2)
332 "$@" +Maked 451 "$@" +Maked
333 fi 452 fi
334 stat=$? 453 stat=$?
335 if test $stat -eq 0; then : 454 if test $stat -ne 0; then
336 else
337 rm -f "$tmpdepfile1" "$tmpdepfile2" 455 rm -f "$tmpdepfile1" "$tmpdepfile2"
338 exit $stat 456 exit $stat
339 fi 457 fi
@@ -343,77 +461,61 @@ hp2)
343 test -f "$tmpdepfile" && break 461 test -f "$tmpdepfile" && break
344 done 462 done
345 if test -f "$tmpdepfile"; then 463 if test -f "$tmpdepfile"; then
346 sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile" 464 sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
347 # Add `dependent.h:' lines. 465 # Add 'dependent.h:' lines.
348 sed -ne '2,${ 466 sed -ne '2,${
349 s/^ *// 467 s/^ *//
350 s/ \\*$// 468 s/ \\*$//
351 s/$/:/ 469 s/$/:/
352 p 470 p
353 }' "$tmpdepfile" >> "$depfile" 471 }' "$tmpdepfile" >> "$depfile"
354 else 472 else
355 echo "#dummy" > "$depfile" 473 make_dummy_depfile
356 fi 474 fi
357 rm -f "$tmpdepfile" "$tmpdepfile2" 475 rm -f "$tmpdepfile" "$tmpdepfile2"
358 ;; 476 ;;
359 477
360tru64) 478tru64)
361 # The Tru64 compiler uses -MD to generate dependencies as a side 479 # The Tru64 compiler uses -MD to generate dependencies as a side
362 # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. 480 # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
363 # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put 481 # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
364 # dependencies in `foo.d' instead, so we check for that too. 482 # dependencies in 'foo.d' instead, so we check for that too.
365 # Subdirectories are respected. 483 # Subdirectories are respected.
366 dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` 484 set_dir_from "$object"
367 test "x$dir" = "x$object" && dir= 485 set_base_from "$object"
368 base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` 486
369 487 if test "$libtool" = yes; then
370 if test "$libtool" = yes; then 488 # Libtool generates 2 separate objects for the 2 libraries. These
371 # With Tru64 cc, shared objects can also be used to make a 489 # two compilations output dependencies in $dir.libs/$base.o.d and
372 # static library. This mechanism is used in libtool 1.4 series to 490 # in $dir$base.o.d. We have to check for both files, because
373 # handle both shared and static libraries in a single compilation. 491 # one of the two compilations can be disabled. We should prefer
374 # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. 492 # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
375 # 493 # automatically cleaned when .libs/ is deleted, while ignoring
376 # With libtool 1.5 this exception was removed, and libtool now 494 # the former would cause a distcleancheck panic.
377 # generates 2 separate objects for the 2 libraries. These two 495 tmpdepfile1=$dir$base.o.d # libtool 1.5
378 # compilations output dependencies in $dir.libs/$base.o.d and 496 tmpdepfile2=$dir.libs/$base.o.d # Likewise.
379 # in $dir$base.o.d. We have to check for both files, because 497 tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504
380 # one of the two compilations can be disabled. We should prefer 498 "$@" -Wc,-MD
381 # $dir$base.o.d over $dir.libs/$base.o.d because the latter is 499 else
382 # automatically cleaned when .libs/ is deleted, while ignoring 500 tmpdepfile1=$dir$base.d
383 # the former would cause a distcleancheck panic. 501 tmpdepfile2=$dir$base.d
384 tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 502 tmpdepfile3=$dir$base.d
385 tmpdepfile2=$dir$base.o.d # libtool 1.5 503 "$@" -MD
386 tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 504 fi
387 tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 505
388 "$@" -Wc,-MD 506 stat=$?
389 else 507 if test $stat -ne 0; then
390 tmpdepfile1=$dir$base.o.d 508 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
391 tmpdepfile2=$dir$base.d 509 exit $stat
392 tmpdepfile3=$dir$base.d 510 fi
393 tmpdepfile4=$dir$base.d 511
394 "$@" -MD 512 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
395 fi 513 do
396 514 test -f "$tmpdepfile" && break
397 stat=$? 515 done
398 if test $stat -eq 0; then : 516 # Same post-processing that is required for AIX mode.
399 else 517 aix_post_process_depfile
400 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" 518 ;;
401 exit $stat
402 fi
403
404 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
405 do
406 test -f "$tmpdepfile" && break
407 done
408 if test -f "$tmpdepfile"; then
409 sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
410 # That's a tab and a space in the [].
411 sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
412 else
413 echo "#dummy" > "$depfile"
414 fi
415 rm -f "$tmpdepfile"
416 ;;
417 519
418msvc7) 520msvc7)
419 if test "$libtool" = yes; then 521 if test "$libtool" = yes; then
@@ -424,8 +526,7 @@ msvc7)
424 "$@" $showIncludes > "$tmpdepfile" 526 "$@" $showIncludes > "$tmpdepfile"
425 stat=$? 527 stat=$?
426 grep -v '^Note: including file: ' "$tmpdepfile" 528 grep -v '^Note: including file: ' "$tmpdepfile"
427 if test "$stat" = 0; then : 529 if test $stat -ne 0; then
428 else
429 rm -f "$tmpdepfile" 530 rm -f "$tmpdepfile"
430 exit $stat 531 exit $stat
431 fi 532 fi
@@ -443,14 +544,15 @@ msvc7)
443 p 544 p
444}' | $cygpath_u | sort -u | sed -n ' 545}' | $cygpath_u | sort -u | sed -n '
445s/ /\\ /g 546s/ /\\ /g
446s/\(.*\)/ \1 \\/p 547s/\(.*\)/'"$tab"'\1 \\/p
447s/.\(.*\) \\/\1:/ 548s/.\(.*\) \\/\1:/
448H 549H
449$ { 550$ {
450 s/.*/ / 551 s/.*/'"$tab"'/
451 G 552 G
452 p 553 p
453}' >> "$depfile" 554}' >> "$depfile"
555 echo >> "$depfile" # make sure the fragment doesn't end with a backslash
454 rm -f "$tmpdepfile" 556 rm -f "$tmpdepfile"
455 ;; 557 ;;
456 558
@@ -478,7 +580,7 @@ dashmstdout)
478 shift 580 shift
479 fi 581 fi
480 582
481 # Remove `-o $object'. 583 # Remove '-o $object'.
482 IFS=" " 584 IFS=" "
483 for arg 585 for arg
484 do 586 do
@@ -498,18 +600,18 @@ dashmstdout)
498 done 600 done
499 601
500 test -z "$dashmflag" && dashmflag=-M 602 test -z "$dashmflag" && dashmflag=-M
501 # Require at least two characters before searching for `:' 603 # Require at least two characters before searching for ':'
502 # in the target name. This is to cope with DOS-style filenames: 604 # in the target name. This is to cope with DOS-style filenames:
503 # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. 605 # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
504 "$@" $dashmflag | 606 "$@" $dashmflag |
505 sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" 607 sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
506 rm -f "$depfile" 608 rm -f "$depfile"
507 cat < "$tmpdepfile" > "$depfile" 609 cat < "$tmpdepfile" > "$depfile"
508 tr ' ' ' 610 # Some versions of the HPUX 10.20 sed can't process this sed invocation
509' < "$tmpdepfile" | \ 611 # correctly. Breaking it into two sed invocations is a workaround.
510## Some versions of the HPUX 10.20 sed can't process this invocation 612 tr ' ' "$nl" < "$tmpdepfile" \
511## correctly. Breaking it into two sed invocations is a workaround. 613 | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
512 sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" 614 | sed -e 's/$/ :/' >> "$depfile"
513 rm -f "$tmpdepfile" 615 rm -f "$tmpdepfile"
514 ;; 616 ;;
515 617
@@ -562,11 +664,12 @@ makedepend)
562 # makedepend may prepend the VPATH from the source file name to the object. 664 # makedepend may prepend the VPATH from the source file name to the object.
563 # No need to regex-escape $object, excess matching of '.' is harmless. 665 # No need to regex-escape $object, excess matching of '.' is harmless.
564 sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile" 666 sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
565 sed '1,2d' "$tmpdepfile" | tr ' ' ' 667 # Some versions of the HPUX 10.20 sed can't process the last invocation
566' | \ 668 # correctly. Breaking it into two sed invocations is a workaround.
567## Some versions of the HPUX 10.20 sed can't process this invocation 669 sed '1,2d' "$tmpdepfile" \
568## correctly. Breaking it into two sed invocations is a workaround. 670 | tr ' ' "$nl" \
569 sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" 671 | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
672 | sed -e 's/$/ :/' >> "$depfile"
570 rm -f "$tmpdepfile" "$tmpdepfile".bak 673 rm -f "$tmpdepfile" "$tmpdepfile".bak
571 ;; 674 ;;
572 675
@@ -583,7 +686,7 @@ cpp)
583 shift 686 shift
584 fi 687 fi
585 688
586 # Remove `-o $object'. 689 # Remove '-o $object'.
587 IFS=" " 690 IFS=" "
588 for arg 691 for arg
589 do 692 do
@@ -602,10 +705,10 @@ cpp)
602 esac 705 esac
603 done 706 done
604 707
605 "$@" -E | 708 "$@" -E \
606 sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ 709 | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
607 -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | 710 -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
608 sed '$ s: \\$::' > "$tmpdepfile" 711 | sed '$ s: \\$::' > "$tmpdepfile"
609 rm -f "$depfile" 712 rm -f "$depfile"
610 echo "$object : \\" > "$depfile" 713 echo "$object : \\" > "$depfile"
611 cat < "$tmpdepfile" >> "$depfile" 714 cat < "$tmpdepfile" >> "$depfile"
@@ -637,23 +740,23 @@ msvisualcpp)
637 shift 740 shift
638 ;; 741 ;;
639 "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") 742 "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
640 set fnord "$@" 743 set fnord "$@"
641 shift 744 shift
642 shift 745 shift
643 ;; 746 ;;
644 *) 747 *)
645 set fnord "$@" "$arg" 748 set fnord "$@" "$arg"
646 shift 749 shift
647 shift 750 shift
648 ;; 751 ;;
649 esac 752 esac
650 done 753 done
651 "$@" -E 2>/dev/null | 754 "$@" -E 2>/dev/null |
652 sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" 755 sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
653 rm -f "$depfile" 756 rm -f "$depfile"
654 echo "$object : \\" > "$depfile" 757 echo "$object : \\" > "$depfile"
655 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" 758 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
656 echo " " >> "$depfile" 759 echo "$tab" >> "$depfile"
657 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" 760 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
658 rm -f "$tmpdepfile" 761 rm -f "$tmpdepfile"
659 ;; 762 ;;
diff --git a/gs/jpeg/djpeg.1 b/gs/jpeg/djpeg.1
index f3722d150..67ee5cba7 100644
--- a/gs/jpeg/djpeg.1
+++ b/gs/jpeg/djpeg.1
@@ -1,4 +1,4 @@
1.TH DJPEG 1 "3 October 2009" 1.TH DJPEG 1 "23 November 2013"
2.SH NAME 2.SH NAME
3djpeg \- decompress a JPEG file to an image file 3djpeg \- decompress a JPEG file to an image file
4.SH SYNOPSIS 4.SH SYNOPSIS
@@ -246,7 +246,7 @@ Communications of the ACM, April 1991 (vol. 34, no. 4), pp. 30-44.
246.SH AUTHOR 246.SH AUTHOR
247Independent JPEG Group 247Independent JPEG Group
248.SH BUGS 248.SH BUGS
249To avoid the Unisys LZW patent, 249To avoid the Unisys LZW patent (now expired),
250.B djpeg 250.B djpeg
251produces uncompressed GIF files. These are larger than they should be, but 251produces uncompressed GIF files. These are larger than they should be, but
252are readable by standard GIF decoders. 252are readable by standard GIF decoders.
diff --git a/gs/jpeg/djpeg.c b/gs/jpeg/djpeg.c
index bc544dc10..be7f2690e 100644
--- a/gs/jpeg/djpeg.c
+++ b/gs/jpeg/djpeg.c
@@ -2,7 +2,7 @@
2 * djpeg.c 2 * djpeg.c
3 * 3 *
4 * Copyright (C) 1991-1997, Thomas G. Lane. 4 * Copyright (C) 1991-1997, Thomas G. Lane.
5 * Modified 2009 by Guido Vollbeding. 5 * Modified 2009-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -298,7 +298,7 @@ parse_switches (j_decompress_ptr cinfo, int argc, char **argv,
298 cinfo->mem->max_memory_to_use = lval * 1000L; 298 cinfo->mem->max_memory_to_use = lval * 1000L;
299 299
300 } else if (keymatch(arg, "nosmooth", 3)) { 300 } else if (keymatch(arg, "nosmooth", 3)) {
301 /* Suppress fancy upsampling */ 301 /* Suppress fancy upsampling. */
302 cinfo->do_fancy_upsampling = FALSE; 302 cinfo->do_fancy_upsampling = FALSE;
303 303
304 } else if (keymatch(arg, "onepass", 3)) { 304 } else if (keymatch(arg, "onepass", 3)) {
@@ -327,7 +327,7 @@ parse_switches (j_decompress_ptr cinfo, int argc, char **argv,
327 /* Scale the output image by a fraction M/N. */ 327 /* Scale the output image by a fraction M/N. */
328 if (++argn >= argc) /* advance to next argument */ 328 if (++argn >= argc) /* advance to next argument */
329 usage(); 329 usage();
330 if (sscanf(argv[argn], "%d/%d", 330 if (sscanf(argv[argn], "%u/%u",
331 &cinfo->scale_num, &cinfo->scale_denom) < 1) 331 &cinfo->scale_num, &cinfo->scale_denom) < 1)
332 usage(); 332 usage();
333 333
diff --git a/gs/jpeg/filelist.txt b/gs/jpeg/filelist.txt
index 7e053869a..adfd14f35 100644
--- a/gs/jpeg/filelist.txt
+++ b/gs/jpeg/filelist.txt
@@ -1,6 +1,6 @@
1IJG JPEG LIBRARY: FILE LIST 1IJG JPEG LIBRARY: FILE LIST
2 2
3Copyright (C) 1994-2009, Thomas G. Lane, Guido Vollbeding. 3Copyright (C) 1994-2013, Thomas G. Lane, Guido Vollbeding.
4This file is part of the Independent JPEG Group's software. 4This file is part of the Independent JPEG Group's software.
5For conditions of distribution and use, see the accompanying README file. 5For conditions of distribution and use, see the accompanying README file.
6 6
@@ -197,6 +197,8 @@ config.guess
197config.sub 197config.sub
198depcomp 198depcomp
199missing 199missing
200ar-lib
201compile
200install-sh Install shell script for those Unix systems lacking one. 202install-sh Install shell script for those Unix systems lacking one.
201Makefile.in Makefile input for configure. 203Makefile.in Makefile input for configure.
202Makefile.am Source file for use with Automake to generate Makefile.in. 204Makefile.am Source file for use with Automake to generate Makefile.in.
@@ -206,8 +208,6 @@ mak*.* Sample makefiles for particular systems.
206jconfig.* Sample jconfig.h for particular systems. 208jconfig.* Sample jconfig.h for particular systems.
207libjpeg.map Script to generate shared library with versioned symbols. 209libjpeg.map Script to generate shared library with versioned symbols.
208aclocal.m4 M4 macro definitions for use with Autoconf. 210aclocal.m4 M4 macro definitions for use with Autoconf.
209ansi2knr.c De-ANSIfier for pre-ANSI C compilers (courtesy of
210 L. Peter Deutsch and Aladdin Enterprises).
211 211
212Test files (see install.txt for test procedure): 212Test files (see install.txt for test procedure):
213 213
diff --git a/gs/jpeg/install-sh b/gs/jpeg/install-sh
index a9244eb07..377bb8687 100755
--- a/gs/jpeg/install-sh
+++ b/gs/jpeg/install-sh
@@ -1,7 +1,7 @@
1#!/bin/sh 1#!/bin/sh
2# install - install a program, script, or datafile 2# install - install a program, script, or datafile
3 3
4scriptversion=2011-01-19.21; # UTC 4scriptversion=2011-11-20.07; # UTC
5 5
6# This originates from X11R5 (mit/util/scripts/install.sh), which was 6# This originates from X11R5 (mit/util/scripts/install.sh), which was
7# later released in X11R6 (xc/config/util/install.sh) with the 7# later released in X11R6 (xc/config/util/install.sh) with the
@@ -35,7 +35,7 @@ scriptversion=2011-01-19.21; # UTC
35# FSF changes to this file are in the public domain. 35# FSF changes to this file are in the public domain.
36# 36#
37# Calling this script install-sh is preferred over install.sh, to prevent 37# Calling this script install-sh is preferred over install.sh, to prevent
38# `make' implicit rules from creating a file called install from it 38# 'make' implicit rules from creating a file called install from it
39# when there is no Makefile. 39# when there is no Makefile.
40# 40#
41# This script is compatible with the BSD install script, but was written 41# This script is compatible with the BSD install script, but was written
@@ -156,7 +156,7 @@ while test $# -ne 0; do
156 -s) stripcmd=$stripprog;; 156 -s) stripcmd=$stripprog;;
157 157
158 -t) dst_arg=$2 158 -t) dst_arg=$2
159 # Protect names problematic for `test' and other utilities. 159 # Protect names problematic for 'test' and other utilities.
160 case $dst_arg in 160 case $dst_arg in
161 -* | [=\(\)!]) dst_arg=./$dst_arg;; 161 -* | [=\(\)!]) dst_arg=./$dst_arg;;
162 esac 162 esac
@@ -190,7 +190,7 @@ if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
190 fi 190 fi
191 shift # arg 191 shift # arg
192 dst_arg=$arg 192 dst_arg=$arg
193 # Protect names problematic for `test' and other utilities. 193 # Protect names problematic for 'test' and other utilities.
194 case $dst_arg in 194 case $dst_arg in
195 -* | [=\(\)!]) dst_arg=./$dst_arg;; 195 -* | [=\(\)!]) dst_arg=./$dst_arg;;
196 esac 196 esac
@@ -202,7 +202,7 @@ if test $# -eq 0; then
202 echo "$0: no input file specified." >&2 202 echo "$0: no input file specified." >&2
203 exit 1 203 exit 1
204 fi 204 fi
205 # It's OK to call `install-sh -d' without argument. 205 # It's OK to call 'install-sh -d' without argument.
206 # This can happen when creating conditional directories. 206 # This can happen when creating conditional directories.
207 exit 0 207 exit 0
208fi 208fi
@@ -240,7 +240,7 @@ fi
240 240
241for src 241for src
242do 242do
243 # Protect names problematic for `test' and other utilities. 243 # Protect names problematic for 'test' and other utilities.
244 case $src in 244 case $src in
245 -* | [=\(\)!]) src=./$src;; 245 -* | [=\(\)!]) src=./$src;;
246 esac 246 esac
@@ -354,7 +354,7 @@ do
354 if test -z "$dir_arg" || { 354 if test -z "$dir_arg" || {
355 # Check for POSIX incompatibilities with -m. 355 # Check for POSIX incompatibilities with -m.
356 # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or 356 # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
357 # other-writeable bit of parent directory when it shouldn't. 357 # other-writable bit of parent directory when it shouldn't.
358 # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. 358 # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
359 ls_ld_tmpdir=`ls -ld "$tmpdir"` 359 ls_ld_tmpdir=`ls -ld "$tmpdir"`
360 case $ls_ld_tmpdir in 360 case $ls_ld_tmpdir in
diff --git a/gs/jpeg/install.txt b/gs/jpeg/install.txt
index 04bed914e..04053068f 100644
--- a/gs/jpeg/install.txt
+++ b/gs/jpeg/install.txt
@@ -1,6 +1,6 @@
1INSTALLATION INSTRUCTIONS for the Independent JPEG Group's JPEG software 1INSTALLATION INSTRUCTIONS for the Independent JPEG Group's JPEG software
2 2
3Copyright (C) 1991-2011, Thomas G. Lane, Guido Vollbeding. 3Copyright (C) 1991-2013, Thomas G. Lane, Guido Vollbeding.
4This file is part of the Independent JPEG Group's software. 4This file is part of the Independent JPEG Group's software.
5For conditions of distribution and use, see the accompanying README file. 5For conditions of distribution and use, see the accompanying README file.
6 6
@@ -418,54 +418,58 @@ support as follows:
418 the directory containing the URT "librle.a" file (typically the 418 the directory containing the URT "librle.a" file (typically the
419 "lib" subdirectory of the URT distribution). 419 "lib" subdirectory of the URT distribution).
420 420
421Support for 12-bit-deep pixel data: 421Support for 9-bit to 12-bit deep pixel data:
422 422
423The JPEG standard allows either 8-bit or 12-bit data precision. (For color, 423The IJG code currently allows 8, 9, 10, 11, or 12 bits sample data precision.
424this means 8 or 12 bits per channel, of course.) If you need to work with 424(For color, this means 8 to 12 bits per channel, of course.) If you need to
425deeper than 8-bit data, you can compile the IJG code for 12-bit operation. 425work with deeper than 8-bit data, you can compile the IJG code for 9-bit to
42612-bit operation.
426To do so: 427To do so:
427 1. In jmorecfg.h, define BITS_IN_JSAMPLE as 12 rather than 8. 428 1. In jmorecfg.h, define BITS_IN_JSAMPLE as 9, 10, 11, or 12 rather than 8.
428 2. In jconfig.h, undefine BMP_SUPPORTED, RLE_SUPPORTED, and TARGA_SUPPORTED, 429 2. In jconfig.h, undefine BMP_SUPPORTED, RLE_SUPPORTED, and TARGA_SUPPORTED,
429 because the code for those formats doesn't handle 12-bit data and won't 430 because the code for those formats doesn't handle deeper than 8-bit data
430 even compile. (The PPM code does work, as explained below. The GIF 431 and won't even compile. (The PPM code does work, as explained below.
431 code works too; it scales 8-bit GIF data to and from 12-bit depth 432 The GIF code works too; it scales 8-bit GIF data to and from 12-bit
432 automatically.) 433 depth automatically.)
433 3. Compile. Don't expect "make test" to pass, since the supplied test 434 3. Compile. Don't expect "make test" to pass, since the supplied test
434 files are for 8-bit data. 435 files are for 8-bit data.
435 436
436Currently, 12-bit support does not work on 16-bit-int machines. 437Currently, 9-bit to 12-bit support does not work on 16-bit-int machines.
437 438
438Note that a 12-bit version will not read 8-bit JPEG files, nor vice versa; 439Run-time selection and conversion of data precision are currently not
439so you'll want to keep around a regular 8-bit compilation as well. 440supported and may be added later.
440(Run-time selection of data depth, to allow a single copy that does both, 441Exception: The transcoding part (jpegtran) supports all settings in a
441is possible but would probably slow things down considerably; it's very low 442single instance, since it operates on the level of DCT coefficients and
442on our to-do list.) 443not sample values.
443 444
444The PPM reader (rdppm.c) can read 12-bit data from either text-format or 445The PPM reader (rdppm.c) can read deeper than 8-bit data from either
445binary-format PPM and PGM files. Binary-format PPM/PGM files which have a 446text-format or binary-format PPM and PGM files. Binary-format PPM/PGM files
446maxval greater than 255 are assumed to use 2 bytes per sample, MSB first 447which have a maxval greater than 255 are assumed to use 2 bytes per sample,
447(big-endian order). As of early 1995, 2-byte binary format is not 448MSB first (big-endian order). As of early 1995, 2-byte binary format is not
448officially supported by the PBMPLUS library, but it is expected that a 449officially supported by the PBMPLUS library, but it is expected that a
449future release of PBMPLUS will support it. Note that the PPM reader will 450future release of PBMPLUS will support it. Note that the PPM reader will
450read files of any maxval regardless of the BITS_IN_JSAMPLE setting; incoming 451read files of any maxval regardless of the BITS_IN_JSAMPLE setting; incoming
451data is automatically rescaled to either maxval=255 or maxval=4095 as 452data is automatically rescaled to maxval=MAXJSAMPLE as appropriate for the
452appropriate for the cjpeg bit depth. 453cjpeg bit depth.
453 454
454The PPM writer (wrppm.c) will normally write 2-byte binary PPM or PGM 455The PPM writer (wrppm.c) will normally write 2-byte binary PPM or PGM
455format, maxval 4095, when compiled with BITS_IN_JSAMPLE=12. Since this 456format, maxval=MAXJSAMPLE, when compiled with BITS_IN_JSAMPLE>8. Since this
456format is not yet widely supported, you can disable it by compiling wrppm.c 457format is not yet widely supported, you can disable it by compiling wrppm.c
457with PPM_NORAWWORD defined; then the data is scaled down to 8 bits to make a 458with PPM_NORAWWORD defined; then the data is scaled down to 8 bits to make a
458standard 1-byte/sample PPM or PGM file. (Yes, this means still another copy 459standard 1-byte/sample PPM or PGM file. (Yes, this means still another copy
459of djpeg to keep around. But hopefully you won't need it for very long. 460of djpeg to keep around. But hopefully you won't need it for very long.
460Poskanzer's supposed to get that new PBMPLUS release out Real Soon Now.) 461Poskanzer's supposed to get that new PBMPLUS release out Real Soon Now.)
461 462
462Of course, if you are working with 12-bit data, you probably have it stored 463Of course, if you are working with 9-bit to 12-bit data, you probably have
463in some other, nonstandard format. In that case you'll probably want to 464it stored in some other, nonstandard format. In that case you'll probably
464write your own I/O modules to read and write your format. 465want to write your own I/O modules to read and write your format.
465 466
466Note that a 12-bit version of cjpeg always runs in "-optimize" mode, in 467Note:
467order to generate valid Huffman tables. This is necessary because our 468The standard Huffman tables are only valid for 8-bit data precision. If
468default Huffman tables only cover 8-bit data. 469you selected more than 8-bit data precision, cjpeg uses arithmetic coding
470by default. The Huffman encoder normally uses entropy optimization to
471compute usable tables for higher precision. Otherwise, you'll have to
472supply different default Huffman tables.
469 473
470Removing code: 474Removing code:
471 475
@@ -848,17 +852,23 @@ with /Oo-.
848Microsoft Windows (all versions), generic comments: 852Microsoft Windows (all versions), generic comments:
849 853
850Some Windows system include files define typedef boolean as "unsigned char". 854Some Windows system include files define typedef boolean as "unsigned char".
851The IJG code also defines typedef boolean, but we make it "int" by default. 855The IJG code also defines typedef boolean, but we make it an "enum" by default.
852This doesn't affect the IJG programs because we don't import those Windows 856This doesn't affect the IJG programs because we don't import those Windows
853include files. But if you use the JPEG library in your own program, and some 857include files. But if you use the JPEG library in your own program, and some
854of your program's files import one definition of boolean while some import the 858of your program's files import one definition of boolean while some import the
855other, you can get all sorts of mysterious problems. A good preventive step 859other, you can get all sorts of mysterious problems. A good preventive step
856is to make the IJG library use "unsigned char" for boolean. To do that, 860is to make the IJG library use "unsigned char" for boolean. To do that,
857add something like this to your jconfig.h file: 861add something like this to your jconfig.h file:
858 /* Define "boolean" as unsigned char, not int, per Windows custom */ 862 /* Define "boolean" as unsigned char, not enum, per Windows custom */
859 #ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */ 863 #ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */
860 typedef unsigned char boolean; 864 typedef unsigned char boolean;
861 #endif 865 #endif
866 #ifndef FALSE /* in case these macros already exist */
867 #define FALSE 0 /* values of boolean */
868 #endif
869 #ifndef TRUE
870 #define TRUE 1
871 #endif
862 #define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */ 872 #define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */
863(This is already in jconfig.vc, by the way.) 873(This is already in jconfig.vc, by the way.)
864 874
diff --git a/gs/jpeg/jcapistd.c b/gs/jpeg/jcapistd.c
index c0320b1b1..0917afa97 100644
--- a/gs/jpeg/jcapistd.c
+++ b/gs/jpeg/jcapistd.c
@@ -2,6 +2,7 @@
2 * jcapistd.c 2 * jcapistd.c
3 * 3 *
4 * Copyright (C) 1994-1996, Thomas G. Lane. 4 * Copyright (C) 1994-1996, Thomas G. Lane.
5 * Modified 2013 by Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
7 * 8 *
@@ -145,7 +146,7 @@ jpeg_write_raw_data (j_compress_ptr cinfo, JSAMPIMAGE data,
145 (*cinfo->master->pass_startup) (cinfo); 146 (*cinfo->master->pass_startup) (cinfo);
146 147
147 /* Verify that at least one iMCU row has been passed. */ 148 /* Verify that at least one iMCU row has been passed. */
148 lines_per_iMCU_row = cinfo->max_v_samp_factor * DCTSIZE; 149 lines_per_iMCU_row = cinfo->max_v_samp_factor * cinfo->min_DCT_v_scaled_size;
149 if (num_lines < lines_per_iMCU_row) 150 if (num_lines < lines_per_iMCU_row)
150 ERREXIT(cinfo, JERR_BUFFER_SIZE); 151 ERREXIT(cinfo, JERR_BUFFER_SIZE);
151 152
diff --git a/gs/jpeg/jcarith.c b/gs/jpeg/jcarith.c
index 033f67069..a64190e72 100644
--- a/gs/jpeg/jcarith.c
+++ b/gs/jpeg/jcarith.c
@@ -1,7 +1,7 @@
1/* 1/*
2 * jcarith.c 2 * jcarith.c
3 * 3 *
4 * Developed 1997-2011 by Guido Vollbeding. 4 * Developed 1997-2013 by Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 5 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 6 * For conditions of distribution and use, see the accompanying README file.
7 * 7 *
@@ -362,7 +362,6 @@ METHODDEF(boolean)
362encode_mcu_DC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data) 362encode_mcu_DC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
363{ 363{
364 arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy; 364 arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
365 JBLOCKROW block;
366 unsigned char *st; 365 unsigned char *st;
367 int blkn, ci, tbl; 366 int blkn, ci, tbl;
368 int v, v2, m; 367 int v, v2, m;
@@ -381,14 +380,13 @@ encode_mcu_DC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
381 380
382 /* Encode the MCU data blocks */ 381 /* Encode the MCU data blocks */
383 for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) { 382 for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
384 block = MCU_data[blkn];
385 ci = cinfo->MCU_membership[blkn]; 383 ci = cinfo->MCU_membership[blkn];
386 tbl = cinfo->cur_comp_info[ci]->dc_tbl_no; 384 tbl = cinfo->cur_comp_info[ci]->dc_tbl_no;
387 385
388 /* Compute the DC value after the required point transform by Al. 386 /* Compute the DC value after the required point transform by Al.
389 * This is simply an arithmetic right shift. 387 * This is simply an arithmetic right shift.
390 */ 388 */
391 m = IRIGHT_SHIFT((int) ((*block)[0]), cinfo->Al); 389 m = IRIGHT_SHIFT((int) (MCU_data[blkn][0][0]), cinfo->Al);
392 390
393 /* Sections F.1.4.1 & F.1.4.4.1: Encoding of DC coefficients */ 391 /* Sections F.1.4.1 & F.1.4.4.1: Encoding of DC coefficients */
394 392
@@ -453,11 +451,11 @@ METHODDEF(boolean)
453encode_mcu_AC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data) 451encode_mcu_AC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
454{ 452{
455 arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy; 453 arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
454 const int * natural_order;
456 JBLOCKROW block; 455 JBLOCKROW block;
457 unsigned char *st; 456 unsigned char *st;
458 int tbl, k, ke; 457 int tbl, k, ke;
459 int v, v2, m; 458 int v, v2, m;
460 const int * natural_order;
461 459
462 /* Emit restart marker if needed */ 460 /* Emit restart marker if needed */
463 if (cinfo->restart_interval) { 461 if (cinfo->restart_interval) {
@@ -479,7 +477,8 @@ encode_mcu_AC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
479 /* Sections F.1.4.2 & F.1.4.4.2: Encoding of AC coefficients */ 477 /* Sections F.1.4.2 & F.1.4.4.2: Encoding of AC coefficients */
480 478
481 /* Establish EOB (end-of-block) index */ 479 /* Establish EOB (end-of-block) index */
482 for (ke = cinfo->Se; ke > 0; ke--) 480 ke = cinfo->Se;
481 do {
483 /* We must apply the point transform by Al. For AC coefficients this 482 /* We must apply the point transform by Al. For AC coefficients this
484 * is an integer division with rounding towards 0. To do this portably 483 * is an integer division with rounding towards 0. To do this portably
485 * in C, we shift after obtaining the absolute value. 484 * in C, we shift after obtaining the absolute value.
@@ -490,13 +489,14 @@ encode_mcu_AC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
490 v = -v; 489 v = -v;
491 if (v >>= cinfo->Al) break; 490 if (v >>= cinfo->Al) break;
492 } 491 }
492 } while (--ke);
493 493
494 /* Figure F.5: Encode_AC_Coefficients */ 494 /* Figure F.5: Encode_AC_Coefficients */
495 for (k = cinfo->Ss; k <= ke; k++) { 495 for (k = cinfo->Ss - 1; k < ke;) {
496 st = entropy->ac_stats[tbl] + 3 * (k - 1); 496 st = entropy->ac_stats[tbl] + 3 * k;
497 arith_encode(cinfo, st, 0); /* EOB decision */ 497 arith_encode(cinfo, st, 0); /* EOB decision */
498 for (;;) { 498 for (;;) {
499 if ((v = (*block)[natural_order[k]]) >= 0) { 499 if ((v = (*block)[natural_order[++k]]) >= 0) {
500 if (v >>= cinfo->Al) { 500 if (v >>= cinfo->Al) {
501 arith_encode(cinfo, st + 1, 1); 501 arith_encode(cinfo, st + 1, 1);
502 arith_encode(cinfo, entropy->fixed_bin, 0); 502 arith_encode(cinfo, entropy->fixed_bin, 0);
@@ -510,7 +510,8 @@ encode_mcu_AC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
510 break; 510 break;
511 } 511 }
512 } 512 }
513 arith_encode(cinfo, st + 1, 0); st += 3; k++; 513 arith_encode(cinfo, st + 1, 0);
514 st += 3;
514 } 515 }
515 st += 2; 516 st += 2;
516 /* Figure F.8: Encoding the magnitude category of v */ 517 /* Figure F.8: Encoding the magnitude category of v */
@@ -537,9 +538,9 @@ encode_mcu_AC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
537 while (m >>= 1) 538 while (m >>= 1)
538 arith_encode(cinfo, st, (m & v) ? 1 : 0); 539 arith_encode(cinfo, st, (m & v) ? 1 : 0);
539 } 540 }
540 /* Encode EOB decision only if k <= cinfo->Se */ 541 /* Encode EOB decision only if k < cinfo->Se */
541 if (k <= cinfo->Se) { 542 if (k < cinfo->Se) {
542 st = entropy->ac_stats[tbl] + 3 * (k - 1); 543 st = entropy->ac_stats[tbl] + 3 * k;
543 arith_encode(cinfo, st, 1); 544 arith_encode(cinfo, st, 1);
544 } 545 }
545 546
@@ -549,6 +550,8 @@ encode_mcu_AC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
549 550
550/* 551/*
551 * MCU encoding for DC successive approximation refinement scan. 552 * MCU encoding for DC successive approximation refinement scan.
553 * Note: we assume such scans can be multi-component,
554 * although the spec is not very clear on the point.
552 */ 555 */
553 556
554METHODDEF(boolean) 557METHODDEF(boolean)
@@ -590,11 +593,11 @@ METHODDEF(boolean)
590encode_mcu_AC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data) 593encode_mcu_AC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
591{ 594{
592 arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy; 595 arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
596 const int * natural_order;
593 JBLOCKROW block; 597 JBLOCKROW block;
594 unsigned char *st; 598 unsigned char *st;
595 int tbl, k, ke, kex; 599 int tbl, k, ke, kex;
596 int v; 600 int v;
597 const int * natural_order;
598 601
599 /* Emit restart marker if needed */ 602 /* Emit restart marker if needed */
600 if (cinfo->restart_interval) { 603 if (cinfo->restart_interval) {
@@ -616,7 +619,8 @@ encode_mcu_AC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
616 /* Section G.1.3.3: Encoding of AC coefficients */ 619 /* Section G.1.3.3: Encoding of AC coefficients */
617 620
618 /* Establish EOB (end-of-block) index */ 621 /* Establish EOB (end-of-block) index */
619 for (ke = cinfo->Se; ke > 0; ke--) 622 ke = cinfo->Se;
623 do {
620 /* We must apply the point transform by Al. For AC coefficients this 624 /* We must apply the point transform by Al. For AC coefficients this
621 * is an integer division with rounding towards 0. To do this portably 625 * is an integer division with rounding towards 0. To do this portably
622 * in C, we shift after obtaining the absolute value. 626 * in C, we shift after obtaining the absolute value.
@@ -627,6 +631,7 @@ encode_mcu_AC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
627 v = -v; 631 v = -v;
628 if (v >>= cinfo->Al) break; 632 if (v >>= cinfo->Al) break;
629 } 633 }
634 } while (--ke);
630 635
631 /* Establish EOBx (previous stage end-of-block) index */ 636 /* Establish EOBx (previous stage end-of-block) index */
632 for (kex = ke; kex > 0; kex--) 637 for (kex = ke; kex > 0; kex--)
@@ -638,12 +643,12 @@ encode_mcu_AC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
638 } 643 }
639 644
640 /* Figure G.10: Encode_AC_Coefficients_SA */ 645 /* Figure G.10: Encode_AC_Coefficients_SA */
641 for (k = cinfo->Ss; k <= ke; k++) { 646 for (k = cinfo->Ss - 1; k < ke;) {
642 st = entropy->ac_stats[tbl] + 3 * (k - 1); 647 st = entropy->ac_stats[tbl] + 3 * k;
643 if (k > kex) 648 if (k >= kex)
644 arith_encode(cinfo, st, 0); /* EOB decision */ 649 arith_encode(cinfo, st, 0); /* EOB decision */
645 for (;;) { 650 for (;;) {
646 if ((v = (*block)[natural_order[k]]) >= 0) { 651 if ((v = (*block)[natural_order[++k]]) >= 0) {
647 if (v >>= cinfo->Al) { 652 if (v >>= cinfo->Al) {
648 if (v >> 1) /* previously nonzero coef */ 653 if (v >> 1) /* previously nonzero coef */
649 arith_encode(cinfo, st + 2, (v & 1)); 654 arith_encode(cinfo, st + 2, (v & 1));
@@ -665,12 +670,13 @@ encode_mcu_AC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
665 break; 670 break;
666 } 671 }
667 } 672 }
668 arith_encode(cinfo, st + 1, 0); st += 3; k++; 673 arith_encode(cinfo, st + 1, 0);
674 st += 3;
669 } 675 }
670 } 676 }
671 /* Encode EOB decision only if k <= cinfo->Se */ 677 /* Encode EOB decision only if k < cinfo->Se */
672 if (k <= cinfo->Se) { 678 if (k < cinfo->Se) {
673 st = entropy->ac_stats[tbl] + 3 * (k - 1); 679 st = entropy->ac_stats[tbl] + 3 * k;
674 arith_encode(cinfo, st, 1); 680 arith_encode(cinfo, st, 1);
675 } 681 }
676 682
@@ -686,12 +692,13 @@ METHODDEF(boolean)
686encode_mcu (j_compress_ptr cinfo, JBLOCKROW *MCU_data) 692encode_mcu (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
687{ 693{
688 arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy; 694 arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
689 jpeg_component_info * compptr; 695 const int * natural_order;
690 JBLOCKROW block; 696 JBLOCKROW block;
691 unsigned char *st; 697 unsigned char *st;
692 int blkn, ci, tbl, k, ke; 698 int tbl, k, ke;
693 int v, v2, m; 699 int v, v2, m;
694 const int * natural_order; 700 int blkn, ci;
701 jpeg_component_info * compptr;
695 702
696 /* Emit restart marker if needed */ 703 /* Emit restart marker if needed */
697 if (cinfo->restart_interval) { 704 if (cinfo->restart_interval) {
@@ -922,7 +929,7 @@ jinit_arith_encoder (j_compress_ptr cinfo)
922 entropy = (arith_entropy_ptr) 929 entropy = (arith_entropy_ptr)
923 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 930 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
924 SIZEOF(arith_entropy_encoder)); 931 SIZEOF(arith_entropy_encoder));
925 cinfo->entropy = (struct jpeg_entropy_encoder *) entropy; 932 cinfo->entropy = &entropy->pub;
926 entropy->pub.start_pass = start_pass; 933 entropy->pub.start_pass = start_pass;
927 entropy->pub.finish_pass = finish_pass; 934 entropy->pub.finish_pass = finish_pass;
928 935
diff --git a/gs/jpeg/jccolor.c b/gs/jpeg/jccolor.c
index 3e2d0e927..f6b4a493f 100644
--- a/gs/jpeg/jccolor.c
+++ b/gs/jpeg/jccolor.c
@@ -2,7 +2,7 @@
2 * jccolor.c 2 * jccolor.c
3 * 3 *
4 * Copyright (C) 1991-1996, Thomas G. Lane. 4 * Copyright (C) 1991-1996, Thomas G. Lane.
5 * Modified 2011 by Guido Vollbeding. 5 * Modified 2011-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -29,13 +29,25 @@ typedef my_color_converter * my_cconvert_ptr;
29/**************** RGB -> YCbCr conversion: most common case **************/ 29/**************** RGB -> YCbCr conversion: most common case **************/
30 30
31/* 31/*
32 * YCbCr is defined per CCIR 601-1, except that Cb and Cr are 32 * YCbCr is defined per Recommendation ITU-R BT.601-7 (03/2011),
33 * normalized to the range 0..MAXJSAMPLE rather than -0.5 .. 0.5. 33 * previously known as Recommendation CCIR 601-1, except that Cb and Cr
34 * The conversion equations to be implemented are therefore 34 * are normalized to the range 0..MAXJSAMPLE rather than -0.5 .. 0.5.
35 * Y = 0.29900 * R + 0.58700 * G + 0.11400 * B 35 * sRGB (standard RGB color space) is defined per IEC 61966-2-1:1999.
36 * Cb = -0.16874 * R - 0.33126 * G + 0.50000 * B + CENTERJSAMPLE 36 * sYCC (standard luma-chroma-chroma color space with extended gamut)
37 * Cr = 0.50000 * R - 0.41869 * G - 0.08131 * B + CENTERJSAMPLE 37 * is defined per IEC 61966-2-1:1999 Amendment A1:2003 Annex F.
38 * (These numbers are derived from TIFF 6.0 section 21, dated 3-June-92.) 38 * bg-sRGB and bg-sYCC (big gamut standard color spaces)
39 * are defined per IEC 61966-2-1:1999 Amendment A1:2003 Annex G.
40 * Note that the derived conversion coefficients given in some of these
41 * documents are imprecise. The general conversion equations are
42 * Y = Kr * R + (1 - Kr - Kb) * G + Kb * B
43 * Cb = 0.5 * (B - Y) / (1 - Kb)
44 * Cr = 0.5 * (R - Y) / (1 - Kr)
45 * With Kr = 0.299 and Kb = 0.114 (derived according to SMPTE RP 177-1993
46 * from the 1953 FCC NTSC primaries and CIE Illuminant C),
47 * the conversion equations to be implemented are therefore
48 * Y = 0.299 * R + 0.587 * G + 0.114 * B
49 * Cb = -0.168735892 * R - 0.331264108 * G + 0.5 * B + CENTERJSAMPLE
50 * Cr = 0.5 * R - 0.418687589 * G - 0.081312411 * B + CENTERJSAMPLE
39 * Note: older versions of the IJG code used a zero offset of MAXJSAMPLE/2, 51 * Note: older versions of the IJG code used a zero offset of MAXJSAMPLE/2,
40 * rather than CENTERJSAMPLE, for Cb and Cr. This gave equal positive and 52 * rather than CENTERJSAMPLE, for Cb and Cr. This gave equal positive and
41 * negative swings for Cb/Cr, but meant that grayscale values (Cb=Cr=0) 53 * negative swings for Cb/Cr, but meant that grayscale values (Cb=Cr=0)
@@ -49,9 +61,9 @@ typedef my_color_converter * my_cconvert_ptr;
49 * For even more speed, we avoid doing any multiplications in the inner loop 61 * For even more speed, we avoid doing any multiplications in the inner loop
50 * by precalculating the constants times R,G,B for all possible values. 62 * by precalculating the constants times R,G,B for all possible values.
51 * For 8-bit JSAMPLEs this is very reasonable (only 256 entries per table); 63 * For 8-bit JSAMPLEs this is very reasonable (only 256 entries per table);
52 * for 12-bit samples it is still acceptable. It's not very reasonable for 64 * for 9-bit to 12-bit samples it is still acceptable. It's not very
53 * 16-bit samples, but if you want lossless storage you shouldn't be changing 65 * reasonable for 16-bit samples, but if you want lossless storage you
54 * colorspace anyway. 66 * shouldn't be changing colorspace anyway.
55 * The CENTERJSAMPLE offsets and the rounding fudge-factor of 0.5 are included 67 * The CENTERJSAMPLE offsets and the rounding fudge-factor of 0.5 are included
56 * in the tables to save adding them separately in the inner loop. 68 * in the tables to save adding them separately in the inner loop.
57 */ 69 */
@@ -96,21 +108,21 @@ rgb_ycc_start (j_compress_ptr cinfo)
96 (TABLE_SIZE * SIZEOF(INT32))); 108 (TABLE_SIZE * SIZEOF(INT32)));
97 109
98 for (i = 0; i <= MAXJSAMPLE; i++) { 110 for (i = 0; i <= MAXJSAMPLE; i++) {
99 rgb_ycc_tab[i+R_Y_OFF] = FIX(0.29900) * i; 111 rgb_ycc_tab[i+R_Y_OFF] = FIX(0.299) * i;
100 rgb_ycc_tab[i+G_Y_OFF] = FIX(0.58700) * i; 112 rgb_ycc_tab[i+G_Y_OFF] = FIX(0.587) * i;
101 rgb_ycc_tab[i+B_Y_OFF] = FIX(0.11400) * i + ONE_HALF; 113 rgb_ycc_tab[i+B_Y_OFF] = FIX(0.114) * i + ONE_HALF;
102 rgb_ycc_tab[i+R_CB_OFF] = (-FIX(0.16874)) * i; 114 rgb_ycc_tab[i+R_CB_OFF] = (-FIX(0.168735892)) * i;
103 rgb_ycc_tab[i+G_CB_OFF] = (-FIX(0.33126)) * i; 115 rgb_ycc_tab[i+G_CB_OFF] = (-FIX(0.331264108)) * i;
104 /* We use a rounding fudge-factor of 0.5-epsilon for Cb and Cr. 116 /* We use a rounding fudge-factor of 0.5-epsilon for Cb and Cr.
105 * This ensures that the maximum output will round to MAXJSAMPLE 117 * This ensures that the maximum output will round to MAXJSAMPLE
106 * not MAXJSAMPLE+1, and thus that we don't have to range-limit. 118 * not MAXJSAMPLE+1, and thus that we don't have to range-limit.
107 */ 119 */
108 rgb_ycc_tab[i+B_CB_OFF] = FIX(0.50000) * i + CBCR_OFFSET + ONE_HALF-1; 120 rgb_ycc_tab[i+B_CB_OFF] = FIX(0.5) * i + CBCR_OFFSET + ONE_HALF-1;
109/* B=>Cb and R=>Cr tables are the same 121/* B=>Cb and R=>Cr tables are the same
110 rgb_ycc_tab[i+R_CR_OFF] = FIX(0.50000) * i + CBCR_OFFSET + ONE_HALF-1; 122 rgb_ycc_tab[i+R_CR_OFF] = FIX(0.5) * i + CBCR_OFFSET + ONE_HALF-1;
111*/ 123*/
112 rgb_ycc_tab[i+G_CR_OFF] = (-FIX(0.41869)) * i; 124 rgb_ycc_tab[i+G_CR_OFF] = (-FIX(0.418687589)) * i;
113 rgb_ycc_tab[i+B_CR_OFF] = (-FIX(0.08131)) * i; 125 rgb_ycc_tab[i+B_CR_OFF] = (-FIX(0.081312411)) * i;
114 } 126 }
115} 127}
116 128
@@ -133,8 +145,8 @@ rgb_ycc_convert (j_compress_ptr cinfo,
133 JDIMENSION output_row, int num_rows) 145 JDIMENSION output_row, int num_rows)
134{ 146{
135 my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert; 147 my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
136 register int r, g, b;
137 register INT32 * ctab = cconvert->rgb_ycc_tab; 148 register INT32 * ctab = cconvert->rgb_ycc_tab;
149 register int r, g, b;
138 register JSAMPROW inptr; 150 register JSAMPROW inptr;
139 register JSAMPROW outptr0, outptr1, outptr2; 151 register JSAMPROW outptr0, outptr1, outptr2;
140 register JDIMENSION col; 152 register JDIMENSION col;
@@ -150,7 +162,6 @@ rgb_ycc_convert (j_compress_ptr cinfo,
150 r = GETJSAMPLE(inptr[RGB_RED]); 162 r = GETJSAMPLE(inptr[RGB_RED]);
151 g = GETJSAMPLE(inptr[RGB_GREEN]); 163 g = GETJSAMPLE(inptr[RGB_GREEN]);
152 b = GETJSAMPLE(inptr[RGB_BLUE]); 164 b = GETJSAMPLE(inptr[RGB_BLUE]);
153 inptr += RGB_PIXELSIZE;
154 /* If the inputs are 0..MAXJSAMPLE, the outputs of these equations 165 /* If the inputs are 0..MAXJSAMPLE, the outputs of these equations
155 * must be too; we do not need an explicit range-limiting operation. 166 * must be too; we do not need an explicit range-limiting operation.
156 * Hence the value being shifted is never negative, and we don't 167 * Hence the value being shifted is never negative, and we don't
@@ -168,6 +179,7 @@ rgb_ycc_convert (j_compress_ptr cinfo,
168 outptr2[col] = (JSAMPLE) 179 outptr2[col] = (JSAMPLE)
169 ((ctab[r+R_CR_OFF] + ctab[g+G_CR_OFF] + ctab[b+B_CR_OFF]) 180 ((ctab[r+R_CR_OFF] + ctab[g+G_CR_OFF] + ctab[b+B_CR_OFF])
170 >> SCALEBITS); 181 >> SCALEBITS);
182 inptr += RGB_PIXELSIZE;
171 } 183 }
172 } 184 }
173} 185}
@@ -189,8 +201,8 @@ rgb_gray_convert (j_compress_ptr cinfo,
189 JDIMENSION output_row, int num_rows) 201 JDIMENSION output_row, int num_rows)
190{ 202{
191 my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert; 203 my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
192 register int r, g, b;
193 register INT32 * ctab = cconvert->rgb_ycc_tab; 204 register INT32 * ctab = cconvert->rgb_ycc_tab;
205 register int r, g, b;
194 register JSAMPROW inptr; 206 register JSAMPROW inptr;
195 register JSAMPROW outptr; 207 register JSAMPROW outptr;
196 register JDIMENSION col; 208 register JDIMENSION col;
@@ -198,17 +210,16 @@ rgb_gray_convert (j_compress_ptr cinfo,
198 210
199 while (--num_rows >= 0) { 211 while (--num_rows >= 0) {
200 inptr = *input_buf++; 212 inptr = *input_buf++;
201 outptr = output_buf[0][output_row]; 213 outptr = output_buf[0][output_row++];
202 output_row++;
203 for (col = 0; col < num_cols; col++) { 214 for (col = 0; col < num_cols; col++) {
204 r = GETJSAMPLE(inptr[RGB_RED]); 215 r = GETJSAMPLE(inptr[RGB_RED]);
205 g = GETJSAMPLE(inptr[RGB_GREEN]); 216 g = GETJSAMPLE(inptr[RGB_GREEN]);
206 b = GETJSAMPLE(inptr[RGB_BLUE]); 217 b = GETJSAMPLE(inptr[RGB_BLUE]);
207 inptr += RGB_PIXELSIZE;
208 /* Y */ 218 /* Y */
209 outptr[col] = (JSAMPLE) 219 outptr[col] = (JSAMPLE)
210 ((ctab[r+R_Y_OFF] + ctab[g+G_Y_OFF] + ctab[b+B_Y_OFF]) 220 ((ctab[r+R_Y_OFF] + ctab[g+G_Y_OFF] + ctab[b+B_Y_OFF])
211 >> SCALEBITS); 221 >> SCALEBITS);
222 inptr += RGB_PIXELSIZE;
212 } 223 }
213 } 224 }
214} 225}
@@ -228,8 +239,8 @@ cmyk_ycck_convert (j_compress_ptr cinfo,
228 JDIMENSION output_row, int num_rows) 239 JDIMENSION output_row, int num_rows)
229{ 240{
230 my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert; 241 my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
231 register int r, g, b;
232 register INT32 * ctab = cconvert->rgb_ycc_tab; 242 register INT32 * ctab = cconvert->rgb_ycc_tab;
243 register int r, g, b;
233 register JSAMPROW inptr; 244 register JSAMPROW inptr;
234 register JSAMPROW outptr0, outptr1, outptr2, outptr3; 245 register JSAMPROW outptr0, outptr1, outptr2, outptr3;
235 register JDIMENSION col; 246 register JDIMENSION col;
@@ -248,7 +259,6 @@ cmyk_ycck_convert (j_compress_ptr cinfo,
248 b = MAXJSAMPLE - GETJSAMPLE(inptr[2]); 259 b = MAXJSAMPLE - GETJSAMPLE(inptr[2]);
249 /* K passes through as-is */ 260 /* K passes through as-is */
250 outptr3[col] = inptr[3]; /* don't need GETJSAMPLE here */ 261 outptr3[col] = inptr[3]; /* don't need GETJSAMPLE here */
251 inptr += 4;
252 /* If the inputs are 0..MAXJSAMPLE, the outputs of these equations 262 /* If the inputs are 0..MAXJSAMPLE, the outputs of these equations
253 * must be too; we do not need an explicit range-limiting operation. 263 * must be too; we do not need an explicit range-limiting operation.
254 * Hence the value being shifted is never negative, and we don't 264 * Hence the value being shifted is never negative, and we don't
@@ -266,6 +276,49 @@ cmyk_ycck_convert (j_compress_ptr cinfo,
266 outptr2[col] = (JSAMPLE) 276 outptr2[col] = (JSAMPLE)
267 ((ctab[r+R_CR_OFF] + ctab[g+G_CR_OFF] + ctab[b+B_CR_OFF]) 277 ((ctab[r+R_CR_OFF] + ctab[g+G_CR_OFF] + ctab[b+B_CR_OFF])
268 >> SCALEBITS); 278 >> SCALEBITS);
279 inptr += 4;
280 }
281 }
282}
283
284
285/*
286 * Convert some rows of samples to the JPEG colorspace.
287 * [R,G,B] to [R-G,G,B-G] conversion with modulo calculation
288 * (forward reversible color transform).
289 * This can be seen as an adaption of the general RGB->YCbCr
290 * conversion equation with Kr = Kb = 0, while replacing the
291 * normalization by modulo calculation.
292 */
293
294METHODDEF(void)
295rgb_rgb1_convert (j_compress_ptr cinfo,
296 JSAMPARRAY input_buf, JSAMPIMAGE output_buf,
297 JDIMENSION output_row, int num_rows)
298{
299 register int r, g, b;
300 register JSAMPROW inptr;
301 register JSAMPROW outptr0, outptr1, outptr2;
302 register JDIMENSION col;
303 JDIMENSION num_cols = cinfo->image_width;
304
305 while (--num_rows >= 0) {
306 inptr = *input_buf++;
307 outptr0 = output_buf[0][output_row];
308 outptr1 = output_buf[1][output_row];
309 outptr2 = output_buf[2][output_row];
310 output_row++;
311 for (col = 0; col < num_cols; col++) {
312 r = GETJSAMPLE(inptr[RGB_RED]);
313 g = GETJSAMPLE(inptr[RGB_GREEN]);
314 b = GETJSAMPLE(inptr[RGB_BLUE]);
315 /* Assume that MAXJSAMPLE+1 is a power of 2, so that the MOD
316 * (modulo) operator is equivalent to the bitmask operator AND.
317 */
318 outptr0[col] = (JSAMPLE) ((r - g + CENTERJSAMPLE) & MAXJSAMPLE);
319 outptr1[col] = (JSAMPLE) g;
320 outptr2[col] = (JSAMPLE) ((b - g + CENTERJSAMPLE) & MAXJSAMPLE);
321 inptr += RGB_PIXELSIZE;
269 } 322 }
270 } 323 }
271} 324}
@@ -274,7 +327,7 @@ cmyk_ycck_convert (j_compress_ptr cinfo,
274/* 327/*
275 * Convert some rows of samples to the JPEG colorspace. 328 * Convert some rows of samples to the JPEG colorspace.
276 * This version handles grayscale output with no conversion. 329 * This version handles grayscale output with no conversion.
277 * The source can be either plain grayscale or YCbCr (since Y == gray). 330 * The source can be either plain grayscale or YCC (since Y == gray).
278 */ 331 */
279 332
280METHODDEF(void) 333METHODDEF(void)
@@ -282,16 +335,15 @@ grayscale_convert (j_compress_ptr cinfo,
282 JSAMPARRAY input_buf, JSAMPIMAGE output_buf, 335 JSAMPARRAY input_buf, JSAMPIMAGE output_buf,
283 JDIMENSION output_row, int num_rows) 336 JDIMENSION output_row, int num_rows)
284{ 337{
338 int instride = cinfo->input_components;
285 register JSAMPROW inptr; 339 register JSAMPROW inptr;
286 register JSAMPROW outptr; 340 register JSAMPROW outptr;
287 register JDIMENSION col; 341 register JDIMENSION col;
288 JDIMENSION num_cols = cinfo->image_width; 342 JDIMENSION num_cols = cinfo->image_width;
289 int instride = cinfo->input_components;
290 343
291 while (--num_rows >= 0) { 344 while (--num_rows >= 0) {
292 inptr = *input_buf++; 345 inptr = *input_buf++;
293 outptr = output_buf[0][output_row]; 346 outptr = output_buf[0][output_row++];
294 output_row++;
295 for (col = 0; col < num_cols; col++) { 347 for (col = 0; col < num_cols; col++) {
296 outptr[col] = inptr[0]; /* don't need GETJSAMPLE() here */ 348 outptr[col] = inptr[0]; /* don't need GETJSAMPLE() here */
297 inptr += instride; 349 inptr += instride;
@@ -344,20 +396,20 @@ null_convert (j_compress_ptr cinfo,
344 JSAMPARRAY input_buf, JSAMPIMAGE output_buf, 396 JSAMPARRAY input_buf, JSAMPIMAGE output_buf,
345 JDIMENSION output_row, int num_rows) 397 JDIMENSION output_row, int num_rows)
346{ 398{
399 int ci;
400 register int nc = cinfo->num_components;
347 register JSAMPROW inptr; 401 register JSAMPROW inptr;
348 register JSAMPROW outptr; 402 register JSAMPROW outptr;
349 register JDIMENSION col; 403 register JDIMENSION col;
350 register int ci;
351 int nc = cinfo->num_components;
352 JDIMENSION num_cols = cinfo->image_width; 404 JDIMENSION num_cols = cinfo->image_width;
353 405
354 while (--num_rows >= 0) { 406 while (--num_rows >= 0) {
355 /* It seems fastest to make a separate pass for each component. */ 407 /* It seems fastest to make a separate pass for each component. */
356 for (ci = 0; ci < nc; ci++) { 408 for (ci = 0; ci < nc; ci++) {
357 inptr = *input_buf; 409 inptr = input_buf[0] + ci;
358 outptr = output_buf[ci][output_row]; 410 outptr = output_buf[ci][output_row];
359 for (col = 0; col < num_cols; col++) { 411 for (col = 0; col < num_cols; col++) {
360 outptr[col] = inptr[ci]; /* don't need GETJSAMPLE() here */ 412 *outptr++ = *inptr; /* don't need GETJSAMPLE() here */
361 inptr += nc; 413 inptr += nc;
362 } 414 }
363 } 415 }
@@ -390,7 +442,7 @@ jinit_color_converter (j_compress_ptr cinfo)
390 cconvert = (my_cconvert_ptr) 442 cconvert = (my_cconvert_ptr)
391 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 443 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
392 SIZEOF(my_color_converter)); 444 SIZEOF(my_color_converter));
393 cinfo->cconvert = (struct jpeg_color_converter *) cconvert; 445 cinfo->cconvert = &cconvert->pub;
394 /* set start_pass to null method until we find out differently */ 446 /* set start_pass to null method until we find out differently */
395 cconvert->pub.start_pass = null_method; 447 cconvert->pub.start_pass = null_method;
396 448
@@ -402,11 +454,13 @@ jinit_color_converter (j_compress_ptr cinfo)
402 break; 454 break;
403 455
404 case JCS_RGB: 456 case JCS_RGB:
457 case JCS_BG_RGB:
405 if (cinfo->input_components != RGB_PIXELSIZE) 458 if (cinfo->input_components != RGB_PIXELSIZE)
406 ERREXIT(cinfo, JERR_BAD_IN_COLORSPACE); 459 ERREXIT(cinfo, JERR_BAD_IN_COLORSPACE);
407 break; 460 break;
408 461
409 case JCS_YCbCr: 462 case JCS_YCbCr:
463 case JCS_BG_YCC:
410 if (cinfo->input_components != 3) 464 if (cinfo->input_components != 3)
411 ERREXIT(cinfo, JERR_BAD_IN_COLORSPACE); 465 ERREXIT(cinfo, JERR_BAD_IN_COLORSPACE);
412 break; 466 break;
@@ -423,40 +477,96 @@ jinit_color_converter (j_compress_ptr cinfo)
423 break; 477 break;
424 } 478 }
425 479
480 /* Support color transform only for RGB colorspaces */
481 if (cinfo->color_transform &&
482 cinfo->jpeg_color_space != JCS_RGB &&
483 cinfo->jpeg_color_space != JCS_BG_RGB)
484 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
485
426 /* Check num_components, set conversion method based on requested space */ 486 /* Check num_components, set conversion method based on requested space */
427 switch (cinfo->jpeg_color_space) { 487 switch (cinfo->jpeg_color_space) {
428 case JCS_GRAYSCALE: 488 case JCS_GRAYSCALE:
429 if (cinfo->num_components != 1) 489 if (cinfo->num_components != 1)
430 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE); 490 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE);
431 if (cinfo->in_color_space == JCS_GRAYSCALE || 491 switch (cinfo->in_color_space) {
432 cinfo->in_color_space == JCS_YCbCr) 492 case JCS_GRAYSCALE:
493 case JCS_YCbCr:
494 case JCS_BG_YCC:
433 cconvert->pub.color_convert = grayscale_convert; 495 cconvert->pub.color_convert = grayscale_convert;
434 else if (cinfo->in_color_space == JCS_RGB) { 496 break;
497 case JCS_RGB:
435 cconvert->pub.start_pass = rgb_ycc_start; 498 cconvert->pub.start_pass = rgb_ycc_start;
436 cconvert->pub.color_convert = rgb_gray_convert; 499 cconvert->pub.color_convert = rgb_gray_convert;
437 } else 500 break;
501 default:
438 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL); 502 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
503 }
439 break; 504 break;
440 505
441 case JCS_RGB: 506 case JCS_RGB:
507 case JCS_BG_RGB:
442 if (cinfo->num_components != 3) 508 if (cinfo->num_components != 3)
443 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE); 509 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE);
444 if (cinfo->in_color_space == JCS_RGB) 510 if (cinfo->in_color_space == cinfo->jpeg_color_space) {
445 cconvert->pub.color_convert = rgb_convert; 511 switch (cinfo->color_transform) {
446 else 512 case JCT_NONE:
513 cconvert->pub.color_convert = rgb_convert;
514 break;
515 case JCT_SUBTRACT_GREEN:
516 cconvert->pub.color_convert = rgb_rgb1_convert;
517 break;
518 default:
519 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
520 }
521 } else
447 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL); 522 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
448 break; 523 break;
449 524
450 case JCS_YCbCr: 525 case JCS_YCbCr:
451 if (cinfo->num_components != 3) 526 if (cinfo->num_components != 3)
452 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE); 527 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE);
453 if (cinfo->in_color_space == JCS_RGB) { 528 switch (cinfo->in_color_space) {
529 case JCS_RGB:
454 cconvert->pub.start_pass = rgb_ycc_start; 530 cconvert->pub.start_pass = rgb_ycc_start;
455 cconvert->pub.color_convert = rgb_ycc_convert; 531 cconvert->pub.color_convert = rgb_ycc_convert;
456 } else if (cinfo->in_color_space == JCS_YCbCr) 532 break;
533 case JCS_YCbCr:
457 cconvert->pub.color_convert = null_convert; 534 cconvert->pub.color_convert = null_convert;
458 else 535 break;
536 default:
537 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
538 }
539 break;
540
541 case JCS_BG_YCC:
542 if (cinfo->num_components != 3)
543 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE);
544 switch (cinfo->in_color_space) {
545 case JCS_RGB:
546 /* For conversion from normal RGB input to BG_YCC representation,
547 * the Cb/Cr values are first computed as usual, and then
548 * quantized further after DCT processing by a factor of
549 * 2 in reference to the nominal quantization factor.
550 */
551 /* need quantization scale by factor of 2 after DCT */
552 cinfo->comp_info[1].component_needed = TRUE;
553 cinfo->comp_info[2].component_needed = TRUE;
554 /* compute normal YCC first */
555 cconvert->pub.start_pass = rgb_ycc_start;
556 cconvert->pub.color_convert = rgb_ycc_convert;
557 break;
558 case JCS_YCbCr:
559 /* need quantization scale by factor of 2 after DCT */
560 cinfo->comp_info[1].component_needed = TRUE;
561 cinfo->comp_info[2].component_needed = TRUE;
562 /*FALLTHROUGH*/
563 case JCS_BG_YCC:
564 /* Pass through for BG_YCC input */
565 cconvert->pub.color_convert = null_convert;
566 break;
567 default:
459 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL); 568 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
569 }
460 break; 570 break;
461 571
462 case JCS_CMYK: 572 case JCS_CMYK:
@@ -471,13 +581,17 @@ jinit_color_converter (j_compress_ptr cinfo)
471 case JCS_YCCK: 581 case JCS_YCCK:
472 if (cinfo->num_components != 4) 582 if (cinfo->num_components != 4)
473 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE); 583 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE);
474 if (cinfo->in_color_space == JCS_CMYK) { 584 switch (cinfo->in_color_space) {
585 case JCS_CMYK:
475 cconvert->pub.start_pass = rgb_ycc_start; 586 cconvert->pub.start_pass = rgb_ycc_start;
476 cconvert->pub.color_convert = cmyk_ycck_convert; 587 cconvert->pub.color_convert = cmyk_ycck_convert;
477 } else if (cinfo->in_color_space == JCS_YCCK) 588 break;
589 case JCS_YCCK:
478 cconvert->pub.color_convert = null_convert; 590 cconvert->pub.color_convert = null_convert;
479 else 591 break;
592 default:
480 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL); 593 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
594 }
481 break; 595 break;
482 596
483 default: /* allow null conversion of JCS_UNKNOWN */ 597 default: /* allow null conversion of JCS_UNKNOWN */
diff --git a/gs/jpeg/jcdctmgr.c b/gs/jpeg/jcdctmgr.c
index 0bbdbb685..fafab91c6 100644
--- a/gs/jpeg/jcdctmgr.c
+++ b/gs/jpeg/jcdctmgr.c
@@ -2,6 +2,7 @@
2 * jcdctmgr.c 2 * jcdctmgr.c
3 * 3 *
4 * Copyright (C) 1994-1996, Thomas G. Lane. 4 * Copyright (C) 1994-1996, Thomas G. Lane.
5 * Modified 2003-2013 by Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
7 * 8 *
@@ -25,22 +26,30 @@ typedef struct {
25 /* Pointer to the DCT routine actually in use */ 26 /* Pointer to the DCT routine actually in use */
26 forward_DCT_method_ptr do_dct[MAX_COMPONENTS]; 27 forward_DCT_method_ptr do_dct[MAX_COMPONENTS];
27 28
28 /* The actual post-DCT divisors --- not identical to the quant table
29 * entries, because of scaling (especially for an unnormalized DCT).
30 * Each table is given in normal array order.
31 */
32 DCTELEM * divisors[NUM_QUANT_TBLS];
33
34#ifdef DCT_FLOAT_SUPPORTED 29#ifdef DCT_FLOAT_SUPPORTED
35 /* Same as above for the floating-point case. */ 30 /* Same as above for the floating-point case. */
36 float_DCT_method_ptr do_float_dct[MAX_COMPONENTS]; 31 float_DCT_method_ptr do_float_dct[MAX_COMPONENTS];
37 FAST_FLOAT * float_divisors[NUM_QUANT_TBLS];
38#endif 32#endif
39} my_fdct_controller; 33} my_fdct_controller;
40 34
41typedef my_fdct_controller * my_fdct_ptr; 35typedef my_fdct_controller * my_fdct_ptr;
42 36
43 37
38/* The allocated post-DCT divisor tables -- big enough for any
39 * supported variant and not identical to the quant table entries,
40 * because of scaling (especially for an unnormalized DCT) --
41 * are pointed to by dct_table in the per-component comp_info
42 * structures. Each table is given in normal array order.
43 */
44
45typedef union {
46 DCTELEM int_array[DCTSIZE2];
47#ifdef DCT_FLOAT_SUPPORTED
48 FAST_FLOAT float_array[DCTSIZE2];
49#endif
50} divisor_table;
51
52
44/* The current scaled-DCT routines require ISLOW-style divisor tables, 53/* The current scaled-DCT routines require ISLOW-style divisor tables,
45 * so be sure to compile that code if either ISLOW or SCALING is requested. 54 * so be sure to compile that code if either ISLOW or SCALING is requested.
46 */ 55 */
@@ -71,7 +80,7 @@ forward_DCT (j_compress_ptr cinfo, jpeg_component_info * compptr,
71 /* This routine is heavily used, so it's worth coding it tightly. */ 80 /* This routine is heavily used, so it's worth coding it tightly. */
72 my_fdct_ptr fdct = (my_fdct_ptr) cinfo->fdct; 81 my_fdct_ptr fdct = (my_fdct_ptr) cinfo->fdct;
73 forward_DCT_method_ptr do_dct = fdct->do_dct[compptr->component_index]; 82 forward_DCT_method_ptr do_dct = fdct->do_dct[compptr->component_index];
74 DCTELEM * divisors = fdct->divisors[compptr->quant_tbl_no]; 83 DCTELEM * divisors = (DCTELEM *) compptr->dct_table;
75 DCTELEM workspace[DCTSIZE2]; /* work area for FDCT subroutine */ 84 DCTELEM workspace[DCTSIZE2]; /* work area for FDCT subroutine */
76 JDIMENSION bi; 85 JDIMENSION bi;
77 86
@@ -134,7 +143,7 @@ forward_DCT_float (j_compress_ptr cinfo, jpeg_component_info * compptr,
134 /* This routine is heavily used, so it's worth coding it tightly. */ 143 /* This routine is heavily used, so it's worth coding it tightly. */
135 my_fdct_ptr fdct = (my_fdct_ptr) cinfo->fdct; 144 my_fdct_ptr fdct = (my_fdct_ptr) cinfo->fdct;
136 float_DCT_method_ptr do_dct = fdct->do_float_dct[compptr->component_index]; 145 float_DCT_method_ptr do_dct = fdct->do_float_dct[compptr->component_index];
137 FAST_FLOAT * divisors = fdct->float_divisors[compptr->quant_tbl_no]; 146 FAST_FLOAT * divisors = (FAST_FLOAT *) compptr->dct_table;
138 FAST_FLOAT workspace[DCTSIZE2]; /* work area for FDCT subroutine */ 147 FAST_FLOAT workspace[DCTSIZE2]; /* work area for FDCT subroutine */
139 JDIMENSION bi; 148 JDIMENSION bi;
140 149
@@ -352,22 +361,17 @@ start_pass_fdctmgr (j_compress_ptr cinfo)
352 cinfo->quant_tbl_ptrs[qtblno] == NULL) 361 cinfo->quant_tbl_ptrs[qtblno] == NULL)
353 ERREXIT1(cinfo, JERR_NO_QUANT_TABLE, qtblno); 362 ERREXIT1(cinfo, JERR_NO_QUANT_TABLE, qtblno);
354 qtbl = cinfo->quant_tbl_ptrs[qtblno]; 363 qtbl = cinfo->quant_tbl_ptrs[qtblno];
355 /* Compute divisors for this quant table */ 364 /* Create divisor table from quant table */
356 /* We may do this more than once for same table, but it's not a big deal */
357 switch (method) { 365 switch (method) {
358#ifdef PROVIDE_ISLOW_TABLES 366#ifdef PROVIDE_ISLOW_TABLES
359 case JDCT_ISLOW: 367 case JDCT_ISLOW:
360 /* For LL&M IDCT method, divisors are equal to raw quantization 368 /* For LL&M IDCT method, divisors are equal to raw quantization
361 * coefficients multiplied by 8 (to counteract scaling). 369 * coefficients multiplied by 8 (to counteract scaling).
362 */ 370 */
363 if (fdct->divisors[qtblno] == NULL) { 371 dtbl = (DCTELEM *) compptr->dct_table;
364 fdct->divisors[qtblno] = (DCTELEM *)
365 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
366 DCTSIZE2 * SIZEOF(DCTELEM));
367 }
368 dtbl = fdct->divisors[qtblno];
369 for (i = 0; i < DCTSIZE2; i++) { 372 for (i = 0; i < DCTSIZE2; i++) {
370 dtbl[i] = ((DCTELEM) qtbl->quantval[i]) << 3; 373 dtbl[i] =
374 ((DCTELEM) qtbl->quantval[i]) << (compptr->component_needed ? 4 : 3);
371 } 375 }
372 fdct->pub.forward_DCT[ci] = forward_DCT; 376 fdct->pub.forward_DCT[ci] = forward_DCT;
373 break; 377 break;
@@ -395,17 +399,12 @@ start_pass_fdctmgr (j_compress_ptr cinfo)
395 }; 399 };
396 SHIFT_TEMPS 400 SHIFT_TEMPS
397 401
398 if (fdct->divisors[qtblno] == NULL) { 402 dtbl = (DCTELEM *) compptr->dct_table;
399 fdct->divisors[qtblno] = (DCTELEM *)
400 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
401 DCTSIZE2 * SIZEOF(DCTELEM));
402 }
403 dtbl = fdct->divisors[qtblno];
404 for (i = 0; i < DCTSIZE2; i++) { 403 for (i = 0; i < DCTSIZE2; i++) {
405 dtbl[i] = (DCTELEM) 404 dtbl[i] = (DCTELEM)
406 DESCALE(MULTIPLY16V16((INT32) qtbl->quantval[i], 405 DESCALE(MULTIPLY16V16((INT32) qtbl->quantval[i],
407 (INT32) aanscales[i]), 406 (INT32) aanscales[i]),
408 CONST_BITS-3); 407 compptr->component_needed ? CONST_BITS-4 : CONST_BITS-3);
409 } 408 }
410 } 409 }
411 fdct->pub.forward_DCT[ci] = forward_DCT; 410 fdct->pub.forward_DCT[ci] = forward_DCT;
@@ -422,25 +421,20 @@ start_pass_fdctmgr (j_compress_ptr cinfo)
422 * What's actually stored is 1/divisor so that the inner loop can 421 * What's actually stored is 1/divisor so that the inner loop can
423 * use a multiplication rather than a division. 422 * use a multiplication rather than a division.
424 */ 423 */
425 FAST_FLOAT * fdtbl; 424 FAST_FLOAT * fdtbl = (FAST_FLOAT *) compptr->dct_table;
426 int row, col; 425 int row, col;
427 static const double aanscalefactor[DCTSIZE] = { 426 static const double aanscalefactor[DCTSIZE] = {
428 1.0, 1.387039845, 1.306562965, 1.175875602, 427 1.0, 1.387039845, 1.306562965, 1.175875602,
429 1.0, 0.785694958, 0.541196100, 0.275899379 428 1.0, 0.785694958, 0.541196100, 0.275899379
430 }; 429 };
431 430
432 if (fdct->float_divisors[qtblno] == NULL) {
433 fdct->float_divisors[qtblno] = (FAST_FLOAT *)
434 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
435 DCTSIZE2 * SIZEOF(FAST_FLOAT));
436 }
437 fdtbl = fdct->float_divisors[qtblno];
438 i = 0; 431 i = 0;
439 for (row = 0; row < DCTSIZE; row++) { 432 for (row = 0; row < DCTSIZE; row++) {
440 for (col = 0; col < DCTSIZE; col++) { 433 for (col = 0; col < DCTSIZE; col++) {
441 fdtbl[i] = (FAST_FLOAT) 434 fdtbl[i] = (FAST_FLOAT)
442 (1.0 / (((double) qtbl->quantval[i] * 435 (1.0 / ((double) qtbl->quantval[i] *
443 aanscalefactor[row] * aanscalefactor[col] * 8.0))); 436 aanscalefactor[row] * aanscalefactor[col] *
437 (compptr->component_needed ? 16.0 : 8.0)));
444 i++; 438 i++;
445 } 439 }
446 } 440 }
@@ -464,19 +458,20 @@ GLOBAL(void)
464jinit_forward_dct (j_compress_ptr cinfo) 458jinit_forward_dct (j_compress_ptr cinfo)
465{ 459{
466 my_fdct_ptr fdct; 460 my_fdct_ptr fdct;
467 int i; 461 int ci;
462 jpeg_component_info *compptr;
468 463
469 fdct = (my_fdct_ptr) 464 fdct = (my_fdct_ptr)
470 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 465 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
471 SIZEOF(my_fdct_controller)); 466 SIZEOF(my_fdct_controller));
472 cinfo->fdct = (struct jpeg_forward_dct *) fdct; 467 cinfo->fdct = &fdct->pub;
473 fdct->pub.start_pass = start_pass_fdctmgr; 468 fdct->pub.start_pass = start_pass_fdctmgr;
474 469
475 /* Mark divisor tables unallocated */ 470 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
476 for (i = 0; i < NUM_QUANT_TBLS; i++) { 471 ci++, compptr++) {
477 fdct->divisors[i] = NULL; 472 /* Allocate a divisor table for each component */
478#ifdef DCT_FLOAT_SUPPORTED 473 compptr->dct_table =
479 fdct->float_divisors[i] = NULL; 474 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
480#endif 475 SIZEOF(divisor_table));
481 } 476 }
482} 477}
diff --git a/gs/jpeg/jchuff.c b/gs/jpeg/jchuff.c
index 257d7aa1f..d1313f676 100644
--- a/gs/jpeg/jchuff.c
+++ b/gs/jpeg/jchuff.c
@@ -2,7 +2,7 @@
2 * jchuff.c 2 * jchuff.c
3 * 3 *
4 * Copyright (C) 1991-1997, Thomas G. Lane. 4 * Copyright (C) 1991-1997, Thomas G. Lane.
5 * Modified 2006-2009 by Guido Vollbeding. 5 * Modified 2006-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -308,24 +308,27 @@ emit_bits_s (working_state * state, unsigned int code, int size)
308/* Emit some bits; return TRUE if successful, FALSE if must suspend */ 308/* Emit some bits; return TRUE if successful, FALSE if must suspend */
309{ 309{
310 /* This routine is heavily used, so it's worth coding tightly. */ 310 /* This routine is heavily used, so it's worth coding tightly. */
311 register INT32 put_buffer = (INT32) code; 311 register INT32 put_buffer;
312 register int put_bits = state->cur.put_bits; 312 register int put_bits;
313 313
314 /* if size is 0, caller used an invalid Huffman table entry */ 314 /* if size is 0, caller used an invalid Huffman table entry */
315 if (size == 0) 315 if (size == 0)
316 ERREXIT(state->cinfo, JERR_HUFF_MISSING_CODE); 316 ERREXIT(state->cinfo, JERR_HUFF_MISSING_CODE);
317 317
318 put_buffer &= (((INT32) 1)<<size) - 1; /* mask off any extra bits in code */ 318 /* mask off any extra bits in code */
319 319 put_buffer = ((INT32) code) & ((((INT32) 1) << size) - 1);
320 put_bits += size; /* new number of bits in buffer */ 320
321 321 /* new number of bits in buffer */
322 put_bits = size + state->cur.put_bits;
323
322 put_buffer <<= 24 - put_bits; /* align incoming bits */ 324 put_buffer <<= 24 - put_bits; /* align incoming bits */
323 325
324 put_buffer |= state->cur.put_buffer; /* and merge with old buffer contents */ 326 /* and merge with old buffer contents */
325 327 put_buffer |= state->cur.put_buffer;
328
326 while (put_bits >= 8) { 329 while (put_bits >= 8) {
327 int c = (int) ((put_buffer >> 16) & 0xFF); 330 int c = (int) ((put_buffer >> 16) & 0xFF);
328 331
329 emit_byte_s(state, c, return FALSE); 332 emit_byte_s(state, c, return FALSE);
330 if (c == 0xFF) { /* need to stuff a zero byte? */ 333 if (c == 0xFF) { /* need to stuff a zero byte? */
331 emit_byte_s(state, 0, return FALSE); 334 emit_byte_s(state, 0, return FALSE);
@@ -347,8 +350,8 @@ emit_bits_e (huff_entropy_ptr entropy, unsigned int code, int size)
347/* Emit some bits, unless we are in gather mode */ 350/* Emit some bits, unless we are in gather mode */
348{ 351{
349 /* This routine is heavily used, so it's worth coding tightly. */ 352 /* This routine is heavily used, so it's worth coding tightly. */
350 register INT32 put_buffer = (INT32) code; 353 register INT32 put_buffer;
351 register int put_bits = entropy->saved.put_bits; 354 register int put_bits;
352 355
353 /* if size is 0, caller used an invalid Huffman table entry */ 356 /* if size is 0, caller used an invalid Huffman table entry */
354 if (size == 0) 357 if (size == 0)
@@ -357,9 +360,11 @@ emit_bits_e (huff_entropy_ptr entropy, unsigned int code, int size)
357 if (entropy->gather_statistics) 360 if (entropy->gather_statistics)
358 return; /* do nothing if we're only getting stats */ 361 return; /* do nothing if we're only getting stats */
359 362
360 put_buffer &= (((INT32) 1)<<size) - 1; /* mask off any extra bits in code */ 363 /* mask off any extra bits in code */
361 364 put_buffer = ((INT32) code) & ((((INT32) 1) << size) - 1);
362 put_bits += size; /* new number of bits in buffer */ 365
366 /* new number of bits in buffer */
367 put_bits = size + entropy->saved.put_bits;
363 368
364 put_buffer <<= 24 - put_bits; /* align incoming bits */ 369 put_buffer <<= 24 - put_bits; /* align incoming bits */
365 370
@@ -543,10 +548,7 @@ encode_mcu_DC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
543 huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy; 548 huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy;
544 register int temp, temp2; 549 register int temp, temp2;
545 register int nbits; 550 register int nbits;
546 int blkn, ci; 551 int blkn, ci, tbl;
547 int Al = cinfo->Al;
548 JBLOCKROW block;
549 jpeg_component_info * compptr;
550 ISHIFT_TEMPS 552 ISHIFT_TEMPS
551 553
552 entropy->next_output_byte = cinfo->dest->next_output_byte; 554 entropy->next_output_byte = cinfo->dest->next_output_byte;
@@ -559,28 +561,27 @@ encode_mcu_DC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
559 561
560 /* Encode the MCU data blocks */ 562 /* Encode the MCU data blocks */
561 for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) { 563 for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
562 block = MCU_data[blkn];
563 ci = cinfo->MCU_membership[blkn]; 564 ci = cinfo->MCU_membership[blkn];
564 compptr = cinfo->cur_comp_info[ci]; 565 tbl = cinfo->cur_comp_info[ci]->dc_tbl_no;
565 566
566 /* Compute the DC value after the required point transform by Al. 567 /* Compute the DC value after the required point transform by Al.
567 * This is simply an arithmetic right shift. 568 * This is simply an arithmetic right shift.
568 */ 569 */
569 temp2 = IRIGHT_SHIFT((int) ((*block)[0]), Al); 570 temp = IRIGHT_SHIFT((int) (MCU_data[blkn][0][0]), cinfo->Al);
570 571
571 /* DC differences are figured on the point-transformed values. */ 572 /* DC differences are figured on the point-transformed values. */
572 temp = temp2 - entropy->saved.last_dc_val[ci]; 573 temp2 = temp - entropy->saved.last_dc_val[ci];
573 entropy->saved.last_dc_val[ci] = temp2; 574 entropy->saved.last_dc_val[ci] = temp;
574 575
575 /* Encode the DC coefficient difference per section G.1.2.1 */ 576 /* Encode the DC coefficient difference per section G.1.2.1 */
576 temp2 = temp; 577 temp = temp2;
577 if (temp < 0) { 578 if (temp < 0) {
578 temp = -temp; /* temp is abs value of input */ 579 temp = -temp; /* temp is abs value of input */
579 /* For a negative input, want temp2 = bitwise complement of abs(input) */ 580 /* For a negative input, want temp2 = bitwise complement of abs(input) */
580 /* This code assumes we are on a two's complement machine */ 581 /* This code assumes we are on a two's complement machine */
581 temp2--; 582 temp2--;
582 } 583 }
583 584
584 /* Find the number of bits needed for the magnitude of the coefficient */ 585 /* Find the number of bits needed for the magnitude of the coefficient */
585 nbits = 0; 586 nbits = 0;
586 while (temp) { 587 while (temp) {
@@ -592,10 +593,10 @@ encode_mcu_DC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
592 */ 593 */
593 if (nbits > MAX_COEF_BITS+1) 594 if (nbits > MAX_COEF_BITS+1)
594 ERREXIT(cinfo, JERR_BAD_DCT_COEF); 595 ERREXIT(cinfo, JERR_BAD_DCT_COEF);
595 596
596 /* Count/emit the Huffman-coded symbol for the number of bits */ 597 /* Count/emit the Huffman-coded symbol for the number of bits */
597 emit_dc_symbol(entropy, compptr->dc_tbl_no, nbits); 598 emit_dc_symbol(entropy, tbl, nbits);
598 599
599 /* Emit that number of bits of the value, if positive, */ 600 /* Emit that number of bits of the value, if positive, */
600 /* or the complement of its magnitude, if negative. */ 601 /* or the complement of its magnitude, if negative. */
601 if (nbits) /* emit_bits rejects calls with size 0 */ 602 if (nbits) /* emit_bits rejects calls with size 0 */
@@ -628,12 +629,12 @@ METHODDEF(boolean)
628encode_mcu_AC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data) 629encode_mcu_AC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
629{ 630{
630 huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy; 631 huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy;
632 const int * natural_order;
633 JBLOCKROW block;
631 register int temp, temp2; 634 register int temp, temp2;
632 register int nbits; 635 register int nbits;
633 register int r, k; 636 register int r, k;
634 int Se, Al; 637 int Se, Al;
635 const int * natural_order;
636 JBLOCKROW block;
637 638
638 entropy->next_output_byte = cinfo->dest->next_output_byte; 639 entropy->next_output_byte = cinfo->dest->next_output_byte;
639 entropy->free_in_buffer = cinfo->dest->free_in_buffer; 640 entropy->free_in_buffer = cinfo->dest->free_in_buffer;
@@ -731,18 +732,15 @@ encode_mcu_AC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
731 732
732/* 733/*
733 * MCU encoding for DC successive approximation refinement scan. 734 * MCU encoding for DC successive approximation refinement scan.
734 * Note: we assume such scans can be multi-component, although the spec 735 * Note: we assume such scans can be multi-component,
735 * is not very clear on the point. 736 * although the spec is not very clear on the point.
736 */ 737 */
737 738
738METHODDEF(boolean) 739METHODDEF(boolean)
739encode_mcu_DC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data) 740encode_mcu_DC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
740{ 741{
741 huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy; 742 huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy;
742 register int temp; 743 int Al, blkn;
743 int blkn;
744 int Al = cinfo->Al;
745 JBLOCKROW block;
746 744
747 entropy->next_output_byte = cinfo->dest->next_output_byte; 745 entropy->next_output_byte = cinfo->dest->next_output_byte;
748 entropy->free_in_buffer = cinfo->dest->free_in_buffer; 746 entropy->free_in_buffer = cinfo->dest->free_in_buffer;
@@ -752,13 +750,12 @@ encode_mcu_DC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
752 if (entropy->restarts_to_go == 0) 750 if (entropy->restarts_to_go == 0)
753 emit_restart_e(entropy, entropy->next_restart_num); 751 emit_restart_e(entropy, entropy->next_restart_num);
754 752
753 Al = cinfo->Al;
754
755 /* Encode the MCU data blocks */ 755 /* Encode the MCU data blocks */
756 for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) { 756 for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
757 block = MCU_data[blkn];
758
759 /* We simply emit the Al'th bit of the DC coefficient value. */ 757 /* We simply emit the Al'th bit of the DC coefficient value. */
760 temp = (*block)[0]; 758 emit_bits_e(entropy, (unsigned int) (MCU_data[blkn][0][0] >> Al), 1);
761 emit_bits_e(entropy, (unsigned int) (temp >> Al), 1);
762 } 759 }
763 760
764 cinfo->dest->next_output_byte = entropy->next_output_byte; 761 cinfo->dest->next_output_byte = entropy->next_output_byte;
@@ -786,14 +783,14 @@ METHODDEF(boolean)
786encode_mcu_AC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data) 783encode_mcu_AC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
787{ 784{
788 huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy; 785 huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy;
786 const int * natural_order;
787 JBLOCKROW block;
789 register int temp; 788 register int temp;
790 register int r, k; 789 register int r, k;
790 int Se, Al;
791 int EOB; 791 int EOB;
792 char *BR_buffer; 792 char *BR_buffer;
793 unsigned int BR; 793 unsigned int BR;
794 int Se, Al;
795 const int * natural_order;
796 JBLOCKROW block;
797 int absvalues[DCTSIZE2]; 794 int absvalues[DCTSIZE2];
798 795
799 entropy->next_output_byte = cinfo->dest->next_output_byte; 796 entropy->next_output_byte = cinfo->dest->next_output_byte;
@@ -918,7 +915,7 @@ encode_one_block (working_state * state, JCOEFPTR block, int last_dc_val,
918{ 915{
919 register int temp, temp2; 916 register int temp, temp2;
920 register int nbits; 917 register int nbits;
921 register int k, r, i; 918 register int r, k;
922 int Se = state->cinfo->lim_Se; 919 int Se = state->cinfo->lim_Se;
923 const int * natural_order = state->cinfo->natural_order; 920 const int * natural_order = state->cinfo->natural_order;
924 921
@@ -960,7 +957,7 @@ encode_one_block (working_state * state, JCOEFPTR block, int last_dc_val,
960 r = 0; /* r = run length of zeros */ 957 r = 0; /* r = run length of zeros */
961 958
962 for (k = 1; k <= Se; k++) { 959 for (k = 1; k <= Se; k++) {
963 if ((temp = block[natural_order[k]]) == 0) { 960 if ((temp2 = block[natural_order[k]]) == 0) {
964 r++; 961 r++;
965 } else { 962 } else {
966 /* if run length > 15, must emit special run-length-16 codes (0xF0) */ 963 /* if run length > 15, must emit special run-length-16 codes (0xF0) */
@@ -970,7 +967,7 @@ encode_one_block (working_state * state, JCOEFPTR block, int last_dc_val,
970 r -= 16; 967 r -= 16;
971 } 968 }
972 969
973 temp2 = temp; 970 temp = temp2;
974 if (temp < 0) { 971 if (temp < 0) {
975 temp = -temp; /* temp is abs value of input */ 972 temp = -temp; /* temp is abs value of input */
976 /* This code assumes we are on a two's complement machine */ 973 /* This code assumes we are on a two's complement machine */
@@ -986,8 +983,8 @@ encode_one_block (working_state * state, JCOEFPTR block, int last_dc_val,
986 ERREXIT(state->cinfo, JERR_BAD_DCT_COEF); 983 ERREXIT(state->cinfo, JERR_BAD_DCT_COEF);
987 984
988 /* Emit Huffman symbol for run length / number of bits */ 985 /* Emit Huffman symbol for run length / number of bits */
989 i = (r << 4) + nbits; 986 temp = (r << 4) + nbits;
990 if (! emit_bits_s(state, actbl->ehufco[i], actbl->ehufsi[i])) 987 if (! emit_bits_s(state, actbl->ehufco[temp], actbl->ehufsi[temp]))
991 return FALSE; 988 return FALSE;
992 989
993 /* Emit that number of bits of the value, if positive, */ 990 /* Emit that number of bits of the value, if positive, */
@@ -1124,16 +1121,16 @@ htest_one_block (j_compress_ptr cinfo, JCOEFPTR block, int last_dc_val,
1124{ 1121{
1125 register int temp; 1122 register int temp;
1126 register int nbits; 1123 register int nbits;
1127 register int k, r; 1124 register int r, k;
1128 int Se = cinfo->lim_Se; 1125 int Se = cinfo->lim_Se;
1129 const int * natural_order = cinfo->natural_order; 1126 const int * natural_order = cinfo->natural_order;
1130 1127
1131 /* Encode the DC coefficient difference per section F.1.2.1 */ 1128 /* Encode the DC coefficient difference per section F.1.2.1 */
1132 1129
1133 temp = block[0] - last_dc_val; 1130 temp = block[0] - last_dc_val;
1134 if (temp < 0) 1131 if (temp < 0)
1135 temp = -temp; 1132 temp = -temp;
1136 1133
1137 /* Find the number of bits needed for the magnitude of the coefficient */ 1134 /* Find the number of bits needed for the magnitude of the coefficient */
1138 nbits = 0; 1135 nbits = 0;
1139 while (temp) { 1136 while (temp) {
@@ -1148,11 +1145,11 @@ htest_one_block (j_compress_ptr cinfo, JCOEFPTR block, int last_dc_val,
1148 1145
1149 /* Count the Huffman symbol for the number of bits */ 1146 /* Count the Huffman symbol for the number of bits */
1150 dc_counts[nbits]++; 1147 dc_counts[nbits]++;
1151 1148
1152 /* Encode the AC coefficients per section F.1.2.2 */ 1149 /* Encode the AC coefficients per section F.1.2.2 */
1153 1150
1154 r = 0; /* r = run length of zeros */ 1151 r = 0; /* r = run length of zeros */
1155 1152
1156 for (k = 1; k <= Se; k++) { 1153 for (k = 1; k <= Se; k++) {
1157 if ((temp = block[natural_order[k]]) == 0) { 1154 if ((temp = block[natural_order[k]]) == 0) {
1158 r++; 1155 r++;
@@ -1162,11 +1159,11 @@ htest_one_block (j_compress_ptr cinfo, JCOEFPTR block, int last_dc_val,
1162 ac_counts[0xF0]++; 1159 ac_counts[0xF0]++;
1163 r -= 16; 1160 r -= 16;
1164 } 1161 }
1165 1162
1166 /* Find the number of bits needed for the magnitude of the coefficient */ 1163 /* Find the number of bits needed for the magnitude of the coefficient */
1167 if (temp < 0) 1164 if (temp < 0)
1168 temp = -temp; 1165 temp = -temp;
1169 1166
1170 /* Find the number of bits needed for the magnitude of the coefficient */ 1167 /* Find the number of bits needed for the magnitude of the coefficient */
1171 nbits = 1; /* there must be at least one 1 bit */ 1168 nbits = 1; /* there must be at least one 1 bit */
1172 while ((temp >>= 1)) 1169 while ((temp >>= 1))
@@ -1174,10 +1171,10 @@ htest_one_block (j_compress_ptr cinfo, JCOEFPTR block, int last_dc_val,
1174 /* Check for out-of-range coefficient values */ 1171 /* Check for out-of-range coefficient values */
1175 if (nbits > MAX_COEF_BITS) 1172 if (nbits > MAX_COEF_BITS)
1176 ERREXIT(cinfo, JERR_BAD_DCT_COEF); 1173 ERREXIT(cinfo, JERR_BAD_DCT_COEF);
1177 1174
1178 /* Count Huffman symbol for run length / number of bits */ 1175 /* Count Huffman symbol for run length / number of bits */
1179 ac_counts[(r << 4) + nbits]++; 1176 ac_counts[(r << 4) + nbits]++;
1180 1177
1181 r = 0; 1178 r = 0;
1182 } 1179 }
1183 } 1180 }
@@ -1562,7 +1559,7 @@ jinit_huff_encoder (j_compress_ptr cinfo)
1562 entropy = (huff_entropy_ptr) 1559 entropy = (huff_entropy_ptr)
1563 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 1560 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
1564 SIZEOF(huff_entropy_encoder)); 1561 SIZEOF(huff_entropy_encoder));
1565 cinfo->entropy = (struct jpeg_entropy_encoder *) entropy; 1562 cinfo->entropy = &entropy->pub;
1566 entropy->pub.start_pass = start_pass_huff; 1563 entropy->pub.start_pass = start_pass_huff;
1567 1564
1568 /* Mark tables unallocated */ 1565 /* Mark tables unallocated */
diff --git a/gs/jpeg/jcinit.c b/gs/jpeg/jcinit.c
index 0ba310f21..1e13e3462 100644
--- a/gs/jpeg/jcinit.c
+++ b/gs/jpeg/jcinit.c
@@ -2,6 +2,7 @@
2 * jcinit.c 2 * jcinit.c
3 * 3 *
4 * Copyright (C) 1991-1997, Thomas G. Lane. 4 * Copyright (C) 1991-1997, Thomas G. Lane.
5 * Modified 2003-2013 by Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
7 * 8 *
@@ -29,6 +30,24 @@
29GLOBAL(void) 30GLOBAL(void)
30jinit_compress_master (j_compress_ptr cinfo) 31jinit_compress_master (j_compress_ptr cinfo)
31{ 32{
33 long samplesperrow;
34 JDIMENSION jd_samplesperrow;
35
36 /* For now, precision must match compiled-in value... */
37 if (cinfo->data_precision != BITS_IN_JSAMPLE)
38 ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision);
39
40 /* Sanity check on image dimensions */
41 if (cinfo->image_height <= 0 || cinfo->image_width <= 0 ||
42 cinfo->input_components <= 0)
43 ERREXIT(cinfo, JERR_EMPTY_IMAGE);
44
45 /* Width of an input scanline must be representable as JDIMENSION. */
46 samplesperrow = (long) cinfo->image_width * (long) cinfo->input_components;
47 jd_samplesperrow = (JDIMENSION) samplesperrow;
48 if ((long) jd_samplesperrow != samplesperrow)
49 ERREXIT(cinfo, JERR_WIDTH_OVERFLOW);
50
32 /* Initialize master control (includes parameter checking/processing) */ 51 /* Initialize master control (includes parameter checking/processing) */
33 jinit_c_master_control(cinfo, FALSE /* full compression */); 52 jinit_c_master_control(cinfo, FALSE /* full compression */);
34 53
diff --git a/gs/jpeg/jcmainct.c b/gs/jpeg/jcmainct.c
index 7de75d167..39b97902e 100644
--- a/gs/jpeg/jcmainct.c
+++ b/gs/jpeg/jcmainct.c
@@ -2,6 +2,7 @@
2 * jcmainct.c 2 * jcmainct.c
3 * 3 *
4 * Copyright (C) 1994-1996, Thomas G. Lane. 4 * Copyright (C) 1994-1996, Thomas G. Lane.
5 * Modified 2003-2012 by Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
7 * 8 *
@@ -68,32 +69,32 @@ METHODDEF(void) process_data_buffer_main
68METHODDEF(void) 69METHODDEF(void)
69start_pass_main (j_compress_ptr cinfo, J_BUF_MODE pass_mode) 70start_pass_main (j_compress_ptr cinfo, J_BUF_MODE pass_mode)
70{ 71{
71 my_main_ptr main = (my_main_ptr) cinfo->main; 72 my_main_ptr mainp = (my_main_ptr) cinfo->main;
72 73
73 /* Do nothing in raw-data mode. */ 74 /* Do nothing in raw-data mode. */
74 if (cinfo->raw_data_in) 75 if (cinfo->raw_data_in)
75 return; 76 return;
76 77
77 main->cur_iMCU_row = 0; /* initialize counters */ 78 mainp->cur_iMCU_row = 0; /* initialize counters */
78 main->rowgroup_ctr = 0; 79 mainp->rowgroup_ctr = 0;
79 main->suspended = FALSE; 80 mainp->suspended = FALSE;
80 main->pass_mode = pass_mode; /* save mode for use by process_data */ 81 mainp->pass_mode = pass_mode; /* save mode for use by process_data */
81 82
82 switch (pass_mode) { 83 switch (pass_mode) {
83 case JBUF_PASS_THRU: 84 case JBUF_PASS_THRU:
84#ifdef FULL_MAIN_BUFFER_SUPPORTED 85#ifdef FULL_MAIN_BUFFER_SUPPORTED
85 if (main->whole_image[0] != NULL) 86 if (mainp->whole_image[0] != NULL)
86 ERREXIT(cinfo, JERR_BAD_BUFFER_MODE); 87 ERREXIT(cinfo, JERR_BAD_BUFFER_MODE);
87#endif 88#endif
88 main->pub.process_data = process_data_simple_main; 89 mainp->pub.process_data = process_data_simple_main;
89 break; 90 break;
90#ifdef FULL_MAIN_BUFFER_SUPPORTED 91#ifdef FULL_MAIN_BUFFER_SUPPORTED
91 case JBUF_SAVE_SOURCE: 92 case JBUF_SAVE_SOURCE:
92 case JBUF_CRANK_DEST: 93 case JBUF_CRANK_DEST:
93 case JBUF_SAVE_AND_PASS: 94 case JBUF_SAVE_AND_PASS:
94 if (main->whole_image[0] == NULL) 95 if (mainp->whole_image[0] == NULL)
95 ERREXIT(cinfo, JERR_BAD_BUFFER_MODE); 96 ERREXIT(cinfo, JERR_BAD_BUFFER_MODE);
96 main->pub.process_data = process_data_buffer_main; 97 mainp->pub.process_data = process_data_buffer_main;
97 break; 98 break;
98#endif 99#endif
99 default: 100 default:
@@ -114,46 +115,46 @@ process_data_simple_main (j_compress_ptr cinfo,
114 JSAMPARRAY input_buf, JDIMENSION *in_row_ctr, 115 JSAMPARRAY input_buf, JDIMENSION *in_row_ctr,
115 JDIMENSION in_rows_avail) 116 JDIMENSION in_rows_avail)
116{ 117{
117 my_main_ptr main = (my_main_ptr) cinfo->main; 118 my_main_ptr mainp = (my_main_ptr) cinfo->main;
118 119
119 while (main->cur_iMCU_row < cinfo->total_iMCU_rows) { 120 while (mainp->cur_iMCU_row < cinfo->total_iMCU_rows) {
120 /* Read input data if we haven't filled the main buffer yet */ 121 /* Read input data if we haven't filled the main buffer yet */
121 if (main->rowgroup_ctr < (JDIMENSION) cinfo->min_DCT_v_scaled_size) 122 if (mainp->rowgroup_ctr < (JDIMENSION) cinfo->min_DCT_v_scaled_size)
122 (*cinfo->prep->pre_process_data) (cinfo, 123 (*cinfo->prep->pre_process_data) (cinfo,
123 input_buf, in_row_ctr, in_rows_avail, 124 input_buf, in_row_ctr, in_rows_avail,
124 main->buffer, &main->rowgroup_ctr, 125 mainp->buffer, &mainp->rowgroup_ctr,
125 (JDIMENSION) cinfo->min_DCT_v_scaled_size); 126 (JDIMENSION) cinfo->min_DCT_v_scaled_size);
126 127
127 /* If we don't have a full iMCU row buffered, return to application for 128 /* If we don't have a full iMCU row buffered, return to application for
128 * more data. Note that preprocessor will always pad to fill the iMCU row 129 * more data. Note that preprocessor will always pad to fill the iMCU row
129 * at the bottom of the image. 130 * at the bottom of the image.
130 */ 131 */
131 if (main->rowgroup_ctr != (JDIMENSION) cinfo->min_DCT_v_scaled_size) 132 if (mainp->rowgroup_ctr != (JDIMENSION) cinfo->min_DCT_v_scaled_size)
132 return; 133 return;
133 134
134 /* Send the completed row to the compressor */ 135 /* Send the completed row to the compressor */
135 if (! (*cinfo->coef->compress_data) (cinfo, main->buffer)) { 136 if (! (*cinfo->coef->compress_data) (cinfo, mainp->buffer)) {
136 /* If compressor did not consume the whole row, then we must need to 137 /* If compressor did not consume the whole row, then we must need to
137 * suspend processing and return to the application. In this situation 138 * suspend processing and return to the application. In this situation
138 * we pretend we didn't yet consume the last input row; otherwise, if 139 * we pretend we didn't yet consume the last input row; otherwise, if
139 * it happened to be the last row of the image, the application would 140 * it happened to be the last row of the image, the application would
140 * think we were done. 141 * think we were done.
141 */ 142 */
142 if (! main->suspended) { 143 if (! mainp->suspended) {
143 (*in_row_ctr)--; 144 (*in_row_ctr)--;
144 main->suspended = TRUE; 145 mainp->suspended = TRUE;
145 } 146 }
146 return; 147 return;
147 } 148 }
148 /* We did finish the row. Undo our little suspension hack if a previous 149 /* We did finish the row. Undo our little suspension hack if a previous
149 * call suspended; then mark the main buffer empty. 150 * call suspended; then mark the main buffer empty.
150 */ 151 */
151 if (main->suspended) { 152 if (mainp->suspended) {
152 (*in_row_ctr)++; 153 (*in_row_ctr)++;
153 main->suspended = FALSE; 154 mainp->suspended = FALSE;
154 } 155 }
155 main->rowgroup_ctr = 0; 156 mainp->rowgroup_ctr = 0;
156 main->cur_iMCU_row++; 157 mainp->cur_iMCU_row++;
157 } 158 }
158} 159}
159 160
@@ -170,25 +171,27 @@ process_data_buffer_main (j_compress_ptr cinfo,
170 JSAMPARRAY input_buf, JDIMENSION *in_row_ctr, 171 JSAMPARRAY input_buf, JDIMENSION *in_row_ctr,
171 JDIMENSION in_rows_avail) 172 JDIMENSION in_rows_avail)
172{ 173{
173 my_main_ptr main = (my_main_ptr) cinfo->main; 174 my_main_ptr mainp = (my_main_ptr) cinfo->main;
174 int ci; 175 int ci;
175 jpeg_component_info *compptr; 176 jpeg_component_info *compptr;
176 boolean writing = (main->pass_mode != JBUF_CRANK_DEST); 177 boolean writing = (mainp->pass_mode != JBUF_CRANK_DEST);
177 178
178 while (main->cur_iMCU_row < cinfo->total_iMCU_rows) { 179 while (mainp->cur_iMCU_row < cinfo->total_iMCU_rows) {
179 /* Realign the virtual buffers if at the start of an iMCU row. */ 180 /* Realign the virtual buffers if at the start of an iMCU row. */
180 if (main->rowgroup_ctr == 0) { 181 if (mainp->rowgroup_ctr == 0) {
181 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components; 182 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
182 ci++, compptr++) { 183 ci++, compptr++) {
183 main->buffer[ci] = (*cinfo->mem->access_virt_sarray) 184 mainp->buffer[ci] = (*cinfo->mem->access_virt_sarray)
184 ((j_common_ptr) cinfo, main->whole_image[ci], 185 ((j_common_ptr) cinfo, mainp->whole_image[ci], mainp->cur_iMCU_row *
185 main->cur_iMCU_row * (compptr->v_samp_factor * DCTSIZE), 186 ((JDIMENSION) (compptr->v_samp_factor * cinfo->min_DCT_v_scaled_size)),
186 (JDIMENSION) (compptr->v_samp_factor * DCTSIZE), writing); 187 (JDIMENSION) (compptr->v_samp_factor * cinfo->min_DCT_v_scaled_size),
188 writing);
187 } 189 }
188 /* In a read pass, pretend we just read some source data. */ 190 /* In a read pass, pretend we just read some source data. */
189 if (! writing) { 191 if (! writing) {
190 *in_row_ctr += cinfo->max_v_samp_factor * DCTSIZE; 192 *in_row_ctr += (JDIMENSION)
191 main->rowgroup_ctr = DCTSIZE; 193 (cinfo->max_v_samp_factor * cinfo->min_DCT_v_scaled_size);
194 mainp->rowgroup_ctr = (JDIMENSION) cinfo->min_DCT_v_scaled_size;
192 } 195 }
193 } 196 }
194 197
@@ -197,40 +200,40 @@ process_data_buffer_main (j_compress_ptr cinfo,
197 if (writing) { 200 if (writing) {
198 (*cinfo->prep->pre_process_data) (cinfo, 201 (*cinfo->prep->pre_process_data) (cinfo,
199 input_buf, in_row_ctr, in_rows_avail, 202 input_buf, in_row_ctr, in_rows_avail,
200 main->buffer, &main->rowgroup_ctr, 203 mainp->buffer, &mainp->rowgroup_ctr,
201 (JDIMENSION) DCTSIZE); 204 (JDIMENSION) cinfo->min_DCT_v_scaled_size);
202 /* Return to application if we need more data to fill the iMCU row. */ 205 /* Return to application if we need more data to fill the iMCU row. */
203 if (main->rowgroup_ctr < DCTSIZE) 206 if (mainp->rowgroup_ctr < (JDIMENSION) cinfo->min_DCT_v_scaled_size)
204 return; 207 return;
205 } 208 }
206 209
207 /* Emit data, unless this is a sink-only pass. */ 210 /* Emit data, unless this is a sink-only pass. */
208 if (main->pass_mode != JBUF_SAVE_SOURCE) { 211 if (mainp->pass_mode != JBUF_SAVE_SOURCE) {
209 if (! (*cinfo->coef->compress_data) (cinfo, main->buffer)) { 212 if (! (*cinfo->coef->compress_data) (cinfo, mainp->buffer)) {
210 /* If compressor did not consume the whole row, then we must need to 213 /* If compressor did not consume the whole row, then we must need to
211 * suspend processing and return to the application. In this situation 214 * suspend processing and return to the application. In this situation
212 * we pretend we didn't yet consume the last input row; otherwise, if 215 * we pretend we didn't yet consume the last input row; otherwise, if
213 * it happened to be the last row of the image, the application would 216 * it happened to be the last row of the image, the application would
214 * think we were done. 217 * think we were done.
215 */ 218 */
216 if (! main->suspended) { 219 if (! mainp->suspended) {
217 (*in_row_ctr)--; 220 (*in_row_ctr)--;
218 main->suspended = TRUE; 221 mainp->suspended = TRUE;
219 } 222 }
220 return; 223 return;
221 } 224 }
222 /* We did finish the row. Undo our little suspension hack if a previous 225 /* We did finish the row. Undo our little suspension hack if a previous
223 * call suspended; then mark the main buffer empty. 226 * call suspended; then mark the main buffer empty.
224 */ 227 */
225 if (main->suspended) { 228 if (mainp->suspended) {
226 (*in_row_ctr)++; 229 (*in_row_ctr)++;
227 main->suspended = FALSE; 230 mainp->suspended = FALSE;
228 } 231 }
229 } 232 }
230 233
231 /* If get here, we are done with this iMCU row. Mark buffer empty. */ 234 /* If get here, we are done with this iMCU row. Mark buffer empty. */
232 main->rowgroup_ctr = 0; 235 mainp->rowgroup_ctr = 0;
233 main->cur_iMCU_row++; 236 mainp->cur_iMCU_row++;
234 } 237 }
235} 238}
236 239
@@ -244,15 +247,15 @@ process_data_buffer_main (j_compress_ptr cinfo,
244GLOBAL(void) 247GLOBAL(void)
245jinit_c_main_controller (j_compress_ptr cinfo, boolean need_full_buffer) 248jinit_c_main_controller (j_compress_ptr cinfo, boolean need_full_buffer)
246{ 249{
247 my_main_ptr main; 250 my_main_ptr mainp;
248 int ci; 251 int ci;
249 jpeg_component_info *compptr; 252 jpeg_component_info *compptr;
250 253
251 main = (my_main_ptr) 254 mainp = (my_main_ptr)
252 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 255 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
253 SIZEOF(my_main_controller)); 256 SIZEOF(my_main_controller));
254 cinfo->main = (struct jpeg_c_main_controller *) main; 257 cinfo->main = &mainp->pub;
255 main->pub.start_pass = start_pass_main; 258 mainp->pub.start_pass = start_pass_main;
256 259
257 /* We don't need to create a buffer in raw-data mode. */ 260 /* We don't need to create a buffer in raw-data mode. */
258 if (cinfo->raw_data_in) 261 if (cinfo->raw_data_in)
@@ -267,11 +270,12 @@ jinit_c_main_controller (j_compress_ptr cinfo, boolean need_full_buffer)
267 /* Note we pad the bottom to a multiple of the iMCU height */ 270 /* Note we pad the bottom to a multiple of the iMCU height */
268 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components; 271 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
269 ci++, compptr++) { 272 ci++, compptr++) {
270 main->whole_image[ci] = (*cinfo->mem->request_virt_sarray) 273 mainp->whole_image[ci] = (*cinfo->mem->request_virt_sarray)
271 ((j_common_ptr) cinfo, JPOOL_IMAGE, FALSE, 274 ((j_common_ptr) cinfo, JPOOL_IMAGE, FALSE,
272 compptr->width_in_blocks * compptr->DCT_h_scaled_size, 275 compptr->width_in_blocks * ((JDIMENSION) compptr->DCT_h_scaled_size),
273 (JDIMENSION) jround_up((long) compptr->height_in_blocks, 276 ((JDIMENSION) jround_up((long) compptr->height_in_blocks,
274 (long) compptr->v_samp_factor) * DCTSIZE, 277 (long) compptr->v_samp_factor)) *
278 ((JDIMENSION) cinfo->min_DCT_v_scaled_size),
275 (JDIMENSION) (compptr->v_samp_factor * compptr->DCT_v_scaled_size)); 279 (JDIMENSION) (compptr->v_samp_factor * compptr->DCT_v_scaled_size));
276 } 280 }
277#else 281#else
@@ -279,14 +283,14 @@ jinit_c_main_controller (j_compress_ptr cinfo, boolean need_full_buffer)
279#endif 283#endif
280 } else { 284 } else {
281#ifdef FULL_MAIN_BUFFER_SUPPORTED 285#ifdef FULL_MAIN_BUFFER_SUPPORTED
282 main->whole_image[0] = NULL; /* flag for no virtual arrays */ 286 mainp->whole_image[0] = NULL; /* flag for no virtual arrays */
283#endif 287#endif
284 /* Allocate a strip buffer for each component */ 288 /* Allocate a strip buffer for each component */
285 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components; 289 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
286 ci++, compptr++) { 290 ci++, compptr++) {
287 main->buffer[ci] = (*cinfo->mem->alloc_sarray) 291 mainp->buffer[ci] = (*cinfo->mem->alloc_sarray)
288 ((j_common_ptr) cinfo, JPOOL_IMAGE, 292 ((j_common_ptr) cinfo, JPOOL_IMAGE,
289 compptr->width_in_blocks * compptr->DCT_h_scaled_size, 293 compptr->width_in_blocks * ((JDIMENSION) compptr->DCT_h_scaled_size),
290 (JDIMENSION) (compptr->v_samp_factor * compptr->DCT_v_scaled_size)); 294 (JDIMENSION) (compptr->v_samp_factor * compptr->DCT_v_scaled_size));
291 } 295 }
292 } 296 }
diff --git a/gs/jpeg/jcmarker.c b/gs/jpeg/jcmarker.c
index 606c19af3..ca2bb3992 100644
--- a/gs/jpeg/jcmarker.c
+++ b/gs/jpeg/jcmarker.c
@@ -2,7 +2,7 @@
2 * jcmarker.c 2 * jcmarker.c
3 * 3 *
4 * Copyright (C) 1991-1998, Thomas G. Lane. 4 * Copyright (C) 1991-1998, Thomas G. Lane.
5 * Modified 2003-2010 by Guido Vollbeding. 5 * Modified 2003-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -19,24 +19,24 @@ typedef enum { /* JPEG marker codes */
19 M_SOF1 = 0xc1, 19 M_SOF1 = 0xc1,
20 M_SOF2 = 0xc2, 20 M_SOF2 = 0xc2,
21 M_SOF3 = 0xc3, 21 M_SOF3 = 0xc3,
22 22
23 M_SOF5 = 0xc5, 23 M_SOF5 = 0xc5,
24 M_SOF6 = 0xc6, 24 M_SOF6 = 0xc6,
25 M_SOF7 = 0xc7, 25 M_SOF7 = 0xc7,
26 26
27 M_JPG = 0xc8, 27 M_JPG = 0xc8,
28 M_SOF9 = 0xc9, 28 M_SOF9 = 0xc9,
29 M_SOF10 = 0xca, 29 M_SOF10 = 0xca,
30 M_SOF11 = 0xcb, 30 M_SOF11 = 0xcb,
31 31
32 M_SOF13 = 0xcd, 32 M_SOF13 = 0xcd,
33 M_SOF14 = 0xce, 33 M_SOF14 = 0xce,
34 M_SOF15 = 0xcf, 34 M_SOF15 = 0xcf,
35 35
36 M_DHT = 0xc4, 36 M_DHT = 0xc4,
37 37
38 M_DAC = 0xcc, 38 M_DAC = 0xcc,
39 39
40 M_RST0 = 0xd0, 40 M_RST0 = 0xd0,
41 M_RST1 = 0xd1, 41 M_RST1 = 0xd1,
42 M_RST2 = 0xd2, 42 M_RST2 = 0xd2,
@@ -45,7 +45,7 @@ typedef enum { /* JPEG marker codes */
45 M_RST5 = 0xd5, 45 M_RST5 = 0xd5,
46 M_RST6 = 0xd6, 46 M_RST6 = 0xd6,
47 M_RST7 = 0xd7, 47 M_RST7 = 0xd7,
48 48
49 M_SOI = 0xd8, 49 M_SOI = 0xd8,
50 M_EOI = 0xd9, 50 M_EOI = 0xd9,
51 M_SOS = 0xda, 51 M_SOS = 0xda,
@@ -54,7 +54,7 @@ typedef enum { /* JPEG marker codes */
54 M_DRI = 0xdd, 54 M_DRI = 0xdd,
55 M_DHP = 0xde, 55 M_DHP = 0xde,
56 M_EXP = 0xdf, 56 M_EXP = 0xdf,
57 57
58 M_APP0 = 0xe0, 58 M_APP0 = 0xe0,
59 M_APP1 = 0xe1, 59 M_APP1 = 0xe1,
60 M_APP2 = 0xe2, 60 M_APP2 = 0xe2,
@@ -71,13 +71,14 @@ typedef enum { /* JPEG marker codes */
71 M_APP13 = 0xed, 71 M_APP13 = 0xed,
72 M_APP14 = 0xee, 72 M_APP14 = 0xee,
73 M_APP15 = 0xef, 73 M_APP15 = 0xef,
74 74
75 M_JPG0 = 0xf0, 75 M_JPG0 = 0xf0,
76 M_JPG8 = 0xf8,
76 M_JPG13 = 0xfd, 77 M_JPG13 = 0xfd,
77 M_COM = 0xfe, 78 M_COM = 0xfe,
78 79
79 M_TEM = 0x01, 80 M_TEM = 0x01,
80 81
81 M_ERROR = 0x100 82 M_ERROR = 0x100
82} JPEG_MARKER; 83} JPEG_MARKER;
83 84
@@ -282,6 +283,37 @@ emit_dri (j_compress_ptr cinfo)
282 283
283 284
284LOCAL(void) 285LOCAL(void)
286emit_lse_ict (j_compress_ptr cinfo)
287/* Emit an LSE inverse color transform specification marker */
288{
289 /* Support only 1 transform */
290 if (cinfo->color_transform != JCT_SUBTRACT_GREEN ||
291 cinfo->num_components < 3)
292 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
293
294 emit_marker(cinfo, M_JPG8);
295
296 emit_2bytes(cinfo, 24); /* fixed length */
297
298 emit_byte(cinfo, 0x0D); /* ID inverse transform specification */
299 emit_2bytes(cinfo, MAXJSAMPLE); /* MAXTRANS */
300 emit_byte(cinfo, 3); /* Nt=3 */
301 emit_byte(cinfo, cinfo->comp_info[1].component_id);
302 emit_byte(cinfo, cinfo->comp_info[0].component_id);
303 emit_byte(cinfo, cinfo->comp_info[2].component_id);
304 emit_byte(cinfo, 0x80); /* F1: CENTER1=1, NORM1=0 */
305 emit_2bytes(cinfo, 0); /* A(1,1)=0 */
306 emit_2bytes(cinfo, 0); /* A(1,2)=0 */
307 emit_byte(cinfo, 0); /* F2: CENTER2=0, NORM2=0 */
308 emit_2bytes(cinfo, 1); /* A(2,1)=1 */
309 emit_2bytes(cinfo, 0); /* A(2,2)=0 */
310 emit_byte(cinfo, 0); /* F3: CENTER3=0, NORM3=0 */
311 emit_2bytes(cinfo, 1); /* A(3,1)=1 */
312 emit_2bytes(cinfo, 0); /* A(3,2)=0 */
313}
314
315
316LOCAL(void)
285emit_sof (j_compress_ptr cinfo, JPEG_MARKER code) 317emit_sof (j_compress_ptr cinfo, JPEG_MARKER code)
286/* Emit a SOF marker */ 318/* Emit a SOF marker */
287{ 319{
@@ -476,8 +508,8 @@ write_marker_byte (j_compress_ptr cinfo, int val)
476 * Write datastream header. 508 * Write datastream header.
477 * This consists of an SOI and optional APPn markers. 509 * This consists of an SOI and optional APPn markers.
478 * We recommend use of the JFIF marker, but not the Adobe marker, 510 * We recommend use of the JFIF marker, but not the Adobe marker,
479 * when using YCbCr or grayscale data. The JFIF marker should NOT 511 * when using YCbCr or grayscale data. The JFIF marker is also used
480 * be used for any other JPEG colorspace. The Adobe marker is helpful 512 * for other standard JPEG colorspaces. The Adobe marker is helpful
481 * to distinguish RGB, CMYK, and YCCK colorspaces. 513 * to distinguish RGB, CMYK, and YCCK colorspaces.
482 * Note that an application can write additional header markers after 514 * Note that an application can write additional header markers after
483 * jpeg_start_compress returns. 515 * jpeg_start_compress returns.
@@ -502,7 +534,8 @@ write_file_header (j_compress_ptr cinfo)
502 534
503/* 535/*
504 * Write frame header. 536 * Write frame header.
505 * This consists of DQT and SOFn markers, and a conditional pseudo SOS marker. 537 * This consists of DQT and SOFn markers,
538 * a conditional LSE marker and a conditional pseudo SOS marker.
506 * Note that we do not emit the SOF until we have emitted the DQT(s). 539 * Note that we do not emit the SOF until we have emitted the DQT(s).
507 * This avoids compatibility problems with incorrect implementations that 540 * This avoids compatibility problems with incorrect implementations that
508 * try to error-check the quant table numbers as soon as they see the SOF. 541 * try to error-check the quant table numbers as soon as they see the SOF.
@@ -560,6 +593,10 @@ write_frame_header (j_compress_ptr cinfo)
560 emit_sof(cinfo, M_SOF1); /* SOF code for non-baseline Huffman file */ 593 emit_sof(cinfo, M_SOF1); /* SOF code for non-baseline Huffman file */
561 } 594 }
562 595
596 /* Check to emit LSE inverse color transform specification marker */
597 if (cinfo->color_transform)
598 emit_lse_ict(cinfo);
599
563 /* Check to emit pseudo SOS marker */ 600 /* Check to emit pseudo SOS marker */
564 if (cinfo->progressive_mode && cinfo->block_size != DCTSIZE) 601 if (cinfo->progressive_mode && cinfo->block_size != DCTSIZE)
565 emit_pseudo_sos(cinfo); 602 emit_pseudo_sos(cinfo);
@@ -668,7 +705,7 @@ jinit_marker_writer (j_compress_ptr cinfo)
668 marker = (my_marker_ptr) 705 marker = (my_marker_ptr)
669 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 706 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
670 SIZEOF(my_marker_writer)); 707 SIZEOF(my_marker_writer));
671 cinfo->marker = (struct jpeg_marker_writer *) marker; 708 cinfo->marker = &marker->pub;
672 /* Initialize method pointers */ 709 /* Initialize method pointers */
673 marker->pub.write_file_header = write_file_header; 710 marker->pub.write_file_header = write_file_header;
674 marker->pub.write_frame_header = write_frame_header; 711 marker->pub.write_frame_header = write_frame_header;
diff --git a/gs/jpeg/jcmaster.c b/gs/jpeg/jcmaster.c
index caf80a53b..2a8ae6330 100644
--- a/gs/jpeg/jcmaster.c
+++ b/gs/jpeg/jcmaster.c
@@ -2,7 +2,7 @@
2 * jcmaster.c 2 * jcmaster.c
3 * 3 *
4 * Copyright (C) 1991-1997, Thomas G. Lane. 4 * Copyright (C) 1991-1997, Thomas G. Lane.
5 * Modified 2003-2011 by Guido Vollbeding. 5 * Modified 2003-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -222,8 +222,6 @@ initial_setup (j_compress_ptr cinfo, boolean transcode_only)
222{ 222{
223 int ci, ssize; 223 int ci, ssize;
224 jpeg_component_info *compptr; 224 jpeg_component_info *compptr;
225 long samplesperrow;
226 JDIMENSION jd_samplesperrow;
227 225
228 if (transcode_only) 226 if (transcode_only)
229 jpeg_calc_trans_dimensions(cinfo); 227 jpeg_calc_trans_dimensions(cinfo);
@@ -251,7 +249,7 @@ initial_setup (j_compress_ptr cinfo, boolean transcode_only)
251 249
252 /* Sanity check on image dimensions */ 250 /* Sanity check on image dimensions */
253 if (cinfo->jpeg_height <= 0 || cinfo->jpeg_width <= 0 || 251 if (cinfo->jpeg_height <= 0 || cinfo->jpeg_width <= 0 ||
254 cinfo->num_components <= 0 || cinfo->input_components <= 0) 252 cinfo->num_components <= 0)
255 ERREXIT(cinfo, JERR_EMPTY_IMAGE); 253 ERREXIT(cinfo, JERR_EMPTY_IMAGE);
256 254
257 /* Make sure image isn't bigger than I can handle */ 255 /* Make sure image isn't bigger than I can handle */
@@ -259,14 +257,8 @@ initial_setup (j_compress_ptr cinfo, boolean transcode_only)
259 (long) cinfo->jpeg_width > (long) JPEG_MAX_DIMENSION) 257 (long) cinfo->jpeg_width > (long) JPEG_MAX_DIMENSION)
260 ERREXIT1(cinfo, JERR_IMAGE_TOO_BIG, (unsigned int) JPEG_MAX_DIMENSION); 258 ERREXIT1(cinfo, JERR_IMAGE_TOO_BIG, (unsigned int) JPEG_MAX_DIMENSION);
261 259
262 /* Width of an input scanline must be representable as JDIMENSION. */ 260 /* Only 8 to 12 bits data precision are supported for DCT based JPEG */
263 samplesperrow = (long) cinfo->image_width * (long) cinfo->input_components; 261 if (cinfo->data_precision < 8 || cinfo->data_precision > 12)
264 jd_samplesperrow = (JDIMENSION) samplesperrow;
265 if ((long) jd_samplesperrow != samplesperrow)
266 ERREXIT(cinfo, JERR_WIDTH_OVERFLOW);
267
268 /* For now, precision must match compiled-in value... */
269 if (cinfo->data_precision != BITS_IN_JSAMPLE)
270 ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision); 262 ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision);
271 263
272 /* Check that number of components won't exceed internal array sizes */ 264 /* Check that number of components won't exceed internal array sizes */
@@ -339,8 +331,10 @@ initial_setup (j_compress_ptr cinfo, boolean transcode_only)
339 jdiv_round_up((long) cinfo->jpeg_height * 331 jdiv_round_up((long) cinfo->jpeg_height *
340 (long) (compptr->v_samp_factor * compptr->DCT_v_scaled_size), 332 (long) (compptr->v_samp_factor * compptr->DCT_v_scaled_size),
341 (long) (cinfo->max_v_samp_factor * cinfo->block_size)); 333 (long) (cinfo->max_v_samp_factor * cinfo->block_size));
342 /* Mark component needed (this flag isn't actually used for compression) */ 334 /* Don't need quantization scale after DCT,
343 compptr->component_needed = TRUE; 335 * until color conversion says otherwise.
336 */
337 compptr->component_needed = FALSE;
344 } 338 }
345 339
346 /* Compute number of fully interleaved MCU rows (number of times that 340 /* Compute number of fully interleaved MCU rows (number of times that
@@ -811,7 +805,7 @@ jinit_c_master_control (j_compress_ptr cinfo, boolean transcode_only)
811 master = (my_master_ptr) 805 master = (my_master_ptr)
812 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 806 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
813 SIZEOF(my_comp_master)); 807 SIZEOF(my_comp_master));
814 cinfo->master = (struct jpeg_comp_master *) master; 808 cinfo->master = &master->pub;
815 master->pub.prepare_for_pass = prepare_for_pass; 809 master->pub.prepare_for_pass = prepare_for_pass;
816 master->pub.pass_startup = pass_startup; 810 master->pub.pass_startup = pass_startup;
817 master->pub.finish_pass = finish_pass_master; 811 master->pub.finish_pass = finish_pass_master;
@@ -833,10 +827,14 @@ jinit_c_master_control (j_compress_ptr cinfo, boolean transcode_only)
833 cinfo->num_scans = 1; 827 cinfo->num_scans = 1;
834 } 828 }
835 829
836 if ((cinfo->progressive_mode || cinfo->block_size < DCTSIZE) && 830 if (cinfo->optimize_coding)
837 !cinfo->arith_code) /* TEMPORARY HACK ??? */ 831 cinfo->arith_code = FALSE; /* disable arithmetic coding */
838 /* assume default tables no good for progressive or downscale mode */ 832 else if (! cinfo->arith_code &&
839 cinfo->optimize_coding = TRUE; 833 (cinfo->progressive_mode ||
834 (cinfo->block_size > 1 && cinfo->block_size < DCTSIZE)))
835 /* TEMPORARY HACK ??? */
836 /* assume default tables no good for progressive or reduced AC mode */
837 cinfo->optimize_coding = TRUE; /* force Huffman optimization */
840 838
841 /* Initialize my private state */ 839 /* Initialize my private state */
842 if (transcode_only) { 840 if (transcode_only) {
diff --git a/gs/jpeg/jconfig.cfg b/gs/jpeg/jconfig.cfg
index bb7435c9f..c4548fc29 100644
--- a/gs/jpeg/jconfig.cfg
+++ b/gs/jpeg/jconfig.cfg
@@ -17,11 +17,17 @@
17/* Define this if you get warnings about undefined structures. */ 17/* Define this if you get warnings about undefined structures. */
18#undef INCOMPLETE_TYPES_BROKEN 18#undef INCOMPLETE_TYPES_BROKEN
19 19
20/* Define "boolean" as unsigned char, not int, on Windows systems. */ 20/* Define "boolean" as unsigned char, not enum, on Windows systems. */
21#ifdef _WIN32 21#ifdef _WIN32
22#ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */ 22#ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */
23typedef unsigned char boolean; 23typedef unsigned char boolean;
24#endif 24#endif
25#ifndef FALSE /* in case these macros already exist */
26#define FALSE 0 /* values of boolean */
27#endif
28#ifndef TRUE
29#define TRUE 1
30#endif
25#define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */ 31#define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */
26#endif 32#endif
27 33
diff --git a/gs/jpeg/jconfig.txt b/gs/jpeg/jconfig.txt
index b96d31249..d1710ae7d 100644
--- a/gs/jpeg/jconfig.txt
+++ b/gs/jpeg/jconfig.txt
@@ -2,6 +2,7 @@
2 * jconfig.txt 2 * jconfig.txt
3 * 3 *
4 * Copyright (C) 1991-1994, Thomas G. Lane. 4 * Copyright (C) 1991-1994, Thomas G. Lane.
5 * Modified 2009-2013 by Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
7 * 8 *
@@ -91,12 +92,18 @@
91 */ 92 */
92#undef INCOMPLETE_TYPES_BROKEN 93#undef INCOMPLETE_TYPES_BROKEN
93 94
94/* Define "boolean" as unsigned char, not int, on Windows systems. 95/* Define "boolean" as unsigned char, not enum, on Windows systems.
95 */ 96 */
96#ifdef _WIN32 97#ifdef _WIN32
97#ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */ 98#ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */
98typedef unsigned char boolean; 99typedef unsigned char boolean;
99#endif 100#endif
101#ifndef FALSE /* in case these macros already exist */
102#define FALSE 0 /* values of boolean */
103#endif
104#ifndef TRUE
105#define TRUE 1
106#endif
100#define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */ 107#define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */
101#endif 108#endif
102 109
diff --git a/gs/jpeg/jconfig.vc b/gs/jpeg/jconfig.vc
index 679404da4..7d88482fa 100644
--- a/gs/jpeg/jconfig.vc
+++ b/gs/jpeg/jconfig.vc
@@ -15,10 +15,16 @@
15#undef NEED_SHORT_EXTERNAL_NAMES 15#undef NEED_SHORT_EXTERNAL_NAMES
16#undef INCOMPLETE_TYPES_BROKEN 16#undef INCOMPLETE_TYPES_BROKEN
17 17
18/* Define "boolean" as unsigned char, not int, per Windows custom */ 18/* Define "boolean" as unsigned char, not enum, per Windows custom */
19#ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */ 19#ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */
20typedef unsigned char boolean; 20typedef unsigned char boolean;
21#endif 21#endif
22#ifndef FALSE /* in case these macros already exist */
23#define FALSE 0 /* values of boolean */
24#endif
25#ifndef TRUE
26#define TRUE 1
27#endif
22#define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */ 28#define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */
23 29
24 30
diff --git a/gs/jpeg/jcparam.c b/gs/jpeg/jcparam.c
index c5e85dda5..4b2bee249 100644
--- a/gs/jpeg/jcparam.c
+++ b/gs/jpeg/jcparam.c
@@ -2,7 +2,7 @@
2 * jcparam.c 2 * jcparam.c
3 * 3 *
4 * Copyright (C) 1991-1998, Thomas G. Lane. 4 * Copyright (C) 1991-1998, Thomas G. Lane.
5 * Modified 2003-2008 by Guido Vollbeding. 5 * Modified 2003-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -150,7 +150,7 @@ jpeg_set_quality (j_compress_ptr cinfo, int quality, boolean force_baseline)
150/* Set or change the 'quality' (quantization) setting, using default tables. 150/* Set or change the 'quality' (quantization) setting, using default tables.
151 * This is the standard quality-adjusting entry point for typical user 151 * This is the standard quality-adjusting entry point for typical user
152 * interfaces; only those who want detailed control over quantization tables 152 * interfaces; only those who want detailed control over quantization tables
153 * would use the preceding three routines directly. 153 * would use the preceding routines directly.
154 */ 154 */
155{ 155{
156 /* Convert user 0-100 rating to percentage scaling */ 156 /* Convert user 0-100 rating to percentage scaling */
@@ -323,18 +323,17 @@ jpeg_set_defaults (j_compress_ptr cinfo)
323 /* Expect normal source image, not raw downsampled data */ 323 /* Expect normal source image, not raw downsampled data */
324 cinfo->raw_data_in = FALSE; 324 cinfo->raw_data_in = FALSE;
325 325
326 /* Use Huffman coding, not arithmetic coding, by default */ 326 /* The standard Huffman tables are only valid for 8-bit data precision.
327 cinfo->arith_code = FALSE; 327 * If the precision is higher, use arithmetic coding.
328 * (Alternatively, using Huffman coding would be possible with forcing
329 * optimization on so that usable tables will be computed, or by
330 * supplying default tables that are valid for the desired precision.)
331 * Otherwise, use Huffman coding by default.
332 */
333 cinfo->arith_code = cinfo->data_precision > 8 ? TRUE : FALSE;
328 334
329 /* By default, don't do extra passes to optimize entropy coding */ 335 /* By default, don't do extra passes to optimize entropy coding */
330 cinfo->optimize_coding = FALSE; 336 cinfo->optimize_coding = FALSE;
331 /* The standard Huffman tables are only valid for 8-bit data precision.
332 * If the precision is higher, force optimization on so that usable
333 * tables will be computed. This test can be removed if default tables
334 * are supplied that are valid for the desired precision.
335 */
336 if (cinfo->data_precision > 8)
337 cinfo->optimize_coding = TRUE;
338 337
339 /* By default, use the simpler non-cosited sampling alignment */ 338 /* By default, use the simpler non-cosited sampling alignment */
340 cinfo->CCIR601_sampling = FALSE; 339 cinfo->CCIR601_sampling = FALSE;
@@ -360,6 +359,9 @@ jpeg_set_defaults (j_compress_ptr cinfo)
360 * JFIF_minor_version to 2. We could probably get away with just defaulting 359 * JFIF_minor_version to 2. We could probably get away with just defaulting
361 * to 1.02, but there may still be some decoders in use that will complain 360 * to 1.02, but there may still be some decoders in use that will complain
362 * about that; saying 1.01 should minimize compatibility problems. 361 * about that; saying 1.01 should minimize compatibility problems.
362 *
363 * For wide gamut colorspaces (BG_RGB and BG_YCC), the major version will be
364 * overridden by jpeg_set_colorspace and set to 2.
363 */ 365 */
364 cinfo->JFIF_major_version = 1; /* Default JFIF version = 1.01 */ 366 cinfo->JFIF_major_version = 1; /* Default JFIF version = 1.01 */
365 cinfo->JFIF_minor_version = 1; 367 cinfo->JFIF_minor_version = 1;
@@ -367,6 +369,9 @@ jpeg_set_defaults (j_compress_ptr cinfo)
367 cinfo->X_density = 1; /* Pixel aspect ratio is square by default */ 369 cinfo->X_density = 1; /* Pixel aspect ratio is square by default */
368 cinfo->Y_density = 1; 370 cinfo->Y_density = 1;
369 371
372 /* No color transform */
373 cinfo->color_transform = JCT_NONE;
374
370 /* Choose JPEG colorspace based on input space, set defaults accordingly */ 375 /* Choose JPEG colorspace based on input space, set defaults accordingly */
371 376
372 jpeg_default_colorspace(cinfo); 377 jpeg_default_colorspace(cinfo);
@@ -381,6 +386,9 @@ GLOBAL(void)
381jpeg_default_colorspace (j_compress_ptr cinfo) 386jpeg_default_colorspace (j_compress_ptr cinfo)
382{ 387{
383 switch (cinfo->in_color_space) { 388 switch (cinfo->in_color_space) {
389 case JCS_UNKNOWN:
390 jpeg_set_colorspace(cinfo, JCS_UNKNOWN);
391 break;
384 case JCS_GRAYSCALE: 392 case JCS_GRAYSCALE:
385 jpeg_set_colorspace(cinfo, JCS_GRAYSCALE); 393 jpeg_set_colorspace(cinfo, JCS_GRAYSCALE);
386 break; 394 break;
@@ -396,8 +404,12 @@ jpeg_default_colorspace (j_compress_ptr cinfo)
396 case JCS_YCCK: 404 case JCS_YCCK:
397 jpeg_set_colorspace(cinfo, JCS_YCCK); 405 jpeg_set_colorspace(cinfo, JCS_YCCK);
398 break; 406 break;
399 case JCS_UNKNOWN: 407 case JCS_BG_RGB:
400 jpeg_set_colorspace(cinfo, JCS_UNKNOWN); 408 /* No translation for now -- conversion to BG_YCC not yet supportet */
409 jpeg_set_colorspace(cinfo, JCS_BG_RGB);
410 break;
411 case JCS_BG_YCC:
412 jpeg_set_colorspace(cinfo, JCS_BG_YCC);
401 break; 413 break;
402 default: 414 default:
403 ERREXIT(cinfo, JERR_BAD_IN_COLORSPACE); 415 ERREXIT(cinfo, JERR_BAD_IN_COLORSPACE);
@@ -438,27 +450,40 @@ jpeg_set_colorspace (j_compress_ptr cinfo, J_COLOR_SPACE colorspace)
438 cinfo->write_Adobe_marker = FALSE; /* write no Adobe marker by default */ 450 cinfo->write_Adobe_marker = FALSE; /* write no Adobe marker by default */
439 451
440 switch (colorspace) { 452 switch (colorspace) {
453 case JCS_UNKNOWN:
454 cinfo->num_components = cinfo->input_components;
455 if (cinfo->num_components < 1 || cinfo->num_components > MAX_COMPONENTS)
456 ERREXIT2(cinfo, JERR_COMPONENT_COUNT, cinfo->num_components,
457 MAX_COMPONENTS);
458 for (ci = 0; ci < cinfo->num_components; ci++) {
459 SET_COMP(ci, ci, 1,1, 0, 0,0);
460 }
461 break;
441 case JCS_GRAYSCALE: 462 case JCS_GRAYSCALE:
442 cinfo->write_JFIF_header = TRUE; /* Write a JFIF marker */ 463 cinfo->write_JFIF_header = TRUE; /* Write a JFIF marker */
443 cinfo->num_components = 1; 464 cinfo->num_components = 1;
444 /* JFIF specifies component ID 1 */ 465 /* JFIF specifies component ID 1 */
445 SET_COMP(0, 1, 1,1, 0, 0,0); 466 SET_COMP(0, 0x01, 1,1, 0, 0,0);
446 break; 467 break;
447 case JCS_RGB: 468 case JCS_RGB:
448 cinfo->write_Adobe_marker = TRUE; /* write Adobe marker to flag RGB */ 469 cinfo->write_Adobe_marker = TRUE; /* write Adobe marker to flag RGB */
449 cinfo->num_components = 3; 470 cinfo->num_components = 3;
450 SET_COMP(0, 0x52 /* 'R' */, 1,1, 0, 0,0); 471 SET_COMP(0, 0x52 /* 'R' */, 1,1, 0,
472 cinfo->color_transform == JCT_SUBTRACT_GREEN ? 1 : 0,
473 cinfo->color_transform == JCT_SUBTRACT_GREEN ? 1 : 0);
451 SET_COMP(1, 0x47 /* 'G' */, 1,1, 0, 0,0); 474 SET_COMP(1, 0x47 /* 'G' */, 1,1, 0, 0,0);
452 SET_COMP(2, 0x42 /* 'B' */, 1,1, 0, 0,0); 475 SET_COMP(2, 0x42 /* 'B' */, 1,1, 0,
476 cinfo->color_transform == JCT_SUBTRACT_GREEN ? 1 : 0,
477 cinfo->color_transform == JCT_SUBTRACT_GREEN ? 1 : 0);
453 break; 478 break;
454 case JCS_YCbCr: 479 case JCS_YCbCr:
455 cinfo->write_JFIF_header = TRUE; /* Write a JFIF marker */ 480 cinfo->write_JFIF_header = TRUE; /* Write a JFIF marker */
456 cinfo->num_components = 3; 481 cinfo->num_components = 3;
457 /* JFIF specifies component IDs 1,2,3 */ 482 /* JFIF specifies component IDs 1,2,3 */
458 /* We default to 2x2 subsamples of chrominance */ 483 /* We default to 2x2 subsamples of chrominance */
459 SET_COMP(0, 1, 2,2, 0, 0,0); 484 SET_COMP(0, 0x01, 2,2, 0, 0,0);
460 SET_COMP(1, 2, 1,1, 1, 1,1); 485 SET_COMP(1, 0x02, 1,1, 1, 1,1);
461 SET_COMP(2, 3, 1,1, 1, 1,1); 486 SET_COMP(2, 0x03, 1,1, 1, 1,1);
462 break; 487 break;
463 case JCS_CMYK: 488 case JCS_CMYK:
464 cinfo->write_Adobe_marker = TRUE; /* write Adobe marker to flag CMYK */ 489 cinfo->write_Adobe_marker = TRUE; /* write Adobe marker to flag CMYK */
@@ -471,19 +496,33 @@ jpeg_set_colorspace (j_compress_ptr cinfo, J_COLOR_SPACE colorspace)
471 case JCS_YCCK: 496 case JCS_YCCK:
472 cinfo->write_Adobe_marker = TRUE; /* write Adobe marker to flag YCCK */ 497 cinfo->write_Adobe_marker = TRUE; /* write Adobe marker to flag YCCK */
473 cinfo->num_components = 4; 498 cinfo->num_components = 4;
474 SET_COMP(0, 1, 2,2, 0, 0,0); 499 SET_COMP(0, 0x01, 2,2, 0, 0,0);
475 SET_COMP(1, 2, 1,1, 1, 1,1); 500 SET_COMP(1, 0x02, 1,1, 1, 1,1);
476 SET_COMP(2, 3, 1,1, 1, 1,1); 501 SET_COMP(2, 0x03, 1,1, 1, 1,1);
477 SET_COMP(3, 4, 2,2, 0, 0,0); 502 SET_COMP(3, 0x04, 2,2, 0, 0,0);
478 break; 503 break;
479 case JCS_UNKNOWN: 504 case JCS_BG_RGB:
480 cinfo->num_components = cinfo->input_components; 505 cinfo->write_JFIF_header = TRUE; /* Write a JFIF marker */
481 if (cinfo->num_components < 1 || cinfo->num_components > MAX_COMPONENTS) 506 cinfo->JFIF_major_version = 2; /* Set JFIF major version = 2 */
482 ERREXIT2(cinfo, JERR_COMPONENT_COUNT, cinfo->num_components, 507 cinfo->num_components = 3;
483 MAX_COMPONENTS); 508 /* Add offset 0x20 to the normal R/G/B component IDs */
484 for (ci = 0; ci < cinfo->num_components; ci++) { 509 SET_COMP(0, 0x72 /* 'r' */, 1,1, 0,
485 SET_COMP(ci, ci, 1,1, 0, 0,0); 510 cinfo->color_transform == JCT_SUBTRACT_GREEN ? 1 : 0,
486 } 511 cinfo->color_transform == JCT_SUBTRACT_GREEN ? 1 : 0);
512 SET_COMP(1, 0x67 /* 'g' */, 1,1, 0, 0,0);
513 SET_COMP(2, 0x62 /* 'b' */, 1,1, 0,
514 cinfo->color_transform == JCT_SUBTRACT_GREEN ? 1 : 0,
515 cinfo->color_transform == JCT_SUBTRACT_GREEN ? 1 : 0);
516 break;
517 case JCS_BG_YCC:
518 cinfo->write_JFIF_header = TRUE; /* Write a JFIF marker */
519 cinfo->JFIF_major_version = 2; /* Set JFIF major version = 2 */
520 cinfo->num_components = 3;
521 /* Add offset 0x20 to the normal Cb/Cr component IDs */
522 /* We default to 2x2 subsamples of chrominance */
523 SET_COMP(0, 0x01, 2,2, 0, 0,0);
524 SET_COMP(1, 0x22, 1,1, 1, 1,1);
525 SET_COMP(2, 0x23, 1,1, 1, 1,1);
487 break; 526 break;
488 default: 527 default:
489 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE); 528 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE);
@@ -567,8 +606,10 @@ jpeg_simple_progression (j_compress_ptr cinfo)
567 ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state); 606 ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
568 607
569 /* Figure space needed for script. Calculation must match code below! */ 608 /* Figure space needed for script. Calculation must match code below! */
570 if (ncomps == 3 && cinfo->jpeg_color_space == JCS_YCbCr) { 609 if (ncomps == 3 &&
571 /* Custom script for YCbCr color images. */ 610 (cinfo->jpeg_color_space == JCS_YCbCr ||
611 cinfo->jpeg_color_space == JCS_BG_YCC)) {
612 /* Custom script for YCC color images. */
572 nscans = 10; 613 nscans = 10;
573 } else { 614 } else {
574 /* All-purpose script for other color spaces. */ 615 /* All-purpose script for other color spaces. */
@@ -583,7 +624,7 @@ jpeg_simple_progression (j_compress_ptr cinfo)
583 * multiple compressions without changing the settings. To avoid a memory 624 * multiple compressions without changing the settings. To avoid a memory
584 * leak if jpeg_simple_progression is called repeatedly for the same JPEG 625 * leak if jpeg_simple_progression is called repeatedly for the same JPEG
585 * object, we try to re-use previously allocated space, and we allocate 626 * object, we try to re-use previously allocated space, and we allocate
586 * enough space to handle YCbCr even if initially asked for grayscale. 627 * enough space to handle YCC even if initially asked for grayscale.
587 */ 628 */
588 if (cinfo->script_space == NULL || cinfo->script_space_size < nscans) { 629 if (cinfo->script_space == NULL || cinfo->script_space_size < nscans) {
589 cinfo->script_space_size = MAX(nscans, 10); 630 cinfo->script_space_size = MAX(nscans, 10);
@@ -595,8 +636,10 @@ jpeg_simple_progression (j_compress_ptr cinfo)
595 cinfo->scan_info = scanptr; 636 cinfo->scan_info = scanptr;
596 cinfo->num_scans = nscans; 637 cinfo->num_scans = nscans;
597 638
598 if (ncomps == 3 && cinfo->jpeg_color_space == JCS_YCbCr) { 639 if (ncomps == 3 &&
599 /* Custom script for YCbCr color images. */ 640 (cinfo->jpeg_color_space == JCS_YCbCr ||
641 cinfo->jpeg_color_space == JCS_BG_YCC)) {
642 /* Custom script for YCC color images. */
600 /* Initial DC scan */ 643 /* Initial DC scan */
601 scanptr = fill_dc_scans(scanptr, ncomps, 0, 1); 644 scanptr = fill_dc_scans(scanptr, ncomps, 0, 1);
602 /* Initial AC scan: get some luma data out in a hurry */ 645 /* Initial AC scan: get some luma data out in a hurry */
diff --git a/gs/jpeg/jctrans.c b/gs/jpeg/jctrans.c
index f7d7b8149..7cd077e4f 100644
--- a/gs/jpeg/jctrans.c
+++ b/gs/jpeg/jctrans.c
@@ -2,7 +2,7 @@
2 * jctrans.c 2 * jctrans.c
3 * 3 *
4 * Copyright (C) 1995-1998, Thomas G. Lane. 4 * Copyright (C) 1995-1998, Thomas G. Lane.
5 * Modified 2000-2011 by Guido Vollbeding. 5 * Modified 2000-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -85,7 +85,10 @@ jpeg_copy_critical_parameters (j_decompress_ptr srcinfo,
85 jpeg_set_defaults(dstinfo); 85 jpeg_set_defaults(dstinfo);
86 /* jpeg_set_defaults may choose wrong colorspace, eg YCbCr if input is RGB. 86 /* jpeg_set_defaults may choose wrong colorspace, eg YCbCr if input is RGB.
87 * Fix it to get the right header markers for the image colorspace. 87 * Fix it to get the right header markers for the image colorspace.
88 * Note: Entropy table assignment in jpeg_set_colorspace depends
89 * on color_transform.
88 */ 90 */
91 dstinfo->color_transform = srcinfo->color_transform;
89 jpeg_set_colorspace(dstinfo, srcinfo->jpeg_color_space); 92 jpeg_set_colorspace(dstinfo, srcinfo->jpeg_color_space);
90 dstinfo->data_precision = srcinfo->data_precision; 93 dstinfo->data_precision = srcinfo->data_precision;
91 dstinfo->CCIR601_sampling = srcinfo->CCIR601_sampling; 94 dstinfo->CCIR601_sampling = srcinfo->CCIR601_sampling;
@@ -130,7 +133,7 @@ jpeg_copy_critical_parameters (j_decompress_ptr srcinfo,
130 ERREXIT1(dstinfo, JERR_MISMATCHED_QUANT_TABLE, tblno); 133 ERREXIT1(dstinfo, JERR_MISMATCHED_QUANT_TABLE, tblno);
131 } 134 }
132 } 135 }
133 /* Note: we do not copy the source's Huffman table assignments; 136 /* Note: we do not copy the source's entropy table assignments;
134 * instead we rely on jpeg_set_colorspace to have made a suitable choice. 137 * instead we rely on jpeg_set_colorspace to have made a suitable choice.
135 */ 138 */
136 } 139 }
@@ -140,10 +143,10 @@ jpeg_copy_critical_parameters (j_decompress_ptr srcinfo,
140 * if the application chooses to copy JFIF 1.02 extension markers from 143 * if the application chooses to copy JFIF 1.02 extension markers from
141 * the source file, we need to copy the version to make sure we don't 144 * the source file, we need to copy the version to make sure we don't
142 * emit a file that has 1.02 extensions but a claimed version of 1.01. 145 * emit a file that has 1.02 extensions but a claimed version of 1.01.
143 * We will *not*, however, copy version info from mislabeled "2.01" files.
144 */ 146 */
145 if (srcinfo->saw_JFIF_marker) { 147 if (srcinfo->saw_JFIF_marker) {
146 if (srcinfo->JFIF_major_version == 1) { 148 if (srcinfo->JFIF_major_version == 1 ||
149 srcinfo->JFIF_major_version == 2) {
147 dstinfo->JFIF_major_version = srcinfo->JFIF_major_version; 150 dstinfo->JFIF_major_version = srcinfo->JFIF_major_version;
148 dstinfo->JFIF_minor_version = srcinfo->JFIF_minor_version; 151 dstinfo->JFIF_minor_version = srcinfo->JFIF_minor_version;
149 } 152 }
@@ -364,7 +367,7 @@ transencode_coef_controller (j_compress_ptr cinfo,
364 coef = (my_coef_ptr) 367 coef = (my_coef_ptr)
365 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 368 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
366 SIZEOF(my_coef_controller)); 369 SIZEOF(my_coef_controller));
367 cinfo->coef = (struct jpeg_c_coef_controller *) coef; 370 cinfo->coef = &coef->pub;
368 coef->pub.start_pass = start_pass_coef; 371 coef->pub.start_pass = start_pass_coef;
369 coef->pub.compress_data = compress_output; 372 coef->pub.compress_data = compress_output;
370 373
diff --git a/gs/jpeg/jdapimin.c b/gs/jpeg/jdapimin.c
index 7f1ce4c05..a6e0dd9fb 100644
--- a/gs/jpeg/jdapimin.c
+++ b/gs/jpeg/jdapimin.c
@@ -2,7 +2,7 @@
2 * jdapimin.c 2 * jdapimin.c
3 * 3 *
4 * Copyright (C) 1994-1998, Thomas G. Lane. 4 * Copyright (C) 1994-1998, Thomas G. Lane.
5 * Modified 2009 by Guido Vollbeding. 5 * Modified 2009-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -114,8 +114,9 @@ jpeg_abort_decompress (j_decompress_ptr cinfo)
114LOCAL(void) 114LOCAL(void)
115default_decompress_parms (j_decompress_ptr cinfo) 115default_decompress_parms (j_decompress_ptr cinfo)
116{ 116{
117 int cid0, cid1, cid2;
118
117 /* Guess the input colorspace, and set output colorspace accordingly. */ 119 /* Guess the input colorspace, and set output colorspace accordingly. */
118 /* (Wish JPEG committee had provided a real way to specify this...) */
119 /* Note application may override our guesses. */ 120 /* Note application may override our guesses. */
120 switch (cinfo->num_components) { 121 switch (cinfo->num_components) {
121 case 1: 122 case 1:
@@ -124,9 +125,22 @@ default_decompress_parms (j_decompress_ptr cinfo)
124 break; 125 break;
125 126
126 case 3: 127 case 3:
127 if (cinfo->saw_JFIF_marker) { 128 cid0 = cinfo->comp_info[0].component_id;
128 cinfo->jpeg_color_space = JCS_YCbCr; /* JFIF implies YCbCr */ 129 cid1 = cinfo->comp_info[1].component_id;
129 } else if (cinfo->saw_Adobe_marker) { 130 cid2 = cinfo->comp_info[2].component_id;
131
132 /* First try to guess from the component IDs */
133 if (cid0 == 0x01 && cid1 == 0x02 && cid2 == 0x03)
134 cinfo->jpeg_color_space = JCS_YCbCr;
135 else if (cid0 == 0x01 && cid1 == 0x22 && cid2 == 0x23)
136 cinfo->jpeg_color_space = JCS_BG_YCC;
137 else if (cid0 == 0x52 && cid1 == 0x47 && cid2 == 0x42)
138 cinfo->jpeg_color_space = JCS_RGB; /* ASCII 'R', 'G', 'B' */
139 else if (cid0 == 0x72 && cid1 == 0x67 && cid2 == 0x62)
140 cinfo->jpeg_color_space = JCS_BG_RGB; /* ASCII 'r', 'g', 'b' */
141 else if (cinfo->saw_JFIF_marker)
142 cinfo->jpeg_color_space = JCS_YCbCr; /* assume it's YCbCr */
143 else if (cinfo->saw_Adobe_marker) {
130 switch (cinfo->Adobe_transform) { 144 switch (cinfo->Adobe_transform) {
131 case 0: 145 case 0:
132 cinfo->jpeg_color_space = JCS_RGB; 146 cinfo->jpeg_color_space = JCS_RGB;
@@ -136,23 +150,12 @@ default_decompress_parms (j_decompress_ptr cinfo)
136 break; 150 break;
137 default: 151 default:
138 WARNMS1(cinfo, JWRN_ADOBE_XFORM, cinfo->Adobe_transform); 152 WARNMS1(cinfo, JWRN_ADOBE_XFORM, cinfo->Adobe_transform);
139 cinfo->jpeg_color_space = JCS_YCbCr; /* assume it's YCbCr */ 153 cinfo->jpeg_color_space = JCS_YCbCr; /* assume it's YCbCr */
140 break; 154 break;
141 } 155 }
142 } else { 156 } else {
143 /* Saw no special markers, try to guess from the component IDs */ 157 TRACEMS3(cinfo, 1, JTRC_UNKNOWN_IDS, cid0, cid1, cid2);
144 int cid0 = cinfo->comp_info[0].component_id; 158 cinfo->jpeg_color_space = JCS_YCbCr; /* assume it's YCbCr */
145 int cid1 = cinfo->comp_info[1].component_id;
146 int cid2 = cinfo->comp_info[2].component_id;
147
148 if (cid0 == 1 && cid1 == 2 && cid2 == 3)
149 cinfo->jpeg_color_space = JCS_YCbCr; /* assume JFIF w/out marker */
150 else if (cid0 == 82 && cid1 == 71 && cid2 == 66)
151 cinfo->jpeg_color_space = JCS_RGB; /* ASCII 'R', 'G', 'B' */
152 else {
153 TRACEMS3(cinfo, 1, JTRC_UNKNOWN_IDS, cid0, cid1, cid2);
154 cinfo->jpeg_color_space = JCS_YCbCr; /* assume it's YCbCr */
155 }
156 } 159 }
157 /* Always guess RGB is proper output colorspace. */ 160 /* Always guess RGB is proper output colorspace. */
158 cinfo->out_color_space = JCS_RGB; 161 cinfo->out_color_space = JCS_RGB;
@@ -169,7 +172,7 @@ default_decompress_parms (j_decompress_ptr cinfo)
169 break; 172 break;
170 default: 173 default:
171 WARNMS1(cinfo, JWRN_ADOBE_XFORM, cinfo->Adobe_transform); 174 WARNMS1(cinfo, JWRN_ADOBE_XFORM, cinfo->Adobe_transform);
172 cinfo->jpeg_color_space = JCS_YCCK; /* assume it's YCCK */ 175 cinfo->jpeg_color_space = JCS_YCCK; /* assume it's YCCK */
173 break; 176 break;
174 } 177 }
175 } else { 178 } else {
diff --git a/gs/jpeg/jdapistd.c b/gs/jpeg/jdapistd.c
index 9d7453777..7f3a78b25 100644
--- a/gs/jpeg/jdapistd.c
+++ b/gs/jpeg/jdapistd.c
@@ -2,6 +2,7 @@
2 * jdapistd.c 2 * jdapistd.c
3 * 3 *
4 * Copyright (C) 1994-1996, Thomas G. Lane. 4 * Copyright (C) 1994-1996, Thomas G. Lane.
5 * Modified 2002-2013 by Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
7 * 8 *
diff --git a/gs/jpeg/jdarith.c b/gs/jpeg/jdarith.c
index 092f8af5f..efdb26d3a 100644
--- a/gs/jpeg/jdarith.c
+++ b/gs/jpeg/jdarith.c
@@ -1,7 +1,7 @@
1/* 1/*
2 * jdarith.c 2 * jdarith.c
3 * 3 *
4 * Developed 1997-2011 by Guido Vollbeding. 4 * Developed 1997-2013 by Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 5 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 6 * For conditions of distribution and use, see the accompanying README file.
7 * 7 *
@@ -345,12 +345,15 @@ decode_mcu_AC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
345 /* Sections F.2.4.2 & F.1.4.4.2: Decoding of AC coefficients */ 345 /* Sections F.2.4.2 & F.1.4.4.2: Decoding of AC coefficients */
346 346
347 /* Figure F.20: Decode_AC_coefficients */ 347 /* Figure F.20: Decode_AC_coefficients */
348 for (k = cinfo->Ss; k <= cinfo->Se; k++) { 348 k = cinfo->Ss - 1;
349 st = entropy->ac_stats[tbl] + 3 * (k - 1); 349 do {
350 st = entropy->ac_stats[tbl] + 3 * k;
350 if (arith_decode(cinfo, st)) break; /* EOB flag */ 351 if (arith_decode(cinfo, st)) break; /* EOB flag */
351 while (arith_decode(cinfo, st + 1) == 0) { 352 for (;;) {
352 st += 3; k++; 353 k++;
353 if (k > cinfo->Se) { 354 if (arith_decode(cinfo, st + 1)) break;
355 st += 3;
356 if (k >= cinfo->Se) {
354 WARNMS(cinfo, JWRN_ARITH_BAD_CODE); 357 WARNMS(cinfo, JWRN_ARITH_BAD_CODE);
355 entropy->ct = -1; /* spectral overflow */ 358 entropy->ct = -1; /* spectral overflow */
356 return TRUE; 359 return TRUE;
@@ -384,7 +387,7 @@ decode_mcu_AC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
384 v += 1; if (sign) v = -v; 387 v += 1; if (sign) v = -v;
385 /* Scale and output coefficient in natural (dezigzagged) order */ 388 /* Scale and output coefficient in natural (dezigzagged) order */
386 (*block)[natural_order[k]] = (JCOEF) (v << cinfo->Al); 389 (*block)[natural_order[k]] = (JCOEF) (v << cinfo->Al);
387 } 390 } while (k < cinfo->Se);
388 391
389 return TRUE; 392 return TRUE;
390} 393}
@@ -392,6 +395,8 @@ decode_mcu_AC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
392 395
393/* 396/*
394 * MCU decoding for DC successive approximation refinement scan. 397 * MCU decoding for DC successive approximation refinement scan.
398 * Note: we assume such scans can be multi-component,
399 * although the spec is not very clear on the point.
395 */ 400 */
396 401
397METHODDEF(boolean) 402METHODDEF(boolean)
@@ -457,15 +462,18 @@ decode_mcu_AC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
457 m1 = (-1) << cinfo->Al; /* -1 in the bit position being coded */ 462 m1 = (-1) << cinfo->Al; /* -1 in the bit position being coded */
458 463
459 /* Establish EOBx (previous stage end-of-block) index */ 464 /* Establish EOBx (previous stage end-of-block) index */
460 for (kex = cinfo->Se; kex > 0; kex--) 465 kex = cinfo->Se;
466 do {
461 if ((*block)[natural_order[kex]]) break; 467 if ((*block)[natural_order[kex]]) break;
468 } while (--kex);
462 469
463 for (k = cinfo->Ss; k <= cinfo->Se; k++) { 470 k = cinfo->Ss - 1;
464 st = entropy->ac_stats[tbl] + 3 * (k - 1); 471 do {
465 if (k > kex) 472 st = entropy->ac_stats[tbl] + 3 * k;
473 if (k >= kex)
466 if (arith_decode(cinfo, st)) break; /* EOB flag */ 474 if (arith_decode(cinfo, st)) break; /* EOB flag */
467 for (;;) { 475 for (;;) {
468 thiscoef = *block + natural_order[k]; 476 thiscoef = *block + natural_order[++k];
469 if (*thiscoef) { /* previously nonzero coef */ 477 if (*thiscoef) { /* previously nonzero coef */
470 if (arith_decode(cinfo, st + 2)) { 478 if (arith_decode(cinfo, st + 2)) {
471 if (*thiscoef < 0) 479 if (*thiscoef < 0)
@@ -482,14 +490,14 @@ decode_mcu_AC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
482 *thiscoef = p1; 490 *thiscoef = p1;
483 break; 491 break;
484 } 492 }
485 st += 3; k++; 493 st += 3;
486 if (k > cinfo->Se) { 494 if (k >= cinfo->Se) {
487 WARNMS(cinfo, JWRN_ARITH_BAD_CODE); 495 WARNMS(cinfo, JWRN_ARITH_BAD_CODE);
488 entropy->ct = -1; /* spectral overflow */ 496 entropy->ct = -1; /* spectral overflow */
489 return TRUE; 497 return TRUE;
490 } 498 }
491 } 499 }
492 } 500 } while (k < cinfo->Se);
493 501
494 return TRUE; 502 return TRUE;
495} 503}
@@ -738,6 +746,17 @@ start_pass (j_decompress_ptr cinfo)
738 746
739 747
740/* 748/*
749 * Finish up at the end of an arithmetic-compressed scan.
750 */
751
752METHODDEF(void)
753finish_pass (j_decompress_ptr cinfo)
754{
755 /* no work necessary here */
756}
757
758
759/*
741 * Module initialization routine for arithmetic entropy decoding. 760 * Module initialization routine for arithmetic entropy decoding.
742 */ 761 */
743 762
@@ -750,8 +769,9 @@ jinit_arith_decoder (j_decompress_ptr cinfo)
750 entropy = (arith_entropy_ptr) 769 entropy = (arith_entropy_ptr)
751 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 770 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
752 SIZEOF(arith_entropy_decoder)); 771 SIZEOF(arith_entropy_decoder));
753 cinfo->entropy = (struct jpeg_entropy_decoder *) entropy; 772 cinfo->entropy = &entropy->pub;
754 entropy->pub.start_pass = start_pass; 773 entropy->pub.start_pass = start_pass;
774 entropy->pub.finish_pass = finish_pass;
755 775
756 /* Mark tables unallocated */ 776 /* Mark tables unallocated */
757 for (i = 0; i < NUM_ARITH_TBLS; i++) { 777 for (i = 0; i < NUM_ARITH_TBLS; i++) {
diff --git a/gs/jpeg/jdatadst.c b/gs/jpeg/jdatadst.c
index 6981fb73d..5c8681c9e 100644
--- a/gs/jpeg/jdatadst.c
+++ b/gs/jpeg/jdatadst.c
@@ -226,6 +226,9 @@ jpeg_stdio_dest (j_compress_ptr cinfo, FILE * outfile)
226 * larger memory, so the buffer is available to the application after 226 * larger memory, so the buffer is available to the application after
227 * finishing compression, and then the application is responsible for 227 * finishing compression, and then the application is responsible for
228 * freeing the requested memory. 228 * freeing the requested memory.
229 * Note: An initial buffer supplied by the caller is expected to be
230 * managed by the application. The library does not free such buffer
231 * when allocating a larger buffer.
229 */ 232 */
230 233
231GLOBAL(void) 234GLOBAL(void)
diff --git a/gs/jpeg/jdcolor.c b/gs/jpeg/jdcolor.c
index 83e4d069a..a31c28615 100644
--- a/gs/jpeg/jdcolor.c
+++ b/gs/jpeg/jdcolor.c
@@ -2,7 +2,7 @@
2 * jdcolor.c 2 * jdcolor.c
3 * 3 *
4 * Copyright (C) 1991-1997, Thomas G. Lane. 4 * Copyright (C) 1991-1997, Thomas G. Lane.
5 * Modified 2011 by Guido Vollbeding. 5 * Modified 2011-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -19,12 +19,15 @@
19typedef struct { 19typedef struct {
20 struct jpeg_color_deconverter pub; /* public fields */ 20 struct jpeg_color_deconverter pub; /* public fields */
21 21
22 /* Private state for YCC->RGB conversion */ 22 /* Private state for YCbCr->RGB and BG_YCC->RGB conversion */
23 int * Cr_r_tab; /* => table for Cr to R conversion */ 23 int * Cr_r_tab; /* => table for Cr to R conversion */
24 int * Cb_b_tab; /* => table for Cb to B conversion */ 24 int * Cb_b_tab; /* => table for Cb to B conversion */
25 INT32 * Cr_g_tab; /* => table for Cr to G conversion */ 25 INT32 * Cr_g_tab; /* => table for Cr to G conversion */
26 INT32 * Cb_g_tab; /* => table for Cb to G conversion */ 26 INT32 * Cb_g_tab; /* => table for Cb to G conversion */
27 27
28 JSAMPLE * range_limit; /* pointer to normal sample range limit table, */
29 /* or extended sample range limit table for BG_YCC */
30
28 /* Private state for RGB->Y conversion */ 31 /* Private state for RGB->Y conversion */
29 INT32 * rgb_y_tab; /* => table for RGB to Y conversion */ 32 INT32 * rgb_y_tab; /* => table for RGB to Y conversion */
30} my_color_deconverter; 33} my_color_deconverter;
@@ -32,22 +35,44 @@ typedef struct {
32typedef my_color_deconverter * my_cconvert_ptr; 35typedef my_color_deconverter * my_cconvert_ptr;
33 36
34 37
35/**************** YCbCr -> RGB conversion: most common case **************/ 38/*************** YCbCr -> RGB conversion: most common case **************/
36/**************** RGB -> Y conversion: less common case **************/ 39/*************** BG_YCC -> RGB conversion: less common case **************/
40/*************** RGB -> Y conversion: less common case **************/
37 41
38/* 42/*
39 * YCbCr is defined per CCIR 601-1, except that Cb and Cr are 43 * YCbCr is defined per Recommendation ITU-R BT.601-7 (03/2011),
40 * normalized to the range 0..MAXJSAMPLE rather than -0.5 .. 0.5. 44 * previously known as Recommendation CCIR 601-1, except that Cb and Cr
41 * The conversion equations to be implemented are therefore 45 * are normalized to the range 0..MAXJSAMPLE rather than -0.5 .. 0.5.
46 * sRGB (standard RGB color space) is defined per IEC 61966-2-1:1999.
47 * sYCC (standard luma-chroma-chroma color space with extended gamut)
48 * is defined per IEC 61966-2-1:1999 Amendment A1:2003 Annex F.
49 * bg-sRGB and bg-sYCC (big gamut standard color spaces)
50 * are defined per IEC 61966-2-1:1999 Amendment A1:2003 Annex G.
51 * Note that the derived conversion coefficients given in some of these
52 * documents are imprecise. The general conversion equations are
53 *
54 * R = Y + K * (1 - Kr) * Cr
55 * G = Y - K * (Kb * (1 - Kb) * Cb + Kr * (1 - Kr) * Cr) / (1 - Kr - Kb)
56 * B = Y + K * (1 - Kb) * Cb
57 *
58 * Y = Kr * R + (1 - Kr - Kb) * G + Kb * B
59 *
60 * With Kr = 0.299 and Kb = 0.114 (derived according to SMPTE RP 177-1993
61 * from the 1953 FCC NTSC primaries and CIE Illuminant C), K = 2 for sYCC,
62 * the conversion equations to be implemented are therefore
42 * 63 *
43 * R = Y + 1.40200 * Cr 64 * R = Y + 1.402 * Cr
44 * G = Y - 0.34414 * Cb - 0.71414 * Cr 65 * G = Y - 0.344136286 * Cb - 0.714136286 * Cr
45 * B = Y + 1.77200 * Cb 66 * B = Y + 1.772 * Cb
46 * 67 *
47 * Y = 0.29900 * R + 0.58700 * G + 0.11400 * B 68 * Y = 0.299 * R + 0.587 * G + 0.114 * B
48 * 69 *
49 * where Cb and Cr represent the incoming values less CENTERJSAMPLE. 70 * where Cb and Cr represent the incoming values less CENTERJSAMPLE.
50 * (These numbers are derived from TIFF 6.0 section 21, dated 3-June-92.) 71 * For bg-sYCC, with K = 4, the equations are
72 *
73 * R = Y + 2.804 * Cr
74 * G = Y - 0.688272572 * Cb - 1.428272572 * Cr
75 * B = Y + 3.544 * Cb
51 * 76 *
52 * To avoid floating-point arithmetic, we represent the fractional constants 77 * To avoid floating-point arithmetic, we represent the fractional constants
53 * as integers scaled up by 2^16 (about 4 digits precision); we have to divide 78 * as integers scaled up by 2^16 (about 4 digits precision); we have to divide
@@ -58,9 +83,9 @@ typedef my_color_deconverter * my_cconvert_ptr;
58 * For even more speed, we avoid doing any multiplications in the inner loop 83 * For even more speed, we avoid doing any multiplications in the inner loop
59 * by precalculating the constants times Cb and Cr for all possible values. 84 * by precalculating the constants times Cb and Cr for all possible values.
60 * For 8-bit JSAMPLEs this is very reasonable (only 256 entries per table); 85 * For 8-bit JSAMPLEs this is very reasonable (only 256 entries per table);
61 * for 12-bit samples it is still acceptable. It's not very reasonable for 86 * for 9-bit to 12-bit samples it is still acceptable. It's not very
62 * 16-bit samples, but if you want lossless storage you shouldn't be changing 87 * reasonable for 16-bit samples, but if you want lossless storage you
63 * colorspace anyway. 88 * shouldn't be changing colorspace anyway.
64 * The Cr=>R and Cb=>B values can be rounded to integers in advance; the 89 * The Cr=>R and Cb=>B values can be rounded to integers in advance; the
65 * values for the G calculation are left scaled up, since we must add them 90 * values for the G calculation are left scaled up, since we must add them
66 * together before rounding. 91 * together before rounding.
@@ -84,11 +109,12 @@ typedef my_color_deconverter * my_cconvert_ptr;
84 109
85 110
86/* 111/*
87 * Initialize tables for YCC->RGB colorspace conversion. 112 * Initialize tables for YCbCr->RGB and BG_YCC->RGB colorspace conversion.
88 */ 113 */
89 114
90LOCAL(void) 115LOCAL(void)
91build_ycc_rgb_table (j_decompress_ptr cinfo) 116build_ycc_rgb_table (j_decompress_ptr cinfo)
117/* Normal case, sYCC */
92{ 118{
93 my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert; 119 my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
94 int i; 120 int i;
@@ -108,24 +134,84 @@ build_ycc_rgb_table (j_decompress_ptr cinfo)
108 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 134 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
109 (MAXJSAMPLE+1) * SIZEOF(INT32)); 135 (MAXJSAMPLE+1) * SIZEOF(INT32));
110 136
137 cconvert->range_limit = cinfo->sample_range_limit;
138
111 for (i = 0, x = -CENTERJSAMPLE; i <= MAXJSAMPLE; i++, x++) { 139 for (i = 0, x = -CENTERJSAMPLE; i <= MAXJSAMPLE; i++, x++) {
112 /* i is the actual input pixel value, in the range 0..MAXJSAMPLE */ 140 /* i is the actual input pixel value, in the range 0..MAXJSAMPLE */
113 /* The Cb or Cr value we are thinking of is x = i - CENTERJSAMPLE */ 141 /* The Cb or Cr value we are thinking of is x = i - CENTERJSAMPLE */
114 /* Cr=>R value is nearest int to 1.40200 * x */ 142 /* Cr=>R value is nearest int to 1.402 * x */
115 cconvert->Cr_r_tab[i] = (int) 143 cconvert->Cr_r_tab[i] = (int)
116 RIGHT_SHIFT(FIX(1.40200) * x + ONE_HALF, SCALEBITS); 144 RIGHT_SHIFT(FIX(1.402) * x + ONE_HALF, SCALEBITS);
117 /* Cb=>B value is nearest int to 1.77200 * x */ 145 /* Cb=>B value is nearest int to 1.772 * x */
118 cconvert->Cb_b_tab[i] = (int) 146 cconvert->Cb_b_tab[i] = (int)
119 RIGHT_SHIFT(FIX(1.77200) * x + ONE_HALF, SCALEBITS); 147 RIGHT_SHIFT(FIX(1.772) * x + ONE_HALF, SCALEBITS);
120 /* Cr=>G value is scaled-up -0.71414 * x */ 148 /* Cr=>G value is scaled-up -0.714136286 * x */
121 cconvert->Cr_g_tab[i] = (- FIX(0.71414)) * x; 149 cconvert->Cr_g_tab[i] = (- FIX(0.714136286)) * x;
122 /* Cb=>G value is scaled-up -0.34414 * x */ 150 /* Cb=>G value is scaled-up -0.344136286 * x */
123 /* We also add in ONE_HALF so that need not do it in inner loop */ 151 /* We also add in ONE_HALF so that need not do it in inner loop */
124 cconvert->Cb_g_tab[i] = (- FIX(0.34414)) * x + ONE_HALF; 152 cconvert->Cb_g_tab[i] = (- FIX(0.344136286)) * x + ONE_HALF;
125 } 153 }
126} 154}
127 155
128 156
157LOCAL(void)
158build_bg_ycc_rgb_table (j_decompress_ptr cinfo)
159/* Wide gamut case, bg-sYCC */
160{
161 my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
162 int i;
163 INT32 x;
164 SHIFT_TEMPS
165
166 cconvert->Cr_r_tab = (int *)
167 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
168 (MAXJSAMPLE+1) * SIZEOF(int));
169 cconvert->Cb_b_tab = (int *)
170 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
171 (MAXJSAMPLE+1) * SIZEOF(int));
172 cconvert->Cr_g_tab = (INT32 *)
173 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
174 (MAXJSAMPLE+1) * SIZEOF(INT32));
175 cconvert->Cb_g_tab = (INT32 *)
176 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
177 (MAXJSAMPLE+1) * SIZEOF(INT32));
178
179 cconvert->range_limit = (JSAMPLE *)
180 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
181 5 * (MAXJSAMPLE+1) * SIZEOF(JSAMPLE));
182
183 for (i = 0, x = -CENTERJSAMPLE; i <= MAXJSAMPLE; i++, x++) {
184 /* i is the actual input pixel value, in the range 0..MAXJSAMPLE */
185 /* The Cb or Cr value we are thinking of is x = i - CENTERJSAMPLE */
186 /* Cr=>R value is nearest int to 2.804 * x */
187 cconvert->Cr_r_tab[i] = (int)
188 RIGHT_SHIFT(FIX(2.804) * x + ONE_HALF, SCALEBITS);
189 /* Cb=>B value is nearest int to 3.544 * x */
190 cconvert->Cb_b_tab[i] = (int)
191 RIGHT_SHIFT(FIX(3.544) * x + ONE_HALF, SCALEBITS);
192 /* Cr=>G value is scaled-up -1.428272572 * x */
193 cconvert->Cr_g_tab[i] = (- FIX(1.428272572)) * x;
194 /* Cb=>G value is scaled-up -0.688272572 * x */
195 /* We also add in ONE_HALF so that need not do it in inner loop */
196 cconvert->Cb_g_tab[i] = (- FIX(0.688272572)) * x + ONE_HALF;
197 }
198
199 /* Cb and Cr portions can extend to double range in wide gamut case,
200 * so we prepare an appropriate extended range limit table.
201 */
202
203 /* First segment of range limit table: limit[x] = 0 for x < 0 */
204 MEMZERO(cconvert->range_limit, 2 * (MAXJSAMPLE+1) * SIZEOF(JSAMPLE));
205 cconvert->range_limit += 2 * (MAXJSAMPLE+1);
206 /* Main part of range limit table: limit[x] = x */
207 for (i = 0; i <= MAXJSAMPLE; i++)
208 cconvert->range_limit[i] = (JSAMPLE) i;
209 /* End of range limit table: limit[x] = MAXJSAMPLE for x > MAXJSAMPLE */
210 for (; i < 3 * (MAXJSAMPLE+1); i++)
211 cconvert->range_limit[i] = MAXJSAMPLE;
212}
213
214
129/* 215/*
130 * Convert some rows of samples to the output colorspace. 216 * Convert some rows of samples to the output colorspace.
131 * 217 *
@@ -149,7 +235,7 @@ ycc_rgb_convert (j_decompress_ptr cinfo,
149 register JDIMENSION col; 235 register JDIMENSION col;
150 JDIMENSION num_cols = cinfo->output_width; 236 JDIMENSION num_cols = cinfo->output_width;
151 /* copy these pointers into registers if possible */ 237 /* copy these pointers into registers if possible */
152 register JSAMPLE * range_limit = cinfo->sample_range_limit; 238 register JSAMPLE * range_limit = cconvert->range_limit;
153 register int * Crrtab = cconvert->Cr_r_tab; 239 register int * Crrtab = cconvert->Cr_r_tab;
154 register int * Cbbtab = cconvert->Cb_b_tab; 240 register int * Cbbtab = cconvert->Cb_b_tab;
155 register INT32 * Crgtab = cconvert->Cr_g_tab; 241 register INT32 * Crgtab = cconvert->Cr_g_tab;
@@ -166,19 +252,21 @@ ycc_rgb_convert (j_decompress_ptr cinfo,
166 y = GETJSAMPLE(inptr0[col]); 252 y = GETJSAMPLE(inptr0[col]);
167 cb = GETJSAMPLE(inptr1[col]); 253 cb = GETJSAMPLE(inptr1[col]);
168 cr = GETJSAMPLE(inptr2[col]); 254 cr = GETJSAMPLE(inptr2[col]);
169 /* Range-limiting is essential due to noise introduced by DCT losses. */ 255 /* Range-limiting is essential due to noise introduced by DCT losses,
170 outptr[RGB_RED] = range_limit[y + Crrtab[cr]]; 256 * for extended gamut (sYCC) and wide gamut (bg-sYCC) encodings.
257 */
258 outptr[RGB_RED] = range_limit[y + Crrtab[cr]];
171 outptr[RGB_GREEN] = range_limit[y + 259 outptr[RGB_GREEN] = range_limit[y +
172 ((int) RIGHT_SHIFT(Cbgtab[cb] + Crgtab[cr], 260 ((int) RIGHT_SHIFT(Cbgtab[cb] + Crgtab[cr],
173 SCALEBITS))]; 261 SCALEBITS))];
174 outptr[RGB_BLUE] = range_limit[y + Cbbtab[cb]]; 262 outptr[RGB_BLUE] = range_limit[y + Cbbtab[cb]];
175 outptr += RGB_PIXELSIZE; 263 outptr += RGB_PIXELSIZE;
176 } 264 }
177 } 265 }
178} 266}
179 267
180 268
181/**************** Cases other than YCbCr -> RGB **************/ 269/**************** Cases other than YCC -> RGB ****************/
182 270
183 271
184/* 272/*
@@ -198,9 +286,9 @@ build_rgb_y_table (j_decompress_ptr cinfo)
198 (TABLE_SIZE * SIZEOF(INT32))); 286 (TABLE_SIZE * SIZEOF(INT32)));
199 287
200 for (i = 0; i <= MAXJSAMPLE; i++) { 288 for (i = 0; i <= MAXJSAMPLE; i++) {
201 rgb_y_tab[i+R_Y_OFF] = FIX(0.29900) * i; 289 rgb_y_tab[i+R_Y_OFF] = FIX(0.299) * i;
202 rgb_y_tab[i+G_Y_OFF] = FIX(0.58700) * i; 290 rgb_y_tab[i+G_Y_OFF] = FIX(0.587) * i;
203 rgb_y_tab[i+B_Y_OFF] = FIX(0.11400) * i + ONE_HALF; 291 rgb_y_tab[i+B_Y_OFF] = FIX(0.114) * i + ONE_HALF;
204 } 292 }
205} 293}
206 294
@@ -215,8 +303,86 @@ rgb_gray_convert (j_decompress_ptr cinfo,
215 JSAMPARRAY output_buf, int num_rows) 303 JSAMPARRAY output_buf, int num_rows)
216{ 304{
217 my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert; 305 my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
306 register INT32 * ctab = cconvert->rgb_y_tab;
307 register int r, g, b;
308 register JSAMPROW outptr;
309 register JSAMPROW inptr0, inptr1, inptr2;
310 register JDIMENSION col;
311 JDIMENSION num_cols = cinfo->output_width;
312
313 while (--num_rows >= 0) {
314 inptr0 = input_buf[0][input_row];
315 inptr1 = input_buf[1][input_row];
316 inptr2 = input_buf[2][input_row];
317 input_row++;
318 outptr = *output_buf++;
319 for (col = 0; col < num_cols; col++) {
320 r = GETJSAMPLE(inptr0[col]);
321 g = GETJSAMPLE(inptr1[col]);
322 b = GETJSAMPLE(inptr2[col]);
323 /* Y */
324 outptr[col] = (JSAMPLE)
325 ((ctab[r+R_Y_OFF] + ctab[g+G_Y_OFF] + ctab[b+B_Y_OFF])
326 >> SCALEBITS);
327 }
328 }
329}
330
331
332/*
333 * [R-G,G,B-G] to [R,G,B] conversion with modulo calculation
334 * (inverse color transform).
335 * This can be seen as an adaption of the general YCbCr->RGB
336 * conversion equation with Kr = Kb = 0, while replacing the
337 * normalization by modulo calculation.
338 */
339
340METHODDEF(void)
341rgb1_rgb_convert (j_decompress_ptr cinfo,
342 JSAMPIMAGE input_buf, JDIMENSION input_row,
343 JSAMPARRAY output_buf, int num_rows)
344{
218 register int r, g, b; 345 register int r, g, b;
346 register JSAMPROW outptr;
347 register JSAMPROW inptr0, inptr1, inptr2;
348 register JDIMENSION col;
349 JDIMENSION num_cols = cinfo->output_width;
350
351 while (--num_rows >= 0) {
352 inptr0 = input_buf[0][input_row];
353 inptr1 = input_buf[1][input_row];
354 inptr2 = input_buf[2][input_row];
355 input_row++;
356 outptr = *output_buf++;
357 for (col = 0; col < num_cols; col++) {
358 r = GETJSAMPLE(inptr0[col]);
359 g = GETJSAMPLE(inptr1[col]);
360 b = GETJSAMPLE(inptr2[col]);
361 /* Assume that MAXJSAMPLE+1 is a power of 2, so that the MOD
362 * (modulo) operator is equivalent to the bitmask operator AND.
363 */
364 outptr[RGB_RED] = (JSAMPLE) ((r + g - CENTERJSAMPLE) & MAXJSAMPLE);
365 outptr[RGB_GREEN] = (JSAMPLE) g;
366 outptr[RGB_BLUE] = (JSAMPLE) ((b + g - CENTERJSAMPLE) & MAXJSAMPLE);
367 outptr += RGB_PIXELSIZE;
368 }
369 }
370}
371
372
373/*
374 * [R-G,G,B-G] to grayscale conversion with modulo calculation
375 * (inverse color transform).
376 */
377
378METHODDEF(void)
379rgb1_gray_convert (j_decompress_ptr cinfo,
380 JSAMPIMAGE input_buf, JDIMENSION input_row,
381 JSAMPARRAY output_buf, int num_rows)
382{
383 my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
219 register INT32 * ctab = cconvert->rgb_y_tab; 384 register INT32 * ctab = cconvert->rgb_y_tab;
385 register int r, g, b;
220 register JSAMPROW outptr; 386 register JSAMPROW outptr;
221 register JSAMPROW inptr0, inptr1, inptr2; 387 register JSAMPROW inptr0, inptr1, inptr2;
222 register JDIMENSION col; 388 register JDIMENSION col;
@@ -232,6 +398,11 @@ rgb_gray_convert (j_decompress_ptr cinfo,
232 r = GETJSAMPLE(inptr0[col]); 398 r = GETJSAMPLE(inptr0[col]);
233 g = GETJSAMPLE(inptr1[col]); 399 g = GETJSAMPLE(inptr1[col]);
234 b = GETJSAMPLE(inptr2[col]); 400 b = GETJSAMPLE(inptr2[col]);
401 /* Assume that MAXJSAMPLE+1 is a power of 2, so that the MOD
402 * (modulo) operator is equivalent to the bitmask operator AND.
403 */
404 r = (r + g - CENTERJSAMPLE) & MAXJSAMPLE;
405 b = (b + g - CENTERJSAMPLE) & MAXJSAMPLE;
235 /* Y */ 406 /* Y */
236 outptr[col] = (JSAMPLE) 407 outptr[col] = (JSAMPLE)
237 ((ctab[r+R_Y_OFF] + ctab[g+G_Y_OFF] + ctab[b+B_Y_OFF]) 408 ((ctab[r+R_Y_OFF] + ctab[g+G_Y_OFF] + ctab[b+B_Y_OFF])
@@ -283,19 +454,20 @@ null_convert (j_decompress_ptr cinfo,
283 JSAMPIMAGE input_buf, JDIMENSION input_row, 454 JSAMPIMAGE input_buf, JDIMENSION input_row,
284 JSAMPARRAY output_buf, int num_rows) 455 JSAMPARRAY output_buf, int num_rows)
285{ 456{
286 register JSAMPROW inptr, outptr;
287 register JDIMENSION count;
288 register int num_components = cinfo->num_components;
289 JDIMENSION num_cols = cinfo->output_width;
290 int ci; 457 int ci;
458 register int nc = cinfo->num_components;
459 register JSAMPROW outptr;
460 register JSAMPROW inptr;
461 register JDIMENSION col;
462 JDIMENSION num_cols = cinfo->output_width;
291 463
292 while (--num_rows >= 0) { 464 while (--num_rows >= 0) {
293 for (ci = 0; ci < num_components; ci++) { 465 for (ci = 0; ci < nc; ci++) {
294 inptr = input_buf[ci][input_row]; 466 inptr = input_buf[ci][input_row];
295 outptr = output_buf[0] + ci; 467 outptr = output_buf[0] + ci;
296 for (count = num_cols; count > 0; count--) { 468 for (col = 0; col < num_cols; col++) {
297 *outptr = *inptr++; /* needn't bother with GETJSAMPLE() here */ 469 *outptr = *inptr++; /* needn't bother with GETJSAMPLE() here */
298 outptr += num_components; 470 outptr += nc;
299 } 471 }
300 } 472 }
301 input_row++; 473 input_row++;
@@ -306,7 +478,7 @@ null_convert (j_decompress_ptr cinfo,
306 478
307/* 479/*
308 * Color conversion for grayscale: just copy the data. 480 * Color conversion for grayscale: just copy the data.
309 * This also works for YCbCr -> grayscale conversion, in which 481 * This also works for YCC -> grayscale conversion, in which
310 * we just copy the Y (luminance) component and ignore chrominance. 482 * we just copy the Y (luminance) component and ignore chrominance.
311 */ 483 */
312 484
@@ -331,7 +503,8 @@ gray_rgb_convert (j_decompress_ptr cinfo,
331 JSAMPIMAGE input_buf, JDIMENSION input_row, 503 JSAMPIMAGE input_buf, JDIMENSION input_row,
332 JSAMPARRAY output_buf, int num_rows) 504 JSAMPARRAY output_buf, int num_rows)
333{ 505{
334 register JSAMPROW inptr, outptr; 506 register JSAMPROW outptr;
507 register JSAMPROW inptr;
335 register JDIMENSION col; 508 register JDIMENSION col;
336 JDIMENSION num_cols = cinfo->output_width; 509 JDIMENSION num_cols = cinfo->output_width;
337 510
@@ -384,7 +557,9 @@ ycck_cmyk_convert (j_decompress_ptr cinfo,
384 y = GETJSAMPLE(inptr0[col]); 557 y = GETJSAMPLE(inptr0[col]);
385 cb = GETJSAMPLE(inptr1[col]); 558 cb = GETJSAMPLE(inptr1[col]);
386 cr = GETJSAMPLE(inptr2[col]); 559 cr = GETJSAMPLE(inptr2[col]);
387 /* Range-limiting is essential due to noise introduced by DCT losses. */ 560 /* Range-limiting is essential due to noise introduced by DCT losses,
561 * and for extended gamut encodings (sYCC).
562 */
388 outptr[0] = range_limit[MAXJSAMPLE - (y + Crrtab[cr])]; /* red */ 563 outptr[0] = range_limit[MAXJSAMPLE - (y + Crrtab[cr])]; /* red */
389 outptr[1] = range_limit[MAXJSAMPLE - (y + /* green */ 564 outptr[1] = range_limit[MAXJSAMPLE - (y + /* green */
390 ((int) RIGHT_SHIFT(Cbgtab[cb] + Crgtab[cr], 565 ((int) RIGHT_SHIFT(Cbgtab[cb] + Crgtab[cr],
@@ -422,7 +597,7 @@ jinit_color_deconverter (j_decompress_ptr cinfo)
422 cconvert = (my_cconvert_ptr) 597 cconvert = (my_cconvert_ptr)
423 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 598 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
424 SIZEOF(my_color_deconverter)); 599 SIZEOF(my_color_deconverter));
425 cinfo->cconvert = (struct jpeg_color_deconverter *) cconvert; 600 cinfo->cconvert = &cconvert->pub;
426 cconvert->pub.start_pass = start_pass_dcolor; 601 cconvert->pub.start_pass = start_pass_dcolor;
427 602
428 /* Make sure num_components agrees with jpeg_color_space */ 603 /* Make sure num_components agrees with jpeg_color_space */
@@ -434,6 +609,8 @@ jinit_color_deconverter (j_decompress_ptr cinfo)
434 609
435 case JCS_RGB: 610 case JCS_RGB:
436 case JCS_YCbCr: 611 case JCS_YCbCr:
612 case JCS_BG_RGB:
613 case JCS_BG_YCC:
437 if (cinfo->num_components != 3) 614 if (cinfo->num_components != 3)
438 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE); 615 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE);
439 break; 616 break;
@@ -450,6 +627,12 @@ jinit_color_deconverter (j_decompress_ptr cinfo)
450 break; 627 break;
451 } 628 }
452 629
630 /* Support color transform only for RGB colorspaces */
631 if (cinfo->color_transform &&
632 cinfo->jpeg_color_space != JCS_RGB &&
633 cinfo->jpeg_color_space != JCS_BG_RGB)
634 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
635
453 /* Set out_color_components and conversion method based on requested space. 636 /* Set out_color_components and conversion method based on requested space.
454 * Also clear the component_needed flags for any unused components, 637 * Also clear the component_needed flags for any unused components,
455 * so that earlier pipeline stages can avoid useless computation. 638 * so that earlier pipeline stages can avoid useless computation.
@@ -458,41 +641,94 @@ jinit_color_deconverter (j_decompress_ptr cinfo)
458 switch (cinfo->out_color_space) { 641 switch (cinfo->out_color_space) {
459 case JCS_GRAYSCALE: 642 case JCS_GRAYSCALE:
460 cinfo->out_color_components = 1; 643 cinfo->out_color_components = 1;
461 if (cinfo->jpeg_color_space == JCS_GRAYSCALE || 644 switch (cinfo->jpeg_color_space) {
462 cinfo->jpeg_color_space == JCS_YCbCr) { 645 case JCS_GRAYSCALE:
646 case JCS_YCbCr:
647 case JCS_BG_YCC:
463 cconvert->pub.color_convert = grayscale_convert; 648 cconvert->pub.color_convert = grayscale_convert;
464 /* For color->grayscale conversion, only the Y (0) component is needed */ 649 /* For color->grayscale conversion, only the Y (0) component is needed */
465 for (ci = 1; ci < cinfo->num_components; ci++) 650 for (ci = 1; ci < cinfo->num_components; ci++)
466 cinfo->comp_info[ci].component_needed = FALSE; 651 cinfo->comp_info[ci].component_needed = FALSE;
467 } else if (cinfo->jpeg_color_space == JCS_RGB) { 652 break;
468 cconvert->pub.color_convert = rgb_gray_convert; 653 case JCS_RGB:
654 switch (cinfo->color_transform) {
655 case JCT_NONE:
656 cconvert->pub.color_convert = rgb_gray_convert;
657 break;
658 case JCT_SUBTRACT_GREEN:
659 cconvert->pub.color_convert = rgb1_gray_convert;
660 break;
661 default:
662 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
663 }
469 build_rgb_y_table(cinfo); 664 build_rgb_y_table(cinfo);
470 } else 665 break;
666 default:
471 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL); 667 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
668 }
472 break; 669 break;
473 670
474 case JCS_RGB: 671 case JCS_RGB:
475 cinfo->out_color_components = RGB_PIXELSIZE; 672 cinfo->out_color_components = RGB_PIXELSIZE;
476 if (cinfo->jpeg_color_space == JCS_YCbCr) { 673 switch (cinfo->jpeg_color_space) {
674 case JCS_GRAYSCALE:
675 cconvert->pub.color_convert = gray_rgb_convert;
676 break;
677 case JCS_YCbCr:
477 cconvert->pub.color_convert = ycc_rgb_convert; 678 cconvert->pub.color_convert = ycc_rgb_convert;
478 build_ycc_rgb_table(cinfo); 679 build_ycc_rgb_table(cinfo);
479 } else if (cinfo->jpeg_color_space == JCS_GRAYSCALE) { 680 break;
480 cconvert->pub.color_convert = gray_rgb_convert; 681 case JCS_BG_YCC:
481 } else if (cinfo->jpeg_color_space == JCS_RGB) { 682 cconvert->pub.color_convert = ycc_rgb_convert;
482 cconvert->pub.color_convert = rgb_convert; 683 build_bg_ycc_rgb_table(cinfo);
684 break;
685 case JCS_RGB:
686 switch (cinfo->color_transform) {
687 case JCT_NONE:
688 cconvert->pub.color_convert = rgb_convert;
689 break;
690 case JCT_SUBTRACT_GREEN:
691 cconvert->pub.color_convert = rgb1_rgb_convert;
692 break;
693 default:
694 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
695 }
696 break;
697 default:
698 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
699 }
700 break;
701
702 case JCS_BG_RGB:
703 cinfo->out_color_components = RGB_PIXELSIZE;
704 if (cinfo->jpeg_color_space == JCS_BG_RGB) {
705 switch (cinfo->color_transform) {
706 case JCT_NONE:
707 cconvert->pub.color_convert = rgb_convert;
708 break;
709 case JCT_SUBTRACT_GREEN:
710 cconvert->pub.color_convert = rgb1_rgb_convert;
711 break;
712 default:
713 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
714 }
483 } else 715 } else
484 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL); 716 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
485 break; 717 break;
486 718
487 case JCS_CMYK: 719 case JCS_CMYK:
488 cinfo->out_color_components = 4; 720 cinfo->out_color_components = 4;
489 if (cinfo->jpeg_color_space == JCS_YCCK) { 721 switch (cinfo->jpeg_color_space) {
722 case JCS_YCCK:
490 cconvert->pub.color_convert = ycck_cmyk_convert; 723 cconvert->pub.color_convert = ycck_cmyk_convert;
491 build_ycc_rgb_table(cinfo); 724 build_ycc_rgb_table(cinfo);
492 } else if (cinfo->jpeg_color_space == JCS_CMYK) { 725 break;
726 case JCS_CMYK:
493 cconvert->pub.color_convert = null_convert; 727 cconvert->pub.color_convert = null_convert;
494 } else 728 break;
729 default:
495 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL); 730 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
731 }
496 break; 732 break;
497 733
498 default: 734 default:
diff --git a/gs/jpeg/jddctmgr.c b/gs/jpeg/jddctmgr.c
index 0ded9d574..9ecfbb510 100644
--- a/gs/jpeg/jddctmgr.c
+++ b/gs/jpeg/jddctmgr.c
@@ -2,7 +2,7 @@
2 * jddctmgr.c 2 * jddctmgr.c
3 * 3 *
4 * Copyright (C) 1994-1996, Thomas G. Lane. 4 * Copyright (C) 1994-1996, Thomas G. Lane.
5 * Modified 2002-2010 by Guido Vollbeding. 5 * Modified 2002-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -368,7 +368,7 @@ jinit_inverse_dct (j_decompress_ptr cinfo)
368 idct = (my_idct_ptr) 368 idct = (my_idct_ptr)
369 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 369 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
370 SIZEOF(my_idct_controller)); 370 SIZEOF(my_idct_controller));
371 cinfo->idct = (struct jpeg_inverse_dct *) idct; 371 cinfo->idct = &idct->pub;
372 idct->pub.start_pass = start_pass; 372 idct->pub.start_pass = start_pass;
373 373
374 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components; 374 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
diff --git a/gs/jpeg/jdhuff.c b/gs/jpeg/jdhuff.c
index 06f92fe47..6920e207c 100644
--- a/gs/jpeg/jdhuff.c
+++ b/gs/jpeg/jdhuff.c
@@ -2,7 +2,7 @@
2 * jdhuff.c 2 * jdhuff.c
3 * 3 *
4 * Copyright (C) 1991-1997, Thomas G. Lane. 4 * Copyright (C) 1991-1997, Thomas G. Lane.
5 * Modified 2006-2009 by Guido Vollbeding. 5 * Modified 2006-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -628,6 +628,22 @@ jpeg_huff_decode (bitread_working_state * state,
628 628
629 629
630/* 630/*
631 * Finish up at the end of a Huffman-compressed scan.
632 */
633
634METHODDEF(void)
635finish_pass_huff (j_decompress_ptr cinfo)
636{
637 huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy;
638
639 /* Throw away any unused bits remaining in bit buffer; */
640 /* include any full bytes in next_marker's count of discarded bytes */
641 cinfo->marker->discarded_bytes += entropy->bitstate.bits_left / 8;
642 entropy->bitstate.bits_left = 0;
643}
644
645
646/*
631 * Check for a restart marker & resynchronize decoder. 647 * Check for a restart marker & resynchronize decoder.
632 * Returns FALSE if must suspend. 648 * Returns FALSE if must suspend.
633 */ 649 */
@@ -638,10 +654,7 @@ process_restart (j_decompress_ptr cinfo)
638 huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy; 654 huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy;
639 int ci; 655 int ci;
640 656
641 /* Throw away any unused bits remaining in bit buffer; */ 657 finish_pass_huff(cinfo);
642 /* include any full bytes in next_marker's count of discarded bytes */
643 cinfo->marker->discarded_bytes += entropy->bitstate.bits_left / 8;
644 entropy->bitstate.bits_left = 0;
645 658
646 /* Advance past the RSTn marker */ 659 /* Advance past the RSTn marker */
647 if (! (*cinfo->marker->read_restart_marker) (cinfo)) 660 if (! (*cinfo->marker->read_restart_marker) (cinfo))
@@ -797,7 +810,7 @@ decode_mcu_AC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
797 810
798 /* There is always only one block per MCU */ 811 /* There is always only one block per MCU */
799 812
800 if (EOBRUN > 0) /* if it's a band of zeroes... */ 813 if (EOBRUN) /* if it's a band of zeroes... */
801 EOBRUN--; /* ...process it now (we do nothing) */ 814 EOBRUN--; /* ...process it now (we do nothing) */
802 else { 815 else {
803 BITREAD_LOAD_STATE(cinfo,entropy->bitstate); 816 BITREAD_LOAD_STATE(cinfo,entropy->bitstate);
@@ -816,18 +829,17 @@ decode_mcu_AC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
816 /* Scale and output coefficient in natural (dezigzagged) order */ 829 /* Scale and output coefficient in natural (dezigzagged) order */
817 (*block)[natural_order[k]] = (JCOEF) (s << Al); 830 (*block)[natural_order[k]] = (JCOEF) (s << Al);
818 } else { 831 } else {
819 if (r == 15) { /* ZRL */ 832 if (r != 15) { /* EOBr, run length is 2^r + appended bits */
820 k += 15; /* skip 15 zeroes in band */
821 } else { /* EOBr, run length is 2^r + appended bits */
822 EOBRUN = 1 << r;
823 if (r) { /* EOBr, r > 0 */ 833 if (r) { /* EOBr, r > 0 */
834 EOBRUN = 1 << r;
824 CHECK_BIT_BUFFER(br_state, r, return FALSE); 835 CHECK_BIT_BUFFER(br_state, r, return FALSE);
825 r = GET_BITS(r); 836 r = GET_BITS(r);
826 EOBRUN += r; 837 EOBRUN += r;
838 EOBRUN--; /* this band is processed at this moment */
827 } 839 }
828 EOBRUN--; /* this band is processed at this moment */
829 break; /* force end-of-band */ 840 break; /* force end-of-band */
830 } 841 }
842 k += 15; /* ZRL: skip 15 zeroes in band */
831 } 843 }
832 } 844 }
833 845
@@ -847,17 +859,15 @@ decode_mcu_AC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
847 859
848/* 860/*
849 * MCU decoding for DC successive approximation refinement scan. 861 * MCU decoding for DC successive approximation refinement scan.
850 * Note: we assume such scans can be multi-component, although the spec 862 * Note: we assume such scans can be multi-component,
851 * is not very clear on the point. 863 * although the spec is not very clear on the point.
852 */ 864 */
853 865
854METHODDEF(boolean) 866METHODDEF(boolean)
855decode_mcu_DC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data) 867decode_mcu_DC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
856{ 868{
857 huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy; 869 huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy;
858 int p1 = 1 << cinfo->Al; /* 1 in the bit position being coded */ 870 int p1, blkn;
859 int blkn;
860 JBLOCKROW block;
861 BITREAD_STATE_VARS; 871 BITREAD_STATE_VARS;
862 872
863 /* Process restart marker if needed; may have to suspend */ 873 /* Process restart marker if needed; may have to suspend */
@@ -874,15 +884,15 @@ decode_mcu_DC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
874 /* Load up working state */ 884 /* Load up working state */
875 BITREAD_LOAD_STATE(cinfo,entropy->bitstate); 885 BITREAD_LOAD_STATE(cinfo,entropy->bitstate);
876 886
887 p1 = 1 << cinfo->Al; /* 1 in the bit position being coded */
888
877 /* Outer loop handles each block in the MCU */ 889 /* Outer loop handles each block in the MCU */
878 890
879 for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) { 891 for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
880 block = MCU_data[blkn];
881
882 /* Encoded data is simply the next bit of the two's-complement DC value */ 892 /* Encoded data is simply the next bit of the two's-complement DC value */
883 CHECK_BIT_BUFFER(br_state, 1, return FALSE); 893 CHECK_BIT_BUFFER(br_state, 1, return FALSE);
884 if (GET_BITS(1)) 894 if (GET_BITS(1))
885 (*block)[0] |= p1; 895 MCU_data[blkn][0][0] |= p1;
886 /* Note: since we use |=, repeating the assignment later is safe */ 896 /* Note: since we use |=, repeating the assignment later is safe */
887 } 897 }
888 898
@@ -951,7 +961,7 @@ decode_mcu_AC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
951 k = cinfo->Ss; 961 k = cinfo->Ss;
952 962
953 if (EOBRUN == 0) { 963 if (EOBRUN == 0) {
954 for (; k <= Se; k++) { 964 do {
955 HUFF_DECODE(s, br_state, tbl, goto undoit, label3); 965 HUFF_DECODE(s, br_state, tbl, goto undoit, label3);
956 r = s >> 4; 966 r = s >> 4;
957 s &= 15; 967 s &= 15;
@@ -981,7 +991,7 @@ decode_mcu_AC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
981 */ 991 */
982 do { 992 do {
983 thiscoef = *block + natural_order[k]; 993 thiscoef = *block + natural_order[k];
984 if (*thiscoef != 0) { 994 if (*thiscoef) {
985 CHECK_BIT_BUFFER(br_state, 1, goto undoit); 995 CHECK_BIT_BUFFER(br_state, 1, goto undoit);
986 if (GET_BITS(1)) { 996 if (GET_BITS(1)) {
987 if ((*thiscoef & p1) == 0) { /* do nothing if already set it */ 997 if ((*thiscoef & p1) == 0) { /* do nothing if already set it */
@@ -1004,18 +1014,19 @@ decode_mcu_AC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
1004 /* Remember its position in case we have to suspend */ 1014 /* Remember its position in case we have to suspend */
1005 newnz_pos[num_newnz++] = pos; 1015 newnz_pos[num_newnz++] = pos;
1006 } 1016 }
1007 } 1017 k++;
1018 } while (k <= Se);
1008 } 1019 }
1009 1020
1010 if (EOBRUN > 0) { 1021 if (EOBRUN) {
1011 /* Scan any remaining coefficient positions after the end-of-band 1022 /* Scan any remaining coefficient positions after the end-of-band
1012 * (the last newly nonzero coefficient, if any). Append a correction 1023 * (the last newly nonzero coefficient, if any). Append a correction
1013 * bit to each already-nonzero coefficient. A correction bit is 1 1024 * bit to each already-nonzero coefficient. A correction bit is 1
1014 * if the absolute value of the coefficient must be increased. 1025 * if the absolute value of the coefficient must be increased.
1015 */ 1026 */
1016 for (; k <= Se; k++) { 1027 do {
1017 thiscoef = *block + natural_order[k]; 1028 thiscoef = *block + natural_order[k];
1018 if (*thiscoef != 0) { 1029 if (*thiscoef) {
1019 CHECK_BIT_BUFFER(br_state, 1, goto undoit); 1030 CHECK_BIT_BUFFER(br_state, 1, goto undoit);
1020 if (GET_BITS(1)) { 1031 if (GET_BITS(1)) {
1021 if ((*thiscoef & p1) == 0) { /* do nothing if already changed it */ 1032 if ((*thiscoef & p1) == 0) { /* do nothing if already changed it */
@@ -1026,7 +1037,8 @@ decode_mcu_AC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
1026 } 1037 }
1027 } 1038 }
1028 } 1039 }
1029 } 1040 k++;
1041 } while (k <= Se);
1030 /* Count one block completed in EOB run */ 1042 /* Count one block completed in EOB run */
1031 EOBRUN--; 1043 EOBRUN--;
1032 } 1044 }
@@ -1043,7 +1055,7 @@ decode_mcu_AC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
1043 1055
1044undoit: 1056undoit:
1045 /* Re-zero any output coefficients that we made newly nonzero */ 1057 /* Re-zero any output coefficients that we made newly nonzero */
1046 while (num_newnz > 0) 1058 while (num_newnz)
1047 (*block)[newnz_pos[--num_newnz]] = 0; 1059 (*block)[newnz_pos[--num_newnz]] = 0;
1048 1060
1049 return FALSE; 1061 return FALSE;
@@ -1514,8 +1526,9 @@ jinit_huff_decoder (j_decompress_ptr cinfo)
1514 entropy = (huff_entropy_ptr) 1526 entropy = (huff_entropy_ptr)
1515 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 1527 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
1516 SIZEOF(huff_entropy_decoder)); 1528 SIZEOF(huff_entropy_decoder));
1517 cinfo->entropy = (struct jpeg_entropy_decoder *) entropy; 1529 cinfo->entropy = &entropy->pub;
1518 entropy->pub.start_pass = start_pass_huff_decoder; 1530 entropy->pub.start_pass = start_pass_huff_decoder;
1531 entropy->pub.finish_pass = finish_pass_huff;
1519 1532
1520 if (cinfo->progressive_mode) { 1533 if (cinfo->progressive_mode) {
1521 /* Create progression status table */ 1534 /* Create progression status table */
diff --git a/gs/jpeg/jdinput.c b/gs/jpeg/jdinput.c
index 2c5c717b9..0199553e8 100644
--- a/gs/jpeg/jdinput.c
+++ b/gs/jpeg/jdinput.c
@@ -2,7 +2,7 @@
2 * jdinput.c 2 * jdinput.c
3 * 3 *
4 * Copyright (C) 1991-1997, Thomas G. Lane. 4 * Copyright (C) 1991-1997, Thomas G. Lane.
5 * Modified 2002-2009 by Guido Vollbeding. 5 * Modified 2002-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -196,7 +196,7 @@ jpeg_core_output_dimensions (j_decompress_ptr cinfo)
196 /* Hardwire it to "no scaling" */ 196 /* Hardwire it to "no scaling" */
197 cinfo->output_width = cinfo->image_width; 197 cinfo->output_width = cinfo->image_width;
198 cinfo->output_height = cinfo->image_height; 198 cinfo->output_height = cinfo->image_height;
199 /* jdinput.c has already initialized DCT_scaled_size, 199 /* initial_setup has already initialized DCT_scaled_size,
200 * and has computed unscaled downsampled_width and downsampled_height. 200 * and has computed unscaled downsampled_width and downsampled_height.
201 */ 201 */
202 202
@@ -216,8 +216,8 @@ initial_setup (j_decompress_ptr cinfo)
216 (long) cinfo->image_width > (long) JPEG_MAX_DIMENSION) 216 (long) cinfo->image_width > (long) JPEG_MAX_DIMENSION)
217 ERREXIT1(cinfo, JERR_IMAGE_TOO_BIG, (unsigned int) JPEG_MAX_DIMENSION); 217 ERREXIT1(cinfo, JERR_IMAGE_TOO_BIG, (unsigned int) JPEG_MAX_DIMENSION);
218 218
219 /* For now, precision must match compiled-in value... */ 219 /* Only 8 to 12 bits data precision are supported for DCT based JPEG */
220 if (cinfo->data_precision != BITS_IN_JSAMPLE) 220 if (cinfo->data_precision < 8 || cinfo->data_precision > 12)
221 ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision); 221 ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision);
222 222
223 /* Check that number of components won't exceed internal array sizes */ 223 /* Check that number of components won't exceed internal array sizes */
@@ -537,6 +537,7 @@ start_input_pass (j_decompress_ptr cinfo)
537METHODDEF(void) 537METHODDEF(void)
538finish_input_pass (j_decompress_ptr cinfo) 538finish_input_pass (j_decompress_ptr cinfo)
539{ 539{
540 (*cinfo->entropy->finish_pass) (cinfo);
540 cinfo->inputctl->consume_input = consume_markers; 541 cinfo->inputctl->consume_input = consume_markers;
541} 542}
542 543
@@ -646,7 +647,7 @@ jinit_input_controller (j_decompress_ptr cinfo)
646 inputctl = (my_inputctl_ptr) 647 inputctl = (my_inputctl_ptr)
647 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_PERMANENT, 648 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_PERMANENT,
648 SIZEOF(my_input_controller)); 649 SIZEOF(my_input_controller));
649 cinfo->inputctl = (struct jpeg_input_controller *) inputctl; 650 cinfo->inputctl = &inputctl->pub;
650 /* Initialize method pointers */ 651 /* Initialize method pointers */
651 inputctl->pub.consume_input = consume_markers; 652 inputctl->pub.consume_input = consume_markers;
652 inputctl->pub.reset_input_controller = reset_input_controller; 653 inputctl->pub.reset_input_controller = reset_input_controller;
diff --git a/gs/jpeg/jdmainct.c b/gs/jpeg/jdmainct.c
index d049856a4..52091fb2b 100644
--- a/gs/jpeg/jdmainct.c
+++ b/gs/jpeg/jdmainct.c
@@ -2,6 +2,7 @@
2 * jdmainct.c 2 * jdmainct.c
3 * 3 *
4 * Copyright (C) 1994-1996, Thomas G. Lane. 4 * Copyright (C) 1994-1996, Thomas G. Lane.
5 * Modified 2002-2012 by Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
7 * 8 *
@@ -159,7 +160,7 @@ alloc_funny_pointers (j_decompress_ptr cinfo)
159 * This is done only once, not once per pass. 160 * This is done only once, not once per pass.
160 */ 161 */
161{ 162{
162 my_main_ptr pmain = (my_main_ptr) cinfo->main; 163 my_main_ptr mainp = (my_main_ptr) cinfo->main;
163 int ci, rgroup; 164 int ci, rgroup;
164 int M = cinfo->min_DCT_v_scaled_size; 165 int M = cinfo->min_DCT_v_scaled_size;
165 jpeg_component_info *compptr; 166 jpeg_component_info *compptr;
@@ -168,10 +169,10 @@ alloc_funny_pointers (j_decompress_ptr cinfo)
168 /* Get top-level space for component array pointers. 169 /* Get top-level space for component array pointers.
169 * We alloc both arrays with one call to save a few cycles. 170 * We alloc both arrays with one call to save a few cycles.
170 */ 171 */
171 pmain->xbuffer[0] = (JSAMPIMAGE) 172 mainp->xbuffer[0] = (JSAMPIMAGE)
172 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 173 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
173 cinfo->num_components * 2 * SIZEOF(JSAMPARRAY)); 174 cinfo->num_components * 2 * SIZEOF(JSAMPARRAY));
174 pmain->xbuffer[1] = pmain->xbuffer[0] + cinfo->num_components; 175 mainp->xbuffer[1] = mainp->xbuffer[0] + cinfo->num_components;
175 176
176 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components; 177 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
177 ci++, compptr++) { 178 ci++, compptr++) {
@@ -184,9 +185,9 @@ alloc_funny_pointers (j_decompress_ptr cinfo)
184 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 185 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
185 2 * (rgroup * (M + 4)) * SIZEOF(JSAMPROW)); 186 2 * (rgroup * (M + 4)) * SIZEOF(JSAMPROW));
186 xbuf += rgroup; /* want one row group at negative offsets */ 187 xbuf += rgroup; /* want one row group at negative offsets */
187 pmain->xbuffer[0][ci] = xbuf; 188 mainp->xbuffer[0][ci] = xbuf;
188 xbuf += rgroup * (M + 4); 189 xbuf += rgroup * (M + 4);
189 pmain->xbuffer[1][ci] = xbuf; 190 mainp->xbuffer[1][ci] = xbuf;
190 } 191 }
191} 192}
192 193
@@ -194,13 +195,13 @@ alloc_funny_pointers (j_decompress_ptr cinfo)
194LOCAL(void) 195LOCAL(void)
195make_funny_pointers (j_decompress_ptr cinfo) 196make_funny_pointers (j_decompress_ptr cinfo)
196/* Create the funny pointer lists discussed in the comments above. 197/* Create the funny pointer lists discussed in the comments above.
197 * The actual workspace is already allocated (in pmain->buffer), 198 * The actual workspace is already allocated (in main->buffer),
198 * and the space for the pointer lists is allocated too. 199 * and the space for the pointer lists is allocated too.
199 * This routine just fills in the curiously ordered lists. 200 * This routine just fills in the curiously ordered lists.
200 * This will be repeated at the beginning of each pass. 201 * This will be repeated at the beginning of each pass.
201 */ 202 */
202{ 203{
203 my_main_ptr pmain = (my_main_ptr) cinfo->main; 204 my_main_ptr mainp = (my_main_ptr) cinfo->main;
204 int ci, i, rgroup; 205 int ci, i, rgroup;
205 int M = cinfo->min_DCT_v_scaled_size; 206 int M = cinfo->min_DCT_v_scaled_size;
206 jpeg_component_info *compptr; 207 jpeg_component_info *compptr;
@@ -210,10 +211,10 @@ make_funny_pointers (j_decompress_ptr cinfo)
210 ci++, compptr++) { 211 ci++, compptr++) {
211 rgroup = (compptr->v_samp_factor * compptr->DCT_v_scaled_size) / 212 rgroup = (compptr->v_samp_factor * compptr->DCT_v_scaled_size) /
212 cinfo->min_DCT_v_scaled_size; /* height of a row group of component */ 213 cinfo->min_DCT_v_scaled_size; /* height of a row group of component */
213 xbuf0 = pmain->xbuffer[0][ci]; 214 xbuf0 = mainp->xbuffer[0][ci];
214 xbuf1 = pmain->xbuffer[1][ci]; 215 xbuf1 = mainp->xbuffer[1][ci];
215 /* First copy the workspace pointers as-is */ 216 /* First copy the workspace pointers as-is */
216 buf = pmain->buffer[ci]; 217 buf = mainp->buffer[ci];
217 for (i = 0; i < rgroup * (M + 2); i++) { 218 for (i = 0; i < rgroup * (M + 2); i++) {
218 xbuf0[i] = xbuf1[i] = buf[i]; 219 xbuf0[i] = xbuf1[i] = buf[i];
219 } 220 }
@@ -240,7 +241,7 @@ set_wraparound_pointers (j_decompress_ptr cinfo)
240 * This changes the pointer list state from top-of-image to the normal state. 241 * This changes the pointer list state from top-of-image to the normal state.
241 */ 242 */
242{ 243{
243 my_main_ptr pmain = (my_main_ptr) cinfo->main; 244 my_main_ptr mainp = (my_main_ptr) cinfo->main;
244 int ci, i, rgroup; 245 int ci, i, rgroup;
245 int M = cinfo->min_DCT_v_scaled_size; 246 int M = cinfo->min_DCT_v_scaled_size;
246 jpeg_component_info *compptr; 247 jpeg_component_info *compptr;
@@ -250,8 +251,8 @@ set_wraparound_pointers (j_decompress_ptr cinfo)
250 ci++, compptr++) { 251 ci++, compptr++) {
251 rgroup = (compptr->v_samp_factor * compptr->DCT_v_scaled_size) / 252 rgroup = (compptr->v_samp_factor * compptr->DCT_v_scaled_size) /
252 cinfo->min_DCT_v_scaled_size; /* height of a row group of component */ 253 cinfo->min_DCT_v_scaled_size; /* height of a row group of component */
253 xbuf0 = pmain->xbuffer[0][ci]; 254 xbuf0 = mainp->xbuffer[0][ci];
254 xbuf1 = pmain->xbuffer[1][ci]; 255 xbuf1 = mainp->xbuffer[1][ci];
255 for (i = 0; i < rgroup; i++) { 256 for (i = 0; i < rgroup; i++) {
256 xbuf0[i - rgroup] = xbuf0[rgroup*(M+1) + i]; 257 xbuf0[i - rgroup] = xbuf0[rgroup*(M+1) + i];
257 xbuf1[i - rgroup] = xbuf1[rgroup*(M+1) + i]; 258 xbuf1[i - rgroup] = xbuf1[rgroup*(M+1) + i];
@@ -269,7 +270,7 @@ set_bottom_pointers (j_decompress_ptr cinfo)
269 * Also sets rowgroups_avail to indicate number of nondummy row groups in row. 270 * Also sets rowgroups_avail to indicate number of nondummy row groups in row.
270 */ 271 */
271{ 272{
272 my_main_ptr pmain = (my_main_ptr) cinfo->main; 273 my_main_ptr mainp = (my_main_ptr) cinfo->main;
273 int ci, i, rgroup, iMCUheight, rows_left; 274 int ci, i, rgroup, iMCUheight, rows_left;
274 jpeg_component_info *compptr; 275 jpeg_component_info *compptr;
275 JSAMPARRAY xbuf; 276 JSAMPARRAY xbuf;
@@ -286,12 +287,12 @@ set_bottom_pointers (j_decompress_ptr cinfo)
286 * so we need only do it once. 287 * so we need only do it once.
287 */ 288 */
288 if (ci == 0) { 289 if (ci == 0) {
289 pmain->rowgroups_avail = (JDIMENSION) ((rows_left-1) / rgroup + 1); 290 mainp->rowgroups_avail = (JDIMENSION) ((rows_left-1) / rgroup + 1);
290 } 291 }
291 /* Duplicate the last real sample row rgroup*2 times; this pads out the 292 /* Duplicate the last real sample row rgroup*2 times; this pads out the
292 * last partial rowgroup and ensures at least one full rowgroup of context. 293 * last partial rowgroup and ensures at least one full rowgroup of context.
293 */ 294 */
294 xbuf = pmain->xbuffer[pmain->whichptr][ci]; 295 xbuf = mainp->xbuffer[mainp->whichptr][ci];
295 for (i = 0; i < rgroup * 2; i++) { 296 for (i = 0; i < rgroup * 2; i++) {
296 xbuf[rows_left + i] = xbuf[rows_left-1]; 297 xbuf[rows_left + i] = xbuf[rows_left-1];
297 } 298 }
@@ -306,27 +307,27 @@ set_bottom_pointers (j_decompress_ptr cinfo)
306METHODDEF(void) 307METHODDEF(void)
307start_pass_main (j_decompress_ptr cinfo, J_BUF_MODE pass_mode) 308start_pass_main (j_decompress_ptr cinfo, J_BUF_MODE pass_mode)
308{ 309{
309 my_main_ptr pmain = (my_main_ptr) cinfo->main; 310 my_main_ptr mainp = (my_main_ptr) cinfo->main;
310 311
311 switch (pass_mode) { 312 switch (pass_mode) {
312 case JBUF_PASS_THRU: 313 case JBUF_PASS_THRU:
313 if (cinfo->upsample->need_context_rows) { 314 if (cinfo->upsample->need_context_rows) {
314 pmain->pub.process_data = process_data_context_main; 315 mainp->pub.process_data = process_data_context_main;
315 make_funny_pointers(cinfo); /* Create the xbuffer[] lists */ 316 make_funny_pointers(cinfo); /* Create the xbuffer[] lists */
316 pmain->whichptr = 0; /* Read first iMCU row into xbuffer[0] */ 317 mainp->whichptr = 0; /* Read first iMCU row into xbuffer[0] */
317 pmain->context_state = CTX_PREPARE_FOR_IMCU; 318 mainp->context_state = CTX_PREPARE_FOR_IMCU;
318 pmain->iMCU_row_ctr = 0; 319 mainp->iMCU_row_ctr = 0;
319 } else { 320 } else {
320 /* Simple case with no context needed */ 321 /* Simple case with no context needed */
321 pmain->pub.process_data = process_data_simple_main; 322 mainp->pub.process_data = process_data_simple_main;
322 } 323 }
323 pmain->buffer_full = FALSE; /* Mark buffer empty */ 324 mainp->buffer_full = FALSE; /* Mark buffer empty */
324 pmain->rowgroup_ctr = 0; 325 mainp->rowgroup_ctr = 0;
325 break; 326 break;
326#ifdef QUANT_2PASS_SUPPORTED 327#ifdef QUANT_2PASS_SUPPORTED
327 case JBUF_CRANK_DEST: 328 case JBUF_CRANK_DEST:
328 /* For last pass of 2-pass quantization, just crank the postprocessor */ 329 /* For last pass of 2-pass quantization, just crank the postprocessor */
329 pmain->pub.process_data = process_data_crank_post; 330 mainp->pub.process_data = process_data_crank_post;
330 break; 331 break;
331#endif 332#endif
332 default: 333 default:
@@ -346,14 +347,14 @@ process_data_simple_main (j_decompress_ptr cinfo,
346 JSAMPARRAY output_buf, JDIMENSION *out_row_ctr, 347 JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
347 JDIMENSION out_rows_avail) 348 JDIMENSION out_rows_avail)
348{ 349{
349 my_main_ptr pmain = (my_main_ptr) cinfo->main; 350 my_main_ptr mainp = (my_main_ptr) cinfo->main;
350 JDIMENSION rowgroups_avail; 351 JDIMENSION rowgroups_avail;
351 352
352 /* Read input data if we haven't filled the main buffer yet */ 353 /* Read input data if we haven't filled the main buffer yet */
353 if (! pmain->buffer_full) { 354 if (! mainp->buffer_full) {
354 if (! (*cinfo->coef->decompress_data) (cinfo, pmain->buffer)) 355 if (! (*cinfo->coef->decompress_data) (cinfo, mainp->buffer))
355 return; /* suspension forced, can do nothing more */ 356 return; /* suspension forced, can do nothing more */
356 pmain->buffer_full = TRUE; /* OK, we have an iMCU row to work with */ 357 mainp->buffer_full = TRUE; /* OK, we have an iMCU row to work with */
357 } 358 }
358 359
359 /* There are always min_DCT_scaled_size row groups in an iMCU row. */ 360 /* There are always min_DCT_scaled_size row groups in an iMCU row. */
@@ -364,14 +365,14 @@ process_data_simple_main (j_decompress_ptr cinfo,
364 */ 365 */
365 366
366 /* Feed the postprocessor */ 367 /* Feed the postprocessor */
367 (*cinfo->post->post_process_data) (cinfo, pmain->buffer, 368 (*cinfo->post->post_process_data) (cinfo, mainp->buffer,
368 &pmain->rowgroup_ctr, rowgroups_avail, 369 &mainp->rowgroup_ctr, rowgroups_avail,
369 output_buf, out_row_ctr, out_rows_avail); 370 output_buf, out_row_ctr, out_rows_avail);
370 371
371 /* Has postprocessor consumed all the data yet? If so, mark buffer empty */ 372 /* Has postprocessor consumed all the data yet? If so, mark buffer empty */
372 if (pmain->rowgroup_ctr >= rowgroups_avail) { 373 if (mainp->rowgroup_ctr >= rowgroups_avail) {
373 pmain->buffer_full = FALSE; 374 mainp->buffer_full = FALSE;
374 pmain->rowgroup_ctr = 0; 375 mainp->rowgroup_ctr = 0;
375 } 376 }
376} 377}
377 378
@@ -386,15 +387,15 @@ process_data_context_main (j_decompress_ptr cinfo,
386 JSAMPARRAY output_buf, JDIMENSION *out_row_ctr, 387 JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
387 JDIMENSION out_rows_avail) 388 JDIMENSION out_rows_avail)
388{ 389{
389 my_main_ptr pmain = (my_main_ptr) cinfo->main; 390 my_main_ptr mainp = (my_main_ptr) cinfo->main;
390 391
391 /* Read input data if we haven't filled the main buffer yet */ 392 /* Read input data if we haven't filled the main buffer yet */
392 if (! pmain->buffer_full) { 393 if (! mainp->buffer_full) {
393 if (! (*cinfo->coef->decompress_data) (cinfo, 394 if (! (*cinfo->coef->decompress_data) (cinfo,
394 pmain->xbuffer[pmain->whichptr])) 395 mainp->xbuffer[mainp->whichptr]))
395 return; /* suspension forced, can do nothing more */ 396 return; /* suspension forced, can do nothing more */
396 pmain->buffer_full = TRUE; /* OK, we have an iMCU row to work with */ 397 mainp->buffer_full = TRUE; /* OK, we have an iMCU row to work with */
397 pmain->iMCU_row_ctr++; /* count rows received */ 398 mainp->iMCU_row_ctr++; /* count rows received */
398 } 399 }
399 400
400 /* Postprocessor typically will not swallow all the input data it is handed 401 /* Postprocessor typically will not swallow all the input data it is handed
@@ -402,47 +403,47 @@ process_data_context_main (j_decompress_ptr cinfo,
402 * to exit and restart. This switch lets us keep track of how far we got. 403 * to exit and restart. This switch lets us keep track of how far we got.
403 * Note that each case falls through to the next on successful completion. 404 * Note that each case falls through to the next on successful completion.
404 */ 405 */
405 switch (pmain->context_state) { 406 switch (mainp->context_state) {
406 case CTX_POSTPONED_ROW: 407 case CTX_POSTPONED_ROW:
407 /* Call postprocessor using previously set pointers for postponed row */ 408 /* Call postprocessor using previously set pointers for postponed row */
408 (*cinfo->post->post_process_data) (cinfo, pmain->xbuffer[pmain->whichptr], 409 (*cinfo->post->post_process_data) (cinfo, mainp->xbuffer[mainp->whichptr],
409 &pmain->rowgroup_ctr, pmain->rowgroups_avail, 410 &mainp->rowgroup_ctr, mainp->rowgroups_avail,
410 output_buf, out_row_ctr, out_rows_avail); 411 output_buf, out_row_ctr, out_rows_avail);
411 if (pmain->rowgroup_ctr < pmain->rowgroups_avail) 412 if (mainp->rowgroup_ctr < mainp->rowgroups_avail)
412 return; /* Need to suspend */ 413 return; /* Need to suspend */
413 pmain->context_state = CTX_PREPARE_FOR_IMCU; 414 mainp->context_state = CTX_PREPARE_FOR_IMCU;
414 if (*out_row_ctr >= out_rows_avail) 415 if (*out_row_ctr >= out_rows_avail)
415 return; /* Postprocessor exactly filled output buf */ 416 return; /* Postprocessor exactly filled output buf */
416 /*FALLTHROUGH*/ 417 /*FALLTHROUGH*/
417 case CTX_PREPARE_FOR_IMCU: 418 case CTX_PREPARE_FOR_IMCU:
418 /* Prepare to process first M-1 row groups of this iMCU row */ 419 /* Prepare to process first M-1 row groups of this iMCU row */
419 pmain->rowgroup_ctr = 0; 420 mainp->rowgroup_ctr = 0;
420 pmain->rowgroups_avail = (JDIMENSION) (cinfo->min_DCT_v_scaled_size - 1); 421 mainp->rowgroups_avail = (JDIMENSION) (cinfo->min_DCT_v_scaled_size - 1);
421 /* Check for bottom of image: if so, tweak pointers to "duplicate" 422 /* Check for bottom of image: if so, tweak pointers to "duplicate"
422 * the last sample row, and adjust rowgroups_avail to ignore padding rows. 423 * the last sample row, and adjust rowgroups_avail to ignore padding rows.
423 */ 424 */
424 if (pmain->iMCU_row_ctr == cinfo->total_iMCU_rows) 425 if (mainp->iMCU_row_ctr == cinfo->total_iMCU_rows)
425 set_bottom_pointers(cinfo); 426 set_bottom_pointers(cinfo);
426 pmain->context_state = CTX_PROCESS_IMCU; 427 mainp->context_state = CTX_PROCESS_IMCU;
427 /*FALLTHROUGH*/ 428 /*FALLTHROUGH*/
428 case CTX_PROCESS_IMCU: 429 case CTX_PROCESS_IMCU:
429 /* Call postprocessor using previously set pointers */ 430 /* Call postprocessor using previously set pointers */
430 (*cinfo->post->post_process_data) (cinfo, pmain->xbuffer[pmain->whichptr], 431 (*cinfo->post->post_process_data) (cinfo, mainp->xbuffer[mainp->whichptr],
431 &pmain->rowgroup_ctr, pmain->rowgroups_avail, 432 &mainp->rowgroup_ctr, mainp->rowgroups_avail,
432 output_buf, out_row_ctr, out_rows_avail); 433 output_buf, out_row_ctr, out_rows_avail);
433 if (pmain->rowgroup_ctr < pmain->rowgroups_avail) 434 if (mainp->rowgroup_ctr < mainp->rowgroups_avail)
434 return; /* Need to suspend */ 435 return; /* Need to suspend */
435 /* After the first iMCU, change wraparound pointers to normal state */ 436 /* After the first iMCU, change wraparound pointers to normal state */
436 if (pmain->iMCU_row_ctr == 1) 437 if (mainp->iMCU_row_ctr == 1)
437 set_wraparound_pointers(cinfo); 438 set_wraparound_pointers(cinfo);
438 /* Prepare to load new iMCU row using other xbuffer list */ 439 /* Prepare to load new iMCU row using other xbuffer list */
439 pmain->whichptr ^= 1; /* 0=>1 or 1=>0 */ 440 mainp->whichptr ^= 1; /* 0=>1 or 1=>0 */
440 pmain->buffer_full = FALSE; 441 mainp->buffer_full = FALSE;
441 /* Still need to process last row group of this iMCU row, */ 442 /* Still need to process last row group of this iMCU row, */
442 /* which is saved at index M+1 of the other xbuffer */ 443 /* which is saved at index M+1 of the other xbuffer */
443 pmain->rowgroup_ctr = (JDIMENSION) (cinfo->min_DCT_v_scaled_size + 1); 444 mainp->rowgroup_ctr = (JDIMENSION) (cinfo->min_DCT_v_scaled_size + 1);
444 pmain->rowgroups_avail = (JDIMENSION) (cinfo->min_DCT_v_scaled_size + 2); 445 mainp->rowgroups_avail = (JDIMENSION) (cinfo->min_DCT_v_scaled_size + 2);
445 pmain->context_state = CTX_POSTPONED_ROW; 446 mainp->context_state = CTX_POSTPONED_ROW;
446 } 447 }
447} 448}
448 449
@@ -475,15 +476,15 @@ process_data_crank_post (j_decompress_ptr cinfo,
475GLOBAL(void) 476GLOBAL(void)
476jinit_d_main_controller (j_decompress_ptr cinfo, boolean need_full_buffer) 477jinit_d_main_controller (j_decompress_ptr cinfo, boolean need_full_buffer)
477{ 478{
478 my_main_ptr pmain; 479 my_main_ptr mainp;
479 int ci, rgroup, ngroups; 480 int ci, rgroup, ngroups;
480 jpeg_component_info *compptr; 481 jpeg_component_info *compptr;
481 482
482 pmain = (my_main_ptr) 483 mainp = (my_main_ptr)
483 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 484 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
484 SIZEOF(my_main_controller)); 485 SIZEOF(my_main_controller));
485 cinfo->main = (struct jpeg_d_main_controller *) pmain; 486 cinfo->main = &mainp->pub;
486 pmain->pub.start_pass = start_pass_main; 487 mainp->pub.start_pass = start_pass_main;
487 488
488 if (need_full_buffer) /* shouldn't happen */ 489 if (need_full_buffer) /* shouldn't happen */
489 ERREXIT(cinfo, JERR_BAD_BUFFER_MODE); 490 ERREXIT(cinfo, JERR_BAD_BUFFER_MODE);
@@ -504,9 +505,9 @@ jinit_d_main_controller (j_decompress_ptr cinfo, boolean need_full_buffer)
504 ci++, compptr++) { 505 ci++, compptr++) {
505 rgroup = (compptr->v_samp_factor * compptr->DCT_v_scaled_size) / 506 rgroup = (compptr->v_samp_factor * compptr->DCT_v_scaled_size) /
506 cinfo->min_DCT_v_scaled_size; /* height of a row group of component */ 507 cinfo->min_DCT_v_scaled_size; /* height of a row group of component */
507 pmain->buffer[ci] = (*cinfo->mem->alloc_sarray) 508 mainp->buffer[ci] = (*cinfo->mem->alloc_sarray)
508 ((j_common_ptr) cinfo, JPOOL_IMAGE, 509 ((j_common_ptr) cinfo, JPOOL_IMAGE,
509 compptr->width_in_blocks * compptr->DCT_h_scaled_size, 510 compptr->width_in_blocks * ((JDIMENSION) compptr->DCT_h_scaled_size),
510 (JDIMENSION) (rgroup * ngroups)); 511 (JDIMENSION) (rgroup * ngroups));
511 } 512 }
512} 513}
diff --git a/gs/jpeg/jdmarker.c b/gs/jpeg/jdmarker.c
index 8ba4f86d1..3fbe5c165 100644
--- a/gs/jpeg/jdmarker.c
+++ b/gs/jpeg/jdmarker.c
@@ -2,7 +2,7 @@
2 * jdmarker.c 2 * jdmarker.c
3 * 3 *
4 * Copyright (C) 1991-1998, Thomas G. Lane. 4 * Copyright (C) 1991-1998, Thomas G. Lane.
5 * Modified 2009 by Guido Vollbeding. 5 * Modified 2009-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -23,24 +23,24 @@ typedef enum { /* JPEG marker codes */
23 M_SOF1 = 0xc1, 23 M_SOF1 = 0xc1,
24 M_SOF2 = 0xc2, 24 M_SOF2 = 0xc2,
25 M_SOF3 = 0xc3, 25 M_SOF3 = 0xc3,
26 26
27 M_SOF5 = 0xc5, 27 M_SOF5 = 0xc5,
28 M_SOF6 = 0xc6, 28 M_SOF6 = 0xc6,
29 M_SOF7 = 0xc7, 29 M_SOF7 = 0xc7,
30 30
31 M_JPG = 0xc8, 31 M_JPG = 0xc8,
32 M_SOF9 = 0xc9, 32 M_SOF9 = 0xc9,
33 M_SOF10 = 0xca, 33 M_SOF10 = 0xca,
34 M_SOF11 = 0xcb, 34 M_SOF11 = 0xcb,
35 35
36 M_SOF13 = 0xcd, 36 M_SOF13 = 0xcd,
37 M_SOF14 = 0xce, 37 M_SOF14 = 0xce,
38 M_SOF15 = 0xcf, 38 M_SOF15 = 0xcf,
39 39
40 M_DHT = 0xc4, 40 M_DHT = 0xc4,
41 41
42 M_DAC = 0xcc, 42 M_DAC = 0xcc,
43 43
44 M_RST0 = 0xd0, 44 M_RST0 = 0xd0,
45 M_RST1 = 0xd1, 45 M_RST1 = 0xd1,
46 M_RST2 = 0xd2, 46 M_RST2 = 0xd2,
@@ -49,7 +49,7 @@ typedef enum { /* JPEG marker codes */
49 M_RST5 = 0xd5, 49 M_RST5 = 0xd5,
50 M_RST6 = 0xd6, 50 M_RST6 = 0xd6,
51 M_RST7 = 0xd7, 51 M_RST7 = 0xd7,
52 52
53 M_SOI = 0xd8, 53 M_SOI = 0xd8,
54 M_EOI = 0xd9, 54 M_EOI = 0xd9,
55 M_SOS = 0xda, 55 M_SOS = 0xda,
@@ -58,7 +58,7 @@ typedef enum { /* JPEG marker codes */
58 M_DRI = 0xdd, 58 M_DRI = 0xdd,
59 M_DHP = 0xde, 59 M_DHP = 0xde,
60 M_EXP = 0xdf, 60 M_EXP = 0xdf,
61 61
62 M_APP0 = 0xe0, 62 M_APP0 = 0xe0,
63 M_APP1 = 0xe1, 63 M_APP1 = 0xe1,
64 M_APP2 = 0xe2, 64 M_APP2 = 0xe2,
@@ -75,13 +75,14 @@ typedef enum { /* JPEG marker codes */
75 M_APP13 = 0xed, 75 M_APP13 = 0xed,
76 M_APP14 = 0xee, 76 M_APP14 = 0xee,
77 M_APP15 = 0xef, 77 M_APP15 = 0xef,
78 78
79 M_JPG0 = 0xf0, 79 M_JPG0 = 0xf0,
80 M_JPG8 = 0xf8,
80 M_JPG13 = 0xfd, 81 M_JPG13 = 0xfd,
81 M_COM = 0xfe, 82 M_COM = 0xfe,
82 83
83 M_TEM = 0x01, 84 M_TEM = 0x01,
84 85
85 M_ERROR = 0x100 86 M_ERROR = 0x100
86} JPEG_MARKER; 87} JPEG_MARKER;
87 88
@@ -217,6 +218,7 @@ get_soi (j_decompress_ptr cinfo)
217 /* Set initial assumptions for colorspace etc */ 218 /* Set initial assumptions for colorspace etc */
218 219
219 cinfo->jpeg_color_space = JCS_UNKNOWN; 220 cinfo->jpeg_color_space = JCS_UNKNOWN;
221 cinfo->color_transform = JCT_NONE;
220 cinfo->CCIR601_sampling = FALSE; /* Assume non-CCIR sampling??? */ 222 cinfo->CCIR601_sampling = FALSE; /* Assume non-CCIR sampling??? */
221 223
222 cinfo->saw_JFIF_marker = FALSE; 224 cinfo->saw_JFIF_marker = FALSE;
@@ -240,7 +242,7 @@ get_sof (j_decompress_ptr cinfo, boolean is_baseline, boolean is_prog,
240/* Process a SOFn marker */ 242/* Process a SOFn marker */
241{ 243{
242 INT32 length; 244 INT32 length;
243 int c, ci; 245 int c, ci, i;
244 jpeg_component_info * compptr; 246 jpeg_component_info * compptr;
245 INPUT_VARS(cinfo); 247 INPUT_VARS(cinfo);
246 248
@@ -267,8 +269,8 @@ get_sof (j_decompress_ptr cinfo, boolean is_baseline, boolean is_prog,
267 /* We don't support files in which the image height is initially specified */ 269 /* We don't support files in which the image height is initially specified */
268 /* as 0 and is later redefined by DNL. As long as we have to check that, */ 270 /* as 0 and is later redefined by DNL. As long as we have to check that, */
269 /* might as well have a general sanity check. */ 271 /* might as well have a general sanity check. */
270 if (cinfo->image_height <= 0 || cinfo->image_width <= 0 272 if (cinfo->image_height <= 0 || cinfo->image_width <= 0 ||
271 || cinfo->num_components <= 0) 273 cinfo->num_components <= 0)
272 ERREXIT(cinfo, JERR_EMPTY_IMAGE); 274 ERREXIT(cinfo, JERR_EMPTY_IMAGE);
273 275
274 if (length != (cinfo->num_components * 3)) 276 if (length != (cinfo->num_components * 3))
@@ -278,33 +280,27 @@ get_sof (j_decompress_ptr cinfo, boolean is_baseline, boolean is_prog,
278 cinfo->comp_info = (jpeg_component_info *) (*cinfo->mem->alloc_small) 280 cinfo->comp_info = (jpeg_component_info *) (*cinfo->mem->alloc_small)
279 ((j_common_ptr) cinfo, JPOOL_IMAGE, 281 ((j_common_ptr) cinfo, JPOOL_IMAGE,
280 cinfo->num_components * SIZEOF(jpeg_component_info)); 282 cinfo->num_components * SIZEOF(jpeg_component_info));
281
282 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
283 ci++, compptr++) {
284 int component_id;
285 int j;
286 283
287 compptr->component_index = ci; 284 for (ci = 0; ci < cinfo->num_components; ci++) {
288 INPUT_BYTE(cinfo, component_id, return FALSE); 285 INPUT_BYTE(cinfo, c, return FALSE);
289 for (j = 0; j < ci; j++) { 286 /* Check to see whether component id has already been seen */
290 /* Check to see whether component id has already been seen 287 /* (in violation of the spec, but unfortunately seen in some */
291 (in violation of the spec, but unfortunately seen in some 288 /* files). If so, create "fake" component id equal to the */
292 files). If so, create "fake" component id equal to the 289 /* max id seen so far + 1. */
293 max id seen so far + 1. */ 290 for (i = 0, compptr = cinfo->comp_info; i < ci; i++, compptr++) {
294 if (cinfo->comp_info[j].component_id == component_id) { 291 if (c == compptr->component_id) {
295 int max_id = cinfo->comp_info[0].component_id; 292 compptr = cinfo->comp_info;
296 int k; 293 c = compptr->component_id;
297 for (k = 1; k < ci; k++) { 294 compptr++;
298 int k_id = cinfo->comp_info[k].component_id; 295 for (i = 1; i < ci; i++, compptr++) {
299 if (k_id > max_id) max_id = k_id; 296 if (compptr->component_id > c) c = compptr->component_id;
300 } 297 }
301 component_id = max_id + 1; 298 c++;
302 break; 299 break;
303 } 300 }
304 } 301 }
305 compptr->component_id = component_id; 302 compptr->component_id = c;
306 303 compptr->component_index = ci;
307
308 INPUT_BYTE(cinfo, c, return FALSE); 304 INPUT_BYTE(cinfo, c, return FALSE);
309 compptr->h_samp_factor = (c >> 4) & 15; 305 compptr->h_samp_factor = (c >> 4) & 15;
310 compptr->v_samp_factor = (c ) & 15; 306 compptr->v_samp_factor = (c ) & 15;
@@ -327,12 +323,12 @@ get_sos (j_decompress_ptr cinfo)
327/* Process a SOS marker */ 323/* Process a SOS marker */
328{ 324{
329 INT32 length; 325 INT32 length;
330 int i, ci, n, c, cc; 326 int c, ci, i, n;
331 jpeg_component_info * compptr; 327 jpeg_component_info * compptr;
332 INPUT_VARS(cinfo); 328 INPUT_VARS(cinfo);
333 329
334 if (! cinfo->marker->saw_SOF) 330 if (! cinfo->marker->saw_SOF)
335 ERREXIT(cinfo, JERR_SOS_NO_SOF); 331 ERREXITS(cinfo, JERR_SOF_BEFORE, "SOS");
336 332
337 INPUT_2BYTES(cinfo, length, return FALSE); 333 INPUT_2BYTES(cinfo, length, return FALSE);
338 334
@@ -350,40 +346,41 @@ get_sos (j_decompress_ptr cinfo)
350 /* Collect the component-spec parameters */ 346 /* Collect the component-spec parameters */
351 347
352 for (i = 0; i < n; i++) { 348 for (i = 0; i < n; i++) {
353 int j;
354 INPUT_BYTE(cinfo, cc, return FALSE);
355 INPUT_BYTE(cinfo, c, return FALSE); 349 INPUT_BYTE(cinfo, c, return FALSE);
356 350
357 /* Detect the case where component id's are not unique, and, if so, 351 /* Detect the case where component id's are not unique, and, if so, */
358 create a fake component id using the same logic as in get_sof. */ 352 /* create a fake component id using the same logic as in get_sof. */
359 for (j = 0; j < i; j++) { 353 /* Note: This also ensures that all of the SOF components are */
360 if (cc == cinfo->cur_comp_info[j]->component_id) { 354 /* referenced in the single scan case, which prevents access to */
361 int k; 355 /* uninitialized memory in later decoding stages. */
362 int max_id = cinfo->cur_comp_info[0]->component_id; 356 for (ci = 0; ci < i; ci++) {
363 for (k = 1; k < i; k++) { 357 if (c == cinfo->cur_comp_info[ci]->component_id) {
364 int k_id = cinfo->cur_comp_info[k]->component_id; 358 c = cinfo->cur_comp_info[0]->component_id;
365 if (k_id > max_id) max_id = k_id; 359 for (ci = 1; ci < i; ci++) {
360 compptr = cinfo->cur_comp_info[ci];
361 if (compptr->component_id > c) c = compptr->component_id;
366 } 362 }
367 cc = max_id + 1; 363 c++;
368 break; 364 break;
369 } 365 }
370 } 366 }
371 367
372 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components; 368 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
373 ci++, compptr++) { 369 ci++, compptr++) {
374 if (cc == compptr->component_id) 370 if (c == compptr->component_id)
375 goto id_found; 371 goto id_found;
376 } 372 }
377 373
378 ERREXIT1(cinfo, JERR_BAD_COMPONENT_ID, cc); 374 ERREXIT1(cinfo, JERR_BAD_COMPONENT_ID, c);
379 375
380 id_found: 376 id_found:
381 377
382 cinfo->cur_comp_info[i] = compptr; 378 cinfo->cur_comp_info[i] = compptr;
379 INPUT_BYTE(cinfo, c, return FALSE);
383 compptr->dc_tbl_no = (c >> 4) & 15; 380 compptr->dc_tbl_no = (c >> 4) & 15;
384 compptr->ac_tbl_no = (c ) & 15; 381 compptr->ac_tbl_no = (c ) & 15;
385 382
386 TRACEMS3(cinfo, 1, JTRC_SOS_COMPONENT, cc, 383 TRACEMS3(cinfo, 1, JTRC_SOS_COMPONENT, compptr->component_id,
387 compptr->dc_tbl_no, compptr->ac_tbl_no); 384 compptr->dc_tbl_no, compptr->ac_tbl_no);
388 } 385 }
389 386
@@ -499,6 +496,8 @@ get_dht (j_decompress_ptr cinfo)
499 if (count > 256 || ((INT32) count) > length) 496 if (count > 256 || ((INT32) count) > length)
500 ERREXIT(cinfo, JERR_BAD_HUFF_TABLE); 497 ERREXIT(cinfo, JERR_BAD_HUFF_TABLE);
501 498
499 MEMZERO(huffval, SIZEOF(huffval)); /* pre-zero array for later copy */
500
502 for (i = 0; i < count; i++) 501 for (i = 0; i < count; i++)
503 INPUT_BYTE(cinfo, huffval[i], return FALSE); 502 INPUT_BYTE(cinfo, huffval[i], return FALSE);
504 503
@@ -643,6 +642,68 @@ get_dri (j_decompress_ptr cinfo)
643} 642}
644 643
645 644
645LOCAL(boolean)
646get_lse (j_decompress_ptr cinfo)
647/* Process an LSE marker */
648{
649 INT32 length;
650 unsigned int tmp;
651 int cid;
652 INPUT_VARS(cinfo);
653
654 if (! cinfo->marker->saw_SOF)
655 ERREXITS(cinfo, JERR_SOF_BEFORE, "LSE");
656
657 if (cinfo->num_components < 3) goto bad;
658
659 INPUT_2BYTES(cinfo, length, return FALSE);
660
661 if (length != 24)
662 ERREXIT(cinfo, JERR_BAD_LENGTH);
663
664 INPUT_BYTE(cinfo, tmp, return FALSE);
665 if (tmp != 0x0D) /* ID inverse transform specification */
666 ERREXIT1(cinfo, JERR_UNKNOWN_MARKER, cinfo->unread_marker);
667 INPUT_2BYTES(cinfo, tmp, return FALSE);
668 if (tmp != MAXJSAMPLE) goto bad; /* MAXTRANS */
669 INPUT_BYTE(cinfo, tmp, return FALSE);
670 if (tmp != 3) goto bad; /* Nt=3 */
671 INPUT_BYTE(cinfo, cid, return FALSE);
672 if (cid != cinfo->comp_info[1].component_id) goto bad;
673 INPUT_BYTE(cinfo, cid, return FALSE);
674 if (cid != cinfo->comp_info[0].component_id) goto bad;
675 INPUT_BYTE(cinfo, cid, return FALSE);
676 if (cid != cinfo->comp_info[2].component_id) goto bad;
677 INPUT_BYTE(cinfo, tmp, return FALSE);
678 if (tmp != 0x80) goto bad; /* F1: CENTER1=1, NORM1=0 */
679 INPUT_2BYTES(cinfo, tmp, return FALSE);
680 if (tmp != 0) goto bad; /* A(1,1)=0 */
681 INPUT_2BYTES(cinfo, tmp, return FALSE);
682 if (tmp != 0) goto bad; /* A(1,2)=0 */
683 INPUT_BYTE(cinfo, tmp, return FALSE);
684 if (tmp != 0) goto bad; /* F2: CENTER2=0, NORM2=0 */
685 INPUT_2BYTES(cinfo, tmp, return FALSE);
686 if (tmp != 1) goto bad; /* A(2,1)=1 */
687 INPUT_2BYTES(cinfo, tmp, return FALSE);
688 if (tmp != 0) goto bad; /* A(2,2)=0 */
689 INPUT_BYTE(cinfo, tmp, return FALSE);
690 if (tmp != 0) goto bad; /* F3: CENTER3=0, NORM3=0 */
691 INPUT_2BYTES(cinfo, tmp, return FALSE);
692 if (tmp != 1) goto bad; /* A(3,1)=1 */
693 INPUT_2BYTES(cinfo, tmp, return FALSE);
694 if (tmp != 0) { /* A(3,2)=0 */
695 bad:
696 ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
697 }
698
699 /* OK, valid transform that we can handle. */
700 cinfo->color_transform = JCT_SUBTRACT_GREEN;
701
702 INPUT_SYNC(cinfo);
703 return TRUE;
704}
705
706
646/* 707/*
647 * Routines for processing APPn and COM markers. 708 * Routines for processing APPn and COM markers.
648 * These are either saved in memory or discarded, per application request. 709 * These are either saved in memory or discarded, per application request.
@@ -679,12 +740,13 @@ examine_app0 (j_decompress_ptr cinfo, JOCTET FAR * data,
679 cinfo->X_density = (GETJOCTET(data[8]) << 8) + GETJOCTET(data[9]); 740 cinfo->X_density = (GETJOCTET(data[8]) << 8) + GETJOCTET(data[9]);
680 cinfo->Y_density = (GETJOCTET(data[10]) << 8) + GETJOCTET(data[11]); 741 cinfo->Y_density = (GETJOCTET(data[10]) << 8) + GETJOCTET(data[11]);
681 /* Check version. 742 /* Check version.
682 * Major version must be 1, anything else signals an incompatible change. 743 * Major version must be 1 or 2, anything else signals an incompatible
744 * change.
683 * (We used to treat this as an error, but now it's a nonfatal warning, 745 * (We used to treat this as an error, but now it's a nonfatal warning,
684 * because some bozo at Hijaak couldn't read the spec.) 746 * because some bozo at Hijaak couldn't read the spec.)
685 * Minor version should be 0..2, but process anyway if newer. 747 * Minor version should be 0..2, but process anyway if newer.
686 */ 748 */
687 if (cinfo->JFIF_major_version != 1) 749 if (cinfo->JFIF_major_version != 1 && cinfo->JFIF_major_version != 2)
688 WARNMS2(cinfo, JWRN_JFIF_MAJOR, 750 WARNMS2(cinfo, JWRN_JFIF_MAJOR,
689 cinfo->JFIF_major_version, cinfo->JFIF_minor_version); 751 cinfo->JFIF_major_version, cinfo->JFIF_minor_version);
690 /* Generate trace messages */ 752 /* Generate trace messages */
@@ -1097,32 +1159,37 @@ read_markers (j_decompress_ptr cinfo)
1097 return JPEG_SUSPENDED; 1159 return JPEG_SUSPENDED;
1098 cinfo->unread_marker = 0; /* processed the marker */ 1160 cinfo->unread_marker = 0; /* processed the marker */
1099 return JPEG_REACHED_SOS; 1161 return JPEG_REACHED_SOS;
1100 1162
1101 case M_EOI: 1163 case M_EOI:
1102 TRACEMS(cinfo, 1, JTRC_EOI); 1164 TRACEMS(cinfo, 1, JTRC_EOI);
1103 cinfo->unread_marker = 0; /* processed the marker */ 1165 cinfo->unread_marker = 0; /* processed the marker */
1104 return JPEG_REACHED_EOI; 1166 return JPEG_REACHED_EOI;
1105 1167
1106 case M_DAC: 1168 case M_DAC:
1107 if (! get_dac(cinfo)) 1169 if (! get_dac(cinfo))
1108 return JPEG_SUSPENDED; 1170 return JPEG_SUSPENDED;
1109 break; 1171 break;
1110 1172
1111 case M_DHT: 1173 case M_DHT:
1112 if (! get_dht(cinfo)) 1174 if (! get_dht(cinfo))
1113 return JPEG_SUSPENDED; 1175 return JPEG_SUSPENDED;
1114 break; 1176 break;
1115 1177
1116 case M_DQT: 1178 case M_DQT:
1117 if (! get_dqt(cinfo)) 1179 if (! get_dqt(cinfo))
1118 return JPEG_SUSPENDED; 1180 return JPEG_SUSPENDED;
1119 break; 1181 break;
1120 1182
1121 case M_DRI: 1183 case M_DRI:
1122 if (! get_dri(cinfo)) 1184 if (! get_dri(cinfo))
1123 return JPEG_SUSPENDED; 1185 return JPEG_SUSPENDED;
1124 break; 1186 break;
1125 1187
1188 case M_JPG8:
1189 if (! get_lse(cinfo))
1190 return JPEG_SUSPENDED;
1191 break;
1192
1126 case M_APP0: 1193 case M_APP0:
1127 case M_APP1: 1194 case M_APP1:
1128 case M_APP2: 1195 case M_APP2:
@@ -1143,7 +1210,7 @@ read_markers (j_decompress_ptr cinfo)
1143 cinfo->unread_marker - (int) M_APP0]) (cinfo)) 1210 cinfo->unread_marker - (int) M_APP0]) (cinfo))
1144 return JPEG_SUSPENDED; 1211 return JPEG_SUSPENDED;
1145 break; 1212 break;
1146 1213
1147 case M_COM: 1214 case M_COM:
1148 if (! (*((my_marker_ptr) cinfo->marker)->process_COM) (cinfo)) 1215 if (! (*((my_marker_ptr) cinfo->marker)->process_COM) (cinfo))
1149 return JPEG_SUSPENDED; 1216 return JPEG_SUSPENDED;
@@ -1352,7 +1419,7 @@ jinit_marker_reader (j_decompress_ptr cinfo)
1352 marker = (my_marker_ptr) 1419 marker = (my_marker_ptr)
1353 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_PERMANENT, 1420 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_PERMANENT,
1354 SIZEOF(my_marker_reader)); 1421 SIZEOF(my_marker_reader));
1355 cinfo->marker = (struct jpeg_marker_reader *) marker; 1422 cinfo->marker = &marker->pub;
1356 /* Initialize public method pointers */ 1423 /* Initialize public method pointers */
1357 marker->pub.reset_marker_reader = reset_marker_reader; 1424 marker->pub.reset_marker_reader = reset_marker_reader;
1358 marker->pub.read_markers = read_markers; 1425 marker->pub.read_markers = read_markers;
diff --git a/gs/jpeg/jdmaster.c b/gs/jpeg/jdmaster.c
index fef72a21b..6f42d3c5a 100644
--- a/gs/jpeg/jdmaster.c
+++ b/gs/jpeg/jdmaster.c
@@ -2,7 +2,7 @@
2 * jdmaster.c 2 * jdmaster.c
3 * 3 *
4 * Copyright (C) 1991-1997, Thomas G. Lane. 4 * Copyright (C) 1991-1997, Thomas G. Lane.
5 * Modified 2002-2011 by Guido Vollbeding. 5 * Modified 2002-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -51,7 +51,8 @@ use_merged_upsample (j_decompress_ptr cinfo)
51 /* jdmerge.c only supports YCC=>RGB color conversion */ 51 /* jdmerge.c only supports YCC=>RGB color conversion */
52 if (cinfo->jpeg_color_space != JCS_YCbCr || cinfo->num_components != 3 || 52 if (cinfo->jpeg_color_space != JCS_YCbCr || cinfo->num_components != 3 ||
53 cinfo->out_color_space != JCS_RGB || 53 cinfo->out_color_space != JCS_RGB ||
54 cinfo->out_color_components != RGB_PIXELSIZE) 54 cinfo->out_color_components != RGB_PIXELSIZE ||
55 cinfo->color_transform)
55 return FALSE; 56 return FALSE;
56 /* and it only handles 2h1v or 2h2v sampling ratios */ 57 /* and it only handles 2h1v or 2h2v sampling ratios */
57 if (cinfo->comp_info[0].h_samp_factor != 2 || 58 if (cinfo->comp_info[0].h_samp_factor != 2 ||
@@ -158,9 +159,11 @@ jpeg_calc_output_dimensions (j_decompress_ptr cinfo)
158 cinfo->out_color_components = 1; 159 cinfo->out_color_components = 1;
159 break; 160 break;
160 case JCS_RGB: 161 case JCS_RGB:
162 case JCS_BG_RGB:
161 cinfo->out_color_components = RGB_PIXELSIZE; 163 cinfo->out_color_components = RGB_PIXELSIZE;
162 break; 164 break;
163 case JCS_YCbCr: 165 case JCS_YCbCr:
166 case JCS_BG_YCC:
164 cinfo->out_color_components = 3; 167 cinfo->out_color_components = 3;
165 break; 168 break;
166 case JCS_CMYK: 169 case JCS_CMYK:
@@ -273,10 +276,19 @@ master_selection (j_decompress_ptr cinfo)
273 long samplesperrow; 276 long samplesperrow;
274 JDIMENSION jd_samplesperrow; 277 JDIMENSION jd_samplesperrow;
275 278
279 /* For now, precision must match compiled-in value... */
280 if (cinfo->data_precision != BITS_IN_JSAMPLE)
281 ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision);
282
276 /* Initialize dimensions and other stuff */ 283 /* Initialize dimensions and other stuff */
277 jpeg_calc_output_dimensions(cinfo); 284 jpeg_calc_output_dimensions(cinfo);
278 prepare_range_limit_table(cinfo); 285 prepare_range_limit_table(cinfo);
279 286
287 /* Sanity check on image dimensions */
288 if (cinfo->output_height <= 0 || cinfo->output_width <= 0 ||
289 cinfo->out_color_components <= 0)
290 ERREXIT(cinfo, JERR_EMPTY_IMAGE);
291
280 /* Width of an output scanline must be representable as JDIMENSION. */ 292 /* Width of an output scanline must be representable as JDIMENSION. */
281 samplesperrow = (long) cinfo->output_width * (long) cinfo->out_color_components; 293 samplesperrow = (long) cinfo->output_width * (long) cinfo->out_color_components;
282 jd_samplesperrow = (JDIMENSION) samplesperrow; 294 jd_samplesperrow = (JDIMENSION) samplesperrow;
@@ -521,7 +533,7 @@ jinit_master_decompress (j_decompress_ptr cinfo)
521 master = (my_master_ptr) 533 master = (my_master_ptr)
522 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, 534 (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
523 SIZEOF(my_decomp_master)); 535 SIZEOF(my_decomp_master));
524 cinfo->master = (struct jpeg_decomp_master *) master; 536 cinfo->master = &master->pub;
525 master->pub.prepare_for_output_pass = prepare_for_output_pass; 537 master->pub.prepare_for_output_pass = prepare_for_output_pass;
526 master->pub.finish_output_pass = finish_output_pass; 538 master->pub.finish_output_pass = finish_output_pass;
527 539
diff --git a/gs/jpeg/jdmerge.c b/gs/jpeg/jdmerge.c
index 37444468c..a6bde33c1 100644
--- a/gs/jpeg/jdmerge.c
+++ b/gs/jpeg/jdmerge.c
@@ -2,6 +2,7 @@
2 * jdmerge.c 2 * jdmerge.c
3 * 3 *
4 * Copyright (C) 1994-1996, Thomas G. Lane. 4 * Copyright (C) 1994-1996, Thomas G. Lane.
5 * Modified 2013 by Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
7 * 8 *
@@ -103,17 +104,17 @@ build_ycc_rgb_table (j_decompress_ptr cinfo)
103 for (i = 0, x = -CENTERJSAMPLE; i <= MAXJSAMPLE; i++, x++) { 104 for (i = 0, x = -CENTERJSAMPLE; i <= MAXJSAMPLE; i++, x++) {
104 /* i is the actual input pixel value, in the range 0..MAXJSAMPLE */ 105 /* i is the actual input pixel value, in the range 0..MAXJSAMPLE */
105 /* The Cb or Cr value we are thinking of is x = i - CENTERJSAMPLE */ 106 /* The Cb or Cr value we are thinking of is x = i - CENTERJSAMPLE */
106 /* Cr=>R value is nearest int to 1.40200 * x */ 107 /* Cr=>R value is nearest int to 1.402 * x */
107 upsample->Cr_r_tab[i] = (int) 108 upsample->Cr_r_tab[i] = (int)
108 RIGHT_SHIFT(FIX(1.40200) * x + ONE_HALF, SCALEBITS); 109 RIGHT_SHIFT(FIX(1.402) * x + ONE_HALF, SCALEBITS);
109 /* Cb=>B value is nearest int to 1.77200 * x */ 110 /* Cb=>B value is nearest int to 1.772 * x */
110 upsample->Cb_b_tab[i] = (int) 111 upsample->Cb_b_tab[i] = (int)
111 RIGHT_SHIFT(FIX(1.77200) * x + ONE_HALF, SCALEBITS); 112 RIGHT_SHIFT(FIX(1.772) * x + ONE_HALF, SCALEBITS);
112 /* Cr=>G value is scaled-up -0.71414 * x */ 113 /* Cr=>G value is scaled-up -0.714136286 * x */
113 upsample->Cr_g_tab[i] = (- FIX(0.71414)) * x; 114 upsample->Cr_g_tab[i] = (- FIX(0.714136286)) * x;
114 /* Cb=>G value is scaled-up -0.34414 * x */ 115 /* Cb=>G value is scaled-up -0.344136286 * x */
115 /* We also add in ONE_HALF so that need not do it in inner loop */ 116 /* We also add in ONE_HALF so that need not do it in inner loop */
116 upsample->Cb_g_tab[i] = (- FIX(0.34414)) * x + ONE_HALF; 117 upsample->Cb_g_tab[i] = (- FIX(0.344136286)) * x + ONE_HALF;
117 } 118 }
118} 119}
119 120
diff --git a/gs/jpeg/jerror.c b/gs/jpeg/jerror.c
index 3da7be86a..8c0b9e071 100644
--- a/gs/jpeg/jerror.c
+++ b/gs/jpeg/jerror.c
@@ -2,6 +2,7 @@
2 * jerror.c 2 * jerror.c
3 * 3 *
4 * Copyright (C) 1991-1998, Thomas G. Lane. 4 * Copyright (C) 1991-1998, Thomas G. Lane.
5 * Modified 2012 by Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
7 * 8 *
@@ -66,7 +67,7 @@ const char * const jpeg_std_message_table[] = {
66 * or jpeg_destroy) at some point. 67 * or jpeg_destroy) at some point.
67 */ 68 */
68 69
69METHODDEF(void) 70METHODDEF(noreturn_t)
70error_exit (j_common_ptr cinfo) 71error_exit (j_common_ptr cinfo)
71{ 72{
72 /* Always display the message */ 73 /* Always display the message */
diff --git a/gs/jpeg/jerror.h b/gs/jpeg/jerror.h
index 1cfb2b19d..a4b661f71 100644
--- a/gs/jpeg/jerror.h
+++ b/gs/jpeg/jerror.h
@@ -2,7 +2,7 @@
2 * jerror.h 2 * jerror.h
3 * 3 *
4 * Copyright (C) 1994-1997, Thomas G. Lane. 4 * Copyright (C) 1994-1997, Thomas G. Lane.
5 * Modified 1997-2009 by Guido Vollbeding. 5 * Modified 1997-2012 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -106,11 +106,11 @@ JMESSAGE(JERR_QUANT_COMPONENTS,
106 "Cannot quantize more than %d color components") 106 "Cannot quantize more than %d color components")
107JMESSAGE(JERR_QUANT_FEW_COLORS, "Cannot quantize to fewer than %d colors") 107JMESSAGE(JERR_QUANT_FEW_COLORS, "Cannot quantize to fewer than %d colors")
108JMESSAGE(JERR_QUANT_MANY_COLORS, "Cannot quantize to more than %d colors") 108JMESSAGE(JERR_QUANT_MANY_COLORS, "Cannot quantize to more than %d colors")
109JMESSAGE(JERR_SOF_BEFORE, "Invalid JPEG file structure: %s before SOF")
109JMESSAGE(JERR_SOF_DUPLICATE, "Invalid JPEG file structure: two SOF markers") 110JMESSAGE(JERR_SOF_DUPLICATE, "Invalid JPEG file structure: two SOF markers")
110JMESSAGE(JERR_SOF_NO_SOS, "Invalid JPEG file structure: missing SOS marker") 111JMESSAGE(JERR_SOF_NO_SOS, "Invalid JPEG file structure: missing SOS marker")
111JMESSAGE(JERR_SOF_UNSUPPORTED, "Unsupported JPEG process: SOF type 0x%02x") 112JMESSAGE(JERR_SOF_UNSUPPORTED, "Unsupported JPEG process: SOF type 0x%02x")
112JMESSAGE(JERR_SOI_DUPLICATE, "Invalid JPEG file structure: two SOI markers") 113JMESSAGE(JERR_SOI_DUPLICATE, "Invalid JPEG file structure: two SOI markers")
113JMESSAGE(JERR_SOS_NO_SOF, "Invalid JPEG file structure: SOS before SOF")
114JMESSAGE(JERR_TFILE_CREATE, "Failed to create temporary file %s") 114JMESSAGE(JERR_TFILE_CREATE, "Failed to create temporary file %s")
115JMESSAGE(JERR_TFILE_READ, "Read failed on temporary file") 115JMESSAGE(JERR_TFILE_READ, "Read failed on temporary file")
116JMESSAGE(JERR_TFILE_SEEK, "Seek failed on temporary file") 116JMESSAGE(JERR_TFILE_SEEK, "Seek failed on temporary file")
diff --git a/gs/jpeg/jfdctint.c b/gs/jpeg/jfdctint.c
index 1dde58c49..a2ef2031b 100644
--- a/gs/jpeg/jfdctint.c
+++ b/gs/jpeg/jfdctint.c
@@ -2,7 +2,7 @@
2 * jfdctint.c 2 * jfdctint.c
3 * 3 *
4 * Copyright (C) 1991-1996, Thomas G. Lane. 4 * Copyright (C) 1991-1996, Thomas G. Lane.
5 * Modification developed 2003-2009 by Guido Vollbeding. 5 * Modification developed 2003-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -165,16 +165,18 @@ jpeg_fdct_islow (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
165 int ctr; 165 int ctr;
166 SHIFT_TEMPS 166 SHIFT_TEMPS
167 167
168 /* Pass 1: process rows. */ 168 /* Pass 1: process rows.
169 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 169 * Note results are scaled up by sqrt(8) compared to a true DCT;
170 /* furthermore, we scale the results by 2**PASS1_BITS. */ 170 * furthermore, we scale the results by 2**PASS1_BITS.
171 * cK represents sqrt(2) * cos(K*pi/16).
172 */
171 173
172 dataptr = data; 174 dataptr = data;
173 for (ctr = 0; ctr < DCTSIZE; ctr++) { 175 for (ctr = 0; ctr < DCTSIZE; ctr++) {
174 elemptr = sample_data[ctr] + start_col; 176 elemptr = sample_data[ctr] + start_col;
175 177
176 /* Even part per LL&M figure 1 --- note that published figure is faulty; 178 /* Even part per LL&M figure 1 --- note that published figure is faulty;
177 * rotator "sqrt(2)*c1" should be "sqrt(2)*c6". 179 * rotator "c1" should be "c6".
178 */ 180 */
179 181
180 tmp0 = GETJSAMPLE(elemptr[0]) + GETJSAMPLE(elemptr[7]); 182 tmp0 = GETJSAMPLE(elemptr[0]) + GETJSAMPLE(elemptr[7]);
@@ -196,47 +198,49 @@ jpeg_fdct_islow (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
196 dataptr[0] = (DCTELEM) ((tmp10 + tmp11 - 8 * CENTERJSAMPLE) << PASS1_BITS); 198 dataptr[0] = (DCTELEM) ((tmp10 + tmp11 - 8 * CENTERJSAMPLE) << PASS1_BITS);
197 dataptr[4] = (DCTELEM) ((tmp10 - tmp11) << PASS1_BITS); 199 dataptr[4] = (DCTELEM) ((tmp10 - tmp11) << PASS1_BITS);
198 200
199 z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100); 201 z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100); /* c6 */
200 /* Add fudge factor here for final descale. */ 202 /* Add fudge factor here for final descale. */
201 z1 += ONE << (CONST_BITS-PASS1_BITS-1); 203 z1 += ONE << (CONST_BITS-PASS1_BITS-1);
202 dataptr[2] = (DCTELEM) RIGHT_SHIFT(z1 + MULTIPLY(tmp12, FIX_0_765366865), 204
203 CONST_BITS-PASS1_BITS); 205 dataptr[2] = (DCTELEM)
204 dataptr[6] = (DCTELEM) RIGHT_SHIFT(z1 - MULTIPLY(tmp13, FIX_1_847759065), 206 RIGHT_SHIFT(z1 + MULTIPLY(tmp12, FIX_0_765366865), /* c2-c6 */
205 CONST_BITS-PASS1_BITS); 207 CONST_BITS-PASS1_BITS);
208 dataptr[6] = (DCTELEM)
209 RIGHT_SHIFT(z1 - MULTIPLY(tmp13, FIX_1_847759065), /* c2+c6 */
210 CONST_BITS-PASS1_BITS);
206 211
207 /* Odd part per figure 8 --- note paper omits factor of sqrt(2). 212 /* Odd part per figure 8 --- note paper omits factor of sqrt(2).
208 * cK represents sqrt(2) * cos(K*pi/16).
209 * i0..i3 in the paper are tmp0..tmp3 here. 213 * i0..i3 in the paper are tmp0..tmp3 here.
210 */ 214 */
211 215
212 tmp10 = tmp0 + tmp3;
213 tmp11 = tmp1 + tmp2;
214 tmp12 = tmp0 + tmp2; 216 tmp12 = tmp0 + tmp2;
215 tmp13 = tmp1 + tmp3; 217 tmp13 = tmp1 + tmp3;
216 z1 = MULTIPLY(tmp12 + tmp13, FIX_1_175875602); /* c3 */ 218
219 z1 = MULTIPLY(tmp12 + tmp13, FIX_1_175875602); /* c3 */
217 /* Add fudge factor here for final descale. */ 220 /* Add fudge factor here for final descale. */
218 z1 += ONE << (CONST_BITS-PASS1_BITS-1); 221 z1 += ONE << (CONST_BITS-PASS1_BITS-1);
219 222
220 tmp0 = MULTIPLY(tmp0, FIX_1_501321110); /* c1+c3-c5-c7 */ 223 tmp12 = MULTIPLY(tmp12, - FIX_0_390180644); /* -c3+c5 */
221 tmp1 = MULTIPLY(tmp1, FIX_3_072711026); /* c1+c3+c5-c7 */ 224 tmp13 = MULTIPLY(tmp13, - FIX_1_961570560); /* -c3-c5 */
222 tmp2 = MULTIPLY(tmp2, FIX_2_053119869); /* c1+c3-c5+c7 */
223 tmp3 = MULTIPLY(tmp3, FIX_0_298631336); /* -c1+c3+c5-c7 */
224 tmp10 = MULTIPLY(tmp10, - FIX_0_899976223); /* c7-c3 */
225 tmp11 = MULTIPLY(tmp11, - FIX_2_562915447); /* -c1-c3 */
226 tmp12 = MULTIPLY(tmp12, - FIX_0_390180644); /* c5-c3 */
227 tmp13 = MULTIPLY(tmp13, - FIX_1_961570560); /* -c3-c5 */
228
229 tmp12 += z1; 225 tmp12 += z1;
230 tmp13 += z1; 226 tmp13 += z1;
231 227
232 dataptr[1] = (DCTELEM) 228 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* -c3+c7 */
233 RIGHT_SHIFT(tmp0 + tmp10 + tmp12, CONST_BITS-PASS1_BITS); 229 tmp0 = MULTIPLY(tmp0, FIX_1_501321110); /* c1+c3-c5-c7 */
234 dataptr[3] = (DCTELEM) 230 tmp3 = MULTIPLY(tmp3, FIX_0_298631336); /* -c1+c3+c5-c7 */
235 RIGHT_SHIFT(tmp1 + tmp11 + tmp13, CONST_BITS-PASS1_BITS); 231 tmp0 += z1 + tmp12;
236 dataptr[5] = (DCTELEM) 232 tmp3 += z1 + tmp13;
237 RIGHT_SHIFT(tmp2 + tmp11 + tmp12, CONST_BITS-PASS1_BITS); 233
238 dataptr[7] = (DCTELEM) 234 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* -c1-c3 */
239 RIGHT_SHIFT(tmp3 + tmp10 + tmp13, CONST_BITS-PASS1_BITS); 235 tmp1 = MULTIPLY(tmp1, FIX_3_072711026); /* c1+c3+c5-c7 */
236 tmp2 = MULTIPLY(tmp2, FIX_2_053119869); /* c1+c3-c5+c7 */
237 tmp1 += z1 + tmp13;
238 tmp2 += z1 + tmp12;
239
240 dataptr[1] = (DCTELEM) RIGHT_SHIFT(tmp0, CONST_BITS-PASS1_BITS);
241 dataptr[3] = (DCTELEM) RIGHT_SHIFT(tmp1, CONST_BITS-PASS1_BITS);
242 dataptr[5] = (DCTELEM) RIGHT_SHIFT(tmp2, CONST_BITS-PASS1_BITS);
243 dataptr[7] = (DCTELEM) RIGHT_SHIFT(tmp3, CONST_BITS-PASS1_BITS);
240 244
241 dataptr += DCTSIZE; /* advance pointer to next row */ 245 dataptr += DCTSIZE; /* advance pointer to next row */
242 } 246 }
@@ -244,12 +248,13 @@ jpeg_fdct_islow (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
244 /* Pass 2: process columns. 248 /* Pass 2: process columns.
245 * We remove the PASS1_BITS scaling, but leave the results scaled up 249 * We remove the PASS1_BITS scaling, but leave the results scaled up
246 * by an overall factor of 8. 250 * by an overall factor of 8.
251 * cK represents sqrt(2) * cos(K*pi/16).
247 */ 252 */
248 253
249 dataptr = data; 254 dataptr = data;
250 for (ctr = DCTSIZE-1; ctr >= 0; ctr--) { 255 for (ctr = DCTSIZE-1; ctr >= 0; ctr--) {
251 /* Even part per LL&M figure 1 --- note that published figure is faulty; 256 /* Even part per LL&M figure 1 --- note that published figure is faulty;
252 * rotator "sqrt(2)*c1" should be "sqrt(2)*c6". 257 * rotator "c1" should be "c6".
253 */ 258 */
254 259
255 tmp0 = dataptr[DCTSIZE*0] + dataptr[DCTSIZE*7]; 260 tmp0 = dataptr[DCTSIZE*0] + dataptr[DCTSIZE*7];
@@ -271,47 +276,49 @@ jpeg_fdct_islow (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
271 dataptr[DCTSIZE*0] = (DCTELEM) RIGHT_SHIFT(tmp10 + tmp11, PASS1_BITS); 276 dataptr[DCTSIZE*0] = (DCTELEM) RIGHT_SHIFT(tmp10 + tmp11, PASS1_BITS);
272 dataptr[DCTSIZE*4] = (DCTELEM) RIGHT_SHIFT(tmp10 - tmp11, PASS1_BITS); 277 dataptr[DCTSIZE*4] = (DCTELEM) RIGHT_SHIFT(tmp10 - tmp11, PASS1_BITS);
273 278
274 z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100); 279 z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100); /* c6 */
275 /* Add fudge factor here for final descale. */ 280 /* Add fudge factor here for final descale. */
276 z1 += ONE << (CONST_BITS+PASS1_BITS-1); 281 z1 += ONE << (CONST_BITS+PASS1_BITS-1);
282
277 dataptr[DCTSIZE*2] = (DCTELEM) 283 dataptr[DCTSIZE*2] = (DCTELEM)
278 RIGHT_SHIFT(z1 + MULTIPLY(tmp12, FIX_0_765366865), CONST_BITS+PASS1_BITS); 284 RIGHT_SHIFT(z1 + MULTIPLY(tmp12, FIX_0_765366865), /* c2-c6 */
285 CONST_BITS+PASS1_BITS);
279 dataptr[DCTSIZE*6] = (DCTELEM) 286 dataptr[DCTSIZE*6] = (DCTELEM)
280 RIGHT_SHIFT(z1 - MULTIPLY(tmp13, FIX_1_847759065), CONST_BITS+PASS1_BITS); 287 RIGHT_SHIFT(z1 - MULTIPLY(tmp13, FIX_1_847759065), /* c2+c6 */
288 CONST_BITS+PASS1_BITS);
281 289
282 /* Odd part per figure 8 --- note paper omits factor of sqrt(2). 290 /* Odd part per figure 8 --- note paper omits factor of sqrt(2).
283 * cK represents sqrt(2) * cos(K*pi/16).
284 * i0..i3 in the paper are tmp0..tmp3 here. 291 * i0..i3 in the paper are tmp0..tmp3 here.
285 */ 292 */
286 293
287 tmp10 = tmp0 + tmp3;
288 tmp11 = tmp1 + tmp2;
289 tmp12 = tmp0 + tmp2; 294 tmp12 = tmp0 + tmp2;
290 tmp13 = tmp1 + tmp3; 295 tmp13 = tmp1 + tmp3;
291 z1 = MULTIPLY(tmp12 + tmp13, FIX_1_175875602); /* c3 */ 296
297 z1 = MULTIPLY(tmp12 + tmp13, FIX_1_175875602); /* c3 */
292 /* Add fudge factor here for final descale. */ 298 /* Add fudge factor here for final descale. */
293 z1 += ONE << (CONST_BITS+PASS1_BITS-1); 299 z1 += ONE << (CONST_BITS+PASS1_BITS-1);
294 300
295 tmp0 = MULTIPLY(tmp0, FIX_1_501321110); /* c1+c3-c5-c7 */ 301 tmp12 = MULTIPLY(tmp12, - FIX_0_390180644); /* -c3+c5 */
296 tmp1 = MULTIPLY(tmp1, FIX_3_072711026); /* c1+c3+c5-c7 */ 302 tmp13 = MULTIPLY(tmp13, - FIX_1_961570560); /* -c3-c5 */
297 tmp2 = MULTIPLY(tmp2, FIX_2_053119869); /* c1+c3-c5+c7 */
298 tmp3 = MULTIPLY(tmp3, FIX_0_298631336); /* -c1+c3+c5-c7 */
299 tmp10 = MULTIPLY(tmp10, - FIX_0_899976223); /* c7-c3 */
300 tmp11 = MULTIPLY(tmp11, - FIX_2_562915447); /* -c1-c3 */
301 tmp12 = MULTIPLY(tmp12, - FIX_0_390180644); /* c5-c3 */
302 tmp13 = MULTIPLY(tmp13, - FIX_1_961570560); /* -c3-c5 */
303
304 tmp12 += z1; 303 tmp12 += z1;
305 tmp13 += z1; 304 tmp13 += z1;
306 305
307 dataptr[DCTSIZE*1] = (DCTELEM) 306 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* -c3+c7 */
308 RIGHT_SHIFT(tmp0 + tmp10 + tmp12, CONST_BITS+PASS1_BITS); 307 tmp0 = MULTIPLY(tmp0, FIX_1_501321110); /* c1+c3-c5-c7 */
309 dataptr[DCTSIZE*3] = (DCTELEM) 308 tmp3 = MULTIPLY(tmp3, FIX_0_298631336); /* -c1+c3+c5-c7 */
310 RIGHT_SHIFT(tmp1 + tmp11 + tmp13, CONST_BITS+PASS1_BITS); 309 tmp0 += z1 + tmp12;
311 dataptr[DCTSIZE*5] = (DCTELEM) 310 tmp3 += z1 + tmp13;
312 RIGHT_SHIFT(tmp2 + tmp11 + tmp12, CONST_BITS+PASS1_BITS); 311
313 dataptr[DCTSIZE*7] = (DCTELEM) 312 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* -c1-c3 */
314 RIGHT_SHIFT(tmp3 + tmp10 + tmp13, CONST_BITS+PASS1_BITS); 313 tmp1 = MULTIPLY(tmp1, FIX_3_072711026); /* c1+c3+c5-c7 */
314 tmp2 = MULTIPLY(tmp2, FIX_2_053119869); /* c1+c3-c5+c7 */
315 tmp1 += z1 + tmp13;
316 tmp2 += z1 + tmp12;
317
318 dataptr[DCTSIZE*1] = (DCTELEM) RIGHT_SHIFT(tmp0, CONST_BITS+PASS1_BITS);
319 dataptr[DCTSIZE*3] = (DCTELEM) RIGHT_SHIFT(tmp1, CONST_BITS+PASS1_BITS);
320 dataptr[DCTSIZE*5] = (DCTELEM) RIGHT_SHIFT(tmp2, CONST_BITS+PASS1_BITS);
321 dataptr[DCTSIZE*7] = (DCTELEM) RIGHT_SHIFT(tmp3, CONST_BITS+PASS1_BITS);
315 322
316 dataptr++; /* advance pointer to next column */ 323 dataptr++; /* advance pointer to next column */
317 } 324 }
@@ -338,10 +345,11 @@ jpeg_fdct_7x7 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
338 /* Pre-zero output coefficient block. */ 345 /* Pre-zero output coefficient block. */
339 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 346 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
340 347
341 /* Pass 1: process rows. */ 348 /* Pass 1: process rows.
342 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 349 * Note results are scaled up by sqrt(8) compared to a true DCT;
343 /* furthermore, we scale the results by 2**PASS1_BITS. */ 350 * furthermore, we scale the results by 2**PASS1_BITS.
344 /* cK represents sqrt(2) * cos(K*pi/14). */ 351 * cK represents sqrt(2) * cos(K*pi/14).
352 */
345 353
346 dataptr = data; 354 dataptr = data;
347 for (ctr = 0; ctr < 7; ctr++) { 355 for (ctr = 0; ctr < 7; ctr++) {
@@ -472,10 +480,11 @@ jpeg_fdct_6x6 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
472 /* Pre-zero output coefficient block. */ 480 /* Pre-zero output coefficient block. */
473 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 481 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
474 482
475 /* Pass 1: process rows. */ 483 /* Pass 1: process rows.
476 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 484 * Note results are scaled up by sqrt(8) compared to a true DCT;
477 /* furthermore, we scale the results by 2**PASS1_BITS. */ 485 * furthermore, we scale the results by 2**PASS1_BITS.
478 /* cK represents sqrt(2) * cos(K*pi/12). */ 486 * cK represents sqrt(2) * cos(K*pi/12).
487 */
479 488
480 dataptr = data; 489 dataptr = data;
481 for (ctr = 0; ctr < 6; ctr++) { 490 for (ctr = 0; ctr < 6; ctr++) {
@@ -585,12 +594,13 @@ jpeg_fdct_5x5 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
585 /* Pre-zero output coefficient block. */ 594 /* Pre-zero output coefficient block. */
586 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 595 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
587 596
588 /* Pass 1: process rows. */ 597 /* Pass 1: process rows.
589 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 598 * Note results are scaled up by sqrt(8) compared to a true DCT;
590 /* furthermore, we scale the results by 2**PASS1_BITS. */ 599 * furthermore, we scale the results by 2**PASS1_BITS.
591 /* We scale the results further by 2 as part of output adaption */ 600 * We scale the results further by 2 as part of output adaption
592 /* scaling for different DCT size. */ 601 * scaling for different DCT size.
593 /* cK represents sqrt(2) * cos(K*pi/10). */ 602 * cK represents sqrt(2) * cos(K*pi/10).
603 */
594 604
595 dataptr = data; 605 dataptr = data;
596 for (ctr = 0; ctr < 5; ctr++) { 606 for (ctr = 0; ctr < 5; ctr++) {
@@ -695,11 +705,12 @@ jpeg_fdct_4x4 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
695 /* Pre-zero output coefficient block. */ 705 /* Pre-zero output coefficient block. */
696 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 706 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
697 707
698 /* Pass 1: process rows. */ 708 /* Pass 1: process rows.
699 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 709 * Note results are scaled up by sqrt(8) compared to a true DCT;
700 /* furthermore, we scale the results by 2**PASS1_BITS. */ 710 * furthermore, we scale the results by 2**PASS1_BITS.
701 /* We must also scale the output by (8/4)**2 = 2**2, which we add here. */ 711 * We must also scale the output by (8/4)**2 = 2**2, which we add here.
702 /* cK represents sqrt(2) * cos(K*pi/16) [refers to 8-point FDCT]. */ 712 * cK represents sqrt(2) * cos(K*pi/16) [refers to 8-point FDCT].
713 */
703 714
704 dataptr = data; 715 dataptr = data;
705 for (ctr = 0; ctr < 4; ctr++) { 716 for (ctr = 0; ctr < 4; ctr++) {
@@ -737,6 +748,7 @@ jpeg_fdct_4x4 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
737 /* Pass 2: process columns. 748 /* Pass 2: process columns.
738 * We remove the PASS1_BITS scaling, but leave the results scaled up 749 * We remove the PASS1_BITS scaling, but leave the results scaled up
739 * by an overall factor of 8. 750 * by an overall factor of 8.
751 * cK represents sqrt(2) * cos(K*pi/16) [refers to 8-point FDCT].
740 */ 752 */
741 753
742 dataptr = data; 754 dataptr = data;
@@ -787,12 +799,13 @@ jpeg_fdct_3x3 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
787 /* Pre-zero output coefficient block. */ 799 /* Pre-zero output coefficient block. */
788 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 800 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
789 801
790 /* Pass 1: process rows. */ 802 /* Pass 1: process rows.
791 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 803 * Note results are scaled up by sqrt(8) compared to a true DCT;
792 /* furthermore, we scale the results by 2**PASS1_BITS. */ 804 * furthermore, we scale the results by 2**PASS1_BITS.
793 /* We scale the results further by 2**2 as part of output adaption */ 805 * We scale the results further by 2**2 as part of output adaption
794 /* scaling for different DCT size. */ 806 * scaling for different DCT size.
795 /* cK represents sqrt(2) * cos(K*pi/6). */ 807 * cK represents sqrt(2) * cos(K*pi/6).
808 */
796 809
797 dataptr = data; 810 dataptr = data;
798 for (ctr = 0; ctr < 3; ctr++) { 811 for (ctr = 0; ctr < 3; ctr++) {
@@ -869,8 +882,9 @@ jpeg_fdct_2x2 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
869 /* Pre-zero output coefficient block. */ 882 /* Pre-zero output coefficient block. */
870 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 883 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
871 884
872 /* Pass 1: process rows. */ 885 /* Pass 1: process rows.
873 /* Note results are scaled up by sqrt(8) compared to a true DCT. */ 886 * Note results are scaled up by sqrt(8) compared to a true DCT.
887 */
874 888
875 /* Row 0 */ 889 /* Row 0 */
876 elemptr = sample_data[0] + start_col; 890 elemptr = sample_data[0] + start_col;
@@ -935,11 +949,12 @@ jpeg_fdct_9x9 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
935 int ctr; 949 int ctr;
936 SHIFT_TEMPS 950 SHIFT_TEMPS
937 951
938 /* Pass 1: process rows. */ 952 /* Pass 1: process rows.
939 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 953 * Note results are scaled up by sqrt(8) compared to a true DCT;
940 /* we scale the results further by 2 as part of output adaption */ 954 * we scale the results further by 2 as part of output adaption
941 /* scaling for different DCT size. */ 955 * scaling for different DCT size.
942 /* cK represents sqrt(2) * cos(K*pi/18). */ 956 * cK represents sqrt(2) * cos(K*pi/18).
957 */
943 958
944 dataptr = data; 959 dataptr = data;
945 ctr = 0; 960 ctr = 0;
@@ -1084,11 +1099,12 @@ jpeg_fdct_10x10 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
1084 int ctr; 1099 int ctr;
1085 SHIFT_TEMPS 1100 SHIFT_TEMPS
1086 1101
1087 /* Pass 1: process rows. */ 1102 /* Pass 1: process rows.
1088 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 1103 * Note results are scaled up by sqrt(8) compared to a true DCT;
1089 /* we scale the results further by 2 as part of output adaption */ 1104 * we scale the results further by 2 as part of output adaption
1090 /* scaling for different DCT size. */ 1105 * scaling for different DCT size.
1091 /* cK represents sqrt(2) * cos(K*pi/20). */ 1106 * cK represents sqrt(2) * cos(K*pi/20).
1107 */
1092 1108
1093 dataptr = data; 1109 dataptr = data;
1094 ctr = 0; 1110 ctr = 0;
@@ -1248,11 +1264,12 @@ jpeg_fdct_11x11 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
1248 int ctr; 1264 int ctr;
1249 SHIFT_TEMPS 1265 SHIFT_TEMPS
1250 1266
1251 /* Pass 1: process rows. */ 1267 /* Pass 1: process rows.
1252 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 1268 * Note results are scaled up by sqrt(8) compared to a true DCT;
1253 /* we scale the results further by 2 as part of output adaption */ 1269 * we scale the results further by 2 as part of output adaption
1254 /* scaling for different DCT size. */ 1270 * scaling for different DCT size.
1255 /* cK represents sqrt(2) * cos(K*pi/22). */ 1271 * cK represents sqrt(2) * cos(K*pi/22).
1272 */
1256 1273
1257 dataptr = data; 1274 dataptr = data;
1258 ctr = 0; 1275 ctr = 0;
@@ -1430,9 +1447,10 @@ jpeg_fdct_12x12 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
1430 int ctr; 1447 int ctr;
1431 SHIFT_TEMPS 1448 SHIFT_TEMPS
1432 1449
1433 /* Pass 1: process rows. */ 1450 /* Pass 1: process rows.
1434 /* Note results are scaled up by sqrt(8) compared to a true DCT. */ 1451 * Note results are scaled up by sqrt(8) compared to a true DCT.
1435 /* cK represents sqrt(2) * cos(K*pi/24). */ 1452 * cK represents sqrt(2) * cos(K*pi/24).
1453 */
1436 1454
1437 dataptr = data; 1455 dataptr = data;
1438 ctr = 0; 1456 ctr = 0;
@@ -1596,9 +1614,10 @@ jpeg_fdct_13x13 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
1596 int ctr; 1614 int ctr;
1597 SHIFT_TEMPS 1615 SHIFT_TEMPS
1598 1616
1599 /* Pass 1: process rows. */ 1617 /* Pass 1: process rows.
1600 /* Note results are scaled up by sqrt(8) compared to a true DCT. */ 1618 * Note results are scaled up by sqrt(8) compared to a true DCT.
1601 /* cK represents sqrt(2) * cos(K*pi/26). */ 1619 * cK represents sqrt(2) * cos(K*pi/26).
1620 */
1602 1621
1603 dataptr = data; 1622 dataptr = data;
1604 ctr = 0; 1623 ctr = 0;
@@ -1794,9 +1813,10 @@ jpeg_fdct_14x14 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
1794 int ctr; 1813 int ctr;
1795 SHIFT_TEMPS 1814 SHIFT_TEMPS
1796 1815
1797 /* Pass 1: process rows. */ 1816 /* Pass 1: process rows.
1798 /* Note results are scaled up by sqrt(8) compared to a true DCT. */ 1817 * Note results are scaled up by sqrt(8) compared to a true DCT.
1799 /* cK represents sqrt(2) * cos(K*pi/28). */ 1818 * cK represents sqrt(2) * cos(K*pi/28).
1819 */
1800 1820
1801 dataptr = data; 1821 dataptr = data;
1802 ctr = 0; 1822 ctr = 0;
@@ -1995,9 +2015,10 @@ jpeg_fdct_15x15 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
1995 int ctr; 2015 int ctr;
1996 SHIFT_TEMPS 2016 SHIFT_TEMPS
1997 2017
1998 /* Pass 1: process rows. */ 2018 /* Pass 1: process rows.
1999 /* Note results are scaled up by sqrt(8) compared to a true DCT. */ 2019 * Note results are scaled up by sqrt(8) compared to a true DCT.
2000 /* cK represents sqrt(2) * cos(K*pi/30). */ 2020 * cK represents sqrt(2) * cos(K*pi/30).
2021 */
2001 2022
2002 dataptr = data; 2023 dataptr = data;
2003 ctr = 0; 2024 ctr = 0;
@@ -2173,10 +2194,11 @@ jpeg_fdct_16x16 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
2173 int ctr; 2194 int ctr;
2174 SHIFT_TEMPS 2195 SHIFT_TEMPS
2175 2196
2176 /* Pass 1: process rows. */ 2197 /* Pass 1: process rows.
2177 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 2198 * Note results are scaled up by sqrt(8) compared to a true DCT;
2178 /* furthermore, we scale the results by 2**PASS1_BITS. */ 2199 * furthermore, we scale the results by 2**PASS1_BITS.
2179 /* cK represents sqrt(2) * cos(K*pi/32). */ 2200 * cK represents sqrt(2) * cos(K*pi/32).
2201 */
2180 2202
2181 dataptr = data; 2203 dataptr = data;
2182 ctr = 0; 2204 ctr = 0;
@@ -2275,6 +2297,7 @@ jpeg_fdct_16x16 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
2275 * We remove the PASS1_BITS scaling, but leave the results scaled up 2297 * We remove the PASS1_BITS scaling, but leave the results scaled up
2276 * by an overall factor of 8. 2298 * by an overall factor of 8.
2277 * We must also scale the output by (8/16)**2 = 1/2**2. 2299 * We must also scale the output by (8/16)**2 = 1/2**2.
2300 * cK represents sqrt(2) * cos(K*pi/32).
2278 */ 2301 */
2279 2302
2280 dataptr = data; 2303 dataptr = data;
@@ -2380,10 +2403,11 @@ jpeg_fdct_16x8 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
2380 int ctr; 2403 int ctr;
2381 SHIFT_TEMPS 2404 SHIFT_TEMPS
2382 2405
2383 /* Pass 1: process rows. */ 2406 /* Pass 1: process rows.
2384 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 2407 * Note results are scaled up by sqrt(8) compared to a true DCT;
2385 /* furthermore, we scale the results by 2**PASS1_BITS. */ 2408 * furthermore, we scale the results by 2**PASS1_BITS.
2386 /* 16-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/32). */ 2409 * 16-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/32).
2410 */
2387 2411
2388 dataptr = data; 2412 dataptr = data;
2389 ctr = 0; 2413 ctr = 0;
@@ -2475,12 +2499,13 @@ jpeg_fdct_16x8 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
2475 * We remove the PASS1_BITS scaling, but leave the results scaled up 2499 * We remove the PASS1_BITS scaling, but leave the results scaled up
2476 * by an overall factor of 8. 2500 * by an overall factor of 8.
2477 * We must also scale the output by 8/16 = 1/2. 2501 * We must also scale the output by 8/16 = 1/2.
2502 * 8-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/16).
2478 */ 2503 */
2479 2504
2480 dataptr = data; 2505 dataptr = data;
2481 for (ctr = DCTSIZE-1; ctr >= 0; ctr--) { 2506 for (ctr = DCTSIZE-1; ctr >= 0; ctr--) {
2482 /* Even part per LL&M figure 1 --- note that published figure is faulty; 2507 /* Even part per LL&M figure 1 --- note that published figure is faulty;
2483 * rotator "sqrt(2)*c1" should be "sqrt(2)*c6". 2508 * rotator "c1" should be "c6".
2484 */ 2509 */
2485 2510
2486 tmp0 = dataptr[DCTSIZE*0] + dataptr[DCTSIZE*7]; 2511 tmp0 = dataptr[DCTSIZE*0] + dataptr[DCTSIZE*7];
@@ -2501,43 +2526,43 @@ jpeg_fdct_16x8 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
2501 dataptr[DCTSIZE*0] = (DCTELEM) DESCALE(tmp10 + tmp11, PASS1_BITS+1); 2526 dataptr[DCTSIZE*0] = (DCTELEM) DESCALE(tmp10 + tmp11, PASS1_BITS+1);
2502 dataptr[DCTSIZE*4] = (DCTELEM) DESCALE(tmp10 - tmp11, PASS1_BITS+1); 2527 dataptr[DCTSIZE*4] = (DCTELEM) DESCALE(tmp10 - tmp11, PASS1_BITS+1);
2503 2528
2504 z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100); 2529 z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100); /* c6 */
2505 dataptr[DCTSIZE*2] = (DCTELEM) DESCALE(z1 + MULTIPLY(tmp12, FIX_0_765366865), 2530 dataptr[DCTSIZE*2] = (DCTELEM)
2506 CONST_BITS+PASS1_BITS+1); 2531 DESCALE(z1 + MULTIPLY(tmp12, FIX_0_765366865), /* c2-c6 */
2507 dataptr[DCTSIZE*6] = (DCTELEM) DESCALE(z1 - MULTIPLY(tmp13, FIX_1_847759065), 2532 CONST_BITS+PASS1_BITS+1);
2508 CONST_BITS+PASS1_BITS+1); 2533 dataptr[DCTSIZE*6] = (DCTELEM)
2534 DESCALE(z1 - MULTIPLY(tmp13, FIX_1_847759065), /* c2+c6 */
2535 CONST_BITS+PASS1_BITS+1);
2509 2536
2510 /* Odd part per figure 8 --- note paper omits factor of sqrt(2). 2537 /* Odd part per figure 8 --- note paper omits factor of sqrt(2).
2511 * 8-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/16).
2512 * i0..i3 in the paper are tmp0..tmp3 here. 2538 * i0..i3 in the paper are tmp0..tmp3 here.
2513 */ 2539 */
2514 2540
2515 tmp10 = tmp0 + tmp3;
2516 tmp11 = tmp1 + tmp2;
2517 tmp12 = tmp0 + tmp2; 2541 tmp12 = tmp0 + tmp2;
2518 tmp13 = tmp1 + tmp3; 2542 tmp13 = tmp1 + tmp3;
2519 z1 = MULTIPLY(tmp12 + tmp13, FIX_1_175875602); /* c3 */
2520
2521 tmp0 = MULTIPLY(tmp0, FIX_1_501321110); /* c1+c3-c5-c7 */
2522 tmp1 = MULTIPLY(tmp1, FIX_3_072711026); /* c1+c3+c5-c7 */
2523 tmp2 = MULTIPLY(tmp2, FIX_2_053119869); /* c1+c3-c5+c7 */
2524 tmp3 = MULTIPLY(tmp3, FIX_0_298631336); /* -c1+c3+c5-c7 */
2525 tmp10 = MULTIPLY(tmp10, - FIX_0_899976223); /* c7-c3 */
2526 tmp11 = MULTIPLY(tmp11, - FIX_2_562915447); /* -c1-c3 */
2527 tmp12 = MULTIPLY(tmp12, - FIX_0_390180644); /* c5-c3 */
2528 tmp13 = MULTIPLY(tmp13, - FIX_1_961570560); /* -c3-c5 */
2529 2543
2544 z1 = MULTIPLY(tmp12 + tmp13, FIX_1_175875602); /* c3 */
2545 tmp12 = MULTIPLY(tmp12, - FIX_0_390180644); /* -c3+c5 */
2546 tmp13 = MULTIPLY(tmp13, - FIX_1_961570560); /* -c3-c5 */
2530 tmp12 += z1; 2547 tmp12 += z1;
2531 tmp13 += z1; 2548 tmp13 += z1;
2532 2549
2533 dataptr[DCTSIZE*1] = (DCTELEM) DESCALE(tmp0 + tmp10 + tmp12, 2550 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* -c3+c7 */
2534 CONST_BITS+PASS1_BITS+1); 2551 tmp0 = MULTIPLY(tmp0, FIX_1_501321110); /* c1+c3-c5-c7 */
2535 dataptr[DCTSIZE*3] = (DCTELEM) DESCALE(tmp1 + tmp11 + tmp13, 2552 tmp3 = MULTIPLY(tmp3, FIX_0_298631336); /* -c1+c3+c5-c7 */
2536 CONST_BITS+PASS1_BITS+1); 2553 tmp0 += z1 + tmp12;
2537 dataptr[DCTSIZE*5] = (DCTELEM) DESCALE(tmp2 + tmp11 + tmp12, 2554 tmp3 += z1 + tmp13;
2538 CONST_BITS+PASS1_BITS+1); 2555
2539 dataptr[DCTSIZE*7] = (DCTELEM) DESCALE(tmp3 + tmp10 + tmp13, 2556 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* -c1-c3 */
2540 CONST_BITS+PASS1_BITS+1); 2557 tmp1 = MULTIPLY(tmp1, FIX_3_072711026); /* c1+c3+c5-c7 */
2558 tmp2 = MULTIPLY(tmp2, FIX_2_053119869); /* c1+c3-c5+c7 */
2559 tmp1 += z1 + tmp13;
2560 tmp2 += z1 + tmp12;
2561
2562 dataptr[DCTSIZE*1] = (DCTELEM) DESCALE(tmp0, CONST_BITS+PASS1_BITS+1);
2563 dataptr[DCTSIZE*3] = (DCTELEM) DESCALE(tmp1, CONST_BITS+PASS1_BITS+1);
2564 dataptr[DCTSIZE*5] = (DCTELEM) DESCALE(tmp2, CONST_BITS+PASS1_BITS+1);
2565 dataptr[DCTSIZE*7] = (DCTELEM) DESCALE(tmp3, CONST_BITS+PASS1_BITS+1);
2541 2566
2542 dataptr++; /* advance pointer to next column */ 2567 dataptr++; /* advance pointer to next column */
2543 } 2568 }
@@ -2564,10 +2589,11 @@ jpeg_fdct_14x7 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
2564 /* Zero bottom row of output coefficient block. */ 2589 /* Zero bottom row of output coefficient block. */
2565 MEMZERO(&data[DCTSIZE*7], SIZEOF(DCTELEM) * DCTSIZE); 2590 MEMZERO(&data[DCTSIZE*7], SIZEOF(DCTELEM) * DCTSIZE);
2566 2591
2567 /* Pass 1: process rows. */ 2592 /* Pass 1: process rows.
2568 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 2593 * Note results are scaled up by sqrt(8) compared to a true DCT;
2569 /* furthermore, we scale the results by 2**PASS1_BITS. */ 2594 * furthermore, we scale the results by 2**PASS1_BITS.
2570 /* 14-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/28). */ 2595 * 14-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/28).
2596 */
2571 2597
2572 dataptr = data; 2598 dataptr = data;
2573 for (ctr = 0; ctr < 7; ctr++) { 2599 for (ctr = 0; ctr < 7; ctr++) {
@@ -2727,10 +2753,11 @@ jpeg_fdct_12x6 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
2727 /* Zero 2 bottom rows of output coefficient block. */ 2753 /* Zero 2 bottom rows of output coefficient block. */
2728 MEMZERO(&data[DCTSIZE*6], SIZEOF(DCTELEM) * DCTSIZE * 2); 2754 MEMZERO(&data[DCTSIZE*6], SIZEOF(DCTELEM) * DCTSIZE * 2);
2729 2755
2730 /* Pass 1: process rows. */ 2756 /* Pass 1: process rows.
2731 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 2757 * Note results are scaled up by sqrt(8) compared to a true DCT;
2732 /* furthermore, we scale the results by 2**PASS1_BITS. */ 2758 * furthermore, we scale the results by 2**PASS1_BITS.
2733 /* 12-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/24). */ 2759 * 12-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/24).
2760 */
2734 2761
2735 dataptr = data; 2762 dataptr = data;
2736 for (ctr = 0; ctr < 6; ctr++) { 2763 for (ctr = 0; ctr < 6; ctr++) {
@@ -2866,10 +2893,11 @@ jpeg_fdct_10x5 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
2866 /* Zero 3 bottom rows of output coefficient block. */ 2893 /* Zero 3 bottom rows of output coefficient block. */
2867 MEMZERO(&data[DCTSIZE*5], SIZEOF(DCTELEM) * DCTSIZE * 3); 2894 MEMZERO(&data[DCTSIZE*5], SIZEOF(DCTELEM) * DCTSIZE * 3);
2868 2895
2869 /* Pass 1: process rows. */ 2896 /* Pass 1: process rows.
2870 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 2897 * Note results are scaled up by sqrt(8) compared to a true DCT;
2871 /* furthermore, we scale the results by 2**PASS1_BITS. */ 2898 * furthermore, we scale the results by 2**PASS1_BITS.
2872 /* 10-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/20). */ 2899 * 10-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/20).
2900 */
2873 2901
2874 dataptr = data; 2902 dataptr = data;
2875 for (ctr = 0; ctr < 5; ctr++) { 2903 for (ctr = 0; ctr < 5; ctr++) {
@@ -2999,17 +3027,19 @@ jpeg_fdct_8x4 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
2999 /* Zero 4 bottom rows of output coefficient block. */ 3027 /* Zero 4 bottom rows of output coefficient block. */
3000 MEMZERO(&data[DCTSIZE*4], SIZEOF(DCTELEM) * DCTSIZE * 4); 3028 MEMZERO(&data[DCTSIZE*4], SIZEOF(DCTELEM) * DCTSIZE * 4);
3001 3029
3002 /* Pass 1: process rows. */ 3030 /* Pass 1: process rows.
3003 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 3031 * Note results are scaled up by sqrt(8) compared to a true DCT;
3004 /* furthermore, we scale the results by 2**PASS1_BITS. */ 3032 * furthermore, we scale the results by 2**PASS1_BITS.
3005 /* We must also scale the output by 8/4 = 2, which we add here. */ 3033 * We must also scale the output by 8/4 = 2, which we add here.
3034 * 8-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/16).
3035 */
3006 3036
3007 dataptr = data; 3037 dataptr = data;
3008 for (ctr = 0; ctr < 4; ctr++) { 3038 for (ctr = 0; ctr < 4; ctr++) {
3009 elemptr = sample_data[ctr] + start_col; 3039 elemptr = sample_data[ctr] + start_col;
3010 3040
3011 /* Even part per LL&M figure 1 --- note that published figure is faulty; 3041 /* Even part per LL&M figure 1 --- note that published figure is faulty;
3012 * rotator "sqrt(2)*c1" should be "sqrt(2)*c6". 3042 * rotator "c1" should be "c6".
3013 */ 3043 */
3014 3044
3015 tmp0 = GETJSAMPLE(elemptr[0]) + GETJSAMPLE(elemptr[7]); 3045 tmp0 = GETJSAMPLE(elemptr[0]) + GETJSAMPLE(elemptr[7]);
@@ -3032,47 +3062,49 @@ jpeg_fdct_8x4 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
3032 ((tmp10 + tmp11 - 8 * CENTERJSAMPLE) << (PASS1_BITS+1)); 3062 ((tmp10 + tmp11 - 8 * CENTERJSAMPLE) << (PASS1_BITS+1));
3033 dataptr[4] = (DCTELEM) ((tmp10 - tmp11) << (PASS1_BITS+1)); 3063 dataptr[4] = (DCTELEM) ((tmp10 - tmp11) << (PASS1_BITS+1));
3034 3064
3035 z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100); 3065 z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100); /* c6 */
3036 /* Add fudge factor here for final descale. */ 3066 /* Add fudge factor here for final descale. */
3037 z1 += ONE << (CONST_BITS-PASS1_BITS-2); 3067 z1 += ONE << (CONST_BITS-PASS1_BITS-2);
3038 dataptr[2] = (DCTELEM) RIGHT_SHIFT(z1 + MULTIPLY(tmp12, FIX_0_765366865), 3068
3039 CONST_BITS-PASS1_BITS-1); 3069 dataptr[2] = (DCTELEM)
3040 dataptr[6] = (DCTELEM) RIGHT_SHIFT(z1 - MULTIPLY(tmp13, FIX_1_847759065), 3070 RIGHT_SHIFT(z1 + MULTIPLY(tmp12, FIX_0_765366865), /* c2-c6 */
3041 CONST_BITS-PASS1_BITS-1); 3071 CONST_BITS-PASS1_BITS-1);
3072 dataptr[6] = (DCTELEM)
3073 RIGHT_SHIFT(z1 - MULTIPLY(tmp13, FIX_1_847759065), /* c2+c6 */
3074 CONST_BITS-PASS1_BITS-1);
3042 3075
3043 /* Odd part per figure 8 --- note paper omits factor of sqrt(2). 3076 /* Odd part per figure 8 --- note paper omits factor of sqrt(2).
3044 * 8-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/16).
3045 * i0..i3 in the paper are tmp0..tmp3 here. 3077 * i0..i3 in the paper are tmp0..tmp3 here.
3046 */ 3078 */
3047 3079
3048 tmp10 = tmp0 + tmp3;
3049 tmp11 = tmp1 + tmp2;
3050 tmp12 = tmp0 + tmp2; 3080 tmp12 = tmp0 + tmp2;
3051 tmp13 = tmp1 + tmp3; 3081 tmp13 = tmp1 + tmp3;
3052 z1 = MULTIPLY(tmp12 + tmp13, FIX_1_175875602); /* c3 */ 3082
3083 z1 = MULTIPLY(tmp12 + tmp13, FIX_1_175875602); /* c3 */
3053 /* Add fudge factor here for final descale. */ 3084 /* Add fudge factor here for final descale. */
3054 z1 += ONE << (CONST_BITS-PASS1_BITS-2); 3085 z1 += ONE << (CONST_BITS-PASS1_BITS-2);
3055 3086
3056 tmp0 = MULTIPLY(tmp0, FIX_1_501321110); /* c1+c3-c5-c7 */ 3087 tmp12 = MULTIPLY(tmp12, - FIX_0_390180644); /* -c3+c5 */
3057 tmp1 = MULTIPLY(tmp1, FIX_3_072711026); /* c1+c3+c5-c7 */ 3088 tmp13 = MULTIPLY(tmp13, - FIX_1_961570560); /* -c3-c5 */
3058 tmp2 = MULTIPLY(tmp2, FIX_2_053119869); /* c1+c3-c5+c7 */
3059 tmp3 = MULTIPLY(tmp3, FIX_0_298631336); /* -c1+c3+c5-c7 */
3060 tmp10 = MULTIPLY(tmp10, - FIX_0_899976223); /* c7-c3 */
3061 tmp11 = MULTIPLY(tmp11, - FIX_2_562915447); /* -c1-c3 */
3062 tmp12 = MULTIPLY(tmp12, - FIX_0_390180644); /* c5-c3 */
3063 tmp13 = MULTIPLY(tmp13, - FIX_1_961570560); /* -c3-c5 */
3064
3065 tmp12 += z1; 3089 tmp12 += z1;
3066 tmp13 += z1; 3090 tmp13 += z1;
3067 3091
3068 dataptr[1] = (DCTELEM) 3092 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* -c3+c7 */
3069 RIGHT_SHIFT(tmp0 + tmp10 + tmp12, CONST_BITS-PASS1_BITS-1); 3093 tmp0 = MULTIPLY(tmp0, FIX_1_501321110); /* c1+c3-c5-c7 */
3070 dataptr[3] = (DCTELEM) 3094 tmp3 = MULTIPLY(tmp3, FIX_0_298631336); /* -c1+c3+c5-c7 */
3071 RIGHT_SHIFT(tmp1 + tmp11 + tmp13, CONST_BITS-PASS1_BITS-1); 3095 tmp0 += z1 + tmp12;
3072 dataptr[5] = (DCTELEM) 3096 tmp3 += z1 + tmp13;
3073 RIGHT_SHIFT(tmp2 + tmp11 + tmp12, CONST_BITS-PASS1_BITS-1); 3097
3074 dataptr[7] = (DCTELEM) 3098 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* -c1-c3 */
3075 RIGHT_SHIFT(tmp3 + tmp10 + tmp13, CONST_BITS-PASS1_BITS-1); 3099 tmp1 = MULTIPLY(tmp1, FIX_3_072711026); /* c1+c3+c5-c7 */
3100 tmp2 = MULTIPLY(tmp2, FIX_2_053119869); /* c1+c3-c5+c7 */
3101 tmp1 += z1 + tmp13;
3102 tmp2 += z1 + tmp12;
3103
3104 dataptr[1] = (DCTELEM) RIGHT_SHIFT(tmp0, CONST_BITS-PASS1_BITS-1);
3105 dataptr[3] = (DCTELEM) RIGHT_SHIFT(tmp1, CONST_BITS-PASS1_BITS-1);
3106 dataptr[5] = (DCTELEM) RIGHT_SHIFT(tmp2, CONST_BITS-PASS1_BITS-1);
3107 dataptr[7] = (DCTELEM) RIGHT_SHIFT(tmp3, CONST_BITS-PASS1_BITS-1);
3076 3108
3077 dataptr += DCTSIZE; /* advance pointer to next row */ 3109 dataptr += DCTSIZE; /* advance pointer to next row */
3078 } 3110 }
@@ -3080,7 +3112,8 @@ jpeg_fdct_8x4 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
3080 /* Pass 2: process columns. 3112 /* Pass 2: process columns.
3081 * We remove the PASS1_BITS scaling, but leave the results scaled up 3113 * We remove the PASS1_BITS scaling, but leave the results scaled up
3082 * by an overall factor of 8. 3114 * by an overall factor of 8.
3083 * 4-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/16). 3115 * 4-point FDCT kernel,
3116 * cK represents sqrt(2) * cos(K*pi/16) [refers to 8-point FDCT].
3084 */ 3117 */
3085 3118
3086 dataptr = data; 3119 dataptr = data;
@@ -3099,7 +3132,7 @@ jpeg_fdct_8x4 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
3099 3132
3100 /* Odd part */ 3133 /* Odd part */
3101 3134
3102 tmp0 = MULTIPLY(tmp10 + tmp11, FIX_0_541196100); /* c6 */ 3135 tmp0 = MULTIPLY(tmp10 + tmp11, FIX_0_541196100); /* c6 */
3103 /* Add fudge factor here for final descale. */ 3136 /* Add fudge factor here for final descale. */
3104 tmp0 += ONE << (CONST_BITS+PASS1_BITS-1); 3137 tmp0 += ONE << (CONST_BITS+PASS1_BITS-1);
3105 3138
@@ -3134,12 +3167,13 @@ jpeg_fdct_6x3 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
3134 /* Pre-zero output coefficient block. */ 3167 /* Pre-zero output coefficient block. */
3135 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 3168 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
3136 3169
3137 /* Pass 1: process rows. */ 3170 /* Pass 1: process rows.
3138 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 3171 * Note results are scaled up by sqrt(8) compared to a true DCT;
3139 /* furthermore, we scale the results by 2**PASS1_BITS. */ 3172 * furthermore, we scale the results by 2**PASS1_BITS.
3140 /* We scale the results further by 2 as part of output adaption */ 3173 * We scale the results further by 2 as part of output adaption
3141 /* scaling for different DCT size. */ 3174 * scaling for different DCT size.
3142 /* 6-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/12). */ 3175 * 6-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/12).
3176 */
3143 3177
3144 dataptr = data; 3178 dataptr = data;
3145 for (ctr = 0; ctr < 3; ctr++) { 3179 for (ctr = 0; ctr < 3; ctr++) {
@@ -3234,12 +3268,13 @@ jpeg_fdct_4x2 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
3234 /* Pre-zero output coefficient block. */ 3268 /* Pre-zero output coefficient block. */
3235 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 3269 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
3236 3270
3237 /* Pass 1: process rows. */ 3271 /* Pass 1: process rows.
3238 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 3272 * Note results are scaled up by sqrt(8) compared to a true DCT;
3239 /* furthermore, we scale the results by 2**PASS1_BITS. */ 3273 * furthermore, we scale the results by 2**PASS1_BITS.
3240 /* We must also scale the output by (8/4)*(8/2) = 2**3, which we add here. */ 3274 * We must also scale the output by (8/4)*(8/2) = 2**3, which we add here.
3241 /* 4-point FDCT kernel, */ 3275 * 4-point FDCT kernel,
3242 /* cK represents sqrt(2) * cos(K*pi/16) [refers to 8-point FDCT]. */ 3276 * cK represents sqrt(2) * cos(K*pi/16) [refers to 8-point FDCT].
3277 */
3243 3278
3244 dataptr = data; 3279 dataptr = data;
3245 for (ctr = 0; ctr < 2; ctr++) { 3280 for (ctr = 0; ctr < 2; ctr++) {
@@ -3323,10 +3358,12 @@ jpeg_fdct_2x1 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
3323 */ 3358 */
3324 3359
3325 /* Even part */ 3360 /* Even part */
3361
3326 /* Apply unsigned->signed conversion */ 3362 /* Apply unsigned->signed conversion */
3327 data[0] = (DCTELEM) ((tmp0 + tmp1 - 2 * CENTERJSAMPLE) << 5); 3363 data[0] = (DCTELEM) ((tmp0 + tmp1 - 2 * CENTERJSAMPLE) << 5);
3328 3364
3329 /* Odd part */ 3365 /* Odd part */
3366
3330 data[1] = (DCTELEM) ((tmp0 - tmp1) << 5); 3367 data[1] = (DCTELEM) ((tmp0 - tmp1) << 5);
3331} 3368}
3332 3369
@@ -3350,9 +3387,11 @@ jpeg_fdct_8x16 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
3350 int ctr; 3387 int ctr;
3351 SHIFT_TEMPS 3388 SHIFT_TEMPS
3352 3389
3353 /* Pass 1: process rows. */ 3390 /* Pass 1: process rows.
3354 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 3391 * Note results are scaled up by sqrt(8) compared to a true DCT;
3355 /* furthermore, we scale the results by 2**PASS1_BITS. */ 3392 * furthermore, we scale the results by 2**PASS1_BITS.
3393 * 8-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/16).
3394 */
3356 3395
3357 dataptr = data; 3396 dataptr = data;
3358 ctr = 0; 3397 ctr = 0;
@@ -3360,7 +3399,7 @@ jpeg_fdct_8x16 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
3360 elemptr = sample_data[ctr] + start_col; 3399 elemptr = sample_data[ctr] + start_col;
3361 3400
3362 /* Even part per LL&M figure 1 --- note that published figure is faulty; 3401 /* Even part per LL&M figure 1 --- note that published figure is faulty;
3363 * rotator "sqrt(2)*c1" should be "sqrt(2)*c6". 3402 * rotator "c1" should be "c6".
3364 */ 3403 */
3365 3404
3366 tmp0 = GETJSAMPLE(elemptr[0]) + GETJSAMPLE(elemptr[7]); 3405 tmp0 = GETJSAMPLE(elemptr[0]) + GETJSAMPLE(elemptr[7]);
@@ -3382,39 +3421,43 @@ jpeg_fdct_8x16 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
3382 dataptr[0] = (DCTELEM) ((tmp10 + tmp11 - 8 * CENTERJSAMPLE) << PASS1_BITS); 3421 dataptr[0] = (DCTELEM) ((tmp10 + tmp11 - 8 * CENTERJSAMPLE) << PASS1_BITS);
3383 dataptr[4] = (DCTELEM) ((tmp10 - tmp11) << PASS1_BITS); 3422 dataptr[4] = (DCTELEM) ((tmp10 - tmp11) << PASS1_BITS);
3384 3423
3385 z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100); 3424 z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100); /* c6 */
3386 dataptr[2] = (DCTELEM) DESCALE(z1 + MULTIPLY(tmp12, FIX_0_765366865), 3425 dataptr[2] = (DCTELEM)
3387 CONST_BITS-PASS1_BITS); 3426 DESCALE(z1 + MULTIPLY(tmp12, FIX_0_765366865), /* c2-c6 */
3388 dataptr[6] = (DCTELEM) DESCALE(z1 - MULTIPLY(tmp13, FIX_1_847759065), 3427 CONST_BITS-PASS1_BITS);
3389 CONST_BITS-PASS1_BITS); 3428 dataptr[6] = (DCTELEM)
3429 DESCALE(z1 - MULTIPLY(tmp13, FIX_1_847759065), /* c2+c6 */
3430 CONST_BITS-PASS1_BITS);
3390 3431
3391 /* Odd part per figure 8 --- note paper omits factor of sqrt(2). 3432 /* Odd part per figure 8 --- note paper omits factor of sqrt(2).
3392 * 8-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/16).
3393 * i0..i3 in the paper are tmp0..tmp3 here. 3433 * i0..i3 in the paper are tmp0..tmp3 here.
3394 */ 3434 */
3395 3435
3396 tmp10 = tmp0 + tmp3;
3397 tmp11 = tmp1 + tmp2;
3398 tmp12 = tmp0 + tmp2; 3436 tmp12 = tmp0 + tmp2;
3399 tmp13 = tmp1 + tmp3; 3437 tmp13 = tmp1 + tmp3;
3400 z1 = MULTIPLY(tmp12 + tmp13, FIX_1_175875602); /* c3 */
3401
3402 tmp0 = MULTIPLY(tmp0, FIX_1_501321110); /* c1+c3-c5-c7 */
3403 tmp1 = MULTIPLY(tmp1, FIX_3_072711026); /* c1+c3+c5-c7 */
3404 tmp2 = MULTIPLY(tmp2, FIX_2_053119869); /* c1+c3-c5+c7 */
3405 tmp3 = MULTIPLY(tmp3, FIX_0_298631336); /* -c1+c3+c5-c7 */
3406 tmp10 = MULTIPLY(tmp10, - FIX_0_899976223); /* c7-c3 */
3407 tmp11 = MULTIPLY(tmp11, - FIX_2_562915447); /* -c1-c3 */
3408 tmp12 = MULTIPLY(tmp12, - FIX_0_390180644); /* c5-c3 */
3409 tmp13 = MULTIPLY(tmp13, - FIX_1_961570560); /* -c3-c5 */
3410 3438
3439 z1 = MULTIPLY(tmp12 + tmp13, FIX_1_175875602); /* c3 */
3440 tmp12 = MULTIPLY(tmp12, - FIX_0_390180644); /* -c3+c5 */
3441 tmp13 = MULTIPLY(tmp13, - FIX_1_961570560); /* -c3-c5 */
3411 tmp12 += z1; 3442 tmp12 += z1;
3412 tmp13 += z1; 3443 tmp13 += z1;
3413 3444
3414 dataptr[1] = (DCTELEM) DESCALE(tmp0 + tmp10 + tmp12, CONST_BITS-PASS1_BITS); 3445 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* -c3+c7 */
3415 dataptr[3] = (DCTELEM) DESCALE(tmp1 + tmp11 + tmp13, CONST_BITS-PASS1_BITS); 3446 tmp0 = MULTIPLY(tmp0, FIX_1_501321110); /* c1+c3-c5-c7 */
3416 dataptr[5] = (DCTELEM) DESCALE(tmp2 + tmp11 + tmp12, CONST_BITS-PASS1_BITS); 3447 tmp3 = MULTIPLY(tmp3, FIX_0_298631336); /* -c1+c3+c5-c7 */
3417 dataptr[7] = (DCTELEM) DESCALE(tmp3 + tmp10 + tmp13, CONST_BITS-PASS1_BITS); 3448 tmp0 += z1 + tmp12;
3449 tmp3 += z1 + tmp13;
3450
3451 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* -c1-c3 */
3452 tmp1 = MULTIPLY(tmp1, FIX_3_072711026); /* c1+c3+c5-c7 */
3453 tmp2 = MULTIPLY(tmp2, FIX_2_053119869); /* c1+c3-c5+c7 */
3454 tmp1 += z1 + tmp13;
3455 tmp2 += z1 + tmp12;
3456
3457 dataptr[1] = (DCTELEM) DESCALE(tmp0, CONST_BITS-PASS1_BITS);
3458 dataptr[3] = (DCTELEM) DESCALE(tmp1, CONST_BITS-PASS1_BITS);
3459 dataptr[5] = (DCTELEM) DESCALE(tmp2, CONST_BITS-PASS1_BITS);
3460 dataptr[7] = (DCTELEM) DESCALE(tmp3, CONST_BITS-PASS1_BITS);
3418 3461
3419 ctr++; 3462 ctr++;
3420 3463
@@ -3541,10 +3584,11 @@ jpeg_fdct_7x14 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
3541 /* Pre-zero output coefficient block. */ 3584 /* Pre-zero output coefficient block. */
3542 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 3585 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
3543 3586
3544 /* Pass 1: process rows. */ 3587 /* Pass 1: process rows.
3545 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 3588 * Note results are scaled up by sqrt(8) compared to a true DCT;
3546 /* furthermore, we scale the results by 2**PASS1_BITS. */ 3589 * furthermore, we scale the results by 2**PASS1_BITS.
3547 /* 7-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/14). */ 3590 * 7-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/14).
3591 */
3548 3592
3549 dataptr = data; 3593 dataptr = data;
3550 ctr = 0; 3594 ctr = 0;
@@ -3721,10 +3765,11 @@ jpeg_fdct_6x12 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
3721 /* Pre-zero output coefficient block. */ 3765 /* Pre-zero output coefficient block. */
3722 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 3766 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
3723 3767
3724 /* Pass 1: process rows. */ 3768 /* Pass 1: process rows.
3725 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 3769 * Note results are scaled up by sqrt(8) compared to a true DCT;
3726 /* furthermore, we scale the results by 2**PASS1_BITS. */ 3770 * furthermore, we scale the results by 2**PASS1_BITS.
3727 /* 6-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/12). */ 3771 * 6-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/12).
3772 */
3728 3773
3729 dataptr = data; 3774 dataptr = data;
3730 ctr = 0; 3775 ctr = 0;
@@ -3870,10 +3915,11 @@ jpeg_fdct_5x10 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
3870 /* Pre-zero output coefficient block. */ 3915 /* Pre-zero output coefficient block. */
3871 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 3916 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
3872 3917
3873 /* Pass 1: process rows. */ 3918 /* Pass 1: process rows.
3874 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 3919 * Note results are scaled up by sqrt(8) compared to a true DCT;
3875 /* furthermore, we scale the results by 2**PASS1_BITS. */ 3920 * furthermore, we scale the results by 2**PASS1_BITS.
3876 /* 5-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/10). */ 3921 * 5-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/10).
3922 */
3877 3923
3878 dataptr = data; 3924 dataptr = data;
3879 ctr = 0; 3925 ctr = 0;
@@ -4015,11 +4061,13 @@ jpeg_fdct_4x8 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
4015 /* Pre-zero output coefficient block. */ 4061 /* Pre-zero output coefficient block. */
4016 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 4062 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
4017 4063
4018 /* Pass 1: process rows. */ 4064 /* Pass 1: process rows.
4019 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 4065 * Note results are scaled up by sqrt(8) compared to a true DCT;
4020 /* furthermore, we scale the results by 2**PASS1_BITS. */ 4066 * furthermore, we scale the results by 2**PASS1_BITS.
4021 /* We must also scale the output by 8/4 = 2, which we add here. */ 4067 * We must also scale the output by 8/4 = 2, which we add here.
4022 /* 4-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/16). */ 4068 * 4-point FDCT kernel,
4069 * cK represents sqrt(2) * cos(K*pi/16) [refers to 8-point FDCT].
4070 */
4023 4071
4024 dataptr = data; 4072 dataptr = data;
4025 for (ctr = 0; ctr < DCTSIZE; ctr++) { 4073 for (ctr = 0; ctr < DCTSIZE; ctr++) {
@@ -4057,12 +4105,13 @@ jpeg_fdct_4x8 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
4057 /* Pass 2: process columns. 4105 /* Pass 2: process columns.
4058 * We remove the PASS1_BITS scaling, but leave the results scaled up 4106 * We remove the PASS1_BITS scaling, but leave the results scaled up
4059 * by an overall factor of 8. 4107 * by an overall factor of 8.
4108 * 8-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/16).
4060 */ 4109 */
4061 4110
4062 dataptr = data; 4111 dataptr = data;
4063 for (ctr = 0; ctr < 4; ctr++) { 4112 for (ctr = 0; ctr < 4; ctr++) {
4064 /* Even part per LL&M figure 1 --- note that published figure is faulty; 4113 /* Even part per LL&M figure 1 --- note that published figure is faulty;
4065 * rotator "sqrt(2)*c1" should be "sqrt(2)*c6". 4114 * rotator "c1" should be "c6".
4066 */ 4115 */
4067 4116
4068 tmp0 = dataptr[DCTSIZE*0] + dataptr[DCTSIZE*7]; 4117 tmp0 = dataptr[DCTSIZE*0] + dataptr[DCTSIZE*7];
@@ -4084,47 +4133,49 @@ jpeg_fdct_4x8 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
4084 dataptr[DCTSIZE*0] = (DCTELEM) RIGHT_SHIFT(tmp10 + tmp11, PASS1_BITS); 4133 dataptr[DCTSIZE*0] = (DCTELEM) RIGHT_SHIFT(tmp10 + tmp11, PASS1_BITS);
4085 dataptr[DCTSIZE*4] = (DCTELEM) RIGHT_SHIFT(tmp10 - tmp11, PASS1_BITS); 4134 dataptr[DCTSIZE*4] = (DCTELEM) RIGHT_SHIFT(tmp10 - tmp11, PASS1_BITS);
4086 4135
4087 z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100); 4136 z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100); /* c6 */
4088 /* Add fudge factor here for final descale. */ 4137 /* Add fudge factor here for final descale. */
4089 z1 += ONE << (CONST_BITS+PASS1_BITS-1); 4138 z1 += ONE << (CONST_BITS+PASS1_BITS-1);
4139
4090 dataptr[DCTSIZE*2] = (DCTELEM) 4140 dataptr[DCTSIZE*2] = (DCTELEM)
4091 RIGHT_SHIFT(z1 + MULTIPLY(tmp12, FIX_0_765366865), CONST_BITS+PASS1_BITS); 4141 RIGHT_SHIFT(z1 + MULTIPLY(tmp12, FIX_0_765366865), /* c2-c6 */
4142 CONST_BITS+PASS1_BITS);
4092 dataptr[DCTSIZE*6] = (DCTELEM) 4143 dataptr[DCTSIZE*6] = (DCTELEM)
4093 RIGHT_SHIFT(z1 - MULTIPLY(tmp13, FIX_1_847759065), CONST_BITS+PASS1_BITS); 4144 RIGHT_SHIFT(z1 - MULTIPLY(tmp13, FIX_1_847759065), /* c2+c6 */
4145 CONST_BITS+PASS1_BITS);
4094 4146
4095 /* Odd part per figure 8 --- note paper omits factor of sqrt(2). 4147 /* Odd part per figure 8 --- note paper omits factor of sqrt(2).
4096 * 8-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/16).
4097 * i0..i3 in the paper are tmp0..tmp3 here. 4148 * i0..i3 in the paper are tmp0..tmp3 here.
4098 */ 4149 */
4099 4150
4100 tmp10 = tmp0 + tmp3;
4101 tmp11 = tmp1 + tmp2;
4102 tmp12 = tmp0 + tmp2; 4151 tmp12 = tmp0 + tmp2;
4103 tmp13 = tmp1 + tmp3; 4152 tmp13 = tmp1 + tmp3;
4104 z1 = MULTIPLY(tmp12 + tmp13, FIX_1_175875602); /* c3 */ 4153
4154 z1 = MULTIPLY(tmp12 + tmp13, FIX_1_175875602); /* c3 */
4105 /* Add fudge factor here for final descale. */ 4155 /* Add fudge factor here for final descale. */
4106 z1 += ONE << (CONST_BITS+PASS1_BITS-1); 4156 z1 += ONE << (CONST_BITS+PASS1_BITS-1);
4107 4157
4108 tmp0 = MULTIPLY(tmp0, FIX_1_501321110); /* c1+c3-c5-c7 */ 4158 tmp12 = MULTIPLY(tmp12, - FIX_0_390180644); /* -c3+c5 */
4109 tmp1 = MULTIPLY(tmp1, FIX_3_072711026); /* c1+c3+c5-c7 */ 4159 tmp13 = MULTIPLY(tmp13, - FIX_1_961570560); /* -c3-c5 */
4110 tmp2 = MULTIPLY(tmp2, FIX_2_053119869); /* c1+c3-c5+c7 */
4111 tmp3 = MULTIPLY(tmp3, FIX_0_298631336); /* -c1+c3+c5-c7 */
4112 tmp10 = MULTIPLY(tmp10, - FIX_0_899976223); /* c7-c3 */
4113 tmp11 = MULTIPLY(tmp11, - FIX_2_562915447); /* -c1-c3 */
4114 tmp12 = MULTIPLY(tmp12, - FIX_0_390180644); /* c5-c3 */
4115 tmp13 = MULTIPLY(tmp13, - FIX_1_961570560); /* -c3-c5 */
4116
4117 tmp12 += z1; 4160 tmp12 += z1;
4118 tmp13 += z1; 4161 tmp13 += z1;
4119 4162
4120 dataptr[DCTSIZE*1] = (DCTELEM) 4163 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* -c3+c7 */
4121 RIGHT_SHIFT(tmp0 + tmp10 + tmp12, CONST_BITS+PASS1_BITS); 4164 tmp0 = MULTIPLY(tmp0, FIX_1_501321110); /* c1+c3-c5-c7 */
4122 dataptr[DCTSIZE*3] = (DCTELEM) 4165 tmp3 = MULTIPLY(tmp3, FIX_0_298631336); /* -c1+c3+c5-c7 */
4123 RIGHT_SHIFT(tmp1 + tmp11 + tmp13, CONST_BITS+PASS1_BITS); 4166 tmp0 += z1 + tmp12;
4124 dataptr[DCTSIZE*5] = (DCTELEM) 4167 tmp3 += z1 + tmp13;
4125 RIGHT_SHIFT(tmp2 + tmp11 + tmp12, CONST_BITS+PASS1_BITS); 4168
4126 dataptr[DCTSIZE*7] = (DCTELEM) 4169 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* -c1-c3 */
4127 RIGHT_SHIFT(tmp3 + tmp10 + tmp13, CONST_BITS+PASS1_BITS); 4170 tmp1 = MULTIPLY(tmp1, FIX_3_072711026); /* c1+c3+c5-c7 */
4171 tmp2 = MULTIPLY(tmp2, FIX_2_053119869); /* c1+c3-c5+c7 */
4172 tmp1 += z1 + tmp13;
4173 tmp2 += z1 + tmp12;
4174
4175 dataptr[DCTSIZE*1] = (DCTELEM) RIGHT_SHIFT(tmp0, CONST_BITS+PASS1_BITS);
4176 dataptr[DCTSIZE*3] = (DCTELEM) RIGHT_SHIFT(tmp1, CONST_BITS+PASS1_BITS);
4177 dataptr[DCTSIZE*5] = (DCTELEM) RIGHT_SHIFT(tmp2, CONST_BITS+PASS1_BITS);
4178 dataptr[DCTSIZE*7] = (DCTELEM) RIGHT_SHIFT(tmp3, CONST_BITS+PASS1_BITS);
4128 4179
4129 dataptr++; /* advance pointer to next column */ 4180 dataptr++; /* advance pointer to next column */
4130 } 4181 }
@@ -4150,12 +4201,13 @@ jpeg_fdct_3x6 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
4150 /* Pre-zero output coefficient block. */ 4201 /* Pre-zero output coefficient block. */
4151 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 4202 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
4152 4203
4153 /* Pass 1: process rows. */ 4204 /* Pass 1: process rows.
4154 /* Note results are scaled up by sqrt(8) compared to a true DCT; */ 4205 * Note results are scaled up by sqrt(8) compared to a true DCT;
4155 /* furthermore, we scale the results by 2**PASS1_BITS. */ 4206 * furthermore, we scale the results by 2**PASS1_BITS.
4156 /* We scale the results further by 2 as part of output adaption */ 4207 * We scale the results further by 2 as part of output adaption
4157 /* scaling for different DCT size. */ 4208 * scaling for different DCT size.
4158 /* 3-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/6). */ 4209 * 3-point FDCT kernel, cK represents sqrt(2) * cos(K*pi/6).
4210 */
4159 4211
4160 dataptr = data; 4212 dataptr = data;
4161 for (ctr = 0; ctr < 6; ctr++) { 4213 for (ctr = 0; ctr < 6; ctr++) {
@@ -4255,9 +4307,10 @@ jpeg_fdct_2x4 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
4255 /* Pre-zero output coefficient block. */ 4307 /* Pre-zero output coefficient block. */
4256 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 4308 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
4257 4309
4258 /* Pass 1: process rows. */ 4310 /* Pass 1: process rows.
4259 /* Note results are scaled up by sqrt(8) compared to a true DCT. */ 4311 * Note results are scaled up by sqrt(8) compared to a true DCT.
4260 /* We must also scale the output by (8/2)*(8/4) = 2**3, which we add here. */ 4312 * We must also scale the output by (8/2)*(8/4) = 2**3, which we add here.
4313 */
4261 4314
4262 dataptr = data; 4315 dataptr = data;
4263 for (ctr = 0; ctr < 4; ctr++) { 4316 for (ctr = 0; ctr < 4; ctr++) {
@@ -4329,18 +4382,23 @@ jpeg_fdct_1x2 (DCTELEM * data, JSAMPARRAY sample_data, JDIMENSION start_col)
4329 /* Pre-zero output coefficient block. */ 4382 /* Pre-zero output coefficient block. */
4330 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2); 4383 MEMZERO(data, SIZEOF(DCTELEM) * DCTSIZE2);
4331 4384
4332 tmp0 = GETJSAMPLE(sample_data[0][start_col]); 4385 /* Pass 1: empty. */
4333 tmp1 = GETJSAMPLE(sample_data[1][start_col]);
4334 4386
4335 /* We leave the results scaled up by an overall factor of 8. 4387 /* Pass 2: process columns.
4388 * We leave the results scaled up by an overall factor of 8.
4336 * We must also scale the output by (8/1)*(8/2) = 2**5. 4389 * We must also scale the output by (8/1)*(8/2) = 2**5.
4337 */ 4390 */
4338 4391
4339 /* Even part */ 4392 /* Even part */
4393
4394 tmp0 = GETJSAMPLE(sample_data[0][start_col]);
4395 tmp1 = GETJSAMPLE(sample_data[1][start_col]);
4396
4340 /* Apply unsigned->signed conversion */ 4397 /* Apply unsigned->signed conversion */
4341 data[DCTSIZE*0] = (DCTELEM) ((tmp0 + tmp1 - 2 * CENTERJSAMPLE) << 5); 4398 data[DCTSIZE*0] = (DCTELEM) ((tmp0 + tmp1 - 2 * CENTERJSAMPLE) << 5);
4342 4399
4343 /* Odd part */ 4400 /* Odd part */
4401
4344 data[DCTSIZE*1] = (DCTELEM) ((tmp0 - tmp1) << 5); 4402 data[DCTSIZE*1] = (DCTELEM) ((tmp0 - tmp1) << 5);
4345} 4403}
4346 4404
diff --git a/gs/jpeg/jidctint.c b/gs/jpeg/jidctint.c
index dcdf7ce45..76fe5d9cf 100644
--- a/gs/jpeg/jidctint.c
+++ b/gs/jpeg/jidctint.c
@@ -2,7 +2,7 @@
2 * jidctint.c 2 * jidctint.c
3 * 3 *
4 * Copyright (C) 1991-1998, Thomas G. Lane. 4 * Copyright (C) 1991-1998, Thomas G. Lane.
5 * Modification developed 2002-2009 by Guido Vollbeding. 5 * Modification developed 2002-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -165,6 +165,8 @@
165 165
166/* 166/*
167 * Perform dequantization and inverse DCT on one block of coefficients. 167 * Perform dequantization and inverse DCT on one block of coefficients.
168 *
169 * cK represents sqrt(2) * cos(K*pi/16).
168 */ 170 */
169 171
170GLOBAL(void) 172GLOBAL(void)
@@ -184,9 +186,10 @@ jpeg_idct_islow (j_decompress_ptr cinfo, jpeg_component_info * compptr,
184 int workspace[DCTSIZE2]; /* buffers data between passes */ 186 int workspace[DCTSIZE2]; /* buffers data between passes */
185 SHIFT_TEMPS 187 SHIFT_TEMPS
186 188
187 /* Pass 1: process columns from input, store into work array. */ 189 /* Pass 1: process columns from input, store into work array.
188 /* Note results are scaled up by sqrt(8) compared to a true IDCT; */ 190 * Note results are scaled up by sqrt(8) compared to a true IDCT;
189 /* furthermore, we scale the results by 2**PASS1_BITS. */ 191 * furthermore, we scale the results by 2**PASS1_BITS.
192 */
190 193
191 inptr = coef_block; 194 inptr = coef_block;
192 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table; 195 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
@@ -223,15 +226,16 @@ jpeg_idct_islow (j_decompress_ptr cinfo, jpeg_component_info * compptr,
223 continue; 226 continue;
224 } 227 }
225 228
226 /* Even part: reverse the even part of the forward DCT. */ 229 /* Even part: reverse the even part of the forward DCT.
227 /* The rotator is sqrt(2)*c(-6). */ 230 * The rotator is c(-6).
228 231 */
232
229 z2 = DEQUANTIZE(inptr[DCTSIZE*2], quantptr[DCTSIZE*2]); 233 z2 = DEQUANTIZE(inptr[DCTSIZE*2], quantptr[DCTSIZE*2]);
230 z3 = DEQUANTIZE(inptr[DCTSIZE*6], quantptr[DCTSIZE*6]); 234 z3 = DEQUANTIZE(inptr[DCTSIZE*6], quantptr[DCTSIZE*6]);
231 235
232 z1 = MULTIPLY(z2 + z3, FIX_0_541196100); 236 z1 = MULTIPLY(z2 + z3, FIX_0_541196100); /* c6 */
233 tmp2 = z1 + MULTIPLY(z2, FIX_0_765366865); 237 tmp2 = z1 + MULTIPLY(z2, FIX_0_765366865); /* c2-c6 */
234 tmp3 = z1 - MULTIPLY(z3, FIX_1_847759065); 238 tmp3 = z1 - MULTIPLY(z3, FIX_1_847759065); /* c2+c6 */
235 239
236 z2 = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]); 240 z2 = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]);
237 z3 = DEQUANTIZE(inptr[DCTSIZE*4], quantptr[DCTSIZE*4]); 241 z3 = DEQUANTIZE(inptr[DCTSIZE*4], quantptr[DCTSIZE*4]);
@@ -256,25 +260,25 @@ jpeg_idct_islow (j_decompress_ptr cinfo, jpeg_component_info * compptr,
256 tmp1 = DEQUANTIZE(inptr[DCTSIZE*5], quantptr[DCTSIZE*5]); 260 tmp1 = DEQUANTIZE(inptr[DCTSIZE*5], quantptr[DCTSIZE*5]);
257 tmp2 = DEQUANTIZE(inptr[DCTSIZE*3], quantptr[DCTSIZE*3]); 261 tmp2 = DEQUANTIZE(inptr[DCTSIZE*3], quantptr[DCTSIZE*3]);
258 tmp3 = DEQUANTIZE(inptr[DCTSIZE*1], quantptr[DCTSIZE*1]); 262 tmp3 = DEQUANTIZE(inptr[DCTSIZE*1], quantptr[DCTSIZE*1]);
259 263
260 z2 = tmp0 + tmp2; 264 z2 = tmp0 + tmp2;
261 z3 = tmp1 + tmp3; 265 z3 = tmp1 + tmp3;
262 266
263 z1 = MULTIPLY(z2 + z3, FIX_1_175875602); /* sqrt(2) * c3 */ 267 z1 = MULTIPLY(z2 + z3, FIX_1_175875602); /* c3 */
264 z2 = MULTIPLY(z2, - FIX_1_961570560); /* sqrt(2) * (-c3-c5) */ 268 z2 = MULTIPLY(z2, - FIX_1_961570560); /* -c3-c5 */
265 z3 = MULTIPLY(z3, - FIX_0_390180644); /* sqrt(2) * (c5-c3) */ 269 z3 = MULTIPLY(z3, - FIX_0_390180644); /* -c3+c5 */
266 z2 += z1; 270 z2 += z1;
267 z3 += z1; 271 z3 += z1;
268 272
269 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* sqrt(2) * (c7-c3) */ 273 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* -c3+c7 */
270 tmp0 = MULTIPLY(tmp0, FIX_0_298631336); /* sqrt(2) * (-c1+c3+c5-c7) */ 274 tmp0 = MULTIPLY(tmp0, FIX_0_298631336); /* -c1+c3+c5-c7 */
271 tmp3 = MULTIPLY(tmp3, FIX_1_501321110); /* sqrt(2) * ( c1+c3-c5-c7) */ 275 tmp3 = MULTIPLY(tmp3, FIX_1_501321110); /* c1+c3-c5-c7 */
272 tmp0 += z1 + z2; 276 tmp0 += z1 + z2;
273 tmp3 += z1 + z3; 277 tmp3 += z1 + z3;
274 278
275 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* sqrt(2) * (-c1-c3) */ 279 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* -c1-c3 */
276 tmp1 = MULTIPLY(tmp1, FIX_2_053119869); /* sqrt(2) * ( c1+c3-c5+c7) */ 280 tmp1 = MULTIPLY(tmp1, FIX_2_053119869); /* c1+c3-c5+c7 */
277 tmp2 = MULTIPLY(tmp2, FIX_3_072711026); /* sqrt(2) * ( c1+c3+c5-c7) */ 281 tmp2 = MULTIPLY(tmp2, FIX_3_072711026); /* c1+c3+c5-c7 */
278 tmp1 += z1 + z3; 282 tmp1 += z1 + z3;
279 tmp2 += z1 + z2; 283 tmp2 += z1 + z2;
280 284
@@ -288,15 +292,16 @@ jpeg_idct_islow (j_decompress_ptr cinfo, jpeg_component_info * compptr,
288 wsptr[DCTSIZE*5] = (int) RIGHT_SHIFT(tmp12 - tmp1, CONST_BITS-PASS1_BITS); 292 wsptr[DCTSIZE*5] = (int) RIGHT_SHIFT(tmp12 - tmp1, CONST_BITS-PASS1_BITS);
289 wsptr[DCTSIZE*3] = (int) RIGHT_SHIFT(tmp13 + tmp0, CONST_BITS-PASS1_BITS); 293 wsptr[DCTSIZE*3] = (int) RIGHT_SHIFT(tmp13 + tmp0, CONST_BITS-PASS1_BITS);
290 wsptr[DCTSIZE*4] = (int) RIGHT_SHIFT(tmp13 - tmp0, CONST_BITS-PASS1_BITS); 294 wsptr[DCTSIZE*4] = (int) RIGHT_SHIFT(tmp13 - tmp0, CONST_BITS-PASS1_BITS);
291 295
292 inptr++; /* advance pointers to next column */ 296 inptr++; /* advance pointers to next column */
293 quantptr++; 297 quantptr++;
294 wsptr++; 298 wsptr++;
295 } 299 }
296 300
297 /* Pass 2: process rows from work array, store into output array. */ 301 /* Pass 2: process rows from work array, store into output array.
298 /* Note that we must descale the results by a factor of 8 == 2**3, */ 302 * Note that we must descale the results by a factor of 8 == 2**3,
299 /* and also undo the PASS1_BITS scaling. */ 303 * and also undo the PASS1_BITS scaling.
304 */
300 305
301 wsptr = workspace; 306 wsptr = workspace;
302 for (ctr = 0; ctr < DCTSIZE; ctr++) { 307 for (ctr = 0; ctr < DCTSIZE; ctr++) {
@@ -330,15 +335,16 @@ jpeg_idct_islow (j_decompress_ptr cinfo, jpeg_component_info * compptr,
330 } 335 }
331#endif 336#endif
332 337
333 /* Even part: reverse the even part of the forward DCT. */ 338 /* Even part: reverse the even part of the forward DCT.
334 /* The rotator is sqrt(2)*c(-6). */ 339 * The rotator is c(-6).
335 340 */
341
336 z2 = (INT32) wsptr[2]; 342 z2 = (INT32) wsptr[2];
337 z3 = (INT32) wsptr[6]; 343 z3 = (INT32) wsptr[6];
338 344
339 z1 = MULTIPLY(z2 + z3, FIX_0_541196100); 345 z1 = MULTIPLY(z2 + z3, FIX_0_541196100); /* c6 */
340 tmp2 = z1 + MULTIPLY(z2, FIX_0_765366865); 346 tmp2 = z1 + MULTIPLY(z2, FIX_0_765366865); /* c2-c6 */
341 tmp3 = z1 - MULTIPLY(z3, FIX_1_847759065); 347 tmp3 = z1 - MULTIPLY(z3, FIX_1_847759065); /* c2+c6 */
342 348
343 /* Add fudge factor here for final descale. */ 349 /* Add fudge factor here for final descale. */
344 z2 = (INT32) wsptr[0] + (ONE << (PASS1_BITS+2)); 350 z2 = (INT32) wsptr[0] + (ONE << (PASS1_BITS+2));
@@ -346,7 +352,7 @@ jpeg_idct_islow (j_decompress_ptr cinfo, jpeg_component_info * compptr,
346 352
347 tmp0 = (z2 + z3) << CONST_BITS; 353 tmp0 = (z2 + z3) << CONST_BITS;
348 tmp1 = (z2 - z3) << CONST_BITS; 354 tmp1 = (z2 - z3) << CONST_BITS;
349 355
350 tmp10 = tmp0 + tmp2; 356 tmp10 = tmp0 + tmp2;
351 tmp13 = tmp0 - tmp2; 357 tmp13 = tmp0 - tmp2;
352 tmp11 = tmp1 + tmp3; 358 tmp11 = tmp1 + tmp3;
@@ -364,21 +370,21 @@ jpeg_idct_islow (j_decompress_ptr cinfo, jpeg_component_info * compptr,
364 z2 = tmp0 + tmp2; 370 z2 = tmp0 + tmp2;
365 z3 = tmp1 + tmp3; 371 z3 = tmp1 + tmp3;
366 372
367 z1 = MULTIPLY(z2 + z3, FIX_1_175875602); /* sqrt(2) * c3 */ 373 z1 = MULTIPLY(z2 + z3, FIX_1_175875602); /* c3 */
368 z2 = MULTIPLY(z2, - FIX_1_961570560); /* sqrt(2) * (-c3-c5) */ 374 z2 = MULTIPLY(z2, - FIX_1_961570560); /* -c3-c5 */
369 z3 = MULTIPLY(z3, - FIX_0_390180644); /* sqrt(2) * (c5-c3) */ 375 z3 = MULTIPLY(z3, - FIX_0_390180644); /* -c3+c5 */
370 z2 += z1; 376 z2 += z1;
371 z3 += z1; 377 z3 += z1;
372 378
373 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* sqrt(2) * (c7-c3) */ 379 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* -c3+c7 */
374 tmp0 = MULTIPLY(tmp0, FIX_0_298631336); /* sqrt(2) * (-c1+c3+c5-c7) */ 380 tmp0 = MULTIPLY(tmp0, FIX_0_298631336); /* -c1+c3+c5-c7 */
375 tmp3 = MULTIPLY(tmp3, FIX_1_501321110); /* sqrt(2) * ( c1+c3-c5-c7) */ 381 tmp3 = MULTIPLY(tmp3, FIX_1_501321110); /* c1+c3-c5-c7 */
376 tmp0 += z1 + z2; 382 tmp0 += z1 + z2;
377 tmp3 += z1 + z3; 383 tmp3 += z1 + z3;
378 384
379 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* sqrt(2) * (-c1-c3) */ 385 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* -c1-c3 */
380 tmp1 = MULTIPLY(tmp1, FIX_2_053119869); /* sqrt(2) * ( c1+c3-c5+c7) */ 386 tmp1 = MULTIPLY(tmp1, FIX_2_053119869); /* c1+c3-c5+c7 */
381 tmp2 = MULTIPLY(tmp2, FIX_3_072711026); /* sqrt(2) * ( c1+c3+c5-c7) */ 387 tmp2 = MULTIPLY(tmp2, FIX_3_072711026); /* c1+c3+c5-c7 */
382 tmp1 += z1 + z3; 388 tmp1 += z1 + z3;
383 tmp2 += z1 + z2; 389 tmp2 += z1 + z2;
384 390
@@ -2835,9 +2841,11 @@ jpeg_idct_16x8 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
2835 int workspace[8*8]; /* buffers data between passes */ 2841 int workspace[8*8]; /* buffers data between passes */
2836 SHIFT_TEMPS 2842 SHIFT_TEMPS
2837 2843
2838 /* Pass 1: process columns from input, store into work array. */ 2844 /* Pass 1: process columns from input, store into work array.
2839 /* Note results are scaled up by sqrt(8) compared to a true IDCT; */ 2845 * Note results are scaled up by sqrt(8) compared to a true IDCT;
2840 /* furthermore, we scale the results by 2**PASS1_BITS. */ 2846 * furthermore, we scale the results by 2**PASS1_BITS.
2847 * 8-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/16).
2848 */
2841 2849
2842 inptr = coef_block; 2850 inptr = coef_block;
2843 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table; 2851 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
@@ -2851,14 +2859,14 @@ jpeg_idct_16x8 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
2851 * With typical images and quantization tables, half or more of the 2859 * With typical images and quantization tables, half or more of the
2852 * column DCT calculations can be simplified this way. 2860 * column DCT calculations can be simplified this way.
2853 */ 2861 */
2854 2862
2855 if (inptr[DCTSIZE*1] == 0 && inptr[DCTSIZE*2] == 0 && 2863 if (inptr[DCTSIZE*1] == 0 && inptr[DCTSIZE*2] == 0 &&
2856 inptr[DCTSIZE*3] == 0 && inptr[DCTSIZE*4] == 0 && 2864 inptr[DCTSIZE*3] == 0 && inptr[DCTSIZE*4] == 0 &&
2857 inptr[DCTSIZE*5] == 0 && inptr[DCTSIZE*6] == 0 && 2865 inptr[DCTSIZE*5] == 0 && inptr[DCTSIZE*6] == 0 &&
2858 inptr[DCTSIZE*7] == 0) { 2866 inptr[DCTSIZE*7] == 0) {
2859 /* AC terms all zero */ 2867 /* AC terms all zero */
2860 int dcval = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]) << PASS1_BITS; 2868 int dcval = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]) << PASS1_BITS;
2861 2869
2862 wsptr[DCTSIZE*0] = dcval; 2870 wsptr[DCTSIZE*0] = dcval;
2863 wsptr[DCTSIZE*1] = dcval; 2871 wsptr[DCTSIZE*1] = dcval;
2864 wsptr[DCTSIZE*2] = dcval; 2872 wsptr[DCTSIZE*2] = dcval;
@@ -2867,23 +2875,24 @@ jpeg_idct_16x8 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
2867 wsptr[DCTSIZE*5] = dcval; 2875 wsptr[DCTSIZE*5] = dcval;
2868 wsptr[DCTSIZE*6] = dcval; 2876 wsptr[DCTSIZE*6] = dcval;
2869 wsptr[DCTSIZE*7] = dcval; 2877 wsptr[DCTSIZE*7] = dcval;
2870 2878
2871 inptr++; /* advance pointers to next column */ 2879 inptr++; /* advance pointers to next column */
2872 quantptr++; 2880 quantptr++;
2873 wsptr++; 2881 wsptr++;
2874 continue; 2882 continue;
2875 } 2883 }
2876 2884
2877 /* Even part: reverse the even part of the forward DCT. */ 2885 /* Even part: reverse the even part of the forward DCT.
2878 /* The rotator is sqrt(2)*c(-6). */ 2886 * The rotator is c(-6).
2879 2887 */
2888
2880 z2 = DEQUANTIZE(inptr[DCTSIZE*2], quantptr[DCTSIZE*2]); 2889 z2 = DEQUANTIZE(inptr[DCTSIZE*2], quantptr[DCTSIZE*2]);
2881 z3 = DEQUANTIZE(inptr[DCTSIZE*6], quantptr[DCTSIZE*6]); 2890 z3 = DEQUANTIZE(inptr[DCTSIZE*6], quantptr[DCTSIZE*6]);
2882 2891
2883 z1 = MULTIPLY(z2 + z3, FIX_0_541196100); 2892 z1 = MULTIPLY(z2 + z3, FIX_0_541196100); /* c6 */
2884 tmp2 = z1 + MULTIPLY(z2, FIX_0_765366865); 2893 tmp2 = z1 + MULTIPLY(z2, FIX_0_765366865); /* c2-c6 */
2885 tmp3 = z1 - MULTIPLY(z3, FIX_1_847759065); 2894 tmp3 = z1 - MULTIPLY(z3, FIX_1_847759065); /* c2+c6 */
2886 2895
2887 z2 = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]); 2896 z2 = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]);
2888 z3 = DEQUANTIZE(inptr[DCTSIZE*4], quantptr[DCTSIZE*4]); 2897 z3 = DEQUANTIZE(inptr[DCTSIZE*4], quantptr[DCTSIZE*4]);
2889 z2 <<= CONST_BITS; 2898 z2 <<= CONST_BITS;
@@ -2893,44 +2902,44 @@ jpeg_idct_16x8 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
2893 2902
2894 tmp0 = z2 + z3; 2903 tmp0 = z2 + z3;
2895 tmp1 = z2 - z3; 2904 tmp1 = z2 - z3;
2896 2905
2897 tmp10 = tmp0 + tmp2; 2906 tmp10 = tmp0 + tmp2;
2898 tmp13 = tmp0 - tmp2; 2907 tmp13 = tmp0 - tmp2;
2899 tmp11 = tmp1 + tmp3; 2908 tmp11 = tmp1 + tmp3;
2900 tmp12 = tmp1 - tmp3; 2909 tmp12 = tmp1 - tmp3;
2901 2910
2902 /* Odd part per figure 8; the matrix is unitary and hence its 2911 /* Odd part per figure 8; the matrix is unitary and hence its
2903 * transpose is its inverse. i0..i3 are y7,y5,y3,y1 respectively. 2912 * transpose is its inverse. i0..i3 are y7,y5,y3,y1 respectively.
2904 */ 2913 */
2905 2914
2906 tmp0 = DEQUANTIZE(inptr[DCTSIZE*7], quantptr[DCTSIZE*7]); 2915 tmp0 = DEQUANTIZE(inptr[DCTSIZE*7], quantptr[DCTSIZE*7]);
2907 tmp1 = DEQUANTIZE(inptr[DCTSIZE*5], quantptr[DCTSIZE*5]); 2916 tmp1 = DEQUANTIZE(inptr[DCTSIZE*5], quantptr[DCTSIZE*5]);
2908 tmp2 = DEQUANTIZE(inptr[DCTSIZE*3], quantptr[DCTSIZE*3]); 2917 tmp2 = DEQUANTIZE(inptr[DCTSIZE*3], quantptr[DCTSIZE*3]);
2909 tmp3 = DEQUANTIZE(inptr[DCTSIZE*1], quantptr[DCTSIZE*1]); 2918 tmp3 = DEQUANTIZE(inptr[DCTSIZE*1], quantptr[DCTSIZE*1]);
2910 2919
2911 z2 = tmp0 + tmp2; 2920 z2 = tmp0 + tmp2;
2912 z3 = tmp1 + tmp3; 2921 z3 = tmp1 + tmp3;
2913 2922
2914 z1 = MULTIPLY(z2 + z3, FIX_1_175875602); /* sqrt(2) * c3 */ 2923 z1 = MULTIPLY(z2 + z3, FIX_1_175875602); /* c3 */
2915 z2 = MULTIPLY(z2, - FIX_1_961570560); /* sqrt(2) * (-c3-c5) */ 2924 z2 = MULTIPLY(z2, - FIX_1_961570560); /* -c3-c5 */
2916 z3 = MULTIPLY(z3, - FIX_0_390180644); /* sqrt(2) * (c5-c3) */ 2925 z3 = MULTIPLY(z3, - FIX_0_390180644); /* -c3+c5 */
2917 z2 += z1; 2926 z2 += z1;
2918 z3 += z1; 2927 z3 += z1;
2919 2928
2920 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* sqrt(2) * (c7-c3) */ 2929 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* -c3+c7 */
2921 tmp0 = MULTIPLY(tmp0, FIX_0_298631336); /* sqrt(2) * (-c1+c3+c5-c7) */ 2930 tmp0 = MULTIPLY(tmp0, FIX_0_298631336); /* -c1+c3+c5-c7 */
2922 tmp3 = MULTIPLY(tmp3, FIX_1_501321110); /* sqrt(2) * ( c1+c3-c5-c7) */ 2931 tmp3 = MULTIPLY(tmp3, FIX_1_501321110); /* c1+c3-c5-c7 */
2923 tmp0 += z1 + z2; 2932 tmp0 += z1 + z2;
2924 tmp3 += z1 + z3; 2933 tmp3 += z1 + z3;
2925 2934
2926 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* sqrt(2) * (-c1-c3) */ 2935 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* -c1-c3 */
2927 tmp1 = MULTIPLY(tmp1, FIX_2_053119869); /* sqrt(2) * ( c1+c3-c5+c7) */ 2936 tmp1 = MULTIPLY(tmp1, FIX_2_053119869); /* c1+c3-c5+c7 */
2928 tmp2 = MULTIPLY(tmp2, FIX_3_072711026); /* sqrt(2) * ( c1+c3+c5-c7) */ 2937 tmp2 = MULTIPLY(tmp2, FIX_3_072711026); /* c1+c3+c5-c7 */
2929 tmp1 += z1 + z3; 2938 tmp1 += z1 + z3;
2930 tmp2 += z1 + z2; 2939 tmp2 += z1 + z2;
2931 2940
2932 /* Final output stage: inputs are tmp10..tmp13, tmp0..tmp3 */ 2941 /* Final output stage: inputs are tmp10..tmp13, tmp0..tmp3 */
2933 2942
2934 wsptr[DCTSIZE*0] = (int) RIGHT_SHIFT(tmp10 + tmp3, CONST_BITS-PASS1_BITS); 2943 wsptr[DCTSIZE*0] = (int) RIGHT_SHIFT(tmp10 + tmp3, CONST_BITS-PASS1_BITS);
2935 wsptr[DCTSIZE*7] = (int) RIGHT_SHIFT(tmp10 - tmp3, CONST_BITS-PASS1_BITS); 2944 wsptr[DCTSIZE*7] = (int) RIGHT_SHIFT(tmp10 - tmp3, CONST_BITS-PASS1_BITS);
2936 wsptr[DCTSIZE*1] = (int) RIGHT_SHIFT(tmp11 + tmp2, CONST_BITS-PASS1_BITS); 2945 wsptr[DCTSIZE*1] = (int) RIGHT_SHIFT(tmp11 + tmp2, CONST_BITS-PASS1_BITS);
@@ -2939,7 +2948,7 @@ jpeg_idct_16x8 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
2939 wsptr[DCTSIZE*5] = (int) RIGHT_SHIFT(tmp12 - tmp1, CONST_BITS-PASS1_BITS); 2948 wsptr[DCTSIZE*5] = (int) RIGHT_SHIFT(tmp12 - tmp1, CONST_BITS-PASS1_BITS);
2940 wsptr[DCTSIZE*3] = (int) RIGHT_SHIFT(tmp13 + tmp0, CONST_BITS-PASS1_BITS); 2949 wsptr[DCTSIZE*3] = (int) RIGHT_SHIFT(tmp13 + tmp0, CONST_BITS-PASS1_BITS);
2941 wsptr[DCTSIZE*4] = (int) RIGHT_SHIFT(tmp13 - tmp0, CONST_BITS-PASS1_BITS); 2950 wsptr[DCTSIZE*4] = (int) RIGHT_SHIFT(tmp13 - tmp0, CONST_BITS-PASS1_BITS);
2942 2951
2943 inptr++; /* advance pointers to next column */ 2952 inptr++; /* advance pointers to next column */
2944 quantptr++; 2953 quantptr++;
2945 wsptr++; 2954 wsptr++;
@@ -2948,6 +2957,7 @@ jpeg_idct_16x8 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
2948 /* Pass 2: process 8 rows from work array, store into output array. 2957 /* Pass 2: process 8 rows from work array, store into output array.
2949 * 16-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/32). 2958 * 16-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/32).
2950 */ 2959 */
2960
2951 wsptr = workspace; 2961 wsptr = workspace;
2952 for (ctr = 0; ctr < 8; ctr++) { 2962 for (ctr = 0; ctr < 8; ctr++) {
2953 outptr = output_buf[ctr] + output_col; 2963 outptr = output_buf[ctr] + output_col;
@@ -3109,6 +3119,7 @@ jpeg_idct_14x7 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
3109 /* Pass 1: process columns from input, store into work array. 3119 /* Pass 1: process columns from input, store into work array.
3110 * 7-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/14). 3120 * 7-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/14).
3111 */ 3121 */
3122
3112 inptr = coef_block; 3123 inptr = coef_block;
3113 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table; 3124 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
3114 wsptr = workspace; 3125 wsptr = workspace;
@@ -3164,6 +3175,7 @@ jpeg_idct_14x7 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
3164 /* Pass 2: process 7 rows from work array, store into output array. 3175 /* Pass 2: process 7 rows from work array, store into output array.
3165 * 14-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/28). 3176 * 14-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/28).
3166 */ 3177 */
3178
3167 wsptr = workspace; 3179 wsptr = workspace;
3168 for (ctr = 0; ctr < 7; ctr++) { 3180 for (ctr = 0; ctr < 7; ctr++) {
3169 outptr = output_buf[ctr] + output_col; 3181 outptr = output_buf[ctr] + output_col;
@@ -3304,6 +3316,7 @@ jpeg_idct_12x6 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
3304 /* Pass 1: process columns from input, store into work array. 3316 /* Pass 1: process columns from input, store into work array.
3305 * 6-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/12). 3317 * 6-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/12).
3306 */ 3318 */
3319
3307 inptr = coef_block; 3320 inptr = coef_block;
3308 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table; 3321 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
3309 wsptr = workspace; 3322 wsptr = workspace;
@@ -3346,6 +3359,7 @@ jpeg_idct_12x6 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
3346 /* Pass 2: process 6 rows from work array, store into output array. 3359 /* Pass 2: process 6 rows from work array, store into output array.
3347 * 12-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/24). 3360 * 12-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/24).
3348 */ 3361 */
3362
3349 wsptr = workspace; 3363 wsptr = workspace;
3350 for (ctr = 0; ctr < 6; ctr++) { 3364 for (ctr = 0; ctr < 6; ctr++) {
3351 outptr = output_buf[ctr] + output_col; 3365 outptr = output_buf[ctr] + output_col;
@@ -3480,6 +3494,7 @@ jpeg_idct_10x5 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
3480 /* Pass 1: process columns from input, store into work array. 3494 /* Pass 1: process columns from input, store into work array.
3481 * 5-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/10). 3495 * 5-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/10).
3482 */ 3496 */
3497
3483 inptr = coef_block; 3498 inptr = coef_block;
3484 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table; 3499 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
3485 wsptr = workspace; 3500 wsptr = workspace;
@@ -3520,6 +3535,7 @@ jpeg_idct_10x5 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
3520 /* Pass 2: process 5 rows from work array, store into output array. 3535 /* Pass 2: process 5 rows from work array, store into output array.
3521 * 10-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/20). 3536 * 10-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/20).
3522 */ 3537 */
3538
3523 wsptr = workspace; 3539 wsptr = workspace;
3524 for (ctr = 0; ctr < 5; ctr++) { 3540 for (ctr = 0; ctr < 5; ctr++) {
3525 outptr = output_buf[ctr] + output_col; 3541 outptr = output_buf[ctr] + output_col;
@@ -3639,8 +3655,10 @@ jpeg_idct_8x4 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
3639 SHIFT_TEMPS 3655 SHIFT_TEMPS
3640 3656
3641 /* Pass 1: process columns from input, store into work array. 3657 /* Pass 1: process columns from input, store into work array.
3642 * 4-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/16). 3658 * 4-point IDCT kernel,
3659 * cK represents sqrt(2) * cos(K*pi/16) [refers to 8-point IDCT].
3643 */ 3660 */
3661
3644 inptr = coef_block; 3662 inptr = coef_block;
3645 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table; 3663 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
3646 wsptr = workspace; 3664 wsptr = workspace;
@@ -3675,31 +3693,34 @@ jpeg_idct_8x4 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
3675 wsptr[8*2] = (int) (tmp12 - tmp2); 3693 wsptr[8*2] = (int) (tmp12 - tmp2);
3676 } 3694 }
3677 3695
3678 /* Pass 2: process rows from work array, store into output array. */ 3696 /* Pass 2: process rows from work array, store into output array.
3679 /* Note that we must descale the results by a factor of 8 == 2**3, */ 3697 * Note that we must descale the results by a factor of 8 == 2**3,
3680 /* and also undo the PASS1_BITS scaling. */ 3698 * and also undo the PASS1_BITS scaling.
3699 * 8-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/16).
3700 */
3681 3701
3682 wsptr = workspace; 3702 wsptr = workspace;
3683 for (ctr = 0; ctr < 4; ctr++) { 3703 for (ctr = 0; ctr < 4; ctr++) {
3684 outptr = output_buf[ctr] + output_col; 3704 outptr = output_buf[ctr] + output_col;
3685 3705
3686 /* Even part: reverse the even part of the forward DCT. */ 3706 /* Even part: reverse the even part of the forward DCT.
3687 /* The rotator is sqrt(2)*c(-6). */ 3707 * The rotator is c(-6).
3708 */
3688 3709
3689 z2 = (INT32) wsptr[2]; 3710 z2 = (INT32) wsptr[2];
3690 z3 = (INT32) wsptr[6]; 3711 z3 = (INT32) wsptr[6];
3691 3712
3692 z1 = MULTIPLY(z2 + z3, FIX_0_541196100); 3713 z1 = MULTIPLY(z2 + z3, FIX_0_541196100); /* c6 */
3693 tmp2 = z1 + MULTIPLY(z2, FIX_0_765366865); 3714 tmp2 = z1 + MULTIPLY(z2, FIX_0_765366865); /* c2-c6 */
3694 tmp3 = z1 - MULTIPLY(z3, FIX_1_847759065); 3715 tmp3 = z1 - MULTIPLY(z3, FIX_1_847759065); /* c2+c6 */
3695 3716
3696 /* Add fudge factor here for final descale. */ 3717 /* Add fudge factor here for final descale. */
3697 z2 = (INT32) wsptr[0] + (ONE << (PASS1_BITS+2)); 3718 z2 = (INT32) wsptr[0] + (ONE << (PASS1_BITS+2));
3698 z3 = (INT32) wsptr[4]; 3719 z3 = (INT32) wsptr[4];
3699 3720
3700 tmp0 = (z2 + z3) << CONST_BITS; 3721 tmp0 = (z2 + z3) << CONST_BITS;
3701 tmp1 = (z2 - z3) << CONST_BITS; 3722 tmp1 = (z2 - z3) << CONST_BITS;
3702 3723
3703 tmp10 = tmp0 + tmp2; 3724 tmp10 = tmp0 + tmp2;
3704 tmp13 = tmp0 - tmp2; 3725 tmp13 = tmp0 - tmp2;
3705 tmp11 = tmp1 + tmp3; 3726 tmp11 = tmp1 + tmp3;
@@ -3717,21 +3738,21 @@ jpeg_idct_8x4 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
3717 z2 = tmp0 + tmp2; 3738 z2 = tmp0 + tmp2;
3718 z3 = tmp1 + tmp3; 3739 z3 = tmp1 + tmp3;
3719 3740
3720 z1 = MULTIPLY(z2 + z3, FIX_1_175875602); /* sqrt(2) * c3 */ 3741 z1 = MULTIPLY(z2 + z3, FIX_1_175875602); /* c3 */
3721 z2 = MULTIPLY(z2, - FIX_1_961570560); /* sqrt(2) * (-c3-c5) */ 3742 z2 = MULTIPLY(z2, - FIX_1_961570560); /* -c3-c5 */
3722 z3 = MULTIPLY(z3, - FIX_0_390180644); /* sqrt(2) * (c5-c3) */ 3743 z3 = MULTIPLY(z3, - FIX_0_390180644); /* -c3+c5 */
3723 z2 += z1; 3744 z2 += z1;
3724 z3 += z1; 3745 z3 += z1;
3725 3746
3726 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* sqrt(2) * (c7-c3) */ 3747 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* -c3+c7 */
3727 tmp0 = MULTIPLY(tmp0, FIX_0_298631336); /* sqrt(2) * (-c1+c3+c5-c7) */ 3748 tmp0 = MULTIPLY(tmp0, FIX_0_298631336); /* -c1+c3+c5-c7 */
3728 tmp3 = MULTIPLY(tmp3, FIX_1_501321110); /* sqrt(2) * ( c1+c3-c5-c7) */ 3749 tmp3 = MULTIPLY(tmp3, FIX_1_501321110); /* c1+c3-c5-c7 */
3729 tmp0 += z1 + z2; 3750 tmp0 += z1 + z2;
3730 tmp3 += z1 + z3; 3751 tmp3 += z1 + z3;
3731 3752
3732 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* sqrt(2) * (-c1-c3) */ 3753 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* -c1-c3 */
3733 tmp1 = MULTIPLY(tmp1, FIX_2_053119869); /* sqrt(2) * ( c1+c3-c5+c7) */ 3754 tmp1 = MULTIPLY(tmp1, FIX_2_053119869); /* c1+c3-c5+c7 */
3734 tmp2 = MULTIPLY(tmp2, FIX_3_072711026); /* sqrt(2) * ( c1+c3+c5-c7) */ 3755 tmp2 = MULTIPLY(tmp2, FIX_3_072711026); /* c1+c3+c5-c7 */
3735 tmp1 += z1 + z3; 3756 tmp1 += z1 + z3;
3736 tmp2 += z1 + z2; 3757 tmp2 += z1 + z2;
3737 3758
@@ -3793,6 +3814,7 @@ jpeg_idct_6x3 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
3793 /* Pass 1: process columns from input, store into work array. 3814 /* Pass 1: process columns from input, store into work array.
3794 * 3-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/6). 3815 * 3-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/6).
3795 */ 3816 */
3817
3796 inptr = coef_block; 3818 inptr = coef_block;
3797 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table; 3819 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
3798 wsptr = workspace; 3820 wsptr = workspace;
@@ -3823,6 +3845,7 @@ jpeg_idct_6x3 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
3823 /* Pass 2: process 3 rows from work array, store into output array. 3845 /* Pass 2: process 3 rows from work array, store into output array.
3824 * 6-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/12). 3846 * 6-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/12).
3825 */ 3847 */
3848
3826 wsptr = workspace; 3849 wsptr = workspace;
3827 for (ctr = 0; ctr < 3; ctr++) { 3850 for (ctr = 0; ctr < 3; ctr++) {
3828 outptr = output_buf[ctr] + output_col; 3851 outptr = output_buf[ctr] + output_col;
@@ -3924,6 +3947,7 @@ jpeg_idct_4x2 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
3924 * 4-point IDCT kernel, 3947 * 4-point IDCT kernel,
3925 * cK represents sqrt(2) * cos(K*pi/16) [refers to 8-point IDCT]. 3948 * cK represents sqrt(2) * cos(K*pi/16) [refers to 8-point IDCT].
3926 */ 3949 */
3950
3927 wsptr = workspace; 3951 wsptr = workspace;
3928 for (ctr = 0; ctr < 2; ctr++) { 3952 for (ctr = 0; ctr < 2; ctr++) {
3929 outptr = output_buf[ctr] + output_col; 3953 outptr = output_buf[ctr] + output_col;
@@ -3979,7 +4003,7 @@ jpeg_idct_2x1 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
3979 JCOEFPTR coef_block, 4003 JCOEFPTR coef_block,
3980 JSAMPARRAY output_buf, JDIMENSION output_col) 4004 JSAMPARRAY output_buf, JDIMENSION output_col)
3981{ 4005{
3982 INT32 tmp0, tmp10; 4006 INT32 tmp0, tmp1;
3983 ISLOW_MULT_TYPE * quantptr; 4007 ISLOW_MULT_TYPE * quantptr;
3984 JSAMPROW outptr; 4008 JSAMPROW outptr;
3985 JSAMPLE *range_limit = IDCT_range_limit(cinfo); 4009 JSAMPLE *range_limit = IDCT_range_limit(cinfo);
@@ -3994,18 +4018,18 @@ jpeg_idct_2x1 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
3994 4018
3995 /* Even part */ 4019 /* Even part */
3996 4020
3997 tmp10 = DEQUANTIZE(coef_block[0], quantptr[0]); 4021 tmp0 = DEQUANTIZE(coef_block[0], quantptr[0]);
3998 /* Add fudge factor here for final descale. */ 4022 /* Add fudge factor here for final descale. */
3999 tmp10 += ONE << 2; 4023 tmp0 += ONE << 2;
4000 4024
4001 /* Odd part */ 4025 /* Odd part */
4002 4026
4003 tmp0 = DEQUANTIZE(coef_block[1], quantptr[1]); 4027 tmp1 = DEQUANTIZE(coef_block[1], quantptr[1]);
4004 4028
4005 /* Final output stage */ 4029 /* Final output stage */
4006 4030
4007 outptr[0] = range_limit[(int) RIGHT_SHIFT(tmp10 + tmp0, 3) & RANGE_MASK]; 4031 outptr[0] = range_limit[(int) RIGHT_SHIFT(tmp0 + tmp1, 3) & RANGE_MASK];
4008 outptr[1] = range_limit[(int) RIGHT_SHIFT(tmp10 - tmp0, 3) & RANGE_MASK]; 4032 outptr[1] = range_limit[(int) RIGHT_SHIFT(tmp0 - tmp1, 3) & RANGE_MASK];
4009} 4033}
4010 4034
4011 4035
@@ -4036,6 +4060,7 @@ jpeg_idct_8x16 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4036 /* Pass 1: process columns from input, store into work array. 4060 /* Pass 1: process columns from input, store into work array.
4037 * 16-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/32). 4061 * 16-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/32).
4038 */ 4062 */
4063
4039 inptr = coef_block; 4064 inptr = coef_block;
4040 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table; 4065 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
4041 wsptr = workspace; 4066 wsptr = workspace;
@@ -4134,69 +4159,72 @@ jpeg_idct_8x16 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4134 wsptr[8*7] = (int) RIGHT_SHIFT(tmp27 + tmp13, CONST_BITS-PASS1_BITS); 4159 wsptr[8*7] = (int) RIGHT_SHIFT(tmp27 + tmp13, CONST_BITS-PASS1_BITS);
4135 wsptr[8*8] = (int) RIGHT_SHIFT(tmp27 - tmp13, CONST_BITS-PASS1_BITS); 4160 wsptr[8*8] = (int) RIGHT_SHIFT(tmp27 - tmp13, CONST_BITS-PASS1_BITS);
4136 } 4161 }
4137 4162
4138 /* Pass 2: process rows from work array, store into output array. */ 4163 /* Pass 2: process rows from work array, store into output array.
4139 /* Note that we must descale the results by a factor of 8 == 2**3, */ 4164 * Note that we must descale the results by a factor of 8 == 2**3,
4140 /* and also undo the PASS1_BITS scaling. */ 4165 * and also undo the PASS1_BITS scaling.
4166 * 8-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/16).
4167 */
4141 4168
4142 wsptr = workspace; 4169 wsptr = workspace;
4143 for (ctr = 0; ctr < 16; ctr++) { 4170 for (ctr = 0; ctr < 16; ctr++) {
4144 outptr = output_buf[ctr] + output_col; 4171 outptr = output_buf[ctr] + output_col;
4145 4172
4146 /* Even part: reverse the even part of the forward DCT. */ 4173 /* Even part: reverse the even part of the forward DCT.
4147 /* The rotator is sqrt(2)*c(-6). */ 4174 * The rotator is c(-6).
4148 4175 */
4176
4149 z2 = (INT32) wsptr[2]; 4177 z2 = (INT32) wsptr[2];
4150 z3 = (INT32) wsptr[6]; 4178 z3 = (INT32) wsptr[6];
4151 4179
4152 z1 = MULTIPLY(z2 + z3, FIX_0_541196100); 4180 z1 = MULTIPLY(z2 + z3, FIX_0_541196100); /* c6 */
4153 tmp2 = z1 + MULTIPLY(z2, FIX_0_765366865); 4181 tmp2 = z1 + MULTIPLY(z2, FIX_0_765366865); /* c2-c6 */
4154 tmp3 = z1 - MULTIPLY(z3, FIX_1_847759065); 4182 tmp3 = z1 - MULTIPLY(z3, FIX_1_847759065); /* c2+c6 */
4155 4183
4156 /* Add fudge factor here for final descale. */ 4184 /* Add fudge factor here for final descale. */
4157 z2 = (INT32) wsptr[0] + (ONE << (PASS1_BITS+2)); 4185 z2 = (INT32) wsptr[0] + (ONE << (PASS1_BITS+2));
4158 z3 = (INT32) wsptr[4]; 4186 z3 = (INT32) wsptr[4];
4159 4187
4160 tmp0 = (z2 + z3) << CONST_BITS; 4188 tmp0 = (z2 + z3) << CONST_BITS;
4161 tmp1 = (z2 - z3) << CONST_BITS; 4189 tmp1 = (z2 - z3) << CONST_BITS;
4162 4190
4163 tmp10 = tmp0 + tmp2; 4191 tmp10 = tmp0 + tmp2;
4164 tmp13 = tmp0 - tmp2; 4192 tmp13 = tmp0 - tmp2;
4165 tmp11 = tmp1 + tmp3; 4193 tmp11 = tmp1 + tmp3;
4166 tmp12 = tmp1 - tmp3; 4194 tmp12 = tmp1 - tmp3;
4167 4195
4168 /* Odd part per figure 8; the matrix is unitary and hence its 4196 /* Odd part per figure 8; the matrix is unitary and hence its
4169 * transpose is its inverse. i0..i3 are y7,y5,y3,y1 respectively. 4197 * transpose is its inverse. i0..i3 are y7,y5,y3,y1 respectively.
4170 */ 4198 */
4171 4199
4172 tmp0 = (INT32) wsptr[7]; 4200 tmp0 = (INT32) wsptr[7];
4173 tmp1 = (INT32) wsptr[5]; 4201 tmp1 = (INT32) wsptr[5];
4174 tmp2 = (INT32) wsptr[3]; 4202 tmp2 = (INT32) wsptr[3];
4175 tmp3 = (INT32) wsptr[1]; 4203 tmp3 = (INT32) wsptr[1];
4176 4204
4177 z2 = tmp0 + tmp2; 4205 z2 = tmp0 + tmp2;
4178 z3 = tmp1 + tmp3; 4206 z3 = tmp1 + tmp3;
4179 4207
4180 z1 = MULTIPLY(z2 + z3, FIX_1_175875602); /* sqrt(2) * c3 */ 4208 z1 = MULTIPLY(z2 + z3, FIX_1_175875602); /* c3 */
4181 z2 = MULTIPLY(z2, - FIX_1_961570560); /* sqrt(2) * (-c3-c5) */ 4209 z2 = MULTIPLY(z2, - FIX_1_961570560); /* -c3-c5 */
4182 z3 = MULTIPLY(z3, - FIX_0_390180644); /* sqrt(2) * (c5-c3) */ 4210 z3 = MULTIPLY(z3, - FIX_0_390180644); /* -c3+c5 */
4183 z2 += z1; 4211 z2 += z1;
4184 z3 += z1; 4212 z3 += z1;
4185 4213
4186 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* sqrt(2) * (c7-c3) */ 4214 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* -c3+c7 */
4187 tmp0 = MULTIPLY(tmp0, FIX_0_298631336); /* sqrt(2) * (-c1+c3+c5-c7) */ 4215 tmp0 = MULTIPLY(tmp0, FIX_0_298631336); /* -c1+c3+c5-c7 */
4188 tmp3 = MULTIPLY(tmp3, FIX_1_501321110); /* sqrt(2) * ( c1+c3-c5-c7) */ 4216 tmp3 = MULTIPLY(tmp3, FIX_1_501321110); /* c1+c3-c5-c7 */
4189 tmp0 += z1 + z2; 4217 tmp0 += z1 + z2;
4190 tmp3 += z1 + z3; 4218 tmp3 += z1 + z3;
4191 4219
4192 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* sqrt(2) * (-c1-c3) */ 4220 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* -c1-c3 */
4193 tmp1 = MULTIPLY(tmp1, FIX_2_053119869); /* sqrt(2) * ( c1+c3-c5+c7) */ 4221 tmp1 = MULTIPLY(tmp1, FIX_2_053119869); /* c1+c3-c5+c7 */
4194 tmp2 = MULTIPLY(tmp2, FIX_3_072711026); /* sqrt(2) * ( c1+c3+c5-c7) */ 4222 tmp2 = MULTIPLY(tmp2, FIX_3_072711026); /* c1+c3+c5-c7 */
4195 tmp1 += z1 + z3; 4223 tmp1 += z1 + z3;
4196 tmp2 += z1 + z2; 4224 tmp2 += z1 + z2;
4197 4225
4198 /* Final output stage: inputs are tmp10..tmp13, tmp0..tmp3 */ 4226 /* Final output stage: inputs are tmp10..tmp13, tmp0..tmp3 */
4199 4227
4200 outptr[0] = range_limit[(int) RIGHT_SHIFT(tmp10 + tmp3, 4228 outptr[0] = range_limit[(int) RIGHT_SHIFT(tmp10 + tmp3,
4201 CONST_BITS+PASS1_BITS+3) 4229 CONST_BITS+PASS1_BITS+3)
4202 & RANGE_MASK]; 4230 & RANGE_MASK];
@@ -4221,7 +4249,7 @@ jpeg_idct_8x16 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4221 outptr[4] = range_limit[(int) RIGHT_SHIFT(tmp13 - tmp0, 4249 outptr[4] = range_limit[(int) RIGHT_SHIFT(tmp13 - tmp0,
4222 CONST_BITS+PASS1_BITS+3) 4250 CONST_BITS+PASS1_BITS+3)
4223 & RANGE_MASK]; 4251 & RANGE_MASK];
4224 4252
4225 wsptr += DCTSIZE; /* advance pointer to next row */ 4253 wsptr += DCTSIZE; /* advance pointer to next row */
4226 } 4254 }
4227} 4255}
@@ -4254,6 +4282,7 @@ jpeg_idct_7x14 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4254 /* Pass 1: process columns from input, store into work array. 4282 /* Pass 1: process columns from input, store into work array.
4255 * 14-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/28). 4283 * 14-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/28).
4256 */ 4284 */
4285
4257 inptr = coef_block; 4286 inptr = coef_block;
4258 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table; 4287 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
4259 wsptr = workspace; 4288 wsptr = workspace;
@@ -4341,6 +4370,7 @@ jpeg_idct_7x14 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4341 /* Pass 2: process 14 rows from work array, store into output array. 4370 /* Pass 2: process 14 rows from work array, store into output array.
4342 * 7-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/14). 4371 * 7-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/14).
4343 */ 4372 */
4373
4344 wsptr = workspace; 4374 wsptr = workspace;
4345 for (ctr = 0; ctr < 14; ctr++) { 4375 for (ctr = 0; ctr < 14; ctr++) {
4346 outptr = output_buf[ctr] + output_col; 4376 outptr = output_buf[ctr] + output_col;
@@ -4437,6 +4467,7 @@ jpeg_idct_6x12 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4437 /* Pass 1: process columns from input, store into work array. 4467 /* Pass 1: process columns from input, store into work array.
4438 * 12-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/24). 4468 * 12-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/24).
4439 */ 4469 */
4470
4440 inptr = coef_block; 4471 inptr = coef_block;
4441 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table; 4472 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
4442 wsptr = workspace; 4473 wsptr = workspace;
@@ -4520,6 +4551,7 @@ jpeg_idct_6x12 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4520 /* Pass 2: process 12 rows from work array, store into output array. 4551 /* Pass 2: process 12 rows from work array, store into output array.
4521 * 6-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/12). 4552 * 6-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/12).
4522 */ 4553 */
4554
4523 wsptr = workspace; 4555 wsptr = workspace;
4524 for (ctr = 0; ctr < 12; ctr++) { 4556 for (ctr = 0; ctr < 12; ctr++) {
4525 outptr = output_buf[ctr] + output_col; 4557 outptr = output_buf[ctr] + output_col;
@@ -4601,6 +4633,7 @@ jpeg_idct_5x10 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4601 /* Pass 1: process columns from input, store into work array. 4633 /* Pass 1: process columns from input, store into work array.
4602 * 10-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/20). 4634 * 10-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/20).
4603 */ 4635 */
4636
4604 inptr = coef_block; 4637 inptr = coef_block;
4605 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table; 4638 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
4606 wsptr = workspace; 4639 wsptr = workspace;
@@ -4676,6 +4709,7 @@ jpeg_idct_5x10 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4676 /* Pass 2: process 10 rows from work array, store into output array. 4709 /* Pass 2: process 10 rows from work array, store into output array.
4677 * 5-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/10). 4710 * 5-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/10).
4678 */ 4711 */
4712
4679 wsptr = workspace; 4713 wsptr = workspace;
4680 for (ctr = 0; ctr < 10; ctr++) { 4714 for (ctr = 0; ctr < 10; ctr++) {
4681 outptr = output_buf[ctr] + output_col; 4715 outptr = output_buf[ctr] + output_col;
@@ -4750,9 +4784,11 @@ jpeg_idct_4x8 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4750 int workspace[4*8]; /* buffers data between passes */ 4784 int workspace[4*8]; /* buffers data between passes */
4751 SHIFT_TEMPS 4785 SHIFT_TEMPS
4752 4786
4753 /* Pass 1: process columns from input, store into work array. */ 4787 /* Pass 1: process columns from input, store into work array.
4754 /* Note results are scaled up by sqrt(8) compared to a true IDCT; */ 4788 * Note results are scaled up by sqrt(8) compared to a true IDCT;
4755 /* furthermore, we scale the results by 2**PASS1_BITS. */ 4789 * furthermore, we scale the results by 2**PASS1_BITS.
4790 * 8-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/16).
4791 */
4756 4792
4757 inptr = coef_block; 4793 inptr = coef_block;
4758 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table; 4794 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
@@ -4789,16 +4825,17 @@ jpeg_idct_4x8 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4789 continue; 4825 continue;
4790 } 4826 }
4791 4827
4792 /* Even part: reverse the even part of the forward DCT. */ 4828 /* Even part: reverse the even part of the forward DCT.
4793 /* The rotator is sqrt(2)*c(-6). */ 4829 * The rotator is c(-6).
4830 */
4794 4831
4795 z2 = DEQUANTIZE(inptr[DCTSIZE*2], quantptr[DCTSIZE*2]); 4832 z2 = DEQUANTIZE(inptr[DCTSIZE*2], quantptr[DCTSIZE*2]);
4796 z3 = DEQUANTIZE(inptr[DCTSIZE*6], quantptr[DCTSIZE*6]); 4833 z3 = DEQUANTIZE(inptr[DCTSIZE*6], quantptr[DCTSIZE*6]);
4797 4834
4798 z1 = MULTIPLY(z2 + z3, FIX_0_541196100); 4835 z1 = MULTIPLY(z2 + z3, FIX_0_541196100); /* c6 */
4799 tmp2 = z1 + MULTIPLY(z2, FIX_0_765366865); 4836 tmp2 = z1 + MULTIPLY(z2, FIX_0_765366865); /* c2-c6 */
4800 tmp3 = z1 - MULTIPLY(z3, FIX_1_847759065); 4837 tmp3 = z1 - MULTIPLY(z3, FIX_1_847759065); /* c2+c6 */
4801 4838
4802 z2 = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]); 4839 z2 = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]);
4803 z3 = DEQUANTIZE(inptr[DCTSIZE*4], quantptr[DCTSIZE*4]); 4840 z3 = DEQUANTIZE(inptr[DCTSIZE*4], quantptr[DCTSIZE*4]);
4804 z2 <<= CONST_BITS; 4841 z2 <<= CONST_BITS;
@@ -4808,7 +4845,7 @@ jpeg_idct_4x8 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4808 4845
4809 tmp0 = z2 + z3; 4846 tmp0 = z2 + z3;
4810 tmp1 = z2 - z3; 4847 tmp1 = z2 - z3;
4811 4848
4812 tmp10 = tmp0 + tmp2; 4849 tmp10 = tmp0 + tmp2;
4813 tmp13 = tmp0 - tmp2; 4850 tmp13 = tmp0 - tmp2;
4814 tmp11 = tmp1 + tmp3; 4851 tmp11 = tmp1 + tmp3;
@@ -4826,21 +4863,21 @@ jpeg_idct_4x8 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4826 z2 = tmp0 + tmp2; 4863 z2 = tmp0 + tmp2;
4827 z3 = tmp1 + tmp3; 4864 z3 = tmp1 + tmp3;
4828 4865
4829 z1 = MULTIPLY(z2 + z3, FIX_1_175875602); /* sqrt(2) * c3 */ 4866 z1 = MULTIPLY(z2 + z3, FIX_1_175875602); /* c3 */
4830 z2 = MULTIPLY(z2, - FIX_1_961570560); /* sqrt(2) * (-c3-c5) */ 4867 z2 = MULTIPLY(z2, - FIX_1_961570560); /* -c3-c5 */
4831 z3 = MULTIPLY(z3, - FIX_0_390180644); /* sqrt(2) * (c5-c3) */ 4868 z3 = MULTIPLY(z3, - FIX_0_390180644); /* -c3+c5 */
4832 z2 += z1; 4869 z2 += z1;
4833 z3 += z1; 4870 z3 += z1;
4834 4871
4835 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* sqrt(2) * (c7-c3) */ 4872 z1 = MULTIPLY(tmp0 + tmp3, - FIX_0_899976223); /* -c3+c7 */
4836 tmp0 = MULTIPLY(tmp0, FIX_0_298631336); /* sqrt(2) * (-c1+c3+c5-c7) */ 4873 tmp0 = MULTIPLY(tmp0, FIX_0_298631336); /* -c1+c3+c5-c7 */
4837 tmp3 = MULTIPLY(tmp3, FIX_1_501321110); /* sqrt(2) * ( c1+c3-c5-c7) */ 4874 tmp3 = MULTIPLY(tmp3, FIX_1_501321110); /* c1+c3-c5-c7 */
4838 tmp0 += z1 + z2; 4875 tmp0 += z1 + z2;
4839 tmp3 += z1 + z3; 4876 tmp3 += z1 + z3;
4840 4877
4841 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* sqrt(2) * (-c1-c3) */ 4878 z1 = MULTIPLY(tmp1 + tmp2, - FIX_2_562915447); /* -c1-c3 */
4842 tmp1 = MULTIPLY(tmp1, FIX_2_053119869); /* sqrt(2) * ( c1+c3-c5+c7) */ 4879 tmp1 = MULTIPLY(tmp1, FIX_2_053119869); /* c1+c3-c5+c7 */
4843 tmp2 = MULTIPLY(tmp2, FIX_3_072711026); /* sqrt(2) * ( c1+c3+c5-c7) */ 4880 tmp2 = MULTIPLY(tmp2, FIX_3_072711026); /* c1+c3+c5-c7 */
4844 tmp1 += z1 + z3; 4881 tmp1 += z1 + z3;
4845 tmp2 += z1 + z2; 4882 tmp2 += z1 + z2;
4846 4883
@@ -4861,8 +4898,10 @@ jpeg_idct_4x8 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4861 } 4898 }
4862 4899
4863 /* Pass 2: process 8 rows from work array, store into output array. 4900 /* Pass 2: process 8 rows from work array, store into output array.
4864 * 4-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/16). 4901 * 4-point IDCT kernel,
4902 * cK represents sqrt(2) * cos(K*pi/16) [refers to 8-point IDCT].
4865 */ 4903 */
4904
4866 wsptr = workspace; 4905 wsptr = workspace;
4867 for (ctr = 0; ctr < 8; ctr++) { 4906 for (ctr = 0; ctr < 8; ctr++) {
4868 outptr = output_buf[ctr] + output_col; 4907 outptr = output_buf[ctr] + output_col;
@@ -4900,7 +4939,7 @@ jpeg_idct_4x8 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4900 outptr[2] = range_limit[(int) RIGHT_SHIFT(tmp12 - tmp2, 4939 outptr[2] = range_limit[(int) RIGHT_SHIFT(tmp12 - tmp2,
4901 CONST_BITS+PASS1_BITS+3) 4940 CONST_BITS+PASS1_BITS+3)
4902 & RANGE_MASK]; 4941 & RANGE_MASK];
4903 4942
4904 wsptr += 4; /* advance pointer to next row */ 4943 wsptr += 4; /* advance pointer to next row */
4905 } 4944 }
4906} 4945}
@@ -4932,6 +4971,7 @@ jpeg_idct_3x6 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4932 /* Pass 1: process columns from input, store into work array. 4971 /* Pass 1: process columns from input, store into work array.
4933 * 6-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/12). 4972 * 6-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/12).
4934 */ 4973 */
4974
4935 inptr = coef_block; 4975 inptr = coef_block;
4936 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table; 4976 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
4937 wsptr = workspace; 4977 wsptr = workspace;
@@ -4974,6 +5014,7 @@ jpeg_idct_3x6 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
4974 /* Pass 2: process 6 rows from work array, store into output array. 5014 /* Pass 2: process 6 rows from work array, store into output array.
4975 * 3-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/6). 5015 * 3-point IDCT kernel, cK represents sqrt(2) * cos(K*pi/6).
4976 */ 5016 */
5017
4977 wsptr = workspace; 5018 wsptr = workspace;
4978 for (ctr = 0; ctr < 6; ctr++) { 5019 for (ctr = 0; ctr < 6; ctr++) {
4979 outptr = output_buf[ctr] + output_col; 5020 outptr = output_buf[ctr] + output_col;
@@ -5037,6 +5078,7 @@ jpeg_idct_2x4 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
5037 * 4-point IDCT kernel, 5078 * 4-point IDCT kernel,
5038 * cK represents sqrt(2) * cos(K*pi/16) [refers to 8-point IDCT]. 5079 * cK represents sqrt(2) * cos(K*pi/16) [refers to 8-point IDCT].
5039 */ 5080 */
5081
5040 inptr = coef_block; 5082 inptr = coef_block;
5041 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table; 5083 quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
5042 wsptr = workspace; 5084 wsptr = workspace;
@@ -5106,7 +5148,7 @@ jpeg_idct_1x2 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
5106 JCOEFPTR coef_block, 5148 JCOEFPTR coef_block,
5107 JSAMPARRAY output_buf, JDIMENSION output_col) 5149 JSAMPARRAY output_buf, JDIMENSION output_col)
5108{ 5150{
5109 INT32 tmp0, tmp10; 5151 INT32 tmp0, tmp1;
5110 ISLOW_MULT_TYPE * quantptr; 5152 ISLOW_MULT_TYPE * quantptr;
5111 JSAMPLE *range_limit = IDCT_range_limit(cinfo); 5153 JSAMPLE *range_limit = IDCT_range_limit(cinfo);
5112 SHIFT_TEMPS 5154 SHIFT_TEMPS
@@ -5117,19 +5159,19 @@ jpeg_idct_1x2 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
5117 5159
5118 /* Even part */ 5160 /* Even part */
5119 5161
5120 tmp10 = DEQUANTIZE(coef_block[DCTSIZE*0], quantptr[DCTSIZE*0]); 5162 tmp0 = DEQUANTIZE(coef_block[DCTSIZE*0], quantptr[DCTSIZE*0]);
5121 /* Add fudge factor here for final descale. */ 5163 /* Add fudge factor here for final descale. */
5122 tmp10 += ONE << 2; 5164 tmp0 += ONE << 2;
5123 5165
5124 /* Odd part */ 5166 /* Odd part */
5125 5167
5126 tmp0 = DEQUANTIZE(coef_block[DCTSIZE*1], quantptr[DCTSIZE*1]); 5168 tmp1 = DEQUANTIZE(coef_block[DCTSIZE*1], quantptr[DCTSIZE*1]);
5127 5169
5128 /* Final output stage */ 5170 /* Final output stage */
5129 5171
5130 output_buf[0][output_col] = range_limit[(int) RIGHT_SHIFT(tmp10 + tmp0, 3) 5172 output_buf[0][output_col] = range_limit[(int) RIGHT_SHIFT(tmp0 + tmp1, 3)
5131 & RANGE_MASK]; 5173 & RANGE_MASK];
5132 output_buf[1][output_col] = range_limit[(int) RIGHT_SHIFT(tmp10 - tmp0, 3) 5174 output_buf[1][output_col] = range_limit[(int) RIGHT_SHIFT(tmp0 - tmp1, 3)
5133 & RANGE_MASK]; 5175 & RANGE_MASK];
5134} 5176}
5135 5177
diff --git a/gs/jpeg/jmemmgr.c b/gs/jpeg/jmemmgr.c
index f0e83fb95..0a137cdde 100644
--- a/gs/jpeg/jmemmgr.c
+++ b/gs/jpeg/jmemmgr.c
@@ -2,7 +2,7 @@
2 * jmemmgr.c 2 * jmemmgr.c
3 * 3 *
4 * Copyright (C) 1991-1997, Thomas G. Lane. 4 * Copyright (C) 1991-1997, Thomas G. Lane.
5 * Modified 2011 by Guido Vollbeding. 5 * Modified 2011-2012 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -214,7 +214,7 @@ print_mem_stats (j_common_ptr cinfo, int pool_id)
214#endif /* MEM_STATS */ 214#endif /* MEM_STATS */
215 215
216 216
217LOCAL(void) 217LOCAL(noreturn_t)
218out_of_memory (j_common_ptr cinfo, int which) 218out_of_memory (j_common_ptr cinfo, int which)
219/* Report an out-of-memory error and stop execution */ 219/* Report an out-of-memory error and stop execution */
220/* If we compiled MEM_STATS support, report alloc requests before dying */ 220/* If we compiled MEM_STATS support, report alloc requests before dying */
diff --git a/gs/jpeg/jmorecfg.h b/gs/jpeg/jmorecfg.h
index 6c085c36a..679d68bdc 100644
--- a/gs/jpeg/jmorecfg.h
+++ b/gs/jpeg/jmorecfg.h
@@ -2,7 +2,7 @@
2 * jmorecfg.h 2 * jmorecfg.h
3 * 3 *
4 * Copyright (C) 1991-1997, Thomas G. Lane. 4 * Copyright (C) 1991-1997, Thomas G. Lane.
5 * Modified 1997-2011 by Guido Vollbeding. 5 * Modified 1997-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -15,13 +15,22 @@
15/* 15/*
16 * Define BITS_IN_JSAMPLE as either 16 * Define BITS_IN_JSAMPLE as either
17 * 8 for 8-bit sample values (the usual setting) 17 * 8 for 8-bit sample values (the usual setting)
18 * 9 for 9-bit sample values
19 * 10 for 10-bit sample values
20 * 11 for 11-bit sample values
18 * 12 for 12-bit sample values 21 * 12 for 12-bit sample values
19 * Only 8 and 12 are legal data precisions for lossy JPEG according to the 22 * Only 8, 9, 10, 11, and 12 bits sample data precision are supported for
20 * JPEG standard, and the IJG code does not support anything else! 23 * full-feature DCT processing. Further depths up to 16-bit may be added
21 * We do not support run-time selection of data precision, sorry. 24 * later for the lossless modes of operation.
25 * Run-time selection and conversion of data precision will be added later
26 * and are currently not supported, sorry.
27 * Exception: The transcoding part (jpegtran) supports all settings in a
28 * single instance, since it operates on the level of DCT coefficients and
29 * not sample values. The DCT coefficients are of the same type (16 bits)
30 * in all cases (see below).
22 */ 31 */
23 32
24#define BITS_IN_JSAMPLE 8 /* use 8 or 12 */ 33#define BITS_IN_JSAMPLE 8 /* use 8, 9, 10, 11, or 12 */
25 34
26 35
27/* 36/*
@@ -77,6 +86,48 @@ typedef char JSAMPLE;
77#endif /* BITS_IN_JSAMPLE == 8 */ 86#endif /* BITS_IN_JSAMPLE == 8 */
78 87
79 88
89#if BITS_IN_JSAMPLE == 9
90/* JSAMPLE should be the smallest type that will hold the values 0..511.
91 * On nearly all machines "short" will do nicely.
92 */
93
94typedef short JSAMPLE;
95#define GETJSAMPLE(value) ((int) (value))
96
97#define MAXJSAMPLE 511
98#define CENTERJSAMPLE 256
99
100#endif /* BITS_IN_JSAMPLE == 9 */
101
102
103#if BITS_IN_JSAMPLE == 10
104/* JSAMPLE should be the smallest type that will hold the values 0..1023.
105 * On nearly all machines "short" will do nicely.
106 */
107
108typedef short JSAMPLE;
109#define GETJSAMPLE(value) ((int) (value))
110
111#define MAXJSAMPLE 1023
112#define CENTERJSAMPLE 512
113
114#endif /* BITS_IN_JSAMPLE == 10 */
115
116
117#if BITS_IN_JSAMPLE == 11
118/* JSAMPLE should be the smallest type that will hold the values 0..2047.
119 * On nearly all machines "short" will do nicely.
120 */
121
122typedef short JSAMPLE;
123#define GETJSAMPLE(value) ((int) (value))
124
125#define MAXJSAMPLE 2047
126#define CENTERJSAMPLE 1024
127
128#endif /* BITS_IN_JSAMPLE == 11 */
129
130
80#if BITS_IN_JSAMPLE == 12 131#if BITS_IN_JSAMPLE == 12
81/* JSAMPLE should be the smallest type that will hold the values 0..4095. 132/* JSAMPLE should be the smallest type that will hold the values 0..4095.
82 * On nearly all machines "short" will do nicely. 133 * On nearly all machines "short" will do nicely.
@@ -210,6 +261,26 @@ typedef unsigned int JDIMENSION;
210#endif 261#endif
211 262
212 263
264/* The noreturn type identifier is used to declare functions
265 * which cannot return.
266 * Compilers can thus create more optimized code and perform
267 * better checks for warnings and errors.
268 * Static analyzer tools can make improved inferences about
269 * execution paths and are prevented from giving false alerts.
270 *
271 * Unfortunately, the proposed specifications of corresponding
272 * extensions in the Dec 2011 ISO C standard revision (C11),
273 * GCC, MSVC, etc. are not viable.
274 * Thus we introduce a user defined type to declare noreturn
275 * functions at least for clarity. A proper compiler would
276 * have a suitable noreturn type to match in place of void.
277 */
278
279#ifndef HAVE_NORETURN_T
280typedef void noreturn_t;
281#endif
282
283
213/* Here is the pseudo-keyword for declaring pointers that must be "far" 284/* Here is the pseudo-keyword for declaring pointers that must be "far"
214 * on 80x86 machines. Most of the specialized coding for 80x86 is handled 285 * on 80x86 machines. Most of the specialized coding for 80x86 is handled
215 * by just saying "FAR *" where such a pointer is needed. In a few places 286 * by just saying "FAR *" where such a pointer is needed. In a few places
@@ -233,14 +304,19 @@ typedef unsigned int JDIMENSION;
233 */ 304 */
234 305
235#ifndef HAVE_BOOLEAN 306#ifndef HAVE_BOOLEAN
307#if defined FALSE || defined TRUE || defined QGLOBAL_H
308/* Qt3 defines FALSE and TRUE as "const" variables in qglobal.h */
236typedef int boolean; 309typedef int boolean;
237#endif
238#ifndef FALSE /* in case these macros already exist */ 310#ifndef FALSE /* in case these macros already exist */
239#define FALSE 0 /* values of boolean */ 311#define FALSE 0 /* values of boolean */
240#endif 312#endif
241#ifndef TRUE 313#ifndef TRUE
242#define TRUE 1 314#define TRUE 1
243#endif 315#endif
316#else
317typedef enum { FALSE = 0, TRUE = 1 } boolean;
318#endif
319#endif
244 320
245 321
246/* 322/*
@@ -278,11 +354,12 @@ typedef int boolean;
278#define C_PROGRESSIVE_SUPPORTED /* Progressive JPEG? (Requires MULTISCAN)*/ 354#define C_PROGRESSIVE_SUPPORTED /* Progressive JPEG? (Requires MULTISCAN)*/
279#define DCT_SCALING_SUPPORTED /* Input rescaling via DCT? (Requires DCT_ISLOW)*/ 355#define DCT_SCALING_SUPPORTED /* Input rescaling via DCT? (Requires DCT_ISLOW)*/
280#define ENTROPY_OPT_SUPPORTED /* Optimization of entropy coding parms? */ 356#define ENTROPY_OPT_SUPPORTED /* Optimization of entropy coding parms? */
281/* Note: if you selected 12-bit data precision, it is dangerous to turn off 357/* Note: if you selected more than 8-bit data precision, it is dangerous to
282 * ENTROPY_OPT_SUPPORTED. The standard Huffman tables are only good for 8-bit 358 * turn off ENTROPY_OPT_SUPPORTED. The standard Huffman tables are only
283 * precision, so jchuff.c normally uses entropy optimization to compute 359 * good for 8-bit precision, so arithmetic coding is recommended for higher
284 * usable tables for higher precision. If you don't want to do optimization, 360 * precision. The Huffman encoder normally uses entropy optimization to
285 * you'll have to supply different default Huffman tables. 361 * compute usable tables for higher precision. Otherwise, you'll have to
362 * supply different default Huffman tables.
286 * The exact same statements apply for progressive JPEG: the default tables 363 * The exact same statements apply for progressive JPEG: the default tables
287 * don't work for progressive mode. (This may get fixed, however.) 364 * don't work for progressive mode. (This may get fixed, however.)
288 */ 365 */
@@ -293,7 +370,7 @@ typedef int boolean;
293#define D_ARITH_CODING_SUPPORTED /* Arithmetic coding back end? */ 370#define D_ARITH_CODING_SUPPORTED /* Arithmetic coding back end? */
294#define D_MULTISCAN_FILES_SUPPORTED /* Multiple-scan JPEG files? */ 371#define D_MULTISCAN_FILES_SUPPORTED /* Multiple-scan JPEG files? */
295#define D_PROGRESSIVE_SUPPORTED /* Progressive JPEG? (Requires MULTISCAN)*/ 372#define D_PROGRESSIVE_SUPPORTED /* Progressive JPEG? (Requires MULTISCAN)*/
296#define IDCT_SCALING_SUPPORTED /* Output rescaling via IDCT? */ 373#define IDCT_SCALING_SUPPORTED /* Output rescaling via IDCT? (Requires DCT_ISLOW)*/
297#define SAVE_MARKERS_SUPPORTED /* jpeg_save_markers() needed? */ 374#define SAVE_MARKERS_SUPPORTED /* jpeg_save_markers() needed? */
298#define BLOCK_SMOOTHING_SUPPORTED /* Block smoothing? (Progressive only) */ 375#define BLOCK_SMOOTHING_SUPPORTED /* Block smoothing? (Progressive only) */
299#undef UPSAMPLE_SCALING_SUPPORTED /* Output rescaling at upsample stage? */ 376#undef UPSAMPLE_SCALING_SUPPORTED /* Output rescaling at upsample stage? */
diff --git a/gs/jpeg/jpegint.h b/gs/jpeg/jpegint.h
index c0d5c1420..18bb8879a 100644
--- a/gs/jpeg/jpegint.h
+++ b/gs/jpeg/jpegint.h
@@ -2,7 +2,7 @@
2 * jpegint.h 2 * jpegint.h
3 * 3 *
4 * Copyright (C) 1991-1997, Thomas G. Lane. 4 * Copyright (C) 1991-1997, Thomas G. Lane.
5 * Modified 1997-2011 by Guido Vollbeding. 5 * Modified 1997-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -211,8 +211,8 @@ struct jpeg_marker_reader {
211/* Entropy decoding */ 211/* Entropy decoding */
212struct jpeg_entropy_decoder { 212struct jpeg_entropy_decoder {
213 JMETHOD(void, start_pass, (j_decompress_ptr cinfo)); 213 JMETHOD(void, start_pass, (j_decompress_ptr cinfo));
214 JMETHOD(boolean, decode_mcu, (j_decompress_ptr cinfo, 214 JMETHOD(boolean, decode_mcu, (j_decompress_ptr cinfo, JBLOCKROW *MCU_data));
215 JBLOCKROW *MCU_data)); 215 JMETHOD(void, finish_pass, (j_decompress_ptr cinfo));
216}; 216};
217 217
218/* Inverse DCT (also performs dequantization) */ 218/* Inverse DCT (also performs dequantization) */
diff --git a/gs/jpeg/jpeglib.h b/gs/jpeg/jpeglib.h
index 1327cffa9..f4fbf23e9 100644
--- a/gs/jpeg/jpeglib.h
+++ b/gs/jpeg/jpeglib.h
@@ -2,7 +2,7 @@
2 * jpeglib.h 2 * jpeglib.h
3 * 3 *
4 * Copyright (C) 1991-1998, Thomas G. Lane. 4 * Copyright (C) 1991-1998, Thomas G. Lane.
5 * Modified 2002-2011 by Guido Vollbeding. 5 * Modified 2002-2013 by Guido Vollbeding.
6 * This file is part of the Independent JPEG Group's software. 6 * This file is part of the Independent JPEG Group's software.
7 * For conditions of distribution and use, see the accompanying README file. 7 * For conditions of distribution and use, see the accompanying README file.
8 * 8 *
@@ -34,17 +34,17 @@ extern "C" {
34#endif 34#endif
35 35
36/* Version IDs for the JPEG library. 36/* Version IDs for the JPEG library.
37 * Might be useful for tests like "#if JPEG_LIB_VERSION >= 80". 37 * Might be useful for tests like "#if JPEG_LIB_VERSION >= 90".
38 */ 38 */
39 39
40#define JPEG_LIB_VERSION 80 /* Compatibility version 8.0 */ 40#define JPEG_LIB_VERSION 90 /* Compatibility version 9.0 */
41#define JPEG_LIB_VERSION_MAJOR 8 41#define JPEG_LIB_VERSION_MAJOR 9
42#define JPEG_LIB_VERSION_MINOR 4 42#define JPEG_LIB_VERSION_MINOR 1
43 43
44 44
45/* Various constants determining the sizes of things. 45/* Various constants determining the sizes of things.
46 * All of these are specified by the JPEG standard, so don't change them 46 * All of these are specified by the JPEG standard,
47 * if you want to be compatible. 47 * so don't change them if you want to be compatible.
48 */ 48 */
49 49
50#define DCTSIZE 8 /* The basic DCT block is 8x8 coefficients */ 50#define DCTSIZE 8 /* The basic DCT block is 8x8 coefficients */
@@ -157,16 +157,21 @@ typedef struct {
157 /* The downsampled dimensions are the component's actual, unpadded number 157 /* The downsampled dimensions are the component's actual, unpadded number
158 * of samples at the main buffer (preprocessing/compression interface); 158 * of samples at the main buffer (preprocessing/compression interface);
159 * DCT scaling is included, so 159 * DCT scaling is included, so
160 * downsampled_width = ceil(image_width * Hi/Hmax * DCT_h_scaled_size/DCTSIZE) 160 * downsampled_width =
161 * ceil(image_width * Hi/Hmax * DCT_h_scaled_size/block_size)
161 * and similarly for height. 162 * and similarly for height.
162 */ 163 */
163 JDIMENSION downsampled_width; /* actual width in samples */ 164 JDIMENSION downsampled_width; /* actual width in samples */
164 JDIMENSION downsampled_height; /* actual height in samples */ 165 JDIMENSION downsampled_height; /* actual height in samples */
165 /* This flag is used only for decompression. In cases where some of the 166 /* For decompression, in cases where some of the components will be
166 * components will be ignored (eg grayscale output from YCbCr image), 167 * ignored (eg grayscale output from YCbCr image), we can skip most
167 * we can skip most computations for the unused components. 168 * computations for the unused components.
169 * For compression, some of the components will need further quantization
170 * scale by factor of 2 after DCT (eg BG_YCC output from normal RGB input).
171 * The field is first set TRUE for decompression, FALSE for compression
172 * in initial_setup, and then adapted in color conversion setup.
168 */ 173 */
169 boolean component_needed; /* do we need the value of this component? */ 174 boolean component_needed;
170 175
171 /* These values are computed before starting a scan of the component. */ 176 /* These values are computed before starting a scan of the component. */
172 /* The decompressor output side may not use these variables. */ 177 /* The decompressor output side may not use these variables. */
@@ -215,12 +220,21 @@ struct jpeg_marker_struct {
215typedef enum { 220typedef enum {
216 JCS_UNKNOWN, /* error/unspecified */ 221 JCS_UNKNOWN, /* error/unspecified */
217 JCS_GRAYSCALE, /* monochrome */ 222 JCS_GRAYSCALE, /* monochrome */
218 JCS_RGB, /* red/green/blue */ 223 JCS_RGB, /* red/green/blue, standard RGB (sRGB) */
219 JCS_YCbCr, /* Y/Cb/Cr (also known as YUV) */ 224 JCS_YCbCr, /* Y/Cb/Cr (also known as YUV), standard YCC */
220 JCS_CMYK, /* C/M/Y/K */ 225 JCS_CMYK, /* C/M/Y/K */
221 JCS_YCCK /* Y/Cb/Cr/K */ 226 JCS_YCCK, /* Y/Cb/Cr/K */
227 JCS_BG_RGB, /* big gamut red/green/blue, bg-sRGB */
228 JCS_BG_YCC /* big gamut Y/Cb/Cr, bg-sYCC */
222} J_COLOR_SPACE; 229} J_COLOR_SPACE;
223 230
231/* Supported color transforms. */
232
233typedef enum {
234 JCT_NONE = 0,
235 JCT_SUBTRACT_GREEN = 1
236} J_COLOR_TRANSFORM;
237
224/* DCT/IDCT algorithm options. */ 238/* DCT/IDCT algorithm options. */
225 239
226typedef enum { 240typedef enum {
@@ -369,7 +383,10 @@ struct jpeg_compress_struct {
369 UINT16 X_density; /* Horizontal pixel density */ 383 UINT16 X_density; /* Horizontal pixel density */
370 UINT16 Y_density; /* Vertical pixel density */ 384 UINT16 Y_density; /* Vertical pixel density */
371 boolean write_Adobe_marker; /* should an Adobe marker be written? */ 385 boolean write_Adobe_marker; /* should an Adobe marker be written? */
372 386
387 J_COLOR_TRANSFORM color_transform;
388 /* Color transform identifier, writes LSE marker if nonzero */
389
373 /* State variable: index of next scanline to be written to 390 /* State variable: index of next scanline to be written to
374 * jpeg_write_scanlines(). Application may use this to control its 391 * jpeg_write_scanlines(). Application may use this to control its
375 * processing loop, e.g., "while (next_scanline < image_height)". 392 * processing loop, e.g., "while (next_scanline < image_height)".
@@ -589,6 +606,9 @@ struct jpeg_decompress_struct {
589 boolean saw_Adobe_marker; /* TRUE iff an Adobe APP14 marker was found */ 606 boolean saw_Adobe_marker; /* TRUE iff an Adobe APP14 marker was found */
590 UINT8 Adobe_transform; /* Color transform code from Adobe marker */ 607 UINT8 Adobe_transform; /* Color transform code from Adobe marker */
591 608
609 J_COLOR_TRANSFORM color_transform;
610 /* Color transform identifier derived from LSE marker, otherwise zero */
611
592 boolean CCIR601_sampling; /* TRUE=first samples are cosited */ 612 boolean CCIR601_sampling; /* TRUE=first samples are cosited */
593 613
594 /* Aside from the specific data retained from APPn markers known to the 614 /* Aside from the specific data retained from APPn markers known to the
@@ -681,7 +701,7 @@ struct jpeg_decompress_struct {
681 701
682struct jpeg_error_mgr { 702struct jpeg_error_mgr {
683 /* Error exit handler: does not return to caller */ 703 /* Error exit handler: does not return to caller */
684 JMETHOD(void, error_exit, (j_common_ptr cinfo)); 704 JMETHOD(noreturn_t, error_exit, (j_common_ptr cinfo));
685 /* Conditionally emit a trace or warning message */ 705 /* Conditionally emit a trace or warning message */
686 JMETHOD(void, emit_message, (j_common_ptr cinfo, int msg_level)); 706 JMETHOD(void, emit_message, (j_common_ptr cinfo, int msg_level));
687 /* Routine that actually outputs a trace or error message */ 707 /* Routine that actually outputs a trace or error message */
diff --git a/gs/jpeg/jpegtran.1 b/gs/jpeg/jpegtran.1
index 0ad1bbc84..2220f7a5a 100644
--- a/gs/jpeg/jpegtran.1
+++ b/gs/jpeg/jpegtran.1
@@ -1,4 +1,4 @@
1.TH JPEGTRAN 1 "28 December 2009" 1.TH JPEGTRAN 1 "13 September 2013"
2.SH NAME 2.SH NAME
3jpegtran \- lossless transformation of JPEG files 3jpegtran \- lossless transformation of JPEG files
4.SH SYNOPSIS 4.SH SYNOPSIS
@@ -156,15 +156,23 @@ image region but losslessly preserves what is inside. Like the rotate and
156flip transforms, lossless crop is restricted by the current JPEG format: the 156flip transforms, lossless crop is restricted by the current JPEG format: the
157upper left corner of the selected region must fall on an iMCU boundary. If 157upper left corner of the selected region must fall on an iMCU boundary. If
158this does not hold for the given crop parameters, we silently move the upper 158this does not hold for the given crop parameters, we silently move the upper
159left corner up and/or left to make it so, simultaneously increasing the region 159left corner up and/or left to make it so, simultaneously increasing the
160dimensions to keep the lower right crop corner unchanged. (Thus, the output 160region dimensions to keep the lower right crop corner unchanged. (Thus, the
161image covers at least the requested region, but may cover more.) 161output image covers at least the requested region, but may cover more.)
162The adjustment of the region dimensions may be optionally disabled.
162 163
163The image can be losslessly cropped by giving the switch: 164The image can be losslessly cropped by giving the switch:
164.TP 165.TP
165.B \-crop WxH+X+Y 166.B \-crop WxH+X+Y
166Crop to a rectangular subarea of width W, height H starting at point X,Y. 167Crop to a rectangular subarea of width W, height H starting at point X,Y.
167.PP 168.PP
169A complementary lossless-wipe option is provided to discard (gray out) data
170inside a given image region while losslessly preserving what is outside:
171.TP
172.B \-wipe WxH+X+Y
173Wipe (gray out) a rectangular subarea of width W, height H starting at point
174X,Y.
175.PP
168Other not-strictly-lossless transformation switches are: 176Other not-strictly-lossless transformation switches are:
169.TP 177.TP
170.B \-grayscale 178.B \-grayscale
diff --git a/gs/jpeg/jpegtran.c b/gs/jpeg/jpegtran.c
index e539e91b8..5269344e1 100644
--- a/gs/jpeg/jpegtran.c
+++ b/gs/jpeg/jpegtran.c
@@ -1,7 +1,7 @@
1/* 1/*
2 * jpegtran.c 2 * jpegtran.c
3 * 3 *
4 * Copyright (C) 1995-2011, Thomas G. Lane, Guido Vollbeding. 4 * Copyright (C) 1995-2013, Thomas G. Lane, Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 5 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 6 * For conditions of distribution and use, see the accompanying README file.
7 * 7 *
@@ -66,8 +66,8 @@ usage (void)
66 fprintf(stderr, "Switches for modifying the image:\n"); 66 fprintf(stderr, "Switches for modifying the image:\n");
67#if TRANSFORMS_SUPPORTED 67#if TRANSFORMS_SUPPORTED
68 fprintf(stderr, " -crop WxH+X+Y Crop to a rectangular subarea\n"); 68 fprintf(stderr, " -crop WxH+X+Y Crop to a rectangular subarea\n");
69 fprintf(stderr, " -grayscale Reduce to grayscale (omit color data)\n");
70 fprintf(stderr, " -flip [horizontal|vertical] Mirror image (left-right or top-bottom)\n"); 69 fprintf(stderr, " -flip [horizontal|vertical] Mirror image (left-right or top-bottom)\n");
70 fprintf(stderr, " -grayscale Reduce to grayscale (omit color data)\n");
71 fprintf(stderr, " -perfect Fail if there is non-transformable edge blocks\n"); 71 fprintf(stderr, " -perfect Fail if there is non-transformable edge blocks\n");
72 fprintf(stderr, " -rotate [90|180|270] Rotate image (degrees clockwise)\n"); 72 fprintf(stderr, " -rotate [90|180|270] Rotate image (degrees clockwise)\n");
73#endif 73#endif
@@ -76,6 +76,7 @@ usage (void)
76 fprintf(stderr, " -transpose Transpose image\n"); 76 fprintf(stderr, " -transpose Transpose image\n");
77 fprintf(stderr, " -transverse Transverse transpose image\n"); 77 fprintf(stderr, " -transverse Transverse transpose image\n");
78 fprintf(stderr, " -trim Drop non-transformable edge blocks\n"); 78 fprintf(stderr, " -trim Drop non-transformable edge blocks\n");
79 fprintf(stderr, " -wipe WxH+X+Y Wipe (gray out) a rectangular subarea\n");
79#endif 80#endif
80 fprintf(stderr, "Switches for advanced users:\n"); 81 fprintf(stderr, "Switches for advanced users:\n");
81#ifdef C_ARITH_CODING_SUPPORTED 82#ifdef C_ARITH_CODING_SUPPORTED
@@ -187,7 +188,8 @@ parse_switches (j_compress_ptr cinfo, int argc, char **argv,
187#if TRANSFORMS_SUPPORTED 188#if TRANSFORMS_SUPPORTED
188 if (++argn >= argc) /* advance to next argument */ 189 if (++argn >= argc) /* advance to next argument */
189 usage(); 190 usage();
190 if (! jtransform_parse_crop_spec(&transformoption, argv[argn])) { 191 if (transformoption.crop /* reject multiple crop/wipe requests */ ||
192 ! jtransform_parse_crop_spec(&transformoption, argv[argn])) {
191 fprintf(stderr, "%s: bogus -crop argument '%s'\n", 193 fprintf(stderr, "%s: bogus -crop argument '%s'\n",
192 progname, argv[argn]); 194 progname, argv[argn]);
193 exit(EXIT_FAILURE); 195 exit(EXIT_FAILURE);
@@ -336,6 +338,21 @@ parse_switches (j_compress_ptr cinfo, int argc, char **argv,
336 /* Trim off any partial edge MCUs that the transform can't handle. */ 338 /* Trim off any partial edge MCUs that the transform can't handle. */
337 transformoption.trim = TRUE; 339 transformoption.trim = TRUE;
338 340
341 } else if (keymatch(arg, "wipe", 1)) {
342#if TRANSFORMS_SUPPORTED
343 if (++argn >= argc) /* advance to next argument */
344 usage();
345 if (transformoption.crop /* reject multiple crop/wipe requests */ ||
346 ! jtransform_parse_crop_spec(&transformoption, argv[argn])) {
347 fprintf(stderr, "%s: bogus -wipe argument '%s'\n",
348 progname, argv[argn]);
349 exit(EXIT_FAILURE);
350 }
351 select_transform(JXFORM_WIPE);
352#else
353 select_transform(JXFORM_NONE); /* force an error */
354#endif
355
339 } else { 356 } else {
340 usage(); /* bogus switch */ 357 usage(); /* bogus switch */
341 } 358 }
@@ -467,7 +484,7 @@ main (int argc, char **argv)
467 484
468 /* Adjust default decompression parameters */ 485 /* Adjust default decompression parameters */
469 if (scaleoption != NULL) 486 if (scaleoption != NULL)
470 if (sscanf(scaleoption, "%d/%d", 487 if (sscanf(scaleoption, "%u/%u",
471 &srcinfo.scale_num, &srcinfo.scale_denom) < 1) 488 &srcinfo.scale_num, &srcinfo.scale_denom) < 1)
472 usage(); 489 usage();
473 490
diff --git a/gs/jpeg/jversion.h b/gs/jpeg/jversion.h
index 5d4915103..a6e3ac734 100644
--- a/gs/jpeg/jversion.h
+++ b/gs/jpeg/jversion.h
@@ -1,7 +1,7 @@
1/* 1/*
2 * jversion.h 2 * jversion.h
3 * 3 *
4 * Copyright (C) 1991-2012, Thomas G. Lane, Guido Vollbeding. 4 * Copyright (C) 1991-2014, Thomas G. Lane, Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 5 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 6 * For conditions of distribution and use, see the accompanying README file.
7 * 7 *
@@ -9,6 +9,6 @@
9 */ 9 */
10 10
11 11
12#define JVERSION "8d 15-Jan-2012" 12#define JVERSION "9a 19-Jan-2014"
13 13
14#define JCOPYRIGHT "Copyright (C) 2012, Thomas G. Lane, Guido Vollbeding" 14#define JCOPYRIGHT "Copyright (C) 2014, Thomas G. Lane, Guido Vollbeding"
diff --git a/gs/jpeg/libjpeg.map b/gs/jpeg/libjpeg.map
index ac77dca78..fa70b1f12 100644
--- a/gs/jpeg/libjpeg.map
+++ b/gs/jpeg/libjpeg.map
@@ -1,4 +1,4 @@
1LIBJPEG_8.0 { 1LIBJPEG_9.0 {
2 global: 2 global:
3 *; 3 *;
4}; 4};
diff --git a/gs/jpeg/libjpeg.txt b/gs/jpeg/libjpeg.txt
index 9702669ea..4243c2463 100644
--- a/gs/jpeg/libjpeg.txt
+++ b/gs/jpeg/libjpeg.txt
@@ -1,6 +1,6 @@
1USING THE IJG JPEG LIBRARY 1USING THE IJG JPEG LIBRARY
2 2
3Copyright (C) 1994-2011, Thomas G. Lane, Guido Vollbeding. 3Copyright (C) 1994-2013, Thomas G. Lane, Guido Vollbeding.
4This file is part of the Independent JPEG Group's software. 4This file is part of the Independent JPEG Group's software.
5For conditions of distribution and use, see the accompanying README file. 5For conditions of distribution and use, see the accompanying README file.
6 6
@@ -95,8 +95,8 @@ use.) Unsupported ISO options include:
95 * Lossless JPEG 95 * Lossless JPEG
96 * DNL marker 96 * DNL marker
97 * Nonintegral subsampling ratios 97 * Nonintegral subsampling ratios
98We support both 8- and 12-bit data precision, but this is a compile-time 98We support 8-bit to 12-bit data precision, but this is a compile-time choice
99choice rather than a run-time choice; hence it is difficult to use both 99rather than a run-time choice; hence it is difficult to use different
100precisions in a single application. 100precisions in a single application.
101 101
102By itself, the library handles only interchange JPEG datastreams --- in 102By itself, the library handles only interchange JPEG datastreams --- in
@@ -225,7 +225,7 @@ For best results, source data values should have the precision specified by
225BITS_IN_JSAMPLE (normally 8 bits). For instance, if you choose to compress 225BITS_IN_JSAMPLE (normally 8 bits). For instance, if you choose to compress
226data that's only 6 bits/channel, you should left-justify each value in a 226data that's only 6 bits/channel, you should left-justify each value in a
227byte before passing it to the compressor. If you need to compress data 227byte before passing it to the compressor. If you need to compress data
228that has more than 8 bits/channel, compile with BITS_IN_JSAMPLE = 12. 228that has more than 8 bits/channel, compile with BITS_IN_JSAMPLE = 9 to 12.
229(See "Library compile-time options", later.) 229(See "Library compile-time options", later.)
230 230
231 231
@@ -876,6 +876,10 @@ jpeg_simple_progression (j_compress_ptr cinfo)
876 876
877Compression parameters (cinfo fields) include: 877Compression parameters (cinfo fields) include:
878 878
879boolean arith_code
880 If TRUE, use arithmetic coding.
881 If FALSE, use Huffman coding.
882
879int block_size 883int block_size
880 Set DCT block size. All N from 1 to 16 are possible. 884 Set DCT block size. All N from 1 to 16 are possible.
881 Default is 8 (baseline format). 885 Default is 8 (baseline format).
@@ -916,7 +920,16 @@ J_COLOR_SPACE jpeg_color_space
916int num_components 920int num_components
917 The JPEG color space and corresponding number of components; see 921 The JPEG color space and corresponding number of components; see
918 "Special color spaces", below, for more info. We recommend using 922 "Special color spaces", below, for more info. We recommend using
919 jpeg_set_color_space() if you want to change these. 923 jpeg_set_colorspace() if you want to change these.
924
925J_COLOR_TRANSFORM color_transform
926 Internal color transform identifier, writes LSE marker if nonzero
927 (requires decoder with inverse color transform support, introduced
928 with IJG JPEG 9).
929 Two values are currently possible: JCT_NONE and JCT_SUBTRACT_GREEN.
930 Set this value for lossless RGB application *before* calling
931 jpeg_set_colorspace(), because entropy table assignment in
932 jpeg_set_colorspace() depends on color_transform.
920 933
921boolean optimize_coding 934boolean optimize_coding
922 TRUE causes the compressor to compute optimal Huffman coding tables 935 TRUE causes the compressor to compute optimal Huffman coding tables
@@ -1260,9 +1273,10 @@ Special color spaces
1260The JPEG standard itself is "color blind" and doesn't specify any particular 1273The JPEG standard itself is "color blind" and doesn't specify any particular
1261color space. It is customary to convert color data to a luminance/chrominance 1274color space. It is customary to convert color data to a luminance/chrominance
1262color space before compressing, since this permits greater compression. The 1275color space before compressing, since this permits greater compression. The
1263existing de-facto JPEG file format standards specify YCbCr or grayscale data 1276existing JPEG file interchange format standards specify YCbCr or GRAYSCALE
1264(JFIF), or grayscale, RGB, YCbCr, CMYK, or YCCK (Adobe). For special 1277data (JFIF version 1), GRAYSCALE, RGB, YCbCr, CMYK, or YCCK (Adobe), or BG_RGB
1265applications such as multispectral images, other color spaces can be used, 1278or BG_YCC (big gamut color spaces, JFIF version 2). For special applications
1279such as multispectral images, other color spaces can be used,
1266but it must be understood that such files will be unportable. 1280but it must be understood that such files will be unportable.
1267 1281
1268The JPEG library can handle the most common colorspace conversions (namely 1282The JPEG library can handle the most common colorspace conversions (namely
@@ -1279,22 +1293,25 @@ jpeg_set_colorspace(). Of course you must select a supported transformation.
1279jccolor.c currently supports the following transformations: 1293jccolor.c currently supports the following transformations:
1280 RGB => YCbCr 1294 RGB => YCbCr
1281 RGB => GRAYSCALE 1295 RGB => GRAYSCALE
1296 RGB => BG_YCC
1282 YCbCr => GRAYSCALE 1297 YCbCr => GRAYSCALE
1298 YCbCr => BG_YCC
1283 CMYK => YCCK 1299 CMYK => YCCK
1284plus the null transforms: GRAYSCALE => GRAYSCALE, RGB => RGB, 1300plus the null transforms: GRAYSCALE => GRAYSCALE, RGB => RGB,
1285YCbCr => YCbCr, CMYK => CMYK, YCCK => YCCK, and UNKNOWN => UNKNOWN. 1301BG_RGB => BG_RGB, YCbCr => YCbCr, BG_YCC => BG_YCC, CMYK => CMYK,
1286 1302YCCK => YCCK, and UNKNOWN => UNKNOWN.
1287The de-facto file format standards (JFIF and Adobe) specify APPn markers that 1303
1288indicate the color space of the JPEG file. It is important to ensure that 1304The file interchange format standards (JFIF and Adobe) specify APPn markers
1289these are written correctly, or omitted if the JPEG file's color space is not 1305that indicate the color space of the JPEG file. It is important to ensure
1290one of the ones supported by the de-facto standards. jpeg_set_colorspace() 1306that these are written correctly, or omitted if the JPEG file's color space
1291will set the compression parameters to include or omit the APPn markers 1307is not one of the ones supported by the interchange standards.
1292properly, so long as it is told the truth about the JPEG color space. 1308jpeg_set_colorspace() will set the compression parameters to include or omit
1293For example, if you are writing some random 3-component color space without 1309the APPn markers properly, so long as it is told the truth about the JPEG
1294conversion, don't try to fake out the library by setting in_color_space and 1310color space. For example, if you are writing some random 3-component color
1295jpeg_color_space to JCS_YCbCr; use JCS_UNKNOWN. You may want to write an 1311space without conversion, don't try to fake out the library by setting
1296APPn marker of your own devising to identify the colorspace --- see "Special 1312in_color_space and jpeg_color_space to JCS_YCbCr; use JCS_UNKNOWN.
1297markers", below. 1313You may want to write an APPn marker of your own devising to identify
1314the colorspace --- see "Special markers", below.
1298 1315
1299When told that the color space is UNKNOWN, the library will default to using 1316When told that the color space is UNKNOWN, the library will default to using
1300luminance-quality compression parameters for all color components. You may 1317luminance-quality compression parameters for all color components. You may
@@ -1312,6 +1329,8 @@ set out_color_space to override this. Again, you must select a supported
1312transformation. jdcolor.c currently supports 1329transformation. jdcolor.c currently supports
1313 YCbCr => RGB 1330 YCbCr => RGB
1314 YCbCr => GRAYSCALE 1331 YCbCr => GRAYSCALE
1332 BG_YCC => RGB
1333 BG_YCC => GRAYSCALE
1315 RGB => GRAYSCALE 1334 RGB => GRAYSCALE
1316 GRAYSCALE => RGB 1335 GRAYSCALE => RGB
1317 YCCK => CMYK 1336 YCCK => CMYK
@@ -2572,10 +2591,10 @@ different sizes. If the image dimensions are not a multiple of the MCU size,
2572you must also pad the data correctly (usually, this is done by replicating 2591you must also pad the data correctly (usually, this is done by replicating
2573the last column and/or row). The data must be padded to a multiple of a DCT 2592the last column and/or row). The data must be padded to a multiple of a DCT
2574block in each component: that is, each downsampled row must contain a 2593block in each component: that is, each downsampled row must contain a
2575multiple of 8 valid samples, and there must be a multiple of 8 sample rows 2594multiple of block_size valid samples, and there must be a multiple of
2576for each component. (For applications such as conversion of digital TV 2595block_size sample rows for each component. (For applications such as
2577images, the standard image size is usually a multiple of the DCT block size, 2596conversion of digital TV images, the standard image size is usually a
2578so that no padding need actually be done.) 2597multiple of the DCT block size, so that no padding need actually be done.)
2579 2598
2580The procedure for compression of raw data is basically the same as normal 2599The procedure for compression of raw data is basically the same as normal
2581compression, except that you call jpeg_write_raw_data() in place of 2600compression, except that you call jpeg_write_raw_data() in place of
@@ -2601,22 +2620,22 @@ The scanlines count passed to and returned from jpeg_write_raw_data is
2601measured in terms of the component with the largest v_samp_factor. 2620measured in terms of the component with the largest v_samp_factor.
2602 2621
2603jpeg_write_raw_data() processes one MCU row per call, which is to say 2622jpeg_write_raw_data() processes one MCU row per call, which is to say
2604v_samp_factor*DCTSIZE sample rows of each component. The passed num_lines 2623v_samp_factor*block_size sample rows of each component. The passed num_lines
2605value must be at least max_v_samp_factor*DCTSIZE, and the return value will 2624value must be at least max_v_samp_factor*block_size, and the return value
2606be exactly that amount (or possibly some multiple of that amount, in future 2625will be exactly that amount (or possibly some multiple of that amount, in
2607library versions). This is true even on the last call at the bottom of the 2626future library versions). This is true even on the last call at the bottom
2608image; don't forget to pad your data as necessary. 2627of the image; don't forget to pad your data as necessary.
2609 2628
2610The required dimensions of the supplied data can be computed for each 2629The required dimensions of the supplied data can be computed for each
2611component as 2630component as
2612 cinfo->comp_info[i].width_in_blocks*DCTSIZE samples per row 2631 cinfo->comp_info[i].width_in_blocks*block_size samples per row
2613 cinfo->comp_info[i].height_in_blocks*DCTSIZE rows in image 2632 cinfo->comp_info[i].height_in_blocks*block_size rows in image
2614after jpeg_start_compress() has initialized those fields. If the valid data 2633after jpeg_start_compress() has initialized those fields. If the valid data
2615is smaller than this, it must be padded appropriately. For some sampling 2634is smaller than this, it must be padded appropriately. For some sampling
2616factors and image sizes, additional dummy DCT blocks are inserted to make 2635factors and image sizes, additional dummy DCT blocks are inserted to make
2617the image a multiple of the MCU dimensions. The library creates such dummy 2636the image a multiple of the MCU dimensions. The library creates such dummy
2618blocks itself; it does not read them from your supplied data. Therefore you 2637blocks itself; it does not read them from your supplied data. Therefore you
2619need never pad by more than DCTSIZE samples. An example may help here. 2638need never pad by more than block_size samples. An example may help here.
2620Assume 2h2v downsampling of YCbCr data, that is 2639Assume 2h2v downsampling of YCbCr data, that is
2621 cinfo->comp_info[0].h_samp_factor = 2 for Y 2640 cinfo->comp_info[0].h_samp_factor = 2 for Y
2622 cinfo->comp_info[0].v_samp_factor = 2 2641 cinfo->comp_info[0].v_samp_factor = 2
@@ -2658,8 +2677,8 @@ Then call jpeg_read_raw_data() in place of jpeg_read_scanlines(). The
2658decompression process is otherwise the same as usual. 2677decompression process is otherwise the same as usual.
2659 2678
2660jpeg_read_raw_data() returns one MCU row per call, and thus you must pass a 2679jpeg_read_raw_data() returns one MCU row per call, and thus you must pass a
2661buffer of at least max_v_samp_factor*DCTSIZE scanlines (scanline counting is 2680buffer of at least max_v_samp_factor*block_size scanlines (scanline counting
2662the same as for raw-data compression). The buffer you pass must be large 2681is the same as for raw-data compression). The buffer you pass must be large
2663enough to hold the actual data plus padding to DCT-block boundaries. As with 2682enough to hold the actual data plus padding to DCT-block boundaries. As with
2664compression, any entirely dummy DCT blocks are not processed so you need not 2683compression, any entirely dummy DCT blocks are not processed so you need not
2665allocate space for them, but the total scanline count includes them. The 2684allocate space for them, but the total scanline count includes them. The
@@ -2915,10 +2934,10 @@ This does not count any memory allocated by the application, such as a
2915buffer to hold the final output image. 2934buffer to hold the final output image.
2916 2935
2917The above figures are valid for 8-bit JPEG data precision and a machine with 2936The above figures are valid for 8-bit JPEG data precision and a machine with
291832-bit ints. For 12-bit JPEG data, double the size of the strip buffers and 293732-bit ints. For 9-bit to 12-bit JPEG data, double the size of the strip
2919quantization pixel buffer. The "fixed-size" data will be somewhat smaller 2938buffers and quantization pixel buffer. The "fixed-size" data will be
2920with 16-bit ints, larger with 64-bit ints. Also, CMYK or other unusual 2939somewhat smaller with 16-bit ints, larger with 64-bit ints. Also, CMYK
2921color spaces will require different amounts of space. 2940or other unusual color spaces will require different amounts of space.
2922 2941
2923The full-image coefficient and pixel buffers, if needed at all, do not 2942The full-image coefficient and pixel buffers, if needed at all, do not
2924have to be fully RAM resident; you can have the library use temporary 2943have to be fully RAM resident; you can have the library use temporary
@@ -2940,27 +2959,34 @@ Library compile-time options
2940 2959
2941A number of compile-time options are available by modifying jmorecfg.h. 2960A number of compile-time options are available by modifying jmorecfg.h.
2942 2961
2943The JPEG standard provides for both the baseline 8-bit DCT process and 2962The IJG code currently supports 8-bit to 12-bit sample data precision by
2944a 12-bit DCT process. The IJG code supports 12-bit JPEG if you define 2963defining BITS_IN_JSAMPLE as 8, 9, 10, 11, or 12.
2945BITS_IN_JSAMPLE as 12 rather than 8. Note that this causes JSAMPLE to be 2964Note that a value larger than 8 causes JSAMPLE to be larger than a char,
2946larger than a char, so it affects the surrounding application's image data. 2965so it affects the surrounding application's image data.
2947The sample applications cjpeg and djpeg can support 12-bit mode only for PPM 2966The sample applications cjpeg and djpeg can support deeper than 8-bit data
2948and GIF file formats; you must disable the other file formats to compile a 2967only for PPM and GIF file formats; you must disable the other file formats
294912-bit cjpeg or djpeg. (install.txt has more information about that.) 2968to compile a 9-bit to 12-bit cjpeg or djpeg. (install.txt has more
2950At present, a 12-bit library can handle *only* 12-bit images, not both 2969information about that.)
2951precisions. (If you need to include both 8- and 12-bit libraries in a single 2970Run-time selection and conversion of data precision are currently not
2952application, you could probably do it by defining NEED_SHORT_EXTERNAL_NAMES 2971supported and may be added later.
2953for just one of the copies. You'd have to access the 8-bit and 12-bit copies 2972Exception: The transcoding part (jpegtran) supports all settings in a
2954from separate application source files. This is untested ... if you try it, 2973single instance, since it operates on the level of DCT coefficients and
2955we'd like to hear whether it works!) 2974not sample values.
2956 2975(If you need to include an 8-bit library and a 9-bit to 12-bit library for
2957Note that a 12-bit library always compresses in Huffman optimization mode, 2976compression or decompression in a single application, you could probably do
2958in order to generate valid Huffman tables. This is necessary because our 2977it by defining NEED_SHORT_EXTERNAL_NAMES for just one of the copies. You'd
2959default Huffman tables only cover 8-bit data. If you need to output 12-bit 2978have to access the 8-bit and the 9-bit to 12-bit copies from separate
2960files in one pass, you'll have to supply suitable default Huffman tables. 2979application source files. This is untested ... if you try it, we'd like to
2961You may also want to supply your own DCT quantization tables; the existing 2980hear whether it works!)
2962quality-scaling code has been developed for 8-bit use, and probably doesn't 2981
2963generate especially good tables for 12-bit. 2982Note that the standard Huffman tables are only valid for 8-bit data precision.
2983If you selected more than 8-bit data precision, cjpeg uses arithmetic coding
2984by default. The Huffman encoder normally uses entropy optimization to
2985compute usable tables for higher precision. Otherwise, you'll have to
2986supply different default Huffman tables. You may also want to supply your
2987own DCT quantization tables; the existing quality-scaling code has been
2988developed for 8-bit use, and probably doesn't generate especially good tables
2989for 9-bit to 12-bit.
2964 2990
2965The maximum number of components (color channels) in the image is determined 2991The maximum number of components (color channels) in the image is determined
2966by MAX_COMPONENTS. The JPEG standard allows up to 255 components, but we 2992by MAX_COMPONENTS. The JPEG standard allows up to 255 components, but we
diff --git a/gs/jpeg/makefile.ansi b/gs/jpeg/makefile.ansi
index 7d0499f8f..c0fe72b1c 100644
--- a/gs/jpeg/makefile.ansi
+++ b/gs/jpeg/makefile.ansi
@@ -74,9 +74,9 @@ MKFILES= configure Makefile.in makefile.ansi makefile.unix makefile.bcc \
74CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \ 74CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \
75 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \ 75 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \
76 jconfig.vms 76 jconfig.vms
77CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp missing 77CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp \
78OTHERFILES= jconfig.txt ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm \ 78 missing ar-lib
79 libjpeg.map 79OTHERFILES= jconfig.txt ckconfig.c jmemdosa.asm libjpeg.map
80TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \ 80TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \
81 testimgp.jpg 81 testimgp.jpg
82DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \ 82DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \
diff --git a/gs/jpeg/makefile.bcc b/gs/jpeg/makefile.bcc
index d89e09bd0..68d68ef0d 100644
--- a/gs/jpeg/makefile.bcc
+++ b/gs/jpeg/makefile.bcc
@@ -101,9 +101,9 @@ MKFILES= configure Makefile.in makefile.ansi makefile.unix makefile.bcc \
101CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \ 101CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \
102 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \ 102 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \
103 jconfig.vms 103 jconfig.vms
104CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp missing 104CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp \
105OTHERFILES= jconfig.txt ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm \ 105 missing ar-lib
106 libjpeg.map 106OTHERFILES= jconfig.txt ckconfig.c jmemdosa.asm libjpeg.map
107TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \ 107TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \
108 testimgp.jpg 108 testimgp.jpg
109DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \ 109DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \
diff --git a/gs/jpeg/makefile.dj b/gs/jpeg/makefile.dj
index 37b6ee767..f37c12168 100644
--- a/gs/jpeg/makefile.dj
+++ b/gs/jpeg/makefile.dj
@@ -74,9 +74,9 @@ MKFILES= configure Makefile.in makefile.ansi makefile.unix makefile.bcc \
74CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \ 74CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \
75 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \ 75 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \
76 jconfig.vms 76 jconfig.vms
77CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp missing 77CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp \
78OTHERFILES= jconfig.txt ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm \ 78 missing ar-lib
79 libjpeg.map 79OTHERFILES= jconfig.txt ckconfig.c jmemdosa.asm libjpeg.map
80TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \ 80TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \
81 testimgp.jpg 81 testimgp.jpg
82DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \ 82DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \
diff --git a/gs/jpeg/makefile.manx b/gs/jpeg/makefile.manx
index 471f40828..57a1bb931 100644
--- a/gs/jpeg/makefile.manx
+++ b/gs/jpeg/makefile.manx
@@ -75,9 +75,9 @@ MKFILES= configure Makefile.in makefile.ansi makefile.unix makefile.bcc \
75CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \ 75CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \
76 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \ 76 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \
77 jconfig.vms 77 jconfig.vms
78CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp missing 78CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp \
79OTHERFILES= jconfig.txt ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm \ 79 missing ar-lib
80 libjpeg.map 80OTHERFILES= jconfig.txt ckconfig.c jmemdosa.asm libjpeg.map
81TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \ 81TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \
82 testimgp.jpg 82 testimgp.jpg
83DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \ 83DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \
diff --git a/gs/jpeg/makefile.mc6 b/gs/jpeg/makefile.mc6
index 1ee83be0c..7dd37f19f 100644
--- a/gs/jpeg/makefile.mc6
+++ b/gs/jpeg/makefile.mc6
@@ -72,9 +72,9 @@ MKFILES= configure Makefile.in makefile.ansi makefile.unix makefile.bcc \
72CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \ 72CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \
73 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \ 73 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \
74 jconfig.vms 74 jconfig.vms
75CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp missing 75CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp \
76OTHERFILES= jconfig.txt ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm \ 76 missing ar-lib
77 libjpeg.map 77OTHERFILES= jconfig.txt ckconfig.c jmemdosa.asm libjpeg.map
78TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \ 78TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \
79 testimgp.jpg 79 testimgp.jpg
80DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \ 80DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \
diff --git a/gs/jpeg/makefile.mms b/gs/jpeg/makefile.mms
index 6019dfa43..534930605 100644
--- a/gs/jpeg/makefile.mms
+++ b/gs/jpeg/makefile.mms
@@ -61,9 +61,9 @@ MKFILES= configure Makefile.in makefile.ansi makefile.unix makefile.bcc \
61CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \ 61CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \
62 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \ 62 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \
63 jconfig.vms 63 jconfig.vms
64CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp missing 64CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp \
65OTHERFILES= jconfig.txt ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm \ 65 missing ar-lib
66 libjpeg.map 66OTHERFILES= jconfig.txt ckconfig.c jmemdosa.asm libjpeg.map
67TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \ 67TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \
68 testimgp.jpg 68 testimgp.jpg
69DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \ 69DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \
diff --git a/gs/jpeg/makefile.sas b/gs/jpeg/makefile.sas
index 252f8fbad..ba0d63b97 100644
--- a/gs/jpeg/makefile.sas
+++ b/gs/jpeg/makefile.sas
@@ -83,9 +83,9 @@ MKFILES= configure Makefile.in makefile.ansi makefile.unix makefile.bcc \
83CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \ 83CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \
84 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \ 84 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \
85 jconfig.vms 85 jconfig.vms
86CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp missing 86CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp \
87OTHERFILES= jconfig.txt ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm \ 87 missing ar-lib
88 libjpeg.map 88OTHERFILES= jconfig.txt ckconfig.c jmemdosa.asm libjpeg.map
89TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \ 89TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \
90 testimgp.jpg 90 testimgp.jpg
91DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \ 91DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \
diff --git a/gs/jpeg/makefile.unix b/gs/jpeg/makefile.unix
index eaadfc1db..7dfaf10b8 100644
--- a/gs/jpeg/makefile.unix
+++ b/gs/jpeg/makefile.unix
@@ -78,9 +78,9 @@ MKFILES= configure Makefile.in makefile.ansi makefile.unix makefile.bcc \
78CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \ 78CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \
79 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \ 79 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \
80 jconfig.vms 80 jconfig.vms
81CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp missing 81CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp \
82OTHERFILES= jconfig.txt ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm \ 82 missing ar-lib
83 libjpeg.map 83OTHERFILES= jconfig.txt ckconfig.c jmemdosa.asm libjpeg.map
84TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \ 84TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \
85 testimgp.jpg 85 testimgp.jpg
86DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \ 86DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \
diff --git a/gs/jpeg/makefile.vc b/gs/jpeg/makefile.vc
index d4df9d4c5..ae4617994 100644
--- a/gs/jpeg/makefile.vc
+++ b/gs/jpeg/makefile.vc
@@ -71,9 +71,9 @@ MKFILES= configure Makefile.in makefile.ansi makefile.unix makefile.bcc \
71CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \ 71CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat \
72 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \ 72 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas \
73 jconfig.vms 73 jconfig.vms
74CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp missing 74CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp \
75OTHERFILES= jconfig.txt ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm \ 75 missing ar-lib
76 libjpeg.map 76OTHERFILES= jconfig.txt ckconfig.c jmemdosa.asm libjpeg.map
77TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \ 77TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg \
78 testimgp.jpg 78 testimgp.jpg
79DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \ 79DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) \
diff --git a/gs/jpeg/makefile.wat b/gs/jpeg/makefile.wat
index a3e652bc2..9cb8d6115 100644
--- a/gs/jpeg/makefile.wat
+++ b/gs/jpeg/makefile.wat
@@ -73,9 +73,9 @@ MKFILES= configure Makefile.in makefile.ansi makefile.unix makefile.bcc &
73CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat & 73CONFIGFILES= jconfig.cfg jconfig.bcc jconfig.mc6 jconfig.dj jconfig.wat &
74 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas & 74 jconfig.vc jconfig.mac jconfig.st jconfig.manx jconfig.sas &
75 jconfig.vms 75 jconfig.vms
76CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp missing 76CONFIGUREFILES= config.guess config.sub install-sh ltmain.sh depcomp &
77OTHERFILES= jconfig.txt ckconfig.c ansi2knr.c ansi2knr.1 jmemdosa.asm & 77 missing ar-lib
78 libjpeg.map 78OTHERFILES= jconfig.txt ckconfig.c jmemdosa.asm libjpeg.map
79TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg & 79TESTFILES= testorig.jpg testimg.ppm testimg.bmp testimg.jpg testprog.jpg &
80 testimgp.jpg 80 testimgp.jpg
81DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) & 81DISTFILES= $(DOCS) $(MKFILES) $(CONFIGFILES) $(SOURCES) $(INCLUDES) &
diff --git a/gs/jpeg/missing b/gs/jpeg/missing
index 28055d2ae..db98974ff 100755
--- a/gs/jpeg/missing
+++ b/gs/jpeg/missing
@@ -1,11 +1,10 @@
1#! /bin/sh 1#! /bin/sh
2# Common stub for a few missing GNU programs while installing. 2# Common wrapper for a few potentially missing GNU programs.
3 3
4scriptversion=2009-04-28.21; # UTC 4scriptversion=2013-10-28.13; # UTC
5 5
6# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, 6# Copyright (C) 1996-2013 Free Software Foundation, Inc.
7# 2008, 2009 Free Software Foundation, Inc. 7# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
8# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
9 8
10# This program is free software; you can redistribute it and/or modify 9# This program is free software; you can redistribute it and/or modify
11# it under the terms of the GNU General Public License as published by 10# it under the terms of the GNU General Public License as published by
@@ -26,69 +25,40 @@ scriptversion=2009-04-28.21; # UTC
26# the same distribution terms that you use for the rest of that program. 25# the same distribution terms that you use for the rest of that program.
27 26
28if test $# -eq 0; then 27if test $# -eq 0; then
29 echo 1>&2 "Try \`$0 --help' for more information" 28 echo 1>&2 "Try '$0 --help' for more information"
30 exit 1 29 exit 1
31fi 30fi
32 31
33run=: 32case $1 in
34sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
35sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
36
37# In the cases where this matters, `missing' is being run in the
38# srcdir already.
39if test -f configure.ac; then
40 configure_ac=configure.ac
41else
42 configure_ac=configure.in
43fi
44 33
45msg="missing on your system" 34 --is-lightweight)
35 # Used by our autoconf macros to check whether the available missing
36 # script is modern enough.
37 exit 0
38 ;;
46 39
47case $1 in 40 --run)
48--run) 41 # Back-compat with the calling convention used by older automake.
49 # Try to run requested program, and just exit if it succeeds. 42 shift
50 run= 43 ;;
51 shift
52 "$@" && exit 0
53 # Exit code 63 means version mismatch. This often happens
54 # when the user try to use an ancient version of a tool on
55 # a file that requires a minimum version. In this case we
56 # we should proceed has if the program had been absent, or
57 # if --run hadn't been passed.
58 if test $? = 63; then
59 run=:
60 msg="probably too old"
61 fi
62 ;;
63 44
64 -h|--h|--he|--hel|--help) 45 -h|--h|--he|--hel|--help)
65 echo "\ 46 echo "\
66$0 [OPTION]... PROGRAM [ARGUMENT]... 47$0 [OPTION]... PROGRAM [ARGUMENT]...
67 48
68Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an 49Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
69error status if there is no known handling for PROGRAM. 50to PROGRAM being missing or too old.
70 51
71Options: 52Options:
72 -h, --help display this help and exit 53 -h, --help display this help and exit
73 -v, --version output version information and exit 54 -v, --version output version information and exit
74 --run try to run the given command, and emulate it if it fails
75 55
76Supported PROGRAM values: 56Supported PROGRAM values:
77 aclocal touch file \`aclocal.m4' 57 aclocal autoconf autoheader autom4te automake makeinfo
78 autoconf touch file \`configure' 58 bison yacc flex lex help2man
79 autoheader touch file \`config.h.in'
80 autom4te touch the output file, or create a stub one
81 automake touch all \`Makefile.in' files
82 bison create \`y.tab.[ch]', if possible, from existing .[ch]
83 flex create \`lex.yy.c', if possible, from existing .c
84 help2man touch the output file
85 lex create \`lex.yy.c', if possible, from existing .c
86 makeinfo touch the output file
87 tar try tar, gnutar, gtar, then tar without non-portable flags
88 yacc create \`y.tab.[ch]', if possible, from existing .[ch]
89 59
90Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and 60Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
91\`g' are ignored when checking the name. 61'g' are ignored when checking the name.
92 62
93Send bug reports to <bug-automake@gnu.org>." 63Send bug reports to <bug-automake@gnu.org>."
94 exit $? 64 exit $?
@@ -100,272 +70,141 @@ Send bug reports to <bug-automake@gnu.org>."
100 ;; 70 ;;
101 71
102 -*) 72 -*)
103 echo 1>&2 "$0: Unknown \`$1' option" 73 echo 1>&2 "$0: unknown '$1' option"
104 echo 1>&2 "Try \`$0 --help' for more information" 74 echo 1>&2 "Try '$0 --help' for more information"
105 exit 1 75 exit 1
106 ;; 76 ;;
107 77
108esac 78esac
109 79
110# normalize program name to check for. 80# Run the given program, remember its exit status.
111program=`echo "$1" | sed ' 81"$@"; st=$?
112 s/^gnu-//; t 82
113 s/^gnu//; t 83# If it succeeded, we are done.
114 s/^g//; t'` 84test $st -eq 0 && exit 0
115 85
116# Now exit if we have it, but it failed. Also exit now if we 86# Also exit now if we it failed (or wasn't found), and '--version' was
117# don't have it and --version was passed (most likely to detect 87# passed; such an option is passed most likely to detect whether the
118# the program). This is about non-GNU programs, so use $1 not 88# program is present and works.
119# $program. 89case $2 in --version|--help) exit $st;; esac
120case $1 in 90
121 lex*|yacc*) 91# Exit code 63 means version mismatch. This often happens when the user
122 # Not GNU programs, they don't have --version. 92# tries to use an ancient version of a tool on a file that requires a
123 ;; 93# minimum version.
124 94if test $st -eq 63; then
125 tar*) 95 msg="probably too old"
126 if test -n "$run"; then 96elif test $st -eq 127; then
127 echo 1>&2 "ERROR: \`tar' requires --run" 97 # Program was missing.
128 exit 1 98 msg="missing on your system"
129 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then 99else
130 exit 1 100 # Program was found and executed, but failed. Give up.
131 fi 101 exit $st
132 ;; 102fi
133
134 *)
135 if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
136 # We have it, but it failed.
137 exit 1
138 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
139 # Could not run --version or --help. This is probably someone
140 # running `$TOOL --version' or `$TOOL --help' to check whether
141 # $TOOL exists and not knowing $TOOL uses missing.
142 exit 1
143 fi
144 ;;
145esac
146
147# If it does not exist, or fails to run (possibly an outdated version),
148# try to emulate it.
149case $program in
150 aclocal*)
151 echo 1>&2 "\
152WARNING: \`$1' is $msg. You should only need it if
153 you modified \`acinclude.m4' or \`${configure_ac}'. You might want
154 to install the \`Automake' and \`Perl' packages. Grab them from
155 any GNU archive site."
156 touch aclocal.m4
157 ;;
158
159 autoconf*)
160 echo 1>&2 "\
161WARNING: \`$1' is $msg. You should only need it if
162 you modified \`${configure_ac}'. You might want to install the
163 \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
164 archive site."
165 touch configure
166 ;;
167
168 autoheader*)
169 echo 1>&2 "\
170WARNING: \`$1' is $msg. You should only need it if
171 you modified \`acconfig.h' or \`${configure_ac}'. You might want
172 to install the \`Autoconf' and \`GNU m4' packages. Grab them
173 from any GNU archive site."
174 files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
175 test -z "$files" && files="config.h"
176 touch_files=
177 for f in $files; do
178 case $f in
179 *:*) touch_files="$touch_files "`echo "$f" |
180 sed -e 's/^[^:]*://' -e 's/:.*//'`;;
181 *) touch_files="$touch_files $f.in";;
182 esac
183 done
184 touch $touch_files
185 ;;
186
187 automake*)
188 echo 1>&2 "\
189WARNING: \`$1' is $msg. You should only need it if
190 you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
191 You might want to install the \`Automake' and \`Perl' packages.
192 Grab them from any GNU archive site."
193 find . -type f -name Makefile.am -print |
194 sed 's/\.am$/.in/' |
195 while read f; do touch "$f"; done
196 ;;
197
198 autom4te*)
199 echo 1>&2 "\
200WARNING: \`$1' is needed, but is $msg.
201 You might have modified some files without having the
202 proper tools for further handling them.
203 You can get \`$1' as part of \`Autoconf' from any GNU
204 archive site."
205
206 file=`echo "$*" | sed -n "$sed_output"`
207 test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
208 if test -f "$file"; then
209 touch $file
210 else
211 test -z "$file" || exec >$file
212 echo "#! /bin/sh"
213 echo "# Created by GNU Automake missing as a replacement of"
214 echo "# $ $@"
215 echo "exit 0"
216 chmod +x $file
217 exit 1
218 fi
219 ;;
220
221 bison*|yacc*)
222 echo 1>&2 "\
223WARNING: \`$1' $msg. You should only need it if
224 you modified a \`.y' file. You may need the \`Bison' package
225 in order for those modifications to take effect. You can get
226 \`Bison' from any GNU archive site."
227 rm -f y.tab.c y.tab.h
228 if test $# -ne 1; then
229 eval LASTARG="\${$#}"
230 case $LASTARG in
231 *.y)
232 SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
233 if test -f "$SRCFILE"; then
234 cp "$SRCFILE" y.tab.c
235 fi
236 SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
237 if test -f "$SRCFILE"; then
238 cp "$SRCFILE" y.tab.h
239 fi
240 ;;
241 esac
242 fi
243 if test ! -f y.tab.h; then
244 echo >y.tab.h
245 fi
246 if test ! -f y.tab.c; then
247 echo 'main() { return 0; }' >y.tab.c
248 fi
249 ;;
250
251 lex*|flex*)
252 echo 1>&2 "\
253WARNING: \`$1' is $msg. You should only need it if
254 you modified a \`.l' file. You may need the \`Flex' package
255 in order for those modifications to take effect. You can get
256 \`Flex' from any GNU archive site."
257 rm -f lex.yy.c
258 if test $# -ne 1; then
259 eval LASTARG="\${$#}"
260 case $LASTARG in
261 *.l)
262 SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
263 if test -f "$SRCFILE"; then
264 cp "$SRCFILE" lex.yy.c
265 fi
266 ;;
267 esac
268 fi
269 if test ! -f lex.yy.c; then
270 echo 'main() { return 0; }' >lex.yy.c
271 fi
272 ;;
273
274 help2man*)
275 echo 1>&2 "\
276WARNING: \`$1' is $msg. You should only need it if
277 you modified a dependency of a manual page. You may need the
278 \`Help2man' package in order for those modifications to take
279 effect. You can get \`Help2man' from any GNU archive site."
280
281 file=`echo "$*" | sed -n "$sed_output"`
282 test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
283 if test -f "$file"; then
284 touch $file
285 else
286 test -z "$file" || exec >$file
287 echo ".ab help2man is required to generate this page"
288 exit $?
289 fi
290 ;;
291
292 makeinfo*)
293 echo 1>&2 "\
294WARNING: \`$1' is $msg. You should only need it if
295 you modified a \`.texi' or \`.texinfo' file, or any other file
296 indirectly affecting the aspect of the manual. The spurious
297 call might also be the consequence of using a buggy \`make' (AIX,
298 DU, IRIX). You might want to install the \`Texinfo' package or
299 the \`GNU make' package. Grab either from any GNU archive site."
300 # The file to touch is that specified with -o ...
301 file=`echo "$*" | sed -n "$sed_output"`
302 test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
303 if test -z "$file"; then
304 # ... or it is the one specified with @setfilename ...
305 infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
306 file=`sed -n '
307 /^@setfilename/{
308 s/.* \([^ ]*\) *$/\1/
309 p
310 q
311 }' $infile`
312 # ... or it is derived from the source name (dir/f.texi becomes f.info)
313 test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
314 fi
315 # If the file does not exist, the user really needs makeinfo;
316 # let's fail without touching anything.
317 test -f $file || exit 1
318 touch $file
319 ;;
320
321 tar*)
322 shift
323
324 # We have already tried tar in the generic part.
325 # Look for gnutar/gtar before invocation to avoid ugly error
326 # messages.
327 if (gnutar --version > /dev/null 2>&1); then
328 gnutar "$@" && exit 0
329 fi
330 if (gtar --version > /dev/null 2>&1); then
331 gtar "$@" && exit 0
332 fi
333 firstarg="$1"
334 if shift; then
335 case $firstarg in
336 *o*)
337 firstarg=`echo "$firstarg" | sed s/o//`
338 tar "$firstarg" "$@" && exit 0
339 ;;
340 esac
341 case $firstarg in
342 *h*)
343 firstarg=`echo "$firstarg" | sed s/h//`
344 tar "$firstarg" "$@" && exit 0
345 ;;
346 esac
347 fi
348
349 echo 1>&2 "\
350WARNING: I can't seem to be able to run \`tar' with the given arguments.
351 You may want to install GNU tar or Free paxutils, or check the
352 command line arguments."
353 exit 1
354 ;;
355
356 *)
357 echo 1>&2 "\
358WARNING: \`$1' is needed, and is $msg.
359 You might have modified some files without having the
360 proper tools for further handling them. Check the \`README' file,
361 it often tells you about the needed prerequisites for installing
362 this package. You may also peek at any GNU archive site, in case
363 some other package would contain this missing \`$1' program."
364 exit 1
365 ;;
366esac
367 103
368exit 0 104perl_URL=http://www.perl.org/
105flex_URL=http://flex.sourceforge.net/
106gnu_software_URL=http://www.gnu.org/software
107
108program_details ()
109{
110 case $1 in
111 aclocal|automake)
112 echo "The '$1' program is part of the GNU Automake package:"
113 echo "<$gnu_software_URL/automake>"
114 echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
115 echo "<$gnu_software_URL/autoconf>"
116 echo "<$gnu_software_URL/m4/>"
117 echo "<$perl_URL>"
118 ;;
119 autoconf|autom4te|autoheader)
120 echo "The '$1' program is part of the GNU Autoconf package:"
121 echo "<$gnu_software_URL/autoconf/>"
122 echo "It also requires GNU m4 and Perl in order to run:"
123 echo "<$gnu_software_URL/m4/>"
124 echo "<$perl_URL>"
125 ;;
126 esac
127}
128
129give_advice ()
130{
131 # Normalize program name to check for.
132 normalized_program=`echo "$1" | sed '
133 s/^gnu-//; t
134 s/^gnu//; t
135 s/^g//; t'`
136
137 printf '%s\n' "'$1' is $msg."
138
139 configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
140 case $normalized_program in
141 autoconf*)
142 echo "You should only need it if you modified 'configure.ac',"
143 echo "or m4 files included by it."
144 program_details 'autoconf'
145 ;;
146 autoheader*)
147 echo "You should only need it if you modified 'acconfig.h' or"
148 echo "$configure_deps."
149 program_details 'autoheader'
150 ;;
151 automake*)
152 echo "You should only need it if you modified 'Makefile.am' or"
153 echo "$configure_deps."
154 program_details 'automake'
155 ;;
156 aclocal*)
157 echo "You should only need it if you modified 'acinclude.m4' or"
158 echo "$configure_deps."
159 program_details 'aclocal'
160 ;;
161 autom4te*)
162 echo "You might have modified some maintainer files that require"
163 echo "the 'autom4te' program to be rebuilt."
164 program_details 'autom4te'
165 ;;
166 bison*|yacc*)
167 echo "You should only need it if you modified a '.y' file."
168 echo "You may want to install the GNU Bison package:"
169 echo "<$gnu_software_URL/bison/>"
170 ;;
171 lex*|flex*)
172 echo "You should only need it if you modified a '.l' file."
173 echo "You may want to install the Fast Lexical Analyzer package:"
174 echo "<$flex_URL>"
175 ;;
176 help2man*)
177 echo "You should only need it if you modified a dependency" \
178 "of a man page."
179 echo "You may want to install the GNU Help2man package:"
180 echo "<$gnu_software_URL/help2man/>"
181 ;;
182 makeinfo*)
183 echo "You should only need it if you modified a '.texi' file, or"
184 echo "any other file indirectly affecting the aspect of the manual."
185 echo "You might want to install the Texinfo package:"
186 echo "<$gnu_software_URL/texinfo/>"
187 echo "The spurious makeinfo call might also be the consequence of"
188 echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
189 echo "want to install GNU make:"
190 echo "<$gnu_software_URL/make/>"
191 ;;
192 *)
193 echo "You might have modified some files without having the proper"
194 echo "tools for further handling them. Check the 'README' file, it"
195 echo "often tells you about the needed prerequisites for installing"
196 echo "this package. You may also peek at any GNU archive site, in"
197 echo "case some other package contains this missing '$1' program."
198 ;;
199 esac
200}
201
202give_advice "$1" | sed -e '1s/^/WARNING: /' \
203 -e '2,$s/^/ /' >&2
204
205# Propagate the correct exit status (expected to be 127 for a program
206# not found, 63 for a program that failed due to version mismatch).
207exit $st
369 208
370# Local variables: 209# Local variables:
371# eval: (add-hook 'write-file-hooks 'time-stamp) 210# eval: (add-hook 'write-file-hooks 'time-stamp)
diff --git a/gs/jpeg/rdjpgcom.1 b/gs/jpeg/rdjpgcom.1
index 97611df81..d7741fb94 100644
--- a/gs/jpeg/rdjpgcom.1
+++ b/gs/jpeg/rdjpgcom.1
@@ -1,4 +1,4 @@
1.TH RDJPGCOM 1 "02 April 2009" 1.TH RDJPGCOM 1 "13 September 2013"
2.SH NAME 2.SH NAME
3rdjpgcom \- display text comments from a JPEG file 3rdjpgcom \- display text comments from a JPEG file
4.SH SYNOPSIS 4.SH SYNOPSIS
diff --git a/gs/jpeg/structure.txt b/gs/jpeg/structure.txt
index 44e48ca8a..98e20c7c6 100644
--- a/gs/jpeg/structure.txt
+++ b/gs/jpeg/structure.txt
@@ -1,6 +1,6 @@
1IJG JPEG LIBRARY: SYSTEM ARCHITECTURE 1IJG JPEG LIBRARY: SYSTEM ARCHITECTURE
2 2
3Copyright (C) 1991-2012, Thomas G. Lane, Guido Vollbeding. 3Copyright (C) 1991-2013, Thomas G. Lane, Guido Vollbeding.
4This file is part of the Independent JPEG Group's software. 4This file is part of the Independent JPEG Group's software.
5For conditions of distribution and use, see the accompanying README file. 5For conditions of distribution and use, see the accompanying README file.
6 6
@@ -170,16 +170,16 @@ can be simplified a little if they work on padded data: it's not necessary to
170have special cases at the right and bottom edges. Therefore the interface 170have special cases at the right and bottom edges. Therefore the interface
171buffer is always an integral number of blocks wide and high, and we expect 171buffer is always an integral number of blocks wide and high, and we expect
172compression preprocessing to pad the source data properly. Padding will occur 172compression preprocessing to pad the source data properly. Padding will occur
173only to the next block (N-sample) boundary. In an interleaved-scan situation, 173only to the next block (block_size-sample) boundary. In an interleaved-scan
174additional dummy blocks may be used to fill out MCUs, but the MCU assembly and 174situation, additional dummy blocks may be used to fill out MCUs, but the MCU
175disassembly logic will create or discard these blocks internally. (This is 175assembly and disassembly logic will create or discard these blocks internally.
176advantageous for speed reasons, since we avoid DCTing the dummy blocks. 176(This is advantageous for speed reasons, since we avoid DCTing the dummy
177It also permits a small reduction in file size, because the compressor can 177blocks. It also permits a small reduction in file size, because the
178choose dummy block contents so as to minimize their size in compressed form. 178compressor can choose dummy block contents so as to minimize their size
179Finally, it makes the interface buffer specification independent of whether 179in compressed form. Finally, it makes the interface buffer specification
180the file is actually interleaved or not.) Applications that wish to deal 180independent of whether the file is actually interleaved or not.)
181directly with the downsampled data must provide similar buffering and padding 181Applications that wish to deal directly with the downsampled data must
182for odd-sized images. 182provide similar buffering and padding for odd-sized images.
183 183
184 184
185*** Poor man's object-oriented programming *** 185*** Poor man's object-oriented programming ***
@@ -345,9 +345,10 @@ The objects shown above are:
345 require context rows above and below the current row group; the 345 require context rows above and below the current row group; the
346 preprocessing controller is responsible for supplying these rows via proper 346 preprocessing controller is responsible for supplying these rows via proper
347 buffering. The downsampler is responsible for edge expansion at the right 347 buffering. The downsampler is responsible for edge expansion at the right
348 edge (i.e., extending each sample row to a multiple of N samples); but the 348 edge (i.e., extending each sample row to a multiple of block_size samples);
349 preprocessing controller is responsible for vertical edge expansion (i.e., 349 but the preprocessing controller is responsible for vertical edge expansion
350 duplicating the bottom sample row as needed to make a multiple of N rows). 350 (i.e., duplicating the bottom sample row as needed to make a multiple of
351 block_size rows).
351 352
352* Coefficient controller: buffer controller for the DCT-coefficient data. 353* Coefficient controller: buffer controller for the DCT-coefficient data.
353 This controller handles MCU assembly, including insertion of dummy DCT 354 This controller handles MCU assembly, including insertion of dummy DCT
@@ -651,8 +652,8 @@ contain quantized coefficients everywhere outside the DCT/IDCT subsystems.
651quantization a la JPEG Part 3.) 652quantization a la JPEG Part 3.)
652 653
653Notice that the allocation unit is now a row of 8x8 coefficient blocks, 654Notice that the allocation unit is now a row of 8x8 coefficient blocks,
654corresponding to N rows of samples. Otherwise the structure is much the same 655corresponding to block_size rows of samples. Otherwise the structure
655as for samples, and for the same reasons. 656is much the same as for samples, and for the same reasons.
656 657
657On machines where malloc() can't handle a request bigger than 64Kb, this data 658On machines where malloc() can't handle a request bigger than 64Kb, this data
658structure limits us to rows of less than 512 JBLOCKs, or a picture width of 659structure limits us to rows of less than 512 JBLOCKs, or a picture width of
diff --git a/gs/jpeg/testimg.bmp b/gs/jpeg/testimg.bmp
index 012223eb6..11aa0cbf4 100644
--- a/gs/jpeg/testimg.bmp
+++ b/gs/jpeg/testimg.bmp
Binary files differ
diff --git a/gs/jpeg/testimg.ppm b/gs/jpeg/testimg.ppm
index bd78ef8ee..1377eef27 100644
--- a/gs/jpeg/testimg.ppm
+++ b/gs/jpeg/testimg.ppm
@@ -1,4 +1,4 @@
1P6 1P6
2227 149 2227 149
3255 3255
40/-0/-10.21/51.51.62/72.83/83/83/:3-:3-:3-:3-:3-:2/91.91.80-80-91.91.:2/80-80-80-80-80-80-80-80-6.+6.+6.+5-*5-*4,)4,)4,)4,)4,)4,)4,)4,)4,)4,)4,).+$/,%/,%0-&1.'2/(30)30)63,63,74-85.85.96/:70:70A;/B<0D>2F@2IA4JB5KC6KD4MD5MD5MD3NB2OC3OC3PD4QE5T>1Y?2b@4nB5}E6ŒG8šG9¥E7²F9ºF9¿E8ÆF;ÉF>ËF?ÌG@ÌG@íCNíCLíCLíDKíDIïBFñ>Bõ<Aø;Aø9@ö9?ð;@ë>@â?@×?<Ñ=;µ@.µ@.µ@.´?-´?-³@-²?-°?-­@,ªA.¦A-¢B,A*›A)˜@*—A*’?/’?/’?/‘>,‘>,’<+’<+’<+”?+”?+”=*”=*”=*•>+–?+—@,”?:•>7—=4Ÿ?1©B3³D3¼D3¿D4º?/¶@2­E8žH;‡H9mB2T8*D3#:659549547326216005//50-72/72/72/61-61-50,50,50,.0-.0-.0-//-//-0/-2.-3--5,-4+,4*+4(*7(+=.1E69L<?n@B|HJ‹MN–NO¢VZ¬cl­n s’|£„°}‡¼|‰¾pz­`aTLuRCjSKcOG_MH\TR`fdo|}‚‘™ž˜£©Ÿ¤¨š¡’’{|jhgUXWERO>UPdUPdUPd0/-0/-10.10.40-51.62/72.83/83/83/:3-:3-:3-:3-:3-91.91.80-80-80-80-91.91.80-80-80-80-80-80-80-80-6.+6.+5-*5-*5-*4,)4,)4,)5-*5-*5-*5-*5-*5-*5-*5-*/,%0-&0-&1.'2/(30)41*41*63,63,74-74-85.96/:70:70@:.A;/C=1E?3H@3IA4JB5JC3LC4LC4KB3MA1MA1NB2OC3PD4P>0U?1^A3jC4xD6†D4“D5žB3¨B3°@2¶@4¼B7ÂC:ÄE<ÆF=ÇG>èAKèAIèCIêDHíDGïBDó@D÷>Cø;Aø9@ö9?ð<?é?@à@@Õ@<Î=8µ@.µ@.´?-´?-´?-²?,°?-¯@-­@,©@-¦A-¡A+A*›@+˜@*—A*’?/’?/‘>.‘>.‘>,=+’<+’<+”>-“>*“>*”=*”=*•>+–?,—@-“@8•>5˜>3Ÿ?1«A3µD4½D3ÁC4¼A2¸B6­E8œI;…G:kA3S9*D4$<66;55:4493382271161.61.72/72/72/61-61-50,50,50,.0-.0-.0-//-//-0/-2.-2.-3--5,-4*+4(*5)+<-0C47I:=h<;vDC†JI’LJST§`h¨k{rŽ‘{¢„°|†»y†½lv«[\ŒQHsQBkOFaOFaNI_RN_[Yfnotƒ‡ˆ”™•™ž—š ”™‘ƒ~ojk[]\JVUCXQaXQaXQa/.,/.,0/-10.40-40-51.51.72.72.72.92,92,92,92,92,91.80-7/,7/,7/,7/,80-91.80-80-80-80-80-80-80-80-6.+5-*5-*5-*4,)4,)4,)4,)5-*5-*5-*5-*5-*5-*5-*5-*1.'1.'2/(30)30)41*41*52+63,63,63,74-85.96/96/:70?9-@:.B<0D>2G?4H@3H@3H@3I@1I@1I@1K?1K?/L@0MA1NB2MA1QA2YB2dC2qC3|C2‰A2“@0™<+ :+©;,¯>0¶@4¼C8¿F=ÀG>à?Eá@FãBGæCFêDFðCEõADù?Dú;@û:?÷:@ñ=@è@@ÜA=Ñ@;É>7³@-³@-³@-²?,²?,²?-¯>,®?,ª?-©@-¥@,¡A+A,˜@*—A*–@)’?/‘>.‘>.‘>.=+=+=+’<+“=,“=,’<+’=)“>*“>*”?+•@,”B7–?5š>3£>2­A4¹C5¿D5ÂC4ÂD6ºF9¯I=›I=‚F;gA4P:,B6&=77=77<66:4493383072/72/62/62/62/52-52-41,41,41,,1-,1-.0-.0-//-//-0/-2.-5//4..5,-4*+4*+9-/>24C79_83l?:|E@ˆIB’NK›Z^œft”n‡Œwž€~¯zƒºs¹dm¤UU‰NEtO?lMBbPEcQHcMH^NK\[[estx…‰ˆ‡Œ†Š†…†Š|xzlghXZ[KVTEZT`ZT`ZT`.-+/.,/.,0/-10.40-40-40-51.61-61-61-81+81+81+81+50-50-4/,4/,4/,4/,50-50-61.61.61.61.61.61.61.61.3.+3.+3.+2-*2-*2-*1,)1,)4/,4/,4/,4/,4/,4/,4/,4/,30+30+30+41,41,52-52-52-52-52-63.74/850850961961>8,?9-@:.B<0E=2E=2F>1F>1G=1G>/F=.I=/I=/J>0L@0L@0JD4NE4TD4^D3hE2sB1~A/‡>-Œ9'”9'9)£<-¬@3³E8·I<ºJ>Ù@CÚACÝCEâDEçCDîACô@Cø>Aü;@û:?÷:>ð=@åA?ÚB=ËA7Ã>5°@,°@,°@,°?-¯>,¯>,®?,¬>-ª?-¦?,£@-Ÿ@,œ@+˜@*–@)”@(‘>.‘>.‘>.=-=-=-<*<*=+=+<*<*=+“=,”>-”>-”B6–?5›?2¦@2²B4½C6ÂB5ÄB5ÄF:½H>­K@˜J@|F:aA4K;.?9+@86@86?75>64:5294183073062/62/62/32.32-21,21,21,-2.-2.-2./1./1.00.00.10.5106005//5,-4+,6,-:01>45W6-b<3qA7}D9„H@ŒRQŽ_i‹iƒs˜|z¬u~·myµ^g¢RQŠMDyM?rN@dPEgQFfLC^GBVNLZ^^fjnquzvx}vz€vwzokoa`bUWYKTUG]V^]V^]V^.-+.-+.-+/.,0/-10.3/,40-3/,4/+4/+4/+4/+6/)6/)6/)4/,4/,3.+3.+3.+3.+4/,4/,50-50-50-50-50-50-50-50-3.+3.+2-*2-*2-*1,)1,)1,)4/,4/,4/,4/,4/,4/,4/,4/,41,41,41,41,41,52-52-52-52-52-63.63.74/850961961<5+=6,?8.@9/B:/C;0C;0C;.D:.D:.D:.G;-H<.I=/J>0K?1GH6KH7PG6XG5aF3jD1uB/|?,‚;)‹:'’;(š=,£B2«G7±K<´M>ÒDBÔDCØDBÝEBâC@ê@@ð>>÷:>û:=ú9<õ;>í?>áB>ÓC:ÅA5º?0¯@-®?,®?,®?,­>+­>+¬>-ª?-¨?,¤?-¢?,ž?+š?*–?+”?*“>)?.?.>->->-Ž=,Ž=,Ž=,Ž=,Ž=,Ž=,Ž=,<,=-‘>.‘>.”B4—A4@1ª@3¶B5ÁC7ÆA8Å@7ÁB;¸G?©KCJ@uE;Y>3C9-78*@86@86?75>64=53:5294173062/43/43/32.23.12-12,12,,2.-2.-2.-2./1./1.00.00.3205105104..2,,4+,7./901P5*Y9,e>/n@1tB7|KGƒYcƒg~p—xx¬s{¹js¶]e¦TT”OG‚LAyPAjPAhMAeJA`GBYHEXKKWMPU^bc`fbcha`f\Z`TWZOUYKWYL`WZ`WZ`WZ,,,,,,---.-+/.,0/-10.3/,2.+2.+3.*3.*3.*3.*3.*3.*3.+3.+2-*1,)1,)2-*3.+3.+3.+3.+3.+3.+3.+3.+3.+3.+2-*2-*2-*2-*1,)1,)1,)0+(3.+3.+3.+3.+3.+3.+3.+3.+41,41,41,41,41,41,41,41,41,52-52-63.74/850850850;4*<5+=6,>7-@7.A8/A9.A9.C9/C9-C9-F:.G;/H<.J>0K?1FI8GH6MH5TG6[F3dC0lA.t?-{<*‚;)Š;*“=,šA1£F5ªJ:­M=ÉE@ËFAÑFAÖE@ÞC?å@>í==ó9<ø:<÷9;ó;=ë?=ÝB=ÌD8¼A2±>,«@,«@,¬?+¬>-¬>-©>,©>,¨>.¥>-¢?, ?,›>,—?+•>*“>)‘?)>->->->-Ž=,Ž=,Ž=,<+Ž=,<+‹<+‹<+‹<+Œ=.>/Ž?0’C2—A2 @2­A5»B9ÃC:Ç@:Å@9»@9³H@¥NGNEoG=R@4?;039-A75A75@64>63<4194083/74/63.43.34/23.13.02-02-02--3/-3/-3/.3/.3/02/02/11/11/32032040/2.-1-,4..5//H4)M5)X8+a<,f>2nGBzYb‚lƒ€uŸ{|´u|Àmu¾bi±[[¡SLLBQAnN?jI=cH>`HB^FCX@BO<?HBGJFLJJQJJQIIQFKQGOUISYMaXSaXSaXS++++++,,,---/.,/.,0/-0/-1-*1-*1-*2-)2-)2-)2-)2-)2-*2-*1,)1,)1,)1,)2-*2-*1,)1,)1,)1,)1,)1,)1,)1,)2-*2-*2-*1,)1,)1,)0+(0+(3.+3.+3.+3.+3.+3.+3.+3.+41,41,41,30+30+30+30+30+41,41,52-63.74/74/850850:3+;4,<5-=6.?6-?6-?6-?6-B8.B8.C9/E9-G;/H<0J>2K?3DG6EF6KE5PD4VC2^C2e@.m>,v=,|;)ƒ:)Š;*“=.›B2¢F7¦I:¿D<ÂF>ÇG>ÏF>ØE>âC?ì@>ó<>õ9:ó9:ï;<å@<×B;ÆD6´A/¨=)©@-©@-©@-¨?,¨?,¨>.§=-¥>-£>, ?.ž?-š?,—>,“>*‘?*>)>->->-Œ=,Œ=,Œ=,‹<-‹<-‹<-‹<-‰<,‰<,Š=-‹=0‹=0Œ>1‘D2–C1¡A3®B6¼C:ÅA<ÇB=ÃB=»EA³PJ¥XPŽZOqSIVI@BD97A6A83@72?61=60<4194083/63.43.43.34.13.13.02-.3-.3--3/-3/-3/.3/.3/.3/02/02/00.11/22021/0/-/.,2.-3/.?0)C1'K3'T8,Z<2dGCw]hƒsˆ­„„À|ƒËszÈkq¿ed°VSšJC‡N>kK<gG;cG=`FB]DBX?AP;?H:BE?HGDMHGQIGQHJRGNVKRZOaYNaYNaYN++++++,,,,,,---/.,0/-0/-/.,1-*1-*1-*2-)2-)2-)2-)1-,0,+0,+/+*/+*0,+0,+1-,/+*/+*/+*/+*/+*/+*/+*/+*1-,1-,1-,0,+0,+/+*/+*/+*1-,1-,1-,1-,1-,1-,1-,1-,3/,3/,3/,3/,3/,3/,3/,3/,40-40-51.62/62/73084184192,:3-;4,<5->5.>5.>5.>5,B8/B8/C9/E8/G:1I<3J=4K?3EC6FB6IC5NB4TA3\@2b>0h=-q<.w9*}8)…7*Œ:,•=/›B2 D5µE9¸F;ÀG<ÈH=ÒH>ßF@èC?ð@@î:9î:9é=;àA;ÑD:¾E4¬A-¢?(¦A-¦A-¥@.¥@.¦?.¥>-¤?-¤>/¢>.Ÿ@.œ?.˜?-•>+‘?*>)>+>->->-Œ=,Œ=.Š=-Š=-Š=-Š</ˆ<.ˆ<.ˆ<.ˆ<.‰=0Š>1‹?2‘D2–C1¢B4®B6¼C;ÄC>ÄC>¾D?»PJ²[T¥e\‘f]s_TYUJFNC>KA@70@72>71=6094.83-63,63.43.34.34.13.13..3-.3-.3--3/-3/-3/.3/.3/.3/.3/02/.0-00.22022000.0/-0/-10.8,,;,)B1*K7.S<4^IHtbn‡z–Š¸‹Ê‚ˆÒy€ÐrwÈik¸XV¡GD‹I<gG<fD<aC>^C@[ABV>DP>EMGQSKWUQ^WU`XS_UR^TT^SV`UaZHaZHaZH,-/,-/------------.-+.-+/.,/.,1-*0,)0,)0,)/+(0+'/+*/+*/+*/+*/+*/+*/+*0,+/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*0,+0,+1-,1-,2.-1-,1-,1-,1-,1-,1-,1-,1-,0,)1-*2.+3/,3/,3/,3/,3/,3/,3/,3/,3/,40-51.62/73081+92,:3-;4.=4/>5.>5.>5.?4.?5,@6-C6.D7.F90G:1H;2F?5H@5J@6N@5R>3W<1\:0a7+k9.t8-|8+…9,;/“=0˜?1›?2¨@3¬B5´D8¾E:ÊG=ÕF>ßD?çB>ë?=íA?çD?ÜE>ÉC8¶C1§B.¡B,¢A.¡@-¢?,¢?,¡=-¡=-¢>. ?.œ<,š=,˜=+•>-“=,=+Ž=*Œ>*‹<+‹<+‹<+‰<,‰<,‰<,‡;-‡;-‰=/†</†</‡=0‡?1ˆ@4‰A5ŠB6‘F3–E4£F7³H>½F@¾C>¾DA»KG·XR¯f]£qfth|rfik^S_SCSHQJBLE=D=5<8/95,74-63,33+43.34.23-13.02--2,,1+,1+-2.-2.-2.-2.-2.-2./1./1.02/02/11/11/11/11/11/11/5*2;/3A32C4/J;6]OOymy‹…Ÿ’‘½”–Ӕ݂‰×tzÈjn¸_b©YZPHmHBdA>]>>X?AVBHVLU^U`bbqnn}xv†|p€ulyoguh_k_T`Ta[Eb\Fc]G,-/,-/,-/,-/---------.-+/.,.-+.-+0,)/+(/+(/+(/+(.*).*).*).*)/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*0,+0,+0,+1-,1-,1-,1-,1-,1-,1-,1-,1-,1-,0,)0,)1-*2.+3/,3/,2.+2.+2.+2.+2.+2.+3/,40-51.62/80-91.:2/;30=4/>50>50=4-?4.?4.?4.B5-C6.E80G:2H;3H>5J=5L=6O>6Q=4V;2Z90_7/h8.p7.y6-‚8-‰9.’;1–<1š>1¢@3¦A5ªB5³E8¾E:ÉF<ÔE=ÜC=âC?ãD@ßF@ÕF>ÄF8±C2£B/›C-ŸB0 A/Ÿ@.ž?-ž?-Ÿ>-ž>.ž>.š=,™=.–=-“=,=+>-Œ=,‹>,Š=+Š=+‰<,‰<,‰<,‡;-‡;-…<-†</…=/…=1ƒ=1„>4†@6‡A7ˆB8‘H7•F7£G:±I@¹HB¹FAºJFµTM²dZªreŸ~op~|mlteYgZJZOPLAKI=EC7@>2=:1:7.44*11)23+23-12,/1,/1,.0+.0+.0-/1./1./1./1./1./1./1./1.02/11/11/11/11/11/11/11/5*:9-9<15?53H?:^VTxszŠˆž‘“º”—Εׄ‹ÓxÆpyºkt¯en¥__yXZsSUjRWjU]j\gmguvr‚v‡€‘‡ƒ•‰}v†yp€sfteXfW_YA`ZBb\D,-/,-/,-/,-/,-/---------.-+.-+.-+-,*/+(.*'.*'.*'.*+.*+.*+.*+-)*-)*-)*-)*/+,/+,/+,/+,/+,/+,/+,/+,.*+.*+/+,/+,/+,0,-0,-0,-0,-0,-0,-1-.1-.1-.1-.1-.0,+0,+1-,2.-2.-2.-2.-1-,1-,1-,1-,1-,2.-3/.40/51080-91.:2/;30=31=31=4/=4/?40?4.?4.A4.C60D7/F91G:2H;5J;6K<7N=6P;6S:5V72[60c60k6.t5,}7/‡9/Ž:0”<0˜<1œ@3ž@4¢@3§A3±C6¼C8ÇD:ÎC<ÖF>ÚG@×HBÍH?¾E:­C3ŸB0™B.B/œA.›@-›>-›>-›>-›>-œ?0˜<-–=-”=,“=.>-Œ=,Š=+Š=+‰<*‰<,‰<,‡;+‡;+…<-„;,ƒ;-„<0‚<0‚<2‚>3ƒ?4…A8†C:‡D;“K<–H; H>­JDµIF´KG´SM¯_V®rg¥qœz{Šwr€ocqbVdWPQCMN@HI;DD8@@4::055+/0(01)01+/0*/0+./*./*//-//-//-//-//-//-//-//-//-//-00.00.00.00.00.00.00.00.6*>6+;8.6;63HE>_^Yyz|Šœ“²’–ÃŽ•Ë„Æ}ˆ¾{‰¸|‹´|Œ°ˆ—yƒq~‡o|‚n}€o‚€yŽ‡ƒ™‹¡”‘¨˜¦”ˆŠƒ–ƒ|{j{iXiW\V<^X>`Z@-.0-.0-.0-.0-.0-.0......---.-+-,*-,*,+).*'.*'.*',*++)*+)*+)*+)**()*()*(),*+,*+,*+,*+,*+,*+,*+,*+,*+,*+,*+,*+,*+-+,-+,-+,-+,.,-.,-.,-.,-/-./-./-./+*0,+1-,1-,1-,1-,0,+0,+0,+0,+0,+0,+1-,2.-3/.40/91/:20;31<42=31=31=31=31>3/>3/>3/@3-A4.C60D71E82G83H94I:5L:6M:6N94Q83T50^72e60o6/x8/ƒ90Š:/’;1•=1™?4™?4›?2@1¥A2­C5¸D7ÀD:ÉF<ÌG>ÌIAÄH>¶F:©C4B0—B.˜A.˜A.˜?-—>,™>,™=.™=.™=.•<,”<.“=.=-Ž<.Š=-Š=-ˆ<,ˆ;)ˆ;+‡;+‡;+„;,„;,ƒ;-‚:,;/€<1€<1>5ƒ@7ƒC:…E<†F=’M>•I<œH>¨IC¯LG¯PL¯\Tªj^§€o y˜š‚Žœƒ„–€z‹ym{lam_UYHQUDKO@EI:@D6;=057,13(01)/0*/.).-).-).-+/.,0/-/.,/.,/.,/.,/.,/.,/.,/.,0/-0/-0/-0/-0/-0/-0/-0/-8*A6):3-1961HJ=bfX{€y‰‘“Œ“£–²Œ”¸ƒ³±…™²¤¶ªµ•§§¤£Œ ž‡ž–‚™}˜‰œ‹ˆ£”°š–²›”­—‹£‹…›†’~k|iUfSXT7ZV9^Z=+/2+/2-.0-.0-.0-.0-.0...------.-+-,*-,*,+),+),+),*+,*+,*++)*+)**()*()*(),*+,*+,*+,*+,*+,*+,*+,*+,*+,*+,*+,*+,*++)*+)*+)*,*+-+,-+,.,-.,-/-./-./-./+*0,+0,+0,+0,+0,+/+*.*)/+*/+*/+*/+*0,+1-,3/.40/91/:20;31<42=32=32<20<20=20=2.=2.?1.@2/A4.B5/C60D63C84D95G96G96H94K84N51V72_60h70r7/}:1†<1=2>2˜?7—?5—?5—?3šA3£C5ªD6³E8ºE;¿F=ÀG>»F=°D8¤B5™@0–@/–A-–A-–?,•>+•<,•<,–=-–=/”<.’<-=-Ž<.‹<-‰<,ˆ<,ˆ<,‡;+†:*†:*†:*ƒ:+‚:+‚:,€:.;0€<1€=4?6‚B9ƒD;†G@‡HALA’H?˜HA¤KGªOLªWQªf]¥wh¡Œw˜›€’¥‰Š¤‡„ž…|’}t‚qlte\eRV_LMVCEL<?F6<@27;-68-01)00(.-(/+(/+(/+*2,,3--1-,1-,1-,1-,1-,1-,1-,1-,0/-0/-0/-0/-0/-0/-0/-0/-9*?5)73*-66*GL6_iPx„nˆ“…—–™¢™§†–¥‡›¤ª©šº¯ŸÁ±š¶¨š¶§›·¨˜¸£‘±š‰«’‰«²”’³”•´•­ˆ¢…ƒ›{’xgzdQcMTS5VU7XW9,03,03,03,03./1./1./1///..........-+.-+.-+-,*-,*-+,-+,-+,,*++)**()*()*()+)*+)*+)*+)*+)*+)*+)*+)*,*+,*++)*+)*+)**()*()*(),*+,*+,*+-+,.,-.,-/-./-./+*/+*0,+0,+/+*/+*.*)-)(0,+0,+/+*0,+1-,2.-3/.40/:12:12;23<42=32<21<21;1/=20<1/<1->0-?1.@2/A30A30?61@72@93A96A96B94E74G51O61W6/a6/j8/u9.€</‡=0Š>0•>7•>5“?5’@4•B4™C4ŸC4¥D4ªB5²C8´E:±E;©C7 @4˜?1•?2“A,’?-“=,“=,“<+“<+”<.”<.“;-’</<.;-Š;,‰<,‡;-…<-†:*†:*…9)ƒ:)ƒ:+9+:+9-€<1<3?5A8‚C<…F?†JB‡JEJAG@—HC¡NJ©VRª_Y©pe£„r›•{’¢…‹ªŠ„©ˆ€¡„~–~z‡uszjcqZ]iSR^JHT@BK:>E5:@29<134,22*1.)/+(/*'0**3*+4+,1++1++1++1++1++1++1++0,+1-,1-,1-,1-,1-,1-,1-,/.,;(;5(23+(56$CL-\hDt„`…”wŽ›‰’ž”Ÿšž–¥—•µ¡Æ¤¦Ð¨¥É¯¦Ê°§Ë¯¢Éª—¿‹³ˆ°‹³ŽŽ²Ž²¬Š„¢€€™{wŽrdx]MaHQQ5QQ5RR6,03,03,03,03./1./1./1./1/////////0/-/.,/.,.-+.-+/-..,-.,--+,,*++)*+)**()+)*+)*+)*+)*+)*+)*+)*+)*+)*+)*+)**()*()*())'()'(+)*+)*,*+-+,.,-.,-/-./-./+*/+*/+*/+*/+*.*)-)(,('0,+0,+0,+0,+1-,2.-40/40/:12;23;23<34=32<21<21;10<1/<1/<1/=/,>0->0-?1.@2/;60;62;83<94=:5=:5?82A60F5.O4-W5+b6+n8,x:-<,„<.’:6‘<5=5Ž@4A4‘B3•B2™@0Ÿ?1¦@4ªB7ªB9¥@6?5—=2•?2‘@-’?-‘>,’<+‘;*‘;,“;-“;-‘;,<.;-‹<-‰;.‡;-„;,„;,…9)…9)…9)‚9*‚9*9+~8,}9,=1€=4€@7B9„E>…HCˆKFŠMHŒIAŽGA˜JF¢SOª\X«h`©{n£Žy—Ž©ˆ…¯‹«ˆ~£„€˜€‹w{nixacr[ZhQP]IIUACL;>D6<?467/44,30+0+(1)'1()3)*5+,2)*2)*2)*2)*2)*0**0**0**1++1++0,+0,+0,+0,+0,+0,+;&57(/4-%46?I$Ue8pT‚’kœ}‘Ÿ†’¡Œ¡ˆ¨‡•¹žÉ“¢Ò”©Ò°¨Ò®¥Ñ­ŸÌ¥‘¾•ƒ°…‚­‚†±„†¯ƒŒ±ˆ‰¬„Ÿ{{”tqˆk_sWJ^CMM1LL0KK/,03,03,03,03./1./1./1./10000000000/-0/-0/-/.,/.,0.//-./-..,--+,,*++)*+)*+)*+)*+)*+)*+)*+)*+)*+)*+)*+)*+)**()*())'()'((&'*()+)*,*+,*+-+,.,-/-./-./+*/+*/+*/+*.*)-)(,(',('1-,1-,1-,1-,2.-3/.40/510;23;23<34<34=34<21;10;10<1/<1/;0.=/.=/,>0-?1.?1.96/:729839839:4:94;83>71A2+I2*S2)^4(j6)s8*|:*~;+84:5=4Œ@3‹B3A1@/”>-˜<-Ÿ=0¥@4¦A7¢@7œ>4—=4•=3‘@-?,=+<*‘;*‘;,‘;,’<-‘;.<.;-Š;,ˆ:-‡;-„;,„;,…9)…9)‚9(‚9*9*€8*~8,}9,€>2?5€@7‚C<ƒG?†IDˆMGŠOIŒICHD˜MJ¥UT¬a^­ng«s¤•€–¡ƒŠ¬‰‚°‹|«‡|£„™y‚ql{dgv__nWXeQP\HIRAAG9=@579.66.41,1,)1)'2()3)*4*+2)*2)*2)*2)*2)*2)*2)*0**1++1++1++0,+0,+0,+0,+0,+:&27(+4."47=HRb1l~J€’b‰™rŽ|Ÿ‚ŠŸ~Š§{·€˜Æ…œÎ…œÉ¢šÉŸ™Èž”׉¸Š®€‚°‹¶ˆ‚¬~ˆ¯ƒ‡ª€~œvuml„dZnRG[?IL/GJ-DG*/0*/0*/0*01+01+01+21,21,32-63.63.63.52-50,4/+4/+8.,7/,6.+5-+4,*2-*1++0,-0,-.,/--/-,1,+0*+/)*.()./(0/(//(//(//(//)-.)-.*+/+,-,*-,(.-).-)-.(./)./)--/--/---.../-.0/-2.+3.+2-)4,)5.(7.)8/(;0*;1(<2)<5+=4+>5.>5.>5.=4-<3.<1-=2.<1-<1/;0.=/.>0/>0/?11H-&C1';5)2:++=-(=.-;.45-?-+H()R%(X((Z.+Z8.[A2\G6wC-{B.„C1A3’?1•;0–:/”8+“;-‘>.‘B1‘D0‘D0B.?,<*Ÿ63›83”:2Œ<1…@1B0|A/|A/‚C2„A1ˆ>1‰=0‰;/ˆ:.‡9-‡9-v:/|@5u=0n9)s@/s@/t<+{@0{<-ƒ?4ˆD9‹H?ˆLA„NBQC€RC—HK•TRd]…ue{…lw’sz|€£ƒ‰¦ˆŽ¥‰’¤Œ‘¥Œ‡¤ˆy¢‚kŸ{awhŽea†]\zV[sS]mR[cLVTEPH=J;6G53B,/=&,:#+:#-9#/8".#/-#-,$-,&*+))+-(.1'/2'/4'06&14'14'13'32(32(30(3.)-0,-0,)//'=>0WZErx\‹gœs‹žpŒ¢qŒ§r‹¨r‰ªs³{›¾†£¿Ž ¾Œ›¹‡’²€‹­{†ªz„ª{…ª~„§}…¥€€ž|z“vr‰oi{e[jWLZIKO@CG8>B3/0*01+01+01+12,12,21,32-43.63.74/74/63.61-50,50,7/,7/,6.+6.,5-+2-*1++0,+0,-/-./-0--/-,1+*/)*.()-/(//(//(//(//)-/)-.*+.*+/+*-,*.-).-)/.*./)./)./)..0....../-./.,/.,1-*3.+3.*5.(6/)8/(90);0*<2)=3*>5,>5,>5.>5.>5.=4-<3,=2.=2.<1-;0.;0.;0.=/.>0/?10F/'D0)A3*=4+96-85.83-<1-?-+D*)K)(P*'U.)[4-_:1c?3s@+xA-€A0‰?2‘?4”;3”:1“;19.‹<-Š>.ŠA0‹B1B/ŽA/@/š93—:3’;2‹=1„?0‚@0@/?/„A1†>0‰=0‰;/‡;.„:-‚:,‚:,w9.x<1s9-n9)r?.s>.q9*u:,}=1„@5‰E:‹H?‰K@†MB„PCQC›DJ›QR–d]vfƒ‡p}”w~ ƒ¦…ˆ§ˆŽ§Š’¦‹“¥Œ£‰‚Ÿƒwœ}o˜xa•g\`VƒZU}XWyXWpSPbJKVECI;@A998340-0,+/+,.)--(,*,+)+***,+),-(,/)-2(03(03(02(02(10)1/*1-*1,+3,+32-12./0,)--%9:,TWBox[€‹i‡–o†™l†žnˆ£p†¤p„¥pŠ­w“¶€›¹‡˜¶„“³Œ®{†«xƒ§w‚¨yƒ¨|ƒ¦|„¤{x’uqˆnh{eYjWL[HGK<@D5:>/12,12,12,12,23-23-43.43.54/74/85085085083/72.61-80-80-7/,6.,6.,3.+2,,1-,1-./-.0.1..0--/,+0+*/*).1'//(//(//)-/)-/)-.*+.*+0,+0,+/.*/.*/.*0/*/0*/0*/////////0./0/-1-,1-*2-)4/+70*90+:1*<1+=3*>4+?5,?6-?6-@7.@70?6/>5.=4->3/=2.<1-;0.;0.;0.;0.<1/=20C2*E0+H/+L,-N+/M*.J*/E+.A-,@.*@/(C/(M/'Y0*d1-j30i;+o;-w;0=4‰<4Ž;5Ž94:4‹;2‡=2†>2…@1†A2‰A3ŒB5C6‘=2=1Œ>1Š>0†>/…=.…=.†=.ˆ<.‰;.ˆ:-‡9,„;,€;+~=+z=*}=3z<1v:/u;-x@1x@1v<.v;-?3„B6ŠF=‹H?ŠJA‡KA‡NC†PDDHQQšc^’ug‰„n‘t~}€¥ƒ„©‡ˆª‰©Œ“§Œ‘£‰‹ƒ„˜€”{a›k[•eXaV‰`W…`W]QtVMiPC[E=RA6F9/<2*5-&1+%.)$-(1&*1&*1&*1&*1&*1(-2).1+//*0-+0,+0+,0),1(-1&.1&.14.24.0.*'**"66*PUAmv[~‰i€k~“h™jƒŸn€ n~ m€¥q‡¬xŽ®|‹­zˆªw„©v§t€¦u¦w€¥y¤y€¢}}›yw’sp‡mh{eYkUL[HEG:=?28:-23-23-34.34.34.45/54/54/650961961:72:72:51940940:2/91.91.80-7/-4/,4/,3/.3/.3/01/01/00.1..0--/,,.2).2).2).0*.0*,0*,0*,/+*1-,1-*0/+0/+10+10+10+10+11111100010.10.2.+2.+3.*91.92,;2+<3,>4+@6-@6-A7.A8/A8/B90A8/A81@70>5.?4.=2.=2.<1-;0.;0.<1/=20=20?5,E2.O-.W(0]#/\"0W#/L'.C/.:3-55);5)E1(U.'c+*l*+e;/j;1s=3}<6…;8‰;9Š;7ˆ:6‰>9†?9…B9ƒC9…B9†B9‡A9‰@7†B/†B/‡@.‡@.‡>-ˆ<,‰:+‹9+‹8*‹8*ˆ9*…9)€<)z=(w?(t@(ƒ=3{7,x8,z</v;-w=/{A5{?4€B7„D:‡G=‰I@ˆI@ˆLB‰NF‹PH“OL”YS’f[sb„€g}Œmz˜v{¡|©ƒ«‡†«‰‰«Š‹¦‡Šžƒ†˜~„”zm˜mi”iegdefŒgc†e]~_Zw[PhPI_J@Q?8D60:/-5**/(),%7$(7$(5%(4%(1&*1(+/+,.,-*+-(,-'--%-/%-/$./$./$./1(+1+-0+(.+$88,PUAiqYvƒe{Œhyf{–iœn}Ÿmyžkz m¥r‚§s€¥q}¤o}£p}¥s~¦t~¥v}¤w|¡x}Ÿzz™wuqn‡jg{bWkRK]GGE9?=1:8,45/45/45/560560560761761872:72;83<94<94=84<73<73<41<41;30;3083072/61.61.5106216213122011/00.//-.4+.4+.4+.4+.2,.2,,2,,2,,3/,3/,3/,10,21,21,32-32-22222032032032.51.61-61-;4.<5-=4-@6-A7.B8/E8/E8/C:1C:1E;2D:1C90B71@5/@5/>3/>3/=2.=2.=20=20>31>31>7/C41O/2Y*2_%3`#2Y%1N+1B3077-39+68*?5)N1)]-)e+)c;3h<3r=7z=:‚<<†<=‡;;…;:‚;9>8€A:C;‚C<ƒB<…@9„?8E/D/C.ƒ@-†=,‰<,‹9+Œ9+Œ6)Š7)†9)‚;)~=)w?(sA(qB(…6/|/'8/ƒ?4w5)s5*}A6}C7E9G<ƒI>„J?…K@‡LDŠOGŒSJycL~hSoYu]}bˆi„•u‚ |¥~|©€~¬…­†€ª„¥€|ž}{˜yn}ŽlyŒlwŒkwŒmt‰joƒgl~dbqZ[hTSZHIK=B@4=6,8/&5+":&(8%'6&'2&&0(&-)(++)).*'+*&,*&,*'+*'+,)*,**,**,-#$2*(50,85,BC5UZFfpWn}^tˆcqŠbt‘ex˜iw›ks™hs›iwŸmz¢mx lwŸkv¡ly£q{¥u{¥w|£wxžuzœww–tqŽom†hd{_WkPJ^CFB9>:195,560560671671782782872872983<94=:5>;6>;6?:6>95>95?74?74>63=52;62:5294194184184195484373243132021/6-.6-.6-.6-.6-.4..4/,4/,40-40-40-52-32-32-43.43.431431542540841850940:5/=60?6/@7.B8/C9/F90G:1H;2F<3F<3F<3F<3E;2C90B71A60@5/@51>50=4/=4/>42?53?53=82A64I35Q16V.6U-5R/5J22A62::08<.9;-?9)H6*P4)U3)]2+c4.k62t76}77‚89ƒ7978}75{:6|=8{?7@9ƒ@:…@;†?;|E0}D0€C0‚A/…=.‡;-‰:-ˆ9,‡8+…9+‚:+<+{>+x?+uA+tB+‹2,‹2,¡LE§XQŠA8|90‚F;€J>yH:zJ<{M@|NA~NB‚PE‡UJYN_uNgwRtzX€{^Š|b“i›s›—|™zˆ |ƒ¨¬ƒ|¬‚x¨~t£yq vŠpˆo†nƒŽp€p}px‹ms‡kk~bgu\_iQWZGPM<H@3B6*>0%:,+7,*5+)1,(-,'+.').((/().(+-*,,*/+*3)*6',7&,9&,2)$<3,E>4JF:QR@]bLgqVizXmƒ]j…\j‰]p‘bq•eo•do—eršhu krhq›itžlx¢rz¤vy¢vyŸvvštw™tu”rokj…fc|^UlOJ^BHA9@91;4,671782782782893893983:94:94=:5>;6?<7?<7@;7@;7@;7B:7B:7A96@85=84=84<73<73<74<74<74;74:6395284173080.80.80.80.80.80.61.61.61-52-52-52-63.63.54/54/540540651952:72=84=82@93?80A8/C90D:0E;1H;2I=1I=1H>4H>4H>4G=4F<3D:1B8/A60B71@70@72?61?61@72@72A83=84@85B86D97E:8G96G96E:4C90B90B:/B:-D;,F:*H;*H;*].&b0)n3/x73ƒ98‰;;Š<<‰>;‹A>†A<?6}=4~;3‚;5ˆ=8Œ>:~C3€B3€A2ƒ?2ƒ=1„<0ƒ;/;/;.|=.{=.|>/|>/|>/}>/}>/—.*£;8ÎkfÙ~y­ZTŒC<ˆLAN@tJ:qM=pQ?qR@tSB{VD‚[J‰_OUOe€Uz~[‘y_¥ra³of»rk»xo¶…vªz ›~•£€Œ¦ƒ¦~}¢yyŸvŒr‹rˆ‘r„“r€•t|–sv”ps’pl‹ig„eby\\lQU_GMP;ED0A<)>3-<3,92*41(01).1(+1'+0)/0*2/*6,*:*+@'+D%+G$+H#+A7+LC4WP@[XE`bLgmQiwVj{Wl‚[g‚Wf†WjŽ^n”an”an–bršfržko›hnšiqœnw¡sy¢vxžuu›ts—su—ts’pn‹li„cb{[TmMH`@MD=E<5@707827828938938939:4:94:94;:5>;6?<7@=8@=8A<8A<8A<8A<8A<8A<8@;7?:6>95>95=84>95>95>95>95=84<73:51940:0.:0.:0.91.91.91.91.72.61-61-63.63.63.74/74/74/540651961;83<94?:4@;5B;3A8/B90C9/E;1H<0I=1J>2K=2K>5K>5J=4J=4F<3E;2C90B8/B92B92A81@72@72@93A:4A:4?74>95=<7>?7?@8@@6D@5J=4J70N5.Q6-Q6+O8*M:+I<)H=)l3(r6,~;3‰@:•DA›HDŸJGŸLH QJ—MDD;„;2‚8-…7-Œ91;4…?7…?7†=6…<5ƒ=5€=4|>3y?3vA3uA3uA3y?3}=3ƒ:3‡83Š73Ÿ%$´<;í{zþ•’Åhc–G@‰K@wI:mN<gR=dU>fW@jX@r\E}aL„eQj{O{{U™w\´l`Ì^_ÚR\áM[àO^êmuÜxxÎ…~¿€²–€§—}ž•x˜“u•Žr”r‘‘u”u‡–u—s{–sx–rq‘lp‹hiadtW]gLVX@LJ3GB.L40H3.D3,?2*:1(70&40'40'81):/+?-+C++H(+M%-O$-Q#-PE1[P:d^FgfJilOnuTm{Wl~Vk„Zg„Vg‡Vm]p•ap—br™dvhrœlo™km—ip™mwtyŸxw›wt–us•tu”tsqoŠki„cb{[TmMGa>SJCKB;F=69:49:49:49:49:4:;5=<7=<7=<7?<7@=8@=8A>9C>:D?;D?;E@<E@<E@<D?;D?9C>8C>8D=7B;5B;5B;5B;5B;5B;5A:4A:4A83A83A83@72@72>71>71>71<71<71;60:5/85085074/74/761961961:72<71=82A:2B;1C:1E;1F<2J>2K?3L@2N@3N@3M@7M@7L?6K>5I<3F<2E;2E;2B90A81A81?80?80?82@93@93<5/LE?IB:E<5OB:K:2J3+\>6Z5-`5.`4+^/'\0%b8,g@1gB2‹I;G;–I?žLAŸF>›>7š=6žD;¥ND£QE¨VH«YK£PBš@5˜:0ž=4’9;9:Œ67†54„96ƒ@:{@8o?3oC6lB4m?2u:274Œ35’-3–(1ÏEEèbaÅEDÍWUáyv«VO†F<‚WGlS=f\CedFgfHgbEm_DyeL†nVŽdK­p]ÍphÞW]å8Kð(Dü&Hþ+Lþ<WðG\éXeånrà|zÙ}Ö†؉‚¸„wµ…w³ˆx®‹x¨x£ŽyŸy›‘xŽ‡mŽƒm~i‰taƒgY{YMtLBpE<r;>d02b22\31L)'D'#I2,J70F5.E2,E0+H0.I-,I)*O+-V24VK/`W:f_BgdEkoLu}Xu„]oWj„WlˆXnŽ]q“`s•bu˜bušdv›eq–ks˜ms˜oq•os•rw™xz™zy–zx•yqŽrm‡jj„ghƒdazZTnKIc@TKBSJAPG>9:49:49:49:4:;5;<6>=8?>9>=8@=8A>9A>9B?:D?;D?;D?;FA;E@:E@:E@:D?9D?9E>8E>8E>8E>6E>6D=5C<4D;4D;4C:3B92B92B92B92A81A81@91@93>71<71;60;60:5/85.74-74-96196/96/;60<8/>:1A:0C:1C;0E;1G=1J>0L@2M?2NA1NA1N@5N@5M?6J=4I<3H;2E;1E;2C:1B90A81@91@91@91?;2?;2C:3G81I0,V..j68u99{;;†ECƒD?„H@…I?†G>ŽJA›NH£PL¥MK’E3”C2šB4 B6 >36-7+¡<0£C5›@.™@. E3¦F6©E5¯H9¸N@´KR¯GN¥@F™9=‘8:Š?<€A:r@5k?2uK=€NC@:‚,-“(0µ8FÒK\àJIáMMÌ>=Ã>?Ò_\µXQ„@5€UDvbJa]@Z_?ekIonOshJ{fK†kPÌ]VÚ][êSZó<Nü'EÿDÿHÿ!Kÿ(Nÿ.Nù9RöF[òM^ëO]êO]ëS`ÝakÛclÚgnØkpÓnrÑstÎvuËwwÌ{zÌwzËuxËotÊirËcnÊ^kÊ\iÆ`n´Ra¦JWšGQDK„FIk79FS2-L0,F2+I6/J91I;2M>7SD=]P.dY9ga?ifCnrMz‚[z‰bt†^r‰]oŠ]oŒ^qŽ^u’bw•cw•cw•cr’mw—rz˜vy–w~˜}ƒ„…‡ƒ›…™ƒz’|q‰ql„jhc`yYTnKJdAWQEVPDUOC8938938939:4;<6<=7?>9@?:@?:B?:C@;C@;C@;D?;D?;D?;FA;FA;FA;E@:E@:G@:G@8F?7IB:HA9H?8G>5F=4E<3E<3D;2D:1D:1D:1C:1D;2D;4D;4C<4?80?80<71;60:5/:5/94.94.96/96/96/;7.<8/@9/A:0C;0E;1F<0I=/K?1M@0M@0NA1M@0N@5M?4L>3K=2I<3H;2E;1D:0C:1C:1A:0A:2?;2@<3@<3A=4SE<P40g35AG°JWÇS`Ï[fÇ^c›B>–I?•MA›OB¬RJÃSRÏNSÒENœE2B0 @0¥?1¦:-¥7*¦8+§=/¬E4¡>+˜7$:%¥>+®@/³B2¹C5§/8±9B¹DL¾KR¸NRªLL“B>}:1u;/q9,s5*2-›47º<GØEWéLaåFCÒ41Ò:9À21ÉMKÈb]”J?‹\JzdLebCbfEpqOysS~iL‹iNœrZûW`úNZû@Qþ3Iÿ-Hÿ-Nÿ*Mÿ&Hÿ-Mÿ,Ký.Jü2Lù1Kù.Kû.Lþ1Oø=Z÷?[öB]ôFaòJcñMfïQhíSkêPhéOiéLgêKiîKjôLoùOsüQuþh…ô_|æZtÖUkÎYlÊdr¨R[r-0]''X1,T<2N@5?<-7:)<C1GP=[N,aW4e_=heBstR†d~ŒhwˆdxŒgsŒer‹cr‹ctcwfz‘gz‘e~•x„›ˆŸ… Š‘¤—¨–˜©™–§—‘¢’‡˜†zyn„mg~b^wYTmMKfCXUFXUFYVG7827828939:4;<6=>8@?:A@;BA<DA<DA<DA<DA<E@<E@<E@<GB<GB<GB<FA;FA;HA9HA9HA9LC:KB9JA8I@7H>4G=3F<2E;1D:0D:0E;1E;1D;2E<3E<3E<3@91?80?80<71;60:5/:5/:5/96/96-;7.;7.=9.@9/C;0D<1F<0F=.J>0L?/M@0M@0O?/O?/O>4O>4N=3K=2J<1G:1G:1D:0D;2D;2B;1B;1@<3A=4A>5A>5Q9/X+&‰:?ÅP`ãOeñOfíPcÐGO¢20”:/Ž?.–C3®F=ËFGÞ>Hã2B§H6§F5©B3®@3°?1²>1³B4´D6²G5«B/£<)¤;&©<(­:(¯5&®3$¸7<»8>½7>½6=¿<BÅJMÄTS»ZT—@7ˆ6+….%œ62ÃHKÞNXå@Qà0Eß:4Ð-(Õ74Ê64ÈD@É\U©WKXFtX@rgIysS|qQhJdK©oYÂ~kÿGVÿAPú9Jû8Iÿ=Nÿ@Qþ:Nö5Hÿ@Sû:Mú4Ký3Kÿ0Jÿ-Iÿ-Lÿ1Sÿ1Tÿ1Tÿ3Wÿ3Wÿ6Zÿ9\ý;^ü<aþ@fü=fû<eû<gý<iÿ?mÿBpÿEsÿLuÿNuÿRvøPqëRnè`xÙdv·Wb|15h0/U3*L:,BA/:C.5G/5L2VH+_T6i`CokN||`ˆŽr‡‘v}‹qzq|s|szozŠm}Œmƒ’s‰–x•£Œœ©•£®¦±¡ª´©±¸°°·°­´­¡«¢” ”ƒ‘‚s„qh|c]tWSlLLgDVWEWXFYZH671671782893:;5<=7?>9@?:BA<DA<DA<DA<DA<FA=FA=FA=FC<GB<GB<HC=HC=JC;JC;JC9LC:KB9KA7J@6H>4G=1H<0G;/E;/E;/E;/E;1E;1D<1D;2D;2@9/@91@91?82<71;60;60:5/;7.;7.;7.<8-?8.A;/C;0D</G=1I=/K?/M@0M@/P@0O?/O?/O>4N=3N=3J<1I;0G;/F90D:0D<1D;2B;1@<1A=2A>5B?6C@7_4-t42¯KSâYiðH_ð:Qá2C½#+¬/)š9(;&•=)¬@3ÈA=Ý:?ä0;¨D4¨B3«?2®>2´?5¹C7½G;»J<¬>/ª?-¨=+¨:)ª9'²:*¹;-¼</ËEBÏCBÒ=?Ñ6:Ö7<àAFâLNÜRPÁD>ÃLDËTLÑTNÙKJÝ>Cã3>è.<Ù5+Û7.Ò0+Ò94Á82µ@9µ[P”UDxO9~dI„lPbF]F®eTÍqdÛsjü<Iô9Dì8Aç<DæCHäHKäJLåIMðLSïDMð:Iö5Hû1Gÿ-Fÿ0Jÿ5Pÿ7Vÿ7Xÿ7Xÿ8Zÿ:[ÿ<_ÿ>bÿ?eÿAiÿBkÿBmÿAmÿ@oÿ@oÿ@qÿAqÿBnÿ=hÿEmÿJpöGhíMièZrÛbs½YcŒ@D]($M-"PC2PR=CO76H.WH1eYCujT€{gŽy˜œ‹”Œ‡”ƒ~‰—ˆŽœŒ™ˆ‡’‚Š“‚—žŽ¤¨—²¶§¸¼®¿Á¶ÀÁ¹ÂþÅÅÃÃÃþ¾¾²´³¢©¢—Žy‡vh{e\sWTmONiHTYBUZCW\E560560671782893:;5=<7>=8@?:B?:C@;DA<EB=FA=GB>GB>GD=GD=HC=ID>IE<KD<KD<MD;LC:KC8LB8KA5L@4K?3J>0I=/G>/G>/F<0F<0E;/E;1D<1C:1B90A:2@91@91?82<71;60;60;7.;7.;7,<8-?8.A;/D</F<0H?0J>0K?/M@0NA0P@0O?/O@-P>2N>1M<2L;1I;0H:/F90C9/C;0B<0B;1@<1A=2A?3B@4C@7t50–FEÆY_ßUbã@Qä5FÚ0;À*+¯1%Ÿ9#•;!”: ¡=&·=.Æ90Ê2- :,¢:-¥9-¨6,°91¸A9»E;·E:­?2«@0§<,¤6'ª6)·=0ÄD9ÊG=¾9*Î@4áD=ïA@ö<?ø7<ï05á-.Þ63âH@èTJåNEÜ=7Ü0.å.0ñ27Ö3$Þ</Í,"Ñ7/Á2,±6/Ég\¶m^ŒXC„\CW?‰R=©\LÑjaãfbáUTúAIñ>Dâ<@×?>ÎC>ÍJB×RMåZWéPRìELï;Gõ6F÷2Dø/Bû1Gÿ6Lø:Tø:Tø:Tû:Wþ=\ÿ?aÿBeÿDiû<eû>hú?júAm÷@nõ?oò>mï=mÿFnÿ:aÿ>dÿInÿJløMmòSoæXnëp‚Å_j˜ILt:6\6-O9+OD2SN:`PArdWˆ|p”Ž‚Ÿœ“¦§¡¡¦ ”˜”Ÿ›¨¤¦¯¬¦¬ª¤¦¥§§¥µ´°ÄÀ½ÍÉÀÒÍÇÕÐÌ×ÏÍÖÍÐ×ÎÓÑÊÑËÆÌ¿½À°²±˜Ÿ˜€Œ€m~k^u[VoQSlNU_DV`EWaF560560560560671893:94;:5=<7@=8A>9C@;DA<GB>HC?HC?GD=HE>ID>ID>JF=LE=MF<NE<ME:MC9MC7OC7NB6MA3MA3N@3JA2JA2I@1H>2G=1F<0D<1D<1C:1B;1A:2@91?82?82<71<71<8/<8-<8->7-@:.B:/D</F<0H?0K?/M@0NA0NA0P@0O@-O@-O=1O=1M=0L;1I;0G9.E9-C9/B:/A;/A:0?;0?=1@>2B@4@@4+)¨JKÁSV¾=BÀ/6Ç.3Ä./»0)ª1 £9!›=!–=˜= ¡=#¥;#¦6"6- 8/¢5.¦3,®71·@:¹B<²@6±B7­A5¨</¦8+¯:0½B:ÄC=Ä@;Â@(Í?+Ù5)ä)$ñ #ÿ")ÿ'/ÿ-2ò((é.)ã2*ß4*à4*ä1*é0+î.+Õ6#×5&Ò2$Ð6,Æ6.½>7È`UÑq¤eSŽWC‡N:¡XGÊe[ãa_ëPTëBIùDKí@DÞ@?ÑB<ÅB8ÁB9ÌIAßPLìKPô@Kù9Hý7Hþ5Hø3Eö7G÷=K÷9R÷9Rø7Rú7Uý7Xÿ9]ÿ<aÿ=gÿ@kÿ@nÿBqÿDtÿCuûCuùCv÷BuÿFgúAaþEeÿJlÿJkÿUtÿ^zö\vôi~éo~Önw¯]a„CAh6/hB7vTHwf_Œ}v£–¬¤¡²®­¶¶¸²µºª¯µ°·¿¶½Å½ÁÊÂÂÌÃÂÊËÅÏÕÎÖßÕÞäÙÕèÝÛéÝÝæÚÞåØßä×àáÔÞÙÏØËÄË»¹¼¤¦£ˆ’‡t‚qexb[tWXqS\iK\iK[hJ560560560560560671872983<;6?<7@=8B?:DA<GB>HC?ID@HE>HE>ID>JE?JF=MF>MF<OF=NF;OE;ND8PD8PD6PD6QC6QC6OC5MD5KB3JA2H>2G=1E=2D<1C:1C:1A:2A:2@93?82<71<71<8-<8-<8-?8.@:.B:/D</F<0I@1K?/M@0NA0P@0PA.O@-O@-O=1O=1M=0L;1H:/G9.E9-C9/A9.@:.@9/?;0?=1@>2??3@@4”67Á]_ÈZ[¯78®,,µ/,±,#°0#¯8$®B(©G* G'šF$šF$–C!”? Ÿ81£;2¦92¨50°:6¹B>¹D=±>7«<3¨<2¦</«<1¸F<ÆKDÄE>»72»:Ê<$á:*ñ.(ÿ$&ÿ'ÿ'ÿ%ÿ%(ù,)ñ2*ë5*è3(è2'ê/&ì-%Ü=(Ñ2Þ>0Ñ5)Ê7/Â?7¯C9Çqd²m]–YF™VE¿i\ÝlfãSSë@Hù?Lï<Bä:=×<:Í@9Á>4¹6,½4.Î44ïBHø8Gÿ2Fÿ3Hÿ5Iú7Gö<JöBNÿ>Yÿ=Xÿ:Wÿ6Wÿ5Yÿ5\ÿ6_ÿ7eÿ;kÿ:mÿ;oÿ<rÿ<rþ=tû>tû>vôEbýNkÿTqúIfð?\ÿRqÿfƒÿf€ô^wêbváky×s{Ärvªfe”ZV‰TN’€~¨™–¾°°Ä»¼ÆÁÅÈÇÍÅÈÑÀÄÏÆÌØÈËÚËÍÜÓÐáÚÖåäÜëêßïîáòòäãõççöçêóâèñàêïßêìÜéå×äÓÉÒþĪ¬©—y‡vi|f`w[\uWbqRapQ`oP201312423653875984984983;:5<<4==5??5AA7CC9EE9EE9HH@HH>HH<HI9KJ6LK6MM5MM5LK7IG8EE;HGELIPKIWFCVA=TQF4NC1JA0KB1MD5LB6F>3B90E<5C:5@85?74@86?67>56:44F85E76B87@78>:;<:=<<>==????A@<DA:HB6JA2M@-P?+O?(CB0F?/K:2O62Q35Q28N5;F:<??=-=3)A1.J4/G-,?#5B&GP3Ô`S»J<§7)¢7'£:'ž9%ž;&£@)Ÿ;$£='¬?+¯?+²:)±6&³4%´2$Ÿ8'Ÿ8'Ÿ:(£>,§B0©D2©D0©B/¨?,«>*­<*µ=-¾C4ÅF7À>0·3&Í6+Ì8,Ì:-Ì=/Ï=.Ô</Ý90æ5/ï/,õ--ø.,ó0,ë4,à9)Ø=)Ó>(Þ9%Ô4Ï4 Î9%Å8&¾6&Æ@4ÕQEÒIAÜMIïUUüVXýJPø9Aü4?ÿ9DäCHßCFÓAAÆ?;¹=3®=/ª?/ª@0¿Q@ÉQCÑLCØC=å??÷@Eÿ>Gÿ8CúGMúENûEQþESüARú=Sü>XÿCbÿGiÿBhù<fô;gô=køDsûIyýK}ÿMyýNwóRtçTqÝQkáQlø[xÿdˆÿY…ÿ?lÿMxöX{ÍYp¿yƒca„}sª½§™ÑŹÚ×ÎÛÝÚÙÜáÞÜéåÙíëÔîôÓðùÔóýÙóüßóøæòõìñóïðøõðøõð÷òïôîîðêêíäçèßäæÝâÖÐÔÍÉÊ»¹º¤¤¢Š|zt|qpzo~…sy€nv}k0./1/0320542653762873872:94;;3==5??5AA7CC9DD8EE9HH@HH>HH<JH9KJ6LK6MM5NM8KJ6KI<KJEQORWU`ZWhVTjQNiSI@ND;H?6F=6G>7H?8F=6C:5C<6A:4?74?74@85>95=84;63>3/=4/>42<74=98<;9=<:>=;@?;C@9G@6J@4L@0O@-P?+P>(=B,?A,E=0H92K63J46F35A57>=;8=69?5?A4C=-J9)^B4sRC¼K=¬;- 2#¡6&£:'8$ž9%£?(¡;%¦=(­@,³@-¶=,·9*¸6(¹5(¦;+¤:*£9)¥;+¦?.©B/«B/«@.­?.«:(±<+¿E6ÆH9Á?1¼8+½7+Ï5+Ï7,Î:.Ï;/Ó=/×;/ß8/ç4/ð0-õ--÷-+ò/+ê4)ß8(Ö;'Ï=&á:'Ù7"×8%Ô=*Ì;*Á5&Ã;/ÍG<ÐG?ÙJFèPOóPQôGKò;@÷:Aÿ?GàDGÜDCÓB?Å>8·;1¬;-ª<-©>.µF5ÅM?ÓNEÜGCã?@ñ>Bý>Fÿ>H÷DJ÷CLúDPÿFTýBSú=Sü>XÿBaÿFhÿCiü?iù@lùBpûGvüJzþL|ÿIxÿHtõKpðRsò]zö`{ùXwýMqÿCkÿAlóCjÝJgÉ^p®pugNI†‚v´”‡Ì²¥äÔÇëäÜèéäéêîéçòíáõöâûýàüÿâýÿçþÿìÿÿòþÿ÷üþúûþûöýúõü÷ôúôôøïðôëîñèëïæëäÞâÜÖØÊÆŲ²°ž ›Ž“Œˆ…ˆ…–†‰€†}/.,0/-10.21/43/540762761:94::2<<4>>4@@6BB8CC9DD8IF=IG;JH;KJ8MJ7NL7NL7OL9KI:NKBTSQ_^dihxmm…lkŠihˆcYd[QZQGPJ@IH>FG>CC=A@:<A;;?:7<73<73=82>:1>:1=90:3-94.;60=82=:3>;4?<5?<3C?4F@4I?3L@2O?0P?-Q>-P>*3@&7?'<=+A;-B8/A62>42;31=85B:7H94O2.[+)o-.Š:= EJª9+¢2$Ÿ1"¤9'¥<)ž7$8$¢<&¤;&¨=)±A-¶A/¹>.»<-¾:-À:.®>0¬<.©9+¨:+ª<+¬>-­>-¬=,²?-®9(¸>/ÊL=ÊH:¼6*º2&Å;0Ó5*Ô6+Ò8,Ô:.×;/Û9.â7/é2,ñ/-õ.+õ.+ñ0)ç2'Ý6&Ó8$Ì:#à7$Ü5#Û8'Û>-Ó=.Æ7)Å8.ËA7Ç<5Ì?8ÙEAåKIìIJëCCí?Að@CÜDC×C?ÏB;Â=4¶:.­9*ª;*«<+ª9)¿E8ÔNEÝIEâ?@ë<AùAIÿFPôAGô@IùCOýGTþEUû@Uü>Xÿ@_ÿDfÿCiþDmÿFpÿIwÿK{ÿL|ýK{ÿCvÿGwÿJtúNtþZ|ÿa€ýUvòCdüHkÿRvÞ=\ÎH`Úz†µ}~\F;„r³‹Õ³§óÛÑúíåøóðøøú÷ôýôëüüêÿÿéÿÿëÿÿíÿÿòÿÿ÷ÿÿûÿÿýþÿþúÿýùÿûøÿøöþõöýòöûðôúïóðçêåßáÓÏξ½¹­®¨¢¥œ£™£—¤ªœŸ¥—œ¢”/.,/.,0/-10,21-32.54/650872991;;3==3??5AA7BB8CC9IE<JF;KG;OI9PK8QL8QL8OL;LJ=SPK^]bmlzzz’£€‚©~«|u–rkŒe^}YSoRMdMEZG@PB<HD?F@;?<87;62;7.<8-=9-<8,880991;;1><0?=1@<0?<-A;+F?/H?.K?/M@/O?/P?/Q>/P=.<@)=?*?>,?<-?;0=:3;:5:94<94D95N43[*-o&--8¨3C¶7H§7)¥7&§9(ª?-¨?, 9&Ÿ9#¤;&¥:&«<)³>,¹@/½>/Â<0Å=/Ç=0¹@5¶=2²:,®8*¯9+°:,²:,²:*¶;,¹;-ÄB4ËE9Ç?3¾1'À2(Ê:1Ú3+Ø4*Ù7,Ú8-Ü8.ß7,æ3,ì1,ó0,õ.+õ.)ï0(æ1&Ú4$Ñ6 Ê8Ü/Ú0Ú4$Ý;,Ø</Ð9.Ï<2ÒC;Ã6/Ä70Ê;5ÖE@âMIåLGÞC?Ù;8ÑA9Ï@8Ç>4¾</µ:+°8*®:+°<-¬4&½?3ÏHBÙHEßABæ@DôELÿLUð?Eð?GöBKþHUþHWüBWû?Wý@\ÿBbÿCfÿFmÿIsÿMyÿO|ÿL{þJyÿ@tÿL~ÿQ}ÿJrúLoÿUwÿUuùLjòEcïKfÒ>Vßetû §Í‘]=2aP@©wlÑ¥œöÔËþêãÿôòÿþÿÿüÿùóÿüïÿÿïÿÿðÿÿòÿÿôÿÿ÷þÿûýÿüûÿýùÿüøÿúøÿù÷ÿö÷ÿôøÿôøþó÷öëïìãäÚÔÔÉź¹´³´¬±´©²µª¶¾³°¸­¬´©10,10,0/+0/+10,21,43.54/77/880991;;1==3??5AA7BB8KD:LF:OG:QJ:RK9SL9RM:QK=OKBVTUfdowx††¨»“ÃŽ‘ÆŠÀ‡‚¸{w©rlœid_[~UPnNJaJGXEBM?=B;7696196-86*86)581692891;;/><-?<+C<)D<'I>*J?+L?,M@/M@0M?2M?4L>3M?4K?3F<2B90=909:25<44>57<5>:1H3.\0/{48œ;D¯9E²2Aª<+ª<+«@.¬A/©@-¥<'¥<'©>*§8%­:'µ<+¼=.Á;/Å;.Ê<0Ì<1ÁA6¾>3º:/·7,·7,¸8+¸8+º8+»7+ÇA5ÍC8Å8.Á1&Æ3)Ë7-Í6-à2+ß3)á5+â6,ã5,ç4-ê2*ð/*ö/,ø.*ô/)ì0'ã1#Ù4!Î6É7Ú/Ù/Ù2"Ù5)Ù9-Ô:0Ö?6ØE=ÕF>Í@9Ç<5Ë@9ÖKDÙNGÐF<Å;1Å=1Ä<0À</º;,·9*´:+µ=-¹?2µ9-½=4É@:ÒC?ÛBDãDHîIOöOVí>Cí>EóBJûJTÿJYýFXúCYýB]ù@_ûBdþFjÿJsÿOxÿOzÿLyýIxÿGwÿRÿQ}ÿIqûImÿStÿVtøNiëD^äF]èYkÿ—¢ÿ¶¼î žˆKFd2)©jcÍ–ôÇÁÿãÞÿòðÿüýÿýÿú÷ÿý÷ÿÿöÿÿöÿÿøÿÿùÿÿüÿÿýýÿýúÿüøÿûøÿúøÿø÷ÿ÷øÿõ÷ÿôøÿôøýñóóéêäÜÚÖÑÍÍÊÃÉÉ¿É˾ËÍÀÇÑȾȿ·Á¸84163.52-30+30+41,52-63,85.96/:70<90>;2@=4B?6B?6KC8ME:PF:SJ9TK:UL;SL<RL@QLHZW^kj|~Œº–™Î˜žÚ™žÞ™˜Þ“’Ö‹ŠÌ†„Ã~·xv¨ml–fe‡]ZwVTiMKXDAH><=;:6;8396/267465672880<:-A<)D>(G?(I?&J?)IA,JA0IA4IA6HA9G@:R9<N8;I68A57:65384.93+;12?517+=3'X:0{D=•GCž>?ž46§<*¨=+ª?-ª?-©>,©>*¬?+¯@-«8%²9(¹:+¿:+Ã9,É9.Î:0Ò;2É>7Æ;4Ã81Â8.Â8.Ã9/Â8.Ã6,Ä7-ÑC9Ò?5Ä0&Ã,#Ð7/Ö<4Î4,æ1*æ1*ç2)è3*ê3+í2+ð/*ó.(ø.*÷-)ò/)ì2&ã3$Ø5"Ï7 Ì7Ü5#Ù3#Ø2$Ö2&Õ5)Õ7,Õ;3Ö?8ìYRáRJÓHAÊD;ÉF<ÊJ?ÅG;½?3¼;(¼;(º;*¹:)·:(¸:+¼>0¿A3ÁA6Á<5Å<6ÏA?×EEÝGIãJMèMQëADì?EðCIúJTþN[üJZüF\üF]øA]ùBaýEiÿJpÿNwÿOzÿMxÿKxÿR{ÿR{þOvýOtÿVwÿ]{ÿSoîD^øUjîQd÷dtÿ’žÿ‹“òƒ‰Ç`c­KL²keÏŽˆñ¼¶ÿÞÙÿðìÿúúÿüþýûÿüûÿþûÿÿûÿÿûÿÿüÿÿûýÿûûÿûøÿûøÿüùÿûùÿûúÿøúÿöøÿòõÿðóûìïòææçÝÛßØÒÛ×ÎÝÛÏàÞÑàáÓÚãÞÏØÓÅÎÉ<94;8385052-41*41*52+63,74-85.96/;8/=:1?<3A>5B?6KA7MC7RF8UI9WK;WK;UL=SJASJK[Xcnl‚‚‚¨‘”Çš Þž§ì¡©ò¡¤óž í™›æ•˜ß”•Ö̈‰¿‚ƒ±zz rq‘fd|XWiPN\IGRFCJDBG=?K==G;:?;:8<92A;-D=*F@*F@(GA)GB.ED2CC7BC=AC@>BAG9HH<JG?LGDODGN@JL;II:ID?KA<@2F=.bH9QB‰K<Œ@2Ž;-¨=+©>,©>,ª?+­@,¯@-°?-°=*±8'¶8)½9*Ã9,È8-Ì8.Ò91Õ;3Î;4Í:3Ë81Ë81Ì92Í:2Ì70Ë6/Ó<3Õ>5Ò91Ì2*Ð3*Ù;2Ú<3Ó5,è0(é1)ì1*î1+ñ0+ò/)ô-(ö,(÷-)õ.)ñ0)ê2(â5%Ù6#Ò7!Í8 Õ8%Õ8%Õ5%Ñ4%Ò4(Ô6+Ô7.Ð7/ãNGèXPçZQØRIËH>ÃE9¼B5·?1¹<&¹<&¹<(¸;'¸9(º;*À>0Ä@4ÉD;Æ?9É@:ÑFCÕIHÖHG×IHÛJMìCFêADíDIöKSüQZýN]ûL]üJ`öD^÷DaùFfýIlÿNuÿOxÿOxÿNyðYzðWvóVuüYxÿ]{ÿZuûQkòI`ýWköUgêN\ö^kâKZçSaçSaåQ_¸jfÉ‚~窧ÿÓÑÿëèÿôòÿøùÿÿÿùýÿùüÿûüÿüüþüúûýùøüøõü÷ôÿú÷ÿûøÿüúÿûúÿøøÿòõýîñúëîðââëÝÝäÙÕâÙÒæßÕëçÛñîßóñâêóðÜåâÏØÕ@=6=:3:7074-52+52+52+63,74-74-96/;8/=:1?<3@=4A>5M@7OC7RF8WJ:XK:YL<WK=TICSJM^Xfpmˆ‚„­‘–Íœ£ç£¬ù¥°ÿª±ÿ¦«ü¡§õž¤îŸ£ê ã™›Ø•–Î’’ĉˆ´yyŸji‹`]|XUpSOhPLcMJeKG^FBS@=H?;<?:4B<0A>-C@-CB.BC3AE7>E=<EB;EF9DF:D]@JcHTjR]oXdt\fp]dj`ac`[W]LDgI>€UE’YFL7A+“A+«@,®A-®A-®A-°A.²A/²=+°7&µ7(¼8)Â8+È8-Í6-Ñ7/Õ8/Ù;2Ò73Ñ61Ñ61Ò72Ô94Ô94Õ81Ó6/ÞA:Ö8/Ñ3*Ø7/Þ=5Þ=5Û8/Ù6-ë0'ì0'ï0(ò/)õ.)ø-)ø+(ø+(ø-)ô/)ð1)é4)á5'Ù8&Ó8$Ï8#Í8$Î9%Î7$Ï6&Ð7)Ô8,Ó7+Î4*Ì3+ãNGôd\ë`YÔOFÂB9¸<2´:/·?&¸>&·=&¸;%º9&½9*Á;/Ä>3ÌC9ÊA9ÎE?ÕKHÓLIÎGDÌFEÐJIéFGæCDéDHòMSùRZùR\ùN^úOaõG^õGbøGdûIiÿNrÿRvÿRyÿRyå[uë\xõ`}ü_|øUpõMgùPgÿYnÿ[mÿbsóL]úSdøM_ÿRgüI_ýE]³d`¾tqÚš˜ûÈÅÿåãÿîëÿõôÿÿÿûÿÿùÿÿùÿÿúÿÿüþýýüúýùöýøõÿøõÿùöÿúøÿúùÿööþððøêêõåæìÜÝèÚÙæØÕèÞÕðèÝùóåþûêÿþíòûúâëêÔÝÜA>5@=4?<3=:1;8/96-74+63*52)52)63*74-:70=:3@=6B?8J@6OC7RF8VI9WJ9XK;ZL?[NHTIMXR`gd|}©’Ì—Ÿçž©ù¤°ÿª³ÿª³ÿ¬³ÿ«³þª±ùª®õ¨«î§«êŸ¡Ü™šÒÁ±ur¡he’]Z…XR~YP{YQxVOpOG_E?M?:@?;8@@6>>2@B5@F:>E=:C>9CB<GI?MP:YvKh†[udunx‘|zq‚|`n†]eX[œXU¥WM¥M?A,š:"Ÿ;#©<(«>*®?,±@.³@.´?-¶=,¹;,º6'¿5(Ä6*Ë7-Ñ7-Ö8/Ú91Û81×84Ø95Ù:6Ú85Ø61Ø61Û83Ý:3æC<à=6Ú70ã@7þ[Rÿlcÿ]Tã@7é1'î2)ò1*ô/)õ*&÷'%ø(&ú*(ø-)ó0*í2)ã1%Ú0#Ó1"Ò5$Õ:(É=&É=&Ë=)Ï<*Ñ;,Ò9+Ô8,Ó6-Ú@8Ð71ÜGAôc^ãXQÉB<Å@9·3.´<#¶<$¹<&º<&½:(¿:)Ä<.Ç=2È>4ÌC;ÙPJßXTÓOJÁ@;¿@:ÊKEäFEäFEèJKïPTòQWïNVïKVñL\ùRdøOf÷Ke÷JfüMnÿRsÿRvÿPtê[wêZuðZuú[wÿ]xÿZsÿWnÿViÿctþVgÿ\mÿYlõDXùBXÿMeÿIb·nh­hcËŽ‹èµ²ùÑÏÿêéýïîúù÷øþüøÿÿøÿÿøÿþúþýþþüÿûøþöôþùõÿû÷ÿùöÿöôÿööÿõõöèèç×ØäÔÔÞÐÍãÖÐñçÝüôçÿøèÿüéÿÿí÷ÿÿèñðØáàC?4B>3A=2?;0=90;7.:6-95,73*73*73*83-:5/=82@;5B=7I?5LB6QE7UH8VI8YI9YK>ZMEUKLXP_ebyz¦‰É”œäš§ö ¯ÿ«´ÿ¬µÿ­·ÿ¯·ÿ¯·ÿ¯¶ü¯³ú¯²÷§ªí¢£ä˜˜ØŒŠÉ€~½uq®ie¢b^›cVŽbU‹]TƒWOtNHdFCTBAIAAA;=8@C<DG@BD??A@BCGMNSWW_Vl“gyŸw¥€€¢Ž œ}œ£qŒ¥_w¯XkºTa¾OU¼FD¶=4±9(±:$°<#§8%¨7%©8&­:(°8'²9(µ7(¹5&»3%Â4(Ë7-Ó;0Ù<3Þ=5à;5à;5á>9ß<7ß<7â=9æA=èC=éB<èA;ç@:èA9ä@7Ü8/Õ1'Ø6+ëI>þ\Qô?4î6,ê+#î)#ù,)ÿ./þ,-ø((ú0.õ4/ï7/ç6,Ü4)Ö2&Ó3%Ò5&Å='Ç<'É<(Ì;(Í:(Ï7)Ï6(Ð4(Õ8/Ï5-Õ<6åPJçSOÛLHÏA?º/,¹=%º>&»='½<'¾9(À8(Ã9,Ä:/È>4ËB:ÕOFÜWPÒQKÃD=¿B<ÆKDáIFáIFåMLëSRíTVëPVéNVìOZ÷VføUhùSiúRküRmÿSqÿStÿRsïNoøTvÿ\|ÿ^{ÿ[vÿUoýQgûReüUføQbÿZhÿZjôM^úRcÿWiôI\§ha™\W·€{Ù©¥ïÇÅýáÞùêçýøõøýùøÿÿ÷ÿÿöÿýùÿýÿÿýÿûûÿö÷üùòþùõþùõþöóÿ÷õÿõõøêéêÜÛäÖÓÝÐÊáÔÌïåÙüõåÿùçÿýéÿÿì÷ÿýèñîÙâßEA5EA6C?4A=2?;0=9.<8-;7.84+84+73*83-:5/=82?:4A<6G>5JB7ND8RF6TG6WG7YI:YKBWKKXP[b^wsuž…ŠÂ™Þ—¤ó¬ÿª´û¬¶ý®¸ÿ±¹ÿ²ºÿ´»ÿ³ºÿµ¹ÿ¯²ùª­ô££ë™—àŽŒÕ‚€Éxt¾qm·l`¢i]dY“^V‡VQyNKhEDV@@J76;?=>HBBKABN?BYFJmX_}fnt¤}¬§‚®¬}§´w ¾p—Âc…ÃRpÅE^ÔI\×EPÊ9<¾3,»7(¸;%³; ¯<*¯<*°;)³;*·<,»<-À<-Ä<.Ä6*Ë8.Ô<1Û>5á@8á>7à<3á:2Ü73Ù40Ø3/à93èA;ìE?êA<å<5ã<4Û4,Ø4*Û7-Ô2'Ì, Ö6*èH<÷I>ò@6ï4-ð-)÷+*ý+,ý+,ø*,ñ))ì/+è3,â5.Ü4+Ö2(Ô2'Ô2'Ç:&È;'Ê<(Î;)Ñ;*Ò:,Ô8+Ô8,Ñ4+Ø;4Õ:5Õ<7çONîXYÙEEÅ02¾=(¿<(¿<(¿:'Á9)À8*Á7*Á7,Æ>2ÇA6ÏJAØUKÑRIÄH>¿E:ÃH@ÚIDÙHCÝLGäSPåSSâPQâMQåNWòXdöZhý[pþZrýUoûQlýPnÿRpÿFmÿOvÿZ}ÿ[{ÿVqÿSkÿVkÿ[mûYhúYhü`mö`kî\fñenífmÚT[’cY}ND™lfØ’ß¹¶ñÓÑôàßþöôøú÷÷ÿý÷ÿÿöÿýùÿýÿþÿÿýÿÿ÷ûúúòüùôüùôýøôÿùöÿøöùîìñãâçÙÖÝÐÈÜÒÈîäØýöäÿûèÿýçÿÿè÷ýùêðìÝãßIE9HD8FB6D@4B>2@<1?;0>:/:6-95,95,94.:5/<71>93@;5E>6HA7LD7QE5RE4UF3WG7WI<XMIXNW_Zppp–€†ºŒ•Ö”¢íšªø¨°ø©±ù¬´ü¯·ÿ±¸ÿ²¹ÿ´¸ÿ´¸ÿ®²ü«­ø¥§ôŸžì—–䌋قÏ{zÈxl´pf«h_ _Z’YW†QQwGGc@?Q<6DF9BS>C_@EmDJ€OU•]f¦jrÇe˜ÍkœÏl›Ïf‘Í]…ÎTyÌFgË8UÌ0Hß>PäBMÔ:<Æ7/Ã@.ºB*®<!­5$­5$®5$±6&¶7(¼8)Ã;-È</Ó@6×@5Ú@6Ý?6ß<5Þ:1Ý6.Û4,Ò/(Ò-'Ó.(Ú3-á:4ä;4á81Ý4-Ü5,Ò+"Í)Ù7,âB4Ü?0Ð4%Ê.éF7óI<ýH?ü<9ö,,ó"%÷&)û/2ñ-.ë/-ä2.Þ3,Ù2*×0(Ö/'Ö/)Ð8*Ò9+Ô;-Ö=-Ú>/Û?0Ü@3Ü@3Ò6*èKBåJEÎ50àFFóZ\áHKØ?BÆ=-Ä;+Ã:*Ã:*Ã:*Ã9,Á9+À8,Â<0Â>2ÈF9ÏOBÎPDÄH<¿C7¾D7ÑF?ÑF?ÕJCÛPKÝROÙMLÚKMÜKPëX`ó[hüaqÿauûWoõOgõMgúPkÿJuÿOyÿSwÿRqÿSmþ[pÿcuÿixÿguüaoôbmìelàglÔjjÉjh¼c_dVeH:_Tª‡Í«©åÇÇïÚÙÿóóùøöøþü÷ÿÿ÷ÿÿûÿÿÿþÿÿüÿÿ÷þûüôúûóûúõþûöÿýùÿûøþôòøíéêßÙÞÔËÝÓÇíæÖÿøåÿþèÿÿæÿÿçõúóêïèáæßLI:KH9JG8HD8FB6D@4B>3A=2=9.<8/;7.;60;60<71>93?:4B?8EA8JD8NE4PE1TE0VG4XH9ZMEVMR[Whkl‹~‚²‰“Ð’Ÿå™§ò§­÷©¯ù«±û­³ý°´þ°´þ°´þ¯³ý«®û¨«ø¥§ô ¢ïšœé“•âŠŒÙ„†Ó…É{u½mj­dd _a”X[†QQsNHbUFY_CRlBLEO˜LV¬U]¼[dÅ]fçJuéNxæPuàLn×FcÒ?YÍ5JÊ+?Ú5EçAMéFKÙ><Í>6ÊH8¿J6°B)·>-¸=-º<-½>/Ã?2ÊB4ÐD7ÕE:ÙE9ÚB7Û>5Û:2Ù6-Ù5,Ú3+Ù2*Ô1*×4-Û60Ý90ß80Þ7/Ý6.Ü5,Ö/&Ù5+Ø6)Ï2#Í1"Ò9)Õ>-Ó<+Ö=-æD7÷KAÿD?û56÷)-÷)-ù.2ø67í55â30Ú1,×/,×/,Ù0-Û/-ã80â:1â:1â<0à<0ß=0Ü?0Ú>1Ñ7+ïWLù`XÓ;6Ó;:èOQÞEHèOTÍ=2Ê:/Æ8,Æ8,Æ:-Å;.Ã;-À:.¾:-¾<.ÁB3ÇH9ÇI:ÂD6¾@2¼>0ÊE<ÊE<ÎI@ÕPI×RMÔNKÓKK×LOçZ`ð^hüfrÿhxü]qóOgóMeùQjÿPzÿQxÿQpûSmø\qûhxûjw÷epüfró_kí_kêkrÝsu¿lh¦f\¡l^ujXVI8kXJ–{t¾ŸœßÁÁïÕØþîïûõõúüûúÿÿùÿÿýþÿÿýÿÿûÿÿ÷ÿýÿ÷ûþõûüöÿþùÿÿúÿþúÿûõÿ÷òñèáäÜÑáÙÌðé×ÿúæÿÿæÿÿãÿÿäöùðíðççêáQK=PJ<OI;MG9KE9IC7GA5G@6B;1A:2@91?82?82?82A:4B:7@?:EB;IE9MF6PE1RF0UF1WG7YLCUKLZTbii…|«‰’É“žÞ—¦ë¨«ú©¬û«®ý­°ý®±þ®±þ­°ý­°ý©­÷§«õ¤¨ò¢¦ðŸ£íšžè•™â‘•Þ’’Ú‰‰Ï|€Àrx´nu«lpŸhhŽj_x`x‚WjO_¥OZ½R\ÑR[ÚOVÛHPñ:Pî=QéAPàCLØCIÑ?BË9:Ê45åIJèHHã@AÕ76Î93ÌB8ÅE8º@1ÃE6ÃE6ÅF7ÉE8ÌG8ÑG:ÖH<ÛG;Ö>3Õ;1Ö8/Õ4*Ö3*Ø4+Û4,Ü5-Ú9/Ý<2à=4ß<3Ý90Ü5-Ü5,Ý6-Ò.$Ý;.Ü<.Í1"Å.Í8$Ð=)Ì;&Ë:'Ò9+á:1ó=9ÿ@@ÿ;?ÿ27ô+1ê,.ß+,×+)Ó+(×/.Þ44ä88è:;ó55ò64î73é6/ã7-Ý5*×5(Ñ5&Í5'çPEÿmcÛHAÈ42×CCÓ>BêUYÙB;Ô=6Ì70Æ6-Ç9/Æ<1Ã=1Á=.»9)»<+½@.¿B0¿B0¾?.¼=,»<+ÃC8ÄD9ÈH=ÏPGÒSLÐOIÐOJÔOPç_cîaiûitÿm|ÿdu÷UjõRgýWoÿSxÿUtûWpð_pñoyôy~êmsÞXaïamò`mïaoðs{숊ɂ|¥wjšyhhpYMO:^WGƒqg±•’Ý¿¿ñÔØýéëþôõýûþûÿÿúþÿýþÿÿýÿÿûÿÿöÿüÿøùÿõúýôÿÿúÿÿúÿÿúÿý÷ÿþöùðçíåÚéâÒôïÜÿûåÿþåÿÿãÿÿâøúíòôçîðãSM=RL<QK=OI;MG9KE9JD8IB8E>4D=5B;3A:4@93A:4A96B:7@A;CC;IE:NG7QF2RF.UF/WH5XJ=RHFXR\jh€}§‹’Æ’žÚ–¤å¥¦ù¦§ú©ªý«¬þ¬­ÿ­®þ¬­ý«®û¨¬ö¦ªó¤¨ñ£§î¡¨î §ë¤è›¢æ™žâ’šÛŠ”Ò…Ê‚ŽÂ‚‰·‚©‡yšŽmˆšczªWi¾P]ÓKWäGPí?Hñ9Aî;6é<5âB6ÙH7ÎJ5ÅG1ÂD.Å@/ãUGàG?Ú;7Ø64Ø88Ö:;Ï98Ê66¼=.¾<.¿;.À;,Â8+Ä6*Æ3)È1&Í5*Ð3*Ñ3(Õ2)×3*Ù5,Ý6.Þ7/Ü>3Ý<2Ü;1Û8/Û7.Ú6,Ø4*×3)Õ3&Ó3%Ñ4%Ï6&Ò=)Ñ>*Ê9$À2Æ;(È5%Ó3'ç60ü;<ÿ=@ÿ7=ù27ê-1à..×--Õ0.Ü44ã9:é;=ë;>ý.4ú/3ö01î1/æ1*Þ2(Õ1%Ï3$È2#Ð>/új_ãTLÈ95Ð@@Ë:=ãRUçJEÝB=Ò93Ê5.Æ8.Å;0Â<0¿=-¹<*¼?-½@.¼?-º;(º;(½<)¾=*º>2º>2ÀD8ÈLBÌPFÊNFÌMGÐNLçbcêbføhqÿo{ÿhxøYm÷Ujþ[pÿXsü\tìbqãktç€í‰‡ãyyØ_dñhrÿl|öcsíkwø‘•é¤ŸÀ–Š¥‹z\pWFR<UVFtg^¤ŒˆÜ¾ÀóÔÙùâèÿóøÿúþýþÿüýÿýüÿÿüÿÿúÿÿôÿûÿøøÿõ÷ýóýÿùÿÿúÿýöÿý÷ÿÿöÿùïõïãòìÜúõáÿþçÿþâþÿàÿÿãýþðùúì÷øêUO?TN>RL<PJ<NH:LF:KE9JC9G@6F?7D=5B;5A:4A:4B:7C;8@A<DD<IG;MG7OG2RF.VG0WH3VH;RGCWRYjh~~‚§Œ”Å’žØ–¤ã¡ž÷£ ÷¦£ú©§û©ªýª«ýª«ûª¬ù§«õ¥©ò£§î §ë¢ªë£«ì¢ªë¡©è˜¡ä–¡á”ŸÝ“ŸÙјǒ‘¹™Š«‘m‰£c{´WjÇM\ÚBNë;Eø6>ÿ4:èB*âD)ÙH)ÎN+ÃO(¹L%¶H%»D&ÛWBÚF8Ú;5æ>>íBHé>Fß5>×08ÈF8ÇE7ÈD7ÉA3Ç=0Æ8,Æ3)Ç0%Ê0&Î1(Ó2(Ö3*Ù5,Ù5,Û4,Û4,áC8Û=2Ø7-Ø7-Ü:/Ý9/Ù5+Õ1'Ù7*Ð0"Ì0!Ð9&Ì9%Æ5 Ç9#ÑE.Á:&É:)Õ7+â3.í//÷05þ5;ÿ;BÿIMúGJîDDæ@@ä>>ã9:ã28á.4þ'/û(/ø*.ó-.ë0+ã2*Û5)Ô7(Æ0!¾/óeYê]TÌA<ÓEDÊ;=ÝNRïPMäFCÕ:6Ê5/Æ8.Ä:/À</»<+»>,¼A/½B0º=)·8%º9&¾;)Á>,²8+²8+¸>1ÁG<ÅK@ÄIAÆICÊJGå`aæ^bñdlÿlxÿix÷ZköTiýZoú^tòcuãgqØqrÝ…é”ꋇåruùq{ÿxˆõ`sßXgóŠ‘ý¶´Ö«¢¬•…TnSAS;PTCkaWž†‚Ý¿ÁõÖÛøßåÿóùÿûÿÿþÿüýÿýüÿÿüÿÿúÿÿôÿùÿø÷ÿôöüòüÿøýþøüüôÿýöÿÿöÿþôûõç÷ñáüúåÿþåþýáýþßÿÿãÿÿñýþîüýíXO@XO@WN?VM>TK<SJ;RI:QH9MD5LC4KB3I@1H?0H?0H?0H?0FC<GE9JG8NI6RJ5UJ4UJ4VK9XNDULMXTbii…{~©‰ŽÆ‘™Ú— å¦¢ù¦¡û¢¡þ¡¡ÿŸ£ÿŸ¨ÿ «ÿ¡­ÿŸ«÷ ªï¡©ê§¨ë«¨ï²§õµ¦ù¶¤ú—«ÿ“¨ùŒ£ç£Ö¢¦Ë´ ¹½„“ÆbnÑEPé:Gõ5Bø4>ñ8>æ=@ÙD@ÑHBå;Dà;BÞCGÉ99ÌB@ËD@½/-ÞHIëHKîAGï;Dì8Aé:?â<>Ú<;Ô<9ÏA=É>9ÊC=ÑLCËK@¼>2³7+¹;-¹9,¾8-Å7-Ê3,Ï0,Ô/-Ý11á34çA1à9)Ü1 á1"é8(ê;*ã6%×2Ñ2Ì4Ê5Ç4 É3"Ì3%Ñ3(Ô3)Í.(Ï2+Î6+Ì8*Ë8(Í7&Ð7%Ø6'ß3'é2,ð31ò01ð+2í*2í+4ï-6ú+1÷*/ñ+,î.-ë4.ä8,Ú7(Ð5#Ã.Ä3 çXHèZLÊ<2ÞOGÄ5/ÚIFÝQRÚLKÒDBË<8È80Ç7,È9+Ê;+È;)Å:'À9%½:&»<)º=+¸=+¶=,³9.µ;.¹=1½?1½?1¿@1Â@2ÅA4ïk_õqeêd[ômiùroécbðjiútuÿk|ûivñdmï_hòaføgjõnkîqk÷|wÿ}ƒþYjÿ[wîZpû¬±«°œaŸz]sMIZ6LR6snX£–†Ë·®íÕÓÿîðÿõ÷ÿ÷ûþøüüüþþÿÿþÿÿþÿÿýþÿæÿòàÿëâýêìÿð÷ÿôûÿôþÿóÿþñÿýïÿûîÿùèÿùæÿøãÿùãÿùáþúáýÿþþÿÿþÿÿYPAXO@XO@VM>UL=TK<SJ;RI:NE6MD5LC4KB3JA2JA2JA2JA2FC<GE9JG8OH6RJ5UJ4VK5VK9XNDUMKYUciiƒ{}¦†‹Â•Ô“œß œðŸñžžöžŸû¢þŸ¦ÿ ªÿ¡¬ü ¬ô «íŸ§æ¢¦æ¦£èª¢í« ïªï™ªü—§ô˜£åžžÒ¬šÂºª½r†ÃUbÓCMå;Dð7?ñ6=í8=ã=?ÛAAÕDAä:CÜ8?Û@DË;;ÊC@ÈA=¿41åOPäDFé>Dë:Bè7?ä7;Ü89Õ:8Ð;7ÓF?Ç<5Å<4ÌG>ÌLAÁC7¶;,·9+¹7*½7+Å7-Ë4-Ñ2.Ø3/á53æ66á?0ß<-Þ6)à4&á6%á6%Û4"Ó4Ð:"Ê:"Æ:#Æ;&É<*Í;,Ì8,Ì5*Ö3.Ö5-Ñ7-Î8*É6&Ç4"Ë4!Ð3"Ø2$ß1(å/+ç.,è,-æ,1æ-3ç.4î*,î,-í0.é2.á3*Û5'×7'Ò9'Ó@,»*ÔE5Î?1ÙF>êWPØC?ØBAåWVâRRÛKJÔC>Í=5É9.È9+Ç8(È;)Ä;(Á:'¾;'½>+º?-¹@/¶>-²9.µ;0·=0¹=1º?0½?1ÁB3ÅC6ëi\òmdçb[ðkfõolèbañklûuvÿp€ÿo|öirë^fêY^òadøqnù|vöyuÿx~ùRdÿUríXnö¥«¥¨“X”n[tLN_;QZ;us\ª×úøàÜÿôóÿúûÿúûÿûüüüþúþÿûÿÿúþÿûüþçÿñáÿêáýçéÿìóÿòøÿóýÿòÿÿóÿýïÿýíÿúëÿöåûóàúòÝûõßý÷ßúúøüüúÿÿýZQBYPAYPAWN?VM>UL=TK<TK<QH9PG8OF7MD5MD5MD5MD5MD5GD;JF;MG9PI7SK6VK5VK5VK9WMCVNL\Vbkiy{¢…ˆ»‹‘Í—Ø™—à™˜ä˜™éšœï›Ÿö£ùŸ§ø ©ö ªïž§èœ¤âœ¢àžŸàžáŸ™ãž—ä㖛ݠ–Ү¼ƒ®Ær“ÇZqÇCQ×AJá>Cæ<?è;=æ<?ã=Aá>Cß>Câ;CØ7=Õ?AÏA@ÉD?Â=8Ã96ëWWàBCæ=Bé:Aæ7<Þ58Ö66Ñ96Ì;6ÕHAÅ:3¾5+ÅA5ËK>ÆH:»=/¶8)¹7)¿7+Æ8,Î7.Õ60Þ63æ87ë;;Ó5)Ö6*Ú6*Ü6*Ý5(Ý7)Ú:*Ö?,Ã5¼5¸6 ¸7"»9)¼8+¼4(º0&é=;å>8Þ=5Ô</Ì9)Æ8$È7"Ì7#Ò7%Ö2&Ù.&Ú-'Ü-*Ü.-Û//Û//Þ*)á/+á4.Ý5,Õ3&Ð5#Ð9&Ñ>*ÓB/Â1 æTEÐ<0ÚA;ÞC?èJIòTSèVVçSSãOMÝIEÖC;Ï<2Ê8+Å6&Ä7&À7%¼7$»:'¹<*·>-µ=,²=,°:.±;/²<.µ=/·=.º?0ÀB4ÃE7Ü\Oêg]äaYñlgöpoçabìfgòkoäP`ï^kôhqòemñ`eödgûqqúzwövsÿnuõJ]ÿMjïUmñœ¡ŸžŠPˆcVoEOd=Va?ww]¯¤’âÐÄÿíæÿ÷óÿûøÿýûÿþüûÿüûÿýûÿýùÿû÷ýùãÿëÜþãÚøÞàúáèûåïüèöýëýþîýúëÿúêÿ÷èúñàòê×ðèÕôìÙùñÜýùöÿûøÿþû\PB\PB[OAZN@YM?YM?XL>XL>UI;TH:SG9RF8RF8RF8RF8RF8JF=KG<OI;RK9TL7WL6WL6WL:VL@UMJ\V`jh~yy‚„´ˆÄŽ”Д”Ò”•Õ••Û–˜ã˜›ê˜žìš¢í›£ëœ¥æ˜¢ß–ŸØ“œÕ“™Õ“—×’“ÖÖ†½Ž„¹£~²¸r¤Êe‘ÖTzÙDa×:Kà@HÞBCÞC?ÞC?áAAä?Cè=Fë;Fã?FÖ:>Ó>@ÐFCÅA<¸71Å>:ê[WÝABä?Cç=@ã:=Û89Ó97Î=8ÌA:ÏE;Ã9/»2(À</ÇE7ÄE6½>/¸9(¼8)Â8+É:,Ò:/Ù80á83è;7ì=:Ô3+Ö3,Ù5,Ý4-Þ6-Þ7.Ú:.Ô>/Æ9(Á<)½>-¹>.»=/½=2Á>6Ã>7ó?>î?<æ?7Ù=1Í:*Æ9%Æ;$È<%Ï<(Ï8'Ï2#Ñ1%Ó2(Õ4,Ñ2,Ï0*Ñ3*Ó5*Ñ7+Ï7)Ê7'É8%Ê<(Ì>*Ê<(Î=,ô^PàF<Ò3/Ò.-è?BþUXÿvuÿroÿjgö^YçPIÕA7Ç5(½.Ä8'À9&»8&¹:)¶=,µ=-±>,°<-­<.­<.®=/°<-±;-¶>0¼B3ÁE9ÉMAß`Wâa[ôpløtrå`aä]aå^dÙFVçYeógpôgo÷dlýjpÿstúxvõssûenóCXÿEbðRkë’˜œ—ƒN‚\Ql?Ri?ZhDy|_°ª”èÛËÿôêÿùðÿúóÿýöýÿùûÿúùÿúöÿøòüóîøïÔüÚÎóÒÊëÌÏìÎ×îÒàïØéòÝóöãöõãûõåüõãõìÛíáÑéÝÍíáÑóç×úõïü÷ñþùó\PB\PB[OA[OAZN@YM?YM?YM?WK=VJ<UI;UI;TH:UI;UI;UI;LH=OI=QI<TK:WL8XM7YM7XM;UK?UKI\U]hexut“|~§„ˆ¸ŒÄŽÁŽ‘Æ’Í’“Ô’•Ü“—à”˜á•šÞ•Ü’›ÔŒ•Ì‡‘ƃŒÃ‡Ã}‚ÂzÁ|vš‹q–¦h‘Ä[†ÚKvè>cî7Uí8IçAEßFAØIAØIAÞFCæAGð;Jõ9JãDI×>AÐ@?ÏJE¾?8²3,ÇD<âTPÜDCáACä>@â>?Ü>=Ô@<ÏE;ÌH<Ç=2Á7,½5'½9*¿=-¿=-»<+½<)À;*Ç;,Î<-Õ;/Û8/à70ç83ë95ã:7â64â22å31æ42ä50Û2+Ò1)É2'Ç9-Ä<0¿90¼5/¿52È<;ÒDCó57î66å61Ø5,Ë5&Ã6"Á9#Ã;#É>'Ê9&Ë5$Í5'Ñ9,Ó;0Ò:/Ï8-Í?1É;-Ä8'Ã7&Ã:'Å<)Å='Æ;&Í>-Í:*Ø>2ãB:Ö.+æ::á14å26Ò73Ö;7ÞC>åJEêQIêSHèTHäUGË?0Æ>.¾<,º<-¶>.³@.°?/®?.«=0«=.¬<.¬<.­<,±=.·A3¼D6ÆLAÞbZâc]ðnlôrrå`cå`eæ`gúixûozõltí`hñ^fÿkqÿw{ÿ{|öpqø^hö@Wý>]óOh懠•ƒX†aXuE\vIgwP‚ˆfµ±–éáÌÿùéÿüíÿýñþÿóûÿôøÿöôÿóíûìäòãÝëÜÁëŻ㾺޺¿Þ¼ÆáÀÍâÃØæÌãëÓìîÙôñÞøñßóêÛìàÒèÚÍìÜÏñáÔòçáòçáóèâ[OA[OA[OAZN@ZN@YM?YM?YM?XL>XL>WK=VJ<VJ<WK=WK=XL>PI?QI>SK>UL;XM9YM7YM7XM;WK=ULGYSWc_nmkƒtt–|~§ƒ†³†‰²‡Š·ŠŒ¿‹ÈŽÏŽŽÔÕÓ”Ó‹Ê‚‰¿{‚¶u|²ov­gp«ck©€n~ey­ZvÏMoê?cú2Vÿ0Lû6Gð@CâGBÙLB×MCÝIGèCJõ<Nü8NàFH×CCÌA>ÍID¸<4¯5*ÉI@ÕLF×CAÜ>=Ý:;Û;;Ù?=ÔE=ÌH<ÇI;Á7*Á7*À8(¾9(¼9'º9&½:(À;(Ä;)Ê=,Ò<-×;.Ü8.á6.ä6/è5.ê24è.1ê+0ð/2ö37÷69î45æ21Ø/,×31Ô63Ï42Î/3Ð/5Û5?ä=Gõ,2ñ.2è2/Ü3,Ñ5(É8'Æ;&Æ>(Ä9$Æ8$Ë8&Ò:,Ø?1ÛA5ÚB5ÙA6ÎI8ÇB1¿<*½:&Á<)Ã?*Å<)Ä9&Ì;*Î6)Î0'çB<Ý1/ñ>Aå.2à'-Ò3-Ó4.Ö71Ö92Ò8.Í5*Æ2&À1#ÎE5ÆA2¼=.µ:+±9)®:+ª:,ª:,ª</«=.¬>/«=.«<+¬=,°?/µA4ÉSGàg^ßd_èkiînoæchðjqõoxüp}ýt~õmwîcj÷dlÿqzÿw|ûsuökpöXfûAYÿ:[õKfâ}…©˜†l”ojŠXo‰ZxŠ`—r¶·˜âÜÂúôÞüúåÿÿïûÿïõÿïîÿëçúäÜïÙÐãÍÉÛÅ«Ù«¨Ó¦¨Ñ¥¯Ô©¶Ô®¼Ö±ÇÚºÒßÁàæÌêéÔòíÚòéÚïáÖìÛÑëØÑíÚÓèÛÒæÙÐåØÏZN>ZN>ZN>ZN>YM=YM=YM=YM=XL<XL<WK;WK;WK;XL<XL<YM=RJ?TJ@UL=XL<YN:ZN8ZN8ZM:YM?VKEXOP^Xbd_sifƒqp’yyŸ|¢~€§‚°ƒ„¼††Äˆ‡Ë‰ˆÎ‰ˆÌˆˆÈƒ„½{~µux­or§jm¤eg acž…ac“X^±O\×H\ó=Vÿ1Kÿ/Dÿ7Bö>@çE@ÝJBÚKCÞHGéBLó<Nú8PØDDÕEDÈA=ÈIB³:/°7,ÌPFÉB<Î=8Ñ64Ï10Ð51Ó>8ÏE;ÆF9¿E6Á8(Ã:*Â:*¿:'½8%½:&¿:'Á:&Ä9&Ë:)Ò;*Ù9+Ý7+á5+ä3+ç4-í)-ò)/ù,3ÿ.4ÿ07ÿ18ÿ28ý58ú7;õ8<ò9?ò9Aô9D÷6Gû6Hü5Jø)1õ,2î02ã4/Ø7-Ï9*Í<+Ì=,È7&Ï9*Ø</Þ>2á?4â>4â?6â?6ÑN<ÍH7ÇB1Â=,¿:'Á:'Å9(È9)Ç3%Ó9/á@8ëD>Þ0/á-.ì38í38×4-×6.Ù80Ø:1Õ;1Ó;0Î:.Ê:/ÖL?ÌF:¿?2´9*¯7)«7*©8*¨8*ª<-¬>/­?0­=/«<+«<+­<,¯>0ÀKAÚc[Ýc^èkiðosëhnõrzüvïer÷oyør{öjsÿlvÿvÿu}öioõfl÷RbÿA[ÿ6YôFaÝt{²›‰€¤~z›f{—f€–h‘u­±ŽÌË­áàÄéëÓî÷ÜåóÙÙíÑÎçÉÅÞÀ¼Õ·´Ë®®Å¨•Ã’”‘˜Ä“¡È™§Ë¬Ë¡µÎ§ÁÒ®ÎÙ»ÙÝÄåãÎìåÕïáÖëÚÒçÒÍäÏÊÞÐÇÚÌÃÕǾ[N>ZM=ZM=ZM=ZM=ZM=YL<YL<ZM=YL<YL<XK;XK;YL<ZM=ZM=TJ@TJ>XL>YN<ZM:ZN8ZN8ZM:[O?WMDWMKZSZ^Xfb]sjfspvw–xxœ|{§~µ„¿‡Çˆ‚ʉƒÉ‚}¿~zµzu­vq§vo¥sl¢og ldŸ‹PH•JE²FF×EOò@Lÿ7Dÿ3@ÿ8>ø<=íA=äE?àGBãDHèAKï=Mô:OÒBAÑGDÅA<ÂH=¯;.°</ÐVKÃ>5É83È.,Ç)&É.*Í:3ÌC9ÂD6¸@0Ã:(Ã<)Ã<)Á:'À;(Á=(Â;'Ã8%Ä6"Ê7%Ô8)Ù7*Ý5(á3(å3)è3*û03ÿ58ÿ7<ÿ38ÿ,2ÿ&-ÿ'-ÿ)1ÿ,3ù'0ô%/ú'6ÿ+=ÿ(Aÿ:ú2ö".ô&0î+1æ0/Ú1,Ò4+Ï5)Ð6*Ô6+Ü90æ>5ì>7ë:4é61è50é61ØL?×K<ÒF7Ê>/Ä6(Â3%È6)Í9-Í5*Ô6-æC<à74à21Ò ì89ê35Ó2(Ô3)Ò4)Ñ5)Ï5+Ì5*È5+Å7+ãYNØRFÊH;¾@4¶</´;0³=1³=1®:-°</±=0±=.­<,«:*«:*¬;-±<2ÐYQÜb]ìppôvyîltõrzör}ÿy…ÿ‰ýz‚òiqøeoÿp|ÿt}ýntó`j÷Naÿ@^ÿ3WôA^Ûnt¹ž‹Ž®‡~¡i}›g—hœq¡©‚µ¹–ÉÌ­ÕܽÌÙ»ÁÔ´²Ì©¥ÃŸž¼˜˜¶–²Œ”®‰…¶~†µ~ºƒ•À‹›Ã¡Ã‘¨Å—²ÉŸ¾ÎªÉÒµÚÚÂæßÍêÞÒéÖÐáÌÉÝÅÃÓºνµÈ·¯ZM=ZM=ZM=ZM=ZM=ZM=ZM=ZM=XK;XK;XK;YL<YL<ZM=ZM=ZM=YMAYM?ZM=[N=[N;\O<\P:\O<ZM=YMAWLHXNOXQX]Ub`Yka\pifƒokŽsp›vq§{u³ƒ}Ê‚ËŠƒÉˆŠ~¼‡z²ƒr¨†r§Œu­…l¥z^˜™G9¡C7´A:ÍC@á?=ì89ø:<ÿBCú<<ó=<ì>=ê@AéBIêCMëANê>NÌA<Å@9¾?6µ?3®=/±=0¿E8ÒMDÇ61Ô;6Ï1.Í2.ÖC<Ç?3´6'·?.½6#Á:'Ã<)Â;'À9%Á:&Ã:'Ç:&Ë:'Ð9(Ô7(Ö3$Ú."à/%ì7.ô=5ø72ù30ú.-û)(ý%&ÿ#%ÿ"'ÿ"'ÿ$*ù )ú!,ÿ%7ÿ'<ÿ;ÿ4ÿ3ý)7ð".ç"+ä*-Ý--Ó+(Ò-)Ü41â62é54ï64ó55ó12ñ-.ï+,í++Õ<4Ò91Ñ:1ëTK»"Ä+#ßF>È.&Ì/(Þ<7èE@â:7Ø/,Û.*ã41é:7Ý?3×;.Ï5)Ë3&Ì5*Î:.Ë;0Æ8.ìbWàZOÈD8¹6,º:/·9-¯3)²6,¯1%°2&®2&®4'¯7'²:,²<.³=/°:.ºC;Ö\Wìppñsvøv~ûyƒõq|ÿ{„ûx€øu}üs{ÿr~ÿq}ÿlxûisøbmôI\ÿ=\ÿ8[ñ:VÖek²–‡¦}~¡i|šd}•c‡—j”ŸuŸ¥ ¨ƒœ¨„’£Š£|€Ÿvx›qw›o|r t„£w¯uƒ³y‰¹½„“¾†—¾‡œ¾‹¢½§¼“¯½š¾Â§Ï̹ßÓÇãÒËÜÇÄÖ¾¾Ê»´Á²«¹ª£ZM<ZM<ZM<ZM<ZM<ZM<ZM<ZM<XK:XK:XK:YL;YL;ZM<ZM<ZM<ZL?ZL?ZM=]M=]N;^O<^O<\O<]P?[OA[NFYNJZPQ\SX_U^_Wbb\xibƒng‘qjžvp®€y½‡€ÆŠ€Å€Ã~ºt­Œn¢—q¤¡uªši ŒY‘©;.¨7)°6)À>1ÐB6Ü?6è?8ôA=ö=;ø:<÷:@ô<Dï?IèAIâ@KÜ?HÃ>7½=4¶<1°</ª:,¬;+¼B5ÐJAÚG@ÜA=Õ63Ò41Õ@9ÍC8¹:+¯6%¿8%Â;(Ä=*Ä=*Ä;(Ä;(Ç:(È:&Ï9(Ñ5&Ô2%Ú2%ã5*ê8.ï80ñ91ä2&æ0%ê.#ñ,$ö+%û+'ÿ,+ÿ-,þ)-ú%+û#.ÿ&5ÿ$9ÿ5ÿ1ÿ 0ð .ù-9ö2<å*1Û(,Ü.0Þ02Ý*.ò9>õ6;ú3:û06ú-2û.3ý14þ36×4/Ü:5Ù72æDAæDAÎ/+Ñ2.Á"Ö41á?<èE@à=8Ø3-Ù2,Ý60à91Ò<-Ï9*É5'È4&Ê8+Ë;0Ê<2Æ9/ícYáXNÉ@8¼3+À:1Á;2½7.À:1Á4+¾4*½4*»5*¸6(´6(²7(°6)´;0»B9ÓYTèllïqtöw~þ|†øv€ÿ|„ûyøv~þuÿsÿo}ÿiwùeqùanöI]ÿ<\ÿ9\ô=YÕdh«y€œsu˜`t’\w]cŠ•k—p‹•p…”mp†_lˆ_fŠ\g^j_q•ey›i}l€­r„²tŠ¸z»}½‘½‚–½„›»‰›µ†¡³­¶—¾½¨ÏÆ·ØÇ¿ÖÁ¾ÒººÅ·¶º¬«²¤£\L<\L<\L<\L<\L<\L<\L<\L<ZJ:ZJ:ZJ:[K;[K;\L<\L<\L<\L?\L=\L=]M=]N;^O<^O<^O<_RA^QA\PD[NFZOK[PN]QS]ST_RlcXvh]…jb“sk¦}w·†}Àˆ}¿—…Ù€¹›v©ŸoŸ¯t¢»v¥µi˜¤U…Ä92¾5-¹5)½>/ÇE5ÐG7ÚC8ä?9ó=<ú9>ü9Aú:Eò>GæAH×@EÏ@B¿<4¸90±8-«:*¨9(«:*»?3ÏF<ÙD>Ø96Ú65Ü:7ÜC=ÝOEÍI<²4%À9&Á:'Ã<)Æ=+Ç>,È=*É:)Ì9)Ï8'Ï2#Ó/#ß4*î=3ô?6ñ91í2+Ú7&Ý6&à3#å/"é-"î+%ñ,&ò+(ó++ð(+ò'-ú(5þ%8ÿ5þ2ÿ3ð(5ô.;ô4?ò8Cï;Dð<Eé5>å+6ñ1<ô/9ù-8ù+5ù,3ø-1ö.1ö01Ù1.ä<9Û64à;9ÿljæBAÒ.-Ð.,Û97á?<àA=Û<6Õ7.Ô6+Ô6+Ó5*Å8&Ã6%Ã6%Ä8)Ç;.Æ<1Æ<2Å;1ëaWáTMÉ<3¿0(Ë;3Ï?6Î;3Ñ>6Ú=8×<7Ô=4Ï<2É;/Â:.»7*¶6)·;/»@8ÏTMãgeíorøz~ÿˆý{…ý{ƒùzúx€ÿwÿsÿl}ÿftøbnø]kõG^ÿ:Zÿ9\÷AZÐ_c›gkŠ^e†Oh…Ol„Rt…X{ˆ\}ˆ^x„\q‚X`yO_P`†UeYm•`uœg{ j€£m­p…±tˆ¶v‹¹y‹¹yŒºz‘º~”º‘±•¬€›©†©­’ºµ¢Ç¹°Ë¸²Ì´²¶­®ª¡¢ —˜[K;[K;[K;[K;[K;[K;[K;[K;ZJ:ZJ:ZJ:[K;[K;\L<\L<\L<]K=]K=]L<^M=^M;^O<^O<^O<`P@^Q@]P@\NC\NE[NF\OI]PJ`NdcSmfX{g^‰ohœzu¯„|¸†{µ™…º¥…´¯€ªºy¡ÈxŸÓušÍc‹¾OyêAFà@@ÕA=ÌF;ÈJ;ÉJ;ÐF9ÜB:î@?ø;Aþ:Dü<Gñ@HâAFÑAAÅ?<¾?6¶<1¯9+ª;*©:)­9*º?0ÎD:Õ<7Ö21â:9æA?áD?çTLÞVH½;+Á9)¾6&¿8%Ä;)É=,Ê=,Ë9*Î8)Ï3&Ò2&Ù3'å9/ñ>7õ>8ð50è-&×:)Ú8)Ý5(à2'æ/'é.'é,(é,*ç+*å(,è)1ï+7õ';ö";ú=ÿ"A÷8Gä(6ç/;ÿP\ÿ`lÿP\ò<Ió9Gé)8ï)8ô,9õ0:ô17ì01â*(Ü&#Õ2-Ú64Õ1/æBAÿrp÷TUÝ==æFFÛ=:Ú<9Õ:5Ò80Ñ7-Ï7*Ì4&É1#º7#¹6"»8&¿;,À</¿9.À:/Å<4åXQÜMGÊ70Ç/*×<7ÞA:Ú;5Þ=5ë<9ê=9æ?9â?8Ù?5Ð<0Ç;.¿9-»9,»<3ËOGàc_ìnoú|ÿƒŠý~…úx€øy€ùzÿx‚ÿt‚ÿl}ÿdtö_nóXhõE\ÿ6Vÿ7ZùC\ÇYZ‡mRWxIXv@\yCdzIl}PtVw‚XrXoWl‡Zl^o•buh{¤l¨o„ªq‡ªr„­q‡±rˆ´u‰·v‰·v‰·vŠ¸w¹z‘´|«z’¤|¤…­«–¾²¦È·¯Ë¶±¯¬³¡ž¥•’™[K;[K;[K;[K;[K;[K;[K;[K;ZJ:ZJ:ZJ:[K;[K;\L<\L<\L<^K=^K<]L<^M=^M;_N<^O<^O<^O<^N>^N>^N?^N?_OB`PC`OEbM\cPdcUodZle‘vr¤~w«‚v¦“~©¬†«Â‰©ÐžÛw“âk‡ÝXuÓFfÿ=MüDPðJNÞJHÌG>ÇG<ÍG<ÙD>èBBó>Cù>Gø@HðCIÞDDÍB=À?9½A5µ=/®:+ª;*©:)­9*º<.Ì?6áFBä<;ïABíAAÞ:8ãJBæXLÔL>È@0À8(»3#Á8(È<-É:*Ë7)Ð8+Î0%×3)à8/é;4ï:3î50ë0+è+'Û4,ß4-ä2.ë31ð43õ45ö58õ6;é/4ç.6ê0=î2Cò.Fõ*Gý,Lÿ1Tð<Hå3?ð@Mÿ_lÿlzÿWfõCSõ>Pî3Dî2Aî3>ê5<æ89Ü73Ð3*Ç/$Ì2*È-(Ñ61óXT÷\ZóXVÜ@AâHHÜB@Õ<7Î70Í6-Ï8-Í9+Ê7'Æ3!³:%²9$´;(¸=-¹;-¶6)»8.Ä>5ÛNGÙEAÎ50Ð1-á>9è?:ã81ä71ð/0ï11ì42é73â92Ø:/Ð9.È:.¾6*º7-ÈIBÜ_Yënlû}€ÿ…‰ýƒõv}õx~ùzÿx‚ÿsÿj{ÿdtö_nðUeôF]ÿ6Vÿ7ZúF_ÀTRvaBJo<Us?[vCdzIn~QtVy„Zyˆ_wŒay”gv›hy¡l|§o«p„«r…«p†ªm‡­rˆ°r‰³tˆµt‡¶r…·r‡¹tŠ¸w·{Œ­x¤x™¤‚«­•À¹§ÎÀµÖüººÆªª¶œœ¨ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8[L9[L9\M:\M:\M:^K<^K<^K<_L=^M;_N<^O<^O<]N;]N;^O<_P=_P=aP@bQAbQAeKTdN[aPc`Usga…rp˜xvž|r—Žv–®ƒžÌ‹ŸÝ‚“çr‚ïbsìObå>Rÿ-Hÿ:QþCTéDKÒ@AËA>ÎDAÖEBãEFêAFï@EïBFçDEÚEAÉC:¿?4º@3±;-©8(¨9(©:)®9(º:-Ë;3èIEë??î;>æ68Û2/ÞA:îZPõg[ÙQCÉA3¾4'À6)Ç9+Ê8+Í6+Ò8,Ñ0&Ü5-æ;4ë:4ê40è/,ê-+í-,ó4;õ3;ø3<þ2=ÿ1>þ0=ý0?ù0@ô1Añ2Dò5Kó5Oó0Põ-Qþ1Xÿ:dá7B÷O\ÿanÿ`nþXfùQbòEXé8Jó@Sê:GÝ2;Ò/2È3-Á9-º=+µ>(Æ9/¿2(ÙJBúkcÝLGáPMÍ<9Ï;9àLJÔ@<Ê7/Ê7-Î</Í<+Ë:'Ê9&®>(«;%­=)²?-±9)®4'º:1ÊC=ÕHAØC?Ô72×2.ç;7ì:6è2.ë2-÷)+÷+,ô.-ð3/é61â:1Ú<1Ò>2Â6)º4)ÅB:×XRçjhú|}ÿ†‰þ€„õv}öyú{‚ÿx„ÿqÿh{ýbtõ^oîSe÷I`ÿ9Xÿ9[ûI_ºQNmZ:Em8ZvCa|InSv†Y|‡]Šbg‚—lœl{ m|¤o}¨p~ªo‚ªnƒ©l…©lˆ«qˆ®qˆ°r†³r„³oƒµn„¸p‡¹t‹µv‰¬tŒ¦wš¨„°´™ÈïØ̾àÏŽÃÓ«±Á›¡±ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8[L9[L9\M:\M:\M:`J<`J<^K<_L=^M;_N<_N<^O<^O<_P;_P;aP<aP<aP<aP<bP<fLOdMUaO]_Vkgb€sr’yx˜}t‘ŽvŽ­’Ά’á}…ñowýbjýOXö>Hÿ$Hÿ0Qÿ;Uñ<MÞ<GÖAEÓEDÔBCÜCEàBCäADäABÞDBÔC>ÇA6¾>1·?1¯9+¨7'¨:)¬=*²=,À>1Ñ>7ß=:ç79æ/3ã/0á32Û94åNEülaïj[ÙQCÆ</Æ:-È:.É7*Í6+Õ8/Õ4,Þ7/æ93é62é1/ê.,î1/ó32ÿ0Eÿ/Eÿ-Dÿ*Bÿ%@ÿ"=þ:ø:÷'Aó+Gô/Mó0Rò+Rô)Vÿ1bÿ=nêHSÿ`mÿiu÷VeíKZñL]êCUÚ1DéARÝ7CÉ,3¹)(®0$¨9&£A&ŸD'¼=.º;,ÜZMá\SÍG>ÍD>Á61É;7ãUQÕF@É91È8-É:,È9(È:&É;%ªB)¦<&¦<&¬=*©8(¬3(¼=4ÒMFÕGCÝEBÛ96Ü30é73í41ì/+ó2-ÿ)/ÿ*/ý--ö0/ï4/è7/ß;1Ø>2É:,¼4(À;2ÏNHßb^÷yzÿˆŠÿ„†ùzú}ƒü}„ÿx„ÿn~ÿdwù^pò[léN`öHaÿ8Wÿ7YøH]²JGcS1Al6ZtDf~NuˆZŽc…f‡’jˆ—n‰žs‡¤t‚§t§r}¨p}©n©mƒ©l…©k†§n‡ªp†¬o…¯o°l³k‚¶n…·p‡´s‡­rŒ¨wœ¬…²¹šÈƱ×οÞÐÅ·¿Ò¤¬¿’š­ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8[L9[L9\M:\M:\M:`J<`J<^K<_L=^M=_N<_N<^O<`Q>aR=bQ=bQ=bR;bP:aO9`N8jNMgNRbQ[cWkjfuv’}}™y‘’{¯ŒËƒ‡ã{|ùqsÿgjÿTXÿAGÿ#Mÿ.Tÿ7Wù9Pé>NàEM×EHÑ?B×BDÚACÜ@AÛA?ØC?ÏB9Å?4¿=0·?1¯9+©8(«=,°A.·B1ÇC7×D=Ú64å57ã,0ç02è88Ó0+Ï5-éUKÿznæ^RÎD7É=0Ê<0É6,Í6+Ö90Ú70ß82ä71ç40é1/í10ò53ø87ÿ=ÿ>ÿ>ÿ>ÿ=ÿ=ÿ<ü=ò:ï@ð$Ið&Nï$Qó%Uÿ0eÿ=sÿgrþalôXeîR_ïQ`îM]â?RÖ1Bß:JÑ4?¿-0±-(¦5'ž>&–C%E"¯7&²9(ÒWHº<0ÁA8º7/º3/ÍC@ãXSÕHAÈ91Ä6*Å6&Ä5$Ä6"Ç9#¦B*¢<%£:%§<*¦7&©3'½A7ØSLØIEáGEÞ:8ß2.ê41î1-ï.)ù4.ÿ'-ÿ',ÿ)+ö*)í-(ä1*Ü5,Õ9-Ð>1½3(¼7.ÉHBÙ\Xôwuÿ‰‰ÿ‡‰ý~…ý€†þ†ÿx„ÿl|ý`sõZlïXiãHZóE^û4Sÿ3RóCX«E@\L*?j4Uo?d|LwŠ\†“h‹–l˜pŽtŽ£xŽ«{†«x©t|¨mz¦i}¥g¥h‚¦h…¤k…¦m„ªm‚¬l®j}±i€´lƒ·oˆ·sˆ°tŽ¬xœ®„²¹šÄ«ÐǶÖÈ»²½Óž©¿‹–¬]K7]K7]K7]K7]K7]K7]K7]K7^L8^L8^L8^L8^L8^L8^L8^L8\J>]K?]M@\L=ZM=ZO=\Q?^SA_T@_R?^Q@aQAcRBdQCdNAcM@pKEjKIfOUgZknl„v|ž}†¯ƒŠ´Š…®Ÿ‰­¸Š¦Ìƒ”Þ{~îumøl]ûfRðN[æDQä>LéANïCQí>Ké:Gê<Få:Bá;?Û;;Ö<:Ï?7È>4Á;/¼8+ :$¬C0¬=,®6(Â?5ÑD=Ð;5Ó61Û83Ü71Ý6-Ý7)Ü9(Ý='Ù;"Õ7à74õPLõXOÛD9Ç8(Ì?.ÒC3Ñ;-Ò4+ðGDâ.1ï4;ö4?ï+9ÿ@Qí(9þ&+ÿ*-ÿ*-÷"û#$ÿ()þ((òð"ú+1ì )î&1ò.<ç$5ÿYnë+@ÿ`jÿ^iÿYcûT[öPTìHIÛ@;Ê:1ÅA2½F2®D.Ÿ;$”5–7#˜;)œ=+§81«83ÁEC¿;9¾23Æ45È44×CAÜKFÚKEÑD;È:0Ä4+È4*Ì3+Ì2*·?1³9,®.#­'¶,"Æ7/ÓC:ÚG=äPFßE;Ù80Ü1*ç/-ô01ý/3ÿ.4ò14ó12ô01ó/0ó0.î1+é4+à8-Ö=/¾2#¾?0·>3Õ`Wçtqÿù…†ôŠŒþ…Œÿwˆÿe}ÿ[wÿXuÿSoûJgûDcö7Y÷9]ç>[Ú]k„C=PI/F`;Xw<e‡Ku—[zcz e|¤h¨l€©o¨l~§k~¦j}¥g}£f£e£e€¢e}¥p~§o«n¬k~­g¯e±e„²g‡µjŠµpŠ²s°z–¶‡£¿™«Ä¤¬Å§¦±µ˜œz…‰]K7]K7]K7]K7]K7]K7]K7]K7^L8^L8^L8^L8^L8^L8^L8^L8\J<^L>^N?^N?[N>ZO=\Q?^SA_TB]QA]P@_OB`NBbPFcOFcOFkLGjMOgS\h_rnoŽw~ª~ˆ»…ŠÁ›–Ì¢Œ»«£»wŽÕx‚í|x÷uhöjYüZgóN\ìFRòHUöJVõERï?Jë;Eä9Aà:>Ú::Õ=:Î?7Ç>4À</º;,¥>+ª?-¨9(²:,ÁA6Å<4Ç7/Õ<7Ó40×4-Ø4*Ø4(Ú7&Û:&Û;%Ù;"Þ52æA;ëMDàI>Ð>/Ç8(Ê8)Ó;.Ý<2öJFæ/1ò5<ø6Aò.<ÿ?Pì'8ö$'÷%(û),ý+,ü*+ù'(ø((ø*,ð$'í%(ê%,þ:DÚ'ð4CüATÞ#6ÿluÿblþZcüW]õOSæBCÙ;8Ñ>6¾8,¾E4¹H6¨?,–1)Ž()ž-'°:6ÑTRÎHGÃ54Æ45Ò<=ëWUØGBÖGAÏB9Ç9/Ä4+Ê6,Ð7/Ò5.Â?5À:1À5.Â3+É4.Ð83Ø?9ÞE=ãJBÞA8Ù6/Ü1*æ0-ó11ü03ÿ.3ò14ó12ô01õ/0ó0.î1+é4+à8-×>0¿3$¼=.¶=2Ó^Uévsÿù…†õ‡Šþ‚Šÿu…ÿe|ÿ[vÿWtÿQoþIhúAaö8Zö=_æF`ÅQ\{?7NH.Ga>Yx=e‡Ks•Yx›awbz¢f|¥i}¦j|¥i|¥i|¤h{£e{¡d}¡c}¡c¡d{¤l}¦n}©l}ªi}ªe}­c¯c‚±cƒ±f‡²k‡¯pˆ«u‹«|¬„©‰‹¤†z…‡doqR]_]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8^K<_N>aP@`P@]P?[O?[O?[RC[QE[QE\OF\OG_PKcQOfTRhTUiTQiVXi]kmi„sv¡zƒ¼ŠÍ‰Ö—‘ÙŸ‹Êª‚¶º}ŸÒ‘烅ð~tïveÿ`k÷S\íGQðFQöHR÷EQô@Kî=Gå6=à7:Ù99Ô<7Í@7ÅA4½?0¸=-©@-¨=+ª;*¸B4ÅI?À;2»0)Ì92Í6/Ò5.Õ7,Ù7*Ù7(Ú7$Ü:%Þ<'ß3/Û4.âA9éOCÜH:Ç6%Æ3#Ù@2á>5õHDé13ó4;ú6@ø4@ÿES÷3Añ),í"&î#&û03÷--ï''í%%÷12ì(*ø7:è+1â)1ë3?ÿR^ï=KÿYiúafñV\îOTðMRêEIÞ:;Õ74Ô?9À6,¿?2»C5²>1ª8-¥3)Ÿ,%œ' ˜% §0*ÆFCÂ::¼,,È44×ABô^]Ò>:ÒC;ÐA9Ë=3Ì9/Ô=4Ú@8Ý@9ÙA>×=;Ü>=ãA?ã?>à;9ã?=ëIDàA;Û=4Ø5,Û2+å2-ð31÷12ú/2ó04ô02ö01õ/0õ/.ð0+é4+à8-Ø?1À4%¸9*´;0Ð[Rízwÿ’’û‡ˆøƒ‹ü~‰ÿr‚ÿcyÿZtÿTqÿMmÿFgü=_ø:^ôBbåQg§?Fn<1OK2KcA[z?h‡Lr“Zu˜^tš_wŸc{£gz£gy¢fy¢fy¡cx byŸb{Ÿa| b}Ÿby¢j{¤j{§h{¨e{©azª^|­^®`…³hŠµnŠ²s‰¬t†¦w‚žvy“pn‡gVb`COM4@>^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^L6`N:aP<`Q>]P?ZN>YPAXPEXOH[RM_UTcWYeX_iYcl\fm]hlbclemolrtšx¶~†Ï„ŒßŠŽç‹‡ÞŠÙ¬‰É³­½y’Í{ßyê†vÿnrÿbgùU\öLUöFPöBMó>Gð;Dæ5;á7:Û97Ò=7ËA6ÄB4»B1·?.©;,­=/¯>0»G:ËRGÇH?¹6.º1)È91Í81Ó;0Ú<0Û;-Ù6%Ü6&à9'á40Û2-à=4ëOCãK=Ñ;,Ð8*àB6Þ7.ð>:é/0ò16÷4<ü8BÿNZÿKWý>Cò38â$&í/1ê,,ð22ç+*é0.ò::Ñæ37Ü-2ç9BïENÿYcôLYÔ?AÚADßCFá>CÞ9=Ü89Ø88Ó:5É83Â91½:2ÀA:ÍNHÖVSÐNNÆAB¯82µ:5ÏKGØNLãQRïYZêRQñYXÉ51Î>6ÑC9Ð@7Ó?5ÚA9àC<àA;í<Bê7=í8?õ>Cñ:?é58í=?øLJà93Ú70Ø4+Ü3,ã5.ì30ò21ô01ô04ô02ö01ö.0õ/.ñ0+ê3+à8-Ù@2Â6'µ6'²9.ÉWMî}yÿ“’û‰‰þ€‹ý{‡üoücwÿXqÿNmÿFhÿ?cþ8\ù=`íIdÙYhˆ25d<0SQ8TgG`}Ej‰Ps’Yt•\u˜^wby¡ey¢fw dv awŸavž`xŸ`zž`{Ÿa| by¢hz£g|¦fz§bz¨_z¨]|«]~­_†²eŠµmŒ³rŠ­s†¦u€œstŽii_RaZDSL8G@^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;_K2_M5aO9_P;\O>ZN@XPEXQKYQO^X\g`hnfsshysg{sg}tfnnzor…rw•v|¬y‚Ã~†×ƒŠåˆ‹ì’뛌ߞƒÆžt¢¡kƒ®mq¾vjÈ{iþllÿklÿfiÿ]`üQWöEMð;Bí5=è59ã68Ý98Õ>7ÎA7ÅC5¼C0¶A-¬8+´@3¯;.°;1ÇRHÓ]SÈNCº;2¾90Á7,Ì9/Ö>1Ý=1Ú6*Ü4'á7(á2-ã60ä=5åE9âF9ÜC3ÝA2á?2Û0&ì62ì0/ð-1ò-4ú7?ÿOYÿZdÿ[_ÿOSá.1ã03ß--÷EEè66Ü,,Û-.ë>@Û25Ù37ÿchÞ=CÊ*2Ê-4¾()Ô;=àAEÚ7:Ù37á8;Ü89Î..Ì43Í<9ÓHEÝSSì`c÷hnõdkî[e¿B<ÆE@å^[÷igÿopÿjjåKK×=;É4.Ñ>7ÕE<ÖC;Ó?5Ö<4Ø93Ø7/ö0=ò,9ó+6õ-8ò*5î+3õ8<þJKà3/Û4.Ø4+Ü4+â5.ê40ï4/ð3/ö/4ö/2÷/1ø-0ö..ñ0+ê3+â7-Û?2Å9*²3$±8-ÃNEî}yÿ’‘üŠŠÿ}‹ÿw…ùl|öatùUmÿHgÿ>bÿ8_þ4\õ@aâMcÂWap/+\A0XX>]lMbIl‰St’\u–_v™_xžcy¡ex buŸ`uŸ`u_vž_wž_zž`{Ÿa| by£d{¥f|¦dz¨`y§^y¨Z{ªZ}¬\€¬_…¯g‡®m‡ªp…¥sƒ t{•nrŠffvi[k^RbU_N<_N<_N<_N<_N<_N<_N<_N<_N<_N<_N<_N<_N<_N<_N<_N<`L1aM2`N6^O:[N>YOE[RMZTT_ZahbprmzuŒ{t“yr“zp“yo”ov’pyšt}¨w€·zƒÈ~…Õƒ‰á‹‹å”ã—ŠÒ™„¼¡ƒ§ª„“«~yŸl[ŽX>ÈH?ÕPIäVRìVUòRRôJMî=Cè38ì7<ç9;à;9Ø=8ÑA8ÈC4¿B0¹@-³9.ºA6«5+£.$¼J?Øh\×eZÊVI·=2¸6)¾4)Î:0Ù;0Ü5,ß3)ä6+á/+å61ã;2Ü:/Ü?0ãF7ãC3ß9+ß1&ê3-ð31ï-.î*.ô17ÿEJÿS[ÿ_dÿ\aâ9<â9<Õ+.ôJKâ89×//Û55Ì()Ë(+÷YZÛ?BÔ9=Ð7:· %Ã))Û=>åBEÝ49Ù,2Þ17Ú/5Í(,Ò37äKNöaeûhnùcl÷_kû_mý_nÒNIÔOJè]ZêVTçMMãGHÑ32Î31ÙA<àKDãPHßKAØA8×:3×50Õ2+ÿ,;þ+:ü(7ø%4÷'4û/:ÿ=CÿILà1.Ü3,Û4,Ü5,á4-ç4-ì5/ï4/ö/4÷/2ù.1ù-0ø..ò/+ë3+â7-Ù=0É;-³1#°7,¹D;ìyvÿþŠ‹ÿyŠþqõhxó`söTlüCcÿ7^ÿ3_ÿ3\óDcÒM^ JMb6+TE0W[@^kMc~Kk‡Tt‘[w•_x™`{ždz cvž`s›]s›\s›\tœ]v^wž_{Ÿa| by¡bz¤b|§b{¦_x¦[x§Yz©Y{ªZ~ª]ƒ­e…¬i†ªm‰§s‰¥u„s|•mv‡unmfwe_P=_P=_P=_P=_P=_P=_P=_P=^O<^O<^O<^O<^O<^O<^O<^O<cP2cO4aO7^O<[OA[RK^UV_Zakgvso†}z™‚~£|¥}w¥{u¥{t§pz«s}°w‚¸{ƒÁ~†Ç„‰Í‹ŽÓ“’Ô˜“Í ”«›¸¼¦³Ç®ªÅ¦”ªˆlmJ©?/¯A2¶@4ÄA9ØGBëMLñHKí?Aî;?ê:=å;;ß=:ØA:ÏA5Ç?1Á=.»;2¾?8¯4,¦1'ºJ>ÏcWÔh[ÔfYÁPB¹?2¹5)Ç7,Ô:0Ù5,ß2+ç6.ã0,ã4/â7/Ü8.à>1åC4â?0Þ4'æ4*é1)ò2/ð..ï-.ò14ô68ü?CðOTúY^éFKõRW×47ëFJÝ8<åBEÚ7:Î.0Ð15ãIKÑ8;Î8:¸#%Ñ<>Ü89ä;>ê=Aç6<â-4Þ)2â19ç<DñLSû^eÿksÿisú`l÷YhùXhûXkðgaèZVèWTØ@?Ï10Ô44Ó41áC@ãJDéRKèSLáJAØ?7Ø93Û81Ü71ý)8ÿ/>ÿ/>ý)7ÿ-:ÿ9CÿAHûABã1/ß4-Ü5,Ý5,á4-æ3,ì5/ð50÷.4ù.2ú.1ù-0ø..ò/+ë3+ã7-Ø:.Ì>0´2$±7,±<3çtqþŠŠþŠ‹ÿr†ýj}ñbtð]pôRjûBbÿ6`ÿ5aÿ8_ïKfÁN[z;6Y?.LH/TZ@]cIbzJj„TrŽ[v”^yšc{ždxžas›\p˜Yp˜Yq™Zq™Zt›\uœ]y_zž`x¡_y¢^z¥^y¤\x¤Wv¥Uw¦V{§X~ª]‚¬d„«h†¨l‡¥o†¢r€šmx‘gr„lk}ecu]_O?_O?_O?_O?_O?_O?_O?_O?^N>^N>^N>^N>^N>^N>^N>^N>eQ6cR8aP<]P@ZPG\TR_Zab^otrŠyx˜€¨ƒ°~~²yx±wv°xw³t}Âw€Ã}…Æ‚ˆÆ…ŠÂÀ—–¾ ¼¬§»¶¬´¾³¯È¸©Ð¿¥Õ¡ϼ”Dz‡·kS®\F¤G5©=0ÂH=áVQðVTòNOì?Aë=?è<<ä<;ß=:×=5Ï;1Ë8.¿82Á<5¹:3·>5ÀPDÅYMÅ]PÎgXÐdWÁM@º:-Å8.Ò91Ø3-ß2,è50æ40á2-à5-ã<3çC7æC4â:-à3%ê5*è-&ð0+ð.,ò21ò44ç.,è00áEIõY]öW\ÿpuåDJéHNÞ=Cü[aÿouÝ>Cÿ~‚ÿmqêQTÔ>@Å02Ñ<>øEIî9>ð7=ø=Fô6@è-8ö>Jÿ\hÿmwÿitÿdl÷]gú^kÿapÿ]nüWhî_YãOKâJGÕ74Ò0.Ù54Ó/.Ø95ßD?ãJDáJAÙ@8Ó6/Ö5-Ü71â94ð$0ý/<ÿ1=ø*6û/:ÿ>Eÿ>Cì44â3.Þ5.Ý6-Ý5,á3*è3,ï4/ò5/÷.4ù.2ú.1ù-0ø..ô.+í2+ä6-×9-Ï@2µ1$²6,°7/èpoþˆˆÿŠŒÿkƒücxð]pïZnôPiýAdÿ7aÿ8dý=bæPi°QW^2'RG3DH/PV<X\C_vHi€Rq‹[v’_z˜b|dxœ_r™Zn—Un—Un—Uo˜Vr™Xt›\uœ]y_vŸ[x¡[y£[w£Xv¢Uv¢Sw£Ty¥Vz¤X~¦_¦c¡d~œf{—frŒ_k‚V`uVZoPRgH\L<^N>`P@`P@_O?_O?_O?aQAbRB_O?]M=]M=aQAcSCbRB`P@eS;aP<_O?^QH[QOZSZeapsq‰xxšz|¥~€±€¹}¼xy¹rs¶no²qwÏv{̓̋Ȗ—䤾²±¹½¸²ÌŲÓÍ­ÙЩÛУÛÑ ÝÑ¡ØÌšÒƔզŠ·gŸ_FËzgØte¾G?ØQMøbaìILç>Aä79æ9;ã99Ü75Ù61Û94È95À50ÇB;¹=5¾I?ÄXK·PAËeVÎdVÊYKÃG;Ä:/Í6-Ù6/â5/å3/á/-ß2,â70ä=4à<0Û8)Ý5(å8*å/$ê/(î.)ð0-ï20ë40è51æ40Ó8<åJNõY]ëOS×7?×6>ùX`ÿ~†ÿ~†ÿowÿgoÿipÿfjõ\_ïY[ô^`ÿRYÿCKü8Bü7A÷1>ï+9î/>ñ=IÿS_ÿ`kÿgpÿepþboÿbpÿ`oÿ[lìTOßFA×85×31Ù10×/.Ú21Ü86áD=ÜB:Ø?7Ö<4×90Û81á83ä84ô5=ó4;õ3;÷4<ø5;ó49ë33ã1/Þ3,Ý6-Þ7.à5+ä3+é2,ñ1,õ2.ø/5ø03ú/2ú.1ù//õ/,î3,å7.à@4Ë9,½7+®/&·<5ÒXWÿ˜šù~ÿhÿe|ö]rîRhòHeÿAeÿ9bÿ5`üJlÕRd‰==K. >>&?I.IO5]]EWlAcxMqˆZx’by–`t•\r–Xq˜Wl•Sm–Rn—So˜Vr™Xt›\uœ]uœ]tœVtWv Xw¡Wv¢Uv¢Uu¡Tt S{¥[{£\zŸ\u—Zn‹Uc}MXrCSj>AW1?U/<R,[K;^N>`P@`P@`P@_O?`P@aQAbRB`P@_O?`P@bRBcSCbRB`P@fVF_QD\OF_TRcZ_f`nmkƒwv˜wy¢{}°}¸x|»qt·lo¶ln¸oq»suÙ|}Ù‰ˆÔ˜—Ш§Æ¹¶½ÉƵÓÏ©Ý×£âÜžçßžæÞäÜžâÙ ÙÒœÑʖѼ¸€¦~dÄ‹wÉ}m¶VJÓ`Y÷qnîZZêJLä>@é<>ì>@è:;ã56á34Õ=:Ë73Ê?8¹6.·>3¼L@³I;Å^OÛp`ÒaSÄH<½5)Ä0&Ö5-Ý4-Ü/)â43å95å<7à<3Ü8.Ù5)Ý5(ã5*í6.ï4-î1+ë0+ç0,ã2,á4.Þ5.Ò9;×>AäIMóW[ü\dü\dþ]eÿ`kôR]ïMXñQ[ÿ_gÿjqÿflô[`ëRU÷07ó+5ô+5ù-9ó&5è/ç'6í7DüP\ÿ[dÿclÿemÿepÿdoý[hõP^åFBÞ<9Û64ß63á53Þ20Û2/Û62à>9Û>7Ö<2×:1Ú91ß82å95è96é9;ê7:ë7:î79î79ì57å31Þ3,Û4,Û7-Þ7.á6,å2+ì1*ó0,ø1.÷05÷03ú/2ù.1ù//õ/,î3,ç6.ß=2Ò>2Â8-µ2*·82ØZ[ÿ“õw{ÿa{ÿ^v÷WqöOkøFfý=bÿ:cú=cëLhºJVw<8F5#7=#9C(DH/UP<Tf>`rJnƒXw_v“]t“Zp”Vn•Tk’Ok”Pl•Qm–Ro˜Vr™Zsš[sš[tœVuWuŸWuŸUtžTržQqPq›Qn˜Pl”NhŒLbFXu?Nh8F]/@W+@W-@W-AX.YL<[N>^QA^QA^QA^QA_RB`SCaTD`SC_RB`SCaTDaTD`SC^QAbUM^QK[QPcYakesqm„vu•y{¤y{®y~¶w}»ns·ei°bf°jn¸rvÀ}zᇃᖔߩ§Ù¼¸ÏÍÊÃÝظçá­êå¡ïéŸðêžíæžéá¢âÛ¤×Ï ËĘ´°“¦œ˜„k§„p¥p`œRG»]UÞmi÷usð^_çHLæ@Dí@Dí=@ë7:ç36Ü>;Ô;6ÔA:Â70·7.µ?3­=/µG8Új\Þj[×\MÊB6Å2(Ñ4+Ú6-Ú1*Þ44éA>ìGCà=6Õ2)Õ1'Ú2'Þ0%è3*é1)ç.)æ/)ã2,â7/á=4âA7Ã-,Ê43ÜCEðVXú^bùYaóS]òP[èFQêHSðNYü\fÿmvÿmtôY_ÜAGó*2õ,4ý1<ÿ1>÷*9ï&6ö6EÿJX÷ISõOY÷W_ü_fÿdkÿai÷Q[éBJÞ95Þ63ã75é<8ë<9ç85â51Ý60Ý:3Ù;2Ö90×90Û81á83ç:6ì:8à;9â:9ã99ç98è88å84à40Ú3+Ú6,Ú8-Ü8,á6,å3)ì/)õ/,ú0.ô15õ13ø02ù.1÷//ó0,î3,ç6.Ý9/ÛD9Æ9/»4.´0,â`bÿƒˆônuÿ_zþWsúPmþLlýDfø8_ö9_ðGf×ReDJi=4K@,7@%8@(ED/LE2N^9YkEg|Qr‰[tZqUmRkMi‘Kh‘Ki’Lk”Pm–To–Up—Xq—ZuWuWtœUrœTpšRm—Mk•Kj”LdGaˆE\~AUt;Li3E_/AX*>U'B\/E_2Ic6WJ:ZM=\O?^QA]P@^QA_RBaTD`SC`SC`SCaTDaTD`SC_RB]P@YNR[PVbXcjcsqm†vu•xz£z|­w|´sy·mr¶bi±]c­ag±lr¾v|È‹‡æ”‘褡淴áÇÄ×ÕÒËáÞ¿èå²ëç¨ïê¦îé¥éã¥ãܨÛÒ§Ëß¾µ–Ÿ§˜š…‰v—‚q—se™cW³i`Ïrmû‹‰õutë[[çKNéCGî?Dî;?í8=ß:8Ý;8ßD?ÓC;Ã:0¹;/¯7)¦2#¾J;ÚbRék]ÛSGÉ9.Í3)Ö5+Ø4+Ù33ñMLý[XíKFÙ80Ö3*Û4+Þ2(à-&á,%á,%ß,'Ý0)Ú6-Ø<0×?2À0(Ä4,Î:6ÙCBßFHàEKäGPìLVñQ]öVbøXdû[gÿgpÿmuôY_Ø=Cñ.2ò-4ô-4ò*4í%2ì(6û<KÿS_í?IçBIèGMòQVþ[`ÿX]ôGMä5<á51ä73ê;8ó?>ô@?ð<;ç85à72Ü92Ø:1×90Ù80Ü71ã73ê86ì87Þ<9ß;9â:7ä;8æ:8ä84Þ5.Ø4+Ù7,Ú8-Ü8,á7*å3)ì/)ô/)ù/+ó25ô23õ12÷/1÷//ó0,î3,ç6.Ü8.ßG<É90¾3.´-*îfjÿy€ójrÿ`{ýTqþKkÿFjÿ=cö3[î<^äPhÄXe…DBbE7WP=DH1@D-JH3JB/IW4Sc?btLmƒUp‹XoŒRkŽNiŽKgIg‘Ih‘Kj“Mk”Pm–To–Wp–YtœVs›Uq™Sn—Qj”Lg‘IeŽHdG`‡D]AWy=Rq8Mi6Lf6Ne7Pe:Lf6Oi9Sm=UH8WJ:[N>\O?]P@]P@_RBaTD_RB`SCaTDaTD`SC_RB_RB_RBTLY`Xgnf{tp‰xt•xw¡xz«y{´sy·jqµ`g¯\b¬`f°kq»v|Æ~„Ε”äžžè­­é½¼æËÉßÕÓÔÝÜÊãàÁåâ¹çã¶æß³àسÚÑ´ÐůÀ´¤¯¥™”œ‰ˆ†y‰}qwk›sk§ngºoi扄î~ósróedòVYòLNðCEî>Aå95â:7äB=ÞE?Ì<3Æ=3ÂB5­1%¬1"ÇI;ÛYKÖN@Ì=/Î8*Ò6*Ñ3'Ö34õUUÿkhú]XâE>Ü;3ß;2ã80â4-ä1,â1+Ý0)Ö/'Ì0$Æ/$Â0#Ã9,À4'Á3)Ë:5×CAÛEGÛBGÛ@HàDOìOZóVaòVaú^iÿgoóYaÝDIð88í55ï26ð18ò3;÷9CÿHSÿVaä6?Ý4;Ý7;êAFøKOüIMô;@ê05å61ë95ñ;8ó;9ó;9ð:7é73â70ß;2Ü;1Ù;2Û:2ß82ä73è64ì65á<8ã;8ä;8è:9è;7æ95á6/Û4,Ú8-Û9,Ý9-á7*å3)ë0'ò/)÷0+ð45ñ33ô22ô01ö0/ò1,î3,ç6.Þ7.ÞD:Ê7/¿1-¾21÷jpÿrzøhrû]vúPmÿCfÿ<dÿ7cù6^éDbØ[m©W[uF>_L;_ZFQP;KI4PI6MB0DR1M[8[kFf|Nm…SmŠPlŒMhHfŽGgHg‘Ii’Lj“Ol•Sn•Vo•Xt™Vq˜Un–Pj’LfIcŒFaŠF_ˆDZ@X|?St;Pn8Pj:Tk=XmB[pEUp=Vq>Wr?RE5UH8XK;ZM=[N>\O?^QA`SC`SCaTDaTDaTD`SC`SCbUEdWG]Ulje|yu}yœzy£wyªvx±sw¶lqµcj²[c¬]e®hp¹w}LjІՙܡ¦à¯²å»¿åÆÇãÍÏÞÔÓØ×ÖÑÙ×ËÙÕÉ×ÑÅÒÉÂÌÂÀŹ»´§®¥˜¡‡Œ†xzuwvqulg~mfŒoib[œa[¾sm×zuï{ü|yÿrpýccöSTîHHñB=ê>:ã<6àA;Ñ:1ÒD:ÝTJÂ>2¸6)¼:,Â=.È?/ÏA3×C5×?1Ñ8*Ð23èLMú_]ñXSßD?Ø;4Û81à70æ92ç92ç92â92Ú9/Ñ9.È9+Ä8)®)¸3"È@2ÓI>ÒE>Ë;:Ì7;Ð9@Ï8AâHTïUaðYbõ^g÷`iêU[ØCIè?:ë?;ñAAúGJÿMRÿQYÿT]ÿV^á4:Ú/5Ú03ç7:ô=Aù:?ø48÷/2é61ï95ð95í41í1/ê20ç40á4.ã<4à=4Þ=3Þ;2à93ä73è43ë33æ:8ç98ê88ì89ì87é75ã4/Ü4+Û7-Û9,Ý9-ß7*ã2(è0&ï0(õ0*î45ð43ó32ó11ô1/ò1,î3,è5.à90Ù<3Ì70Á0-ÑAAÿnuýku÷coïSkóIfÿ;cÿ1`ÿ3bÿ<dçMgÇ]i†IFeH:YN<\WCXQ>RJ7QF4MB0AL.GU4Sc>`rHgMj‡MjŠKh‹GeFfŽGfHgJi’Nk”Rl”Um“Vq–So”Qj‘NgŽKcŒH`‰E_ˆF_†G\‚E[~DWxAVr?Uo?YpB]rG_tKYtAYtAXs@NB2QE5UI9WK;XL<ZN>\P@^RBaUEbVFbVFaUE_SCaUEfZJj^Nkg‚up|x›{y¡wx¨vw­pt±jo±ah®^f¯_g°em¶pxÁ~…͉ؖܙ¡Ï ¨Öª±Û´¹ßº¿ß¾ÂßÂÄÝÅÆÛÆÃÖÅÁÒÁºÌ¼³Æ»¯Å´¨¾¦˜±—‰¢†‡‰qqstpqogevhe†nj`Y”e_š[T·g`×tnî{vÿ{wÿwsÿhfù[ZÿQKöGBè=6èC=Ø;4ÛG=ê\RÅ;0Ä<0½7+¾6(Ç>.ÑD3ÔC2ÔA1×A0Ò8:Ø>@ÜDCÛC@Ö=8Ó91Ø7/Þ7/å:3æ93å:3â;3Û>5ÕA5ÑE6ÌG8¬.¼;%ÌK8ÑL=Æ=3»0+¿10Ë8>ÕBJáKVëU`ðZeð]eìYaßLRÐ?DÑ4+Ö8/ß<7ê@@ñDFôEJñBIî?Fâ5;ß26ã36ï8<õ79ù14þ-2ÿ.4ë40ð95ò64ì0.è,*è/,è2.á2-ä=5à=4ß>4ß<3ã:5ç85ì65í55ì57ì57í57ï56ï56ì42å2.Þ1*Þ7.Ü:-Ý:+Þ8*á3(ç1&í1(ò1*í55î53ñ42ó11ó1/ò1,î3,è5.ã;2Ò4+Ò;4Æ20çUVÿpxùcnñ[gãKbóEfÿ7bÿ+]ÿ1bÿ@hÞKe­RYd8/ZI7SN:UN;[P>VI8M@0MA1=H*CN.K[6Xj@ayGf‚HhˆIgŠFeŠDc‹BcEeŽHgLh‘Oi‘Rj’Tn“Pl‘NhLd‹Jb‰H_ˆF_‡H`‡H_…H_‚H]~I]yH]wH`wKcxOdyP[vA[vAZu@MA1PD4SG7VJ:WK;YM=[O?]QAcWGdXHdXHbVFaUEcWGj^NpdTvq‘yu˜xvtsŸrr¤su®lp¯bg«Za©^f¯em¸lt½u}ƈДڕœâš¤ÈŸ©Í¦°Ô¬´Ù°µÛ±µÚ²´ÚµµÛ³±Ö²®Ñ®¦Ë«¡ÄªžÂ¦˜»™‹®‹{Ÿ|y€dbgidhbY\g[[xeauXRe]ˆOHŸVO»aY×jcóvpÿ}zÿwuÿljÿZUÿPJñD>ôMGàB9ßF>êWOº,"¼2'½5'Ç=0ÑE6Ë>-Á2!É8%ÙF4ÞDFÒ9;Ë32Ë62Ó;6×<7Û<6á<6æ;4å82à5.Ø4+Ï5+Ê8+Ä<.Â>/ÑU;ÅI/»='½;+Ã=2Ä;5Â65Â37ÜKRÞLVâOYåS]éWaæU\ÝLSÒCGÉ5)Ð8-Õ81Ú64Ý55ß58á4:ß28å8<å6;ì9=ö<?ú6:ú,0ÿ).ÿ.4ë4.ò94ô86í0.é,*ë/-ê40ã5.ä;4à=4à=4á=4ä;4è96í76ï56í36î15ï05ð24ñ35ì31æ0-Ý/(ß7.Ý9-Ý:+Þ8*à4&æ1&ì1(ñ2*ì65í53ð42ò21ó1/ñ1,î3,è5.å=4Í/&×>8É53øceÿpyô\hêR_ÞHaõGhÿ:eÿ*]ÿ/aÿ@hÓE]–AFQ-!UJ8PN9OH5\O>YH8L<-NB2:D)?J*GU2Rd:]sBcEf†GeˆDcˆBa‰@a‹CcŒFeŽJfMgPhRlPkOfLcŠIaˆG_‡H_‡H`†I\‚G]€H]~I`|Ka{Ld{Of{Rg|S]xC^yD_zEAC8CE:IF=OH@RGAWI@]M>`O=aQ:aS9`T>_VGaZTfaeljwro€wožzt¢~wªzu«ro¨hf¥a`¢^^¦ba­hg·qoÃ|xÏ…€Ú‰ã—í–ó¢žÙ£ŸÚ¥¡Ü¦¢Ý§¡Ý¦¡Û¥ Ú¦žÙ¥Ö£œÒ¢™Ð¡˜Íž–É—ÁŒ‚´ƒy«mrvghlc_`e[ZlYUtUP€ULVK–RG¨ZN²ZP½\SÔmdç|tò…~üˆðxyõyyæabÜPQ×EEñYVÎ61È1(Ç5(Ä7&Â6%Ã8%Æ9'Ì:+Ð<.Õ?1Ô8+Ö=/Ø?1Ó;-Í5'Í4&Ø:.ã?5à90á90Þ7.×7+Ï7)È;)Ä@+ÁC,Ä;3È?7ÍD<ÏF>ÌC;Å<4»2*µ,$Ä>5ÍG>×QHÞXOá[RßYPÖPGËE<Ì<!Ò<$Û:(å4,ë--ó'0÷%2û$6ÿ(@ÿ'@ÿ'Bÿ&Bÿ%Bÿ$Bÿ!Aÿ!Aÿ:ÿ"<ÿ'>ÿ)<ö*6í.6ç48å;;Ü94Ü:5Ý<4à;5ã:5æ93é73é62ì25ì44ë54è64ä71ß7.Ú6,Ø6)Û9*Û:(Û:&Ü9&ß8%á8%â7#â7#í41ï4/ñ4.ó3.ó4,ï5)ê6(å8*à:.Ø7/×96Ý>BÿlyÿasþRlöGdÿIjû5Yÿ5]ÿ;eú=cãPj©LVT)":1 9<)EF4RL>PH;BC39E15K4FGHJ#MQ,U\:\jGcuOf}QeNc…Hb‡BaŠ>cŒ@eDjIl‘Nm‘Qj’IiFgŒFf‹Ff‹Hf‰Ic…Ic‚GdƒJdIc~Gc~Gd€FfFe~Dc|BX}8[€;^ƒ><?4?A6FC<JE?OF?TG>[K>^M;`O;`Q:^S?^WGa\Vhcinlyrqƒtnšvpžtp¢pm¢gfŸaaŸ]^Ÿ\\¤ed°kjºtrÅ}{φ‚ÙŽˆà”Žè˜’ì›—Òœ˜Ó™Öžš×™Ö—Õœ–Ò•Ñž–Ñœ”Íœ“Ê›’Ç™‘Ä“‰»ˆ®€w¦tmtkdkf]`e[YiZSoWMzVJŠVI›UK°\RºYRÁXRÓf_Þqjãvoêwý‡…ÿˆ‡÷uuðfdäTSíYUÇ2+Â/%Æ7)Ã7&À7%Á8%Ä9&É:*Ï;-Ó=/Ö8,Õ9,Ó:,Ò:,Ñ9+Ñ9+Ô8+Ø8,ß;1à90Ü8.Ø8,Ð8*Ç:(¿;&¼;%¿4-Á80Æ=5É@8ÊA9È?7Å<4Â91¾5-Ç>6ÑH@ØOGÚQI×NFÌC;À7/Ê8Ñ9"Û8)å4,ï./ö*3û(7ÿ(:ÿ+Bÿ*Bÿ)Aÿ&Aÿ$@ÿ >ÿ=ÿ<ÿ8ÿ9ÿ$;ÿ);÷-9ï29ê7;å;;Ü94Ü:5Ý;6à;5ã:5æ93é73é62ì25í36ë54è64ä71ß7.Ü5,Ø6)Û9*Û:(Û:&Ü9&Þ9%á8%â7#â7#é4-ê3-ì4,ì4*ì4*ë5(æ6)á7*Þ</Ó5,Ó52óTYÿesÿ[põGbüKhÿ@dÿ:`ÿ1[ÿ7aùImÐJb‰8?O,&=7'3:(:=,C@1F@0@?-;C.:H1@CKP'\b<eoLhvRezSd~Qd‚LaƒFa†@aŠ>cŒ@eDiŽHkMlPl’IjGhGf‹Ff‹Hf‰Id†JdƒHe„KdIc€HdHeGeGfEd}C\<_„?b‡B69.:<1??7E@:KB=OE<VH=[K<^O<\O<\TA_WLc^[helol}sq†sm™qk™jg–c`•\[”ZZ˜\]ž\_¦hjµno¿wxÊÒ†„Ø‹‡ÜŠà’Œâ“’Γ’Γ‘ЕДѓŽÐ“ŒÏ’‹Î•ŒÍ“‹Ç“‹Ä”‹À“‹¼Œ„³ƒz¥{r€dpt_fiZ]c\Vc\ReYKqWH„TF£ZQ¾_YË[YÐXWÛcbßliÝpkàwqûŠ†ÿŠ†ÿ…ÿ|yømhï`ZÄ4+À2&Ä8)Á:'¾:%À9%Â9&Ç:)Ì:+Î:,Ù9-Ó5)Î5'Ð8*Ô>/Ô>/Î6(Ë/"Ú:.Û7-Ù7,Ö8,Ñ9+É:)Â9&¼8#¾4*À6,Â8.Ä:0Ç=3Ê@6ËA7ÌB8Å;1Ê@6ÏE;ÐF<ÒH>ÑG=Ê@6Â8.Í6!Ô7&ß7,é3/ñ03ø,5ý*9ÿ*<ü'=ü'=û%=ù#;û!:ü8ü7þ7ÿ6ÿ6ÿ#8ý*;ù1<ñ6=é9;ã;:Ü86Ü:5Þ;6à;5ã:5ç85é73é62ï26î47í55ê65å61ß6/Ü5,×5(Ù9)Ù9)Ú9'Û8%Ý8%Þ7$à7$à7$â4+â4)å4*å5(ã6(â7&Þ7'Û8)Ý=1Ï2+×98ÿltÿ]nþPið=[ÿJlÿ5\ÿ=eü4[ô<`êTq«?Oa#(H1+79+-8'18&:;)B=*A<(@>)@B*?GY`4s~T€Œfw‡bi~Ub|MaI`ƒC`…?aŠ>cŒ@hŽEjJkMlPn”Kk‘HhGgŒGgŒIh‹KfˆKf…Je„Ke‚Jc€HeGf‚Hf‚GeFcDb‡BeŠEhH06*58-;<4A>9G@:KB;RE<VJ<XL<YN<YRB^WOc_`igrom‚ppˆpm˜jg”`^WW‹TUŽWY–\_¢ad«ko¹qtÃ{|Ì‚ƒÕˆ†ÙŠˆÛŒ‰ÚŠÛÍŽŽÌÎŽ‹ÎŠÑŽˆÐ‡Ï…Άʎ…ÆŽ†Á‡¼‡¶‰‚«€xxq“‹[i}WbmWYa]T\`Q\^IhYF}SCŸULÂZYÔW[ÝV\çbeçkkàplâysê}vì{uýƒ~ÿ†€ÿ{õkaÉ<2Â9)Â;(¿:'¾<&½;%Á:&Å:'È9)Ë9*Û9.Ö6*Ð4'Î8)Ñ>.Ð?.Ë8(Ç/!Ò6)Ó5)Ô4(Ò6)Ñ9+Í<+È=*Ä;(Æ9/Æ9/Æ9/Æ9/Ç:0È;1É<2Ê=3ÒE;ÒE;ÐB8Ë=3Ë=3ÏA7ÏA7Ë=3Ñ4#Ø6)â5.ë31ò/5÷+6û(7ü)<ù&9÷&;÷&;ø'<û&<ý%<ÿ$:ÿ#:ÿ!7ÿ"7ü%7ù-9÷5>ñ:?ç9:à87Ü86Ü:5Þ;6à;5å95ç85ê65ë54ñ27ð37î66ê65æ72á6/Ü5,×5(Ø8*Ø8(Ø9&Ù8&Ú7$Ü7$Ý6#Ý6#Ù6'Ú7(Û8'Ü9(Ü9(Û:(×:'Ö:+Õ;/Î3.éIKÿo{ÿVjøDaö=_ÿCiÿ/[ÿ7`û=cëLlÆOe€0=G >3--3'+8'2=,=B.B@+C;$G="MA'R_*q}MŸp—¨|ƒ˜mj„W_{J]~E_ƒCa†@b‹?fCk‘Hl‘Lm‘Qm‘So•Ll’IiŽHhHhJiŒLhŠMiˆMf…LdƒJdGe‚Hf„Hh„If‚EeDf‹FiŽIl‘L-3'17-7:3<;6B=9G?<MD=QG=SI=SK>UOCZUQa_dhgukkƒllˆjg’baXV‡PP†QQXYš`cªfj´orÁuxÉ|Ѓ„Ö†‡×‰ˆØŠ‰×Œ‰ØŒŒÌ‹‹ËŠ‰Í‰‡Ð‰…ш„ÑŠƒÓ‰‚ÐŒ„Ï‹„È…Á†º†²‡¥}x–vpŠ“ScƒQ\qUT`^RVcOTbH_]DvUB’LB¼RRÖPWàPYé\dèejâljâwqâvláphõ~vÿ‚{ÿ‡~ôkaÉ?2À8(À;(¿='¾='¿='Â;'Å:'Ç8(Ê8)Ü8/Ú7.Ô8,Ï9+Ê;+È;*Ç:)É7(Ï9+Ñ7+Ô8,Ó7+Ï7*Ì8*Ë<,Ë>-É=0Ê<0Ê<0É;/È:.Æ8,Å7+Å5*Ð@5Ð@5Í=2Ë8.Ë8.Î;1Í:0É6,Ò.$Ù0)ä2.î23ô/8ù-9û+;ü+>ü-?û.?ú0@ü/@þ/Aÿ.?ÿ-?ÿ->ÿ)9ý)8ø*7õ0:ó6=ì9=ã77Ú53Ü86Ü:5Þ;6â:7å95ç85ê65ë54ò38ñ48ï56í76æ74á6/Ú6,×5*Ö9*Ö9*Ö9(Ø9&Ø9&Ù8&Ú7$Ú7$Ô9%Õ:&Ô<'Õ=(Ô=(Ô=(Ó>*Ó=.Ð8-Ù;8ÿ^eÿaqÿPi÷;\ÿAiû6aÿ/]ÿ.WøIjÛYq•>NX'-?+,730*1)-9-5@/:B+<<"B;VG(iV6v‡P£lª¾‹¨¾Ž¥wo‹[aK^F`…BcˆBeŽBj“Go•Lp•Po“So“Uo•Ll‘KiŽHgŒGiŒJiŒLi‹NhŠNf…Je„IdƒHfƒIg…Ih†Hg…Gf„FgIi‘Kl”N*2%.4*470894<;7B=:HA;KD<NH<NH<OKBUTR_^ffewggfg†ba[YŠQQ…NO‡RS“[^£ei³lo¾sxÊx}ÑÖƒ…؆‡Ù†‡×ˆ‡Õ‰ˆÔ‡ˆÈ†‡È……Ë…ƒÎ„Ð…€Ô…€Ô‡Ò„ÓŒ…Ë…Á…¸‹…«„{vŒrn•N\ƒNTqTPa_PWgMReI\`EsXCOCºTRÔSXàPZëYcé`gähjçqqê{rärhö}tòsjþxmæ\QÄ:-¾5#À<'À>(À>(Á=(Ä;(È;)Ì9)Î8*Ú3+Ù6-Ö:.Î:,Ç:)Â9'Ä;)É=,Í>.Ö@2ÙA4×=1Ï7*Ê4&Ê8)Ë<,È:,È:,É;-Ê;-Ê;-È9+È6)Ç5(Ê6*Ï;/Ò>2Õ>3Ö?4Õ>3Î7,Å.#Õ)%Ü-*ç02ñ29ø0;ü/>þ/?ý0Aú0@÷1@ö2@ö0=÷/:ù-9ú,8ü*7ý/<ù/;õ0:ñ2:í6;æ68ß55Ù42Ü86Ý:5ß:6â:7æ87é77ê67ë54õ49ó49ð69í76æ74ß6/Ú6-Ö6*Õ7+Ô8)Ô8)Ô9'Õ8'Õ8%×8%×8%Ï:$Î<%Î>&Í?'ÍA(ÍA*Î@,Ï=.Ð71éIKÿgrÿOdÿHfû7]ÿAmý/_ÿ1^ø1XåOj¹Wfh39@*,?994443524925>-2<#29ECl`8Ž}R™±u©Á‡µÎ—­È•’®}v”be†Q_ƒF`…Bc‰@gDo•Jr˜Or—Rq•Up”Vo•Ll‘KhGf‹Fh‹IiŒLi‹Ni‹Og†Kf…Je„If…IhˆIjˆJi‡Gg…EhJk“Mn–P(0#*2'/4-350664<87@<9C>8IE<HE<KHCQQQ[[eabvab~`a€_]ŽZXŠTTŠTT\] gi´psÄtyÍ{Ø~‚Û…Þ„†Ýƒ…؃„Ö…„Ò†…Óƒ‡Ç„…ȃƒË‚̓Ó„€Õ†€Øˆ€Õ„Õ‹„Ê‹ƒ¾‹ƒ²ˆ‚¤|’uqlirŒOVNQpUNc`OYgMVfI]dEo]EˆTF²[TÌXYÙSZæYaé\dèaeðknñ|rìsj÷xoÞYPå[QÒD8Ã5'Æ:)Ã:'Ã<(Ä='Æ=*É<*Í:*Ð8*Ó7+Ö/'Õ2)Ò8,Í;,Å<*À;(À;(Ã<)Ç;*ÕC4áK=ßG:Ô</Ê4&É5'Í;,È9)È9)È9)È9)Ê8)Ê8)Ë7)Ë7)Í7)Ó;.×?2Ù?3Ú@4ÝA5×;/Ï3'Þ..å12î49÷5>û3>ú0>ú0@ø/?ò.<ï/<í/9í07í.5ï,2ò+2ò)/õ1;õ3<ò5;ì59ç47á55Þ65Û75Ü86Ý97ß:6ã:7æ87é77ê67ë46ö5:ô5:ñ7:î87æ74à72Ù6-Ô6+Ñ8*Ð8*Ð9(Ð9(Ð9(Ñ8&Ñ8&Ó8&È:"Ç;"È>$Ç?%ÇA(Ç@*Ê>-Î;1Õ:6üU\ÿ_oÿGcÿ>bÿ8cÿ6gÿ0cÿ4\òCbÈMa…BIL44:97<<>948>58<7379+3="8DS[,ƒPª£o«Èˆ¯ËŽ¯Ì’¦Ã‘¯}{™ggˆQ^‚E^ƒ@c‰@iDo•Js™Ps˜Sq•Uo“Un“MkJgŒGeŠEgŠHh‹Ki‹Ni‹NfˆLd†Id†Ig‡Hi‰JjŠIi‰FhˆEi“Kl–No™Q&.!(0%-2+130333756:97>;6GD=DD<GFAOOQZZd_`t^_{\]|`^\ZŒYX‘\\œgg¯qrÂz|Ó}܄ゅ䃆ㄅႄۂՂ҃‚ЄˆÈƒ†É„„̃‚Î…Õ†‚׈‚Ø‹ƒØ…ÒŒƒÆ‹‚¹‰‚«…›xˆsntjfgSPuRLjWIe`MafO\gI`cFn`FxR?[M·ZSÆRRÚUZåV\ëX`ö`iótkïof÷qhÑD;ÔA9Å1%È4&ÔC2Ç9%Ç:&È;'Ë=)Î;+Ó:,Ø8,Ù7,Ð,#Ð/%Î6)Ë<,Ç@-Á>*½<'»8$¾5#ÑB2ãOAäN@ØB4Í7)Ë7)Ð>/Ê;+É:*Ç8(È6'È6'Ê6(Î8*Ð8+Ó;.Õ;/Õ9-Ó5*Õ7,Ü;1Ý<2Ú9/ë7:ñ8=÷:Aü8Bü4A÷.>ò,;ï,:í/;é19è38é58í57ñ48ô36ö45î49ï6;í9<é69â45Ý33Ý86ß;9Ü86Þ97á98å99æ89é69ê67ë46ö5:ô5:ñ7:î79ç85ß82Ø7/Ó7+Ð8+Í9+Í:*Ì;*Í:*Í:*Í:(Ï9(Ä: Â: Ã=$Á?%Â@(Ä@+É=.Í81ß<?ÿ[hÿQhÿHhÿ7]ÿ<jü,]ÿ7iì;XéYp§LUX00?<5<E@99;B3:G08F21?9+<E(DW*at=Žœ_²»|®ÌŒ«É‹¥Ä‰œº„Ž¬zy™gf‡PZ|@]‚?a‡>hŽCo•Jr˜Or—Rp”Tn’To“MkIgŠFeˆFf‰Gh‹Ki‹Ni‹NfˆKe‡Jd‡GeˆHgŠHh‹Gh‹GfŠDj”Lm—OpšR(0!'/"(-&+-*.0/333775:94==5?@8DE?JLKQQYVWiZ\s]^|YW†[Y‹^]–ee¥nn¸wxÊ€Ú„„䊌ðŠŒðŠŠì†‡ä‚‚Ü€Ô‚€Óƒ‚Ò€„ĄǃƒÉ„„ΆƒÒˆƒÕ‹ƒÖŒƒÒŠ€ÇŠ€½‰±…~ €xwpxkeec^XpZMm[Mi\Kf^Kd_IcaHfbGl`FlR;„UA£^O¿aYÑYXßPTñQ[ÿXbôkcæYRÔD<Î70Ñ7/×;/Ø</Ô;+Ï9(Í:(Í:(Ð:)Ô8)Ù7,Ü5,ß4,Ð/'Ï2)Ì8,Ê>/Å@/Á@-¾=*¼9'Â9)¾0"êVJáJ?Å.#Ñ=1Î</Ç8*Ê;*É:)È9(É8'É6&É6&Ë5&Ì4&Ð7)×;.Ü>2Ü<0Ù7,Û7-â>4éE;øAFó8?ð3:ö4?ö2>ñ-;ï,:í2=ì7@æ5;ã68å78é99ð:9ñ86ò65ï==î<<ê:<æ89á77ß76Ü75Ü75Þ97á98ã99æ::é9;ì9<í9<ï8<÷6;ô5:ñ7:í9:è:9à;5×90Ï7,Ë7+È9)Ç:)Ç:)Ç:)Ç:)È;*È;)Á9!Ä>%½;#µ5»:$ÈE3Í@6Ê0.ÿ^eÿVgÿHcÿ;\ú0Xø/[ý5cÿ<jã\m¯EOo33G6.9C8:E==9:B+3P-4N00D7'CJ)Wo=}›_œ¹v«Å~«ËŒŸ¾‚˜·~”²~‚ nf„RXvBY{?]€>c‡?iDn”Im•Ll”Nk’Qj‘RjŽHfŠDc†Bc†Df‰Gh‹Kg‰LdˆJg‹MhŒNg‹Kf‹HeŠEf‹EjIm“Jp›SrUtŸW*0")/#).'+-(-/.222553782;<4>@5BC;HJGOPTSUaXYm[[s\Z‚^]‰da–kj¦us¼}Ї‡á‹‹íŒòŒ‹ñ‰‰í…„ ڀ~Ò€σ€Ï…†Æ†‡È‡ˆË‰ˆÎ‹‡ÑŒ†Ð…ÎŽ„ÉŠ€½‰³†{£‚x‘{s€tknkd^e\SbaLb`Ke^Kh]Ii\Ij^Hk_Gm_EraG{]CŽ[Fª[LÆWPàQS÷PXÿS`ìWQãKFÛ>9×50Ú5/Ý90Ü8,Ø8*Ó8&Ñ8&Ñ8&Ô8)×7)Ü5,à3,ã2,Ë1'Ë4)È9+Æ=-ÄA/Á@-¾=*¾9(Â9)Ë<.åQEÜH<È4(Ì:-È:,Á5&Ê=+Ê=+Ê;*Ì;*Ë:)Î8)Ï7)Ï6(Ó7*Ö8,Ù7,×3)Õ1'Ø1(ß7.å=4ûBHò7>í07ï/:ò0;î.;ì1<ê6?ã6<Ü36×32ß:8îEB÷JFøEAõ?<è:9æ:8å97â96á85à85á98á98à87â88å99ç9:é9;ì9<í8=ì7<ô5:ò59î68ê88æ:8Ý:5Ó91Ë7-Æ8*Ã:*Â:*À;*À;*Á<+Á<+Á<+½9"Á?)¹;$²5¸;'À</É:2Ø<=ÿ]iÿOdÿ@[ü6Yù5[ø:`ö=fô@g¡EJ„>>];2@>/3A05?4E=:X;?T-0X51ZI7bjEu[Š±pšÄ|žÈ|š¹}š¹€™·ƒ©yr`YuESq?\{B_>b†>iCm“Fl”Kk“Mh‘MhQhŒFeˆDc†Bc†DgŠHiŒLhŒNg‹MiOiMiŽKgŒGgŒGfŽGj’Im•LnœQoRr U-1"-1#,/&,.).0-11/34/45-9;0<>1@B5EH?KMLQRWUTbXWi\Yx^]fcŽpm¢zx¹…‚ÏŠáíŽñŽŒïŠˆé‡ƒá~Õ|Í}È}Ç…‡ÄˆˆÆŠŠÊŒŠËŒŠËŒ‡ÇŒ„À‹‚¹‰€¯†|¡€v‘{p€ujpod`i_Ue\MXeK]bKa_Jh[HmZIp[Hq\Go]EtcItZ?‚V= WDÅYMäTSûNTÿIUß@<Þ<9Ý84ß61á6/á6.Þ6+Ú7(Ö6&Ó8&Ó8&Õ8'Ø6)Ý5,á3,ä1,Ç5(Å6(Â9)Á<+Á@-Á@-À=+À8(Ã5'ÜJ=ÜE:ÕA5Î</Ä6(Ä;+¼7&Æ:)Ç:)Ç:)É:*Ê8)Ë7)Í5(Í3'Ö8-×6,Ö3*×3*Û2+ß6/å:3è=6ò;?í4:ë07î0:ð2<í3>ë7@ê=CÜ7;áAAìNK÷ZUüZUùRLïB>è62à72à74à74ß74à85á96ã;8ä::á77ä88æ89è8;é9<ë8<ì7<ì7<ò38î47ì57ç77â:7Ù:4Ï8/Ç7,Â8+¿:+½;+»<+»<+»<+»<+»<+º9$¾@*³9$°7$¶;+´2%Ã40îOTÿZiÿH`ù8Uó6Vó>]ñFfçHfÞEat?9e?6QA2@C04?.29)>5,O61K*#W:,j\Bˆ_«t”½{“ÃyÃv•²|œ¸…™µ…€šm\uKHa7Nh9[xB_}?c„?hŒBl’Ej“Gh’JgLeMe‰Cd‡Cc†BeˆFh‹IjŽNkOjŽNkOkOiMhJgHi‘Hl•Ip™Ms¡Vt¢Wv¤Y25$13&02'01+12-23.34.46+9;-;>-?B1DF9IJBNNNRQWTR]XVd\Zoda~nl”zw®„ÄŒ‰Ø‘Žå”‘ì“펋扅ڂÎ{Å|¿‚}¿ƒƒ¿……Á‰ˆÂŠÃ‹ˆ¿‹„¸‡®…}¦…{€vŽzm~sfmoa`k^Vi[NgZJVdJZbJa_JjZJpYIsYJtZIs]FqY?tU9†T;§ZFÌ\PæRNóEGù:AØ3/Ü41á51ä50ã5.â4+à6)Û8)Ö7$Ó8$Ñ8&Ô9'Ø6)Ý5*à3,ã2,Â8+¿7)»7(¼:*¿=-Â>/Ã;-Ä8+Æ3)ëTKÔ;3Ì8.ÑA6¾4'À<-½>-Ã7&Ä8'Æ9(Ç:)Ê8)Ë7)Ì6(Í3'Ó5*Ô3)Ö2)Û4,ã:3é>7ì?9ë>8è47ì59ï6;î5;ê2:æ39ä7=á<@óUVûc`ÿnjÿidóVQäA<ß61à3/Þ71Þ71Þ71ß82á85â96å97æ::å78æ89è8;é9<ë8<ë8<ë8<ë8<ñ48î68ê67æ87à;7Ö<4Ì9/Å8.½9,º;,¶;+µ<+´<+´<+³;*³;*³:'·@,­8&¬9'±;-«+"Ã54ÿ_gÿSdýE]ó;Uí<XéG_áOdÐP_ÄKZcPAVI8JE2CF1AF0<?*<7#>1B2SE*okHŠ“f•¬t´t‹¹q‹½t¡¹‰¡¸Š§}l‚\K_:BV1Lc7Yq?_{@dƒ@i‹Ak‘Di’Fg‘IdJbLc†Bc†Bd‡CgŠHjMkOm‘Qn’Rj‘Pj‘Nj’Li‘Jg‘Gi“Gm—KqœMu¥Yv¦Zx¨\78(78*66,56056156167/68+;>-=@+@C.DG4IK=NNFQPNSQTVUSYY[a_lkius›€}´ˆ…ÈŒ‰Ö•’ã”äÞ‹‡Ó„Æ}º|µ€{±~¸‚º‡„»‰…¸Š„²†¨z›€xs‡znzrfjm_\j[Tk[NjZKjYI^bK_aKe^Kk[KpZLtZKw\Kz[G{WAƒS=—U?³XFÍSFÝF?å76ê01Û2-ß3/â5/å4.ã2*à2'ß5(Ü9(Ô7$Ð9$Ï:$Ñ:'Ô8)Ù7*Ý5,à3,½>-¹:)µ6%·8'½;+Â=.Ç;.É6,Ñ80ö\T×=5Ë4+ÏA5¸3$·:(¹@-Â9)Ã:*Æ:+È:,Ê;-Ì:-Ï8-Ñ7-Ñ3*Ò1)Ö1+Þ71ç;7ë>:è;7æ74é77ï;<ð<?ê69ä15ã6:èBFìNOÿxwÿqnða[ÛKCÐ83Ñ2.Ü73è?<à93à93ß82à72à72ã75å76å78æ68ç79è8;ë8<ë8<ë8>ê7=ê7=ð69î79ê7:ä::ß=:Ö=7Ë;2Ã;/¸9*´;*±<*¯<)­=)¬<(¬<(¬<(«:(¬=*¤9'¥:*©9-«0)ËAAÿgr÷L^÷E[ðBYèF[ÛN^ÈT]´VW§SQSU@LN9JG4JE1FD-AA'>C#@G%MU.^g<xTŒ˜f‘¤m©nŽ²r’¼z µŒ’§€u†dRcC?O2BS3Oa;Vl=b{Be‚@iŠCjEi’Fe‘FbH`Ie…Bd‡CgŠFiŒJkŽNlPn’Ro“Sj‘Pk’Oj“Mi“Ki“Ik•InšKržOu¥Yv¦Zw§[?>,?=.==1==5=<7;<6;=2;=/?B-@D+CG,GI1KM8NOASPITQLYXDZ[M_^Zgepqo‡{y¡ƒ€·‡…ƌӋՊъ…ǃ€¹~z­zw¤{u¡zw°|y°€|®~©‚~£y•|t‰zrvkqrffm`Zl[QlZNl[KmZKmZIg^Mi]Mi]Mj]Mn]Ms^My^M€[I“`OšWG§N@¹I=Æ@5Ð6.Ù0)á0*á51â5/ã4/â4-à2)ß3'Ü6&Ú;(Ð9$Í;$Ì<$Í<'Ñ:)Õ9*Ù7,Ü5,ºA.´;(¯6#°5#¹:)Â=.É;/Í6-Û>7ùZTåHAÐ90Ì@3¸6&«4 ±>)¿7'¿7'À7'Ã7(Å7)É7*Î7,Ð8-Ù<3Û:2Þ93å<7ê>:ê=9ç85ã41è96ë<9ê::è8:ì>@øORÿccÿqpùheàUPÈ=8¿2+È5.Ö;7à<:â:9à<3á:2á:4á83ã73ä65å55æ68é69é69ê7;ë8<ë8>è7=è7=ç6<ð8:ì8;è8:ã;:Ý>:Ó>7É<2À</´9)°;*¬;)ª;(©<(¦;'¥:&¥:&£<)Ÿ:(Ÿ<)ž:*¡7*´?8ÛTXüdpðK\ñH]ìI\ÝL[ÉRX±WVœ\R^OAP9FN9NI5K>+>467>O#Jh4gTt•\„›c‹™dŽ›f‘¢l•¬t•²x„”pn}\Q`C=J09F,BO3O_;Xi=czDgBkŠDk‘Dh’Fe‘F`G`Gf†Ci‰FjKlMlOkOm‘Ql“Rm”Qm”Qm–Pl–Lk—Jm™JržOu¢Qy¬]y¬]x«\CB0DB3DB6EB9CC;CC;BB8AD3CG0EH-GJ-JM0OO7RQ?TREURI[\:\\@\]Kaa_ihvrq{z¦~µ†‚¿ˆƒÃˆ„Á„¸{­ysŸtp•qmŽol£rn¡tq wršwrtoƒskxrilmb^l_Vj\OlZLn[Lo\Kq\Kq\KrZNq[Nn\Nl_Ol`PqaQy_N†[KŸ_S¦OE°A8½:2È5-Ï1(Ø1(Ý5*â70á6/á4-á3*à4(ß5(Ù6%Ô9#Í;"Ê<$È>$Ê>'Í<'Ò;*Õ9,Ø8,·D/±<(¬5!­4!¸9(Ä<.Ì9/Ï5-Ú83ñNIòSMÙB9ÌB5½@.¥2¬?(À;,Á9+À8*À6)Å7+É9.Ï;1Ô;3áD=ãA<ä?;ç>;é=;é;:è88ç77æ93æ95å84é;:ôJJÿ\[ÿdc÷caË=9¿82»4.Ã81ÓB=ÞE@ß=;Ù42â;3â;3â92ä84å84æ66é77é77ê69ë6;ë6;ë8<ë8>è7=è7=ç6<í68ê69æ89à;9Û>9Ñ>6Æ<1¾<.²8)®;)ª;(¦;'¤;&¡;%¡:' 9&ž?-”7%š=,—:)˜3'ÂQKíkmï\fïN^ìI\àHWÎJU·SS¡]RŒfQ‚jP=S<CL7JB/L7$F5FH!Tq;c–Txµo€µo‚¦f~‘Y…ŒX–cŒ–d|YXeGGT89E-8A,:C.?I0JX7Wh>g{Fh‚Cl‹Ek‘Di“Gc‘Fa‘G^Gi‰FlŒImNn‘OlOjŽNkOk’Qp—Tp™SpšRo›Po›NqNv£Rw¦Uz­^z­^y¬]GD3HE6HF9HE<GG?GG?FF:FG5GI1HK.JM.LO0QQ7SR=VSDWSG[\4Z\7[[C\\Rcbhmkusšzx©~{´€|·‚¸€|¯zw¢so”mj‰kf„gb˜hd—lf”lh‹lhleuibij`^g]Th\NjZJl[Io\Ks^Ms^Ms\LzWQvYQp\Ql`PkbQpcR{aPŠ\OžUL§D>±61Á3/Î5/Ö5+Ù7*Û8)ß6/ß4-à3,à4*â6*Þ7'Ø7%Ï7 Ì<"È>"Æ>$Ç?'Ê>'Ï<*Ó:,Õ9,µE/­='¨3¬3 ·8'Å;.Ì9/Ò5.Ò/*ä?;ûYTàI@ÎD7ÆI7¥5®D,ËF7ÉD5ÉA3É?2Í?3ÒB7ÚF<àG?ßB;à>9à;7à74â64ä65ç77é99é>7ç:4ä73è<:ñIHñMLØ=;¹(%¸-(¼5/Å@9ÌC=ÐA;Ö=8Ý>;ã?>á:2á:2â92ä84æ95è96ë99í9:ë7:ë6;ì7<ë8<ë8>è7=ç6<æ7<ì59è58å78ß:8Ù<7Ï<4Ä<0º:-°8(«:(¨;'¤;&¡:'Ÿ:&Ÿ:&ž9%š?,4"—>,“:*“1&Ì\X÷y|æT_ðTbèI[ØDRÃGO®SPšbS†lS{rSC[C?H3B7%O6"_K0prJ€£iˆÇ€yÃt{¾qu¢]oƒHy}J‡†Xy|O\d5:D)3=$4>&<E2=D2:B+EP2Ve<g{HiƒDl‹Em’Ei“Gd’Ga‘G^Gk‹HnŽKo’Po’PlOiMjŽNj‘PsšWsœVsUržSržQu¡Rw¦U{ªYt§Xs¦Wq¤USJ;SJ;SJ;SJ;SJ;SJ;SJ;SJ;VM>WN?XO@YPAZQB\SD]TE]TEcZKbYJbXNcXRg\Zmacsfmwjs|n{~p}s€s€~p}wjtobli\fcb]a`[a^W_\U_[R^ZOa[ObZMe\Kg\Ji\Ii]Gk\El]Fm]Dm]D_gOkiTqZH{M@•RI©WL®TI³WH¦N:¢G2¢?*ª;(¾:.Ò72à23å,1Þ7.Þ7.Þ7.Ü8.Ü8.Û7-Ø6+Ø6+×7+Õ7+Õ7+Õ7+Ô8+Ô8+Ô8+Ô8+¸=.·=.°8(§2!ª2!´;*½>/Â:,Æ6+Í6-Ô:2ÜB8àI>ÖG9Ç;,¹1!ßOGÙIAÔE=ÓE;ØH?ÜG@àC>á<:ã54ê67ï8:í9:ç77à72Ý:3Ü>5ÎKAÈE;½=0µ7)°5&³8)¹>.ÀA2Á;/Ê<2Õ>5ß=8ç;9î79ò67ô68æ7>æ7>æ7<å8:å99å97ã:5ã:3Þ5.ß6/ã81ä84å97ç98ç9:ç9:ë;>ç9;á99Ü<<ÖA=ÌC;ÀB6´@3¦;+¢=+>,™<*–;(•:'”9&“8%‡F2‡>/†/%”-(ÀIKèkoçlqÊWZ¶OP©TQŸVO˜YP•[P–]R™^Vœ`XMb!:O3JOf x’I˜²h¡½r »t™²pƒ›akN\lEWdHS\GHN@=C9;<,AB4=?2:=2<B6:C2AN4Rc?\tBgƒHpKo“Il’Gj’Ij’KgJlUm‘To“Ul“Pk“Lk”Hl—Hm˜FpJoŸIp Jr¢Ns¥Pv§UyªYz«Z{¤jo˜^dSWN?WN?WN?WN?WN?WN?WN?WN?XO@YPAYPA[RC\SD]TE^UF_VGd[JcZIcYMcYOf[Uj_]nbdpcjrentgpvirvirsfom`ggZacW[\\T\YRYVOWTKXTIXTI\VJ^VIb[Ic[Hf[Gh[Hi]Gj^Fm^Gm^G]eNmhTt]M‚RFšVM­VM²QH¶QE®H9ªC2©>,¯:)½9,Ì70Ø42Þ22Ý6-Þ7.Ü8.Ü8.Û7-Ú8-Ù7,×7+×7+Õ7+Õ7+Ô8+Ô8+Ô8+Ô8+Ò9+¸>/·=.®9(¥2 ¦3 ²:)»=.¿;,Æ:-È4*Ì3+Ó;0ÜE:ßPBÞRCÚQAÝE@Ø@;Ñ<6Ð;5Õ>7Ø=8Û96Ý33é69í68ï79í68é77å97â=9á?:ÆC9¿?2¸:,±6'¯5&²8)¸=-¿@1ÅA4ÍA4×@7ß=8å97ê67ï56ô68ç6<ç6<ç7:æ89æ87å97å95ã:3â92ã:3ã:3ä;6æ:8æ:8å99å99æ9;ä:=à<=Ú?=Ñ@;Å?6¸<2¬;-¥;+ <,œ=+—<)–;(’:&‘8&7%z;)€8)‰5*ž;5ÁQPÚceÔ]a¹MM­NL¤SOYP˜\R—^S—^U˜_V™^VSg*Sg(^r3zO—°l¥¾z™²nˆ¡`j‚Fau@Sf9IY5FP7?H59?358/;<,AB4=?2:=2;A5:C2@M3Rc?]uCgƒHqLp”Jm“Hk“Jk“Lh‘Km‘Tn’To“Sm”Qk“Lj”Hl—Hm˜HpJnžJp Ls£Ou¦Tx©Xx©Xx©Zm–\b‹QY‚H]TE]TE]TE]TE]TE]TE]TE]TE[RC\SD]TE^UF_VG`WHaXIaXIe]He]Jd[Jd[Le[Qf[Uh]Yh\\i]]j^`k_ak__i]]f[YbWU`USYVMWTKTQHRNCQMBSOCWQCXRB^WG^WEaYFc[Fg\Hi^Hk`Jk`J^cOmhUy_PˆXN¤[T³VQ´HE¸E>¹@7¸>3·<-·9*¼8+Ã9.Ê:/Ï;1Û7-Û7-Û7-Ü8.Ú8-Ù7,Ø8,×7+Õ7+Õ7+Õ7+Ô8+Ô8+Ô8+Ò9+Ò9+º@1¶>.®9(£2 ¢3ª:&µ=,»=.Ä?0Å7+Æ2(Ê3(Ð<0ØF9ÛM?ÝQBÜ87Ø43Ô20Ô52Ù:7à>;å=<é;<ï8<ï5:ì27ê24é56å97á<8à=8¹;-·9+±6'®4%­5%°8(µ<+»=.ÈD7ÏC6ÖB8Ü=7â96è64í55ò67ê5:é6:é69ç79ç77æ95å:3å:3ã:3ä;4ã<6ã<6ã;8â:9á99à88Ý9:Þ;<Û@>ÕA=É>7º:1­7+¥7(¡;,œ=+˜=*”<(’;(9&8%Ž7$u8%y6%ˆ9,¢E=ºROÂVT¹OO¬HH¤LHœSL˜ZO—^S–bU—aW˜_V˜]UgxB{ŒU“¦n¥¸€«À‡ž³zz‘YYp:?R$AS)AQ-?L0:C.6<.690581:;+@A3=?29<1;A59B1@M3Qb>_wEi…Js’Nr–Lo•Jm•Lm•Nk”Np”Vq•Uo–Sn–Pl”Kk•Il—HmšIpJpJp Lu¤Sx©Xyª[u¦Wq¡U_ˆNVEOx>aXIaXIaXIaXIaXIaXIaXIaXI_VG`WH`WHaXIbYJcZKd[Ld[Le]Ff^Gf^Ig_Lg^Of\Pf\Rf\Sh]Wh]Wh^Uh^Ug]Se[QdZNdZN]YNZVKVRFRNBPL@PM>RO@UO?WQAYTA[VC^WDaZGd]Jf`JgaKadSleUt]O‹[Q«b\»YXºDD¾9:Æ;8É:6Ç80Â8-½8)¼:*½@.¾C1Ù7*Ù7*Ú8+Ú8+Ú8+Ø8*Ø8*Õ8)Õ8)Õ8)Ô8)Ô8)Ô8)Ò9)Ò9)Ò9)»A2¶>.¬9'¡4 2¢8"¬=)µ@.¼>/Á9+Ä6*Ç4*Ë7+Í;.Î</Í>0å26á14Ý02Ý34à88å;<ë=?î;?ï6<í38ì/5é05ç47ã77Û64Õ30±7(°6'®6&¬7&¬7&®9'²:)µ:*ÃA3ËA4ÔA7Ü?8â:7ç85í76ð67í6:í6:í68ë76ê86è94ç:4æ;4â92á:2ß:4à;7Þ:8Ý98Û97Û89Ö<:Õ@<ÓB?ÊA;»;2¯6+¥5'ž7(œ;*—<)“<)‘<(:&8$Œ7#Œ6%z@,v5#6'™E;¬OH¬MI©LG¨PLPH–VL“ZO“_R“bT•aV—aW™`W~‹]™©z­½Ž¦·Š¡ts†YN`8/A->3B%:F.=F3;A3:=2;<4<=79:*?@2<>19<1:@49B1?L2Pa=`xFj†Kt“Os—Mq—Lo—No—Pm–Pp—Tq˜Up˜Ro—Pm•Ll–Jn™JoœKqžMrŸNt£Sy¨X|«]w§[mSd”J[„LS|DNw?cZKcZKcZKcZKcZKcZKcZKcZKcZKcZKd[Ld[Le\Mf]Nf]Nf]Nf_Eg`Fh`IiaLiaNi`Oh_Ng^OjaRi`Qi`Qh_Nh`Mh`Mh`KiaLb_P^[LYVGTQBPM>NK<NK:NK:PM<RO>TQ>VS@YVC\YF^[H^]I`aSf^QmWJ†[R­hcÁb`ÄLMÌ@CÔ:<×79Ö74Î70Á9+·>)²D+°H-×7)×7)Ø8*Ù9+Ù9+Ö9*Ö9*Õ8)Ô8)Ô8)Ô8)Ò9)Ò9)Ò9)Ò9)Ò9)¼A2¶>.«:( 7"™5š7 ¢>&¯B-±<*º;*Â:,È8-Ë8.Î:.Ð<0Ò>2ò5<î3:é27ã36â46â46â46ä15ì5:ì39ê38ê5:æ8:Ü66Ñ2/Ç,(®9(­:(­:(«:(«:(«:(¬9&¯7&¸:+Á<-Í?3Ø?7à=8æ:6ê86ì87ï56î66î66í74ë84ê93ç:3æ;3á:2ß;2Þ=5Ü=9Û=:Ù><Ø=;×==ÌA<ËB<ÆA:»<3­7-£5(ž7(š;)–;)“<)=(Œ;(Š9&‰8%ˆ7$‡6#}C/s4"y4$“G:¤RG¡NFžNE¡WN˜UL’XL[NŒ\NŽ^R”`U—aW›bYƒŽd˜¤|©ƒ€Žj]kJDS42@&$2-:&0;*5=.9?3<?6=>6:;3::29:*>?1;=08;09?38A0>K1Pa=ayGk‡Lu”Pt˜Nr˜Mq™Pq™Ro˜RršSršSršQp˜Om—Km˜Ip›LržOt Qv¢Sx§Y{©^z¨_qŸVd’JY‡?]†NVGQzBe\Me\Me\Me\Me\Me\Me\Me\Me\Mf]Nf]Nf]Ng^Og^Oh_Ph_Pg`Fh`IiaJjbMjbMjbOjbOjbOjbOiaNh`Kh`Ih`IhaGibHjcGe`Mb]J^XHXRBSM=MJ9KH7IH6KJ8LK9LM;NO=PQ?QTASVESVEYYM]WKcQEzXN¡ha¸eaÇUUÛORÞ=Cã8>à67Õ62È:.¹@+­E*¦I*Ô7(Ô7(Õ8)Ö9*Ö9*Õ9*Õ9*Ô8)Ô8)Ò9)Ò9)Ò9)Ò9)Ò9)Ò9)Ñ:)¼@4µ=/«<+ :$—7’6š<#¦B*°C.¹@/¿;,Ã7*Å2(Ë4+Ó:2Ù@8ó1<ð2<î5=ë8>ç:>å;>ä:=ã9<á48ä5:å8<ä;>Þ;<Ò86Å1-¼-'«<+«=,«>*©>*¨=)©<(©:'«8%¯6%¹7)Å;.Ñ=3Ù<5à;7ä;8è;7ð75ï75ï75î84ì94é;4è;4å=4â>5à?7ÞA:ÚA;ÙA>ÕA?Ñ??Ñ??¾B:»@8µ<3ª8-¡5(›5'˜8(•<*‘;*<)Š<(‡:&†9'„7%ƒ6$‚5#y<)r3!}:*—OA£YLœRG•OE–VJ”ZN[MŒ[M‹[OŽ\Q”^T™`Yœa[s}Xyƒ`r|ZU`B9F,/;'0;+1;03=44;35<4:?8?B9?A6<<277+89)>?1:</7:/8>27@/=J0O`<ayGk‡Lu”Pu™Os™Nq™PršSp™Sr›OrœPq›Oo™Mn™Jp›LsžOu¡Ry¥X{§Z|¨]x¦]qŸWg”O]ŠEVƒ@`‡PY€ISzCg^Og^Og^Og^Og^Og^Og^Og^Og^Og^Og^Oh_Ph_Ph_Ph_Pi`QjbOjbOjbOjbOiaNiaNiaNiaNiaLh`Kh`Ih`IhaGhaEhaEhaEf_Le^Kb[H\WDWR?PM:LI6IH6GH6GH8GJ9GK:HL;IM>HO?HO?PPDVRGYOChREYM˜UL³RLØXWàGJç<Bå79Ý54Ñ:1¿@-°D*¥D$Ò6'Ó7(Ô8)Ó:*Ó:*Ó:*Ó:*Ó:*Ò9)Ò9)Ò9)Ñ:)Ñ:)Ñ:)Ñ:)Ñ:)½?3¶</¬=,£<)—9 6”:  B)¬C-¶A/¿=/Â6)Â/%È/'Ð6.Ú=6ð0;ð5>ï:Aì?CæBCáACÞ@AÚ>?Ï12Ñ56Ô::Ò<;Ê;7¾73µ4.¯3+¥>+¥>+¥>+¦?,¥>+¤>(¥<'¨;'ª7$²7'¼8+Å8.Ì8.Ö92Þ<7ä?;î85î85î84ì94ë:4è;4å=4â>4âA7ÝC9ÚC<ÕB;ÐA=Ê?<Ç=;Ã<9®>3©:/¢8+œ6(˜7'”8)‘:)Œ;(‹=)ˆ=*…<)ƒ:'‚9&€7&6%~5$v4$x5%…B2˜UEœXK“QCPD•ZL’ZM[NŽ]OŽ\Q’\R•\U˜[V™\W`hCX_=JS4>G,6?*2=-4>35?74=88>:=B<CF?EG<CC7@>/;9*78(=>0:</7:/8>26?.=J0N_;`xFk‡Lu”Pu™Os™NršQršSp™SqœMrNqœMp›LošKrNu¡Ry¥X«`~©az¥]qœUf‘L_‰G[ˆE\‰Hb‰RY€ISzCh_Ph_Ph_Ph_Ph_Ph_Ph_Ph_Pg^Oh_Ph_Ph_Ph_Ph_Pi`Qi`QmcWlbVjaRi`Qh_Pg^Og^Mh_NiaNiaLiaLiaJh`IhaGhaGhaGh`Kg_Je_Ib[H\WCUR?PM:ML:EF4DG6DH7BI9BI9BJ;BJ;BJ;JJ@QQERPAUN<bM:qF6“I>ÄYSÛQOãCEå8:ß55×:3Ê>/¸>)¬<$Ï8'Ï8'Ð9(Ò;*Ò;*Ò;*Ò;*Ò;*Ñ:)Ñ:)Ñ:)Ñ:)Ñ:)Ñ:)Ñ:)Ñ:)½=2¶:.­<,¥>+˜9#Œ59ž@' :$¯<)¾?0È;1Ì8.Ñ7/Ù<5àA;ð;Bï>FëBGãCEÖ@?Ê;7À50»1.·0,¼51¾:5»<6³:2©9.£9,¡9,Ÿ>+Ÿ>+ ?,¡@-¡@-¡A+£>*¤=*©<(­:(²7(¹5)Á4*Ë80Ö?8ÝD>é:5é:5è;4è;4ç<4ä=4á?4Þ@5ÝC9ØD:ÒC;ÊA9Ä?:¼;6¸85´73ž9-™7*•5'’6'‘:)<*‰:)„9&†=*„=+=*€<)~:'|7'{6&{6&y1#€8*ŒG8–RE’PB‹K?ŽSE™_SXKZN’\R–]T—\V˜[V˜YT—XSV^7EM(6@8A&>G2<D53=2-7/1737>7@E>GJ?GI;BC1?>);;#78(=>09;.69.8>26?.<I/N_;`xFj†Ku”Pt˜Ns™NršQršSp™SqœJqœLpLoœKo›LržOw£V{§\‚­e€«dx£^j•P]‡EYƒC^ˆHeOcŠUZLSzEi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qj_Yj_Yj`Wj`Wj`Vj`Vj`TjaRjaPjaPjbOjbOjbOjbMjbMjbMg_Jg_Jf^Ie_Ib]I\WCSP=ML:HI7EH7AE6>E5>F7?G8=H8<G7HJ=HL>AE4HK6YS;_F0€K9Àj]Ýf`åSSçDEè@@ã?=Ö=5É=0Â>/É3$Ë5&Ì6'Í7(Í7(Î8)Ñ;,Ó=.Ò<-Ò<-Ò<-Ò<-Ñ;,Ñ;,Ñ;,Ñ;,¸3,·7.±;-¦;)˜8"‘7’8š:"«B-±<+¹7)Á4*Í6/×<7âC?êHCëBGéDHÝCCÉ:6»61´80®8.§5+ª:/¨9.¤8. 8-›9,–:+’<+>-˜=*˜=*™>+š?,›@-œA.žB-¡@-¡<*¥:(«7(°6)¶6+¾8-Å;1Ê=4ß:4á<6â?6ã@7âA7ßA6Ú@4×@5ÚG=ÒE;ÇA6»;2±6.ª3-¤1,¢1+”;-’:,:+:*‰:)ˆ;)…<+„=+~:'|9(|9({:({:(z9'x6&w4$z, A4˜NC“MAŽL>RE‘VHŽRG˜\R˜\R‘UMTL™ZU—XS–WR `^R[0IQ(AK&BK,>H/7@-2=-4>34;3HPEX^RW[LLO<DF.AA'==!:;+>?1;=0:=29?34=,;H.Pa=bzHlˆMu”Ps—Mq—Lp˜OršSqšTpJqžKrŸLrŸNsŸPv¢U{§\ªb‚­fx£^i”O_‰G]‡G`ŠJfŽOhRd‰U[€LTyEi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qj^^j_]j_]j_[j_Yj`Wj`Vj`Vj`TjaRjaRjaRjaRjaRjaRjaRj_Kh`Kg_Jg_Jd]J^YEUR?ON<IJ8EH7AE6>E5?E7>F7>F7=E6BF8>E5=F1DN5HK0PB'yS<¹ubÉdXà_YíUTêFGä>>â@=Û>9Ñ82Ì:+Î<-Ï=.Ð<.Ï;-Î:,Í9+Í9+Î:,Î:,Î:,Ð:,Ð:,Ð:,Ð:,Ð:,È?9ÆA:½A7®=/6#•2•2™3¦5#²7(Á;0ÑA8ÞE?æIDéJFìJGÞBCÛEDÎC@¼;5®9/¨>1¢A1œ?.œ@1™@0–>0’?/Œ?-ˆ?.„A.ƒB.‘;*‘;*’<+“=,”?+”?+–?,™>+Ÿ@.¡=-¤:,§9*¬8+±8-¶:0¹:1Ð90Ò;2Õ>5ÕA7×C7ÖD7ÔD9ÑE8ÊB6ÃA4¹=1°:0¨8-¢5.5,œ5.Ž=,Œ=,Š;,ˆ;+†:*„;*<,€=,~;*|;)y:)y:)x9(w8'u6't5&„1)‘C9˜NC‘K?ŒJ>PD’TIRG“SJšWQ˜UO™UR\X”WTŽSO—\XT]0Zc8_j@[eBIT66C)4@*<G6MXGYbQ_fTW\FJN5BE*?@!<=9:*=>0:</9<1:@45>-;H.Pa=c{IlˆMu”Pt˜Nq—Lq™PršSqšTq¡Kp LpJqžMt Qx¤W|§_ªc{¦aošUcŒJ]…Fa‰JeNeNc‹Ld‰U[€LTyEi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qj^`j^`j^^j_]j_[j_Yj`Wj`Vj`Vj`Tj`Tj`Tj`Tj`Vj`Vj`VlaMk`LiaLiaNf_La\I[VCTQ@ML:HI9DG6AE6AE6?E7>D6=C5=F57@-?H3EM5AA%QA']E³u`³WHÙbZðebîRSéEFìFHèBDÝ79È9+É:,É:,É:,É:,Ê8+È6)È6)Ê8+Ë7+Ë7+Ë7+Ë7+Ì8,Ì8,Î7,Â3/¾5/¸5-¬3( 0"›0Ÿ1 ¥4$»A2ÇC7ÖG?ãKFçLGéJFåFBâC?ÕCCÏDAÁ@:°;1£=/žC1™F4•G3’E3E2ŒC2‰B0ƒB0B/{B.xD.Š8*‹9+‰:)Š;*‹<+<+Ž=,<*–?.–=-›;+9* 8+¥9-©:/«;/¼7.¾90Á;0Ä>3Å?3Æ@4Ä@3ÁA4¸:,²:,ª9+£7+7+™7,–8.–91‰=-ˆ<,…<+„;,‚:+€;+<+<,};+z;*z;,w9*v8)u7(t6's5&Œ91”F<—MBŽJ?ˆH<OD‘SH”QI“NGšSOšSOšVSœ]X“YUZT—f_wƒS~Š\€‹`lxPJX46D#=J.MZ@eqYeoW\fMNW<DJ.?D&=@!:=89);<.8:-9<1;A56?.<I/Pa=c{Im‰Nv•Qt˜Nr˜Mq™PršSp™Ss£Mp LnLpŸOu¤V{§\}¨`|§bošUfM\„E\„EdŒMhQeN_†GcˆUZLSxEi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`QjaRjaRjaRjaRjaRjaRjaRjaRk_ak__k__k`^k`\kaXkaWkaWkaUkaUkaUkaWkaWkaWkaXkaXncQmbPjbOjbOhaNe^L_ZGYVERO>MK<GH8DF8CE7AE6@D5>B3;I27C-EJ3IG0K<%mN9—dO§`NŸA5ÆSLçc_ð^^îRUíJMêDHç>CÉ;/Ç9-Å7+Å7+Ç9-Ê:/Ë;0Ë;0Ñ>4Ñ>4Ñ>4Ò>4Ó?5Ó?5Ó?5Ó?5Ó?=ÑB>ÍD>ÆF=ÁG<ÂI>ÆN@ÎPDÙSJÞOGäLGäIEåFCâC?àA=ß@<ÔFDÊC?º?7«<1ž>.—D2“H3‘J6‹G4ŠF3‡D3„C1B0zA.wC.uB/†8+…9+…9+†:,†:,‡;-‡;+ˆ;+‰:+‹:)Ž8)8*•9,™<-=/ž>0«9/­8.®9/°:.°:.²:,¯9+®8*¨7)¥7*ž7(›6*•7+’8-9/;0†=.…<-ƒ;,9*:+~9*}:*};-|:,z;,y;,w9,s8*q6(q7)q7)B8”G=‘K?ŠH<‡I<‹OD“UJ—TL—PLSP˜QO–RO—\X_Xh^žzn™k…’fu‚VYh=CR)?O(P`<crQetS\iKNY;CL/?E)>B'=A&;>#78(:;-79,9<1;A57@/<I/O`<ayGlˆMv•Qu™Os™NršQršSp™Sq¡MoŸKožMs¢Rz¨]|ªaz¥^u [bŒJ^†G[ƒD_‡HgŽMj‘PfL`‡Fb‡TY~KRwDi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`QjaRjaRjaRjaRjaRjaRjaRjaRk`^k`^k`\k`ZkaXkaWkaUkbSkbSkbSkbSkaUkaWkaWkaXkaXocSnbRmaQkbQkbQhaOd]M`ZJVSBRO>MK<IG8EF6DE5BC3@A19K1>H/JH1Q?+e>-”ZL¬`S›>6œ4+µ@9ØXUóigödeëRUèINìKQ×J@ÓF<Í@6Ë>4Í@6ÒD:ÕG=×G>ÚJAÚJAÝJBÝJBÞKCßJCàKDàKDëRTéSTãTPÜSMØSLØSLÛTNàUNàLHâHFäEBäB@äB@äB@ãEBãEBØJHËD@¹>7ª>2žA2–C1F3I6‰F3‡D3†C3ƒ@0@1}?0y@/x@1ƒ9.ƒ9.‚:.‚:.ƒ;/ƒ;-ƒ;-ƒ;-9*‚9*…9+‡9,‰:+;-<.=/›;/œ:/ž9- :.¡9,¢8*¢8*¢8*Ÿ8)œ8)˜8(”8)9*Œ:,ˆ:-‡;-ƒ;-‚:,9+~9*}8)}7+|8+{9+z8*y9-x:-t9+q5*o5)q7+r:-G;ŽH<‰I=„I;…K=ŒRF“WMšWO˜QMžTQ™RP•VQ’`YˆbW‚h[ŠwhivKZi>JY.AR&IZ0Wi?dvLj|TXjDL\8?M,:D)<D,>C-=@-:=*89):;-68+8;0<B67@/;H.L]9^vDi…Jt“Ot˜Ns™NršQs›TqšTmŸJmžLp¡Px§Y|ª_z¨`rXi“QYƒC\„E`ˆIeŒKgŽMgŽKfJd‹Hc…SY{IRtBi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`QkbSkbSkbSkbSkbSkbSkbSkbSla[lbYlbYlbXlcTlcRldQldQldQldQlcRlcTlbVlbXlbXlbYocSnbRmaQlcTlcTkbSg`Pd]M]WGYSCSM=MJ9KH7HE6DB3B@16J.>H-NC-b=-„D:¯VP¶MJ¡++´:9º=;ÑTPòpnýwvñehêY^ò]cáVOÚOHÒG@ÎC<ÑD=ÔG@ÖGAÖGAÙHCÚIDÚIDÝIEÞJFÞJFàKGàKGãGJáGIÝGHÙGG×HD×HDØGDÝEBàBAåABé@CêBBèBBäB@ßA>ÜA=ÚJIÌB@»<6®>3¢@3—A2B0D3‰A2ˆ@2ˆ>1…=1‚<2€<1=1}=1ƒ:3;3;1;1€<1€<1=/=/=/€</€=-€;,€;,9+9+8)Œ:/9.9/“;/—;.š=.=/ž>.™9)•9*“:*Ž;+Š;,‡;+ƒ;,€;+‚:,9+7)~6*{5){5)z6)z6+x6*x8,w9.s7,o5)o5)r:-u=0ŽL>‰K>„J<‚M=…QC‹VH’XM—WN”MIœRQšTR•[We\y_PcXFb]IBP,?M)?O(K\2_qGk~QcyKVk@M_7@R,6E&7D*=F1=D4:=27:19:*:;-68+8;0<B67@/9F,IZ6Zr@eFr‘Ms—Mr˜MršQs›TqšTlKo Os¤Ux¨\z¨_s [i“Q`ŠJX‚B^†GdŒMgŽMfJeŒIgŒGhHaƒQXzHQsAi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`QkbSkbSkbSkbSkbSkbSkbSkbSlbXlbVlcTlcRldQldOldMldMldMldMldOldQlcRlcTlbVlbXocUmaSkbSlcTmdUlcTi`Qf_Ob[K^WGWQARL<OI9LF6IC3F@02K+>G*SA+{E9¦NL¸EH»5<¾19Ë@EÄ?@ÊJIÞb`îrpïopçbeáZ^ÛRJÕLDÏD=ÍB;ÏD=ÒE>ÐC<Î?9ÒC=ÓB=ÔC>×C?×C?ØD@ÙEAÚEAà?Dß@DÞDFßFHßIHàJIãIIæFHçACëADîAEîACéAAâ@>Ù>:Ö=8ÛEGË=<»73°;4¦@4˜?1>0ŽA1‰=/Š<0‰;1‰92‡81†93…:4„;4:4:4€<3€<3<3}=3}=3|<0{=0{=0{=.{<-z;,y:+z8*z8*€:0‚:.„:-ˆ:.Œ:.‘;.”<.–=-’9)‘:):*Š;*‡;+ƒ;,<+}<*€8,€8,~6*}5)|4(z4(z4*y5*u3'v6,v8-r6+n4(n5*s:/v@4‹PB†N?N=R@…VF‰XIŽUJ‘RI“NI™RP”SO‘\VŠfZl\LML7BL3@O.KZ9WgC`rJezOdzLVl=G]/AV+7I#0A!5C*=F5<D98=7796:;+;<.68+9<1=C77@/7D*FW3Um;a}BoŽJq•Kr˜MršQtœUr›UnŸNq¢Qu¦Wv¦\s¡Yj—R`J[…E^†G`ˆIbŠKeŒKfJhHf‹EeŠD`‚PWyGPr@i`Qi`Qi`Qi`Qi`Qi`Qi`Qi`QkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcRldQldOldMleKleIleIleKldMldOlcRlcTlbVlbVnbTmaSkbSkbSmdUlcTjaRh_Pd]M`YIZSCUN>QJ:MG7IC3GA13M*>G*[B.PGºVVº7?»'3ÜBNÐ:CÄ9>»;:ÂHGÓ][ßgf×[]ÇILÓJDÏF@ÌC=ÎC>ÒGBÒGBÐB>Ë=9ÒC?ÓB?ÔC@ÕDAØDBÙECÙECÚFDá>Cà?DÞBEßEGáGGàFFàBCâ=AëADí>Cì;Aê<>æ>>ãA?ßD@ßFAÙ@CÉ78¹30±:4§?4š>1=/Ž?2Š;.‹9.‹80‹61Š71Š73‰84‰:5:3:3:3~;3|<3|<2{=2{=2u9.v;-w<.w<.x=-x=-y;,y;,{;1};/~8,7*„6)‡5'‰6(‹5&7(‹8(‹:)ˆ;)…<+<,~=+{<*€8,7+~6*|4(|4({2)y3)y5*t1(u5+v8-r6+n4)n5*t;0xB6ŒTE„Q@P>‚UB„YHˆYI‰SGNG˜SN˜RPPKˆVO‚bUeZHFK4;K0IX;[jKgxVewQYnCSi;Me5I`28M"-B*;2@):E7;B;8<;7;<<=-<=/79,9<1=C77@/6C)DU1Rj8_{@mŒHp”Jq—LršQtœUr›Uq¢Qt¥Vu¥Ys£Ym›Sd‘N\‰HZ„DdŒNa‰J`‡HcŠIfJiŽIeŠDa‡>`‚PWyGPr@i`Qi`Qi`QjaRjaRkbSkbSkbSjaRjaRjaRjaRjaRjaRjaRjaRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcTo\Nq_QtdUrdWnbTj`Th`ShbTgaSebQa^K[VBVQ;TN6NH.GA'RD)N=#cI2iV²zm·ng³[W¸PQ¶BEÁ@EÉ@GÑBFÖDGÚEIÜGIÝGIÔBEÔBE×BDÙEEØDBÒC;ÎD:ÌH;ÄF7ÃH9ÆH:ÊG?ÐEB×BDÜ?FÞ=EâBDâBDâBDâDEâDEãEDãEDãEDâDAâC@áB?â@>ã?=ã?=ã?=å@>ÎE?Ä?8¶:2©80Ÿ:0•>4Œ@3ƒ?2A4|@5}?4<3ƒ:3‡83Š73Œ72…<-…<-…<-„;,ƒ;-‚:,‚:,‚:,9-9-9-~:/~:/~:/~:/~:/~80~80}90}90}90}90|90|90|90|90z:0y9/y9/x8.w9.w9.w8/w8/v7.t8.s7-r6,q5+p6+l2'q7,m4)l3(o6+m4)q8-H=ULƒTL†QK‹PJNJ•NL˜NM—PL”SM‹UK†\NdOkaFTW8JX5N_;gT`zMWpFTkARg@O`<IX7DQ39C*5=&49%7:)=>0CA4B@4@<12:/2:/4:.5;-9=.<?.>A,>D*T^<bqHq…TtVt”UršSsSržQv^¦g¦gq˜YcŠK_†G_†G^…F`‡Hb‰Jd‹LfNeŒMcŠK`‡H^…F_OTvDKm;i`Qi`Qi`QjaRjaRkbSkbSkbSjaRjaRjaRjaRjaRjaRjaRjaRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcTsaSr`RrbUqcVrfZpfZmeZjdXgdUkhYmjYlgThcOd^H[U=RL4PJ0F?%P@)kP;WG„NB‰D=–C?´VT»SR¾PQÂNOÄLMÆLKÅKHÆJHÔRTËFGÄ<<Ç;:ÑA@ÔE?ÏB9Ç>4ÉE9ÈF9ÊG=ÍG>ÒGDØCEÜAEß?GáCDáCDáCDâDEâDEáFDáFDáFDàEAáC@àB?ßA>àA=àA=â@=ãA>ÑFAÉB<¼=6¬:0 90“;/‰=0=0A4|@5}?4<3ƒ:3†91Š71Œ72…<-…<-„;,„;,ƒ;-‚:,‚:,‚:,9-9-9-~:/~:/~:/~:/~:/}90}90}90}90}90}90|90|90|90z:0z:0y9/y9/x:/w9.w9.w8/w8/t8.s7-r6,r6,p6+p6+k1&q7,m4)l3(o6+l3(p7,~H<‚SK„TJˆQJ‹PJ‘PL•OM–PN–RO‹OG…SH€[K{ePsiPhkLdrOgxT\uKXoEPf?Ka:K_:K\:GV7CP4<F-8@)6;'7:)<=/?@2@>2><03;03;05;/6<09=/<?.>A,>D*Q[9^mDmPpŒRr’Sq™RsSsŸRxža|¢exžak‘T`†I]ƒF]ƒF\‚E`†Ia‡Jc‰Le‹NdŠMbˆK`†I^„G]MRtBIk9i`Qi`Qi`QjaRjaRkbSkbSkbSjaRjaRjaRjaRjaRjaRjaRjaRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcTtbTo_Pm]Pm_ToeYog\keYhbVfbVpl`{xi~{jzgzuapiVf`JPV<DF.A?(MB.S@/U8(^6*m=3p7.x71:3‰@9•HBžOH¦WPª\RÁ[W»RO¸FE½A?ÉCBÑFCÓD@Ð?:ÐA9ÐC:ÐE>ÔG@ÖGCÚFFÛEFÝDGáCDßCDßCDßCDàDEßECßECßECÞDBÞE@ÝD?ÜC>ÜC=ÜC=ÝB=ÝB=ÕF@ÎE=ÃC:³>5¢:/’8-ˆ9,<-€A2~@3}?2=1ƒ:1†91ˆ81‹80…<-„;,„;,„;,‚:,‚:,‚:,€:.9-9-9-~:/~:/~:/~:/~:/}90}90}90}90|90{8/{8/{8/{;1{;1z:0y;0x:/x:/x:/x:/t8.t8.s7-s7-r6,q5+o5*o5*k1&o6+m4)k2'n5*i3'm7+}G;†QI‡PIŠQJŽQL‘RM“RN•TP’UPVO‡[P^OtbNoiQnrWjwYfwWPf@K_:EY6BV3EV6GV7FU8ER8?I1<D-9>*7;*:<.<>0<=/:;-5<45<46<26<09=/<>0=@-=C)MV7Zi@h|KlˆNpOq™RuŸSt Sz cw`n”Wc‰L\‚E\‚E\‚EZ€C_…Ha‡JbˆKdŠMc‰La‡J_…H]ƒF[}KPr@Gi7i`Qi`Qi`QjaRjaRkbSkbSkbSjaRjaRjaRjaRjaRjaRjaRjaRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcTtdWqaTm_Rk_SkaWlcZle[jf]jf]wuiˆ„y‘•’Œ|‰‚r€ygZfNLV>AI2CF1ED0D?,I=-TD5M:+O8*R6*T7)X8+];/a?3eA5‹KAœSL­UQ¶NK½EDÇABÓCCÛEF×?>Ø@=×B>ØD@ÙEAÚFDÛEDÛEDßCDßCDÞDDÞDDÞDDÝEDÝEBÜGCÛFBÚE?ØE>ØE>×D=×D=ØE=ØE=ÖC<ÔE?ÊE>»@8§;/–8,‹9+…;.‚@2@1~?0=/;/„:/‡9/‰90„;,„;,ƒ;-‚:,‚:,‚:,9+9-9-9-~:/~:/~:/~:/~:/~:/}90|90|90{8/{8/{8/y9/x8.{;1y;0y;0y;0x:/x:/v:/v:/s7-s7-s7-r6,p6+o5*o5*n4)j1&o6+l3(h2&k5)h2&l6*|F:ŠOGŒPHQIRMSN’UPWPŽYQ‰]R…aUy_PiZGd_IciOZgKN]@EU8AQ4=M0<K.?M3CQ7FR:GS;BK6>G2:A/7>,9=,9=.8<-7;,6=66=66;46<29<1;=/<?,<A*JS4Ve>dxGj†LpOs›Tw¡Uw£T{¡dr˜[e‹N\‚EZ€C\‚E\‚EZ€C_…H`†Ia‡JbˆKa‡J`†I^„G]ƒFY{INp>Ef7i`Qi`Qi`QjaRjaRkbSkbSkbSjaRjaRjaRjaRjaRjaRjaRjaRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcTseXugZsg[mcYjaXle]snhzwp~w† –©¥œ«§œª£™£‘œ”‰v~i`hSLSADK9AJ7>G4>G4BI7GN<FJ9CF5?@0=;,<:+<9*<9*U5(lD8‹PHŸPL°HIÂEIÏDIÖAEÙ>BÛ?@ÛAAÛC@ÚEAÚEAÚEAÚEAÞDFÞDFÞDFÞDDÝEDÝEDÛEDÙEAÚFB×FAÕF>ÔE=ÓF=ÓF=ÓF=ÔG>×@9ÕB;ÏD=ÁB9®>3œ:-‘;.‰=/„?0?/~?0=/<-„:-†:-ˆ:.ƒ;-ƒ;-‚:,‚:,‚:,9+9-9-9-~:/~:/~:/~:/}:1}:1}:1|90|90|90{8/y9/x8.x8.v8-y;0y;0x:/v:/v:/u9.u9.u9.s7/r6.q6.p5-o4,n3+m4+m4+j1(o6-j4*h2(j4*g1'k5+zF;MGNH‘PJ’SLUOŽWPŠZP…ZQ{YMv\OkZJ]UBYXDY^HOYA>L3;G18D.5A+5A+8D.=I3AM7EN;BK8?H5<E29B/7@/7>.5<,4;+5;75<56;56;48;2:</;>-;@)GP1Ra:buGi…Kq‘PuVy£Wx¤Uzcn‘W`ƒIZ}C[~D^G^G]€F`ƒIa„Jb…Kb…Ka„J`ƒI_‚H^GW{KLp@Bf6haQhaQhaQibRibRjcSjcSjcSibRibRibRibRibRibRibRibRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcTmaUndXpf\lcZkd\rmg„|‘‹¥¤ ³²®ÄÁ¼ÉÆÁÉľÅÀºÀ¹±¹²ª¤œˆ‚tfcTPQAEI8=F38E18G45F35F44E36D58D6;E:?G<@H=<6(L</b@7EA£OOÁW[ÎOVÍBI×DJÚDFÝDFÝEBÝEBÞE@ÝD?ÞC?ÞDFÞDFÞDFÞDFÜDCÜDCÚDCÙECÙEA×FAÕF@ÓF=ÐF<ÏF<ÐG=ÐG=Ø=8×@9ÑB:ÆC9¶A7¤>0–=/Œ=.†>/‚?/€>.=-<-ƒ;,„;,‡;-‚:,‚:,‚:,‚:,9+9-9-~8,~:/~:/~:/~:/}:1}:1}:1}:1z:1z:1y90y90x8/v7.v7.v7.u9/u9/u9/s9.s9.s9.r8-r8-q6.q6.p5-o4,n3+m4+l3*l3*h2(l6,i3)f2'h4)e1&i5*xD9’KE’MF“PJTLVO‡XNYO|\Os\Nk[L_XFUTBPS@JQ?@I64@,3<+2;*09(09(2;*5>-9B1<E4?H7=H7<G6:E48C25A-3?+1=)3973954954937:19;0;>-;@*CL/O^7_rDi„Mr’SwŸXy£Wv¢Us–\f‰OZ}CX{A\E]€F]€F^G`ƒI`ƒI`ƒI`ƒI`ƒI_‚H^G]€FVzLJn@Ae7haQhaQhaQibRibRjcSjcSjcSibRibRibRibRibRibRibRibRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcTiaVjbWkdZmf^upjˆ…€Ÿžš°°®ÂÂÀÓÒÐâáßéåäçãàãÞÚÞÖÓ×ÏÌÒº°º¤™˜†zym__YIKL:>F19E1<K8;J79G68D68@57<57947836A3>>2J91`94ˆHH²\_È_dÍVZÐOSÕMOÚLKÜJJàHEáFBãDAåA?ÞDFÞDFÞDFÝCEÝCEÜBBÛCBÛCBÚDCØD@ÔE?ÓF?ÐF<ÏF<ÐG=ÎH=Ý>8Ú?:ÒB9ÉC:¼C8«A4™<-Œ9)‡>-ƒ>.>-€=,€=,<,ƒ;,…<-‚:,‚:,‚:,9+9-9-~8,}9.~:/~:/~:/}:1}:1}:1}:1}:1y:1y:1x90x90w8/t8.s7-s7-s9.s9.r8-r8-q8-p7,p7,p7,p5-o6-n5,n5,m4+l3*i3)i3)g1'k7,h4)e1&h4)d0%f4)uC8•JE“LH“PJTL‰WNYOx[Mp]Nj^N]WGPQAKN=CJ:9B12:+08)36-17-06,/5+/5)17+2:-4<-9D4;F6=H7<I7:G56C/3@,1>*0640641622716929;0:<.:?)?H+KY5]pChƒLs“TwŸYw¡WržQiŒT^IUx@WzB[~F[~F[~F]€H_‚J_‚J_‚J_‚J^I^I]€H]€HUvKJk@@a6haQhaQhaQibRibRjcSjcSjcSibRibRibRibRibRibRibRibRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcToh^ng_lh_tqj…„¡ ž¼¼ºÏÏÏÎÏÑààâòòòúøùû÷öøòòñìéêåâïÍÃàÀµÅ©¥€sbaZGML7CH2AI4AH6BF7BD7C@9D<9C98C772?5;@9@93H/+c76QR³giÇmmÂ[\ÉYWÑUS×QNÝKKåGFèBBê@AÞCGÞDFÞDFÞBEÞBEÝADÜBBÜBBÜDCÙCB×C?ÔC>ÒE>ÐE>ÏF<ÐG=â@;Ý@9Õ@9ÌC9ÀD:°B5›;-‹5&Š=-…=.>-€=,€=,<,ƒ<*„=+‚:,‚:,€:.9-9-~8,}9.}9.~:/~:/}:1}:1}:1}:1}:1{;2w;1w;1v:0u9/t8.s9.r8-q7,r8-q8-p7,p7,n8,m7+m7+m7+o6-o6-n5,m4+j4*j4*i3)h4)f2'k7,h4)c1&e3(b0%e3(uC8”JG“NIQJ‹TM„XOzZMq[Mh\LXUDHK:=D4=E69A208+/7*5=056157257247005.06,08-19,6A3:E5=J9>K9;J77F12A,0?*.42.420511605818:/:<.:?+<E*IW4[nAg‚Mr‘UvZuŸWo›Pb…MX{CSv>WzB[~FY|DY|D\G_‚J_‚J^I^I^I]€H]€H]€HSsJHh?>^5icSicSicSicSicSicSicSicSicSicSicSicSicSicSicSicSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUmdUmdUmdUmdUmdUmdUfc\gd]vsn“’Ž¯¯­ÄÆÅÚÛÝìíïóôöö÷ùüüþÿÿÿÿþÿÿûúüööùôñÿÞÏöÖÇãÈ·É´Ÿ­ž‡ŠƒicbFGG-EG/DF0GD3IC5H;3F42G34M797@;;@:@;8G85cGF‘kjŔ譩ҋ‡ÇtnÀ]XÆSNÖNNâIKëEIðCGÜFHáHKÜCFÕ:>Ø>@âFIàDGÖ:;Ú@@Ú@@ÙA@ÖB>ÔC>ÑB<ÏB;ÏB;ãA<Ý@9Ô?8ËA7¾B8°@4;.8*‹>.†>/‚?.>-€=,<+=*=*9-9-9-~8,~8,|8-|8-|8-}9.|90|90|90z:1z:1z:1z:1x=5w<4v;3u:2t91r7/p7.p7.o6-m7-m7-m7-m7-l8-l8-l8-i2+m6/p92o81k4-g2*g2*h3+e0(i7.d2)^,#`0&_/%b2(p@6’LJOKŠQJ‚QJ}YMv_QfYIRO>CF5=F58C35@02=/3;04:04:077577566446135016/05..6+.9+2=/6C29H5:I68G42D./A+,20,2.-2..3-36/780:</:?+6>&DR1YkCh‚Ru”[wž_r›Wj•N\}HXyDTu@Tu@WxCZ{F[|GZ{F^JbƒNbƒN^J\}H_€K`L^JTrNFd@:X4icSicSicSicSicSicSicSicSicSicSicSicSicSicSicSicSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUmdUmdUmdUmdUmdUmdUed_onj…†¤¤¢ÁÃÂÖÚÛêîï÷ûþ÷ûþøüÿüýÿþþþÿþÿÿýüÿüùÿûøÿïÚüêÒîÞÅØͱÀ»¤£„‚ƒcgkJMP1II/EC,HA/J>2L93M85Q99;;9BA?MHE\RQyjg¢‹Ì³®åÇ¿ÿÙÏ괪̃|Àc\ÌVTÛPSãFMâ=DÕEEÕEEÙGHÞIKÛEGÖ<>Ö<>Ü@CÚ>?Ù??Ú@@ÙA@ÖB>ÓB=ÒA<ÐA;ß@:Û@;Ô?8ÌA:¿C9±A6 ;/‘9+Œ=.‡>/ƒ>.>-€=,<+€=,<,9-9-9-~8,}9.|8-|8-|8-|90|90|90z:1z:1{;2{;2{;2v=4u<3t;2s:1r90p7.m7-m7-m7-l8-l8-l8-l8-j8-j8-j8-l5.n70n91n91l7/i4,g2*e3*c1(e3*_/%^.$b2(^.$`0&n?5„IEˆQLˆWRWOrVKdRDQJ:>?/:A16A14A02>02<14<15;17:388677577557446116005./7,.8-1<.4A07E49H58G44E22D.062.40.3--2,14-45-8:-9=,7?'DQ3YkEh‚Sv”`wbp˜YfNZzHWwETtBTtBVvDYyGYyGYyG[{I_M_M\|J[{I^~L^~L\|JTmOF_A9R4icSicSicSicSicSicSicSicSicSicSicSicSicSicSicSicSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUmdUmdUmdUneVneVneVddby{x—™˜²¶µÍÑÒäéìôùüúÿÿûÿÿûÿÿûÿÿýÿþþþüÿÿûÿÿúÿÿúÿüßúùÛïðÐáåÄÒØ´¼Äž©‡’j`hCRW7DG,EC.KD4MC9N?8L=8C:;SJKi`a€xv›“¼µ¯×ÐÈçÝÓúêÝÿôéÿåÛ画Äec¸ACËBIáNVÚVRÒLIËDAÎBAÔFE×EFÙCDÛBD×=?Ø>>Ù??Ø@?×A@ÕA=ÓB=ÒA<Ü?:Ù@:ÔA:ÍD<ÀD<²B7¡<2“9.Œ=0‡=0ƒ>/>.€=-<+€=,€=,9-9-9-}9.}9.|8-|8-{8/}:1}:1{;2{;2{;2{;2{;2{;2t;2s:1p:0o9/n8.m7-k7,k7,l8-l8-j8-j8-j8-j8-i9-i9-n91m80m80m80m80i7.f4+c1(c3)a1']-#_0&c4*\-#_0&sD:OK‚UPXQqSK^J?OC7?<-37(2:+/<+0<.2=/4<15;17:37:388688668557257227016/08-.8-0;-2?.6C27E48G48G48G46=53:2/4-,1*.1(13(57*6:)6>'DQ5[lHk„Zy–fwœfl”X^‡KWwEUuCRr@Rr@TtBVvDWwEWwEXxF[{I]}K[{I[{I]}K\|JXxFPfOAW@3I2icSicSicSicSicSicSicSicSicSicSicSicSicSicSicSicSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUmdUneVneVneVneVofWgklƒ‡ˆ£§¨¹¾ÁÐÕØåíðóûþõýÿùÿÿûÿÿüÿÿüþûýþùþýøÿþ÷ÿÿöóÿâñÿÞëùÖäòÎÛêÃÌÛ²³Â™ ¬„}‰cdnKLS4EI0HJ5KI:GE9D@7QEEk__‹€¤š™µ°­ÊÇÂÜÜÔççÝ÷óèÿýñÿøíÿÝÕú·±èŽŽÌbd±>CÃPIÉTMÉOJÃF@ÊFBÔMJØJIÑ??Ò>>Ô>?Õ?>Ö@?ÕA?ÓB?ÓB?ÒC?×>8×?:ÒC=ÌE?ÀE>±B9¢=5•;2Œ<1‡=0ƒ=1=0=-~<,€=-€=-~:/~:/~:/}9.}9.|8-{8/{8/~;2|<3|<3{;2{;2z;4z;4z;4p:0o9/o9/m9.l8-k7,j6+h6+i7,i7,h8,h8,h8,h8,h8,h8,o:4j81h6/i70j81j81e4-a0)e4-b1*].&a2*b3+Y*"_3*zNE~]XvWRiNGWC:J<3@:.:;-8<.08)/:,1<.2=/5=25;169078079468368349338138119.19..9+/:,1<.2?.5B18E4:I6;J7;C87?428.-3)-0%/1&24'48)4<'ER8_pPr‹d}šnwœifXT}EUrBTqASp@Sp@TqAUrBVsCVsCWtD[xH]zJ\yI^{K_|L\yIVsCK\J<M;.?-gdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUmdUneVneVofWofWpgXmru‡Œ¤©­·¿ÂÍÕØãíïòüþôþÿøÿÿøÿþúÿüûÿúûþõúüñùùíù÷ëòÿçñÿäîÿßëúÙçõÒÝéÅÈÒ­´¾™œ¤|ƒbX_@GL5DL7DK;AG9>D8f\Z†|z«¡ŸÁ·µËÃÁÕÐÍãâÞîïé÷øðùöíüòèÿóéÿóíÿäß즤´if«K=³QDÁYNÇ[QÆQH¿D=ÂA<ËD@Ë@=Ï?>Ð@?ÑB>ÒC?ÒC?ÑC?ÑC?Ö>9Ô@<ÒD@ÉE@½D<¯@9 >5•<4Œ<3‡=2ƒ=1=0=/~<.=/€</~:/~:/~:/}9.}9.{8/{8/{8/~;2|<3|<3{;2z;4y:3y:3y:3m80m80l7/l7/k6.h6-h6-h6-h8.h8.h8.h8.g8.g8.g8.g8.k92h6/f4-g5.i70h70e4-b1*b3+b3+_0(_0(]1(V*!b6-SJn[U`OHN?8A7.=6,;9-9;.7=12:-3;.4</6<06<07:167/56.49249238139/39/2:/19.19,.9+.9+/:,0;+2?.6C29F5;H7=E6:B35;-06(/3%/1$13&15&29'GS;dtWwm~šrq•g\‚QIq?Qn>Qn>Qn>Qn>Qn>Qn>Sp@Sp@WtD[xH]zJ]zJ_|L_|LZwGQn>ESF6D7(6)gdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUneVneVofWpgXpgXpgXinrz‚…“š «´¹ÄÍÒÜåêì÷ùôþÿôþýöÿüúÿúûÿ÷ûþóøúìõöæòóãòþêôýèôüåóøáòöÛëëÏØ×¹ÅÄ¥±°’ŽregOMP;EL:EM>EODGSG~zqŸ›’ƽ¸ÙÎÌáÓÒçÛÛôêéü÷ôðïëûüöÿÿöÿþôÿúñÿôêÿçÞÿÚÒß‘}·fS¢K:²UF½WKµF;·@8ÈKEÇC>ÊC?ÌB?ÎC@ÎC>ÍD>ÍD>ÌC=Ô@<ÒC=ÎE?ÅD?¸A;ª=8ž;5•<4Œ<3‡=4ƒ=3=2=1~<0=1=/~:/~:/~:/}9.|90{8/{8/{8/|<3{;2{;2y:3y:3x92w81w81m80l7/j8/j8/i7.i7.g7-g7-g7-g7-f7-f7-f7-f7-f7-d8-i70h6/g5.f5.g6/h70g6/e6.a2*e6.^2)\0'`4+a5,i=4|PGQJBE>6:6-85,99/8:/47,36+4:.5;/5;/69.69.68-57,46+19,19,19,19,19,19,19,19,08+.9+.9+/:*0;+3>.6A17B2<E4:C28?/5<,37)24'13%04%07%HT>gw]umv‘nf‰_RwKAh;Mj:Nk;Pm=Pm=Nk;Nk;Ol<Qn>VsCZwG]zJ^{K_|L_|LVsCLi9=H@/:2#.&gdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUneVneVofWpgXqhYqhYcjpmtz„’£¬±¾ÉÍÓÞâåðòðüüòüûõþùøÿ÷úÿôüÿòúýìøùçöøãööìù÷ëúöêýöæÿôâøëØçØÁÖƯÀ±šŸ“}vn[ZWFOQCQWKYcZbme–˜‹²²¦ÕÎÆêÜÙõããüéëÿñôÿ÷ùÿýýýþùøûôõûñúýòÿÿóÿÿóÿÿñÿãÊ¹q[¨WD¬SCµQB¹MA¿JAÂG@ÆE?ÉE@ÊE@ÊE>ÉD=ÈC<ÈC<ÒC?ÒD@ÌEAÂC=³=9¦;5œ;5•<6Œ<5‡<6ƒ=5=4<3~<0=1€<1~:/~:/~:/}9.|90{8/{8/y90{;2{;2z:1x92w81v70v70u6/k90j8/j8/j8/j8/h8.h8.h8.g7-f7-f7-f7-d8-d8-d8-d8-h6/h70i81i81h70i81j;3l=5g80k<4b6-a5,oC:xLCtI@uJA:=647036/7:18;247.14+25,58-58-57,46+46+46+46+46)/7(08)08)08)08)08)08+08+19,08+08+/7*08+19,3;.4</9B/:C0;B0:A19=.68*24&/3$29'IU?eu[m„ghƒbWyTInE>e9Jg9Li;Nk=Nk=Li;Li;Mj<Ol>UrDYvH[xJ]zL^{M\yKQn@Eb47@;+4/!*%gdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUneVofWpgXpgXqhYriZhowmt|‚‹’¥®µÂÍÑÔßãäïñòþþóýüôÿùöÿ÷úÿôüÿñýÿíýÿêýÿêÿöñÿøóÿ÷ïÿ÷íÿöëÿïáöÜÍäʹƯ§”ƒ€sce]P[YM_bYovo|…€¦­¾À³ÚÖÍñãàÿìíÿñôÿñ÷ÿñ÷ÿ÷ûûúøøÿøøÿúôÿõîÿïòÿï÷ÿóÿñÖÿðÖÿÈ°Å}g¢O=®Q@¸RD³C8ÀIAÄH@ÇF@ÇF@ÈE=ÇD<ÆC;ÆC;ÓD@ÐE@ÊE@¾A=±;7£74š93•<6Œ<5‡<6ƒ=5=4<3~;2<3=1~:/~:/~:/}9.|90{8/{8/y90z:1z:1y90w81v70u6/u6/t5.k90k90j8/j8/j8/i9/i9/h8.f7-f7-f7-d8-d8-d8-d8-d8-f5.i81l;4k:3j92j92m>6qB:n?7pD;g;2g;2SJŒaXTKpE<6=52913:27<5492/5+25,9<345-35*24)13(13(35(46)57*,7',7'-8(-8(-8(-8(-8(/7(19*08)08+/7*/7*/7*08+08+7@+9B-=D2=D2=A29;-35'/3$3:*JVBcr[f}a\wVLnICgA=c:He7Kh:Nk=Nk=Kh:Jg9Li;Nk=TqCWtFZwI[xJ]zLZwINk=A^05;9*0.!'%heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheTheVhdYkd\kd\md]meZmfVg`MjeOnlWnl]ff^eeeqqy‡‘“–ž¡«³¶ÃÈËÙÝàìíï÷÷÷ûùúþýûÿþúÿÿûýþøûüöùüóúýôùÿõùúõùúôøúïúûëûýèöùÞäçÈÒÖµ¶¼š”›ymvW\fK`lTq~lƒ‘€žŽ··µËËÉââàïïíôôòøøöúúøùù÷þþüþþüþþüþþüþþüþþüþþüþþüæÿÿðÿÿûÿÿýïîЪ§ a\™D=¸MEÄKBÈC:ÊA7ÎD:ÑH>ÏJAÉI>ÆG>ÁJ2¿K4¹L5¯K4 H2”F2ŒE3‡E5‚D5C6€@4‚>3…;2‡9/Š7/6-~:1~:1}90|8/{7.z7.y6-x5,w7-w7-x8.x8.v8-u7,s5*q3(h91h91h91g80h70g6/g6/g6/f5.h6/i70j81i70h6/f4-g2,k1-k4/n70m80k9.j:.i>.iB1dC2gJ8aJ8raOyn\ƒ|j…‚qOL;4:04:04:039/39/39/28.28.17-17-17-06,06,/5+/5+/5+/4./4./4./4./4./4./4./4.05//4./4..3-.3-/4./4.05/0;32=55A77C98D86B64@22?.3@.DQ=WeN\jSSaHHV=DR8FT:Ic>Ke@Ke@Ke>Je<Je<Lg>OjAUpGYtK\vO]wR]wTWpPHaC8Q3).2&+/$)-heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheTheVhdYkd\kd\md]meZmfVjcPlgQmkVlj[gg_lll~~†’ž§±³¹ÁÄÏ×Úâçêðô÷ûüþÿÿÿÿþÿþýûÿþúÿÿûþÿùûüôøûòøûò÷ýóøùóøùñøúíøùéùûåòõÚáâÃÌЯ´¸—‘–vkrSYaI_kUtoŒ˜Š›©œÀÀ¾ÓÓÑççåóóñ÷÷õûûùüüúûûùþþüþþüþþüþþüþþüþþüþþüþþüîÿÿôÿÿüÿÿÿüúÿíêñ¿¸Ã}u¢J@³K@»J<ÅK>ÈJ>ÄD9½=2¿?6ÃD;ÂH3ÃJ7½M9³J7¦G5™C4D6‹F7ƒC7C8A7>5‚<4„:1†91‡81}:2}:2|91z:1y90x8/w7.v7.u6-v7.t8.t8.t8.r6,p4*o3)i81i81i81h70h70h70g6/g6/e3,e3,g5.h6/j81j81j81k92k60l71m80l:1k;/l>1j@0iD2hG6kP=gR?ufSvd‹†s†ƒrML:4:039/39/39/28.28.28.17-17-17-17-06,06,/5+/5+/5+/4./4./4./4./4./4./4./4.05//4..3-.3-.3-.3-/4.05/-80/:21=34@66B66B66B45B16C1CP<P]IR`IIW>AO6BP7FT:Ic@Jd?Ke@Ke>Ic<Hc:Id;Je<SnEXrK\vQ]wT[tTTmOC\>3L/).2',0$)-heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheTheVhdYkd\kd\md]meZmfVmhTmhRmkVjk[jkcvxw‘‘™¨ª¶¾ÈÊÓÛÞêòõ÷üÿüÿÿþÿÿÿÿÿÿþÿþýûÿþúÿÿúýþøúûóõøïóöëñ÷ëô÷îöøíöøêö÷åõ÷áîîÔÛÛ¿ÉÊ«°±’“–yuy^kpZt{iˆ§œ¬¶­ÎÎÌÞÞÜïïíøøöûûùþþüþþüýýûþþüþþüþþüþþüþþüþþüþþüþþü÷ÿÿùÿÿþÿÿÿüúÿúôÿöíÿÑÄÙž•L=§Q@¬K;ª>1¸G9ÑXMÐTJ¾?6ÆD6ÇH9ÄJ=¹I=ªB7?5•A7’E=‡A9„A9@:>8~>5<4<4€;4x<2x<2w;1w;1v:0u9/t:/t:/s9.r9.r9.r9.q8-n8,l6*k5)j81j81j81j81i70i70i70h6/g5.g5.g5.g6/h70i81k:3k:3l;4k:3i:0j;1k?2lB4iD2fE2fI7lVAjYEviV†l‘Ž{€mEF439/28.28.28.17-17-17-06,17-17-17-06,06,/5+/5+/5+/4./4./4./4./4./4./4./4./4./4..3--2,-2,.3-/4./4.*5-+6.-9//;12>24@46B47D38E3?L:ER>CQ:;I28F->L3ES:H`>Jb@LdBKc?Ia=G`9F_8G`9RkDXpL]uS^vVZqTPgK=T8,C)).2',0%*.heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheTheVjcYkd\kd\md]meZmfVniUljSlkVlm]pqi€‚ž¡¨º¼ÈÃÍÏÜäçóûþûÿÿúþÿüýÿýýýüûùÿþüÿÿûÿþùûüôõöîîñæëîãçíáíñãðôåñôãòôßðòÜêêÐÙؼÈÇ«²±•¡¡‡‘“}‘’€œžª­¢¶»´ÀÅ¿ÜÜÚééçööôûûùýýûÿÿýÿÿýýýûþþüþþüþþüþþüþþüþþüþþüþþüüúÿÿþÿÿþÿöòïûôîÿýóÿûíÿõäêı·ƒn”Q>¡P=¸XH¸L?¸D7ÀG<Ç>4ÉD;ÈH?¿F>°?9¢;6š=8–A>?;‡@<@<}@;z?9y@9x?8v?8v=4v=4v=4u<3s=3r<2r<2q;1o;0o;0o;0l:/k9.j8-j8-i7,n72n72m61l71l71k60i70i70l:3j92h70g6/f7/f7/h91h91j?6f>4e=1f>2hC3iE5gF3cG2cJ6hV@k\GskV‡‚nŽzor_9>*28.28.17-17-17-06,06,06,17-17-17-06,06,/5+/5+/5+.3-.3-.3-.3-.3-.3-.3-.3-.3-.3--2,-2,-2,-2,.3-.3-)4,)4,*6,+7-.:01=14@25A36C2:G5<I58E12@)2@)8F/?M4DX<G\=K`ALa@K`?I_;H^:H^:SiEZoN`uV`tXZnSNbI9M4(;%',/%*-$),heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheTheVjcYkd\kd\md]meZmfVlgSkiRnmXop`svmƒ‡†£¨®¿ÃÎÍ×Ùçïòùÿÿûÿÿùýÿýþÿÿÿÿþýûÿÿûÿÿúþýø÷øðïñæçêßâæØÞäÖçëÚêïÛíðÛíïÙîîÖéçÎÚØ¿Îʱ½§¹´ ±®¶´§Á¾µÉÈÃÒÓÎÙÙ×èèæòòðúúøüüúýýûÿÿýÿÿýüüúþþüþþüþþüþþüþþüþþüþþüþþüÿûÿÿûÿÿúúûûùûÿùûÿøüÿôýÿíÿÿìõàËÈœcP–K8§L:¶O@»M>Æ=7ÈA;ÈD?ÀC?´<;©98 9:›==‘==Š>>„@?|A=xA<sB=rC=pC=s>6s>6s>6r=5p>5p>5p>5n>4n>4m=3l<2j;1j;1i:0i:0i:0p62p62p62o51m61m61k60i70l;4k:3h91e90e90e90e:1f;2dB6cA5cC4dD5fG5eH6cH3_I2^L6eV?jbKrmW„ƒn„‡r[`L3;&28.28.17-17-17-06,06,06,17-17-17-06,06,/5+/5+/5+.3-.3-.3-.3-.3-.3-.3-.3--2,-2,,1+,1+,1+,1+-2,-2,,6.+5-*4,*4++5,.8-0:/2=/2=-5@06A05A-1=)1=)5A+9E/=O5AS9FY=I\@J]?J]=K^>L_?TgG\oQcvZbtZYkSK]G6G4$5"&+.$),"'*heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheTheVjcYkd\lc\md]meZlfVlgSljSlnXorasvm…„Ÿ¤ª¸¿ÉÖßäîöùùÿÿûÿÿùýÿþÿÿÿÿÿþýûÿÿûÿÿúüüôóõêëíâãçÙßãÕÜãÓäéÒçìÕéíÖêìÔëëÓèæÏßÚÄÔθÔͺÍƶËøÐÉÁÙÒÌàÛØëååòîïòòðùù÷ýýûýýûýýûÿÿýþþüüüúþþüþþüþþüþþüþþüþþüþþüþþüÿøüÿöùÿýýþÿý÷ÿýïÿøëÿõòÿøëúçÿÿíÿïÛ̧”£lX£ZG­VCªM;ÁA8ÃB<ÃD>¿D?·?>­;;£99œ:;–<<Ž>?…?=}@=wB<pC=mE=lF=q?8q?8q?8q?8p?8o>7o>7n?7o@8n?7m>6i=4h<3h<3h<3i=4r73q62q62p62o51m61l71j81h70g80e90e:1d<2f>4f@5gA6]C4aG8cL:dM;cM8`K6]K3]M4]Q9`Y?miPss[€„mt|eFO:2>(39/28.28.28.17-17-17-06,17-17-17-06,06,/5+/5+/5+-2,-2,-2,-2,-2,-2,-2,-2,-2,,1++0*+0*+0*+0*,1+-2,,6.,6.*4,*4+*4++5*-7,.9+-8*0;+4?/5@/4?.3>-3?+4@,7F/;J3@P6DT:GW<JZ?M]@O_BUeJ^nSdtZbqZXgRIXE4B1$2!&+.$),"'*heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheTjdVjcYkd\lc\md]meZlfVljUllTkmWjn]lrhy}•œ¢¯¶ÀÒÛàëòøùÿÿùþÿ÷ûþþÿÿÿÿÿúù÷ÿÿûþýøùùññóèéëÞãçØáåÖàç×äêÐçíÓèìÑçéÑèèÐçåÎáÚÇ×оÛÒÃÚÐÆÞÔËçÜØîäãóéêúñôÿøýùù÷þþüÿÿýýýûýýûÿÿýÿÿýüüúþþüþþüþþüþþüþþüþþüþþüþþüÿ÷÷ÿùùÿýýüÿÿôÿþêÿûíÿÿíÿýñÿúðûíÿþíÿûèôλ­va‘P:¦^H»I>ºH=ºH>ºG@·F@°C@¦=:97—<;‘=;ˆ>;€A<wB:sD<nF<lH<q?8q?8q?8q?8p?8p?8p?8p?8qB:pA9n?7j>5i=4j>5j>5k?6s63r73q62p62n72l71j81i81d8/d90c;1d>3d@4cA5cA5bB5VG4^O<gVBhWCbS<^O8[O5\R7]V<]Y>mmSsw^z‚jcmU2>(5C,4:039/39/39/28.28.28.17-17-17-17-06,06,/5+/5+/5+-2,-2,-2,-2,-2,-2,-2,-2,,1+,1++0**/)*/)+0*,1+,1++5-+5-*4,*4,+5,+5,,6+-7,,7)/:,2=/6A17B27B25@/4?.2?+5B.:G3>L5AO6ES:JX?M[BTbI]kTcqZ_lXUbPERA2>0#/#(..&,,$**heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVjdTjdVjcYkd\lc\md]lfZlfVomXmmUimVgkZembr{xŽ—œ¨±ºÊÓØäëñöþÿ÷üÿøüÿþÿÿÿÿÿúù÷ÿÿúýýõøøîðòåéëÝåéÚåéØåìÚæíÎèïÐéîÐæéÎèæÏèãÏáÚÈÙÏÃÚÍÄßÒÌìÞÛúììÿôöÿõùÿõûÿøþýýûÿÿýÿÿýþþüþþüÿÿýÿÿýýýûþþüþþüþþüþþüþþüþþüþþüþþüÿüúÿýúÿûøùýüøÿÿôÿÿðÿÿêþüðÿûùÿûÿÿôÿöæÿôßÿãÍ×­”¢sY°SA®Q?®N>°O?±OB¯J@¥C:š<4—<7‘>8‰?6ƒ@7{B7tD6qE8nG8s>:s>:s>:q>:q>:q>:q>:p?:sB=rA<p?:m>8l=7l=7m>8n?9r73r73q73n72m82j81i81f:1f;2d>3d@4bB5`C5]A3\@2[?1QI4[S>f^Gg_H`Y?ZS9ZS7\W:ZV;WW;knSrx^u}eUaI%37E.4:04:04:039/39/39/28.28.17-17-17-06,06,/5+/5+/5+-2,-2,-2,-2,-2,-2,-2,-2,,1++0*+0**/)*/)+0*+0*,1+)3+)3+*4,+5-+5,,6--7.-7,,6+.8-2=/6A39D69D67B46A1/<*2?-5B09F2<J3@N7FT=JXAR`I[iRanZ\iWQ^MBN@/;/!-!+1/(.,&,*heVheVheVheVheVheVheVheVifWifWifWifWifWifWifWifWkeUkeWkdZle]md]ne^mg[mgWqoZkmUkoXkr`jrgozv†‘•Ÿ©²»ÄÉÑØÞèðóöûÿúþÿþÿÿÿÿÿþýùÿÿúþþöúúîöøêô÷æðôãìñÝçïÚð÷ÖíòÒëîÑììÒèæÏáÜÉÝÕÈÞÔÊáÔÎèÚ×òääúëîÿñöÿ÷ûÿùÿÿúÿþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüÿþùÿþùþþüýÿþûÿÿúÿÿøÿÿúÿÿüÿÿÿÿÿÿü÷ÿüñÿýìÿûåÿóÛÿíÑÁe¦cI—O7 T=ªYF¤Q?ŸI:¢L?;0Œ=0‡=0=/x=/t?/rC3sE5s<9s<9t=:s>:u@<u@<t?;q>:s@<r?;q@;q@;p?:o>9o>9o>9n72n72n93m;4l;4j;3g<3d<2c?3^>1dG9cG9T=-O8(M8'D/TR;PN7KI0MK2]Y>ieJeaDVU7XX<]`CosXz€fcmT=I1,:#1?(5;15;14:04:04:039/39/39/39/39/39/28.17-17-17-06,16016005/05//4./4./4./4.,1+,1+,1+,1+,1+,1++0*+0*.5.-4--4-,3,-4--4-.5-.5-+2*-4,08-5=29A6=E:?G<AI>7B25@03>-1<+2>*9E/BN8IU?O[EVbN]hWYdTLWI<F;/90)3*)/-(.,'-+heVheVheVheVheVheVheVheVifWifWifWifWifWifWifWifWkeUkeWkdZmd]md]mf^mg[khWonYjlTjoXkr`jtiq|x‰”˜¡®¶¾ÇÌÓÚàéðö÷üÿûÿÿþÿÿþþüþýùÿÿúþþôûûï÷ùëô÷æðõáìñÛæî×êðÎæëËäçÊææÌãáÌßÙÉÝÕÊßÔÎçÙØíßßöçêýîóÿôøÿ÷ûÿúÿÿûÿþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüúÿùûÿúýÿüþþþÿýÿÿüÿÿúÿÿúÿÿûÿÿûÿÿúùÿüõÿþñÿÿìÿüãúöÛÿéÌß²•§uZ‘[A–ZB›YCœUAšQ>F5F4‰D4…D2}B0yB.s@-o?+v?:t=8u>9v?:t?9q<6r=7sA:q?8q?8q?8o>7o>7n=6n=6n=6l;4m<5m>6k?6j?6h@6eA5cA5dG9[A2^G7\I8N=+F7$G8%A4!IM4GK2DG,BE*MM1[[?abC`aBYY=dgJsw\sy_X`H8D,/;%6D-7=36<26<26<25;15;15;15;15;15;15;14:04:039/39/39/27127127116016016005/05/.3-.3--2,-2,,1+,1++0*+0**1**1*)0))0))0)*1*+2+,3,.5--4,.5-07/4;39@8?F>BIA:G69F56C13@.2?+5B.;I2?M6KXDR_KXeSVcRKWI<H<0<2*6,+1-*0,)/+heVheVheVheVheVheVheVheVifWifWifWifWifWifWifWifWkeUkeWlcZmd]md]mf^mg[khWmlWimTjoXktaiuiq}yŠ˜›¤³ºÀÉÐÕÜâëòø÷üÿúþÿýþÿþþüþýùÿÿ÷ýýóúûí÷úéô÷äïôÞéîØãëÓâèÆÞáÂÛÞÁÞÞÆÞÛÈÞÖËßÖÏäÙ×îâäóçëúîòÿôøÿ÷ûÿøüÿúýÿüÿþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþü÷ÿúøÿüúÿþþþÿÿûÿÿúÿÿøÿÿ÷ÿÿøÿÿùÿÿúúÿýøÿÿôÿÿñüÿíöþçÿóÙÿùÞÿíÓâÀ¥«ƒj‡YA…Q;“[D—]GR=€F2w=)t=)t@+vC.xE2s>8p;5q<6vA;sA:p>7r@9xG@n=6n=6n=6m>6l=5l=5l=5l=5g?5h@6gA6gC7eC7cC6`C5^D5aL;UB1ZI7`S@RG3C;&E=(GA+>G,BH.@F*<@%?B%LO2_`AijKaaEnqTvz_gmSHP84<%4=(=F18>48>48>48>47=37=37=36<28>48>47=37=37=36<26<26<25:449349349338238238227105/05//4..3--2,,1++0*+0*(/((/((/((/((/()0)*1*+2+070.5.+2++2+.5.5<5<C<AHA?L;>K:<I78E34A-2?+3A*5C,DQ=KXDQ^LQ^MHTF<H<2>4-9/-3/-3/,2.gdUgdUheVheVheVheVifWifWifWifWifWifWifWifWifWifWleUldWlcZmd]md]mf^mg[khWmlWimThpXht`hthm|wˆ—š¥´»ÀÉÐÔÛáéðööûÿúþÿýþÿÿÿýÿþúþþöýýñúûí÷úéô÷âîóÝçìÕàèÐÜà¿×Ú»ÖÖ¼Ù×ÂÝ×ÉßÖÍåÛÙìàâøìðüïöÿõûÿùþÿúýÿûûÿûûÿýúþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüöÿþ÷ÿþúÿþþþÿÿüÿÿùÿÿøÿÿ÷þÿøÿÿøüÿùùÿýúÿÿøþÿøúÿõöÿóÿþìÿýéÿòßÿñÛÿðÚñÒ½³zyS<tJ2uH1wI2{M6~O;zK7o@.e8%{LBsD:qB8sD:qB8g;0d8-h<1j>3i?3i?3i?3f>2f>2f>2f>2aA4`C5`C5_C5^D5[D4ZE4VE3XI6OB/\T?oiSc^HMK4IG0LJ3;E*?H->G*<B&<A#FI,VY:deFmmQxx\tw\[_F@D-6;%8@+<D/9?59?59?58>48>47=37=37=39?58>48>48>48>48>48>48>47<67<67<66;56;56;55:45:438238216005//4.-2,,1+,1++0,+0,*/+*/++0,,1--2.-2.051.3/+0,+0,-2.2738=9<A=?L;@M<@M;=J88E13@,1?(0>'<I5BO;HUCIVEDPB;G;2>4.:0.5..5.-4-gdUgdUgdUheVheVifWifWifWifWifWifWifWifWifWifWifWleUldWlcZmd]md]mf^mg[khWkmWjnUiqYgs_drejyt…”—¡²¹¾ÇÎÓÚâèïõôùýùýÿýþÿÿÿýÿÿúÿÿøÿÿóþÿñûþë÷úåðõÞèîÔàéÎÛܽÕÕ¹ÑÑ·ÔѾÚÔÈáØÓêàßôéíþóùÿöþÿûÿÿýÿÿþÿÿþúÿþúþÿùþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüøÿÿøÿÿûÿÿþþþÿýþÿûüÿûúÿúúÿùùÿù÷ÿù÷ÿüùÿÿûþÿûûÿüùÿûùôîÿÿöÿþôÿýóÿüîÿ÷çùçÓéӾϴŸ¶š„•u`yVBlI5mH6rM;uP>mF7iB3gB2jE5nI9oJ:pK;oK;eA1eA1cB1cB1cB1cB1cB1bC1\G6\G6\G6ZG6YH6WH5TG4RG3PH3MH2fdM~~fprZVX@IM4HL3;E*<F+?H+AG+AF(DG*MN/TU6xw[{z^nnTUU=AC-?A,>A.;>+9?59?59?58>48>47=37=37=38>48>48>48>48>48>48>48>49>89>89>88=78=78=77<67<66;55:449338227105//4./4.-2.-2.,1-+0,+0,,1--2.-2.,1-,1-,1-,1-.21043376598:H7=L9@O<@O:<K67F/4C,2A*6E.:I4@O<BP??M>8F91?2,9/.5.-4-,3,fcTfcTgdUheVheVifWjgXjgXifWifWifWifWifWifWifWifWleUldWlcZmd]md]mf^mg[khWkmWioUiqYgs_bpcgxr‚”– ³¹ÁÊÑÕÜäéðöõúþùýÿýÿþÿÿýÿÿúÿÿöÿÿôÿÿñÿÿïúýèò÷àéïÕàéÎÙÚ»ÑѵÍË´Î˺ÖÏÅßÕÓìâãøíóÿöþÿùÿÿüÿÿýÿÿÿýþÿúýÿ÷þÿøþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüýýÿýþÿýþÿýÿþþþüþÿùþÿ÷ÿÿõýýóýýõþýøþýùÿþüÿýÿÿýÿÿþÿþùÿÿüÿÿúþúöõýøôÿþöÿþñÿþïÿûéÿóàöåÓåÓ¿Ò»©¹ŸŸƒuŽrd|]I}^JrVAaE0W;&Y=(Z?*X=(`E0`E0_F0_F0`G1`G1^H1^H1[L9ZM:ZM:XM9XM9UM8RL6QL6NL5QQ9ikS|€glrXSY?DM2>G,:G+<F+?H+DJ.EJ,DG*HI*ML.yx\tsWfdKTR;LJ5KJ6FE3<=+:@69?59?59?58>48>48>48>47=37=38>48>48>48>49?59?5:?9:?9:?9:?99>89>89>88=78=78=77<66;55:4493382382/40.3/-2.,1-+0,+0,+0,+0,+/.,0/-10.21/32/32/32.210A.5F3;M7>P:=O7:L47I/6H.3E-6H0:L6<M::K95F6/?2*:--4,-4,,3+fcTfcTgdUheVheVifWjgXjgXifWifWifWifWifWifWifWifWleUldWlcZmd]md]mf^mg[jiWjlVhnThrYfs_aqdhys…—™¤·½ÈÑØÛâêîõûøýÿúþÿýÿþÿÿýÿþùÿÿõÿÿóÿÿðüÿêøüåïõÛäêÐÛäÇÖÕ¹Î̳ÇÅ°ÊÄ´ÐÉÁÚÒÐêßãöìôÿ÷ÿÿúÿÿýÿÿþÿÿÿýûÿùüÿøûÿöþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüÿûÿÿüÿþýÿýÿþúÿúøÿ÷÷ÿó÷ÿò÷ÿòøÿóûÿøýÿúÿýþÿüÿÿûÿÿúÿýõÿÿúÿÿüÿÿýÿÿþÿýýûúûõ÷ùìÿÿóÿÿïÿÿïÿþíÿýíÿöçÿîâüêÞúäÍýçÐáË´¥xt^GdP8aM5\H0\J2\J2\J2]K3\L3]M4]M4]M4WO:WO:VP:VP:TO9QO8PN7NN6MO7PT;`fLfoTU^CEO4AK0:G+=J.?I.CL/HN2HM/FI,OP1YX:qmRjfKa]D[V@YT@TQ>MJ9EB1;A7;A7;A7;A7:@6:@6:@69?58>48>48>49?59?5:@6:@6:@6;@:;@:;@::?9:?99>89>89>8:?9:?99>89>88=78=77<67<6495273162/40-2.,1-+0,+/.,0/,0/-10.21.21.23-12,01):'/@-6H2;M5=O7<N4:L2:L25G-7I1:L6<M::K96G70@3+;..5--4,,3+fcTfcTgdUheVheVifWjgXjgXifWifWifWifWifWifWifWifWleUldWlcZmd]md]mf^kg[jiWikUhnThrYgt`brej{u‰›©¼ÂÎ×Þàçïòùÿúÿÿûÿÿýÿþþþüþýøúúðúúîúûë÷úåó÷àéïÕÞäÈÕÞÁÓÒ¶ÊȯÂÀ«Å¿±ËļÖÎÌæÝâôêòÿöÿÿùÿÿþÿÿÿÿýÿúûÿùûÿöûÿôþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüÿùÿÿúÿÿüÿûÿþøÿúôÿõóÿòñÿðòÿñõÿóøÿöüÿûÿþÿÿüÿÿùÿÿøÿÿùÿÿúÿÿûÿÿýÿýýÿùýÿúÿûüÿúöüðùýîûüìýûìÿúìÿúîÿýñÿüñÿðÖÿûáíÜŸŽtaP6RB(XH.XH.[M2[M2\N3\N3[P4[P4\Q5\Q5TO9TO9TO9QO8PN7NN6KM5IM4JN5LR8S\AOY>?I.9F*?L0=J.AN2DN3HQ4LR6IN0JM0ZY;miLhdIc]C_YA_ZD`[GZUBQN=LI8=C9=C9=C9<B8<B8<B8;A7;A79?59?59?5:@6:@6;A7;A7;A7;@:;@:;@::?9:?99>89>89>8;@:;@:;@:;@::?9:?9:?9:?99>:8=95:6384162/40.3/.21.21.21-10-12,01,01-12-12$5"*<&3E/9K3<N6;M3;M3;M38J09K3;M7<M:<M;7H81B2,<//6..5--4,ZgM[hN\hP_iQakSckTfkWhkXfgUhgUheVheVjdVldWldYmeZjgVkhYkg[kg^kg^jf]hfZgeVfiVfkUenYbo^dqhsƒ‚–§®¶ÈÒÓÚàäéíò÷ú÷ýýùþúúÿøüÿôüþñöùèùúèø÷åòñÝïìÙìéÖáÞË×Ò¿Úͼ̿¯À²¥¿²©Â·³ÍÁÁÜÑ×êàèúòýüöÿþûÿÿþÿþýÿüýÿüýÿüýÿþþþþþþþþþþþþþþþþþþÿþüÿþüÿþüÿýúÿüùÿüùÿüùÿýùÿþúÿþúÿþýÿýüÿüûÿýþÿþÿÿþÿÿýþýûüÿþÿÿúúÿûøÿýøÿüöÿúòÿøïÿùñÿûÿÿýÿÿýþÿÿýÿÿûýÿüýÿþüýÿþÿÿÿþÿÿüÿÿýþÿý÷ÿþîÿÿæÿÿâööÜýûâãâƉnTO2UN1RL,SJ+WN/UO/UN1TO1SO2QP4QP4PP6QM2PO3QO6PP6MO7KO6HM6EM5HQ6FO4AJ-?F'@G&EK)GM)FL(ST2RS3MN.JK,TT8bbHccIZZB[YB\ZC][B][B[Z>XW9UT6SR3KE/JD.FA-D?,A>/@>1??3>@5<=5;>59?59A67B48C57C57D3:B79A69A68@58@59A69A6:B7:B7:B79A6:B7;C8<D9=E:>F;7B:7C97A66A16?.4<-39-270.5./51-7/-9+-<%.B3J7O7Z 8Y$8W+:U2:R8;P==O?>O=:L6@R8EX:EZ;DY:>U93J0(>'.5-,3++2*ZgM[hN\hP_iQakSckTglXhkXghVihVifWifWkeWmeXmeZnf[khWkhYkg[kg^jf]jf]hfZgeVgjWglVfoZerajwnzŠ‰š«²·ÉÓÑØÞáéìò÷úøþþùþúúÿøûþóúüï÷úé÷øæõôâíìØéæÓåâÏÜ×ÄÑ̹˾­Á´¤º¬Ÿ¼¯§Á¶²ÌÀÀÛÐÖèÞæûóþý÷ÿþûÿÿþÿþýÿüýÿüýÿüýÿþþþþþþþþþþþþþþþþþþÿþüÿþüÿþüÿýúÿýúÿüùÿüùÿýùÿýùÿþúÿþýÿýüÿüûÿýþÿþÿÿþÿÿýþýûüÿþÿÿýýÿüùÿøóøíçòåÝöèßÿïçÿûÿÿýÿÿýþÿÿýÿÿûýÿüýÿþüýÿýþÿþýÿÿýÿÿýþÿý÷ÿþîÿÿæÿÿâ÷÷ßýûââàÇ‹‡lRM0TM0QK+SJ+WN/UO/UN1TO1SO2QP4QP4PP6QM2PO3PN5PP6MO7KO6HM6EM5HQ6EN3BK.AH)BI(GM+JP,KQ-NR/PT1VZ9^aBaaE[[?VV<UU=VV>VV>XV=YW>XW;XW9WV8VU7QK5OI3LG3ID1DA2B@3??3>@5<=5;>59?59A67B48C57C57D3:B79A69A68@58@59A69A6:B7:B7:B7:B7:B7;C8<D9=E:>F;<G?<H><F;;F6<E4:B39?38=67>76<83=51=/3B+9M*BY-Ia1Nq7Mn9Ji=Fa>AY?<Q>:L<:K9=O9DV<K^@LaBLaBF]A:Q7/E.-4,+2*)0(ZgM[hN\hP`jRakSdlUglXilYijXkjXkhYkhYlfXmgYnf[og\khWkhYkg[jf]jf]ie\hfZhfWgjWejTdmXgtco|sŽ›¬³³ÅÏÎÕÛÞåëñöúøþþúÿûùþ÷øûòõ÷êòõäðñßêé×áàÌÜÙÆ×ÔÁÐ˸ÆÁ®À³¢½° ½¯¤Ã¶®ËÀ¼ÖÊÌãØÞíãëüôÿý÷ÿþûÿÿþÿþýÿüýÿüýÿýÿþþþþþþþþþþþþþþþþþþþÿþüÿþüÿþüÿýúÿýúÿýúÿüùÿüøÿüøÿüøÿýüÿüûÿûúþüýÿþÿÿþÿÿýþþüýÿþÿÿýýÿýúüóîêßÙâÕÍëÝÔüëãÿûÿÿýÿÿýþÿÿýÿÿûýÿúýÿþüýÿýþÿþýÿÿþÿÿþÿÿý÷ÿýíÿþåÿþáøøàþüåáßƉ…jPK.RK.QJ-SJ+VM.UO/UN1UP2TP3QP4QP4OO3QM2ON2PN5OO5MO7KO6IN7FN6HQ6FO4CL/EL-FM,KQ/OU1SY5QY0W_8jpLy]qvVY^@LO4MO7QQ9QQ9QQ9SQ8TR9UT8WV:ZV;XR<VP:RM9NI6HE6DB5AA5?A6<=5;>5:@69A67B47B47C57D3:B7:B79A69A69A69A6:B7:B7:B7:B7:B7:B7;C8<D9>F;>F;>IA>J@?I>>I9?H7>F7>D8=B;>E>;A=6@85A39H1BV3Pg;ZrB]€F\}HVuIMhEBZ@9N;5G74E3<N8EW=NaCRgHShILcG@W=4J3180/6.-4,YgM[hN\hP^jRblTemVhmYjmZklZklZlj[liZnhZnhZog\ph]liXkhYjfZjf]ie\ie\hfZhfWehUbgQajUerao|s~Ž”¥¬¨ºÄÈÏ×Úáçìô÷öûþ÷ýûõúôóöíïñäèêÜãäÒÜÛÉÔѾÎ˸ËƳþ«¼·¤Ä·¦ÇºªÎÀµÖÉÁßÔÐêÞàóèîúðùýõÿþøÿÿüÿþýÿýüÿüýÿüþýýÿþþþþþþþþþþþþþþþþþþþÿþüÿþüþýûÿýúÿýúÿýúÿýúÿüøÿû÷ÿû÷ÿýüÿüûþúùýûüÿýþÿþÿÿýþþüýÿüýÿýýÿýúýôïíâÜæÙÑðâÙÿðèÿûÿÿýÿÿýþÿÿýÿÿûýÿúýÿüüýÿýþÿþýÿÿþÿÿþýÿþõÿýíÿýäÿüßûûãÿþçâàÇŠ†mPJ0SL0SL/UL-VM.UO/VO2UP2TP3QP4PO3NN2PL1NM1OM4NN4LN6KO6JO8HP8JS8GP5GP3KR3MT3PV4V\8]c?fsGtU‡”i›s…lnuTZaBRV;LN6NN6MM5NL5OM6TP7WS:YU<ZT>XR<TO;QL9KH9GE8CC7@B7=>6<?6:@69A67B47B46B46C2;C8:B79A69A69A69A6:B7;C8;C8:B7:B7;C8;C8=E:>F;?G<<G?<H>>H=>I9?H7>F7>D8=B;=D=;A=6@85A39H1DX5Ri=]uEY|BXyDRqEIdA<T:2G4.@0->,6H2@R8L_AQfGShIMdH@W=4J329107/-4,YgMZhN\hP^jRblTemVgoZjo[lo\lm[mk\mj[nhZnhZoi]ph]liXkhYjfZie\ie\ie\ig[igXfiVchRajUerao|s{‹ŠŽŸ¦Ÿ±»ÂËÒÕÜäéðöòúüôúøñöðíðçéëÞáãÕÚÛËÒÑ¿ÌɶÉıþ«¾¹¦»´¢Ë¾®ÓŸÝÏÄæÙÑíâà÷ëíÿôúÿøÿÿ÷ÿÿúÿÿüÿþýÿýüÿûüþüþýþÿÿþþþþþþþþþþþþþþþþþþÿþüÿþüþýûÿüùÿýúÿýúÿýúÿû÷ÿúöþùõÿýüÿûúýùøüúûþüýÿýþÿþÿÿýþÿüýÿüüÿüùÿøó÷ìæòåÝøêáÿóëÿûÿÿýÿÿýþÿÿûÿÿûýÿúýÿüüýÿüýÿþýÿÿþÿÿþýÿþõÿüìÿüãÿúÝþýèÿÿëåãÌŒˆoRL2UN2TM0WN1VM.UO/WP3VQ3UQ4QP2ON2MM1PL1NM1NL3MM3LN6LP7KP9JR:LU:IR7JS6QX9SZ9U[9]c?gmI€”a’¦sŸ±š«’¡xˆ”pr|Z\bFLP7KM7LK6KI4NI5PK7TM:VP:WQ;VP:SN:QL9LI:IG:EE9CE:=>6<?6:@69A67B47B46B46C2;C8;C8:B79A69A6:B7;C8;C8;C8;C8;C8;C8<D9=E:>F;?G<<G?<H>=G<=H8>G6=E6=C7=B;:A:9?;5?75A39H1BV3Ne9Wo?Sv<St?NmAE`=8P6-B/*<,+<*1C-<N4H[=OdERgHLcG@W=3I2.5-+2*'.& \ No newline at end of file 40/-0/-10.21/51.51.62/72.83/83/83/:3-:3-:3-:3-:3-:2/91.91.80-80-91.91.:2/80-80-80-80-80-80-80-80-6.+6.+6.+5-*5-*4,)4,)4,)4,)4,)4,)4,)4,)4,)4,)4,).+$/,%/,%0-&1.'2/(30)30)63,63,74-85.85.96/:70:70A;/B<0D>2F@2IA4JB5KC6KD4MD5MD5MD3NB2OC3OC3PD4QE5T>1Y?2b@4nB5}E6ŒG8šG9¥E7²F9ºF9¿E8ÆF;ÉF>ËF?ÌG@ÌG@íCNíCLíCLíDKíDIïBFñ>Bõ<Aø;Aø9@ö9?ð;@ë>@â?@×?<Ñ=;µ@.µ@.µ@.´?-´?-³@-²?-°?-­@,ªA.¦A-¢B,A*›A)˜@*—A*’?/’?/’?/‘>,‘>,’<+’<+’<+”?+”?+”=*”=*”=*•>+–?+—@,”?:•>7—=4Ÿ?1©B3³D3¼D3¿D4º?/¶@2­E8žH;‡H9mB2T8*D3#:659549547326216005//50-72/72/72/61-61-50,50,50,.0-.0-.0-//-//-0/-2.-3--5,-4+,4*+4(*7(+=.1E69L<?n@B|HJ‹MN–NO¢VZ¬cl­n s’|£„°}‡¼|‰¾pz­`aTLuRCjSKcOG_MH\TR`fdo|}‚‘™ž˜£©Ÿ¤¨š¡’’{|jhgUXWERO>UPdUPdUPd0/-0/-10.10.40-51.62/72.83/83/83/:3-:3-:3-:3-:3-91.91.80-80-80-80-91.91.80-80-80-80-80-80-80-80-6.+6.+5-*5-*5-*4,)4,)4,)5-*5-*5-*5-*5-*5-*5-*5-*/,%0-&0-&1.'2/(30)41*41*63,63,74-74-85.96/:70:70@:.A;/C=1E?3H@3IA4JB5JC3LC4LC4KB3MA1MA1NB2OC3PD4P>0U?1^A3jC4xD6†D4“D5žB3¨B3°@2¶@4¼B7ÂC:ÄE<ÆF=ÇG>èAKèAIèCIêDHíDGïBDó@D÷>Cø;Aø9@ö9?ð<?é?@à@@Õ@<Î=8µ@.µ@.´?-´?-´?-²?,°?-¯@-­@,©@-¦A-¡A+A*›@+˜@*—A*’?/’?/‘>.‘>.‘>,=+’<+’<+”>-“>*“>*”=*”=*•>+–?,—@-“@8•>5˜>3Ÿ?1«A3µD4½D3ÁC4¼A2¸B6­E8œI;…G:kA3S9*D4$<66;55:4493382271161.61.72/72/72/61-61-50,50,50,.0-.0-.0-//-//-0/-2.-2.-3--5,-4*+4(*5)+<-0C47I:=h<;vDC†JI’LJST§`h¨k{rŽ‘{¢„°|†»y†½lv«[\ŒQHsQBkOFaOFaNI_RN_[Yfnotƒ‡ˆ”™•™ž—š ”™‘ƒ~ojk[]\JVUCXQaXQaXQa/.,/.,0/-10.40-40-51.51.72.72.72.92,92,92,92,92,91.80-7/,7/,7/,7/,80-91.80-80-80-80-80-80-80-80-6.+5-*5-*5-*4,)4,)4,)4,)5-*5-*5-*5-*5-*5-*5-*5-*1.'1.'2/(30)30)41*41*52+63,63,63,74-85.96/96/:70?9-@:.B<0D>2G?4H@3H@3H@3I@1I@1I@1K?1K?/L@0MA1NB2MA1QA2YB2dC2qC3|C2‰A2“@0™<+ :+©;,¯>0¶@4¼C8¿F=ÀG>à?Eá@FãBGæCFêDFðCEõADù?Dú;@û:?÷:@ñ=@è@@ÜA=Ñ@;É>7³@-³@-³@-²?,²?,²?-¯>,®?,ª?-©@-¥@,¡A+A,˜@*—A*–@)’?/‘>.‘>.‘>.=+=+=+’<+“=,“=,’<+’=)“>*“>*”?+•@,”B7–?5š>3£>2­A4¹C5¿D5ÂC4ÂD6ºF9¯I=›I=‚F;gA4P:,B6&=77=77<66:4493383072/72/62/62/62/52-52-41,41,41,,1-,1-.0-.0-//-//-0/-2.-5//4..5,-4*+4*+9-/>24C79_83l?:|E@ˆIB’NK›Z^œft”n‡Œwž€~¯zƒºs¹dm¤UU‰NEtO?lMBbPEcQHcMH^NK\[[estx…‰ˆ‡Œ†Š†…†Š|xzlghXZ[KVTEZT`ZT`ZT`.-+/.,/.,0/-10.40-40-40-51.61-61-61-81+81+81+81+50-50-4/,4/,4/,4/,50-50-61.61.61.61.61.61.61.61.3.+3.+3.+2-*2-*2-*1,)1,)4/,4/,4/,4/,4/,4/,4/,4/,30+30+30+41,41,52-52-52-52-52-63.74/850850961961>8,?9-@:.B<0E=2E=2F>1F>1G=1G>/F=.I=/I=/J>0L@0L@0JD4NE4TD4^D3hE2sB1~A/‡>-Œ9'”9'9)£<-¬@3³E8·I<ºJ>Ù@CÚACÝCEâDEçCDîACô@Cø>Aü;@û:?÷:>ð=@åA?ÚB=ËA7Ã>5°@,°@,°@,°?-¯>,¯>,®?,¬>-ª?-¦?,£@-Ÿ@,œ@+˜@*–@)”@(‘>.‘>.‘>.=-=-=-<*<*=+=+<*<*=+“=,”>-”>-”B6–?5›?2¦@2²B4½C6ÂB5ÄB5ÄF:½H>­K@˜J@|F:aA4K;.?9+@86@86?75>64:5294183073062/62/62/32.32-21,21,21,-2.-2.-2./1./1.00.00.10.5106005//5,-4+,6,-:01>45W6-b<3qA7}D9„H@ŒRQŽ_i‹iƒs˜|z¬u~·myµ^g¢RQŠMDyM?rN@dPEgQFfLC^GBVNLZ^^fjnquzvx}vz€vwzokoa`bUWYKTUG]V^]V^]V^.-+.-+.-+/.,0/-10.3/,40-3/,4/+4/+4/+4/+6/)6/)6/)4/,4/,3.+3.+3.+3.+4/,4/,50-50-50-50-50-50-50-50-3.+3.+2-*2-*2-*1,)1,)1,)4/,4/,4/,4/,4/,4/,4/,4/,41,41,41,41,41,52-52-52-52-52-63.63.74/850961961<5+=6,?8.@9/B:/C;0C;0C;.D:.D:.D:.G;-H<.I=/J>0K?1GH6KH7PG6XG5aF3jD1uB/|?,‚;)‹:'’;(š=,£B2«G7±K<´M>ÒDBÔDCØDBÝEBâC@ê@@ð>>÷:>û:=ú9<õ;>í?>áB>ÓC:ÅA5º?0¯@-®?,®?,®?,­>+­>+¬>-ª?-¨?,¤?-¢?,ž?+š?*–?+”?*“>)?.?.>->->-Ž=,Ž=,Ž=,Ž=,Ž=,Ž=,Ž=,<,=-‘>.‘>.”B4—A4@1ª@3¶B5ÁC7ÆA8Å@7ÁB;¸G?©KCJ@uE;Y>3C9-78*@86@86?75>64=53:5294173062/43/43/32.23.12-12,12,,2.-2.-2.-2./1./1.00.00.3205105104..2,,4+,7./901P5*Y9,e>/n@1tB7|KGƒYcƒg~p—xx¬s{¹js¶]e¦TT”OG‚LAyPAjPAhMAeJA`GBYHEXKKWMPU^bc`fbcha`f\Z`TWZOUYKWYL`WZ`WZ`WZ,,,,,,---.-+/.,0/-10.3/,2.+2.+3.*3.*3.*3.*3.*3.*3.+3.+2-*1,)1,)2-*3.+3.+3.+3.+3.+3.+3.+3.+3.+3.+2-*2-*2-*2-*1,)1,)1,)0+(3.+3.+3.+3.+3.+3.+3.+3.+41,41,41,41,41,41,41,41,41,52-52-63.74/850850850;4*<5+=6,>7-@7.A8/A9.A9.C9/C9-C9-F:.G;/H<.J>0K?1FI8GH6MH5TG6[F3dC0lA.t?-{<*‚;)Š;*“=,šA1£F5ªJ:­M=ÉE@ËFAÑFAÖE@ÞC?å@>í==ó9<ø:<÷9;ó;=ë?=ÝB=ÌD8¼A2±>,«@,«@,¬?+¬>-¬>-©>,©>,¨>.¥>-¢?, ?,›>,—?+•>*“>)‘?)>->->->-Ž=,Ž=,Ž=,<+Ž=,<+‹<+‹<+‹<+Œ=.>/Ž?0’C2—A2 @2­A5»B9ÃC:Ç@:Å@9»@9³H@¥NGNEoG=R@4?;039-A75A75@64>63<4194083/74/63.43.34/23.13.02-02-02--3/-3/-3/.3/.3/02/02/11/11/32032040/2.-1-,4..5//H4)M5)X8+a<,f>2nGBzYb‚lƒ€uŸ{|´u|Àmu¾bi±[[¡SLLBQAnN?jI=cH>`HB^FCX@BO<?HBGJFLJJQJJQIIQFKQGOUISYMaXSaXSaXS++++++,,,---/.,/.,0/-0/-1-*1-*1-*2-)2-)2-)2-)2-)2-*2-*1,)1,)1,)1,)2-*2-*1,)1,)1,)1,)1,)1,)1,)1,)2-*2-*2-*1,)1,)1,)0+(0+(3.+3.+3.+3.+3.+3.+3.+3.+41,41,41,30+30+30+30+30+41,41,52-63.74/74/850850:3+;4,<5-=6.?6-?6-?6-?6-B8.B8.C9/E9-G;/H<0J>2K?3DG6EF6KE5PD4VC2^C2e@.m>,v=,|;)ƒ:)Š;*“=.›B2¢F7¦I:¿D<ÂF>ÇG>ÏF>ØE>âC?ì@>ó<>õ9:ó9:ï;<å@<×B;ÆD6´A/¨=)©@-©@-©@-¨?,¨?,¨>.§=-¥>-£>, ?.ž?-š?,—>,“>*‘?*>)>->->-Œ=,Œ=,Œ=,‹<-‹<-‹<-‹<-‰<,‰<,Š=-‹=0‹=0Œ>1‘D2–C1¡A3®B6¼C:ÅA<ÇB=ÃB=»EA³PJ¥XPŽZOqSIVI@BD97A6A83@72?61=60<4194083/63.43.43.34.13.13.02-.3-.3--3/-3/-3/.3/.3/.3/02/02/00.11/22021/0/-/.,2.-3/.?0)C1'K3'T8,Z<2dGCw]hƒsˆ­„„À|ƒËszÈkq¿ed°VSšJC‡N>kK<gG;cG=`FB]DBX?AP;?H:BE?HGDMHGQIGQHJRGNVKRZOaYNaYNaYN++++++,,,,,,---/.,0/-0/-/.,1-*1-*1-*2-)2-)2-)2-)1-,0,+0,+/+*/+*0,+0,+1-,/+*/+*/+*/+*/+*/+*/+*/+*1-,1-,1-,0,+0,+/+*/+*/+*1-,1-,1-,1-,1-,1-,1-,1-,3/,3/,3/,3/,3/,3/,3/,3/,40-40-51.62/62/73084184192,:3-;4,<5->5.>5.>5.>5,B8/B8/C9/E8/G:1I<3J=4K?3EC6FB6IC5NB4TA3\@2b>0h=-q<.w9*}8)…7*Œ:,•=/›B2 D5µE9¸F;ÀG<ÈH=ÒH>ßF@èC?ð@@î:9î:9é=;àA;ÑD:¾E4¬A-¢?(¦A-¦A-¥@.¥@.¦?.¥>-¤?-¤>/¢>.Ÿ@.œ?.˜?-•>+‘?*>)>+>->->-Œ=,Œ=.Š=-Š=-Š=-Š</ˆ<.ˆ<.ˆ<.ˆ<.‰=0Š>1‹?2‘D2–C1¢B4®B6¼C;ÄC>ÄC>¾D?»PJ²[T¥e\‘f]s_TYUJFNC>KA@70@72>71=6094.83-63,63.43.34.34.13.13..3-.3-.3--3/-3/-3/.3/.3/.3/.3/02/.0-00.22022000.0/-0/-10.8,,;,)B1*K7.S<4^IHtbn‡z–Š¸‹Ê‚ˆÒy€ÐrwÈik¸XV¡GD‹I<gG<fD<aC>^C@[ABV>DP>EMGQSKWUQ^WU`XS_UR^TT^SV`UaZHaZHaZH,-/,-/------------.-+.-+/.,/.,1-*0,)0,)0,)/+(0+'/+*/+*/+*/+*/+*/+*/+*0,+/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*0,+0,+1-,1-,2.-1-,1-,1-,1-,1-,1-,1-,1-,0,)1-*2.+3/,3/,3/,3/,3/,3/,3/,3/,3/,40-51.62/73081+92,:3-;4.=4/>5.>5.>5.?4.?5,@6-C6.D7.F90G:1H;2F?5H@5J@6N@5R>3W<1\:0a7+k9.t8-|8+…9,;/“=0˜?1›?2¨@3¬B5´D8¾E:ÊG=ÕF>ßD?çB>ë?=íA?çD?ÜE>ÉC8¶C1§B.¡B,¢A.¡@-¢?,¢?,¡=-¡=-¢>. ?.œ<,š=,˜=+•>-“=,=+Ž=*Œ>*‹<+‹<+‹<+‰<,‰<,‰<,‡;-‡;-‰=/†</†</‡=0‡?1ˆ@4‰A5ŠB6‘F3–E4£F7³H>½F@¾C>¾DA»KG·XR¯f]£qfth|rfik^S_SCSHQJBLE=D=5<8/95,74-63,33+43.34.23-13.02--2,,1+,1+-2.-2.-2.-2.-2.-2./1./1.02/02/11/11/11/11/11/11/5*2;/3A32C4/J;6]OOymy‹…Ÿ’‘½”–Ӕ݂‰×tzÈjn¸_b©YZPHmHBdA>]>>X?AVBHVLU^U`bbqnn}xv†|p€ulyoguh_k_T`Ta[Eb\Fc]G,-/,-/,-/,-/---------.-+/.,.-+.-+0,)/+(/+(/+(/+(.*).*).*).*)/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*/+*0,+0,+0,+1-,1-,1-,1-,1-,1-,1-,1-,1-,1-,0,)0,)1-*2.+3/,3/,2.+2.+2.+2.+2.+2.+3/,40-51.62/80-91.:2/;30=4/>50>50=4-?4.?4.?4.B5-C6.E80G:2H;3H>5J=5L=6O>6Q=4V;2Z90_7/h8.p7.y6-‚8-‰9.’;1–<1š>1¢@3¦A5ªB5³E8¾E:ÉF<ÔE=ÜC=âC?ãD@ßF@ÕF>ÄF8±C2£B/›C-ŸB0 A/Ÿ@.ž?-ž?-Ÿ>-ž>.ž>.š=,™=.–=-“=,=+>-Œ=,‹>,Š=+Š=+‰<,‰<,‰<,‡;-‡;-…<-†</…=/…=1ƒ=1„>4†@6‡A7ˆB8‘H7•F7£G:±I@¹HB¹FAºJFµTM²dZªreŸ~op~|mlteYgZJZOPLAKI=EC7@>2=:1:7.44*11)23+23-12,/1,/1,.0+.0+.0-/1./1./1./1./1./1./1./1.02/11/11/11/11/11/11/11/5*:9-9<15?53H?:^VTxszŠˆž‘“º”—Εׄ‹ÓxÆpyºkt¯en¥__yXZsSUjRWjU]j\gmguvr‚v‡€‘‡ƒ•‰}v†yp€sfteXfW_YA`ZBb\D,-/,-/,-/,-/,-/---------.-+.-+.-+-,*/+(.*'.*'.*'.*+.*+.*+.*+-)*-)*-)*-)*/+,/+,/+,/+,/+,/+,/+,/+,.*+.*+/+,/+,/+,0,-0,-0,-0,-0,-0,-1-.1-.1-.1-.1-.0,+0,+1-,2.-2.-2.-2.-1-,1-,1-,1-,1-,2.-3/.40/51080-91.:2/;30=31=31=4/=4/?40?4.?4.A4.C60D7/F91G:2H;5J;6K<7N=6P;6S:5V72[60c60k6.t5,}7/‡9/Ž:0”<0˜<1œ@3ž@4¢@3§A3±C6¼C8ÇD:ÎC<ÖF>ÚG@×HBÍH?¾E:­C3ŸB0™B.B/œA.›@-›>-›>-›>-›>-œ?0˜<-–=-”=,“=.>-Œ=,Š=+Š=+‰<*‰<,‰<,‡;+‡;+…<-„;,ƒ;-„<0‚<0‚<2‚>3ƒ?4…A8†C:‡D;“K<–H; H>­JDµIF´KG´SM¯_V®rg¥qœz{Šwr€ocqbVdWPQCMN@HI;DD8@@4::055+/0(01)01+/0*/0+./*./*//-//-//-//-//-//-//-//-//-//-00.00.00.00.00.00.00.00.6*>6+;8.6;63HE>_^Yyz|Šœ“²’–ÃŽ•Ë„Æ}ˆ¾{‰¸|‹´|Œ°ˆ—yƒq~‡o|‚n}€o‚€yŽ‡ƒ™‹¡”‘¨˜¦”ˆŠƒ–ƒ|{j{iXiW\V<^X>`Z@-.0-.0-.0-.0-.0-.0......---.-+-,*-,*,+).*'.*'.*',*++)*+)*+)*+)**()*()*(),*+,*+,*+,*+,*+,*+,*+,*+,*+,*+,*+,*+,*+-+,-+,-+,-+,.,-.,-.,-.,-/-./-./-./+*0,+1-,1-,1-,1-,0,+0,+0,+0,+0,+0,+1-,2.-3/.40/91/:20;31<42=31=31=31=31>3/>3/>3/@3-A4.C60D71E82G83H94I:5L:6M:6N94Q83T50^72e60o6/x8/ƒ90Š:/’;1•=1™?4™?4›?2@1¥A2­C5¸D7ÀD:ÉF<ÌG>ÌIAÄH>¶F:©C4B0—B.˜A.˜A.˜?-—>,™>,™=.™=.™=.•<,”<.“=.=-Ž<.Š=-Š=-ˆ<,ˆ;)ˆ;+‡;+‡;+„;,„;,ƒ;-‚:,;/€<1€<1>5ƒ@7ƒC:…E<†F=’M>•I<œH>¨IC¯LG¯PL¯\Tªj^§€o y˜š‚Žœƒ„–€z‹ym{lam_UYHQUDKO@EI:@D6;=057,13(01)/0*/.).-).-).-+/.,0/-/.,/.,/.,/.,/.,/.,/.,/.,0/-0/-0/-0/-0/-0/-0/-0/-8*A6):3-1961HJ=bfX{€y‰‘“Œ“£–²Œ”¸ƒ³±…™²¤¶ªµ•§§¤£Œ ž‡ž–‚™}˜‰œ‹ˆ£”°š–²›”­—‹£‹…›†’~k|iUfSXT7ZV9^Z=+/2+/2-.0-.0-.0-.0-.0...------.-+-,*-,*,+),+),+),*+,*+,*++)*+)**()*()*(),*+,*+,*+,*+,*+,*+,*+,*+,*+,*+,*+,*+,*++)*+)*+)*,*+-+,-+,.,-.,-/-./-./-./+*0,+0,+0,+0,+0,+/+*.*)/+*/+*/+*/+*0,+1-,3/.40/91/:20;31<42=32=32<20<20=20=2.=2.?1.@2/A4.B5/C60D63C84D95G96G96H94K84N51V72_60h70r7/}:1†<1=2>2˜?7—?5—?5—?3šA3£C5ªD6³E8ºE;¿F=ÀG>»F=°D8¤B5™@0–@/–A-–A-–?,•>+•<,•<,–=-–=/”<.’<-=-Ž<.‹<-‰<,ˆ<,ˆ<,‡;+†:*†:*†:*ƒ:+‚:+‚:,€:.;0€<1€=4?6‚B9ƒD;†G@‡HALA’H?˜HA¤KGªOLªWQªf]¥wh¡Œw˜›€’¥‰Š¤‡„ž…|’}t‚qlte\eRV_LMVCEL<?F6<@27;-68-01)00(.-(/+(/+(/+*2,,3--1-,1-,1-,1-,1-,1-,1-,1-,0/-0/-0/-0/-0/-0/-0/-0/-9*?5)73*-66*GL6_iPx„nˆ“…—–™¢™§†–¥‡›¤ª©šº¯ŸÁ±š¶¨š¶§›·¨˜¸£‘±š‰«’‰«²”’³”•´•­ˆ¢…ƒ›{’xgzdQcMTS5VU7XW9,03,03,03,03./1./1./1///..........-+.-+.-+-,*-,*-+,-+,-+,,*++)**()*()*()+)*+)*+)*+)*+)*+)*+)*+)*,*+,*++)*+)*+)**()*()*(),*+,*+,*+-+,.,-.,-/-./-./+*/+*0,+0,+/+*/+*.*)-)(0,+0,+/+*0,+1-,2.-3/.40/:12:12;23<42=32<21<21;1/=20<1/<1->0-?1.@2/A30A30?61@72@93A96A96B94E74G51O61W6/a6/j8/u9.€</‡=0Š>0•>7•>5“?5’@4•B4™C4ŸC4¥D4ªB5²C8´E:±E;©C7 @4˜?1•?2“A,’?-“=,“=,“<+“<+”<.”<.“;-’</<.;-Š;,‰<,‡;-…<-†:*†:*…9)ƒ:)ƒ:+9+:+9-€<1<3?5A8‚C<…F?†JB‡JEJAG@—HC¡NJ©VRª_Y©pe£„r›•{’¢…‹ªŠ„©ˆ€¡„~–~z‡uszjcqZ]iSR^JHT@BK:>E5:@29<134,22*1.)/+(/*'0**3*+4+,1++1++1++1++1++1++1++0,+1-,1-,1-,1-,1-,1-,1-,/.,;(;5(23+(56$CL-\hDt„`…”wŽ›‰’ž”Ÿšž–¥—•µ¡Æ¤¦Ð¨¥É¯¦Ê°§Ë¯¢Éª—¿‹³ˆ°‹³ŽŽ²Ž²¬Š„¢€€™{wŽrdx]MaHQQ5QQ5RR6,03,03,03,03./1./1./1./1/////////0/-/.,/.,.-+.-+/-..,-.,--+,,*++)*+)**()+)*+)*+)*+)*+)*+)*+)*+)*+)*+)*+)**()*()*())'()'(+)*+)*,*+-+,.,-.,-/-./-./+*/+*/+*/+*/+*.*)-)(,('0,+0,+0,+0,+1-,2.-40/40/:12;23;23<34=32<21<21;10<1/<1/<1/=/,>0->0-?1.@2/;60;62;83<94=:5=:5?82A60F5.O4-W5+b6+n8,x:-<,„<.’:6‘<5=5Ž@4A4‘B3•B2™@0Ÿ?1¦@4ªB7ªB9¥@6?5—=2•?2‘@-’?-‘>,’<+‘;*‘;,“;-“;-‘;,<.;-‹<-‰;.‡;-„;,„;,…9)…9)…9)‚9*‚9*9+~8,}9,=1€=4€@7B9„E>…HCˆKFŠMHŒIAŽGA˜JF¢SOª\X«h`©{n£Žy—Ž©ˆ…¯‹«ˆ~£„€˜€‹w{nixacr[ZhQP]IIUACL;>D6<?467/44,30+0+(1)'1()3)*5+,2)*2)*2)*2)*2)*0**0**0**1++1++0,+0,+0,+0,+0,+0,+;&57(/4-%46?I$Ue8pT‚’kœ}‘Ÿ†’¡Œ¡ˆ¨‡•¹žÉ“¢Ò”©Ò°¨Ò®¥Ñ­ŸÌ¥‘¾•ƒ°…‚­‚†±„†¯ƒŒ±ˆ‰¬„Ÿ{{”tqˆk_sWJ^CMM1LL0KK/,03,03,03,03./1./1./1./10000000000/-0/-0/-/.,/.,0.//-./-..,--+,,*++)*+)*+)*+)*+)*+)*+)*+)*+)*+)*+)*+)*+)**()*())'()'((&'*()+)*,*+,*+-+,.,-/-./-./+*/+*/+*/+*.*)-)(,(',('1-,1-,1-,1-,2.-3/.40/510;23;23<34<34=34<21;10;10<1/<1/;0.=/.=/,>0-?1.?1.96/:729839839:4:94;83>71A2+I2*S2)^4(j6)s8*|:*~;+84:5=4Œ@3‹B3A1@/”>-˜<-Ÿ=0¥@4¦A7¢@7œ>4—=4•=3‘@-?,=+<*‘;*‘;,‘;,’<-‘;.<.;-Š;,ˆ:-‡;-„;,„;,…9)…9)‚9(‚9*9*€8*~8,}9,€>2?5€@7‚C<ƒG?†IDˆMGŠOIŒICHD˜MJ¥UT¬a^­ng«s¤•€–¡ƒŠ¬‰‚°‹|«‡|£„™y‚ql{dgv__nWXeQP\HIRAAG9=@579.66.41,1,)1)'2()3)*4*+2)*2)*2)*2)*2)*2)*2)*0**1++1++1++0,+0,+0,+0,+0,+:&27(+4."47=HRb1l~J€’b‰™rŽ|Ÿ‚ŠŸ~Š§{·€˜Æ…œÎ…œÉ¢šÉŸ™Èž”׉¸Š®€‚°‹¶ˆ‚¬~ˆ¯ƒ‡ª€~œvuml„dZnRG[?IL/GJ-DG*/0*/0*/0*01+01+01+21,21,32-63.63.63.52-50,4/+4/+8.,7/,6.+5-+4,*2-*1++0,-0,-.,/--/-,1,+0*+/)*.()./(0/(//(//(//(//)-.)-.*+/+,-,*-,(.-).-)-.(./)./)--/--/---.../-.0/-2.+3.+2-)4,)5.(7.)8/(;0*;1(<2)<5+=4+>5.>5.>5.=4-<3.<1-=2.<1-<1/;0.=/.>0/>0/?11H-&C1';5)2:++=-(=.-;.45-?-+H()R%(X((Z.+Z8.[A2\G6wC-{B.„C1A3’?1•;0–:/”8+“;-‘>.‘B1‘D0‘D0B.?,<*Ÿ63›83”:2Œ<1…@1B0|A/|A/‚C2„A1ˆ>1‰=0‰;/ˆ:.‡9-‡9-v:/|@5u=0n9)s@/s@/t<+{@0{<-ƒ?4ˆD9‹H?ˆLA„NBQC€RC—HK•TRd]…ue{…lw’sz|€£ƒ‰¦ˆŽ¥‰’¤Œ‘¥Œ‡¤ˆy¢‚kŸ{awhŽea†]\zV[sS]mR[cLVTEPH=J;6G53B,/=&,:#+:#-9#/8".#/-#-,$-,&*+))+-(.1'/2'/4'06&14'14'13'32(32(30(3.)-0,-0,)//'=>0WZErx\‹gœs‹žpŒ¢qŒ§r‹¨r‰ªs³{›¾†£¿Ž ¾Œ›¹‡’²€‹­{†ªz„ª{…ª~„§}…¥€€ž|z“vr‰oi{e[jWLZIKO@CG8>B3/0*01+01+01+12,12,21,32-43.63.74/74/63.61-50,50,7/,7/,6.+6.,5-+2-*1++0,+0,-/-./-0--/-,1+*/)*.()-/(//(//(//(//)-/)-.*+.*+/+*-,*.-).-)/.*./)./)./)..0....../-./.,/.,1-*3.+3.*5.(6/)8/(90);0*<2)=3*>5,>5,>5.>5.>5.=4-<3,=2.=2.<1-;0.;0.;0.=/.>0/?10F/'D0)A3*=4+96-85.83-<1-?-+D*)K)(P*'U.)[4-_:1c?3s@+xA-€A0‰?2‘?4”;3”:1“;19.‹<-Š>.ŠA0‹B1B/ŽA/@/š93—:3’;2‹=1„?0‚@0@/?/„A1†>0‰=0‰;/‡;.„:-‚:,‚:,w9.x<1s9-n9)r?.s>.q9*u:,}=1„@5‰E:‹H?‰K@†MB„PCQC›DJ›QR–d]vfƒ‡p}”w~ ƒ¦…ˆ§ˆŽ§Š’¦‹“¥Œ£‰‚Ÿƒwœ}o˜xa•g\`VƒZU}XWyXWpSPbJKVECI;@A998340-0,+/+,.)--(,*,+)+***,+),-(,/)-2(03(03(02(02(10)1/*1-*1,+3,+32-12./0,)--%9:,TWBox[€‹i‡–o†™l†žnˆ£p†¤p„¥pŠ­w“¶€›¹‡˜¶„“³Œ®{†«xƒ§w‚¨yƒ¨|ƒ¦|„¤{x’uqˆnh{eYjWL[HGK<@D5:>/12,12,12,12,23-23-43.43.54/74/85085085083/72.61-80-80-7/,6.,6.,3.+2,,1-,1-./-.0.1..0--/,+0+*/*).1'//(//(//)-/)-/)-.*+.*+0,+0,+/.*/.*/.*0/*/0*/0*/////////0./0/-1-,1-*2-)4/+70*90+:1*<1+=3*>4+?5,?6-?6-@7.@70?6/>5.=4->3/=2.<1-;0.;0.;0.;0.<1/=20C2*E0+H/+L,-N+/M*.J*/E+.A-,@.*@/(C/(M/'Y0*d1-j30i;+o;-w;0=4‰<4Ž;5Ž94:4‹;2‡=2†>2…@1†A2‰A3ŒB5C6‘=2=1Œ>1Š>0†>/…=.…=.†=.ˆ<.‰;.ˆ:-‡9,„;,€;+~=+z=*}=3z<1v:/u;-x@1x@1v<.v;-?3„B6ŠF=‹H?ŠJA‡KA‡NC†PDDHQQšc^’ug‰„n‘t~}€¥ƒ„©‡ˆª‰©Œ“§Œ‘£‰‹ƒ„˜€”{a›k[•eXaV‰`W…`W]QtVMiPC[E=RA6F9/<2*5-&1+%.)$-(1&*1&*1&*1&*1&*1(-2).1+//*0-+0,+0+,0),1(-1&.1&.14.24.0.*'**"66*PUAmv[~‰i€k~“h™jƒŸn€ n~ m€¥q‡¬xŽ®|‹­zˆªw„©v§t€¦u¦w€¥y¤y€¢}}›yw’sp‡mh{eYkUL[HEG:=?28:-23-23-34.34.34.45/54/54/650961961:72:72:51940940:2/91.91.80-7/-4/,4/,3/.3/.3/01/01/00.1..0--/,,.2).2).2).0*.0*,0*,0*,/+*1-,1-*0/+0/+10+10+10+10+11111100010.10.2.+2.+3.*91.92,;2+<3,>4+@6-@6-A7.A8/A8/B90A8/A81@70>5.?4.=2.=2.<1-;0.;0.<1/=20=20?5,E2.O-.W(0]#/\"0W#/L'.C/.:3-55);5)E1(U.'c+*l*+e;/j;1s=3}<6…;8‰;9Š;7ˆ:6‰>9†?9…B9ƒC9…B9†B9‡A9‰@7†B/†B/‡@.‡@.‡>-ˆ<,‰:+‹9+‹8*‹8*ˆ9*…9)€<)z=(w?(t@(ƒ=3{7,x8,z</v;-w=/{A5{?4€B7„D:‡G=‰I@ˆI@ˆLB‰NF‹PH“OL”YS’f[sb„€g}Œmz˜v{¡|©ƒ«‡†«‰‰«Š‹¦‡Šžƒ†˜~„”zm˜mi”iegdefŒgc†e]~_Zw[PhPI_J@Q?8D60:/-5**/(),%7$(7$(5%(4%(1&*1(+/+,.,-*+-(,-'--%-/%-/$./$./$./1(+1+-0+(.+$88,PUAiqYvƒe{Œhyf{–iœn}Ÿmyžkz m¥r‚§s€¥q}¤o}£p}¥s~¦t~¥v}¤w|¡x}Ÿzz™wuqn‡jg{bWkRK]GGE9?=1:8,45/45/45/560560560761761872:72;83<94<94=84<73<73<41<41;30;3083072/61.61.5106216213122011/00.//-.4+.4+.4+.4+.2,.2,,2,,2,,3/,3/,3/,10,21,21,32-32-22222032032032.51.61-61-;4.<5-=4-@6-A7.B8/E8/E8/C:1C:1E;2D:1C90B71@5/@5/>3/>3/=2.=2.=20=20>31>31>7/C41O/2Y*2_%3`#2Y%1N+1B3077-39+68*?5)N1)]-)e+)c;3h<3r=7z=:‚<<†<=‡;;…;:‚;9>8€A:C;‚C<ƒB<…@9„?8E/D/C.ƒ@-†=,‰<,‹9+Œ9+Œ6)Š7)†9)‚;)~=)w?(sA(qB(…6/|/'8/ƒ?4w5)s5*}A6}C7E9G<ƒI>„J?…K@‡LDŠOGŒSJycL~hSoYu]}bˆi„•u‚ |¥~|©€~¬…­†€ª„¥€|ž}{˜yn}ŽlyŒlwŒkwŒmt‰joƒgl~dbqZ[hTSZHIK=B@4=6,8/&5+":&(8%'6&'2&&0(&-)(++)).*'+*&,*&,*'+*'+,)*,**,**,-#$2*(50,85,BC5UZFfpWn}^tˆcqŠbt‘ex˜iw›ks™hs›iwŸmz¢mx lwŸkv¡ly£q{¥u{¥w|£wxžuzœww–tqŽom†hd{_WkPJ^CFB9>:195,560560671671782782872872983<94=:5>;6>;6?:6>95>95?74?74>63=52;62:5294194184184195484373243132021/6-.6-.6-.6-.6-.4..4/,4/,40-40-40-52-32-32-43.43.431431542540841850940:5/=60?6/@7.B8/C9/F90G:1H;2F<3F<3F<3F<3E;2C90B71A60@5/@51>50=4/=4/>42?53?53=82A64I35Q16V.6U-5R/5J22A62::08<.9;-?9)H6*P4)U3)]2+c4.k62t76}77‚89ƒ7978}75{:6|=8{?7@9ƒ@:…@;†?;|E0}D0€C0‚A/…=.‡;-‰:-ˆ9,‡8+…9+‚:+<+{>+x?+uA+tB+‹2,‹2,¡LE§XQŠA8|90‚F;€J>yH:zJ<{M@|NA~NB‚PE‡UJYN_uNgwRtzX€{^Š|b“i›s›—|™zˆ |ƒ¨¬ƒ|¬‚x¨~t£yq vŠpˆo†nƒŽp€p}px‹ms‡kk~bgu\_iQWZGPM<H@3B6*>0%:,+7,*5+)1,(-,'+.').((/().(+-*,,*/+*3)*6',7&,9&,2)$<3,E>4JF:QR@]bLgqVizXmƒ]j…\j‰]p‘bq•eo•do—eršhu krhq›itžlx¢rz¤vy¢vyŸvvštw™tu”rokj…fc|^UlOJ^BHA9@91;4,671782782782893893983:94:94=:5>;6?<7?<7@;7@;7@;7B:7B:7A96@85=84=84<73<73<74<74<74;74:6395284173080.80.80.80.80.80.61.61.61-52-52-52-63.63.54/54/540540651952:72=84=82@93?80A8/C90D:0E;1H;2I=1I=1H>4H>4H>4G=4F<3D:1B8/A60B71@70@72?61?61@72@72A83=84@85B86D97E:8G96G96E:4C90B90B:/B:-D;,F:*H;*H;*].&b0)n3/x73ƒ98‰;;Š<<‰>;‹A>†A<?6}=4~;3‚;5ˆ=8Œ>:~C3€B3€A2ƒ?2ƒ=1„<0ƒ;/;/;.|=.{=.|>/|>/|>/}>/}>/—.*£;8ÎkfÙ~y­ZTŒC<ˆLAN@tJ:qM=pQ?qR@tSB{VD‚[J‰_OUOe€Uz~[‘y_¥ra³of»rk»xo¶…vªz ›~•£€Œ¦ƒ¦~}¢yyŸvŒr‹rˆ‘r„“r€•t|–sv”ps’pl‹ig„eby\\lQU_GMP;ED0A<)>3-<3,92*41(01).1(+1'+0)/0*2/*6,*:*+@'+D%+G$+H#+A7+LC4WP@[XE`bLgmQiwVj{Wl‚[g‚Wf†WjŽ^n”an”an–bršfržko›hnšiqœnw¡sy¢vxžuu›ts—su—ts’pn‹li„cb{[TmMH`@MD=E<5@707827828938938939:4:94:94;:5>;6?<7@=8@=8A<8A<8A<8A<8A<8A<8@;7?:6>95>95=84>95>95>95>95=84<73:51940:0.:0.:0.91.91.91.91.72.61-61-63.63.63.74/74/74/540651961;83<94?:4@;5B;3A8/B90C9/E;1H<0I=1J>2K=2K>5K>5J=4J=4F<3E;2C90B8/B92B92A81@72@72@93A:4A:4?74>95=<7>?7?@8@@6D@5J=4J70N5.Q6-Q6+O8*M:+I<)H=)l3(r6,~;3‰@:•DA›HDŸJGŸLH QJ—MDD;„;2‚8-…7-Œ91;4…?7…?7†=6…<5ƒ=5€=4|>3y?3vA3uA3uA3y?3}=3ƒ:3‡83Š73Ÿ%$´<;í{zþ•’Åhc–G@‰K@wI:mN<gR=dU>fW@jX@r\E}aL„eQj{O{{U™w\´l`Ì^_ÚR\áM[àO^êmuÜxxÎ…~¿€²–€§—}ž•x˜“u•Žr”r‘‘u”u‡–u—s{–sx–rq‘lp‹hiadtW]gLVX@LJ3GB.L40H3.D3,?2*:1(70&40'40'81):/+?-+C++H(+M%-O$-Q#-PE1[P:d^FgfJilOnuTm{Wl~Vk„Zg„Vg‡Vm]p•ap—br™dvhrœlo™km—ip™mwtyŸxw›wt–us•tu”tsqoŠki„cb{[TmMGa>SJCKB;F=69:49:49:49:49:4:;5=<7=<7=<7?<7@=8@=8A>9C>:D?;D?;E@<E@<E@<D?;D?9C>8C>8D=7B;5B;5B;5B;5B;5B;5A:4A:4A83A83A83@72@72>71>71>71<71<71;60:5/85085074/74/761961961:72<71=82A:2B;1C:1E;1F<2J>2K?3L@2N@3N@3M@7M@7L?6K>5I<3F<2E;2E;2B90A81A81?80?80?82@93@93<5/LE?IB:E<5OB:K:2J3+\>6Z5-`5.`4+^/'\0%b8,g@1gB2‹I;G;–I?žLAŸF>›>7š=6žD;¥ND£QE¨VH«YK£PBš@5˜:0ž=4’9;9:Œ67†54„96ƒ@:{@8o?3oC6lB4m?2u:274Œ35’-3–(1ÏEEèbaÅEDÍWUáyv«VO†F<‚WGlS=f\CedFgfHgbEm_DyeL†nVŽdK­p]ÍphÞW]å8Kð(Dü&Hþ+Lþ<WðG\éXeånrà|zÙ}Ö†؉‚¸„wµ…w³ˆx®‹x¨x£ŽyŸy›‘xŽ‡mŽƒm~i‰taƒgY{YMtLBpE<r;>d02b22\31L)'D'#I2,J70F5.E2,E0+H0.I-,I)*O+-V24VK/`W:f_BgdEkoLu}Xu„]oWj„WlˆXnŽ]q“`s•bu˜bušdv›eq–ks˜ms˜oq•os•rw™xz™zy–zx•yqŽrm‡jj„ghƒdazZTnKIc@TKBSJAPG>9:49:49:49:4:;5;<6>=8?>9>=8@=8A>9A>9B?:D?;D?;D?;FA;E@:E@:E@:D?9D?9E>8E>8E>8E>6E>6D=5C<4D;4D;4C:3B92B92B92B92A81A81@91@93>71<71;60;60:5/85.74-74-96196/96/;60<8/>:1A:0C:1C;0E;1G=1J>0L@2M?2NA1NA1N@5N@5M?6J=4I<3H;2E;1E;2C:1B90A81@91@91@91?;2?;2C:3G81I0,V..j68u99{;;†ECƒD?„H@…I?†G>ŽJA›NH£PL¥MK’E3”C2šB4 B6 >36-7+¡<0£C5›@.™@. E3¦F6©E5¯H9¸N@´KR¯GN¥@F™9=‘8:Š?<€A:r@5k?2uK=€NC@:‚,-“(0µ8FÒK\àJIáMMÌ>=Ã>?Ò_\µXQ„@5€UDvbJa]@Z_?ekIonOshJ{fK†kPÌ]VÚ][êSZó<Nü'EÿDÿHÿ!Kÿ(Nÿ.Nù9RöF[òM^ëO]êO]ëS`ÝakÛclÚgnØkpÓnrÑstÎvuËwwÌ{zÌwzËuxËotÊirËcnÊ^kÊ\iÆ`n´Ra¦JWšGQDK„FIk79FS2-L0,F2+I6/J91I;2M>7SD=]P.dY9ga?ifCnrMz‚[z‰bt†^r‰]oŠ]oŒ^qŽ^u’bw•cw•cw•cr’mw—rz˜vy–w~˜}ƒ„…‡ƒ›…™ƒz’|q‰ql„jhc`yYTnKJdAWQEVPDUOC8938938939:4;<6<=7?>9@?:@?:B?:C@;C@;C@;D?;D?;D?;FA;FA;FA;E@:E@:G@:G@8F?7IB:HA9H?8G>5F=4E<3E<3D;2D:1D:1D:1C:1D;2D;4D;4C<4?80?80<71;60:5/:5/94.94.96/96/96/;7.<8/@9/A:0C;0E;1F<0I=/K?1M@0M@0NA1M@0N@5M?4L>3K=2I<3H;2E;1D:0C:1C:1A:0A:2?;2@<3@<3A=4SE<P40g35AG°JWÇS`Ï[fÇ^c›B>–I?•MA›OB¬RJÃSRÏNSÒENœE2B0 @0¥?1¦:-¥7*¦8+§=/¬E4¡>+˜7$:%¥>+®@/³B2¹C5§/8±9B¹DL¾KR¸NRªLL“B>}:1u;/q9,s5*2-›47º<GØEWéLaåFCÒ41Ò:9À21ÉMKÈb]”J?‹\JzdLebCbfEpqOysS~iL‹iNœrZûW`úNZû@Qþ3Iÿ-Hÿ-Nÿ*Mÿ&Hÿ-Mÿ,Ký.Jü2Lù1Kù.Kû.Lþ1Oø=Z÷?[öB]ôFaòJcñMfïQhíSkêPhéOiéLgêKiîKjôLoùOsüQuþh…ô_|æZtÖUkÎYlÊdr¨R[r-0]''X1,T<2N@5?<-7:)<C1GP=[N,aW4e_=heBstR†d~ŒhwˆdxŒgsŒer‹cr‹ctcwfz‘gz‘e~•x„›ˆŸ… Š‘¤—¨–˜©™–§—‘¢’‡˜†zyn„mg~b^wYTmMKfCXUFXUFYVG7827828939:4;<6=>8@?:A@;BA<DA<DA<DA<DA<E@<E@<E@<GB<GB<GB<FA;FA;HA9HA9HA9LC:KB9JA8I@7H>4G=3F<2E;1D:0D:0E;1E;1D;2E<3E<3E<3@91?80?80<71;60:5/:5/:5/96/96-;7.;7.=9.@9/C;0D<1F<0F=.J>0L?/M@0M@0O?/O?/O>4O>4N=3K=2J<1G:1G:1D:0D;2D;2B;1B;1@<3A=4A>5A>5Q9/X+&‰:?ÅP`ãOeñOfíPcÐGO¢20”:/Ž?.–C3®F=ËFGÞ>Hã2B§H6§F5©B3®@3°?1²>1³B4´D6²G5«B/£<)¤;&©<(­:(¯5&®3$¸7<»8>½7>½6=¿<BÅJMÄTS»ZT—@7ˆ6+….%œ62ÃHKÞNXå@Qà0Eß:4Ð-(Õ74Ê64ÈD@É\U©WKXFtX@rgIysS|qQhJdK©oYÂ~kÿGVÿAPú9Jû8Iÿ=Nÿ@Qþ:Nö5Hÿ@Sû:Mú4Ký3Kÿ0Jÿ-Iÿ-Lÿ1Sÿ1Tÿ1Tÿ3Wÿ3Wÿ6Zÿ9\ý;^ü<aþ@fü=fû<eû<gý<iÿ?mÿBpÿEsÿLuÿNuÿRvøPqëRnè`xÙdv·Wb|15h0/U3*L:,BA/:C.5G/5L2VH+_T6i`CokN||`ˆŽr‡‘v}‹qzq|s|szozŠm}Œmƒ’s‰–x•£Œœ©•£®¦±¡ª´©±¸°°·°­´­¡«¢” ”ƒ‘‚s„qh|c]tWSlLLgDVWEWXFYZH671671782893:;5<=7?>9@?:BA<DA<DA<DA<DA<FA=FA=FA=FC<GB<GB<HC=HC=JC;JC;JC9LC:KB9KA7J@6H>4G=1H<0G;/E;/E;/E;/E;1E;1D<1D;2D;2@9/@91@91?82<71;60;60:5/;7.;7.;7.<8-?8.A;/C;0D</G=1I=/K?/M@0M@/P@0O?/O?/O>4N=3N=3J<1I;0G;/F90D:0D<1D;2B;1@<1A=2A>5B?6C@7_4-t42¯KSâYiðH_ð:Qá2C½#+¬/)š9(;&•=)¬@3ÈA=Ý:?ä0;¨D4¨B3«?2®>2´?5¹C7½G;»J<¬>/ª?-¨=+¨:)ª9'²:*¹;-¼</ËEBÏCBÒ=?Ñ6:Ö7<àAFâLNÜRPÁD>ÃLDËTLÑTNÙKJÝ>Cã3>è.<Ù5+Û7.Ò0+Ò94Á82µ@9µ[P”UDxO9~dI„lPbF]F®eTÍqdÛsjü<Iô9Dì8Aç<DæCHäHKäJLåIMðLSïDMð:Iö5Hû1Gÿ-Fÿ0Jÿ5Pÿ7Vÿ7Xÿ7Xÿ8Zÿ:[ÿ<_ÿ>bÿ?eÿAiÿBkÿBmÿAmÿ@oÿ@oÿ@qÿAqÿBnÿ=hÿEmÿJpöGhíMièZrÛbs½YcŒ@D]($M-"PC2PR=CO76H.WH1eYCujT€{gŽy˜œ‹”Œ‡”ƒ~‰—ˆŽœŒ™ˆ‡’‚Š“‚—žŽ¤¨—²¶§¸¼®¿Á¶ÀÁ¹ÂþÅÅÃÃÃþ¾¾²´³¢©¢—Žy‡vh{e\sWTmONiHTYBUZCW\E560560671782893:;5=<7>=8@?:B?:C@;DA<EB=FA=GB>GB>GD=GD=HC=ID>IE<KD<KD<MD;LC:KC8LB8KA5L@4K?3J>0I=/G>/G>/F<0F<0E;/E;1D<1C:1B90A:2@91@91?82<71;60;60;7.;7.;7,<8-?8.A;/D</F<0H?0J>0K?/M@0NA0P@0O?/O@-P>2N>1M<2L;1I;0H:/F90C9/C;0B<0B;1@<1A=2A?3B@4C@7t50–FEÆY_ßUbã@Qä5FÚ0;À*+¯1%Ÿ9#•;!”: ¡=&·=.Æ90Ê2- :,¢:-¥9-¨6,°91¸A9»E;·E:­?2«@0§<,¤6'ª6)·=0ÄD9ÊG=¾9*Î@4áD=ïA@ö<?ø7<ï05á-.Þ63âH@èTJåNEÜ=7Ü0.å.0ñ27Ö3$Þ</Í,"Ñ7/Á2,±6/Ég\¶m^ŒXC„\CW?‰R=©\LÑjaãfbáUTúAIñ>Dâ<@×?>ÎC>ÍJB×RMåZWéPRìELï;Gõ6F÷2Dø/Bû1Gÿ6Lø:Tø:Tø:Tû:Wþ=\ÿ?aÿBeÿDiû<eû>hú?júAm÷@nõ?oò>mï=mÿFnÿ:aÿ>dÿInÿJløMmòSoæXnëp‚Å_j˜ILt:6\6-O9+OD2SN:`PArdWˆ|p”Ž‚Ÿœ“¦§¡¡¦ ”˜”Ÿ›¨¤¦¯¬¦¬ª¤¦¥§§¥µ´°ÄÀ½ÍÉÀÒÍÇÕÐÌ×ÏÍÖÍÐ×ÎÓÑÊÑËÆÌ¿½À°²±˜Ÿ˜€Œ€m~k^u[VoQSlNU_DV`EWaF560560560560671893:94;:5=<7@=8A>9C@;DA<GB>HC?HC?GD=HE>ID>ID>JF=LE=MF<NE<ME:MC9MC7OC7NB6MA3MA3N@3JA2JA2I@1H>2G=1F<0D<1D<1C:1B;1A:2@91?82?82<71<71<8/<8-<8->7-@:.B:/D</F<0H?0K?/M@0NA0NA0P@0O@-O@-O=1O=1M=0L;1I;0G9.E9-C9/B:/A;/A:0?;0?=1@>2B@4@@4+)¨JKÁSV¾=BÀ/6Ç.3Ä./»0)ª1 £9!›=!–=˜= ¡=#¥;#¦6"6- 8/¢5.¦3,®71·@:¹B<²@6±B7­A5¨</¦8+¯:0½B:ÄC=Ä@;Â@(Í?+Ù5)ä)$ñ #ÿ")ÿ'/ÿ-2ò((é.)ã2*ß4*à4*ä1*é0+î.+Õ6#×5&Ò2$Ð6,Æ6.½>7È`UÑq¤eSŽWC‡N:¡XGÊe[ãa_ëPTëBIùDKí@DÞ@?ÑB<ÅB8ÁB9ÌIAßPLìKPô@Kù9Hý7Hþ5Hø3Eö7G÷=K÷9R÷9Rø7Rú7Uý7Xÿ9]ÿ<aÿ=gÿ@kÿ@nÿBqÿDtÿCuûCuùCv÷BuÿFgúAaþEeÿJlÿJkÿUtÿ^zö\vôi~éo~Önw¯]a„CAh6/hB7vTHwf_Œ}v£–¬¤¡²®­¶¶¸²µºª¯µ°·¿¶½Å½ÁÊÂÂÌÃÂÊËÅÏÕÎÖßÕÞäÙÕèÝÛéÝÝæÚÞåØßä×àáÔÞÙÏØËÄË»¹¼¤¦£ˆ’‡t‚qexb[tWXqS\iK\iK[hJ560560560560560671872983<;6?<7@=8B?:DA<GB>HC?ID@HE>HE>ID>JE?JF=MF>MF<OF=NF;OE;ND8PD8PD6PD6QC6QC6OC5MD5KB3JA2H>2G=1E=2D<1C:1C:1A:2A:2@93?82<71<71<8-<8-<8-?8.@:.B:/D</F<0I@1K?/M@0NA0P@0PA.O@-O@-O=1O=1M=0L;1H:/G9.E9-C9/A9.@:.@9/?;0?=1@>2??3@@4”67Á]_ÈZ[¯78®,,µ/,±,#°0#¯8$®B(©G* G'šF$šF$–C!”? Ÿ81£;2¦92¨50°:6¹B>¹D=±>7«<3¨<2¦</«<1¸F<ÆKDÄE>»72»:Ê<$á:*ñ.(ÿ$&ÿ'ÿ'ÿ%ÿ%(ù,)ñ2*ë5*è3(è2'ê/&ì-%Ü=(Ñ2Þ>0Ñ5)Ê7/Â?7¯C9Çqd²m]–YF™VE¿i\ÝlfãSSë@Hù?Lï<Bä:=×<:Í@9Á>4¹6,½4.Î44ïBHø8Gÿ2Fÿ3Hÿ5Iú7Gö<JöBNÿ>Yÿ=Xÿ:Wÿ6Wÿ5Yÿ5\ÿ6_ÿ7eÿ;kÿ:mÿ;oÿ<rÿ<rþ=tû>tû>vôEbýNkÿTqúIfð?\ÿRqÿfƒÿf€ô^wêbváky×s{Ärvªfe”ZV‰TN’€~¨™–¾°°Ä»¼ÆÁÅÈÇÍÅÈÑÀÄÏÆÌØÈËÚËÍÜÓÐáÚÖåäÜëêßïîáòòäãõççöçêóâèñàêïßêìÜéå×äÓÉÒþĪ¬©—y‡vi|f`w[\uWbqRapQ`oP201312423653875984984983;:5<<4==5??5AA7CC9EE9EE9HH@HH>HH<HI9KJ6LK6MM5MM5LK7IG8EE;HGELIPKIWFCVA=TQF4NC1JA0KB1MD5LB6F>3B90E<5C:5@85?74@86?67>56:44F85E76B87@78>:;<:=<<>==????A@<DA:HB6JA2M@-P?+O?(CB0F?/K:2O62Q35Q28N5;F:<??=-=3)A1.J4/G-,?#5B&GP3Ô`S»J<§7)¢7'£:'ž9%ž;&£@)Ÿ;$£='¬?+¯?+²:)±6&³4%´2$Ÿ8'Ÿ8'Ÿ:(£>,§B0©D2©D0©B/¨?,«>*­<*µ=-¾C4ÅF7À>0·3&Í6+Ì8,Ì:-Ì=/Ï=.Ô</Ý90æ5/ï/,õ--ø.,ó0,ë4,à9)Ø=)Ó>(Þ9%Ô4Ï4 Î9%Å8&¾6&Æ@4ÕQEÒIAÜMIïUUüVXýJPø9Aü4?ÿ9DäCHßCFÓAAÆ?;¹=3®=/ª?/ª@0¿Q@ÉQCÑLCØC=å??÷@Eÿ>Gÿ8CúGMúENûEQþESüARú=Sü>XÿCbÿGiÿBhù<fô;gô=køDsûIyýK}ÿMyýNwóRtçTqÝQkáQlø[xÿdˆÿY…ÿ?lÿMxöX{ÍYp¿yƒca„}sª½§™ÑŹÚ×ÎÛÝÚÙÜáÞÜéåÙíëÔîôÓðùÔóýÙóüßóøæòõìñóïðøõðøõð÷òïôîîðêêíäçèßäæÝâÖÐÔÍÉÊ»¹º¤¤¢Š|zt|qpzo~…sy€nv}k0./1/0320542653762873872:94;;3==5??5AA7CC9DD8EE9HH@HH>HH<JH9KJ6LK6MM5NM8KJ6KI<KJEQORWU`ZWhVTjQNiSI@ND;H?6F=6G>7H?8F=6C:5C<6A:4?74?74@85>95=84;63>3/=4/>42<74=98<;9=<:>=;@?;C@9G@6J@4L@0O@-P?+P>(=B,?A,E=0H92K63J46F35A57>=;8=69?5?A4C=-J9)^B4sRC¼K=¬;- 2#¡6&£:'8$ž9%£?(¡;%¦=(­@,³@-¶=,·9*¸6(¹5(¦;+¤:*£9)¥;+¦?.©B/«B/«@.­?.«:(±<+¿E6ÆH9Á?1¼8+½7+Ï5+Ï7,Î:.Ï;/Ó=/×;/ß8/ç4/ð0-õ--÷-+ò/+ê4)ß8(Ö;'Ï=&á:'Ù7"×8%Ô=*Ì;*Á5&Ã;/ÍG<ÐG?ÙJFèPOóPQôGKò;@÷:Aÿ?GàDGÜDCÓB?Å>8·;1¬;-ª<-©>.µF5ÅM?ÓNEÜGCã?@ñ>Bý>Fÿ>H÷DJ÷CLúDPÿFTýBSú=Sü>XÿBaÿFhÿCiü?iù@lùBpûGvüJzþL|ÿIxÿHtõKpðRsò]zö`{ùXwýMqÿCkÿAlóCjÝJgÉ^p®pugNI†‚v´”‡Ì²¥äÔÇëäÜèéäéêîéçòíáõöâûýàüÿâýÿçþÿìÿÿòþÿ÷üþúûþûöýúõü÷ôúôôøïðôëîñèëïæëäÞâÜÖØÊÆŲ²°ž ›Ž“Œˆ…ˆ…–†‰€†}/.,0/-10.21/43/540762761:94::2<<4>>4@@6BB8CC9DD8IF=IG;JH;KJ8MJ7NL7NL7OL9KI:NKBTSQ_^dihxmm…lkŠihˆcYd[QZQGPJ@IH>FG>CC=A@:<A;;?:7<73<73=82>:1>:1=90:3-94.;60=82=:3>;4?<5?<3C?4F@4I?3L@2O?0P?-Q>-P>*3@&7?'<=+A;-B8/A62>42;31=85B:7H94O2.[+)o-.Š:= EJª9+¢2$Ÿ1"¤9'¥<)ž7$8$¢<&¤;&¨=)±A-¶A/¹>.»<-¾:-À:.®>0¬<.©9+¨:+ª<+¬>-­>-¬=,²?-®9(¸>/ÊL=ÊH:¼6*º2&Å;0Ó5*Ô6+Ò8,Ô:.×;/Û9.â7/é2,ñ/-õ.+õ.+ñ0)ç2'Ý6&Ó8$Ì:#à7$Ü5#Û8'Û>-Ó=.Æ7)Å8.ËA7Ç<5Ì?8ÙEAåKIìIJëCCí?Að@CÜDC×C?ÏB;Â=4¶:.­9*ª;*«<+ª9)¿E8ÔNEÝIEâ?@ë<AùAIÿFPôAGô@IùCOýGTþEUû@Uü>Xÿ@_ÿDfÿCiþDmÿFpÿIwÿK{ÿL|ýK{ÿCvÿGwÿJtúNtþZ|ÿa€ýUvòCdüHkÿRvÞ=\ÎH`Úz†µ}~\F;„r³‹Õ³§óÛÑúíåøóðøøú÷ôýôëüüêÿÿéÿÿëÿÿíÿÿòÿÿ÷ÿÿûÿÿýþÿþúÿýùÿûøÿøöþõöýòöûðôúïóðçêåßáÓÏξ½¹­®¨¢¥œ£™£—¤ªœŸ¥—œ¢”/.,/.,0/-10,21-32.54/650872991;;3==3??5AA7BB8CC9IE<JF;KG;OI9PK8QL8QL8OL;LJ=SPK^]bmlzzz’£€‚©~«|u–rkŒe^}YSoRMdMEZG@PB<HD?F@;?<87;62;7.<8-=9-<8,880991;;1><0?=1@<0?<-A;+F?/H?.K?/M@/O?/P?/Q>/P=.<@)=?*?>,?<-?;0=:3;:5:94<94D95N43[*-o&--8¨3C¶7H§7)¥7&§9(ª?-¨?, 9&Ÿ9#¤;&¥:&«<)³>,¹@/½>/Â<0Å=/Ç=0¹@5¶=2²:,®8*¯9+°:,²:,²:*¶;,¹;-ÄB4ËE9Ç?3¾1'À2(Ê:1Ú3+Ø4*Ù7,Ú8-Ü8.ß7,æ3,ì1,ó0,õ.+õ.)ï0(æ1&Ú4$Ñ6 Ê8Ü/Ú0Ú4$Ý;,Ø</Ð9.Ï<2ÒC;Ã6/Ä70Ê;5ÖE@âMIåLGÞC?Ù;8ÑA9Ï@8Ç>4¾</µ:+°8*®:+°<-¬4&½?3ÏHBÙHEßABæ@DôELÿLUð?Eð?GöBKþHUþHWüBWû?Wý@\ÿBbÿCfÿFmÿIsÿMyÿO|ÿL{þJyÿ@tÿL~ÿQ}ÿJrúLoÿUwÿUuùLjòEcïKfÒ>Vßetû §Í‘]=2aP@©wlÑ¥œöÔËþêãÿôòÿþÿÿüÿùóÿüïÿÿïÿÿðÿÿòÿÿôÿÿ÷þÿûýÿüûÿýùÿüøÿúøÿù÷ÿö÷ÿôøÿôøþó÷öëïìãäÚÔÔÉź¹´³´¬±´©²µª¶¾³°¸­¬´©10,10,0/+0/+10,21,43.54/77/880991;;1==3??5AA7BB8KD:LF:OG:QJ:RK9SL9RM:QK=OKBVTUfdowx††¨»“ÃŽ‘ÆŠÀ‡‚¸{w©rlœid_[~UPnNJaJGXEBM?=B;7696196-86*86)581692891;;/><-?<+C<)D<'I>*J?+L?,M@/M@0M?2M?4L>3M?4K?3F<2B90=909:25<44>57<5>:1H3.\0/{48œ;D¯9E²2Aª<+ª<+«@.¬A/©@-¥<'¥<'©>*§8%­:'µ<+¼=.Á;/Å;.Ê<0Ì<1ÁA6¾>3º:/·7,·7,¸8+¸8+º8+»7+ÇA5ÍC8Å8.Á1&Æ3)Ë7-Í6-à2+ß3)á5+â6,ã5,ç4-ê2*ð/*ö/,ø.*ô/)ì0'ã1#Ù4!Î6É7Ú/Ù/Ù2"Ù5)Ù9-Ô:0Ö?6ØE=ÕF>Í@9Ç<5Ë@9ÖKDÙNGÐF<Å;1Å=1Ä<0À</º;,·9*´:+µ=-¹?2µ9-½=4É@:ÒC?ÛBDãDHîIOöOVí>Cí>EóBJûJTÿJYýFXúCYýB]ù@_ûBdþFjÿJsÿOxÿOzÿLyýIxÿGwÿRÿQ}ÿIqûImÿStÿVtøNiëD^äF]èYkÿ—¢ÿ¶¼î žˆKFd2)©jcÍ–ôÇÁÿãÞÿòðÿüýÿýÿú÷ÿý÷ÿÿöÿÿöÿÿøÿÿùÿÿüÿÿýýÿýúÿüøÿûøÿúøÿø÷ÿ÷øÿõ÷ÿôøÿôøýñóóéêäÜÚÖÑÍÍÊÃÉÉ¿É˾ËÍÀÇÑȾȿ·Á¸84163.52-30+30+41,52-63,85.96/:70<90>;2@=4B?6B?6KC8ME:PF:SJ9TK:UL;SL<RL@QLHZW^kj|~Œº–™Î˜žÚ™žÞ™˜Þ“’Ö‹ŠÌ†„Ã~·xv¨ml–fe‡]ZwVTiMKXDAH><=;:6;8396/267465672880<:-A<)D>(G?(I?&J?)IA,JA0IA4IA6HA9G@:R9<N8;I68A57:65384.93+;12?517+=3'X:0{D=•GCž>?ž46§<*¨=+ª?-ª?-©>,©>*¬?+¯@-«8%²9(¹:+¿:+Ã9,É9.Î:0Ò;2É>7Æ;4Ã81Â8.Â8.Ã9/Â8.Ã6,Ä7-ÑC9Ò?5Ä0&Ã,#Ð7/Ö<4Î4,æ1*æ1*ç2)è3*ê3+í2+ð/*ó.(ø.*÷-)ò/)ì2&ã3$Ø5"Ï7 Ì7Ü5#Ù3#Ø2$Ö2&Õ5)Õ7,Õ;3Ö?8ìYRáRJÓHAÊD;ÉF<ÊJ?ÅG;½?3¼;(¼;(º;*¹:)·:(¸:+¼>0¿A3ÁA6Á<5Å<6ÏA?×EEÝGIãJMèMQëADì?EðCIúJTþN[üJZüF\üF]øA]ùBaýEiÿJpÿNwÿOzÿMxÿKxÿR{ÿR{þOvýOtÿVwÿ]{ÿSoîD^øUjîQd÷dtÿ’žÿ‹“òƒ‰Ç`c­KL²keÏŽˆñ¼¶ÿÞÙÿðìÿúúÿüþýûÿüûÿþûÿÿûÿÿûÿÿüÿÿûýÿûûÿûøÿûøÿüùÿûùÿûúÿøúÿöøÿòõÿðóûìïòææçÝÛßØÒÛ×ÎÝÛÏàÞÑàáÓÚãÞÏØÓÅÎÉ<94;8385052-41*41*52+63,74-85.96/;8/=:1?<3A>5B?6KA7MC7RF8UI9WK;WK;UL=SJASJK[Xcnl‚‚‚¨‘”Çš Þž§ì¡©ò¡¤óž í™›æ•˜ß”•Ö̈‰¿‚ƒ±zz rq‘fd|XWiPN\IGRFCJDBG=?K==G;:?;:8<92A;-D=*F@*F@(GA)GB.ED2CC7BC=AC@>BAG9HH<JG?LGDODGN@JL;II:ID?KA<@2F=.bH9QB‰K<Œ@2Ž;-¨=+©>,©>,ª?+­@,¯@-°?-°=*±8'¶8)½9*Ã9,È8-Ì8.Ò91Õ;3Î;4Í:3Ë81Ë81Ì92Í:2Ì70Ë6/Ó<3Õ>5Ò91Ì2*Ð3*Ù;2Ú<3Ó5,è0(é1)ì1*î1+ñ0+ò/)ô-(ö,(÷-)õ.)ñ0)ê2(â5%Ù6#Ò7!Í8 Õ8%Õ8%Õ5%Ñ4%Ò4(Ô6+Ô7.Ð7/ãNGèXPçZQØRIËH>ÃE9¼B5·?1¹<&¹<&¹<(¸;'¸9(º;*À>0Ä@4ÉD;Æ?9É@:ÑFCÕIHÖHG×IHÛJMìCFêADíDIöKSüQZýN]ûL]üJ`öD^÷DaùFfýIlÿNuÿOxÿOxÿNyðYzðWvóVuüYxÿ]{ÿZuûQkòI`ýWköUgêN\ö^kâKZçSaçSaåQ_¸jfÉ‚~窧ÿÓÑÿëèÿôòÿøùÿÿÿùýÿùüÿûüÿüüþüúûýùøüøõü÷ôÿú÷ÿûøÿüúÿûúÿøøÿòõýîñúëîðââëÝÝäÙÕâÙÒæßÕëçÛñîßóñâêóðÜåâÏØÕ@=6=:3:7074-52+52+52+63,74-74-96/;8/=:1?<3@=4A>5M@7OC7RF8WJ:XK:YL<WK=TICSJM^Xfpmˆ‚„­‘–Íœ£ç£¬ù¥°ÿª±ÿ¦«ü¡§õž¤îŸ£ê ã™›Ø•–Î’’ĉˆ´yyŸji‹`]|XUpSOhPLcMJeKG^FBS@=H?;<?:4B<0A>-C@-CB.BC3AE7>E=<EB;EF9DF:D]@JcHTjR]oXdt\fp]dj`ac`[W]LDgI>€UE’YFL7A+“A+«@,®A-®A-®A-°A.²A/²=+°7&µ7(¼8)Â8+È8-Í6-Ñ7/Õ8/Ù;2Ò73Ñ61Ñ61Ò72Ô94Ô94Õ81Ó6/ÞA:Ö8/Ñ3*Ø7/Þ=5Þ=5Û8/Ù6-ë0'ì0'ï0(ò/)õ.)ø-)ø+(ø+(ø-)ô/)ð1)é4)á5'Ù8&Ó8$Ï8#Í8$Î9%Î7$Ï6&Ð7)Ô8,Ó7+Î4*Ì3+ãNGôd\ë`YÔOFÂB9¸<2´:/·?&¸>&·=&¸;%º9&½9*Á;/Ä>3ÌC9ÊA9ÎE?ÕKHÓLIÎGDÌFEÐJIéFGæCDéDHòMSùRZùR\ùN^úOaõG^õGbøGdûIiÿNrÿRvÿRyÿRyå[uë\xõ`}ü_|øUpõMgùPgÿYnÿ[mÿbsóL]úSdøM_ÿRgüI_ýE]³d`¾tqÚš˜ûÈÅÿåãÿîëÿõôÿÿÿûÿÿùÿÿùÿÿúÿÿüþýýüúýùöýøõÿøõÿùöÿúøÿúùÿööþððøêêõåæìÜÝèÚÙæØÕèÞÕðèÝùóåþûêÿþíòûúâëêÔÝÜA>5@=4?<3=:1;8/96-74+63*52)52)63*74-:70=:3@=6B?8J@6OC7RF8VI9WJ9XK;ZL?[NHTIMXR`gd|}©’Ì—Ÿçž©ù¤°ÿª³ÿª³ÿ¬³ÿ«³þª±ùª®õ¨«î§«êŸ¡Ü™šÒÁ±ur¡he’]Z…XR~YP{YQxVOpOG_E?M?:@?;8@@6>>2@B5@F:>E=:C>9CB<GI?MP:YvKh†[udunx‘|zq‚|`n†]eX[œXU¥WM¥M?A,š:"Ÿ;#©<(«>*®?,±@.³@.´?-¶=,¹;,º6'¿5(Ä6*Ë7-Ñ7-Ö8/Ú91Û81×84Ø95Ù:6Ú85Ø61Ø61Û83Ý:3æC<à=6Ú70ã@7þ[Rÿlcÿ]Tã@7é1'î2)ò1*ô/)õ*&÷'%ø(&ú*(ø-)ó0*í2)ã1%Ú0#Ó1"Ò5$Õ:(É=&É=&Ë=)Ï<*Ñ;,Ò9+Ô8,Ó6-Ú@8Ð71ÜGAôc^ãXQÉB<Å@9·3.´<#¶<$¹<&º<&½:(¿:)Ä<.Ç=2È>4ÌC;ÙPJßXTÓOJÁ@;¿@:ÊKEäFEäFEèJKïPTòQWïNVïKVñL\ùRdøOf÷Ke÷JfüMnÿRsÿRvÿPtê[wêZuðZuú[wÿ]xÿZsÿWnÿViÿctþVgÿ\mÿYlõDXùBXÿMeÿIb·nh­hcËŽ‹èµ²ùÑÏÿêéýïîúù÷øþüøÿÿøÿÿøÿþúþýþþüÿûøþöôþùõÿû÷ÿùöÿöôÿööÿõõöèèç×ØäÔÔÞÐÍãÖÐñçÝüôçÿøèÿüéÿÿí÷ÿÿèñðØáàC?4B>3A=2?;0=90;7.:6-95,73*73*73*83-:5/=82@;5B=7I?5LB6QE7UH8VI8YI9YK>ZMEUKLXP_ebyz¦‰É”œäš§ö ¯ÿ«´ÿ¬µÿ­·ÿ¯·ÿ¯·ÿ¯¶ü¯³ú¯²÷§ªí¢£ä˜˜ØŒŠÉ€~½uq®ie¢b^›cVŽbU‹]TƒWOtNHdFCTBAIAAA;=8@C<DG@BD??A@BCGMNSWW_Vl“gyŸw¥€€¢Ž œ}œ£qŒ¥_w¯XkºTa¾OU¼FD¶=4±9(±:$°<#§8%¨7%©8&­:(°8'²9(µ7(¹5&»3%Â4(Ë7-Ó;0Ù<3Þ=5à;5à;5á>9ß<7ß<7â=9æA=èC=éB<èA;ç@:èA9ä@7Ü8/Õ1'Ø6+ëI>þ\Qô?4î6,ê+#î)#ù,)ÿ./þ,-ø((ú0.õ4/ï7/ç6,Ü4)Ö2&Ó3%Ò5&Å='Ç<'É<(Ì;(Í:(Ï7)Ï6(Ð4(Õ8/Ï5-Õ<6åPJçSOÛLHÏA?º/,¹=%º>&»='½<'¾9(À8(Ã9,Ä:/È>4ËB:ÕOFÜWPÒQKÃD=¿B<ÆKDáIFáIFåMLëSRíTVëPVéNVìOZ÷VføUhùSiúRküRmÿSqÿStÿRsïNoøTvÿ\|ÿ^{ÿ[vÿUoýQgûReüUføQbÿZhÿZjôM^úRcÿWiôI\§ha™\W·€{Ù©¥ïÇÅýáÞùêçýøõøýùøÿÿ÷ÿÿöÿýùÿýÿÿýÿûûÿö÷üùòþùõþùõþöóÿ÷õÿõõøêéêÜÛäÖÓÝÐÊáÔÌïåÙüõåÿùçÿýéÿÿì÷ÿýèñîÙâßEA5EA6C?4A=2?;0=9.<8-;7.84+84+73*83-:5/=82?:4A<6G>5JB7ND8RF6TG6WG7YI:YKBWKKXP[b^wsuž…ŠÂ™Þ—¤ó¬ÿª´û¬¶ý®¸ÿ±¹ÿ²ºÿ´»ÿ³ºÿµ¹ÿ¯²ùª­ô££ë™—àŽŒÕ‚€Éxt¾qm·l`¢i]dY“^V‡VQyNKhEDV@@J76;?=>HBBKABN?BYFJmX_}fnt¤}¬§‚®¬}§´w ¾p—Âc…ÃRpÅE^ÔI\×EPÊ9<¾3,»7(¸;%³; ¯<*¯<*°;)³;*·<,»<-À<-Ä<.Ä6*Ë8.Ô<1Û>5á@8á>7à<3á:2Ü73Ù40Ø3/à93èA;ìE?êA<å<5ã<4Û4,Ø4*Û7-Ô2'Ì, Ö6*èH<÷I>ò@6ï4-ð-)÷+*ý+,ý+,ø*,ñ))ì/+è3,â5.Ü4+Ö2(Ô2'Ô2'Ç:&È;'Ê<(Î;)Ñ;*Ò:,Ô8+Ô8,Ñ4+Ø;4Õ:5Õ<7çONîXYÙEEÅ02¾=(¿<(¿<(¿:'Á9)À8*Á7*Á7,Æ>2ÇA6ÏJAØUKÑRIÄH>¿E:ÃH@ÚIDÙHCÝLGäSPåSSâPQâMQåNWòXdöZhý[pþZrýUoûQlýPnÿRpÿFmÿOvÿZ}ÿ[{ÿVqÿSkÿVkÿ[mûYhúYhü`mö`kî\fñenífmÚT[’cY}ND™lfØ’ß¹¶ñÓÑôàßþöôøú÷÷ÿý÷ÿÿöÿýùÿýÿþÿÿýÿÿ÷ûúúòüùôüùôýøôÿùöÿøöùîìñãâçÙÖÝÐÈÜÒÈîäØýöäÿûèÿýçÿÿè÷ýùêðìÝãßIE9HD8FB6D@4B>2@<1?;0>:/:6-95,95,94.:5/<71>93@;5E>6HA7LD7QE5RE4UF3WG7WI<XMIXNW_Zppp–€†ºŒ•Ö”¢íšªø¨°ø©±ù¬´ü¯·ÿ±¸ÿ²¹ÿ´¸ÿ´¸ÿ®²ü«­ø¥§ôŸžì—–䌋قÏ{zÈxl´pf«h_ _Z’YW†QQwGGc@?Q<6DF9BS>C_@EmDJ€OU•]f¦jrÇe˜ÍkœÏl›Ïf‘Í]…ÎTyÌFgË8UÌ0Hß>PäBMÔ:<Æ7/Ã@.ºB*®<!­5$­5$®5$±6&¶7(¼8)Ã;-È</Ó@6×@5Ú@6Ý?6ß<5Þ:1Ý6.Û4,Ò/(Ò-'Ó.(Ú3-á:4ä;4á81Ý4-Ü5,Ò+"Í)Ù7,âB4Ü?0Ð4%Ê.éF7óI<ýH?ü<9ö,,ó"%÷&)û/2ñ-.ë/-ä2.Þ3,Ù2*×0(Ö/'Ö/)Ð8*Ò9+Ô;-Ö=-Ú>/Û?0Ü@3Ü@3Ò6*èKBåJEÎ50àFFóZ\áHKØ?BÆ=-Ä;+Ã:*Ã:*Ã:*Ã9,Á9+À8,Â<0Â>2ÈF9ÏOBÎPDÄH<¿C7¾D7ÑF?ÑF?ÕJCÛPKÝROÙMLÚKMÜKPëX`ó[hüaqÿauûWoõOgõMgúPkÿJuÿOyÿSwÿRqÿSmþ[pÿcuÿixÿguüaoôbmìelàglÔjjÉjh¼c_dVeH:_Tª‡Í«©åÇÇïÚÙÿóóùøöøþü÷ÿÿ÷ÿÿûÿÿÿþÿÿüÿÿ÷þûüôúûóûúõþûöÿýùÿûøþôòøíéêßÙÞÔËÝÓÇíæÖÿøåÿþèÿÿæÿÿçõúóêïèáæßLI:KH9JG8HD8FB6D@4B>3A=2=9.<8/;7.;60;60<71>93?:4B?8EA8JD8NE4PE1TE0VG4XH9ZMEVMR[Whkl‹~‚²‰“Ð’Ÿå™§ò§­÷©¯ù«±û­³ý°´þ°´þ°´þ¯³ý«®û¨«ø¥§ô ¢ïšœé“•âŠŒÙ„†Ó…É{u½mk­dd _a”X[†QQsNHbUFY_CRlBLEO˜LV¬U]¼[dÅ]fçJuéNxæPuàLn×FcÒ?YÍ5JÊ+?Ú5EçAMéFKÙ><Í>6ÊH8¿J6°B)·>-¸=-º<-½>/Ã?2ÊB4ÐD7ÕE:ÙE9ÚB7Û>5Û:2Ù6-Ù5,Ú3+Ù2*Ô1*×4-Û60Ý90ß80Þ7/Ý6.Ü5,Ö/&Ù5+Ø6)Ï2#Í1"Ò9)Õ>-Ó<+Ö=-æD7÷KAÿD?û56÷)-÷)-ù.2ø67í55â30Ú1,×/,×/,Ù0-Û/-ã80â:1â:1â<0à<0ß=0Ü?0Ú>1Ñ7+ïWLù`XÓ;6Ó;:èOQÞEHèOTÍ=2Ê:/Æ8,Æ8,Æ:-Å;.Ã;-À:.¾:-¾<.ÁB3ÇH9ÇI:ÂD6¾@2¼>0ÊE<ÊE<ÎI@ÕPI×RMÔNKÓKK×LOçZ`ð^hüfrÿhxü]qóOgóMeùQjÿPzÿQxÿQpûSmø\qûhxûjw÷epüfró_kí_kêkrÝsu¿lh¦f\¡l^ujXVI8kXJ–{t¾ŸœßÁÁïÕØþîïûõõúüûúÿÿùÿÿýþÿÿýÿÿûÿÿ÷ÿýÿ÷ûþõûüöÿþùÿÿúÿþúÿûõÿ÷òñèáäÜÑáÙÌðé×ÿúæÿÿæÿÿãÿÿäöùðíðççêáQK=PJ<OI;MG9KE9IC7GA5G@6B;1A:2@91?82?82?82A:4B:7@?:EB;IE9MF6PE1RF0UF1WG7YLCUKLZTbii…|«‰’É“žÞ—¦ë¨«ú©¬û«®ý­°ý®±þ®±þ­°ý­°ý©­÷§«õ¤¨ò¢¦ðŸ£íšžè•™â‘•Þ’’Ú‰‰Ï|€Àrx´nu«lpŸhhŽj_x`x‚WjO_¥OZ½R\ÑR[ÚOVÛHPñ:Pî=QéAPàCLØCIÑ?BË9:Ê45åIJèHHã@AÕ76Î93ÌB8ÅE8º@1ÃE6ÃE6ÅF7ÉE8ÌG8ÑG:ÖH<ÛG;Ö>3Õ;1Ö8/Õ4*Ö3*Ø4+Û4,Ü5-Ú9/Ý<2à=4ß<3Ý90Ü5-Ü5,Ý6-Ò.$Ý;.Ü<.Í1"Å.Í8$Ð=)Ì;&Ë:'Ò9+á:1ó=9ÿ@@ÿ;?ÿ27ô+1ê,.ß+,×+)Ó+(×/.Þ44ä88è:;ó55ò64î73é6/ã7-Ý5*×5(Ñ5&Í5'çPEÿmcÛHAÈ42×CCÓ>BêUYÙB;Ô=6Ì70Æ6-Ç9/Æ<1Ã=1Á=.»9)»<+½@.¿B0¿B0¾?.¼=,»<+ÃC8ÄD9ÈH=ÏPGÒSLÐOIÐOJÔOPç_cîaiûitÿm|ÿdu÷UjõRgýWoÿSxÿUtûWpð_pñoyôy~êmsÞXaïamò`mïaoðs{숊ɂ|¥wjšyhhpYMO:^WGƒqg±•’Ý¿¿ñÔØýéëþôõýûþûÿÿúþÿýþÿÿýÿÿûÿÿöÿüÿøùÿõúýôÿÿúÿÿúÿÿúÿý÷ÿþöùðçíåÚéâÒôïÜÿûåÿþåÿÿãÿÿâøúíòôçîðãSM=RL<QK=OI;MG9KE9JD8IB8E>4D=5B;3A:4@93A:4A96B:7@A;CC;IE:NG7QF2RF.UF/WH5XJ=RHFXR\jh€}§‹’Æ’žÚ–¤å¥¦ù¦§ú©ªý«¬þ¬­ÿ­®þ¬­ý«®û¨¬ö¦ªó¤¨ñ£§î¡¨î §ë¤è›¢æ™žâ’šÛŠ”Ò…Ê‚ŽÂ‚‰·‚©‡yšŽmˆšczªWi¾P]ÓKWäGPí?Hñ9Aî;6é<5âB6ÙH7ÎJ5ÅG1ÂD.Å@/ãUGàG?Ú;7Ø64Ø88Ö:;Ï98Ê66¼=.¾<.¿;.À;,Â8+Ä6*Æ3)È1&Í5*Ð3*Ñ3(Õ2)×3*Ù5,Ý6.Þ7/Ü>3Ý<2Ü;1Û8/Û7.Ú6,Ø4*×3)Õ3&Ó3%Ñ4%Ï6&Ò=)Ñ>*Ê9$À2Æ;(È5%Ó3'ç60ü;<ÿ=@ÿ7=ù27ê-1à..×--Õ0.Ü44ã9:é;=ë;>ý.4ú/3ö01î1/æ1*Þ2(Õ1%Ï3$È2#Ð>/új_ãTLÈ95Ð@@Ë:=ãRUçJEÝB=Ò93Ê5.Æ8.Å;0Â<0¿=-¹<*¼?-½@.¼?-º;(º;(½<)¾=*º>2º>2ÀD8ÈLBÌPFÊNFÌMGÐNLçbcêbføhqÿo{ÿhxøYm÷Ujþ[pÿXsü\tìbqãktç€í‰‡ãyyØ_dñhrÿl|öcsíkwø‘•é¤ŸÀ–Š¥‹z\pWFR<UVFtg^¤ŒˆÜ¾ÀóÔÙùâèÿóøÿúþýþÿüýÿýüÿÿüÿÿúÿÿôÿûÿøøÿõ÷ýóýÿùÿÿúÿýöÿý÷ÿÿöÿùïõïãòìÜúõáÿþçÿþâþÿàÿÿãýþðùúì÷øêUO?TN>RL<PJ<NH:LF:KE9JC9G@6F?7D=5B;5A:4A:4B:7C;8@A<DD<IG;MG7OG2RF.VG0WH3VH;RGCWRYjh~~‚§Œ”Å’žØ–¤ã¡ž÷£ ÷¦£ú©§û©ªýª«ýª«ûª¬ù§«õ¥©ò£§î §ë¢ªë£«ì¢ªë¡©è˜¡ä–¡á”ŸÝ“ŸÙјǒ‘¹™Š«‘m‰£c{´WjÇM\ÚBNë;Eø6>ÿ4:èB*âD)ÙH)ÎN+ÃO(¹L%¶H%»D&ÛWBÚF8Ú;5æ>>íBHé>Fß5>×08ÈF8ÇE7ÈD7ÉA3Ç=0Æ8,Æ3)Ç0%Ê0&Î1(Ó2(Ö3*Ù5,Ù5,Û4,Û4,áC8Û=2Ø7-Ø7-Ü:/Ý9/Ù5+Õ1'Ù7*Ð0"Ì0!Ð9&Ì9%Æ5 Ç9#ÑE.Á:&É:)Õ7+â3.í//÷05þ5;ÿ;BÿIMúGJîDDæ@@ä>>ã9:ã28á.4þ'/û(/ø*.ó-.ë0+ã2*Û5)Ô7(Æ0!¾/óeYê]TÌA<ÓEDÊ;=ÝNRïPMäFCÕ:6Ê5/Æ8.Ä:/À</»<+»>,¼A/½B0º=)·8%º9&¾;)Á>,²8+²8+¸>1ÁG<ÅK@ÄIAÆICÊJGå`aæ^bñdlÿlxÿix÷ZköTiýZoú^tòcuãgqØqrÝ…é”ꋇåruùq{ÿxˆõ`sßXgóŠ‘ý¶´Ö«¢¬•…TnSAS;PTCkaWž†‚Ý¿ÁõÖÛøßåÿóùÿûÿÿþÿüýÿýüÿÿüÿÿúÿÿôÿùÿø÷ÿôöüòüÿøýþøüüôÿýöÿÿöÿþôûõç÷ñáüúåÿþåþýáýþßÿÿãÿÿñýþîüýíXO@XO@WN?VM>TK<SJ;RI:QH9MD5LC4KB3I@1H?0H?0H?0H?0FC<GE9JG8NI6RJ5UJ4UJ4VK9XNDULMXTbii…{~©‰ŽÆ‘™Ú— å¦¢ù¦¡û¢¡þ¡¡ÿŸ£ÿŸ¨ÿ «ÿ¡­ÿŸ«÷ ªï¡©ê§¨ë«¨ï²§õµ¦ù¶¤ú—«ÿ“¨ùŒ£ç£Ö¢¦Ë´ ¹½„“ÆbnÑEPé:Gõ5Bø4>ñ8>æ=@ÙD@ÑHBå;Dà;BÞCGÉ99ÌB@ËD@½/-ÞHIëHKîAGï;Dì8Aé:?â<>Ú<;Ô<9ÏA=É>9ÊC=ÑLCËK@¼>2³7+¹;-¹9,¾8-Å7-Ê3,Ï0,Ô/-Ý11á34çA1à9)Ü1 á1"é8(ê;*ã6%×2Ñ2Ì4Ê5Ç4 É3"Ì3%Ñ3(Ô3)Í.(Ï2+Î6+Ì8*Ë8(Í7&Ð7%Ø6'ß3'é2,ð31ò01ð+2í*2í+4ï-6ú+1÷*/ñ+,î.-ë4.ä8,Ú7(Ð5#Ã.Ä3 çXHèZLÊ<2ÞOGÄ5/ÚIFÝQRÚLKÒDBË<8È80Ç7,È9+Ê;+È;)Å:'À9%½:&»<)º=+¸=+¶=,³9.µ;.¹=1½?1½?1¿@1Â@2ÅA4ïk_õqeêd[ômiùroécbðjiútuÿk|ûivñdmï_hòaføgjõnkîqk÷|wÿ}ƒþYjÿ[wîZpû¬±«°œaŸz]sMIZ6LR6snX£–†Ë·®íÕÓÿîðÿõ÷ÿ÷ûþøüüüþþÿÿþÿÿþÿÿýþÿæÿòàÿëâýêìÿð÷ÿôûÿôþÿóÿþñÿýïÿûîÿùèÿùæÿøãÿùãÿùáþúáýÿþþÿÿþÿÿYPAXO@XO@VM>UL=TK<SJ;RI:NE6MD5LC4KB3JA2JA2JA2JA2FC<GE9JG8OH6RJ5UJ4VK5VK9XNDUMKYUciiƒ{}¦†‹Â•Ô“œß œðŸñžžöžŸû¢þŸ¦ÿ ªÿ¡¬ü ¬ô «íŸ§æ¢¦æ¦£èª¢í« ïªï™ªü—§ô˜£åžžÒ¬šÂºª½r†ÃUbÓCMå;Dð7?ñ6=í8=ã=?ÛAAÕDAä:CÜ8?Û@DË;;ÊC@ÈA=¿41åOPäDFé>Dë:Bè7?ä7;Ü89Õ:8Ð;7ÓF?Ç<5Å<4ÌG>ÌLAÁC7¶;,·9+¹7*½7+Å7-Ë4-Ñ2.Ø3/á53æ66á?0ß<-Þ6)à4&á6%á6%Û4"Ó4Ð:"Ê:"Æ:#Æ;&É<*Í;,Ì8,Ì5*Ö3.Ö5-Ñ7-Î8*É6&Ç4"Ë4!Ð3"Ø2$ß1(å/+ç.,è,-æ,1æ-3ç.4î*,î,-í0.é2.á3*Û5'×7'Ò9'Ó@,»*ÔE5Î?1ÙF>êWPØC?ØBAåWVâRRÛKJÔC>Í=5É9.È9+Ç8(È;)Ä;(Á:'¾;'½>+º?-¹@/¶>-²9.µ;0·=0¹=1º?0½?1ÁB3ÅC6ëi\òmdçb[ðkfõolèbañklûuvÿp€ÿo|öirë^fêY^òadøqnù|vöyuÿx~ùRdÿUríXnö¥«¥¨“X”n[tLN_;QZ;us\ª×úøàÜÿôóÿúûÿúûÿûüüüþúþÿûÿÿúþÿûüþçÿñáÿêáýçéÿìóÿòøÿóýÿòÿÿóÿýïÿýíÿúëÿöåûóàúòÝûõßý÷ßúúøüüúÿÿýZQBYPAYPAWN?VM>UL=TK<TK<QH9PG8OF7MD5MD5MD5MD5MD5GD;JF;MG9PI7SK6VK5VK5VK9WMCVNL\Vbkiy{¢…ˆ»‹‘Í—Ø™—à™˜ä˜™éšœï›Ÿö£ùŸ§ø ©ö ªïž§èœ¤âœ¢àžŸàžáŸ™ãž—ä㖛ݠ–Ү¼ƒ®Ær“ÇZqÇCQ×AJá>Cæ<?è;=æ<?ã=Aá>Cß>Câ;CØ7=Õ?AÏA@ÉD?Â=8Ã96ëWWàBCæ=Bé:Aæ7<Þ58Ö66Ñ96Ì;6ÕHAÅ:3¾5+ÅA5ËK>ÆH:»=/¶8)¹7)¿7+Æ8,Î7.Õ60Þ63æ87ë;;Ó5)Ö6*Ú6*Ü6*Ý5(Ý7)Ú:*Ö?,Ã5¼5¸6 ¸7"»9)¼8+¼4(º0&é=;å>8Þ=5Ô</Ì9)Æ8$È7"Ì7#Ò7%Ö2&Ù.&Ú-'Ü-*Ü.-Û//Û//Þ*)á/+á4.Ý5,Õ3&Ð5#Ð9&Ñ>*ÓB/Â1 æTEÐ<0ÚA;ÞC?èJIòTSèVVçSSãOMÝIEÖC;Ï<2Ê8+Å6&Ä7&À7%¼7$»:'¹<*·>-µ=,²=,°:.±;/²<.µ=/·=.º?0ÀB4ÃE7Ü\Oêg]äaYñlgöpoçabìfgòkoäP`ï^kôhqòemñ`eödgûqqúzwövsÿnuõJ]ÿMjïUmñœ¡ŸžŠPˆcVoEOd=Va?ww]¯¤’âÐÄÿíæÿ÷óÿûøÿýûÿþüûÿüûÿýûÿýùÿû÷ýùãÿëÜþãÚøÞàúáèûåïüèöýëýþîýúëÿúêÿ÷èúñàòê×ðèÕôìÙùñÜýùöÿûøÿþû\PB\PB[OAZN@YM?YM?XL>XL>UI;TH:SG9RF8RF8RF8RF8RF8JF=KG<OI;RK9TL7WL6WL6WL:VL@UMJ\V`jh~yy‚„´ˆÄŽ”Д”Ò”•Õ••Û–˜ã˜›ê˜žìš¢í›£ëœ¥æ˜¢ß–ŸØ“œÕ“™Õ“—×’“ÖÖ†½Ž„¹£~²¸r¤Êe‘ÖTzÙDa×:Kà@HÞBCÞC?ÞC?áAAä?Cè=Fë;Fã?FÖ:>Ó>@ÐFCÅA<¸71Å>:ê[WÝABä?Cç=@ã:=Û89Ó97Î=8ÌA:ÏE;Ã9/»2(À</ÇE7ÄE6½>/¸9(¼8)Â8+É:,Ò:/Ù80á83è;7ì=:Ô3+Ö3,Ù5,Ý4-Þ6-Þ7.Ú:.Ô>/Æ9(Á<)½>-¹>.»=/½=2Á>6Ã>7ó?>î?<æ?7Ù=1Í:*Æ9%Æ;$È<%Ï<(Ï8'Ï2#Ñ1%Ó2(Õ4,Ñ2,Ï0*Ñ3*Ó5*Ñ7+Ï7)Ê7'É8%Ê<(Ì>*Ê<(Î=,ô^PàF<Ò3/Ò.-è?BþUXÿvuÿroÿjgö^YçPIÕA7Ç5(½.Ä8'À9&»8&¹:)¶=,µ=-±>,°<-­<.­<.®=/°<-±;-¶>0¼B3ÁE9ÉMAß`Wâa[ôpløtrå`aä]aå^dÙFVçYeógpôgo÷dlýjpÿstúxvõssûenóCXÿEbðRkë’˜œ—ƒN‚\Ql?Ri?ZhDy|_°ª”èÛËÿôêÿùðÿúóÿýöýÿùûÿúùÿúöÿøòüóîøïÔüÚÎóÒÊëÌÏìÎ×îÒàïØéòÝóöãöõãûõåüõãõìÛíáÑéÝÍíáÑóç×úõïü÷ñþùó\PB\PB[OA[OAZN@YM?YM?YM?WK=VJ<UI;UI;TH:UI;UI;UI;LH=OI=QI<TK:WL8XM7YM7XM;UK?UKI\U]hexut“|~§„ˆ¸ŒÄŽÁŽ‘Æ’Í’“Ô’•Ü“—à”˜á•šÞ•Ü’›ÔŒ•Ì‡‘ƃŒÃ‡Ã}‚ÂzÁ|vš‹q–¦h‘Ä[†ÚKvè>cî7Uí8IçAEßFAØIAØIAÞFCæAGð;Jõ8JãDI×>AÐ@?ÏJE¾?8²3,ÇD<âTPÜDCáACä>@â>?Ü>=Ô@<ÏE;ÌH<Ç=2Á7,½5'½9*¿=-¿=-»<+½<)À;*Ç;,Î<-Õ;/Û8/à70ç83ë95ã:7â64â22å31æ42ä50Û2+Ò1)É2'Ç9-Ä<0¿90¼5/¿52È<;ÒDCó57î66å61Ø5,Ë5&Ã6"Á9#Ã;#É>'Ê9&Ë5$Í5'Ñ9,Ó;0Ò:/Ï8-Í?1É;-Ä8'Ã7&Ã:'Å<)Å='Æ;&Í>-Í:*Ø>2ãB:Ö.+æ::á14å26Ò73Ö;7ÞC>åJEêQIêSHèTHäUGË?0Æ>.¾<,º<-¶>.³@.°?/®?.«=0«=.¬<.¬<.­<,±=.·A3¼D6ÆLAÞbZâc]ðnlôrrå`cå`eæ`gúixûozõltí`hñ^fÿkqÿw{ÿ{|öpqø^hö@Wý>]óOh懠•ƒX†aXuE\vIgwP‚ˆfµ±–éáÌÿùéÿüíÿýñþÿóûÿôøÿöôÿóíûìäòãÝëÜÁëŻ㾺޺¿Þ¼ÆáÀÍâÃØæÌãëÓìîÙôñÞøñßóêÛìàÒèÚÍìÜÏñáÔòçáòçáóèâ[OA[OA[OAZN@ZN@YM?YM?YM?XL>XL>WK=VJ<VJ<WK=WK=XL>PI?QI>SK>UL;XM9YM7YM7XM;WK=ULGYSWc_nmkƒtt–|~§ƒ†³†‰²‡Š·ŠŒ¿‹ÈŽÏŽŽÔÕÓ”Ó‹Ê‚‰¿{‚¶u|²ov­gp«ck©€n~ey­ZvÏMoê?cú2Vÿ0Lû6Gð@CâGBÙLB×MCÝIGèCJõ<Nü8NàFH×CCÌA>ÍID¸<4¯5*ÉI@ÕLF×CAÜ>=Ý:;Û;;Ù?=ÔE=ÌH<ÇI;Á7*Á7*À8(¾9(¼9'º9&½:(À;(Ä;)Ê=,Ò<-×;.Ü8.á6.ä6/è5.ê24è.1ê+0ð/2ö37÷69î45æ21Ø/,×31Ô63Ï42Î/3Ð/5Û5?ä=Gõ,2ñ.2è2/Ü3,Ñ5(É8'Æ;&Æ>(Ä9$Æ8$Ë8&Ò:,Ø?1ÛA5ÚB5ÙA6ÎI8ÇB1¿<*½:&Á<)Ã?*Å<)Ä9&Ì;*Î6)Î0'çB<Ý1/ñ>Aå.2à'-Ò3-Ó4.Ö71Ö92Ò8.Í5*Æ2&À1#ÎE5ÆA2¼=.µ:+±9)®:+ª:,ª:,ª</«=.¬>/«=.«<+¬=,°?/µA4ÉSGàg^ßd_èkiînoæchðjqõoxüp}ýt~õmwîcj÷dlÿqzÿw|ûsuökpöXfûAYÿ:[õKfâ}…©˜†l”ojŠXo‰ZxŠ`—r¶·˜âÜÂúôÞüúåÿÿïûÿïõÿïîÿëçúäÜïÙÐãÍÉÛÅ«Ù«¨Ó¦¨Ñ¥¯Ô©¶Ô®¼Ö±ÇÚºÒßÁàæÌêéÔòíÚòéÚïáÖìÛÑëØÑíÚÓèÛÒæÙÐåØÏZN>ZN>ZN>ZN>YM=YM=YM=YM=XL<XL<WK;WK;WK;XL<XL<YM=RJ?TJ@UL=XL<YN:ZN8ZN8ZM:YM?VKEXOP^Xbd_sifƒqp’yyŸ|¢~€§‚°ƒ„¼††Äˆ‡Ë‰ˆÎ‰ˆÌˆˆÈƒ„½{~µux­or§jm¤eg acž…ac“X^±O\×H\ó=Vÿ1Kÿ/Dÿ7Bö>@çE@ÝJBÚKCÞHGéBLó<Nú8PØDDÕEDÈA=ÈIB³:/°7,ÌPFÉB<Î=8Ñ64Ï10Ð51Ó>8ÏE;ÆF9¿E6Á8(Ã:*Â:*¿:'½8%½:&¿:'Á:&Ä9&Ë:)Ò;*Ù9+Ý7+á5+ä3+ç4-í)-ò)/ù,3ÿ.4ÿ07ÿ18ÿ28ý58ú7;õ8<ò9?ò9Aô9D÷6Gû6Hü5Jø)1õ,2î02ã4/Ø7-Ï9*Í<+Ì=,È7&Ï9*Ø</Þ>2á?4â>4â?6â?6ÑN<ÍH7ÇB1Â=,¿:'Á:'Å9(È9)Ç3%Ó9/á@8ëD>Þ0/á-.ì38í38×4-×6.Ù80Ø:1Õ;1Ó;0Î:.Ê:/ÖL?ÌF:¿?2´9*¯7)«7*©8*¨8*ª<-¬>/­?0­=/«<+«<+­<,¯>0ÀKAÚc[Ýc^èkiðosëhnõrzüvïer÷oyør{öjsÿlvÿvÿu}öioõfl÷RbÿA[ÿ6YôFaÝt{²›‰€¤~z›f{—f€–h‘u­±ŽÌË­áàÄéëÓî÷ÜåóÙÙíÑÎçÉÅÞÀ¼Õ·´Ë®®Å¨•Ã’”‘˜Ä“¡È™§Ë¬Ë¡µÎ§ÁÒ®ÎÙ»ÙÝÄåãÎìåÕïáÖëÚÒçÒÍäÏÊÞÐÇÚÌÃÕǾ[N>ZM=ZM=ZM=ZM=ZM=YL<YL<ZM=YL<YL<XK;XK;YL<ZM=ZM=TJ@TJ>XL>YN<ZM:ZN8ZN8ZM:[O?WMDWMKZSZ^Xfb]sjfspvw–xxœ|{§~µ„¿‡Çˆ‚ʉƒÉ‚}¿~zµzu­vq§vo¥sl¢og ldŸ‹PH•JE²FF×EOò@Lÿ7Dÿ3@ÿ8>ø<=íA=äE?àGBãDHèAKï=Mô:OÒBAÑGDÅA<ÂH=¯;.°</ÐVKÃ>5É83È.,Ç)&É.*Í:3ÌC9ÂD6¸@0Ã:(Ã<)Ã<)Á:'À;(Á=(Â;'Ã8%Ä6"Ê7%Ô8)Ù7*Ý5(á3(å3)è3*û03ÿ58ÿ7<ÿ38ÿ,2ÿ&-ÿ'-ÿ)1ÿ,3ù'0ô%/ú'6ÿ+=ÿ(Aÿ:ú2ö".ô&0î+1æ0/Ú1,Ò4+Ï5)Ð6*Ô6+Ü90æ>5ì>7ë:4é61è50é61ØL?×K<ÒF7Ê>/Ä6(Â3%È6)Í9-Í5*Ô6-æC<à74à21Ò ì89ê35Ó2(Ô3)Ò4)Ñ5)Ï5+Ì5*È5+Å7+ãYNØRFÊH;¾@4¶</´;0³=1³=1®:-°</±=0±=.­<,«:*«:*¬;-±<2ÐYQÜb]ìppôvyîltõrzör}ÿy…ÿ‰ýz‚òiqøeoÿp|ÿt}ýntó`j÷Naÿ@^ÿ3WôA^Ûnt¹ž‹Ž®‡~¡i}›g—hœq¡©‚µ¹–ÉÌ­ÕܽÌÙ»ÁÔ´²Ì©¥ÃŸž¼˜˜¶–²Œ”®‰…¶~†µ~ºƒ•À‹›Ã¡Ã‘¨Å—²ÉŸ¾ÎªÉÒµÚÚÂæßÍêÞÒéÖÐáÌÉÝÅÃÓºνµÈ·¯ZM=ZM=ZM=ZM=ZM=ZM=ZM=ZM=XK;XK;XK;YL<YL<ZM=ZM=ZM=YMAYM?ZM=[N=[N;\O<\P:\O<ZM=YMAWLHXNOXQX]Ub`Yka\pifƒokŽsp›vq§{u³ƒ}Ê‚ËŠƒÉˆŠ~¼‡z²ƒr¨†r§Œu­…l¥z^˜™G9¡C7´A:ÍC@á?=ì89ø:<ÿBCú<<ó=<ì>=ê@AéBIêCMëANê>NÌA<Å@9¾?6µ?3®=/±=0¿E8ÒMDÇ61Ô;6Ï1.Í2.ÖC<Ç?3´6'·?.½6#Á:'Ã<)Â;'À9%Á:&Ã:'Ç:&Ë:'Ð9(Ô7(Ö3$Ú."à/%ì7.ô=5ø72ù30ú.-û)(ý%&ÿ#%ÿ"'ÿ"'ÿ$*ù )ú!,ÿ%7ÿ'<ÿ;ÿ4ÿ3ý)7ð".ç"+ä*-Ý--Ó+(Ò-)Ü41â62é54ï64ó55ó12ñ-.ï+,í++Õ<4Ò91Ñ:1ëTK»"Ä+#ßF>È.&Ì/(Þ<7èE@â:7Ø/,Û.*ã41é:7Ý?3×;.Ï5)Ë3&Ì5*Î:.Ë;0Æ8.ìbWàZOÈD8¹6,º:/·9-¯3)²6,¯1%°2&®2&®4'¯7'²:,²<.³=/°:.ºC;Ö\Wìppñsvøv~ûyƒõq|ÿ{„ûx€øu}üs{ÿr~ÿq}ÿlxûisøbmôI\ÿ=\ÿ8[ñ:VÖek²–‡¦}~¡i|šd}•c‡—j”ŸuŸ¥ ¨ƒœ¨„’£Š£|€Ÿvx›qw›o|r t„£w¯uƒ³y‰¹½„“¾†—¾‡œ¾‹¢½§¼“¯½š¾Â§Ï̹ßÓÇãÒËÜÇÄÖ¾¾Ê»´Á²«¹ª£ZM<ZM<ZM<ZM<ZM<ZM<ZM<ZM<XK:XK:XK:YL;YL;ZM<ZM<ZM<ZL?ZL?ZM=]M=]N;^O<^O<\O<]P?[OA[NFYNJZPQ\SX_U^_Wbb\xibƒng‘qjžvp®€y½‡€ÆŠ€Å€Ã~ºt­Œn¢—q¤¡uªši ŒY‘©;.¨7)°6)À>1ÐB6Ü?6è?8ôA=ö=;ø:<÷:@ô<Dï?IèAIâ@KÜ?HÃ>7½=4¶<1°</ª:,¬;+¼B5ÐJAÚG@ÜA=Õ63Ò41Õ@9ÍC8¹:+¯6%¿8%Â;(Ä=*Ä=*Ä;(Ä;(Ç:(È:&Ï9(Ñ5&Ô2%Ú2%ã5*ê8.ï80ñ91ä2&æ0%ê.#ñ,$ö+%û+'ÿ,+ÿ-,þ)-ú%+û#.ÿ&5ÿ$9ÿ5ÿ1ÿ 0ð .ù-9ö2<å*1Û(,Ü.0Þ02Ý*.ò9>õ6;ú3:û06ú-2û.3ý14þ36×4/Ü:5Ù72æDAæDAÎ/+Ñ2.Á"Ö41á?<èE@à=8Ø3-Ù2,Ý60à91Ò<-Ï9*É5'È4&Ê8+Ë;0Ê<2Æ9/ícYáXNÉ@8¼3+À:1Á;2½7.À:1Á4+¾4*½4*»5*¸6(´6(²7(°6)´;0»B9ÓYTèllïqtöw~þ|†øv€ÿ|„ûyøv~þuÿsÿo}ÿiwùeqùanöI]ÿ<\ÿ9\ô=YÕdh«y€œsu˜`t’\w]cŠ•k—p‹•p…”mp†_lˆ_fŠ\g^j_q•ey›i}l€­r„²tŠ¸z»}½‘½‚–½„›»‰›µ†¡³­¶—¾½¨ÏÆ·ØÇ¿ÖÁ¾ÒººÅ·¶º¬«²¤£\L<\L<\L<\L<\L<\L<\L<\L<ZJ:ZJ:ZJ:[K;[K;\L<\L<\L<\L?\L=\L=]M=]N;^O<^O<^O<_RA^QA\PD[NFZOK[PN]QS]ST_RlcXvh]…jb“sk¦}w·†}Àˆ}¿—…Ù€¹›v©ŸoŸ¯t¢»v¥µi˜¤U…Ä92¾5-¹5)½>/ÇE5ÐG7ÚC8ä?9ó=<ú9>ü9Aú:Eò>GæAH×@EÏ@B¿<4¸90±8-«:*¨9(«:*»?3ÏF<ÙD>Ø96Ú65Ü:7ÜC=ÝOEÍI<²4%À9&Á:'Ã<)Æ=+Ç>,È=*É:)Ì9)Ï8'Ï2#Ó/#ß4*î=3ô?6ñ91í2+Ú7&Ý6&à3#å/"é-"î+%ñ,&ò+(ó++ð(+ò'-ú(5þ%8ÿ5þ2ÿ3ð(5ô.;ô4?ò8Cï;Dð<Eé5>å+6ñ1<ô/9ù-8ù+5ù,3ø-1ö.1ö01Ù1.ä<9Û64à;9ÿljæBAÒ.-Ð.,Û97á?<àA=Û<6Õ7.Ô6+Ô6+Ó5*Å8&Ã6%Ã6%Ä8)Ç;.Æ<1Æ<2Å;1ëaWáTMÉ<3¿0(Ë;3Ï?6Î;3Ñ>6Ú=8×<7Ô=4Ï<2É;/Â:.»7*¶6)·;/»@8ÏTMãgeíorøz~ÿˆý{…ý{ƒùzúx€ÿwÿsÿl}ÿftøbnø]kõG^ÿ:Zÿ9\÷AZÐ_c›gkŠ^e†Oh…Ol„Rt…X{ˆ\}ˆ^x„\q‚X`yO_P`†UeYm•`uœg{ j€£m­p…±tˆ¶v‹¹y‹¹yŒºz‘º~”º‘±•¬€›©†©­’ºµ¢Ç¹°Ë¸²Ì´²¶­®ª¡¢ —˜[K;[K;[K;[K;[K;[K;[K;[K;ZJ:ZJ:ZJ:[K;[K;\L<\L<\L<]K=]K=]L<^M=^M;^O<^O<^O<`P@^Q@]P@\NC\NE[NF\OI]PJ`NdcSmfX{g^‰ohœzu¯„|¸†{µ™…º¥…´¯€ªºy¡ÈxŸÓušÍc‹¾OyêAFà@@ÕA=ÌF;ÈJ;ÉJ;ÐF9ÜB:î@?ø;Aþ:Dü<Gñ@HâAFÑAAÅ?<¾?6¶<1¯9+ª;*©:)­9*º?0ÎD:Õ<7Ö21â:9æA?áD?çTLÞVH½;+Á9)¾6&¿8%Ä;)É=,Ê=,Ë9*Î8)Ï3&Ò2&Ù3'å9/ñ>7õ>8ð50è-&×:)Ú8)Ý5(à2'æ/'é.'é,(é,*ç+*å(,è)1ï+7õ';ö";ú=ÿ"A÷8Gä(6ç/;ÿP\ÿ`lÿP\ò<Ió9Gé)8ï)8ô,9õ0:ô17ì01â*(Ü&#Õ2-Ú64Õ1/æBAÿrp÷TUÝ==æFFÛ=:Ú<9Õ:5Ò80Ñ7-Ï7*Ì4&É1#º7#¹6"»8&¿;,À</¿9.À:/Å<4åXQÜMGÊ70Ç/*×<7ÞA:Ú;5Þ=5ë<9ê=9æ?9â?8Ù?5Ð<0Ç;.¿9-»9,»<3ËOGàc_ìnoú|ÿƒŠý~…úx€øy€ùzÿx‚ÿt‚ÿl}ÿdtö_nóXhõE\ÿ6Vÿ7ZùC\ÇYZ‡mRWxIXv@\yCdzIl}PtVw‚XrXoWl‡Zl^o•buh{¤l¨o„ªq‡ªr„­q‡±rˆ´u‰·v‰·v‰·vŠ¸w¹z‘´|«z’¤|¤…­«–¾²¦È·¯Ë¶±¯¬³¡ž¥•’™[K;[K;[K;[K;[K;[K;[K;[K;ZJ:ZJ:ZJ:[K;[K;\L<\L<\L<^K=^K<]L<^M=^M;_N<^O<^O<^O<^N>^N>^N?^N?_OB`PC`OEbM\cPdcUodZle‘vr¤~w«‚v¦“~©¬†«Â‰©ÐžÛw“âk‡ÝXuÓFfÿ=MüDPðJNÞJHÌG>ÇG<ÍG<ÙD>èBBó>Cù>Gø@HðCIÞDDÍB=À?9½A5µ=/®:+ª;*©:)­9*º<.Ì?6áFBä<;ïABíAAÞ:8ãJBæXLÔL>È@0À8(»3#Á8(È<-É:*Ë7)Ð8+Î0%×3)à8/é;4ï:3î50ë0+è+'Û4,ß4-ä2.ë31ð43õ45ö58õ6;é/4ç.6ê0=î1Cò.Fõ*Gý,Lÿ1Tð<Hå3?ð@Mÿ_lÿlzÿWfõCSõ>Pî3Dî2Aî3>ê5<æ89Ü73Ð3*Ç/$Ì2*È-(Ñ61óXT÷\ZóXVÜ@AâHHÜB@Õ<7Î70Í6-Ï8-Í9+Ê7'Æ3!³:%²9$´;(¸=-¹;-¶6)»8.Ä>5ÛNGÙEAÎ50Ð1-á>9è?:ã81ä71ð/0ï11ì42é73â92Ø:/Ð9.È:.¾6*º7-ÈIBÜ_Yënlû}€ÿ…‰ýƒõv}õx~ùzÿx‚ÿsÿj{ÿdtö_nðUeôF]ÿ6Vÿ7ZúF_ÀTRvaBJo<Us?[vCdzIn~QtVy„Zyˆ_wŒay”gv›hy¡l|§o«p„«r…«p†ªm‡­rˆ°r‰³tˆµt‡¶r…·r‡¹tŠ¸w·{Œ­x¤x™¤‚«­•À¹§ÎÀµÖüººÆªª¶œœ¨ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8[L9[L9\M:\M:\M:^K<^K<^K<_L=^M;_N<^O<^O<]N;]N;^O<_P=_P=aP@bQAbQAeKTdN[aPc`Usga…rp˜xvž|r—Žv–®ƒžÌ‹ŸÝ‚“çr‚ïbsìObå>Rÿ-Hÿ:QþCTéDKÒ@AËA>ÎDAÖEBãEFêAFï@EïBFçDEÚEAÉC:¿?4º@3±;-©8(¨9(©:)®9(º:-Ë;3èIEë??î;>æ68Û2/ÞA:îZPõg[ÙQCÉA3¾4'À6)Ç9+Ê8+Í6+Ò8,Ñ0&Ü5-æ;4ë:4ê40è/,ê-+í-,ó4;õ3;ø3<þ2=ÿ1>þ0=ý0?ù0@ô1Añ2Dò5Kó5Oó0Põ-Qþ1Xÿ:dá7B÷O\ÿanÿ`nþXfùQbòEXé8Jó@Sê:GÝ2;Ò/2È3-Á9-º=+µ>(Æ9/¿2(ÙJBúkcÝLGáPMÍ<9Ï;9àLJÔ@<Ê7/Ê7-Î</Í<+Ë:'Ê9&®>(«;%­=)²?-±9)®4'º:1ÊC=ÕHAØC?Ô72×2.ç;7ì:6è2.ë2-÷)+÷+,ô.-ð3/é61â:1Ú<1Ò>2Â6)º4)ÅB:×XRçjhú|}ÿ†‰þ€„õv}öyú{‚ÿx„ÿqÿh{ýbtõ^oîSe÷I`ÿ9Xÿ9[ûI_ºQNmZ:Em8ZvCa|InSv†Y|‡]Šbg‚—lœl{ m|¤o}¨p~ªo‚ªnƒ©l…©lˆ«qˆ®qˆ°r†³r„³oƒµn„¸p‡¹t‹µv‰¬tŒ¦wš¨„°´™ÈïØ̾àÏŽÃÓ«±Á›¡±ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8[L9[L9\M:\M:\M:`J<`J<^K<_L=^M;_N<_N<^O<^O<_P;_P;aP<aP<aP<aP<bP<fLOdMUaO]_Vkgb€sr’yx˜}t‘ŽvŽ­’Ά’á}…ñowýbjýOXö>Hÿ$Hÿ0Qÿ;Uñ<MÞ<GÖAEÓEDÔBCÜCEàBCäADäABÞDBÔC>ÇA6¾>1·?1¯9+¨7'¨:)¬=*²=,À>1Ñ>7ß=:ç79æ/3ã/0á32Û94åNEülaïj[ÙQCÆ</Æ:-È:.É7*Í6+Õ8/Õ4,Þ7/æ93é62é1/ê.,î1/ó32ÿ0Eÿ/Eÿ-Dÿ*Bÿ%@ÿ"=þ:ø:÷'Aó+Gô/Mó0Rò+Rô)Vÿ1bÿ=nêHSÿ`mÿiu÷VeíKZñL]êCUÚ1DéARÝ7CÉ,3¹)(®0$¨9&£A&ŸD'¼=.º;,ÜZMá\SÍG>ÍD>Á61É;7ãUQÕF@É91È8-É:,È9(È:&É;%ªB)¦<&¦<&¬=*©8(¬3(¼=4ÒMFÕGCÝEBÛ96Ü30é73í41ì/+ó2-ÿ)/ÿ*/ý--ö0/ï4/è7/ß;1Ø>2É:,¼4(À;2ÏNHßb^÷yzÿˆŠÿ„†ùzú}ƒü}„ÿx„ÿn~ÿdwù^pò[léN`öHaÿ8Wÿ7YøH]²JGcS1Al6ZtDf~NuˆZŽc…f‡’jˆ—n‰žs‡¤t‚§t§r}¨p}©n©mƒ©l…©k†§n‡ªp†¬o…¯o°l³k‚¶n…·p‡´s‡­rŒ¨wœ¬…²¹šÈƱ×οÞÐÅ·¿Ò¤¬¿’š­ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8[L9[L9\M:\M:\M:`J<`J<^K<_L=^M=_N<_N<^O<`Q>aR=bQ=bQ=bR;bP:aO9`N8jNMgNRbQ[cWkjfuv’}}™y‘’{¯ŒËƒ‡ã{|ùqsÿgjÿTXÿAGÿ#Mÿ.Tÿ7Wù9Pé>NàEM×EHÑ?B×BDÚACÜ@AÛA?ØC?ÏB9Å?4¿=0·?1¯9+©8(«=,°A.·B1ÇC7×D=Ú64å57ã,0ç02è88Ó0+Ï5-éUKÿznæ^RÎD7É=0Ê<0É6,Í6+Ö90Ú70ß82ä71ç40é1/í10ò53ø87ÿ=ÿ>ÿ>ÿ>ÿ=ÿ=ÿ<ü=ò:ï@ð$Ið&Nï$Qó%Uÿ0eÿ=sÿgrþalôXeîR_ïQ`îM]â?RÖ1Bß:JÑ4?¿-0±-(¦5'ž>&–C%E"¯7&²9(ÒWHº<0ÁA8º7/º3/ÍC@ãXSÕHAÈ91Ä6*Å6&Ä5$Ä6"Ç9#¦B*¢<%£:%§<*¦7&©3'½A7ØSLØIEáGEÞ:8ß2.ê41î1-ï.)ù4.ÿ'-ÿ',ÿ)+ö*)í-(ä1*Ü5,Õ9-Ð>1½3(¼7.ÉHBÙ\Xôwuÿ‰‰ÿ‡‰ý~…ý€†þ†ÿx„ÿl|ý`sõZlïXiãHZóE^û4Sÿ3RóCX«E@\L*?j4Uo?d|LwŠ\†“h‹–l˜pŽtŽ£xŽ«{†«x©t|¨mz¦i}¥g¥h‚¦h…¤k…¦m„ªm‚¬l®j}±i€´lƒ·oˆ·sˆ°tŽ¬xœ®„²¹šÄ«ÐǶÖÈ»²½Óž©¿‹–¬]K7]K7]K7]K7]K7]K7]K7]K7^L8^L8^L8^L8^L8^L8^L8^L8\J>]K?]M@\L=ZM=ZO=\Q?^SA_T@_R?^Q@aQAcRBdQCdNAcM@pKEjKIfOUgZknl„v|ž}†¯ƒŠ´Š…®Ÿ‰­¸Š¦Ìƒ”Þ{~îumøl]ûfRðN[æDQä>LéANïCQí>Ké:Gê<Få:Bá;?Û;;Ö<:Ï?7È>4Á;/¼8+ :$¬C0¬=,®6(Â?5ÑD=Ð;5Ó61Û83Ü71Ý6-Ý7)Ü9(Ý='Ù;"Õ7à74õPLõXOÛD9Ç8(Ì?.ÒC3Ñ;-Ò4+ðGDâ.1ï4;ö4?ï+9ÿ@Qí(9þ&+ÿ*-ÿ*-÷"û#$ÿ()þ((òð"ú+1ì )î&1ò.<ç$5ÿYnë+@ÿ`jÿ^iÿYcûT[öPTìHIÛ@;Ê:1ÅA2½F2®D.Ÿ;$”5–7#˜;)œ=+§81«83ÁEC¿;9¾23Æ45È44×CAÜKFÚKEÑD;È:0Ä4+È4*Ì3+Ì2*·?1³9,®.#­'¶,"Æ7/ÓC:ÚG=äPFßE;Ù80Ü1*ç/-ô01ý/3ÿ.4ò14ó12ô01ó/0ó0.î1+é4+à8-Ö=/¾2#¾?0·>3Õ`Wçtqÿù…†ôŠŒþ…Œÿwˆÿe}ÿ[wÿXuÿSoûJgûDcö7Y÷9]ç>[Ú]k„C=PI/F`;Xw<e‡Ku—[zcz e|¤h¨l€©o¨l~§k~¦j}¥g}£f£e£e€¢e}¥p~§o«n¬k~­g¯e±e„²g‡µjŠµpŠ²s°z–¶‡£¿™«Ä¤¬Å§¦±µ˜œz…‰]K7]K7]K7]K7]K7]K7]K7]K7^L8^L8^L8^L8^L8^L8^L8^L8\J<^L>^N?^N?[N>ZO=\Q?^SA_TB]QA]P@_OB`NBbPFcOFcOFkLGjMOgS\h_rnoŽw~ª~ˆ»…ŠÁ›–Ì¢Œ»«£»wŽÕx‚í|x÷uhöjYüZgóN\ìFRòHUöJVõERï?Jë;Eä9Aà:>Ú::Õ=:Î?7Ç>4À</º;,¥>+ª?-¨9(²:,ÁA6Å<4Ç7/Õ<7Ó40×4-Ø4*Ø4(Ú7&Û:&Û;%Ù;"Þ52æA;ëMDàI>Ð>/Ç8(Ê8)Ó;.Ý<2öJFæ/1ò5<ø6Aò.<ÿ?Pì'8ö$'÷%(û),ý+,ü*+ù'(ø((ø*,ð$'í%(ê%,þ:DÚ'ð4CüATÞ#6ÿluÿblþZcüW]õOSæBCÙ;8Ñ>6¾8,¾E4¹H6¨?,–1)Ž()ž-'°:6ÑTRÎHGÃ54Æ45Ò<=ëWUØGBÖGAÏB9Ç9/Ä4+Ê6,Ð7/Ò5.Â?5À:1À5.Â3+É4.Ð83Ø?9ÞE=ãJBÞA8Ù6/Ü1*æ0-ó11ü03ÿ.3ò14ó12ô01õ/0ó0.î1+é4+à8-×>0¿3$¼=.¶=2Ó^Uévsÿù…†õ‡Šþ‚Šÿu…ÿe|ÿ[vÿWtÿQoþIhúAaö8Zö=_æF`ÅQ\{?7NH.Ga>Yx=e‡Ks•Yx›awbz¢f|¥i}¦j|¥i|¥i|¤h{£e{¡d}¡c}¡c¡d{¤l}¦n}©l}ªi}ªe}­c¯c‚±cƒ±f‡²k‡¯pˆ«u‹«|¬„©‰‹¤†z…‡doqR]_]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8^K<_N>aP@`P@]P?[O?[O?[RC[QE[QE\OF\OG_PKcQOfTRhTUiTQiVXi]kmi„sv¡zƒ¼ŠÍ‰Ö—‘ÙŸ‹Êª‚¶º}ŸÒ‘烅ð~tïveÿ`k÷S\íGQðFQöHR÷EQô@Kî=Gå6=à7:Ù99Ô<7Í@7ÅA4½?0¸=-©@-¨=+ª;*¸B4ÅI?À;2»0)Ì92Í6/Ò5.Õ7,Ù7*Ù7(Ú7$Ü:%Þ<'ß3/Û4.âA9éOCÜH:Ç6%Æ3#Ù@2á>5õHDé13ó4;ú6@ø4@ÿES÷3Añ),í"&î#&û03÷--ï''í%%÷12ì(*ø7:è+1â)1ë3?ÿR^ï=KÿYiúafñV\îOTðMRêEIÞ:;Õ74Ô?9À6,¿?2»C5²>1ª8-¥3)Ÿ,%œ' ˜% §0*ÆFCÂ::¼,,È44×ABô^]Ò>:ÒC;ÐA9Ë=3Ì9/Ô=4Ú@8Ý@9ÙA>×=;Ü>=ãA?ã?>à;9ã?=ëIDàA;Û=4Ø5,Û2+å2-ð31÷12ú/2ó04ô02ö01õ/0õ/.ð0+é4+à8-Ø?1À4%¸9*´;0Ð[Rízwÿ’’û‡ˆøƒ‹ü~‰ÿr‚ÿcyÿZtÿTqÿMmÿFgü=_ø:^ôBbåQg§?Fn<1OK2KcA[z?h‡Lr“Zu˜^tš_wŸc{£gz£gy¢fy¢fy¡cx byŸb{Ÿa| b}Ÿby¢j{¤j{§h{¨e{©azª^|­^®`…³hŠµnŠ²s‰¬t†¦w‚žvy“pn‡gVb`COM4@>^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^L6`N:aP<`Q>]P?ZN>YPAXPEXOH[RM_UTcWYeX_iYcl\fm]hlbclemolrtšx¶~†Ï„ŒßŠŽç‹‡ÞŠÙ¬‰É³­½y’Í{ßyê†vÿnrÿbgùU\öLUöFPöBMó>Gð;Dæ5;á7:Û97Ò=7ËA6ÄB4»B1·?.©;,­=/¯>0»G:ËRGÇH?¹6.º1)È91Í81Ó;0Ú<0Û;-Ù6%Ü6&à9'á40Û2-à=4ëOCãK=Ñ;,Ð8*àB6Þ7.ð>:é/0ò16÷4<ü8BÿNZÿKWý>Cò38â$&í/1ê,,ð22ç+*é0.ò::Ñæ37Ü-2ç9BïENÿYcôLYÔ?AÚADßCFá>CÞ9=Ü89Ø88Ó:5É83Â91½:2ÀA:ÍNHÖVSÐNNÆAB¯82µ:5ÏKGØNLãQRïYZêRQñYXÉ51Î>6ÑC9Ð@7Ó?5ÚA9àC<àA;í<Bê7=í8?õ>Cñ:?é58í=?øLJà93Ú70Ø4+Ü3,ã5.ì30ò21ô01ô04ô02ö01ö.0õ/.ñ0+ê3+à8-Ù@2Â6'µ6'²9.ÉWMî}yÿ“’û‰‰þ€‹ý{‡üoücwÿXqÿNmÿFhÿ?cþ8\ù=`íIdÙYhˆ25d<0SQ8TgG`}Ej‰Ps’Yt•\u˜^wby¡ey¢fw dv awŸavž`xŸ`zž`{Ÿa| by¢hz£g|¦fz§bz¨_z¨]|«]~­_†²eŠµmŒ³rŠ­s†¦u€œstŽii_RaZDSL8G@^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;^M;_K2_M5aO9_P;\O>ZN@XPEXQKYQO^X\g`hnfsshysg{sg}tfnnzor…rw•v|¬y‚Ã~†×ƒŠåˆ‹ì’뛌ߞƒÆžt¢¡kƒ®mq¾vjÈ{iþllÿklÿfiÿ]`üQWöEMð;Bí5=è59ã68Ý98Õ>7ÎA7ÅC5¼C0¶A-¬8+´@3¯;.°;1ÇRHÓ]SÈNCº;2¾90Á7,Ì9/Ö>1Ý=1Ú6*Ü4'á7(á2-ã60ä=5åE9âF9ÜC3ÝA2á?2Û0&ì62ì0/ð-1ò-4ú7?ÿOYÿZdÿ[_ÿOSá.1ã03ß--÷EEè66Ü,,Û-.ë>@Û25Ù37ÿchÞ=CÊ*2Ê-4¾()Ô;=àAEÚ7:Ù37á8;Ü89Î..Ì43Í<9ÓHEÝSSì`c÷hnõdkî[e¿B<ÆE@å^[÷igÿopÿjjåKK×=;É4.Ñ>7ÕE<ÖC;Ó?5Ö<4Ø93Ø7/ö0=ò,9ó+6õ-8ò*5î+3õ8<þJKà3/Û4.Ø4+Ü4+â5.ê40ï4/ð3/ö/4ö/2÷/1ø-0ö..ñ0+ê3+â7-Û?2Å9*²3$±8-ÃNEî}yÿ’‘üŠŠÿ}‹ÿw…ùl|öatùUmÿHgÿ>bÿ8_þ4\õ@aâMcÂWap/+\A0XX>]lMbIl‰St’\u–_v™_xžcy¡ex buŸ`uŸ`u_vž_wž_zž`{Ÿa| by£d{¥f|¦dz¨`y§^y¨Z{ªZ}¬\€¬_…¯g‡®m‡ªp…¥sƒ t{•nrŠffvi[k^RbU_N<_N<_N<_N<_N<_N<_N<_N<_N<_N<_N<_N<_N<_N<_N<_N<`L1aM2`N6^O:[N>YOE[RMZTT_ZahbprmzuŒ{t“yr“zp“yo”ov’pyšt}¨w€·zƒÈ~…Õƒ‰á‹‹å”ã—ŠÒ™„¼¡ƒ§ª„“«~yŸl[ŽX>ÈH?ÕPIäVRìVUòRRôJMî=Cè38ì7<ç9;à;9Ø=8ÑA8ÈC4¿B0¹@-³9.ºA6«5+£.$¼J?Øh\×eZÊVI·=2¸6)¾4)Î:0Ù;0Ü5,ß3)ä6+á/+å61ã;2Ü:/Ü?0ãF7ãC3ß9+ß1&ê3-ð31ï-.î*.ô17ÿEJÿS[ÿ_dÿ\aâ9<â9<Õ+.ôJKâ89×//Û55Ì()Ë(+÷YZÛ?BÔ9=Ð7:· %Ã))Û=>åBEÝ49Ù,2Þ17Ú/5Í(,Ò37äKNöaeûhnùcl÷_kû_mý_nÒNIÔOJè]ZêVTçMMãGHÑ32Î31ÙA<àKDãPHßKAØA8×:3×50Õ2+ÿ,;þ+:ü(7ø%4÷'4û/:ÿ=CÿILà1.Ü3,Û4,Ü5,á4-ç4-ì5/ï4/ö/4÷/2ù.1ù-0ø..ò/+ë3+â7-Ù=0É;-³1#°7,¹D;ìyvÿþŠ‹ÿyŠþqõhxó`söTlüCcÿ7^ÿ3_ÿ3\óDcÒM^ JMb6+TE0W[@^kMc~Kk‡Tt‘[w•_x™`{ždz cvž`s›]s›\s›\tœ]v^wž_{Ÿa| by¡bz¤b|§b{¦_x¦[x§Yz©Y{ªZ~ª]ƒ­e…¬i†ªm‰§s‰¥u„s|•mv‡unmfwe_P=_P=_P=_P=_P=_P=_P=_P=^O<^O<^O<^O<^O<^O<^O<^O<cP2cO4aO7^O<[OA[RK^UV_Zakgvso†}z™‚~£|¥}w¥{u¥{t§pz«s}°w‚¸{ƒÁ~†Ç„‰Í‹ŽÓ“’Ô˜“Í ”«›¸¼¦³Ç®ªÅ¦”ªˆlmJ©?/¯A2¶@4ÄA9ØGBëMLñHKí?Aî;?ê:=å;;ß=:ØA:ÏA5Ç?1Á=.»;2¾?8¯4,¦1'ºJ>ÏcWÔh[ÔfYÁPB¹?2¹5)Ç7,Ô:0Ù5,ß2+ç6.ã0,ã4/â7/Ü8.à>1åC4â?0Þ4'æ4*é1)ò2/ð..ï-.ò14ô68ü?CðOTúY^éFKõRW×47ëFJÝ8<åBEÚ7:Î.0Ð15ãIKÑ8;Î8:¸#%Ñ<>Ü89ä;>ê=Aç6<â-4Þ)2â19ç<DñLSû^eÿksÿisú`l÷YhùXhûXkðgaèZVèWTØ@?Ï10Ô44Ó41áC@ãJDéRKèSLáJAØ?7Ø93Û81Ü71ý)8ÿ/>ÿ/>ý)7ÿ-:ÿ9CÿAHûABã1/ß4-Ü5,Ý5,á4-æ3,ì5/ð50÷.4ù.2ú.1ù-0ø..ò/+ë3+ã7-Ø:.Ì>0´2$±7,±<3çtqþŠŠþŠ‹ÿr†ýj}ñbtð]pôRjûBbÿ6`ÿ5aÿ8_ïKfÁN[z;6Y?.LH/TZ@]cIbzJj„TrŽ[v”^yšc{ždxžas›\p˜Yp˜Yq™Zq™Zt›\uœ]y_zž`x¡_y¢^z¥^y¤\x¤Wv¥Uw¦V{§X~ª]‚¬d„«h†¨l‡¥o†¢r€šmx‘gr„lk}ecu]_O?_O?_O?_O?_O?_O?_O?_O?^N>^N>^N>^N>^N>^N>^N>^N>eQ6cR8aP<]P@ZPG\TR_Zab^otrŠyx˜€¨ƒ°~~²yx±wv°xw³t}Âw€Ã}…Æ‚ˆÆ…ŠÂÀ—–¾ ¼¬§»¶¬´¾³¯È¸©Ð¿¥Õ¡ϼ”Dz‡·kS®\F¤G5©=0ÂH=áVQðVTòNOì?Aë=?è<<ä<;ß=:×=5Ï;1Ë8.¿82Á<5¹:3·>5ÀPDÅYMÅ]PÎgXÐdWÁM@º:-Å8.Ò91Ø3-ß2,è50æ40á2-à5-ã<3çC7æC4â:-à3%ê5*è-&ð0+ð.,ò21ò44ç.,è00áEIõY]öW\ÿpuåDJéHNÞ=Cü[aÿouÝ>Cÿ~‚ÿmqêQTÔ>@Å02Ñ<>øEIî9>ð7=ø=Fô6@è-8ö>Jÿ\hÿmwÿitÿdl÷]gú^kÿapÿ]nüWhî_YãOKâJGÕ74Ò0.Ù54Ó/.Ø95ßD?ãJDáJAÙ@8Ó6/Ö5-Ü71â94ð$0ý/<ÿ1=ø*6û/:ÿ>Eÿ>Cì44â3.Þ5.Ý6-Ý5,á3*è3,ï4/ò5/÷.4ù.2ú.1ù-0ø..ô.+í2+ä6-×9-Ï@2µ1$²6,°7/èpoþˆˆÿŠŒÿkƒücxð]pïZnôPiýAdÿ7aÿ8dý=bæPi°QW^2'RG3DH/PV<X\C_vHi€Rq‹[v’_z˜b|dxœ_r™Zn—Un—Un—Uo˜Vr™Xt›\uœ]y_vŸ[x¡[y£[w£Xv¢Uv¢Sw£Ty¥Vz¤X~¦_¦c¡d~œf{—frŒ_k‚V`uVZoPRgH\L<^N>`P@`P@_O?_O?_O?aQAbRB_O?]M=]M=aQAcSCbRB`P@eS;aP<_O?^QH[QOZSZeapsq‰xxšz|¥~€±€¹}¼xy¹rs¶no²qwÏv{̓̋Ȗ—䤾²±¹½¸²ÌŲÓÍ­ÙЩÛУÛÑ ÝÑ¡ØÌšÒƔզŠ·gŸ_FËzgØte¾G?ØQMøbaìILç>Aä79æ9;ã99Ü75Ù61Û94È95À50ÇB;¹=5¾I?ÄXK·PAËeVÎdVÊYKÃG;Ä:/Í6-Ù6/â5/å3/á/-ß2,â70ä=4à<0Û8)Ý5(å8*å/$ê/(î.)ð0-ï20ë40è51æ40Ó8<åJNõY]ëOS×7?×6>ùX`ÿ~†ÿ~†ÿowÿgoÿipÿfjõ\_ïY[ô^`ÿRYÿCKü8Bü7A÷1>ï+9î/>ñ=IÿS_ÿ`kÿgpÿepþboÿbpÿ`oÿ[lìTOßFA×85×31Ù10×/.Ú21Ü86áD=ÜB:Ø?7Ö<4×90Û81á83ä84ô5=ó4;õ3;÷4<ø5;ó49ë33ã1/Þ3,Ý6-Þ7.à5+ä3+é2,ñ1,õ2.ø/5ø03ú/2ú.1ù//õ/,î3,å7.à@4Ë9,½7+®/&·<5ÒXWÿ˜šù~ÿhÿe|ö]rîRhòHeÿAeÿ9bÿ5`üJlÕRd‰==K. >>&?I.IO5]]EWlAcxMqˆZx’by–`t•\r–Xq˜Wl•Sm–Rn—So˜Vr™Xt›\uœ]uœ]tœVtWv Xw¡Wv¢Uv¢Uu¡Tt S{¥[{£\zŸ\u—Zn‹Uc}MXrCSj>AW1?U/<R,[K;^N>`P@`P@`P@_O?`P@aQAbRB`P@_O?`P@bRBcSCbRB`P@fVF_QD\OF_TRcZ_f`nmkƒwv˜wy¢{}°}¸x|»qt·lo¶ln¸oq»suÙ|}Ù‰ˆÔ˜—Ш§Æ¹¶½ÉƵÓÏ©Ý×£âÜžçßžæÞäÜžâÙ ÙÒœÑʖѼ¸€¦~dÄ‹wÉ}m¶VJÓ`Y÷qnîZZêJLä>@é<>ì>@è:;ã56á34Õ=:Ë73Ê?8¹6.·>3¼L@³I;Å^OÛp`ÒaSÄH<½5)Ä0&Ö5-Ý4-Ü/)â43å95å<7à<3Ü8.Ù5)Ý5(ã5*í6.ï4-î1+ë0+ç0,ã2,á4.Þ5.Ò9;×>AäIMóW[ü\dü\dþ]eÿ`kôR]ïMXñQ[ÿ_gÿjqÿflô[`ëRU÷07ó+5ô+5ù-9ó&5è/ç'6í7DüP\ÿ[dÿclÿemÿepÿdoý[hõP^åFBÞ<9Û64ß63á53Þ20Û2/Û62à>9Û>7Ö<2×:1Ú91ß82å95è96é9;ê7:ë7:î79î79ì57å31Þ3,Û4,Û7-Þ7.á6,å2+ì1*ó0,ø1.÷05÷03ú/2ù.1ù//õ/,î3,ç6.ß=2Ò>2Â8-µ2*·82ØZ[ÿ“õw{ÿa{ÿ^v÷WqöOkøFfý=bÿ:cú=cëLhºJVw<8F5#7=#9C(DH/UP<Tf>`rJnƒXw_v“]t“Zp”Vn•Tk’Ok”Pl•Qm–Ro˜Vr™Zsš[sš[tœVuWuŸWuŸUtžTržQqPq›Qn˜Pl”NhŒLbFXu?Nh8F]/@W+@W-@W-AX.YL<[N>^QA^QA^QA^QA_RB`SCaTD`SC_RB`SCaTDaTD`SC^QAbUM^QK[QPcYakesqm„vu•y{¤y{®y~¶w}»ns·ei°bf°jn¸rvÀ}zᇃᖔߩ§Ù¼¸ÏÍÊÃÝظçá­êå¡ïéŸðêžíæžéá¢âÛ¤×Ï ËĘ´°“¦œ˜„k§„p¥p`œRG»]UÞmi÷usð^_çHLæ@Dí@Dí=@ë7:ç36Ü>;Ô;6ÔA:Â70·7.µ?3­=/µG8Új\Þj[×\MÊB6Å2(Ñ4+Ú6-Ú1*Þ44éA>ìGCà=6Õ2)Õ1'Ú2'Þ0%è3*é1)ç.)æ/)ã2,â7/á=4âA7Ã-,Ê43ÜCEðVXú^bùYaóS]òP[èFQêHSðNYü\fÿmvÿmtôY_ÜAGó*2õ,4ý1<ÿ1>÷*9ï&6ö6EÿJX÷ISõOY÷W_ü_fÿdkÿai÷Q[éBJÞ95Þ63ã75é<8ë<9ç85â51Ý60Ý:3Ù;2Ö90×90Û81á83ç:6ì:8à;9â:9ã99ç98è88å84à40Ú3+Ú6,Ú8-Ü8,á6,å3)ì/)õ/,ú0.ô15õ13ø02ù.1÷//ó0,î3,ç6.Ý9/ÛD9Æ9/»4.´0,â`bÿƒˆônuÿ_zþWsúPmþLlýDfø8_ö9_ðGf×ReDJi=4K@,7@%8@(ED/LE2N^9YkEg|Qr‰[tZqUmRkMi‘Kh‘Ki’Lk”Pm–To–Up—Xq—ZuWuWtœUrœTpšRm—Mk•Kj”LdGaˆE\~AUt;Li3E_/AX*>U'B\/E_2Ic6WJ:ZM=\O?^QA]P@^QA_RBaTD`SC`SC`SCaTDaTD`SC_RB]P@YNR[PVbXcjcsqm†vu•xz£z|­w|´sy·mr¶bi±]c­ag±lr¾v|È‹‡æ”‘褡淴áÇÄ×ÕÒËáÞ¿èå²ëç¨ïê¦îé¥éã¥ãܨÛÒ§Ëß¾µ–Ÿ§˜š…‰v—‚q—se™cW³i`Ïrmû‹‰õutë[[çKNéCGî?Dî;?í8=ß:8Ý;8ßD?ÓC;Ã:0¹;/¯7)¦2#¾J;ÚbRék]ÛSGÉ9.Í3)Ö5+Ø4+Ù33ñMLý[XíKFÙ80Ö3*Û4+Þ2(à-&á,%á,%ß,'Ý0)Ú6-Ø<0×?2À0(Ä4,Î:6ÙCBßFHàEKäGPìLVñQ]öVbøXdû[gÿgpÿmuôY_Ø=Cñ.2ò-4ô-4ò*4í%2ì(6û<KÿS_í?IçBIèGMòQVþ[`ÿX]ôGMä5<á51ä73ê;8ó?>ô@?ð<;ç85à72Ü92Ø:1×90Ù80Ü71ã73ê86ì87Þ<9ß;9â:7ä;8æ:8ä84Þ5.Ø4+Ù7,Ú8-Ü8,á7*å3)ì/)ô/)ù/+ó25ô23õ12÷/1÷//ó0,î3,ç6.Ü8.ßG<É90¾3.´-*îfjÿy€ójrÿ`{ýTqþKkÿFjÿ=cö3[î<^äPhÄXe…DBbE7WP=DH1@D-JH3JB/IW4Sc?btLmƒUp‹XoŒRkŽNiŽKgIg‘Ih‘Kj“Mk”Pm–To–Wp–YtœVs›Uq™Sn—Qj”Lg‘IeŽHdG`‡D]AWy=Rq8Mi6Lf6Ne7Pe:Lf6Oi9Sm=UH8WJ:[N>\O?]P@]P@_RBaTD_RB`SCaTDaTD`SC_RB_RB_RBTLY`Xgnf{tp‰xt•xw¡xz«y{´sy·jqµ`g¯\b¬`f°kq»v|Æ~„Ε”äžžè­­é½¼æËÉßÕÓÔÝÜÊãàÁåâ¹çã¶æß³àسÚÑ´ÐůÀ´¤¯¥™”œ‰ˆ†y‰}qwk›sk§ngºoi扄î~ósróedòVYòLNðCEî>Aå95â:7äB=ÞE?Ì<3Æ=3ÂB5­1%¬1"ÇI;ÛYKÖN@Ì=/Î8*Ò6*Ñ3'Ö34õUUÿkhú]XâE>Ü;3ß;2ã80â4-ä1,â1+Ý0)Ö/'Ì0$Æ/$Â0#Ã9,À4'Á3)Ë:5×CAÛEGÛBGÛ@HàDOìOZóVaòVaú^iÿgoóYaÝDIð88í55ï26ð18ò3;÷9CÿHSÿVaä6?Ý4;Ý7;êAFøKOüIMô;@ê05å61ë95ñ;8ó;9ó;9ð:7é73â70ß;2Ü;1Ù;2Û:2ß82ä73è64ì65á<8ã;8ä;8è:9è;7æ95á6/Û4,Ú8-Û9,Ý9-á7*å3)ë0'ò/)÷0+ð45ñ33ô22ô01ö0/ò1,î3,ç6.Þ7.ÞD:Ê7/¿1-¾21÷jpÿrzøhrû]vúPmÿCfÿ<dÿ7cù6^éDbØ[m©W[uF>_L;_ZFQP;KI4PI6MB0DR1M[8[kFf|Nm…SmŠPlŒMhHfŽGgHg‘Ii’Lj“Ol•Sn•Vo•Xt™Vq˜Un–Pj’LfIcŒFaŠF_ˆDZ@X|?St;Pn8Pj:Tk=XmB[pEUp=Vq>Wr?RE5UH8XK;ZM=[N>\O?^QA`SC`SCaTDaTDaTD`SC`SCbUEdWG]Ulje|yu}yœzy£wyªvx±sw¶lqµcj²[c¬]e®hp¹w}LjІՙܡ¦à¯²å»¿åÆÇãÍÏÞÔÓØ×ÖÑÙ×ËÙÕÉ×ÑÅÒÉÂÌÂÀŹ»´§®¥˜¡‡Œ†xzuwvqulg~mfŒoib[œa[¾sm×zuï{ü|yÿrpýccöSTîHHñB=ê>:ã<6àA;Ñ:1ÒD:ÝTJÂ>2¸6)¼:,Â=.È?/ÏA3×C5×?1Ñ8*Ð23èLMú_]ñXSßD?Ø;4Û81à70æ92ç92ç92â92Ú9/Ñ9.È9+Ä8)®)¸3"È@2ÓI>ÒE>Ë;:Ì7;Ð9@Ï8AâHTïUaðYbõ^g÷`iêU[ØCIè?:ë?;ñAAúGJÿMRÿQYÿT]ÿV^á4:Ú/5Ú03ç7:ô=Aù:?ø48÷/2é61ï95ð95í41í1/ê20ç40á4.ã<4à=4Þ=3Þ;2à93ä73è43ë33æ:8ç98ê88ì89ì87é75ã4/Ü4+Û7-Û9,Ý9-ß7*ã2(è0&ï0(õ0*î45ð43ó32ó11ô1/ò1,î3,è5.à90Ù<3Ì70Á0-ÑAAÿnuýku÷coïSkóIfÿ;cÿ1`ÿ3bÿ<dçMgÇ]i†IFeH:YN<\WCXQ>RJ7QF4MB0AL.GU4Sc>`rHgMj‡MjŠKh‹GeFfŽGfHgJi’Nk”Rl”Um“Vq–So”Qj‘NgŽKcŒH`‰E_ˆF_†G\‚E[~DWxAVr?Uo?YpB]rG_tKYtAYtAXs@NB2QE5UI9WK;XL<ZN>\P@^RBaUEbVFbVFaUE_SCaUEfZJj^Nkg‚up|x›{y¡wx¨vw­pt±jo±ah®^f¯_g°em¶pxÁ~…͉ؖܙ¡Ï ¨Öª±Û´¹ßº¿ß¾ÂßÂÄÝÅÆÛÆÃÖÅÁÒÁºÌ¼³Æ»¯Å´¨¾¦˜±—‰¢†‡‰qqstpqogevhe†nj`Y”e_š[T·g`×tnî{vÿ{wÿwsÿhfù[ZÿQKöGBè=6èC=Ø;4ÛG=ê\RÅ;0Ä<0½7+¾6(Ç>.ÑD3ÔC2ÔA1×A0Ò8:Ø>@ÜDCÛC@Ö=8Ó91Ø7/Þ7/å:3æ93å:3â;3Û>5ÕA5ÑE6ÌG8¬.¼;%ÌK8ÑL=Æ=3»0+¿10Ë8>ÕBJáKVëU`ðZeð]eìYaßLRÐ?DÑ4+Ö8/ß<7ê@@ñDFôEJñBIî?Fâ5;ß26ã36ï8<õ79ù14þ-2ÿ.4ë40ð95ò64ì0.è,*è/,è2.á2-ä=5à=4ß>4ß<3ã:5ç85ì65í55ì57ì57í57ï56ï56ì42å2.Þ1*Þ7.Ü:-Ý:+Þ8*á3(ç1&í1(ò1*í55î53ñ42ó11ó1/ò1,î3,è5.ã;2Ò4+Ò;4Æ20çUVÿpxùcnñ[gãKbóEfÿ7bÿ+]ÿ1bÿ@hÞKe­RYd8/ZI7SN:UN;[P>VI8M@0MA1=H*CN.K[6Xj@ayGf‚HhˆIgŠFeŠDc‹BcEeŽHgLh‘Oi‘Rj’Tn“Pl‘NhLd‹Jb‰H_ˆF_‡H`‡H_…H_‚H]~I]yH]wH`wKcxOdyP[vA[vAZu@MA1PD4SG7VJ:WK;YM=[O?]QAcWGdXHdXHbVFaUEcWGj^NpdTvq‘yu˜xvtsŸrr¤su®lp¯bg«Za©^f¯em¸lt½u}ƈДڕœâš¤ÈŸ©Í¦°Ô¬´Ù°µÛ±µÚ²´ÚµµÛ³±Ö²®Ñ®¦Ë«¡ÄªžÂ¦˜»™‹®‹{Ÿ|y€dbgidhbY\g[[xeauXRe]ˆOHŸVO»aY×jcóvpÿ}zÿwuÿljÿZUÿPJñD>ôMGàB9ßF>êWOº,"¼2'½5'Ç=0ÑE6Ë>-Á2!É8%ÙF4ÞDFÒ9;Ë32Ë62Ó;6×<7Û<6á<6æ;4å82à5.Ø4+Ï5+Ê8+Ä<.Â>/ÑU;ÅI/»='½;+Ã=2Ä;5Â65Â37ÜKRÞLVâOYåS]éWaæU\ÝLSÒCGÉ5)Ð8-Õ81Ú64Ý55ß58á4:ß28å8<å6;ì9=ö<?ú6:ú,0ÿ).ÿ.4ë4.ò94ô86í0.é,*ë/-ê40ã5.ä;4à=4à=4á=4ä;4è96í76ï56í36î15ï05ð24ñ35ì31æ0-Ý/(ß7.Ý9-Ý:+Þ8*à4&æ1&ì1(ñ2*ì65í53ð42ò21ó1/ñ1,î3,è5.å=4Í/&×>8É53øceÿpyô\hêR_ÞHaõGhÿ:eÿ*]ÿ/aÿ@hÓE]–AFQ-!UJ8PN9OH5\O>YH8L<-NB2:D)?J*GU2Rd:]sBcEf†GeˆDcˆBa‰@a‹CcŒFeŽJfMgPhRlPkOfLcŠIaˆG_‡H_‡H`†I\‚G]€H]~I`|Ka{Ld{Of{Rg|S]xC^yD_zEAC8CE:IF=OH@RGAWI@]M>`O=aQ:aS9`T>_VGaZTfaeljwro€wožzt¢~wªzu«ro¨hf¥a`¢^^¦ba­hg·qoÃ|xÏ…€Ú‰ã—í–ó¢žÙ£ŸÚ¥¡Ü¦¢Ý§¡Ý¦¡Û¥ Ú¦žÙ¥Ö£œÒ¢™Ð¡˜Íž–É—ÁŒ‚´ƒy«mrvghlc_`e[ZlYUtUP€ULVK–RG¨ZN²ZP½\SÔmdç|tò…~üˆðxyõyyæabÜPQ×EEñYVÎ61È1(Ç5(Ä7&Â6%Ã8%Æ9'Ì:+Ð<.Õ?1Ô8+Ö=/Ø?1Ó;-Í5'Í4&Ø:.ã?5à90á90Þ7.×7+Ï7)È;)Ä@+ÁC,Ä;3È?7ÍD<ÏF>ÌC;Å<4»2*µ,$Ä>5ÍG>×QHÞXOá[RßYPÖPGËE<Ì<!Ò<$Û:(å4,ë--ó'0÷%2û$6ÿ(@ÿ'@ÿ'Bÿ&Bÿ%Bÿ$Bÿ!Aÿ!Aÿ:ÿ"<ÿ'>ÿ)<ö*6í.6ç48å;;Ü94Ü:5Ý<4à;5ã:5æ93é73é62ì25ì44ë54è64ä71ß7.Ú6,Ø6)Û9*Û:(Û:&Ü9&ß8%á8%â7#â7#í41ï4/ñ4.ó3.ó4,ï5)ê6(å8*à:.Ø7/×96Ý>BÿlyÿasþRlöGdÿIjû5Yÿ5]ÿ;eú=cãPj©LVT)":1 9<)EF4RL>PH;BC39E15K4FGHJ#MQ,U\:\jGcuOf}QeNc…Hb‡BaŠ>cŒ@eDjIl‘Nm‘Qj’IiFgŒFf‹Ff‹Hf‰Ic…Ic‚GdƒJdIc~Gc~Gd€FfFe~Dc|BX}8[€;^ƒ><?4?A6FC<JE?OF?TG>[K>^M;`O;`Q:^S?^WGa\Vhcinlyrqƒtnšvpžtp¢pm¢gfŸaaŸ]^Ÿ\\¤ed°kjºtrÅ}{φ‚ÙŽˆà”Žè˜’ì›—Òœ˜Ó™Öžš×™Ö—Õœ–Ò•Ñž–Ñœ”Íœ“Ê›’Ç™‘Ä“‰»ˆ®€w¦tmtkdkf]`e[YiZSoWMzVJŠVI›UK°\RºYRÁXRÓf_Þqjãvoêwý‡…ÿˆ‡÷uuðfdäTSíYUÇ2+Â/%Æ7)Ã7&À7%Á8%Ä9&É:*Ï;-Ó=/Ö8,Õ9,Ó:,Ò:,Ñ9+Ñ9+Ô8+Ø8,ß;1à90Ü8.Ø8,Ð8*Ç:(¿;&¼;%¿4-Á80Æ=5É@8ÊA9È?7Å<4Â91¾5-Ç>6ÑH@ØOGÚQI×NFÌC;À7/Ê8Ñ9"Û8)å4,ï./ö*3û(7ÿ(:ÿ+Bÿ*Bÿ)Aÿ&Aÿ$@ÿ >ÿ=ÿ<ÿ8ÿ9ÿ$;ÿ);÷-9ï29ê7;å;;Ü94Ü:5Ý;6à;5ã:5æ93é73é62ì25í36ë54è64ä71ß7.Ü5,Ø6)Û9*Û:(Û:&Ü9&Þ9%á8%â7#â7#é4-ê3-ì4,ì4*ì4*ë5(æ6)á7*Þ</Ó5,Ó52óTYÿesÿ[põGbüKhÿ@dÿ:`ÿ1[ÿ7aùImÐJb‰8?O,&=7'3:(:=,C@1F@0@?-;C.:H1@CKP'\b<eoLhvRezSd~Qd‚LaƒFa†@aŠ>cŒ@eDiŽHkMlPl’IjGhGf‹Ff‹Hf‰Id†JdƒHe„KdIc€HdHeGeGfEd}C\<_„?b‡B69.:<1??7E@:KB=OE<VH=[K<^O<\O<\TA_WLc^[helol}sq†sm™qk™jg–c`•\[”ZZ˜\]ž\_¦hjµno¿wxÊÒ†„Ø‹‡ÜŠà’Œâ“’Γ’Γ‘ЕДѓŽÐ“ŒÏ’‹Î•ŒÍ“‹Ç“‹Ä”‹À“‹¼Œ„³ƒz¥{r€dpt_fiZ]c\Vc\ReYKqWH„TF£ZQ¾_YË[YÐXWÛcbßliÝpkàwqûŠ†ÿŠ†ÿ…ÿ|yømhï`ZÄ4+À2&Ä8)Á:'¾:%À9%Â9&Ç:)Ì:+Î:,Ù9-Ó5)Î5'Ð8*Ô>/Ô>/Î6(Ë/"Ú:.Û7-Ù7,Ö8,Ñ9+É:)Â9&¼8#¾4*À6,Â8.Ä:0Ç=3Ê@6ËA7ÌB8Å;1Ê@6ÏE;ÐF<ÒH>ÑG=Ê@6Â8.Í6!Ô7&ß7,é3/ñ03ø,5ý*9ÿ*<ü'=ü'=û%=ù#;û!:ü8ü7þ7ÿ6ÿ6ÿ#8ý*;ù1<ñ6=é9;ã;:Ü86Ü:5Þ;6à;5ã:5ç85é73é62ï26î47í55ê65å61ß6/Ü5,×5(Ù9)Ù9)Ú9'Û8%Ý8%Þ7$à7$à7$â4+â4)å4*å5(ã6(â7&Þ7'Û8)Ý=1Ï2+×98ÿltÿ]nþPið=[ÿJlÿ5\ÿ=eü4[ô<`êTq«?Oa#(H1+79+-8'18&:;)B=*A<(@>)@B*?GY`4s~T€Œfw‡bi~Ub|MaI`ƒC`…?aŠ>cŒ@hŽEjJkMlPn”Kk‘HhGgŒGgŒIh‹KfˆKf…Je„Ke‚Jc€HeGf‚Hf‚GeFcDb‡BeŠEhH06*58-;<4A>9G@:KB;RE<VJ<XL<YN<YRB^WOc_`igrom‚ppˆpm˜jg”`^WW‹TUŽWY–\_¢ad«ko¹qtÃ{|Ì‚ƒÕˆ†ÙŠˆÛŒ‰ÚŠÛÍŽŽÌÎŽŒÎŠÑŽˆÐ‡Ï…Άʎ…ÆŽ†Á‡¼‡¶‰‚«€xxq“‹[i}WbmWYa]T\`Q\^IhYF}SCŸULÂZYÔW[ÝV\çbeçkkàplâysê}vì{uýƒ~ÿ†€ÿ{õkaÉ<2Â9)Â;(¿:'¾<&½;%Á:&Å:'È9)Ë9*Û9.Ö6*Ð4'Î8)Ñ>.Ð?.Ë8(Ç/!Ò6)Ó5)Ô4(Ò6)Ñ9+Í<+È=*Ä;(Æ9/Æ9/Æ9/Æ9/Ç:0È;1É<2Ê=3ÒE;ÒE;ÐB8Ë=3Ë=3ÏA7ÏA7Ë=3Ñ4#Ø6)â5.ë31ò/5÷+6û(7ü)<ù&9÷&;÷&;ø'<û&<ý%<ÿ$:ÿ#:ÿ!7ÿ"7ü%7ù-9÷5>ñ:?ç9:à87Ü86Ü:5Þ;6à;5å95ç85ê65ë54ñ27ð37î66ê65æ72á6/Ü5,×5(Ø8*Ø8(Ø9&Ù8&Ú7$Ü7$Ý6#Ý6#Ù6'Ú7(Û8'Ü9(Ü9(Û:(×:'Ö:+Õ;/Î3.éIKÿo{ÿVjøDaö=_ÿCiÿ/[ÿ7`û=cëLlÆOe€0=G >3--3'+8'2=,=B.B@+C;$G="MA'R_*q}MŸp—¨|ƒ˜mj„W_{J]~E_ƒCa†@b‹?fCk‘Hl‘Lm‘Qm‘So•Ll’IiŽHhHhJiŒLhŠMiˆMf…LdƒJdGe‚Hf„Hh„If‚EeDf‹FiŽIl‘L-3'17-7:3<;6B=9G?<MD=QG=SI=SK>UOCZUQa_dhgukkƒllˆjg’baXV‡PP†QQXYš`cªfj´orÁuxÉ|Ѓ„Ö†‡×‰ˆØŠ‰×Œ‰ØŒŒÌ‹‹ËŠ‰Í‰‡Ð‰…ш„ÑŠƒÓ‰‚ÐŒ„Ï‹„È…Á†º†²‡¥}x–vpŠ“ScƒQ\qUT`^RVcOTbH_]DvUB’LB¼RRÖPWàPYé\dèejâljâwqâvláphõ~vÿ‚{ÿ‡~ôkaÉ?2À8(À;(¿='¾='¿='Â;'Å:'Ç8(Ê8)Ü8/Ú7.Ô8,Ï9+Ê;+È;*Ç:)É7(Ï9+Ñ7+Ô8,Ó7+Ï7*Ì8*Ë<,Ë>-É=0Ê<0Ê<0É;/È:.Æ8,Å7+Å5*Ð@5Ð@5Í=2Ë8.Ë8.Î;1Í:0É6,Ò.$Ù0)ä2.î23ô/8ù-9û+;ü+>ü-?û.?ú0@ü/@þ/Aÿ.?ÿ-?ÿ->ÿ)9ý)8ø*7õ0:ó6=ì9=ã77Ú53Ü86Ü:5Þ;6â:7å95ç85ê65ë54ò38ñ48ï56í76æ74á6/Ú6,×5*Ö9*Ö9*Ö9(Ø9&Ø9&Ù8&Ú7$Ú7$Ô9%Õ:&Ô<'Õ=(Ô=(Ô=(Ó>*Ó=.Ð8-Ù;8ÿ^eÿaqÿPi÷;\ÿAiû6aÿ/]ÿ.WøIjÛYq•>NX'-?+,730*1)-9-5@/:B+<<"B;VG(iV6v‡P£lª¾‹¨¾Ž¥wo‹[aK^F`…BcˆBeŽBj“Go•Lp•Po“So“Uo•Ll‘KiŽHgŒGiŒJiŒLi‹NhŠNf…Je„IdƒHfƒIg…Ih†Hg…Gf„FgIi‘Kl”N*2%.4*470894<;7B=:HA;KD<NH<NH<OKBUTR_^ffewggfg†ba[YŠQQ…NO‡RS“[^£ei³lo¾sxÊx}ÑÖƒ…؆‡Ù†‡×ˆ‡Õ‰ˆÔ‡ˆÈ†‡È……Ë…ƒÎ„Ð…€Ô…€Ô‡Ò„ÓŒ…Ë…Á…¸‹…«„{vŒrn•N\ƒNTqTPa_PWgMReI\`EsXCOCºTRÔSXàPZëYcé`gähjçqqê{rärhö}tòsjþxmæ\QÄ:-¾5#À<'À>(À>(Á=(Ä;(È;)Ì9)Î8*Ú3+Ù6-Ö:.Î:,Ç:)Â9'Ä;)É=,Í>.Ö@2ÙA4×=1Ï7*Ê4&Ê8)Ë<,È:,È:,É;-Ê;-Ê;-È9+È6)Ç5(Ê6*Ï;/Ò>2Õ>3Ö?4Õ>3Î7,Å.#Õ)%Ü-*ç02ñ29ø0;ü/>þ/?ý0Aú0@÷1@ö2@ö0=÷/:ù-9ú,8ü*7ý/<ù/;õ0:ñ2:í6;æ68ß55Ù42Ü86Ý:5ß:6â:7æ87é77ê67ë54õ49ó49ð69í76æ74ß6/Ú6-Ö6*Õ7+Ô8)Ô8)Ô9'Õ8'Õ8%×8%×8%Ï:$Î<%Î>&Í?'ÍA(ÍA*Î@,Ï=.Ð71éIKÿgrÿOdÿHfû7]ÿAmý/_ÿ1^ø1XåOj¹Wfh39@*,?994443524925>-2<#29ECl`8Ž}R™±u©Á‡µÎ—­È•’®}v”be†Q_ƒF`…Bc‰@gDo•Jr˜Or—Rq•Up”Vo•Ll‘KhGf‹Fh‹IiŒLi‹Ni‹Og†Kf…Je„If…IhˆIjˆJi‡Gg…EhJk“Mn–P(0#*2'/4-350664<87@<9C>8IE<HE<KHCQQQ[[eabvab~`a€_]ŽZXŠTTŠTT\] gi´psÄtyÍ{Ø~‚Û…Þ„†Ýƒ…؃„Ö…„Ò†…Óƒ‡Ç„…ȃƒË‚̓Ó„€Õ†€Øˆ€Õ„Õ‹„Ê‹ƒ¾‹ƒ²ˆ‚¤|’uqlirŒOVNQpUNc`OYgMVfI]dEo]EˆTF²[TÌXYÙSZæYaé\dèaeðknñ|rìsj÷xoÞYPå[QÒD8Ã5'Æ:)Ã:'Ã<(Ä='Æ=*É<*Í:*Ð8*Ó7+Ö/'Õ2)Ò8,Í;,Å<*À;(À;(Ã<)Ç;*ÕC4áK=ßG:Ô</Ê4&É5'Í;,È9)È9)È9)È9)Ê8)Ê8)Ë7)Ë7)Í7)Ó;.×?2Ù?3Ú@4ÝA5×;/Ï3'Þ..å12î49÷5>û3>ú0>ú0@ø/?ò.<ï/<í/9í07í.5ï,2ò+2ò)/õ1;õ3<ò5;ì59ç47á55Þ65Û75Ü86Ý97ß:6ã:7æ87é77ê67ë46ö5:ô5:ñ7:î87æ74à72Ù6-Ô6+Ñ8*Ð8*Ð9(Ð9(Ð9(Ñ8&Ñ8&Ó8&È:"Ç;"È>$Ç?%ÇA(Ç@*Ê>-Î;1Õ:6üU\ÿ_oÿGcÿ>bÿ8cÿ6gÿ0cÿ4\òCbÈMa…BIL44:97<<>948>58<7379+3="8DS[,ƒPª£o«Èˆ¯ËŽ¯Ì’¦Ã‘¯}{™ggˆQ^‚E^ƒ@c‰@iDo•Js™Ps˜Sq•Uo“Un“MkJgŒGeŠEgŠHh‹Ki‹Ni‹NfˆLd†Id†Ig‡Hi‰JjŠIi‰FhˆEi“Kl–No™Q&.!(0%-2+130333756:97>;6GD=DD<GFAOOQZZd_`t^_{\]|`^\ZŒYX‘\\œgg¯qrÂz|Ó}܄ゅ䃆ㄅႄۂՂ҃‚ЄˆÈƒ†É„„̃‚Î…Õ†‚׈‚Ø‹ƒØ…ÒŒƒÆ‹‚¹‰‚«…›xˆsntjfgSPuRLjWIe`MafO\gI`cFn`FxR?[M·ZSÆRRÚUZåV\ëX`ö`iótkïof÷qhÑD;ÔA9Å1%È4&ÔC2Ç9%Ç:&È;'Ë=)Î;+Ó:,Ø8,Ù7,Ð,#Ð/%Î6)Ë<,Ç@-Á>*½<'»8$¾5#ÑB2ãOAäN@ØB4Í7)Ë7)Ð>/Ê;+É:*Ç8(È6'È6'Ê6(Î8*Ð8+Ó;.Õ;/Õ9-Ó5*Õ7,Ü;1Ý<2Ú9/ë7:ñ8=÷:Aü8Bü4A÷.>ò,;ï,:í/;é19è38é58í57ñ48ô36ö45î49ï6;í9<é69â45Ý33Ý86ß;9Ü86Þ97á98å99æ89é69ê67ë46ö5:ô5:ñ7:î79ç85ß82Ø7/Ó7+Ð8+Í9+Í:*Ì;*Í:*Í:*Í:(Ï9(Ä: Â: Ã=$Á?%Â@(Ä@+É=.Í81ß<?ÿ[hÿQhÿHhÿ7]ÿ<jü,]ÿ7iì;XéYp§LUX00?<5<E@99;B3:G08F21?9+<E(DW*at=Žœ_²»|®ÌŒ«É‹¥Ä‰œº„Ž¬zy™gf‡PZ|@]‚?a‡>hŽCo•Jr˜Or—Rp”Tn’To“MkIgŠFeˆFf‰Gh‹Ki‹Ni‹NfˆKe‡Jd‡GeˆHgŠHh‹Gh‹GfŠDj”Lm—OpšR(0!'/"(-&+-*.0/333775:94==5?@8DE?JLKQQYVWiZ\s]^|YW†[Y‹^]–ee¥nn¸wxÊ€Ú„„䊌ðŠŒðŠŠì†‡ä‚‚Ü€Ô‚€Óƒ‚Ò€„ĄǃƒÉ„„ΆƒÒˆƒÕ‹ƒÖŒƒÒŠ€ÇŠ€½‰±…~ €xwpxkeec^XpZMm[Mi\Kf^Kd_IcaHfbGl`FlR;„UA£^O¿aYÑYXßPTñQ[ÿXbôkcæYRÔD<Î70Ñ7/×;/Ø</Ô;+Ï9(Í:(Í:(Ð:)Ô8)Ù7,Ü5,ß4,Ð/'Ï2)Ì8,Ê>/Å@/Á@-¾=*¼9'Â9)¾0"êVJáJ?Å.#Ñ=1Î</Ç8*Ê;*É:)È9(É8'É6&É6&Ë5&Ì4&Ð7)×;.Ü>2Ü<0Ù7,Û7-â>4éE;øAFó8?ð3:ö4?ö2>ñ-;ï,:í2=ì7@æ5;ã68å78é99ð:9ñ86ò65ï==î<<ê:<æ89á77ß76Ü75Ü75Þ97á98ã99æ::é9;ì9<í9<ï8<÷6;ô5:ñ7:í9:è:9à;5×90Ï7,Ë7+È9)Ç:)Ç:)Ç:)Ç:)È;*È;)Á9!Ä>%½;#µ5»:$ÈE3Í@6Ê0.ÿ^eÿVgÿHcÿ;\ú0Xø/[ý5cÿ<jã\m¯EOo33G6.9C8:E==9:B+3P-4N00D7'CJ)Wo=}›_œ¹v«Å~«ËŒŸ¾‚˜·~”²~‚ nf„RXvBY{?]€>c‡?iDn”Im•Ll”Nk’Qj‘RjŽHfŠDc†Bc†Df‰Gh‹Kg‰LdˆJg‹MhŒNg‹Kf‹HeŠEf‹EjIm“Jp›SrUtŸW*0")/#).'+-(-/.222553782;<4>@5BC;HJGOPTSUaXYm[[s\Z‚^]‰da–kj¦us¼}Ї‡á‹‹íŒòŒ‹ñ‰‰í…„ ڀ~Ò€σ€Ï…†Æ†‡È‡ˆË‰ˆÎ‹‡ÑŒ†Ð…ÎŽ„ÉŠ€½‰³†{£‚x‘{s€tknkd^e\SbaLb`Ke^Kh]Ii\Ij^Hk_Gm_EraG{]CŽ[Fª[LÆWPàQS÷PXÿS`ìWQãKFÛ>9×50Ú5/Ý90Ü8,Ø8*Ó8&Ñ8&Ñ8&Ô8)×7)Ü5,à3,ã2,Ë1'Ë4)È9+Æ=-ÄA/Á@-¾=*¾9(Â9)Ë<.åQEÜH<È4(Ì:-È:,Á5&Ê=+Ê=+Ê;*Ì;*Ë:)Î8)Ï7)Ï6(Ó7*Ö8,Ù7,×3)Õ1'Ø1(ß7.å=4ûBHò7>í07ï/:ò0;î.;ì1<ê6?ã6<Ü36×32ß:8îEB÷JFøEAõ?<è:9æ:8å97â96á85à85á98á98à87â88å99ç9:é9;ì9<í8=ì7<ô5:ò59î68ê88æ:8Ý:5Ó91Ë7-Æ8*Ã:*Â:*À;*À;*Á<+Á<+Á<+½9"Á?)¹;$²5¸;'À</É:2Ø<=ÿ]iÿOdÿ@[ü6Yù5[ø:`ö=fô@g¡EJ„>>];2@>/3A05?4E=:X;?T-0X51ZI7bjEu[Š±pšÄ|žÈ|š¹}š¹€™·ƒ©yr`YuESq?\{B_>b†>iCm“Fl”Kk“Mh‘MhQhŒFeˆDc†Bc†DgŠHiŒLhŒNg‹MiOiMiŽKgŒGgŒGfŽGj’Im•LnœQoRr U-1"-1#,/&,.).0-11/34/45-9;0<>1@B5EH?KMLQRWUTbXWi\Yx^]fcŽpm¢zx¹…‚ÏŠáíŽñŽŒïŠˆé‡ƒá~Õ|Í}È}Ç…‡ÄˆˆÆŠŠÊŒŠËŒŠËŒ‡ÇŒ„À‹‚¹‰€¯†|¡€v‘{p€ujpod`i_Ue\MXeK]bKa_Jh[HmZIp[Hq\Go]EtcItZ?‚V= WDÅYMäTSûNTÿIUß@<Þ<9Ý84ß61á6/á6.Þ6+Ú7(Ö6&Ó8&Ó8&Õ8'Ø6)Ý5,á3,ä1,Ç5(Å6(Â9)Á<+Á@-Á@-À=+À8(Ã5'ÜJ=ÜE:ÕA5Î</Ä6(Ä;+¼7&Æ:)Ç:)Ç:)É:*Ê8)Ë7)Í5(Í3'Ö8-×6,Ö3*×3*Û2+ß6/å:3è=6ò;?í4:ë07î0:ð2<í3>ë7@ê=CÜ7;áAAìNK÷ZUüZUùRLïB>è62à72à74à74ß74à85á96ã;8ä::á77ä88æ89è8;é9<ë8<ì7<ì7<ò38î47ì57ç77â:7Ù:4Ï8/Ç7,Â8+¿:+½;+»<+»<+»<+»<+»<+º9$¾@*³9$°7$¶;+´2%Ã40îOTÿZiÿH`ù8Uó6Vó>]ñFfçHfÞEat?9e?6QA2@C04?.29)>5,O61K*#W:,j\Bˆ_«t”½{“ÃyÃv•²|œ¸…™µ…€šm\uKHa7Nh9[xB_}?c„?hŒBl’Ej“Gh’JgLeMe‰Cd‡Cc†BeˆFh‹IjŽNkOjŽNkOkOiMhJgHi‘Hl•Ip™Ms¡Vt¢Wv¤Y25$13&02'01+12-23.34.46+9;-;>-?B1DF9IJBNNNRQWTR]XVd\Zoda~nl”zw®„‚ÄŒ‰Ø‘Žå”‘ì“펋扅ڂÎ{Å}¿‚}¿ƒƒ¿……Á‰ˆÂŠÃ‹ˆ¿‹„¸‡®…}¦…{€vŽzm~sfmoa`k^Vi[NgZJVdJZbJa_JjZJpYIsYJtZIs]FqY?tU9†T;§ZFÌ\PæRNóEGù:AØ3/Ü41á51ä50ã5.â4+à6)Û8)Ö7$Ó8$Ñ8&Ô9'Ø6)Ý5*à3,ã2,Â8+¿7)»7(¼:*¿=-Â>/Ã;-Ä8+Æ3)ëTKÔ;3Ì8.ÑA6¾4'À<-½>-Ã7&Ä8'Æ9(Ç:)Ê8)Ë7)Ì6(Í3'Ó5*Ô3)Ö2)Û4,ã:3é>7ì?9ë>8è47ì59ï6;î5;ê2:æ39ä7=á<@óUVûc`ÿnjÿidóVQäA<ß61à3/Þ71Þ71Þ71ß82á85â96å97æ::å78æ89è8;é9<ë8<ë8<ë8<ë8<ñ48î68ê67æ87à;7Ö<4Ì9/Å8.½9,º;,¶;+µ<+´<+´<+³;*³;*³:'·@,­8&¬9'±;-«+"Ã54ÿ_gÿSdýE]ó;Uí<XéG_áOdÐP_ÄKZcPAVI8JE2CF1AF0<?*<7#>1B2SE*okHŠ“f•¬t´t‹¹q‹½t¡¹‰¡¸Š§}l‚\K_:BV1Lc7Yq?_{@dƒ@i‹Ak‘Di’Fg‘IdJbLc†Bc†Bd‡CgŠHjMkOm‘Qn’Rj‘Pj‘Nj’Li‘Jg‘Gi“Gm—KqœMu¥Yv¦Zx¨\78(78*66,56056156167/68+;>-=@+@C.DG4IK=NNFQPNSQTVUSYY[a_lkius›€}´ˆ†ÈŒ‰Ö•’ã”äÞ‹‡Ó„Æ}º|µ€{±~¸‚º‡„»‰…¸Š„²†¨z›€xs‡znzrfjm_\j[Tk[NjZKjYI^bK_aKe^Kk[KpZLtZKw\Kz[G{WAƒS=—U?³XFÍSFÝF?å76ê01Û2-ß3/â5/å4.ã2*à2'ß5(Ü9(Ô7$Ð9$Ï:$Ñ:'Ô8)Ù7*Ý5,à3,½>-¹:)µ6%·8'½;+Â=.Ç;.É6,Ñ80ö\T×=5Ë4+ÏA5¸3$·:(¹@-Â9)Ã:*Æ:+È:,Ê;-Ì:-Ï8-Ñ7-Ñ3*Ò1)Ö1+Þ71ç;7ë>:è;7æ74é77ï;<ð<?ê69ä15ã6:èBFìNOÿxwÿqnða[ÛKCÐ83Ñ2.Ü73è?<à93à93ß82à72à72ã75å76å78æ68ç79è8;ë8<ë8<ë8>ê7=ê7=ð69î79ê7:ä::ß=:Ö=7Ë;2Ã;/¸9*´;*±<*¯<)­=)¬<(¬<(¬<(«:(¬=*¤9'¥:*©9-«0)ËAAÿgr÷L^÷E[ðBYèF[ÛN^ÈT]´VW§SQSU@LN9JG4JE1FD-AA'>C#@G%MU.^g<xTŒ˜f‘¤m©nŽ²r’¼z µŒ’§€u†dRcC?O2BS3Oa;Vl=b{Be‚@iŠCjEi’Fe‘FbH`Ie…Bd‡CgŠFiŒJkŽNlPn’Ro“Sj‘Pk’Oj“Mi“Ki“Ik•InšKržOu¥Yv¦Zw§[?>,?=.==1==5=<7;<6;=2;=/?B-@D+CG,GI1KM8NOASPITQLYXDZ[M_^Zgepqo‡{y¡ƒ€·‡…ƌӋՊъ…ǃ€¹~z­zw¤{u¡zw°|y°€|®~©‚~£y•|t‰zrvkqrffm`Zl[QlZNl[KmZKmZIg^Mi]Mi]Mj]Mn]Ms^My^M€[I“`OšWG§N@¹I=Æ@5Ð6.Ù0)á0*á51â5/ã4/â4-à2)ß3'Ü6&Ú;(Ð9$Í;$Ì<$Í<'Ñ:)Õ9*Ù7,Ü5,ºA.´;(¯6#°5#¹:)Â=.É;/Í6-Û>7ùZTåHAÐ90Ì@3¸6&«4 ±>)¿7'¿7'À7'Ã7(Å7)É7*Î7,Ð8-Ù<3Û:2Þ93å<7ê>:ê=9ç85ã41è96ë<9ê::è8:ì>@øORÿccÿqpùheàUPÈ=8¿2+È5.Ö;7à<:â:9à<3á:2á:4á83ã73ä65å55æ68é69é69ê7;ë8<ë8>è7=è7=ç6<ð8:ì8;è8:ã;:Ý>:Ó>7É<2À</´9)°;*¬;)ª;(©<(¦;'¥:&¥:&£<)Ÿ:(Ÿ<)ž:*¡7*´?8ÛTXüdpðK\ñH]ìI\ÝL[ÉRX±WVœ\R^OAP9FN9NI5K>+>467>O#Jh4gTt•\„›c‹™dŽ›f‘¢l•¬t•²x„”pn}\Q`C=J09F,BO3O_;Xi=czDgBkŠDk‘Dh’Fe‘F`G`Gf†Ci‰FjKlMlOkOm‘Ql“Rm”Qm”Qm–Pl–Lk—Jm™JržOu¢Qy¬]y¬]x«\CB0DB3DB6EB9CC;CC;BB8AD3CG0EH-GJ-JM0OO7RQ?TREURI[\:\\@\]Kaa_ihvrq{z¦~µ†‚¿ˆƒÃˆ„Á„¸{­ysŸtp•qmŽol£rn¡tq wršwrtoƒskxrilmb^l_Vj\OlZLn[Lo\Kq\Kq\KrZNq[Nn\Nl_Ol`PqaQy_N†[KŸ_S¦OE°A8½:2È5-Ï1(Ø1(Ý5*â70á6/á4-á3*à4(ß5(Ù6%Ô9#Í;"Ê<$È>$Ê>'Í<'Ò;*Õ9,Ø8,·D/±<(¬5!­4!¸9(Ä<.Ì9/Ï5-Ú83ñNIòSMÙB9ÌB5½@.¥2¬?(À;,Á9+À8*À6)Å7+É9.Ï;1Ô;3áD=ãA<ä?;ç>;é=;é;:è88ç77æ93æ95å84é;:ôJJÿ\[ÿdc÷caË=9¿82»4.Ã81ÓB=ÞE@ß=;Ù42â;3â;3â92ä84å84æ66é77é77ê69ë6;ë6;ë8<ë8>è7=è7=ç6<í68ê69æ89à;9Û>9Ñ>6Æ<1¾<.²8)®;)ª;(¦;'¤;&¡;%¡:' 9&ž?-”7%š=,—:)˜3'ÂQKíkmï\fïN^ìI\àHWÎJU·SS¡]RŒfQ‚jP=S<CL7JB/L7$F5FH!Tq;c–Txµo€µo‚¦f~‘Y…ŒX–cŒ–d|YXeGGT89E-8A,:C.?I0JX7Wh>g{Fh‚Cl‹Ek‘Di“Gc‘Fa‘G^Gi‰FlŒImNn‘OlOjŽNkOk’Qp—Tp™SpšRo›Po›NqNv£Rw¦Uz­^z­^y¬]GD3HE6HF9HE<GG?GG?FF:FG5GI1HK.JM.LO0QQ7SR=VSDWSG[\4Z\7[[C\\Rcbhmkusšzx©~{´€|·‚¸€|¯zw¢so”mj‰kf„gb˜hd—lf”lh‹lhleuibij`^g]Th\NjZJl[Io\Ks^Ms^Ms\LzWQvYQp\Ql`PkbQpcR{aPŠ\OžUL§D>±61Á3/Î5/Ö5+Ù7*Û8)ß6/ß4-à3,à4*â6*Þ7'Ø7%Ï7 Ì<"È>"Æ>$Ç?'Ê>'Ï<*Ó:,Õ9,µE/­='¨3¬3 ·8'Å;.Ì9/Ò5.Ò/*ä?;ûYTàI@ÎD7ÆI7¥5®D,ËF7ÉD5ÉA3É?2Í?3ÒB7ÚF<àG?ßB;à>9à;7à74â64ä65ç77é99é>7ç:4ä73è<:ñIHñMLØ=;¹(%¸-(¼5/Å@9ÌC=ÐA;Ö=8Ý>;ã?>á:2á:2â92ä84æ95è96ë99í9:ë7:ë6;ì7<ë8<ë8>è7=ç6<æ7<ì59è58å78ß:8Ù<7Ï<4Ä<0º:-°8(«:(¨;'¤;&¡:'Ÿ:&Ÿ:&ž9%š?,4"—>,“:*“1&Ì\X÷y|æT_ðTbèI[ØDRÃGO®SPšbS†lS{rSC[C?H3B7%O6"_K0prJ€£iˆÇ€yÃt{¾qu¢]oƒHy}J‡†Xy|O\d5:D)3=$4>&<E2=D2:B+EP2Ve<g{HiƒDl‹Em’Ei“Gd’Ga‘G^Gk‹HnŽKo’Po’PlOiMjŽNj‘PsšWsœVsUržSržQu¡Rw¦U{ªYt§Xs¦Wq¤USJ;SJ;SJ;SJ;SJ;SJ;SJ;SJ;VM>WN?XO@YPAZQB\SD]TE]TEcZKbYJbXNcXRg\Zmacsfmwjs|n{~p}s€s€~p}wjtobli\fcb]a`[a^W_\U_[R^ZOa[ObZMe\Kg\Ji\Ii]Gk\El]Fm]Dm]D_gOkiTqZH{M@•RI©WL®TI³WH¦N:¢G2¢?*ª;(¾:.Ò72à23å,1Þ7.Þ7.Þ7.Ü8.Ü8.Û7-Ø6+Ø6+×7+Õ7+Õ7+Õ7+Ô8+Ô8+Ô8+Ô8+¸=.·=.°8(§2!ª2!´;*½>/Â:,Æ6+Í6-Ô:2ÜB8àI>ÖG9Ç;,¹1!ßOGÙIAÔE=ÓE;ØH?ÜG@àC>á<:ã54ê67ï8:í9:ç77à72Ý:3Ü>5ÎKAÈE;½=0µ7)°5&³8)¹>.ÀA2Á;/Ê<2Õ>5ß=8ç;9î79ò67ô68æ7>æ7>æ7<å8:å99å97ã:5ã:3Þ5.ß6/ã81ä84å97ç98ç9:ç9:ë;>ç9;á99Ü<<ÖA=ÌC;ÀB6´@3¦;+¢=+>,™<*–;(•:'”9&“8%‡F2‡>/†/%”-(ÀIKèkoçlqÊWZ¶OP©TQŸVO˜YP•[P–]R™^Vœ`XMb!:O3JOf x’I˜²h¡½r »t™²pƒ›akN\lEWdHS\GHN@=C9;<,AB4=?2:=2<B6:C2AN4Rc?\tBgƒHpKo“Il’Gj’Ij’KgJlUm‘To“Ul“Pk“Lk”Hl—Hm˜FpJoŸIp Jr¢Ns¥Pv§UyªYz«Z{¤jo˜^dSWN?WN?WN?WN?WN?WN?WN?WN?XO@YPAYPA[RC\SD]TE^UF_VGd[JcZIcYMcYOf[Uj_]nbdpcjrentgpvirvirsfom`ggZacW[\\T\YRYVOWTKXTIXTI\VJ^VIb[Ic[Hf[Gh[Hi]Gj^Fm^Gm^G]eNmhTt]M‚RFšVM­VM²QH¶QE®H9ªC2©>,¯:)½9,Ì70Ø42Þ22Ý6-Þ7.Ü8.Ü8.Û7-Ú8-Ù7,×7+×7+Õ7+Õ7+Ô8+Ô8+Ô8+Ô8+Ò9+¸>/·=.®9(¥2 ¦3 ²:)»=.¿;,Æ:-È4*Ì3+Ó;0ÜE:ßPBÞRCÚQAÝE@Ø@;Ñ<6Ð;5Õ>7Ø=8Û96Ý33é69í68ï79í68é77å97â=9á?:ÆC9¿?2¸:,±6'¯5&²8)¸=-¿@1ÅA4ÍA4×@7ß=8å97ê67ï56ô68ç6<ç6<ç7:æ89æ87å97å95ã:3â92ã:3ã:3ä;6æ:8æ:8å99å99æ9;ä:=à<=Ú?=Ñ@;Å?6¸<2¬;-¥;+ <,œ=+—<)–;(’:&‘8&7%z;)€8)‰5*ž;5ÁQPÚceÔ]a¹MM­NL¤SOYP˜\R—^S—^U˜_V™^VSg*Sg(^r3zO—°l¥¾z™²nˆ¡`j‚Fau@Sf9IY5FP7?H59?358/;<,AB4=?2:=2;A5:C2@M3Rc?]uCgƒHqLp”Jm“Hk“Jk“Lh‘Km‘Tn’To“Sm”Qk“Lj”Hl—Hm˜HpJnžJp Ls£Ou¦Tx©Xx©Xx©Zm–\b‹QY‚H]TE]TE]TE]TE]TE]TE]TE]TE[RC\SD]TE^UF_VG`WHaXIaXIe]He]Jd[Jd[Le[Qf[Uh]Yh\\i]]j^`k_ak__i]]f[YbWU`USYVMWTKTQHRNCQMBSOCWQCXRB^WG^WEaYFc[Fg\Hi^Hk`Jk`J^cOmhUy_PˆXN¤[T³VQ´HE¸E>¹@7¸>3·<-·9*¼8+Ã9.Ê:/Ï;1Û7-Û7-Û7-Ü8.Ú8-Ù7,Ø8,×7+Õ7+Õ7+Õ7+Ô8+Ô8+Ô8+Ò9+Ò9+º@1¶>.®9(£2 ¢3ª:&µ=,»=.Ä?0Å7+Æ2(Ê3(Ð<0ØF9ÛM?ÝQBÜ87Ø43Ô20Ô52Ù:7à>;å=<é;<ï8<ï5:ì27ê24é56å97á<8à=8¹;-·9+±6'®4%­5%°8(µ<+»=.ÈD7ÏC6ÖB8Ü=7â96è64í55ò67ê5:é6:é69ç79ç77æ95å:3å:3ã:3ä;4ã<6ã<6ã;8â:9á99à88Ý9:Þ;<Û@>ÕA=É>7º:1­7+¥7(¡;,œ=+˜=*”<(’;(9&8%Ž7$u8%y6%ˆ9,¢E=ºROÂVT¹OO¬HH¤LHœSL˜ZO—^S–bU—aW˜_V˜]UgxB{ŒU“¦n¥¸€«À‡ž³zz‘YYp:?R$AS)AQ-?L0:C.6<.690581:;+@A3=?29<1;A59B1@M3Qb>_wEi…Js’Nr–Lo•Jm•Lm•Nk”Np”Vq•Uo–Sn–Pl”Kk•Il—HmšIpJpJp Lu¤Sx©Xyª[u¦Wq¡U_ˆNVEOx>aXIaXIaXIaXIaXIaXIaXIaXI_VG`WH`WHaXIbYJcZKd[Ld[Le]Ff^Gf^Ig_Lg^Of\Pf\Rf\Sh]Wh]Wh^Uh^Ug]Se[QdZNdZN]YNZVKVRFRNBPL@PM>RO@UO?WQAYTA[VC^WDaZGd]Jf`JgaKadSleUt]O‹[Q«b\»YXºDD¾9:Æ;8É:6Ç80Â8-½8)¼:*½@.¾C1Ù7*Ù7*Ú8+Ú8+Ú8+Ø8*Ø8*Õ8)Õ8)Õ8)Ô8)Ô8)Ô8)Ò9)Ò9)Ò9)»A2¶>.¬9'¡4 2¢8"¬=)µ@.¼>/Á9+Ä6*Ç4*Ë7+Í;.Î</Í>0å26á14Ý02Ý34à88å;<ë=?î;?ï6<í38ì/5é05ç47ã77Û64Õ30±7(°6'®6&¬7&¬7&®9'²:)µ:*ÃA3ËA4ÔA7Ü?8â:7ç85í76ð67í6:í6:í68ë76ê86è94ç:4æ;4â92á:2ß:4à;7Þ:8Ý98Û97Û89Ö<:Õ@<ÓB?ÊA;»;2¯6+¥5'ž7(œ;*—<)“<)‘<(:&8$Œ7#Œ6%z@,v5#6'™E;¬OH¬MI©LG¨PLPH–VL“ZO“_R“bT•aV—aW™`W~‹]™©z­½Ž¦·Š¡ts†YN`8/A->3B%:F.=F3;A3:=2;<4<=79:*?@2<>19<1:@49B1?L2Pa=`xFj†Kt“Os—Mq—Lo—No—Pm–Pp—Tq˜Up˜Ro—Pm•Ll–Jn™JoœKqžMrŸNt£Sy¨X|«]w§[mSd”J[„LS|DNw?cZKcZKcZKcZKcZKcZKcZKcZKcZKcZKd[Ld[Le\Mf]Nf]Nf]Nf_Eg`Fh`IiaLiaNi`Oh_Ng^OjaRi`Qi`Qh_Nh`Mh`Mh`KiaLb_P^[LYVGTQBPM>NK<NK:NK:PM<RO>TQ>VS@YVC\YF^[H^]I`aSf^QmWJ†[R­hcÁb`ÄLMÌ@CÔ:<×79Ö74Î70Á9+·>)²D+°H-×7)×7)Ø8*Ù9+Ù9+Ö9*Ö9*Õ8)Ô8)Ô8)Ô8)Ò9)Ò9)Ò9)Ò9)Ò9)¼A2¶>.«:( 7"™5š7 ¢>&¯B-±<*º;*Â:,È8-Ë8.Î:.Ð<0Ò>2ò5<î3:é27ã36â46â46â46ä15ì5:ì39ê38ê5:æ8:Ü66Ñ2/Ç,(®9(­:(­:(«:(«:(«:(¬9&¯7&¸:+Á<-Í?3Ø?7à=8æ:6ê86ì87ï56î66î66í74ë84ê93ç:3æ;3á:2ß;2Þ=5Ü=9Û=:Ù><Ø=;×==ÌA<ËB<ÆA:»<3­7-£5(ž7(š;)–;)“<)=(Œ;(Š9&‰8%ˆ7$‡6#}C/s4"y4$“G:¤RG¡NFžNE¡WN˜UL’XL[NŒ\NŽ^R”`U—aW›bYƒŽd˜¤|©ƒ€Žj]kJDS42@&$2-:&0;*5=.9?3<?6=>6:;3::29:*>?1;=08;09?38A0>K1Pa=ayGk‡Lu”Pt˜Nr˜Mq™Pq™Ro˜RršSršSršQp˜Om—Km˜Ip›LržOt Qv¢Sx§Y{©^z¨_qŸVd’JY‡?]†NVGQzBe\Me\Me\Me\Me\Me\Me\Me\Me\Mf]Nf]Nf]Ng^Og^Oh_Ph_Pg`Fh`IiaJjbMjbMjbOjbOjbOjbOiaNh`Kh`Ih`IhaGibHjcGe`Mb]J^XHXRBSM=MJ9KH7IH6KJ8LK9LM;NO=PQ?QTASVESVEYYM]WKcQEzXN¡ha¸eaÇUUÛORÞ=Cã8>à67Õ62È:.¹@+­E*¦I*Ô7(Ô7(Õ8)Ö9*Ö9*Õ9*Õ9*Ô8)Ô8)Ò9)Ò9)Ò9)Ò9)Ò9)Ò9)Ñ:)¼@4µ=/«<+ :$—7’6š<#¦B*°C.¹@/¿;,Ã7*Å2(Ë4+Ó:2Ù@8ó1<ð2<î5=ë8>ç:>å;>ä:=ã9<á48ä5:å8<ä;>Þ;<Ò86Å1-¼-'«<+«=,«>*©>*¨=)©<(©:'«8%¯6%¹7)Å;.Ñ=3Ù<5à;7ä;8è;7ð75ï75ï75î84ì94é;4è;4å=4â>5à?7ÞA:ÚA;ÙA>ÕA?Ñ??Ñ??¾B:»@8µ<3ª8-¡5(›5'˜8(•<*‘;*<)Š<(‡:&†9'„7%ƒ6$‚5#y<)r3!}:*—OA£YLœRG•OE–VJ”ZN[MŒ[M‹[OŽ\Q”^T™`Yœa[s}Xyƒ`r|ZU`B9F,/;'0;+1;03=44;35<4:?8?B9?A6<<277+89)>?1:</7:/8>27@/=J0O`<ayGk‡Lu”Pu™Os™Nq™PršSp™Sr›OrœPq›Oo™Mn™Jp›LsžOu¡Ry¥X{§Z|¨]x¦]qŸWg”O]ŠEVƒ@`‡PY€ISzCg^Og^Og^Og^Og^Og^Og^Og^Og^Og^Og^Oh_Ph_Ph_Ph_Pi`QjbOjbOjbOjbOiaNiaNiaNiaNiaLh`Kh`Ih`IhaGhaEhaEhaEf_Le^Kb[H\WDWR?PM:LI6IH6GH6GH8GJ9GK:HL;IM>HO?HO?PPDVRGYOChREYM˜UL³RLØXWàGJç<Bå79Ý54Ñ:1¿@-°D*¥D$Ò6'Ó7(Ô8)Ó:*Ó:*Ó:*Ó:*Ó:*Ò9)Ò9)Ò9)Ñ:)Ñ:)Ñ:)Ñ:)Ñ:)½?3¶</¬=,£<)—9 6”:  B)¬C-¶A/¿=/Â6)Â/%È/'Ð6.Ú=6ð0;ð5>ï:Aì?CæBCáACÞ@AÚ>?Ï12Ñ56Ô::Ò<;Ê;7¾73µ4.¯3+¥>+¥>+¥>+¦?,¥>+¤>(¥<'¨;'ª7$²7'¼8+Å8.Ì8.Ö92Þ<7ä?;î85î85î84ì94ë:4è;4å=4â>4âA7ÝC9ÚC<ÕB;ÐA=Ê?<Ç=;Ã<9®>3©:/¢8+œ6(˜7'”8)‘:)Œ;(‹=)ˆ=*…<)ƒ:'‚9&€7&6%~5$v4$x5%…B2˜UEœXK“QCPD•ZL’ZM[NŽ]OŽ\Q’\R•\U˜[V™\W`hCX_=JS4>G,6?*2=-4>35?74=88>:=B<CF?EG<CC7@>/;9*78(=>0:</7:/8>26?.=J0N_;`xFk‡Lu”Pu™Os™NršQršSp™SqœMrNqœMp›LošKrNu¡Ry¥X«`~©az¥]qœUf‘L_‰G[ˆE\‰Hb‰RY€ISzCh_Ph_Ph_Ph_Ph_Ph_Ph_Ph_Pg^Oh_Ph_Ph_Ph_Ph_Pi`Qi`QmcWlbVjaRi`Qh_Pg^Og^Mh_NiaNiaLiaLiaJh`IhaGhaGhaGh`Kg_Je_Ib[H\WCUR?PM:ML:EF4DG6DH7BI9BI9BJ;BJ;BJ;JJ@QQERPAUN<bM:qF6“I>ÄYSÛQOãCEå8:ß55×:3Ê>/¸>)¬<$Ï8'Ï8'Ð9(Ò;*Ò;*Ò;*Ò;*Ò;*Ñ:)Ñ:)Ñ:)Ñ:)Ñ:)Ñ:)Ñ:)Ñ:)½=2¶:.­<,¥>+˜9#Œ59ž@' :$¯<)¾?0È;1Ì8.Ñ7/Ù<5àA;ð;Bï>FëBGãCEÖ@?Ê;7À50»1.·0,¼51¾:5»<6³:2©9.£9,¡9,Ÿ>+Ÿ>+ ?,¡@-¡@-¡A+£>*¤=*©<(­:(²7(¹5)Á4*Ë80Ö?8ÝD>é:5é:5è;4è;4ç<4ä=4á?4Þ@5ÝC9ØD:ÒC;ÊA9Ä?:¼;6¸85´73ž9-™7*•5'’6'‘:)<*‰:)„9&†=*„=+=*€<)~:'|7'{6&{6&y1#€8*ŒG8–RE’PB‹K?ŽSE™_SXKZN’\R–]T—\V˜[V˜YT—XSV^7EM(6@8A&>G2<D53=2-7/1737>7@E>GJ?GI;BC1?>);;#78(=>09;.69.8>26?.<I/N_;`xFj†Ku”Pt˜Ns™NršQršSp™SqœJqœLpLoœKo›LržOw£V{§\‚­e€«dx£^j•P]‡EYƒC^ˆHeOcŠUZLSzEi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qj_Yj_Yj`Wj`Wj`Vj`Vj`TjaRjaPjaPjbOjbOjbOjbMjbMjbMg_Jg_Jf^Ie_Ib]I\WCSP=ML:HI7EH7AE6>E5>F7?G8=H8<G7HJ=HL>AE4HK6YS;_F0€K9Àj]Ýf`åSSçDEè@@ã?=Ö=5É=0Â>/É3$Ë5&Ì6'Í7(Í7(Î8)Ñ;,Ó=.Ò<-Ò<-Ò<-Ò<-Ñ;,Ñ;,Ñ;,Ñ;,¸3,·7.±;-¦;)˜8"‘7’8š:"«B-±<+¹7)Á4*Í6/×<7âC?êHCëBGéDHÝCCÉ:6»61´80®8.§5+ª:/¨9.¤8. 8-›9,–:+’<+>-˜=*˜=*™>+š?,›@-œA.žB-¡@-¡<*¥:(«7(°6)¶6+¾8-Å;1Ê=4ß:4á<6â?6ã@7âA7ßA6Ú@4×@5ÚG=ÒE;ÇA6»;2±6.ª3-¤1,¢1+”;-’:,:+:*‰:)ˆ;)…<+„=+~:'|9(|9({:({:(z9'x6&w4$z, A4˜NC“MAŽL>RE‘VHŽRG˜\R˜\R‘UMTL™ZU—XS–WR `^R[0IQ(AK&BK,>H/7@-2=-4>34;3HPEX^RW[LLO<DF.AA'==!:;+>?1;=0:=29?34=,;H.Pa=bzHlˆMu”Ps—Mq—Lp˜OršSqšTpJqžKrŸLrŸNsŸPv¢U{§\ªb‚­fx£^i”O_‰G]‡G`ŠJfŽOhRd‰U[€LTyEi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qj^^j_]j_]j_[j_Yj`Wj`Vj`Vj`TjaRjaRjaRjaRjaRjaRjaRj_Kh`Kg_Jg_Jd]J^YEUR?ON<IJ8EH7AE6>E5?E7>F7>F7=E6BF8>E5=F1DN5HK0PB'yS<¹ubÉdXà_YíUTêFGä>>â@=Û>9Ñ82Ì:+Î<-Ï=.Ð<.Ï;-Î:,Í9+Í9+Î:,Î:,Î:,Ð:,Ð:,Ð:,Ð:,Ð:,È?9ÆA:½A7®=/6#•2•2™3¦5#²7(Á;0ÑA8ÞE?æIDéJFìJGÞBCÛEDÎC@¼;5®9/¨>1¢A1œ?.œ@1™@0–>0’?/Œ?-ˆ?.„A.ƒB.‘;*‘;*’<+“=,”?+”?+–?,™>+Ÿ@.¡=-¤:,§9*¬8+±8-¶:0¹:1Ð90Ò;2Õ>5ÕA7×C7ÖD7ÔD9ÑE8ÊB6ÃA4¹=1°:0¨8-¢5.5,œ5.Ž=,Œ=,Š;,ˆ;+†:*„;*<,€=,~;*|;)y:)y:)x9(w8'u6't5&„1)‘C9˜NC‘K?ŒJ>PD’TIRG“SJšWQ˜UO™UR\X”WTŽSO—\XT]0Zc8_j@[eBIT66C)4@*<G6MXGYbQ_fTW\FJN5BE*?@!<=9:*=>0:</9<1:@45>-;H.Pa=c{IlˆMu”Pt˜Nq—Lq™PršSqšTq¡Kp LpJqžMt Qx¤W|§_ªc{¦aošUcŒJ]…Fa‰JeNeNc‹Ld‰U[€LTyEi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`Qj^`j^`j^^j_]j_[j_Yj`Wj`Vj`Vj`Tj`Tj`Tj`Tj`Vj`Vj`VlaMk`LiaLiaNf_La\I[VCTQ@ML:HI9DG6AE6AE6?E7>D6=C5=F57@-?H3EM5AA%QA']E³u`³WHÙbZðebîRSéEFìFHèBDÝ79È9+É:,É:,É:,É:,Ê8+È6)È6)Ê8+Ë7+Ë7+Ë7+Ë7+Ì8,Ì8,Î7,Â3/¾5/¸5-¬3( 0"›0Ÿ1 ¥4$»A2ÇC7ÖG?ãKFçLGéJFåFBâC?ÕCCÏDAÁ@:°;1£=/žC1™F4•G3’E3E2ŒC2‰B0ƒB0B/{B.xD.Š8*‹9+‰:)Š;*‹<+<+Ž=,<*–?.–=-›;+9* 8+¥9-©:/«;/¼7.¾90Á;0Ä>3Å?3Æ@4Ä@3ÁA4¸:,²:,ª9+£7+7+™7,–8.–91‰=-ˆ<,…<+„;,‚:+€;+<+<,};+z;*z;,w9*v8)u7(t6's5&Œ91”F<—MBŽJ?ˆH<OD‘SH”QI“NGšSOšSOšVSœ]X“YUZT—f_wƒS~Š\€‹`lxPJX46D#=J.MZ@eqYeoW\fMNW<DJ.?D&=@!:=89);<.8:-9<1;A56?.<I/Pa=c{Im‰Nv•Qt˜Nr˜Mq™PršSp™Ss£Mp LnLpŸOu¤V{§\}¨`|§bošUfM\„E\„EdŒMhQeN_†GcˆUZLSxEi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`QjaRjaRjaRjaRjaRjaRjaRjaRk_ak__k__k`^k`\kaXkaWkaWkaUkaUkaUkaWkaWkaWkaXkaXncQmbPjbOjbOhaNe^L_ZGYVERO>MK<GH8DF8CE7AE6@D5>B3;I27C-EJ3IG0K<%mN9—dO§`NŸA5ÆSLçc_ð^^îRUíJMêDHç>CÉ;/Ç9-Å7+Å7+Ç9-Ê:/Ë;0Ë;0Ñ>4Ñ>4Ñ>4Ò>4Ó?5Ó?5Ó?5Ó?5Ó?=ÑB>ÍD>ÆF=ÁG<ÂI>ÆN@ÎPDÙSJÞOGäLGäIEåFCâC?àA=ß@<ÔFDÊC?º?7«<1ž>.—D2“H3‘J6‹G4ŠF3‡D3„C1B0zA.wC.uB/†8+…9+…9+†:,†:,‡;-‡;+ˆ;+‰:+‹:)Ž8)8*•9,™<-=/ž>0«9/­8.®9/°:.°:.²:,¯9+®8*¨7)¥7*ž7(›6*•7+’8-9/;0†=.…<-ƒ;,9*:+~9*}:*};-|:,z;,y;,w9,s8*q6(q7)q7)B8”G=‘K?ŠH<‡I<‹OD“UJ—TL—PLSP˜QO–RO—\X_Xh^žzn™k…’fu‚VYh=CR)?O(P`<crQetS\iKNY;CL/?E)>B'=A&;>#78(:;-79,9<1;A57@/<I/O`<ayGlˆMv•Qu™Os™NršQršSp™Sq¡MoŸKožMs¢Rz¨]|ªaz¥^u [bŒJ^†G[ƒD_‡HgŽMj‘PfL`‡Fb‡TY~KRwDi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`QjaRjaRjaRjaRjaRjaRjaRjaRk`^k`^k`\k`ZkaXkaWkaUkbSkbSkbSkbSkaUkaWkaWkaXkaXocSnbRmaQkbQkbQhaOd]M`ZJVSBRO>MK<IG8EF6DE5BC3@A19K1>H/JH1Q?+e>-”ZL¬`S›>6œ4+µ@9ØXUóigödeëRUèINìKQ×J@ÓF<Í@6Ë>4Í@6ÒD:ÕG=×G>ÚJAÚJAÝJBÝJBÞKCßJCàKDàKDëRTéSTãTPÜSMØSLØSLÛTNàUNàLHâHFäEBäB@äB@äB@ãEBãEBØJHËD@¹>7ª>2žA2–C1F3I6‰F3‡D3†C3ƒ@0@1}?0y@/x@1ƒ9.ƒ9.‚:.‚:.ƒ;/ƒ;-ƒ;-ƒ;-9*‚9*…9+‡9,‰:+;-<.=/›;/œ:/ž9- :.¡9,¢8*¢8*¢8*Ÿ8)œ8)˜8(”8)9*Œ:,ˆ:-‡;-ƒ;-‚:,9+~9*}8)}7+|8+{9+z8*y9-x:-t9+q5*o5)q7+r:-G;ŽH<‰I=„I;…K=ŒRF“WMšWO˜QMžTQ™RP•VQ’`YˆbW‚h[ŠwhivKZi>JY.AR&IZ0Wi?dvLj|TXjDL\8?M,:D)<D,>C-=@-:=*89):;-68+8;0<B67@/;H.L]9^vDi…Jt“Ot˜Ns™NršQs›TqšTmŸJmžLp¡Px§Y|ª_z¨`rXi“QYƒC\„E`ˆIeŒKgŽMgŽKfJd‹Hc…SY{IRtBi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`QkbSkbSkbSkbSkbSkbSkbSkbSla[lbYlbYlbXlcTlcRldQldQldQldQlcRlcTlbVlbXlbXlbYocSnbRmaQlcTlcTkbSg`Pd]M]WGYSCSM=MJ9KH7HE6DB3B@16J.>H-NC-b=-„D:¯VP¶MJ¡++´:9º=;ÑTPòpnýwvñehêY^ò]cáVOÚOHÒG@ÎC<ÑD=ÔG@ÖGAÖGAÙHCÚIDÚIDÝIEÞJFÞJFàKGàKGãGJáGIÝGHÙGG×HD×HDØGDÝEBàBAåABé@CêBBèBBäB@ßA>ÜA=ÚJIÌB@»<6®>3¢@3—A2B0D3‰A2ˆ@2ˆ>1…=1‚<2€<1=1}=1ƒ:3;3;1;1€<1€<1=/=/=/€</€=-€;,€;,9+9+8)Œ:/9.9/“;/—;.š=.=/ž>.™9)•9*“:*Ž;+Š;,‡;+ƒ;,€;+‚:,9+7)~6*{5){5)z6)z6+x6*x8,w9.s7,o5)o5)r:-u=0ŽL>‰K>„J<‚M=…QC‹VH’XM—WN”MIœRQšTR•[We\y_PcXFb]IBP,?M)?O(K\2_qGk~QcyKVk@M_7@R,6E&7D*=F1=D4:=27:19:*:;-68+8;0<B67@/9F,IZ6Zr@eFr‘Ms—Mr˜MršQs›TqšTlKo Os¤Ux¨\z¨_s [i“Q`ŠJX‚B^†GdŒMgŽMfJeŒIgŒGhHaƒQXzHQsAi`Qi`Qi`Qi`Qi`Qi`Qi`Qi`QkbSkbSkbSkbSkbSkbSkbSkbSlbXlbVlcTlcRldQldOldMldMldMldMldOldQlcRlcTlbVlbXocUmaSkbSlcTmdUlcTi`Qf_Ob[K^WGWQARL<OI9LF6IC3F@02K+>G*SA+{E9¦NL¸EH»5<¾19Ë@EÄ?@ÊJIÞb`îrpïopçbeáZ^ÛRJÕLDÏD=ÍB;ÏD=ÒE>ÐC<Î?9ÒC=ÓB=ÔC>×C?×C?ØD@ÙEAÚEAà?Dß@DÞDFßFHßIHàJIãIIæFHçACëADîAEîACéAAâ@>Ù>:Ö=8ÛEGË=<»73°;4¦@4˜?1>0ŽA1‰=/Š<0‰;1‰92‡81†93…:4„;4:4:4€<3€<3<3}=3}=3|<0{=0{=0{=.{<-z;,y:+z8*z8*€:0‚:.„:-ˆ:.Œ:.‘;.”<.–=-’9)‘:):*Š;*‡;+ƒ;,<+}<*€8,€8,~6*}5)|4(z4(z4*y5*u3'v6,v8-r6+n4(n5*s:/v@4‹PB†N?N=R@…VF‰XIŽUJ‘RI“NI™RP”SO‘\VŠfZl\LML7BL3@O.KZ9WgC`rJezOdzLVl=G]/AV+7I#0A!5C*=F5<D98=7796:;+;<.68+9<1=C77@/7D*FW3Um;a}BoŽJq•Kr˜MršQtœUr›UnŸNq¢Qu¦Wv¦\s¡Yj—R`J[…E^†G`ˆIbŠKeŒKfJhHf‹EeŠD`‚PWyGPr@i`Qi`Qi`Qi`Qi`Qi`Qi`Qi`QkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcRldQldOldMleKleIleIleKldMldOlcRlcTlbVlbVnbTmaSkbSkbSmdUlcTjaRh_Pd]M`YIZSCUN>QJ:MG7IC3GA13M*>G*[B.PGºVVº7?»'3ÜBNÐ:CÄ9>»;:ÂHGÓ][ßgf×[]ÇILÓJDÏF@ÌC=ÎC>ÒGBÒGBÐB>Ë=9ÒC?ÓB?ÔC@ÕDAØDBÙECÙECÚFDá>Cà?DÞBEßEGáGGàFFàBCâ=AëADí>Cì;Aê<>æ>>ãA?ßD@ßFAÙ@CÉ78¹30±:4§?4š>1=/Ž?2Š;.‹9.‹80‹61Š71Š73‰84‰:5:3:3:3~;3|<3|<2{=2{=2u9.v;-w<.w<.x=-x=-y;,y;,{;1};/~8,7*„6)‡5'‰6(‹5&7(‹8(‹:)ˆ;)…<+<,~=+{<*€8,7+~6*|4(|4({2)y3)y5*t1(u5+v8-r6+n4)n5*t;0xB6ŒTE„Q@P>‚UB„YHˆYI‰SGNG˜SN˜RPPKˆVO‚bUeZHFK4;K0IX;[jKgxVewQYnCSi;Me5I`28M"-B*;2@):E7;B;8<;7;<<=-<=/79,9<1=C77@/6C)DU1Rj8_{@mŒHp”Jq—LršQtœUr›Uq¢Qt¥Vu¥Ys£Ym›Sd‘N\‰HZ„DdŒNa‰J`‡HcŠIfJiŽIeŠDa‡>`‚PWyGPr@i`Qi`Qi`QjaRjaRkbSkbSkbSjaRjaRjaRjaRjaRjaRjaRjaRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcTo\Nq_QtdUrdWnbTj`Th`ShbTgaSebQa^K[VBVQ;TN6NH.GA'RD)N=#cI2iV²zm·ng³[W¸PQ¶BEÁ@EÉ@GÑBFÖDGÚEIÜGIÝGIÔBEÔBE×BDÙEEØDBÒC;ÎD:ÌH;ÄF7ÃH9ÆH:ÊG?ÐEB×BDÜ?FÞ=EâBDâBDâBDâDEâDEãEDãEDãEDâDAâC@áB?â@>ã?=ã?=ã?=å@>ÎE?Ä?8¶:2©80Ÿ:0•>4Œ@3ƒ?2A4|@5}?4<3ƒ:3‡83Š73Œ72…<-…<-…<-„;,ƒ;-‚:,‚:,‚:,9-9-9-~:/~:/~:/~:/~:/~80~80}90}90}90}90|90|90|90|90z:0y9/y9/x8.w9.w9.w8/w8/v7.t8.s7-r6,q5+p6+l2'q7,m4)l3(o6+m4)q8-H=ULƒTL†QK‹PJNJ•NL˜NM—PL”SM‹UK†\NdOkaFTW8JX5N_;gT`zMWpFTkARg@O`<IX7DQ39C*5=&49%7:)=>0CA4B@4@<12:/2:/4:.5;-9=.<?.>A,>D*T^<bqHq…TtVt”UršSsSržQv^¦g¦gq˜YcŠK_†G_†G^…F`‡Hb‰Jd‹LfNeŒMcŠK`‡H^…F_OTvDKm;i`Qi`Qi`QjaRjaRkbSkbSkbSjaRjaRjaRjaRjaRjaRjaRjaRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcTsaSr`RrbUqcVrfZpfZmeZjdXgdUkhYmjYlgThcOd^H[U=RL4PJ0F?%P@)kP;WG„NB‰D=–C?´VT»SR¾PQÂNOÄLMÆLKÅKHÆJHÔRTËFGÄ<<Ç;:ÑA@ÔE?ÏB9Ç>4ÉE9ÈF9ÊG=ÍG>ÒGDØCEÜAEß?GáCDáCDáCDâDEâDEáFDáFDáFDàEAáC@àB?ßA>àA=àA=â@=ãA>ÑFAÉB<¼=6¬:0 90“;/‰=0=0A4|@5}?4<3ƒ:3†91Š71Œ72…<-…<-„;,„;,ƒ;-‚:,‚:,‚:,9-9-9-~:/~:/~:/~:/~:/}90}90}90}90}90}90|90|90|90z:0z:0y9/y9/x:/w9.w9.w8/w8/t8.s7-r6,r6,p6+p6+k1&q7,m4)l3(o6+l3(p7,~H<‚SK„TJˆQJ‹PJ‘PL•OM–PN–RO‹OG…SH€[K{ePsiPhkLdrOgxT\uKXoEPf?Ka:K_:K\:GV7CP4<F-8@)6;'7:)<=/?@2@>2><03;03;05;/6<09=/<?.>A,>D*Q[9^mDmPpŒRr’Sq™RsSsŸRxža|¢exžak‘T`†I]ƒF]ƒF\‚E`†Ia‡Jc‰Le‹NdŠMbˆK`†I^„G]MRtBIk9i`Qi`Qi`QjaRjaRkbSkbSkbSjaRjaRjaRjaRjaRjaRjaRjaRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcTtbTo_Pm]Pm_ToeYog\keYhbVfbVpl`{xi~{jzgzuapiVf`JPV<DF.A?(MB.S@/U8(^6*m=3p7.x71:3‰@9•HBžOH¦WPª\RÁ[W»RO¸FE½A?ÉCBÑFCÓD@Ð?:ÐA9ÐC:ÐE>ÔG@ÖGCÚFFÛEFÝDGáCDßCDßCDßCDàDEßECßECßECÞDBÞE@ÝD?ÜC>ÜC=ÜC=ÝB=ÝB=ÕF@ÎE=ÃC:³>5¢:/’8-ˆ9,<-€A2~@3}?2=1ƒ:1†91ˆ81‹80…<-„;,„;,„;,‚:,‚:,‚:,€:.9-9-9-~:/~:/~:/~:/~:/}90}90}90}90|90{8/{8/{8/{;1{;1z:0y;0x:/x:/x:/x:/t8.t8.s7-s7-r6,q5+o5*o5*k1&o6+m4)k2'n5*i3'm7+}G;†QI‡PIŠQJŽQL‘RM“RN•TP’UPVO‡[P^OtbNoiQnrWjwYfwWPf@K_:EY6BV3EV6GV7FU8ER8?I1<D-9>*7;*:<.<>0<=/:;-5<45<46<26<09=/<>0=@-=C)MV7Zi@h|KlˆNpOq™RuŸSt Sz cw`n”Wc‰L\‚E\‚E\‚EZ€C_…Ha‡JbˆKdŠMc‰La‡J_…H]ƒF[}KPr@Gi7i`Qi`Qi`QjaRjaRkbSkbSkbSjaRjaRjaRjaRjaRjaRjaRjaRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcTtdWqaTm_Rk_SkaWlcZle[jf]jf]wuiˆ„y‘•’Œ|‰‚r€ygZfNLV>AI2CF1ED0D?,I=-TD5M:+O8*R6*T7)X8+];/a?3eA5‹KAœSL­UQ¶NK½EDÇABÓCCÛEF×?>Ø@=×B>ØD@ÙEAÚFDÛEDÛEDßCDßCDÞDDÞDDÞDDÝEDÝEBÜGCÛFBÚE?ØE>ØE>×D=×D=ØE=ØE=ÖC<ÔE?ÊE>»@8§;/–8,‹9+…;.‚@2@1~?0=/;/„:/‡9/‰90„;,„;,ƒ;-‚:,‚:,‚:,9+9-9-9-~:/~:/~:/~:/~:/~:/}90|90|90{8/{8/{8/y9/x8.{;1y;0y;0y;0x:/x:/v:/v:/s7-s7-s7-r6,p6+o5*o5*n4)j1&o6+l3(h2&k5)h2&l6*|F:ŠOGŒPHQIRMSN’UPWPŽYQ‰]R…aUy_PiZGd_IciOZgKN]@EU8AQ4=M0<K.?M3CQ7FR:GS;BK6>G2:A/7>,9=,9=.8<-7;,6=66=66;46<29<1;=/<?,<A*JS4Ve>dxGj†LpOs›Tw¡Uw£T{¡dr˜[e‹N\‚EZ€C\‚E\‚EZ€C_…H`†Ia‡JbˆKa‡J`†I^„G]ƒFY{INp>Ef7i`Qi`Qi`QjaRjaRkbSkbSkbSjaRjaRjaRjaRjaRjaRjaRjaRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcTseXugZsg[mcYjaXle]snhzwp~w† –©¥œ«§œª£™£‘œ”‰v~i`hSLSADK9AJ7>G4>G4BI7GN<FJ9CF5?@0=;,<:+<9*<9*U5(lD8‹PHŸPL°HIÂEIÏDIÖAEÙ>BÛ?@ÛAAÛC@ÚEAÚEAÚEAÚEAÞDFÞDFÞDFÞDDÝEDÝEDÛEDÙEAÚFB×FAÕF>ÔE=ÓF=ÓF=ÓF=ÔG>×@9ÕB;ÏD=ÁB9®>3œ:-‘;.‰=/„?0?/~?0=/<-„:-†:-ˆ:.ƒ;-ƒ;-‚:,‚:,‚:,9+9-9-9-~:/~:/~:/~:/}:1}:1}:1|90|90|90{8/y9/x8.x8.v8-y;0y;0x:/v:/v:/u9.u9.u9.s7/r6.q6.p5-o4,n3+m4+m4+j1(o6-j4*h2(j4*g1'k5+zF;MGNH‘PJ’SLUOŽWPŠZP…ZQ{YMv\OkZJ]UBYXDY^HOYA>L3;G18D.5A+5A+8D.=I3AM7EN;BK8?H5<E29B/7@/7>.5<,4;+5;75<56;56;48;2:</;>-;@)GP1Ra:buGi…Kq‘PuVy£Wx¤Uzcn‘W`ƒIZ}C[~D^G^G]€F`ƒIa„Jb…Kb…Ka„J`ƒI_‚H^GW{KLp@Bf6haQhaQhaQibRibRjcSjcSjcSibRibRibRibRibRibRibRibRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcTmaUndXpf\lcZkd\rmg„|‘‹¥¤ ³²®ÄÁ¼ÉÆÁÉľÅÀºÀ¹±¹²ª¤œˆ‚tfcTPQAEI8=F38E18G45F35F44E36D58D6;E:?G<@H=<6(L</b@7EA£OOÁW[ÎOVÍBI×DJÚDFÝDFÝEBÝEBÞE@ÝD?ÞC?ÞDFÞDFÞDFÞDFÜDCÜDCÚDCÙECÙEA×FAÕF@ÓF=ÐF<ÏF<ÐG=ÐG=Ø=8×@9ÑB:ÆC9¶A7¤>0–=/Œ=.†>/‚?/€>.=-<-ƒ;,„;,‡;-‚:,‚:,‚:,‚:,9+9-9-~8,~:/~:/~:/~:/}:1}:1}:1}:1z:1z:1y90y90x8/v7.v7.v7.u9/u9/u9/s9.s9.s9.r8-r8-q6.q6.p5-o4,n3+m4+l3*l3*h2(l6,i3)f2'h4)e1&i5*xD9’KE’MF“PJTLVO‡XNYO|\Os\Nk[L_XFUTBPS@JQ?@I64@,3<+2;*09(09(2;*5>-9B1<E4?H7=H7<G6:E48C25A-3?+1=)3973954954937:19;0;>-;@*CL/O^7_rDi„Mr’SwŸXy£Wv¢Us–\f‰OZ}CX{A\E]€F]€F^G`ƒI`ƒI`ƒI`ƒI`ƒI_‚H^G]€FVzLJn@Ae7haQhaQhaQibRibRjcSjcSjcSibRibRibRibRibRibRibRibRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcTiaVjbWkdZmf^upjˆ…€Ÿžš°°®ÂÂÀÓÒÐâáßéåäçãàãÞÚÞÖÓ×ÏÌÒº°º¤™˜†zym__YIKL:>F19E1<K8;J79G68D68@57<57947836A3>>2J91`94ˆHH²\_È_dÍVZÐOSÕMOÚLKÜJJàHEáFBãDAåA?ÞDFÞDFÞDFÝCEÝCEÜBBÛCBÛCBÚDCØD@ÔE?ÓF?ÐF<ÏF<ÐG=ÎH=Ý>8Ú?:ÒB9ÉC:¼C8«A4™<-Œ9)‡>-ƒ>.>-€=,€=,<,ƒ;,…<-‚:,‚:,‚:,9+9-9-~8,}9.~:/~:/~:/}:1}:1}:1}:1}:1y:1y:1x90x90w8/t8.s7-s7-s9.s9.r8-r8-q8-p7,p7,p7,p5-o6-n5,n5,m4+l3*i3)i3)g1'k7,h4)e1&h4)d0%f4)uC8•JE“LH“PJTL‰WNYOx[Mp]Nj^N]WGPQAKN=CJ:9B12:+08)36-17-06,/5+/5)17+2:-4<-9D4;F6=H7<I7:G56C/3@,1>*0640641622716929;0:<.:?)?H+KY5]pChƒLs“TwŸYw¡WržQiŒT^IUx@WzB[~F[~F[~F]€H_‚J_‚J_‚J_‚J^I^I]€H]€HUvKJk@@a6haQhaQhaQibRibRjcSjcSjcSibRibRibRibRibRibRibRibRkbSkbSkbSkbSkbSkbSkbSkbSlcTlcTlcTlcTlcTlcTlcTlcToh^ng_lh_tqj…„¡ ž¼¼ºÏÏÏÎÏÑààâòòòúøùû÷öøòòñìéêåâïÍÃàÀµÅ©¥€sbaZGML7CH2AI4AH6BF7BD7C@9D<9C98C772?5;@9@93H/+c76QR³giÇmmÂ[\ÉYWÑUS×QNÝKKåGFèBBê@AÞCGÞDFÞDFÞBEÞBEÝADÜBBÜBBÜDCÙCB×C?ÔC>ÒE>ÐE>ÏF<ÐG=â@;Ý@9Õ@9ÌC9ÀD:°B5›;-‹5&Š=-…=.>-€=,€=,<,ƒ<*„=+‚:,‚:,€:.9-9-~8,}9.}9.~:/~:/}:1}:1}:1}:1}:1{;2w;1w;1v:0u9/t8.s9.r8-q7,r8-q8-p7,p7,n8,m7+m7+m7+o6-o6-n5,m4+j4*j4*i3)h4)f2'k7,h4)c1&e3(b0%e3(uC8”JG“NIQJ‹TM„XOzZMq[Mh\LXUDHK:=D4=E69A208+/7*5=056157257247005.06,08-19,6A3:E5=J9>K9;J77F12A,0?*.42.420511605818:/:<.:?+<E*IW4[nAg‚Mr‘UvZuŸWo›Pb…MX{CSv>WzB[~FY|DY|D\G_‚J_‚J^I^I^I]€H]€H]€HSsJHh?>^5icSicSicSicSicSicSicSicSicSicSicSicSicSicSicSicSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUmdUmdUmdUmdUmdUmdUfc\gd]vsn“’Ž¯¯­ÄÆÅÚÛÝìíïóôöö÷ùüüþÿÿÿÿþÿÿûúüööùôñÿÞÏöÖÇãÈ·É´Ÿ­ž‡ŠƒicbFGG-EG/DF0GD3IC5H;3F42G34M797@;;@:@;8G85cGF‘kjŔ譩ҋ‡ÇtnÀ]XÆSNÖNNâIKëEIðCGÜFHáHKÜCFÕ:>Ø>@âFIàDGÖ:;Ú@@Ú@@ÙA@ÖB>ÔC>ÑB<ÏB;ÏB;ãA<Ý@9Ô?8ËA7¾B8°@4;.8*‹>.†>/‚?.>-€=,<+=*=*9-9-9-~8,~8,|8-|8-|8-}9.|90|90|90z:1z:1z:1z:1x=5w<4v;3u:2t91r7/p7.p7.o6-m7-m7-m7-m7-l8-l8-l8-i2+m6/p92o81k4-g2*g2*h3+e0(i7.d2)^,#`0&_/%b2(p@6’LJOKŠQJ‚QJ}YMv_QfYIRO>CF5=F58C35@02=/3;04:04:077577566446135016/05..6+.9+2=/6C29H5:I68G42D./A+,20,2.-2..3-36/780:</:?+6>&DR1YkCh‚Ru”[wž_r›Wj•N\}HXyDTu@Tu@WxCZ{F[|GZ{F^JbƒNbƒN^J\}H_€K`L^JTrNFd@:X4icSicSicSicSicSicSicSicSicSicSicSicSicSicSicSicSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUmdUmdUmdUmdUmdUmdUed_onj…†¤¤¢ÁÃÂÖÚÛêîï÷ûþ÷ûþøüÿüýÿþþþÿþÿÿýüÿüùÿûøÿïÚüêÒîÞÅØͱÀ»¤£„‚ƒcgkJMP1II/EC,HA/J>2L93M85Q99;;9BA?MHE\RQyjg¢‹Ì³®åÇ¿ÿÙÏ괪̃|Àc\ÌVTÛPSãFMâ=DÕEEÕEEÙGHÞIKÛEGÖ<>Ö<>Ü@CÚ>?Ù??Ú@@ÙA@ÖB>ÓB=ÒA<ÐA;ß@:Û@;Ô?8ÌA:¿C9±A6 ;/‘9+Œ=.‡>/ƒ>.>-€=,<+€=,<,9-9-9-~8,}9.|8-|8-|8-|90|90|90z:1z:1{;2{;2{;2v=4u<3t;2s:1r90p7.m7-m7-m7-l8-l8-l8-l8-j8-j8-j8-l5.n70n91n91l7/i4,g2*e3*c1(e3*_/%^.$b2(^.$`0&n?5„IEˆQLˆWRWOrVKdRDQJ:>?/:A16A14A02>02<14<15;17:388677577557446116005./7,.8-1<.4A07E49H58G44E22D.062.40.3--2,14-45-8:-9=,7?'DQ3YkEh‚Sv”`wbp˜YfNZzHWwETtBTtBVvDYyGYyGYyG[{I_M_M\|J[{I^~L^~L\|JTmOF_A9R4icSicSicSicSicSicSicSicSicSicSicSicSicSicSicSicSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUmdUmdUmdUneVneVneVddby{x—™˜²¶µÍÑÒäéìôùüúÿÿûÿÿûÿÿûÿÿýÿþþþüÿÿûÿÿúÿÿúÿüßúùÛïðÐáåÄÒØ´¼Äž©‡’j`hCRW7DG,EC.KD4MC9N?8L=8C:;SJKi`a€xv›“¼µ¯×ÐÈçÝÓúêÝÿôéÿåÛ画Äec¸ACËBIáNVÚVRÒLIËDAÎBAÔFE×EFÙCDÛBD×=?Ø>>Ù??Ø@?×A@ÕA=ÓB=ÒA<Ü?:Ù@:ÔA:ÍD<ÀD<²B7¡<2“9.Œ=0‡=0ƒ>/>.€=-<+€=,€=,9-9-9-}9.}9.|8-|8-{8/}:1}:1{;2{;2{;2{;2{;2{;2t;2s:1p:0o9/n8.m7-k7,k7,l8-l8-j8-j8-j8-j8-i9-i9-n91m80m80m80m80i7.f4+c1(c3)a1']-#_0&c4*\-#_0&sD:OK‚UPXQqSK^J?OC7?<-37(2:+/<+0<.2=/4<15;17:37:388688668557257227016/08-.8-0;-2?.6C27E48G48G48G46=53:2/4-,1*.1(13(57*6:)6>'DQ5[lHk„Zy–fwœfl”X^‡KWwEUuCRr@Rr@TtBVvDWwEWwEXxF[{I]}K[{I[{I]}K\|JXxFPfOAW@3I2icSicSicSicSicSicSicSicSicSicSicSicSicSicSicSicSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUmdUneVneVneVneVofWgklƒ‡ˆ£§¨¹¾ÁÐÕØåíðóûþõýÿùÿÿûÿÿüÿÿüþûýþùþýøÿþ÷ÿÿöóÿâñÿÞëùÖäòÎÛêÃÌÛ²³Â™ ¬„}‰cdnKLS4EI0HJ5KI:GE9D@7QEEk__‹€¤š™µ°­ÊÇÂÜÜÔççÝ÷óèÿýñÿøíÿÝÕú·±èŽŽÌbd±>CÃPIÉTMÉOJÃF@ÊFBÔMJØJIÑ??Ò>>Ô>?Õ?>Ö@?ÕA?ÓB?ÓB?ÒC?×>8×?:ÒC=ÌE?ÀE>±B9¢=5•;2Œ<1‡=0ƒ=1=0=-~<,€=-€=-~:/~:/~:/}9.}9.|8-{8/{8/~;2|<3|<3{;2{;2z;4z;4z;4p:0o9/o9/m9.l8-k7,j6+h6+i7,i7,h8,h8,h8,h8,h8,h8,o:4j81h6/i70j81j81e4-a0)e4-b1*].&a2*b3+Y*"_3*zNE~]XvWRiNGWC:J<3@:.:;-8<.08)/:,1<.2=/5=25;169078079468368349338138119.19..9+/:,1<.2?.5B18E4:I6;J7;C87?428.-3)-0%/1&24'48)4<'ER8_pPr‹d}šnwœifXT}EUrBTqASp@Sp@TqAUrBVsCVsCWtD[xH]zJ\yI^{K_|L\yIVsCK\J<M;.?-gdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUmdUneVneVofWofWpgXmru‡Œ¤©­·¿ÂÍÕØãíïòüþôþÿøÿÿøÿþúÿüûÿúûþõúüñùùíù÷ëòÿçñÿäîÿßëúÙçõÒÝéÅÈÒ­´¾™œ¤|ƒbX_@GL5DL7DK;AG9>D8f\Z†|z«¡ŸÁ·µËÃÁÕÐÍãâÞîïé÷øðùöíüòèÿóéÿóíÿäß즤´if«K=³QDÁYNÇ[QÆQH¿D=ÂA<ËD@Ë@=Ï?>Ð@?ÑB>ÒC?ÒC?ÑC?ÑC?Ö>9Ô@<ÒD@ÉE@½D<¯@9 >5•<4Œ<3‡=2ƒ=1=0=/~<.=/€</~:/~:/~:/}9.}9.{8/{8/{8/~;2|<3|<3{;2z;4y:3y:3y:3m80m80l7/l7/k6.h6-h6-h6-h8.h8.h8.h8.g8.g8.g8.g8.k92h6/f4-g5.i70h70e4-b1*b3+b3+_0(_0(]1(V*!b6-SJn[U`OHN?8A7.=6,;9-9;.7=12:-3;.4</6<06<07:167/56.49249238139/39/2:/19.19,.9+.9+/:,0;+2?.6C29F5;H7=E6:B35;-06(/3%/1$13&15&29'GS;dtWwm~šrq•g\‚QIq?Qn>Qn>Qn>Qn>Qn>Qn>Sp@Sp@WtD[xH]zJ]zJ_|L_|LZwGQn>ESF6D7(6)gdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUneVneVofWpgXpgXpgXinrz‚…“š «´¹ÄÍÒÜåêì÷ùôþÿôþýöÿüúÿúûÿ÷ûþóøúìõöæòóãòþêôýèôüåóøáòöÛëëÏØ×¹ÅÄ¥±°’ŽregOMP;EL:EM>EODGSG~zqŸ›’ƽ¸ÙÎÌáÓÒçÛÛôêéü÷ôðïëûüöÿÿöÿþôÿúñÿôêÿçÞÿÚÒß‘}·fS¢K:²UF½WKµF;·@8ÈKEÇC>ÊC?ÌB?ÎC@ÎC>ÍD>ÍD>ÌC=Ô@<ÒC=ÎE?ÅD?¸A;ª=8ž;5•<4Œ<3‡=4ƒ=3=2=1~<0=1=/~:/~:/~:/}9.|90{8/{8/{8/|<3{;2{;2y:3y:3x92w81w81m80l7/j8/j8/i7.i7.g7-g7-g7-g7-f7-f7-f7-f7-f7-d8-i70h6/g5.f5.g6/h70g6/e6.a2*e6.^2)\0'`4+a5,i=4|PGQJBE>6:6-85,99/8:/47,36+4:.5;/5;/69.69.68-57,46+19,19,19,19,19,19,19,19,08+.9+.9+/:*0;+3>.6A17B2<E4:C28?/5<,37)24'13%04%07%HT>gw]umv‘nf‰_RwKAh;Mj:Nk;Pm=Pm=Nk;Nk;Ol<Qn>VsCZwG]zJ^{K_|L_|LVsCLi9=H@/:2#.&gdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUneVneVofWpgXqhYqhYcjpmtz„’£¬±¾ÉÍÓÞâåðòðüüòüûõþùøÿ÷úÿôüÿòúýìøùçöøãööìù÷ëúöêýöæÿôâøëØçØÁÖƯÀ±šŸ“}vn[ZWFOQCQWKYcZbme–˜‹²²¦ÕÎÆêÜÙõããüéëÿñôÿ÷ùÿýýýþùøûôõûñúýòÿÿóÿÿóÿÿñÿãÊ¹q[¨WD¬SCµQB¹MA¿JAÂG@ÆE?ÉE@ÊE@ÊE>ÉD=ÈC<ÈC<ÒC?ÒD@ÌEAÂC=³=9¦;5œ;5•<6Œ<5‡<6ƒ=5=4<3~<0=1€<1~:/~:/~:/}9.|90{8/{8/y90{;2{;2z:1x92w81v70v70u6/k90j8/j8/j8/j8/h8.h8.h8.g7-f7-f7-f7-d8-d8-d8-d8-h6/h70i81i81h70i81j;3l=5g80k<4b6-a5,oC:xLCtI@uJA:=647036/7:18;247.14+25,58-58-57,46+46+46+46+46)/7(08)08)08)08)08)08+08+19,08+08+/7*08+19,3;.4</9B/:C0;B0:A19=.68*24&/3$29'IU?eu[m„ghƒbWyTInE>e9Jg9Li;Nk=Nk=Li;Li;Mj<Ol>UrDYvH[xJ]zL^{M\yKQn@Eb47@;+4/!*%gdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSkbSkbSkbSlcTlcTmdUmdUmdUmdUmdUneVofWpgXpgXqhYriZhowmt|‚‹’¥®µÂÍÑÔßãäïñòþþóýüôÿùöÿ÷úÿôüÿñýÿíýÿêýÿêÿöñÿøóÿ÷ïÿ÷íÿöëÿïáöÜÍäʹƯ§”ƒ€sce]P[YM_bYovo|…€¦­¾À³ÚÖÍñãàÿìíÿñôÿñ÷ÿñ÷ÿ÷ûûúøøÿøøÿúôÿõîÿïòÿï÷ÿóÿñÖÿðÖÿÈ°Å}g¢O=®Q@¸RD³C8ÀIAÄH@ÇF@ÇF@ÈE=ÇD<ÆC;ÆC;ÓD@ÐE@ÊE@¾A=±;7£74š93•<6Œ<5‡<6ƒ=5=4<3~;2<3=1~:/~:/~:/}9.|90{8/{8/y90z:1z:1y90w81v70u6/u6/t5.k90k90j8/j8/j8/i9/i9/h8.f7-f7-f7-d8-d8-d8-d8-d8-f5.i81l;4k:3j92j92m>6qB:n?7pD;g;2g;2SJŒaXTKpE<6=52913:27<5492/5+25,9<345-35*24)13(13(35(46)57*,7',7'-8(-8(-8(-8(-8(/7(19*08)08+/7*/7*/7*08+08+7@+9B-=D2=D2=A29;-35'/3$3:*JVBcr[f}a\wVLnICgA=c:He7Kh:Nk=Nk=Kh:Jg9Li;Nk=TqCWtFZwI[xJ]zLZwINk=A^05;9*0.!'%heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheTheVhdYkd\kd\md]meZmfVg`MjeOnlWnl]ff^eeeqqy‡‘“–ž¡«³¶ÃÈËÙÝàìíï÷÷÷ûùúþýûÿþúÿÿûýþøûüöùüóúýôùÿõùúõùúôøúïúûëûýèöùÞäçÈÒÖµ¶¼š”›ymvW\fK`lTq~lƒ‘€žŽ··µËËÉââàïïíôôòøøöúúøùù÷þþüþþüþþüþþüþþüþþüþþüþþüæÿÿðÿÿûÿÿýïîЪ§ a\™D=¸MEÄKBÈC:ÊA7ÎD:ÑH>ÏJAÉI>ÆG>ÁJ2¿K4¹L5¯K4 H2”F2ŒE3‡E5‚D5C6€@4‚>3…;2‡9/Š7/6-~:1~:1}90|8/{7.z7.y6-x5,w7-w7-x8.x8.v8-u7,s5*q3(h91h91h91g80h70g6/g6/g6/f5.h6/i70j81i70h6/f4-g2,k1-k4/n70m80k9.j:.i>.iB1dC2gJ8aJ8raOyn\ƒ|j…‚qOL;4:04:04:039/39/39/28.28.17-17-17-06,06,/5+/5+/5+/4./4./4./4./4./4./4./4.05//4./4..3-.3-/4./4.05/0;32=55A77C98D86B64@22?.3@.DQ=WeN\jSSaHHV=DR8FT:Ic>Ke@Ke@Ke>Je<Je<Lg>OjAUpGYtK\vO]wR]wTWpPHaC8Q3).2&+/$)-heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheTheVhdYkd\kd\md]meZmfVjcPlgQmkVlj[gg_lll~~†’ž§±³¹ÁÄÏ×Úâçêðô÷ûüþÿÿÿÿþÿþýûÿþúÿÿûþÿùûüôøûòøûò÷ýóøùóøùñøúíøùéùûåòõÚáâÃÌЯ´¸—‘–vkrSYaI_kUtoŒ˜Š›©œÀÀ¾ÓÓÑççåóóñ÷÷õûûùüüúûûùþþüþþüþþüþþüþþüþþüþþüþþüîÿÿôÿÿüÿÿÿüúÿíêñ¿¸Ã}u¢J@³K@»J<ÅK>ÈJ>ÄD9½=2¿?6ÃD;ÂH3ÃJ7½M9³J7¦G5™C4D6‹F7ƒC7C8A7>5‚<4„:1†91‡81}:2}:2|91z:1y90x8/w7.v7.u6-v7.t8.t8.t8.r6,p4*o3)i81i81i81h70h70h70g6/g6/e3,e3,g5.h6/j81j81j81k92k60l71m80l:1k;/l>1j@0iD2hG6kP=gR?ufSvd‹†s†ƒrML:4:039/39/39/28.28.28.17-17-17-17-06,06,/5+/5+/5+/4./4./4./4./4./4./4./4.05//4..3-.3-.3-.3-/4.05/-80/:21=34@66B66B66B45B16C1CP<P]IR`IIW>AO6BP7FT:Ic@Jd?Ke@Ke>Ic<Hc:Id;Je<SnEXrK\vQ]wT[tTTmOC\>3L/).2',0$)-heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheTheVhdYkd\kd\md]meZmfVmhTmhRmkVjk[jkcvxw‘‘™¨ª¶¾ÈÊÓÛÞêòõ÷üÿüÿÿþÿÿÿÿÿÿþÿþýûÿþúÿÿúýþøúûóõøïóöëñ÷ëô÷îöøíöøêö÷åõ÷áîîÔÛÛ¿ÉÊ«°±’“–yuy^kpZt{iˆ§œ¬¶­ÎÎÌÞÞÜïïíøøöûûùþþüþþüýýûþþüþþüþþüþþüþþüþþüþþüþþü÷ÿÿùÿÿþÿÿÿüúÿúôÿöíÿÑÄÙž•L=§Q@¬K;ª>1¸G9ÑXMÐTJ¾?6ÆD6ÇH9ÄJ=¹I=ªB7?5•A7’E=‡A9„A9@:>8~>5<4<4€;4x<2x<2w;1w;1v:0u9/t:/t:/s9.r9.r9.r9.q8-n8,l6*k5)j81j81j81j81i70i70i70h6/g5.g5.g5.g6/h70i81k:3k:3l;4k:3i:0j;1k?2lB4iD2fE2fI7lVAjYEviV†l‘Ž{€mEF439/28.28.28.17-17-17-06,17-17-17-06,06,/5+/5+/5+/4./4./4./4./4./4./4./4./4./4..3--2,-2,.3-/4./4.*5-+6.-9//;12>24@46B47D38E3?L:ER>CQ:;I28F->L3ES:H`>Jb@LdBKc?Ia=G`9F_8G`9RkDXpL]uS^vVZqTPgK=T8,C)).2',0%*.heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheTheVjcYkd\kd\md]meZmfVniUljSlkVlm]pqi€‚ž¡¨º¼ÈÃÍÏÜäçóûþûÿÿúþÿüýÿýýýüûùÿþüÿÿûÿþùûüôõöîîñæëîãçíáíñãðôåñôãòôßðòÜêêÐÙؼÈÇ«²±•¡¡‡‘“}‘’€œžª­¢¶»´ÀÅ¿ÜÜÚééçööôûûùýýûÿÿýÿÿýýýûþþüþþüþþüþþüþþüþþüþþüþþüüúÿÿþÿÿþÿöòïûôîÿýóÿûíÿõäêı·ƒn”Q>¡P=¸XH¸L?¸D7ÀG<Ç>4ÉD;ÈH?¿F>°?9¢;6š=8–A>?;‡@<@<}@;z?9y@9x?8v?8v=4v=4v=4u<3s=3r<2r<2q;1o;0o;0o;0l:/k9.j8-j8-i7,n72n72m61l71l71k60i70i70l:3j92h70g6/f7/f7/h91h91j?6f>4e=1f>2hC3iE5gF3cG2cJ6hV@k\GskV‡‚nŽzor_9>*28.28.17-17-17-06,06,06,17-17-17-06,06,/5+/5+/5+.3-.3-.3-.3-.3-.3-.3-.3-.3-.3--2,-2,-2,-2,.3-.3-)4,)4,*6,+7-.:01=14@25A36C2:G5<I58E12@)2@)8F/?M4DX<G\=K`ALa@K`?I_;H^:H^:SiEZoN`uV`tXZnSNbI9M4(;%',/%*-$),heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheTheVjcYkd\kd\md]meZmfVlgSkiRnmXop`svmƒ‡†£¨®¿ÃÎÍ×Ùçïòùÿÿûÿÿùýÿýþÿÿÿÿþýûÿÿûÿÿúþýø÷øðïñæçêßâæØÞäÖçëÚêïÛíðÛíïÙîîÖéçÎÚØ¿Îʱ½§¹´ ±®¶´§Á¾µÉÈÃÒÓÎÙÙ×èèæòòðúúøüüúýýûÿÿýÿÿýüüúþþüþþüþþüþþüþþüþþüþþüþþüÿûÿÿûÿÿúúûûùûÿùûÿøüÿôýÿíÿÿìõàËÈœcP–K8§L:¶O@»M>Æ=7ÈA;ÈD?ÀC?´<;©98 9:›==‘==Š>>„@?|A=xA<sB=rC=pC=s>6s>6s>6r=5p>5p>5p>5n>4n>4m=3l<2j;1j;1i:0i:0i:0p62p62p62o51m61m61k60i70l;4k:3h91e90e90e90e:1f;2dB6cA5cC4dD5fG5eH6cH3_I2^L6eV?jbKrmW„ƒn„‡r[`L3;&28.28.17-17-17-06,06,06,17-17-17-06,06,/5+/5+/5+.3-.3-.3-.3-.3-.3-.3-.3--2,-2,,1+,1+,1+,1+-2,-2,,6.+5-*4,*4++5,.8-0:/2=/2=-5@06A05A-1=)1=)5A+9E/=O5AS9FY=I\@J]?J]=K^>L_?TgG\oQcvZbtZYkSK]G6G4$5"&+.$),"'*heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheTheVjcYkd\lc\md]meZlfVlgSljSlnXorasvm…„Ÿ¤ª¸¿ÉÖßäîöùùÿÿûÿÿùýÿþÿÿÿÿÿþýûÿÿûÿÿúüüôóõêëíâãçÙßãÕÜãÓäéÒçìÕéíÖêìÔëëÓèæÏßÚÄÔθÔͺÍƶËøÐÉÁÙÒÌàÛØëååòîïòòðùù÷ýýûýýûýýûÿÿýþþüüüúþþüþþüþþüþþüþþüþþüþþüþþüÿøüÿöùÿýýþÿý÷ÿýïÿøëÿõòÿøëúçÿÿíÿïÛ̧”£lX£ZG­VCªM;ÁA8ÃB<ÃD>¿D?·?>­;;£99œ:;–<<Ž>?…?=}@=wB<pC=mE=lF=q?8q?8q?8q?8p?8o>7o>7n?7o@8n?7m>6i=4h<3h<3h<3i=4r73q62q62p62o51m61l71j81h70g80e90e:1d<2f>4f@5gA6]C4aG8cL:dM;cM8`K6]K3]M4]Q9`Y?miPss[€„mt|eFO:2>(39/28.28.28.17-17-17-06,17-17-17-06,06,/5+/5+/5+-2,-2,-2,-2,-2,-2,-2,-2,-2,,1++0*+0*+0*+0*,1+-2,,6.,6.*4,*4+*4++5*-7,.9+-8*0;+4?/5@/4?.3>-3?+4@,7F/;J3@P6DT:GW<JZ?M]@O_BUeJ^nSdtZbqZXgRIXE4B1$2!&+.$),"'*heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheTjdVjcYkd\lc\md]meZlfVljUllTkmWjn]lrhy}•œ¢¯¶ÀÒÛàëòøùÿÿùþÿ÷ûþþÿÿÿÿÿúù÷ÿÿûþýøùùññóèéëÞãçØáåÖàç×äêÐçíÓèìÑçéÑèèÐçåÎáÚÇ×оÛÒÃÚÐÆÞÔËçÜØîäãóéêúñôÿøýùù÷þþüÿÿýýýûýýûÿÿýÿÿýüüúþþüþþüþþüþþüþþüþþüþþüþþüÿ÷÷ÿùùÿýýüÿÿôÿþêÿûíÿÿíÿýñÿúðûíÿþíÿûèôλ­va‘P:¦^H»I>ºH=ºH>ºG@·F@°C@¦=:97—<;‘=;ˆ>;€A<wB:sD<nF<lH<q?8q?8q?8q?8p?8p?8p?8p?8qB:pA9n?7j>5i=4j>5j>5k?6s63r73q62p62n72l71j81i81d8/d90c;1d>3d@4cA5cA5bB5VG4^O<gVBhWCbS<^O8[O5\R7]V<]Y>mmSsw^z‚jcmU2>(5C,4:039/39/39/28.28.28.17-17-17-17-06,06,/5+/5+/5+-2,-2,-2,-2,-2,-2,-2,-2,,1+,1++0**/)*/)+0*,1+,1++5-+5-*4,*4,+5,+5,,6+-7,,7)/:,2=/6A17B27B25@/4?.2?+5B.:G3>L5AO6ES:JX?M[BTbI]kTcqZ_lXUbPERA2>0#/#(..&,,$**heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVjdTjdVjcYkd\lc\md]lfZlfVomXmmUimVgkZembr{xŽ—œ¨±ºÊÓØäëñöþÿ÷üÿøüÿþÿÿÿÿÿúù÷ÿÿúýýõøøîðòåéëÝåéÚåéØåìÚæíÎèïÐéîÐæéÎèæÏèãÏáÚÈÙÏÃÚÍÄßÒÌìÞÛúììÿôöÿõùÿõûÿøþýýûÿÿýÿÿýþþüþþüÿÿýÿÿýýýûþþüþþüþþüþþüþþüþþüþþüþþüÿüúÿýúÿûøùýüøÿÿôÿÿðÿÿêþüðÿûùÿûÿÿôÿöæÿôßÿãÍ×­”¢sY°SA®Q?®N>°O?±OB¯J@¥C:š<4—<7‘>8‰?6ƒ@7{B7tD6qE8nG8s>:s>:s>:q>:q>:q>:q>:p?:sB=rA<p?:m>8l=7l=7m>8n?9r73r73q73n72m82j81i81f:1f;2d>3d@4bB5`C5]A3\@2[?1QI4[S>f^Gg_H`Y?ZS9ZS7\W:ZV;WW;knSrx^u}eUaI%37E.4:04:04:039/39/39/28.28.17-17-17-06,06,/5+/5+/5+-2,-2,-2,-2,-2,-2,-2,-2,,1++0*+0**/)*/)+0*+0*,1+)3+)3+*4,+5-+5,,6--7.-7,,6+.8-2=/6A39D69D67B46A1/<*2?-5B09F2<J3@N7FT=JXAR`I[iRanZ\iWQ^MBN@/;/!-!+1/(.,&,*heVheVheVheVheVheVheVheVifWifWifWifWifWifWifWifWkeUkeWkdZle]md]ne^mg[mgWqoZkmUkoXkr`jrgozv†‘•Ÿ©²»ÄÉÑØÞèðóöûÿúþÿþÿÿÿÿÿþýùÿÿúþþöúúîöøêô÷æðôãìñÝçïÚð÷ÖíòÒëîÑììÒèæÏáÜÉÝÕÈÞÔÊáÔÎèÚ×òääúëîÿñöÿ÷ûÿùÿÿúÿþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüÿþùÿþùþþüýÿþûÿÿúÿÿøÿÿúÿÿüÿÿÿÿÿÿü÷ÿüñÿýìÿûåÿóÛÿíÑÁe¦cI—O7 T=ªYF¤Q?ŸI:¢L?;0Œ=0‡=0=/x=/t?/rC3sE5s<9s<9t=:s>:u@<u@<t?;q>:s@<r?;q@;q@;p?:o>9o>9o>9n72n72n93m;4l;4j;3g<3d<2c?3^>1dG9cG9T=-O8(M8'D/TR;PN7KI0MK2]Y>ieJeaDVU7XX<]`CosXz€fcmT=I1,:#1?(5;15;14:04:04:039/39/39/39/39/39/28.17-17-17-06,16016005/05//4./4./4./4.,1+,1+,1+,1+,1+,1++0*+0*.5.-4--4-,3,-4--4-.5-.5-+2*-4,08-5=29A6=E:?G<AI>7B25@03>-1<+2>*9E/BN8IU?O[EVbN]hWYdTLWI<F;/90)3*)/-(.,'-+heVheVheVheVheVheVheVheVifWifWifWifWifWifWifWifWkeUkeWkdZmd]md]mf^mg[khWonYjlTjoXkr`jtiq|x‰”˜¡®¶¾ÇÌÓÚàéðö÷üÿûÿÿþÿÿþþüþýùÿÿúþþôûûï÷ùëô÷æðõáìñÛæî×êðÎæëËäçÊææÌãáÌßÙÉÝÕÊßÔÎçÙØíßßöçêýîóÿôøÿ÷ûÿúÿÿûÿþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüúÿùûÿúýÿüþþþÿýÿÿüÿÿúÿÿúÿÿûÿÿûÿÿúùÿüõÿþñÿÿìÿüãúöÛÿéÌß²•§uZ‘[A–ZB›YCœUAšQ>F5F4‰D4…D2}B0yB.s@-o?+v?:t=8u>9v?:t?9q<6r=7sA:q?8q?8q?8o>7o>7n=6n=6n=6l;4m<5m>6k?6j?6h@6eA5cA5dG9[A2^G7\I8N=+F7$G8%A4!IM4GK2DG,BE*MM1[[?abC`aBYY=dgJsw\sy_X`H8D,/;%6D-7=36<26<26<25;15;15;15;15;15;15;14:04:039/39/39/27127127116016016005/05/.3-.3--2,-2,,1+,1++0*+0**1**1*)0))0))0)*1*+2+,3,.5--4,.5-07/4;39@8?F>BIA:G69F56C13@.2?+5B.;I2?M6KXDR_KXeSVcRKWI<H<0<2*6,+1-*0,)/+heVheVheVheVheVheVheVheVifWifWifWifWifWifWifWifWkeUkeWlcZmd]md]mf^mg[khWmlWimTjoXktaiuiq}yŠ˜›¤³ºÀÉÐÕÜâëòø÷üÿúþÿýþÿþþüþýùÿÿ÷ýýóúûí÷úéô÷äïôÞéîØãëÓâèÆÞáÂÛÞÁÞÞÆÞÛÈÞÖËßÖÏäÙ×îâäóçëúîòÿôøÿ÷ûÿøüÿúýÿüÿþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþü÷ÿúøÿüúÿþþþÿÿûÿÿúÿÿøÿÿ÷ÿÿøÿÿùÿÿúúÿýøÿÿôÿÿñüÿíöþçÿóÙÿùÞÿíÓâÀ¥«ƒj‡YA…Q;“[D—]GR=€F2w=)t=)t@+vC.xE2s>8p;5q<6vA;sA:p>7r@9xG@n=6n=6n=6m>6l=5l=5l=5l=5g?5h@6gA6gC7eC7cC6`C5^D5aL;UB1ZI7`S@RG3C;&E=(GA+>G,BH.@F*<@%?B%LO2_`AijKaaEnqTvz_gmSHP84<%4=(=F18>48>48>48>47=37=37=36<28>48>47=37=37=36<26<26<25:449349349338238238227105/05//4..3--2,,1++0*+0*(/((/((/((/((/()0)*1*+2+070.5.+2++2+.5.5<5<C<AHA?L;>K:<I78E34A-2?+3A*5C,DQ=KXDQ^LQ^MHTF<H<2>4-9/-3/-3/,2.gdUgdUheVheVheVheVifWifWifWifWifWifWifWifWifWifWleUldWlcZmd]md]mf^mg[khWmlWimThpXht`hthm|wˆ—š¥´»ÀÉÐÔÛáéðööûÿúþÿýþÿÿÿýÿþúþþöýýñúûí÷úéô÷âîóÝçìÕàèÐÜà¿×Ú»ÖÖ¼Ù×ÂÝ×ÉßÖÍåÛÙìàâøìðüïöÿõûÿùþÿúýÿûûÿûûÿýúþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüöÿþ÷ÿþúÿþþþÿÿüÿÿùÿÿøÿÿ÷þÿøÿÿøüÿùùÿýúÿÿøþÿøúÿõöÿóÿþìÿýéÿòßÿñÛÿðÚñÒ½³zyS<tJ2uH1wI2{M6~O;zK7o@.e8%{LBsD:qB8sD:qB8g;0d8-h<1j>3i?3i?3i?3f>2f>2f>2f>2aA4`C5`C5_C5^D5[D4ZE4VE3XI6OB/\T?oiSc^HMK4IG0LJ3;E*?H->G*<B&<A#FI,VY:deFmmQxx\tw\[_F@D-6;%8@+<D/9?59?59?58>48>47=37=37=39?58>48>48>48>48>48>48>47<67<67<66;56;56;55:45:438238216005//4.-2,,1+,1++0,+0,*/+*/++0,,1--2.-2.051.3/+0,+0,-2.2738=9<A=?L;@M<@M;=J88E13@,1?(0>'<I5BO;HUCIVEDPB;G;2>4.:0.5..5.-4-gdUgdUgdUheVheVifWifWifWifWifWifWifWifWifWifWifWleUldWlcZmd]md]mf^mg[khWkmWjnUiqYgs_drejyt…”—¡²¹¾ÇÎÓÚâèïõôùýùýÿýþÿÿÿýÿÿúÿÿøÿÿóþÿñûþë÷úåðõÞèîÔàéÎÛܽÕÕ¹ÑÑ·ÔѾÚÔÈáØÓêàßôéíþóùÿöþÿûÿÿýÿÿþÿÿþúÿþúþÿùþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüøÿÿøÿÿûÿÿþþþÿýþÿûüÿûúÿúúÿùùÿù÷ÿù÷ÿüùÿÿûþÿûûÿüùÿûùôîÿÿöÿþôÿýóÿüîÿ÷çùçÓéӾϴŸ¶š„•u`yVBlI5mH6rM;uP>mF7iB3gB2jE5nI9oJ:pK;oK;eA1eA1cB1cB1cB1cB1cB1bC1\G6\G6\G6ZG6YH6WH5TG4RG3PH3MH2fdM~~fprZVX@IM4HL3;E*<F+?H+AG+AF(DG*MN/TU6xw[{z^nnTUU=AC-?A,>A.;>+9?59?59?58>48>47=37=37=38>48>48>48>48>48>48>48>49>89>89>88=78=78=77<67<66;55:449338227105//4./4.-2.-2.,1-+0,+0,,1--2.-2.,1-,1-,1-,1-.21043376598:H7=L9@O<@O:<K67F/4C,2A*6E.:I4@O<BP??M>8F91?2,9/.5.-4-,3,fcTfcTgdUheVheVifWjgXjgXifWifWifWifWifWifWifWifWleUldWlcZmd]md]mf^mg[khWkmWioUiqYgs_bpcgxr‚”– ³¹ÁÊÑÕÜäéðöõúþùýÿýÿþÿÿýÿÿúÿÿöÿÿôÿÿñÿÿïúýèò÷àéïÕàéÎÙÚ»ÑѵÍË´Î˺ÖÏÅßÕÓìâãøíóÿöþÿùÿÿüÿÿýÿÿÿýþÿúýÿ÷þÿøþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüýýÿýþÿýþÿýÿþþþüþÿùþÿ÷ÿÿõýýóýýõþýøþýùÿþüÿýÿÿýÿÿþÿþùÿÿüÿÿúþúöõýøôÿþöÿþñÿþïÿûéÿóàöåÓåÓ¿Ò»©¹ŸŸƒuŽrd|]I}^JrVAaE0W;&Y=(Z?*X=(`E0`E0_F0_F0`G1`G1^H1^H1[L9ZM:ZM:XM9XM9UM8RL6QL6NL5QQ9ikS|€glrXSY?DM2>G,:G+<F+?H+DJ.EJ,DG*HI*ML.yx\tsWfdKTR;LJ5KJ6FE3<=+:@69?59?59?58>48>48>48>47=37=38>48>48>48>49?59?5:?9:?9:?9:?99>89>89>88=78=78=77<66;55:4493382382/40.3/-2.,1-+0,+0,+0,+0,+/.,0/-10.21/32/32/32.210A.5F3;M7>P:=O7:L47I/6H.3E-6H0:L6<M::K95F6/?2*:--4,-4,,3+fcTfcTgdUheVheVifWjgXjgXifWifWifWifWifWifWifWifWleUldWlcZmd]md]mf^mg[jiWjlVhnThrYfs_aqdhys…—™¤·½ÈÑØÛâêîõûøýÿúþÿýÿþÿÿýÿþùÿÿõÿÿóÿÿðüÿêøüåïõÛäêÐÛäÇÖÕ¹Î̳ÇÅ°ÊÄ´ÐÉÁÚÒÐêßãöìôÿ÷ÿÿúÿÿýÿÿþÿÿÿýûÿùüÿøûÿöþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüÿûÿÿüÿþýÿýÿþúÿúøÿ÷÷ÿó÷ÿò÷ÿòøÿóûÿøýÿúÿýþÿüÿÿûÿÿúÿýõÿÿúÿÿüÿÿýÿÿþÿýýûúûõ÷ùìÿÿóÿÿïÿÿïÿþíÿýíÿöçÿîâüêÞúäÍýçÐáË´¥xt^GdP8aM5\H0\J2\J2\J2]K3\L3]M4]M4]M4WO:WO:VP:VP:TO9QO8PN7NN6MO7PT;`fLfoTU^CEO4AK0:G+=J.?I.CL/HN2HM/FI,OP1YX:qmRjfKa]D[V@YT@TQ>MJ9EB1;A7;A7;A7;A7:@6:@6:@69?58>48>48>49?59?5:@6:@6:@6;@:;@:;@::?9:?99>89>89>8:?9:?99>89>88=78=77<67<6495273162/40-2.,1-+0,+/.,0/,0/-10.21.21.23-12,01):'/@-6H2;M5=O7<N4:L2:L25G-7I1:L6<M::K96G70@3+;..5--4,,3+fcTfcTgdUheVheVifWjgXjgXifWifWifWifWifWifWifWifWleUldWlcZmd]md]mf^kg[jiWikUhnThrYgt`brej{u‰›©¼ÂÎ×Þàçïòùÿúÿÿûÿÿýÿþþþüþýøúúðúúîúûë÷úåó÷àéïÕÞäÈÕÞÁÓÒ¶ÊȯÂÀ«Å¿±ËļÖÎÌæÝâôêòÿöÿÿùÿÿþÿÿÿÿýÿúûÿùûÿöûÿôþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüþþüÿùÿÿúÿÿüÿûÿþøÿúôÿõóÿòñÿðòÿñõÿóøÿöüÿûÿþÿÿüÿÿùÿÿøÿÿùÿÿúÿÿûÿÿýÿýýÿùýÿúÿûüÿúöüðùýîûüìýûìÿúìÿúîÿýñÿüñÿðÖÿûáíÜŸŽtaP6RB(XH.XH.[M2[M2\N3\N3[P4[P4\Q5\Q5TO9TO9TO9QO8PN7NN6KM5IM4JN5LR8S\AOY>?I.9F*?L0=J.AN2DN3HQ4LR6IN0JM0ZY;miLhdIc]C_YA_ZD`[GZUBQN=LI8=C9=C9=C9<B8<B8<B8;A7;A79?59?59?5:@6:@6;A7;A7;A7;@:;@:;@::?9:?99>89>89>8;@:;@:;@:;@::?9:?9:?9:?99>:8=95:6384162/40.3/.21.21.21-10-12,01,01-12-12$5"*<&3E/9K3<N6;M3;M3;M38J09K3;M7<M:<M;7H81B2,<//6..5--4,ZgM[hN\hP_iQakSckTfkWhkXfgUhgUheVheVjdVldWldYmeZjgVkhYkg[kg^kg^jf]hfZgeVfiVfkUenYbo^dqhsƒ‚–§®¶ÈÒÓÚàäéíò÷ú÷ýýùþúúÿøüÿôüþñöùèùúèø÷åòñÝïìÙìéÖáÞË×Ò¿Úͼ̿¯À²¥¿²©Â·³ÍÁÁÜÑ×êàèúòýüöÿþûÿÿþÿþýÿüýÿüýÿüýÿþþþþþþþþþþþþþþþþþþÿþüÿþüÿþüÿýúÿüùÿüùÿüùÿýùÿþúÿþúÿþýÿýüÿüûÿýþÿþÿÿþÿÿýþýûüÿþÿÿúúÿûøÿýøÿüöÿúòÿøïÿùñÿûÿÿýÿÿýþÿÿýÿÿûýÿüýÿþüýÿþÿÿÿþÿÿüÿÿýþÿý÷ÿþîÿÿæÿÿâööÜýûâãâƉnTO2UN1RL,SJ+WN/UO/UN1TO1SO2QP4QP4PP6QM2PO3QO6PP6MO7KO6HM6EM5HQ6FO4AJ-?F'@G&EK)GM)FL(ST2RS3MN.JK,TT8bbHccIZZB[YB\ZC][B][B[Z>XW9UT6SR3KE/JD.FA-D?,A>/@>1??3>@5<=5;>59?59A67B48C57C57D3:B79A69A68@58@59A69A6:B7:B7:B79A6:B7;C8<D9=E:>F;7B:7C97A66A16?.4<-39-270.5./51-7/-9+-<%.B3J7O7Z 8Y$8W+:U2:R8;P==O?>O=:L6@R8EX:EZ;DY:>U93J0(>'.5-,3++2*ZgM[hN\hP_iQakSckTglXhkXghVihVifWifWkeWmeXmeZnf[khWkhYkg[kg^jf]jf]hfZgeVgjWglVfoZerajwnzŠ‰š«²·ÉÓÑØÞáéìò÷úøþþùþúúÿøûþóúüï÷úé÷øæõôâíìØéæÓåâÏÜ×ÄÑ̹˾­Á´¤º¬Ÿ¼¯§Á¶²ÌÀÀÛÐÖèÞæûóþý÷ÿþûÿÿþÿþýÿüýÿüýÿüýÿþþþþþþþþþþþþþþþþþþÿþüÿþüÿþüÿýúÿýúÿüùÿüùÿýùÿýùÿþúÿþýÿýüÿüûÿýþÿþÿÿþÿÿýþýûüÿþÿÿýýÿüùÿøóøíçòåÝöèßÿïçÿûÿÿýÿÿýþÿÿýÿÿûýÿüýÿþüýÿýþÿþýÿÿýÿÿýþÿý÷ÿþîÿÿæÿÿâ÷÷ßýûââàÇ‹‡lRM0TM0QK+SJ+WN/UO/UN1TO1SO2QP4QP4PP6QM2PO3PN5PP6MO7KO6HM6EM5HQ6EN3BK.AH)BI(GM+JP,KQ-NR/PT1VZ9^aBaaE[[?VV<UU=VV>VV>XV=YW>XW;XW9WV8VU7QK5OI3LG3ID1DA2B@3??3>@5<=5;>59?59A67B48C57C57D3:B79A69A68@58@59A69A6:B7:B7:B7:B7:B7;C8<D9=E:>F;<G?<H><F;;F6<E4:B39?38=67>76<83=51=/3B+9M*BY-Ia1Nq7Mn9Ji=Fa>AY?<Q>:L<:K9=O9DV<K^@LaBLaBF]A:Q7/E.-4,+2*)0(ZgM[hN\hP`jRakSdlUglXilYijXkjXkhYkhYlfXmgYnf[og\khWkhYkg[jf]jf]ie\hfZhfWgjWejTdmXgtco|sŽ›¬³³ÅÏÎÕÛÞåëñöúøþþúÿûùþ÷øûòõ÷êòõäðñßêé×áàÌÜÙÆ×ÔÁÐ˸ÆÁ®À³¢½° ½¯¤Ã¶®ËÀ¼ÖÊÌãØÞíãëüôÿý÷ÿþûÿÿþÿþýÿüýÿüýÿýÿþþþþþþþþþþþþþþþþþþþÿþüÿþüÿþüÿýúÿýúÿýúÿüùÿüøÿüøÿüøÿýüÿüûÿûúþüýÿþÿÿþÿÿýþþüýÿþÿÿýýÿýúüóîêßÙâÕÍëÝÔüëãÿûÿÿýÿÿýþÿÿýÿÿûýÿúýÿþüýÿýþÿþýÿÿþÿÿþÿÿý÷ÿýíÿþåÿþáøøàþüåáßƉ…jPK.RK.QJ-SJ+VM.UO/UN1UP2TP3QP4QP4OO3QM2ON2PN5OO5MO7KO6IN7FN6HQ6FO4CL/EL-FM,KQ/OU1SY5QY0W_8jpLy]qvVY^@LO4MO7QQ9QQ9QQ9SQ8TR9UT8WV:ZV;XR<VP:RM9NI6HE6DB5AA5?A6<=5;>5:@69A67B47B47C57D3:B7:B79A69A69A69A6:B7:B7:B7:B7:B7:B7;C8<D9>F;>F;>IA>J@?I>>I9?H7>F7>D8=B;>E>;A=6@85A39H1BV3Pg;ZrB]€F\}HVuIMhEBZ@9N;5G74E3<N8EW=NaCRgHShILcG@W=4J3180/6.-4,YgM[hN\hP^jRblTemVhmYjmZklZklZlj[liZnhZnhZog\ph]liXkhYjfZjf]ie\ie\hfZhfWehUbgQajUerao|s~Ž”¥¬¨ºÄÈÏ×Úáçìô÷öûþ÷ýûõúôóöíïñäèêÜãäÒÜÛÉÔѾÎ˸ËƳþ«¼·¤Ä·¦ÇºªÎÀµÖÉÁßÔÐêÞàóèîúðùýõÿþøÿÿüÿþýÿýüÿüýÿüþýýÿþþþþþþþþþþþþþþþþþþþÿþüÿþüþýûÿýúÿýúÿýúÿýúÿüøÿû÷ÿû÷ÿýüÿüûþúùýûüÿýþÿþÿÿýþþüýÿüýÿýýÿýúýôïíâÜæÙÑðâÙÿðèÿûÿÿýÿÿýþÿÿýÿÿûýÿúýÿüüýÿýþÿþýÿÿþÿÿþýÿþõÿýíÿýäÿüßûûãÿþçâàÇŠ†mPJ0SL0SL/UL-VM.UO/VO2UP2TP3QP4PO3NN2PL1NM1OM4NN4LN6KO6JO8HP8JS8GP5GP3KR3MT3PV4V\8]c?fsGtU‡”i›s…lnuTZaBRV;LN6NN6MM5NL5OM6TP7WS:YU<ZT>XR<TO;QL9KH9GE8CC7@B7=>6<?6:@69A67B47B46B46C2;C8:B79A69A69A69A6:B7;C8;C8:B7:B7;C8;C8=E:>F;?G<<G?<H>>H=>I9?H7>F7>D8=B;=D=;A=6@85A39H1DX5Ri=]uEY|BXyDRqEIdA<T:2G4.@0->,6H2@R8L_AQfGShIMdH@W=4J329107/-4,YgMZhN\hP^jRblTemVgoZjo[lo\lm[mk\mj[nhZnhZoi]ph]liXkhYjfZie\ie\ie\ig[igXfiVchRajUerao|s{‹ŠŽŸ¦Ÿ±»ÂËÒÕÜäéðöòúüôúøñöðíðçéëÞáãÕÚÛËÒÑ¿ÌɶÉıþ«¾¹¦»´¢Ë¾®ÓŸÝÏÄæÙÑíâà÷ëíÿôúÿøÿÿ÷ÿÿúÿÿüÿþýÿýüÿûüþüþýþÿÿþþþþþþþþþþþþþþþþþþÿþüÿþüþýûÿüùÿýúÿýúÿýúÿû÷ÿúöþùõÿýüÿûúýùøüúûþüýÿýþÿþÿÿýþÿüýÿüüÿüùÿøó÷ìæòåÝøêáÿóëÿûÿÿýÿÿýþÿÿûÿÿûýÿúýÿüüýÿüýÿþýÿÿþÿÿþýÿþõÿüìÿüãÿúÝþýèÿÿëåãÌŒˆoRL2UN2TM0WN1VM.UO/WP3VQ3UQ4QP2ON2MM1PL1NM1NL3MM3LN6LP7KP9JR:LU:IR7JS6QX9SZ9U[9]c?gmI€”a’¦sŸ±š«’¡xˆ”pr|Z\bFLP7KM7LK6KI4NI5PK7TM:VP:WQ;VP:SN:QL9LI:IG:EE9CE:=>6<?6:@69A67B47B46B46C2;C8;C8:B79A69A6:B7;C8;C8;C8;C8;C8;C8<D9=E:>F;?G<<G?<H>=G<=H8>G6=E6=C7=B;:A:9?;5?75A39H1BV3Ne9Wo?Sv<St?NmAE`=8P6-B/*<,+<*1C-<N4H[=OdERgHLcG@W=3I2.5-+2*'.& \ No newline at end of file
diff --git a/gs/jpeg/transupp.c b/gs/jpeg/transupp.c
index 016f383d4..525932a31 100644
--- a/gs/jpeg/transupp.c
+++ b/gs/jpeg/transupp.c
@@ -1,7 +1,7 @@
1/* 1/*
2 * transupp.c 2 * transupp.c
3 * 3 *
4 * Copyright (C) 1997-2011, Thomas G. Lane, Guido Vollbeding. 4 * Copyright (C) 1997-2013, Thomas G. Lane, Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 5 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 6 * For conditions of distribution and use, see the accompanying README file.
7 * 7 *
@@ -114,6 +114,116 @@ do_crop (j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
114 114
115 115
116LOCAL(void) 116LOCAL(void)
117do_crop_ext (j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
118 JDIMENSION x_crop_offset, JDIMENSION y_crop_offset,
119 jvirt_barray_ptr *src_coef_arrays,
120 jvirt_barray_ptr *dst_coef_arrays)
121/* Crop. This is only used when no rotate/flip is requested with the crop.
122 * Extension: If the destination size is larger than the source, we fill in
123 * the extra area with zero (neutral gray). Note we also have to zero partial
124 * iMCUs at the right and bottom edge of the source image area in this case.
125 */
126{
127 JDIMENSION MCU_cols, MCU_rows, comp_width, comp_height;
128 JDIMENSION dst_blk_y, x_crop_blocks, y_crop_blocks;
129 int ci, offset_y;
130 JBLOCKARRAY src_buffer, dst_buffer;
131 jpeg_component_info *compptr;
132
133 MCU_cols = srcinfo->output_width /
134 (dstinfo->max_h_samp_factor * dstinfo->min_DCT_h_scaled_size);
135 MCU_rows = srcinfo->output_height /
136 (dstinfo->max_v_samp_factor * dstinfo->min_DCT_v_scaled_size);
137
138 for (ci = 0; ci < dstinfo->num_components; ci++) {
139 compptr = dstinfo->comp_info + ci;
140 comp_width = MCU_cols * compptr->h_samp_factor;
141 comp_height = MCU_rows * compptr->v_samp_factor;
142 x_crop_blocks = x_crop_offset * compptr->h_samp_factor;
143 y_crop_blocks = y_crop_offset * compptr->v_samp_factor;
144 for (dst_blk_y = 0; dst_blk_y < compptr->height_in_blocks;
145 dst_blk_y += compptr->v_samp_factor) {
146 dst_buffer = (*srcinfo->mem->access_virt_barray)
147 ((j_common_ptr) srcinfo, dst_coef_arrays[ci], dst_blk_y,
148 (JDIMENSION) compptr->v_samp_factor, TRUE);
149 if (dstinfo->jpeg_height > srcinfo->output_height) {
150 if (dst_blk_y < y_crop_blocks ||
151 dst_blk_y >= comp_height + y_crop_blocks) {
152 for (offset_y = 0; offset_y < compptr->v_samp_factor; offset_y++) {
153 FMEMZERO(dst_buffer[offset_y],
154 compptr->width_in_blocks * SIZEOF(JBLOCK));
155 }
156 continue;
157 }
158 src_buffer = (*srcinfo->mem->access_virt_barray)
159 ((j_common_ptr) srcinfo, src_coef_arrays[ci],
160 dst_blk_y - y_crop_blocks,
161 (JDIMENSION) compptr->v_samp_factor, FALSE);
162 } else {
163 src_buffer = (*srcinfo->mem->access_virt_barray)
164 ((j_common_ptr) srcinfo, src_coef_arrays[ci],
165 dst_blk_y + y_crop_blocks,
166 (JDIMENSION) compptr->v_samp_factor, FALSE);
167 }
168 for (offset_y = 0; offset_y < compptr->v_samp_factor; offset_y++) {
169 if (dstinfo->jpeg_width > srcinfo->output_width) {
170 if (x_crop_blocks > 0) {
171 FMEMZERO(dst_buffer[offset_y],
172 x_crop_blocks * SIZEOF(JBLOCK));
173 }
174 jcopy_block_row(src_buffer[offset_y],
175 dst_buffer[offset_y] + x_crop_blocks,
176 comp_width);
177 if (compptr->width_in_blocks > comp_width + x_crop_blocks) {
178 FMEMZERO(dst_buffer[offset_y] +
179 comp_width + x_crop_blocks,
180 (compptr->width_in_blocks -
181 comp_width - x_crop_blocks) * SIZEOF(JBLOCK));
182 }
183 } else {
184 jcopy_block_row(src_buffer[offset_y] + x_crop_blocks,
185 dst_buffer[offset_y],
186 compptr->width_in_blocks);
187 }
188 }
189 }
190 }
191}
192
193
194LOCAL(void)
195do_wipe (j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
196 JDIMENSION x_crop_offset, JDIMENSION y_crop_offset,
197 jvirt_barray_ptr *src_coef_arrays,
198 JDIMENSION drop_width, JDIMENSION drop_height)
199/* Wipe - drop content of specified area, fill with zero (neutral gray) */
200{
201 JDIMENSION comp_width, comp_height;
202 JDIMENSION blk_y, x_wipe_blocks, y_wipe_blocks;
203 int ci, offset_y;
204 JBLOCKARRAY buffer;
205 jpeg_component_info *compptr;
206
207 for (ci = 0; ci < dstinfo->num_components; ci++) {
208 compptr = dstinfo->comp_info + ci;
209 comp_width = drop_width * compptr->h_samp_factor;
210 comp_height = drop_height * compptr->v_samp_factor;
211 x_wipe_blocks = x_crop_offset * compptr->h_samp_factor;
212 y_wipe_blocks = y_crop_offset * compptr->v_samp_factor;
213 for (blk_y = 0; blk_y < comp_height; blk_y += compptr->v_samp_factor) {
214 buffer = (*srcinfo->mem->access_virt_barray)
215 ((j_common_ptr) srcinfo, src_coef_arrays[ci], blk_y + y_wipe_blocks,
216 (JDIMENSION) compptr->v_samp_factor, TRUE);
217 for (offset_y = 0; offset_y < compptr->v_samp_factor; offset_y++) {
218 FMEMZERO(buffer[offset_y] + x_wipe_blocks,
219 comp_width * SIZEOF(JBLOCK));
220 }
221 }
222 }
223}
224
225
226LOCAL(void)
117do_flip_h_no_crop (j_decompress_ptr srcinfo, j_compress_ptr dstinfo, 227do_flip_h_no_crop (j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
118 JDIMENSION x_crop_offset, 228 JDIMENSION x_crop_offset,
119 jvirt_barray_ptr *src_coef_arrays) 229 jvirt_barray_ptr *src_coef_arrays)
@@ -888,7 +998,8 @@ jtransform_request_workspace (j_decompress_ptr srcinfo,
888 998
889 /* Determine number of components in output image */ 999 /* Determine number of components in output image */
890 if (info->force_grayscale && 1000 if (info->force_grayscale &&
891 srcinfo->jpeg_color_space == JCS_YCbCr && 1001 (srcinfo->jpeg_color_space == JCS_YCbCr ||
1002 srcinfo->jpeg_color_space == JCS_BG_YCC) &&
892 srcinfo->num_components == 3) 1003 srcinfo->num_components == 3)
893 /* We'll only process the first component */ 1004 /* We'll only process the first component */
894 info->num_components = 1; 1005 info->num_components = 1;
@@ -965,39 +1076,81 @@ jtransform_request_workspace (j_decompress_ptr srcinfo,
965 info->crop_xoffset = 0; /* default to +0 */ 1076 info->crop_xoffset = 0; /* default to +0 */
966 if (info->crop_yoffset_set == JCROP_UNSET) 1077 if (info->crop_yoffset_set == JCROP_UNSET)
967 info->crop_yoffset = 0; /* default to +0 */ 1078 info->crop_yoffset = 0; /* default to +0 */
968 if (info->crop_xoffset >= info->output_width || 1079 if (info->crop_width_set == JCROP_UNSET) {
969 info->crop_yoffset >= info->output_height) 1080 if (info->crop_xoffset >= info->output_width)
970 ERREXIT(srcinfo, JERR_BAD_CROP_SPEC); 1081 ERREXIT(srcinfo, JERR_BAD_CROP_SPEC);
971 if (info->crop_width_set == JCROP_UNSET)
972 info->crop_width = info->output_width - info->crop_xoffset; 1082 info->crop_width = info->output_width - info->crop_xoffset;
973 if (info->crop_height_set == JCROP_UNSET) 1083 } else {
1084 /* Check for crop extension */
1085 if (info->crop_width > info->output_width) {
1086 /* Crop extension does not work when transforming! */
1087 if (info->transform != JXFORM_NONE ||
1088 info->crop_xoffset >= info->crop_width ||
1089 info->crop_xoffset > info->crop_width - info->output_width)
1090 ERREXIT(srcinfo, JERR_BAD_CROP_SPEC);
1091 } else {
1092 if (info->crop_xoffset >= info->output_width ||
1093 info->crop_width <= 0 ||
1094 info->crop_xoffset > info->output_width - info->crop_width)
1095 ERREXIT(srcinfo, JERR_BAD_CROP_SPEC);
1096 }
1097 }
1098 if (info->crop_height_set == JCROP_UNSET) {
1099 if (info->crop_yoffset >= info->output_height)
1100 ERREXIT(srcinfo, JERR_BAD_CROP_SPEC);
974 info->crop_height = info->output_height - info->crop_yoffset; 1101 info->crop_height = info->output_height - info->crop_yoffset;
975 /* Ensure parameters are valid */ 1102 } else {
976 if (info->crop_width <= 0 || info->crop_width > info->output_width || 1103 /* Check for crop extension */
977 info->crop_height <= 0 || info->crop_height > info->output_height || 1104 if (info->crop_height > info->output_height) {
978 info->crop_xoffset > info->output_width - info->crop_width || 1105 /* Crop extension does not work when transforming! */
979 info->crop_yoffset > info->output_height - info->crop_height) 1106 if (info->transform != JXFORM_NONE ||
980 ERREXIT(srcinfo, JERR_BAD_CROP_SPEC); 1107 info->crop_yoffset >= info->crop_height ||
1108 info->crop_yoffset > info->crop_height - info->output_height)
1109 ERREXIT(srcinfo, JERR_BAD_CROP_SPEC);
1110 } else {
1111 if (info->crop_yoffset >= info->output_height ||
1112 info->crop_height <= 0 ||
1113 info->crop_yoffset > info->output_height - info->crop_height)
1114 ERREXIT(srcinfo, JERR_BAD_CROP_SPEC);
1115 }
1116 }
981 /* Convert negative crop offsets into regular offsets */ 1117 /* Convert negative crop offsets into regular offsets */
982 if (info->crop_xoffset_set == JCROP_NEG) 1118 if (info->crop_xoffset_set != JCROP_NEG)
983 xoffset = info->output_width - info->crop_width - info->crop_xoffset;
984 else
985 xoffset = info->crop_xoffset; 1119 xoffset = info->crop_xoffset;
986 if (info->crop_yoffset_set == JCROP_NEG) 1120 else if (info->crop_width > info->output_width) /* crop extension */
987 yoffset = info->output_height - info->crop_height - info->crop_yoffset; 1121 xoffset = info->crop_width - info->output_width - info->crop_xoffset;
988 else 1122 else
1123 xoffset = info->output_width - info->crop_width - info->crop_xoffset;
1124 if (info->crop_yoffset_set != JCROP_NEG)
989 yoffset = info->crop_yoffset; 1125 yoffset = info->crop_yoffset;
990 /* Now adjust so that upper left corner falls at an iMCU boundary */ 1126 else if (info->crop_height > info->output_height) /* crop extension */
991 if (info->crop_width_set == JCROP_FORCE) 1127 yoffset = info->crop_height - info->output_height - info->crop_yoffset;
992 info->output_width = info->crop_width;
993 else
994 info->output_width =
995 info->crop_width + (xoffset % info->iMCU_sample_width);
996 if (info->crop_height_set == JCROP_FORCE)
997 info->output_height = info->crop_height;
998 else 1128 else
999 info->output_height = 1129 yoffset = info->output_height - info->crop_height - info->crop_yoffset;
1000 info->crop_height + (yoffset % info->iMCU_sample_height); 1130 /* Now adjust so that upper left corner falls at an iMCU boundary */
1131 if (info->transform == JXFORM_WIPE) {
1132 /* Ensure the effective wipe region will cover the requested */
1133 info->drop_width = (JDIMENSION) jdiv_round_up
1134 ((long) (info->crop_width + (xoffset % info->iMCU_sample_width)),
1135 (long) info->iMCU_sample_width);
1136 info->drop_height = (JDIMENSION) jdiv_round_up
1137 ((long) (info->crop_height + (yoffset % info->iMCU_sample_height)),
1138 (long) info->iMCU_sample_height);
1139 } else {
1140 /* Ensure the effective crop region will cover the requested */
1141 if (info->crop_width_set == JCROP_FORCE ||
1142 info->crop_width > info->output_width)
1143 info->output_width = info->crop_width;
1144 else
1145 info->output_width =
1146 info->crop_width + (xoffset % info->iMCU_sample_width);
1147 if (info->crop_height_set == JCROP_FORCE ||
1148 info->crop_height > info->output_height)
1149 info->output_height = info->crop_height;
1150 else
1151 info->output_height =
1152 info->crop_height + (yoffset % info->iMCU_sample_height);
1153 }
1001 /* Save x/y offsets measured in iMCUs */ 1154 /* Save x/y offsets measured in iMCUs */
1002 info->x_crop_offset = xoffset / info->iMCU_sample_width; 1155 info->x_crop_offset = xoffset / info->iMCU_sample_width;
1003 info->y_crop_offset = yoffset / info->iMCU_sample_height; 1156 info->y_crop_offset = yoffset / info->iMCU_sample_height;
@@ -1013,7 +1166,9 @@ jtransform_request_workspace (j_decompress_ptr srcinfo,
1013 transpose_it = FALSE; 1166 transpose_it = FALSE;
1014 switch (info->transform) { 1167 switch (info->transform) {
1015 case JXFORM_NONE: 1168 case JXFORM_NONE:
1016 if (info->x_crop_offset != 0 || info->y_crop_offset != 0) 1169 if (info->x_crop_offset != 0 || info->y_crop_offset != 0 ||
1170 info->output_width > srcinfo->output_width ||
1171 info->output_height > srcinfo->output_height)
1017 need_workspace = TRUE; 1172 need_workspace = TRUE;
1018 /* No workspace needed if neither cropping nor transforming */ 1173 /* No workspace needed if neither cropping nor transforming */
1019 break; 1174 break;
@@ -1067,6 +1222,8 @@ jtransform_request_workspace (j_decompress_ptr srcinfo,
1067 need_workspace = TRUE; 1222 need_workspace = TRUE;
1068 transpose_it = TRUE; 1223 transpose_it = TRUE;
1069 break; 1224 break;
1225 case JXFORM_WIPE:
1226 break;
1070 } 1227 }
1071 1228
1072 /* Allocate workspace if needed. 1229 /* Allocate workspace if needed.
@@ -1076,7 +1233,7 @@ jtransform_request_workspace (j_decompress_ptr srcinfo,
1076 if (need_workspace) { 1233 if (need_workspace) {
1077 coef_arrays = (jvirt_barray_ptr *) 1234 coef_arrays = (jvirt_barray_ptr *)
1078 (*srcinfo->mem->alloc_small) ((j_common_ptr) srcinfo, JPOOL_IMAGE, 1235 (*srcinfo->mem->alloc_small) ((j_common_ptr) srcinfo, JPOOL_IMAGE,
1079 SIZEOF(jvirt_barray_ptr) * info->num_components); 1236 SIZEOF(jvirt_barray_ptr) * info->num_components);
1080 width_in_iMCUs = (JDIMENSION) 1237 width_in_iMCUs = (JDIMENSION)
1081 jdiv_round_up((long) info->output_width, 1238 jdiv_round_up((long) info->output_width,
1082 (long) info->iMCU_sample_width); 1239 (long) info->iMCU_sample_width);
@@ -1327,12 +1484,13 @@ jtransform_adjust_parameters (j_decompress_ptr srcinfo,
1327{ 1484{
1328 /* If force-to-grayscale is requested, adjust destination parameters */ 1485 /* If force-to-grayscale is requested, adjust destination parameters */
1329 if (info->force_grayscale) { 1486 if (info->force_grayscale) {
1330 /* First, ensure we have YCbCr or grayscale data, and that the source's 1487 /* First, ensure we have YCC or grayscale data, and that the source's
1331 * Y channel is full resolution. (No reasonable person would make Y 1488 * Y channel is full resolution. (No reasonable person would make Y
1332 * be less than full resolution, so actually coping with that case 1489 * be less than full resolution, so actually coping with that case
1333 * isn't worth extra code space. But we check it to avoid crashing.) 1490 * isn't worth extra code space. But we check it to avoid crashing.)
1334 */ 1491 */
1335 if (((dstinfo->jpeg_color_space == JCS_YCbCr && 1492 if ((((dstinfo->jpeg_color_space == JCS_YCbCr ||
1493 dstinfo->jpeg_color_space == JCS_BG_YCC) &&
1336 dstinfo->num_components == 3) || 1494 dstinfo->num_components == 3) ||
1337 (dstinfo->jpeg_color_space == JCS_GRAYSCALE && 1495 (dstinfo->jpeg_color_space == JCS_GRAYSCALE &&
1338 dstinfo->num_components == 1)) && 1496 dstinfo->num_components == 1)) &&
@@ -1427,7 +1585,11 @@ jtransform_execute_transform (j_decompress_ptr srcinfo,
1427 */ 1585 */
1428 switch (info->transform) { 1586 switch (info->transform) {
1429 case JXFORM_NONE: 1587 case JXFORM_NONE:
1430 if (info->x_crop_offset != 0 || info->y_crop_offset != 0) 1588 if (info->output_width > srcinfo->output_width ||
1589 info->output_height > srcinfo->output_height)
1590 do_crop_ext(srcinfo, dstinfo, info->x_crop_offset, info->y_crop_offset,
1591 src_coef_arrays, dst_coef_arrays);
1592 else if (info->x_crop_offset != 0 || info->y_crop_offset != 0)
1431 do_crop(srcinfo, dstinfo, info->x_crop_offset, info->y_crop_offset, 1593 do_crop(srcinfo, dstinfo, info->x_crop_offset, info->y_crop_offset,
1432 src_coef_arrays, dst_coef_arrays); 1594 src_coef_arrays, dst_coef_arrays);
1433 break; 1595 break;
@@ -1463,6 +1625,10 @@ jtransform_execute_transform (j_decompress_ptr srcinfo,
1463 do_rot_270(srcinfo, dstinfo, info->x_crop_offset, info->y_crop_offset, 1625 do_rot_270(srcinfo, dstinfo, info->x_crop_offset, info->y_crop_offset,
1464 src_coef_arrays, dst_coef_arrays); 1626 src_coef_arrays, dst_coef_arrays);
1465 break; 1627 break;
1628 case JXFORM_WIPE:
1629 do_wipe(srcinfo, dstinfo, info->x_crop_offset, info->y_crop_offset,
1630 src_coef_arrays, info->drop_width, info->drop_height);
1631 break;
1466 } 1632 }
1467} 1633}
1468 1634
diff --git a/gs/jpeg/transupp.h b/gs/jpeg/transupp.h
index 9aa0af385..eee693141 100644
--- a/gs/jpeg/transupp.h
+++ b/gs/jpeg/transupp.h
@@ -1,7 +1,7 @@
1/* 1/*
2 * transupp.h 2 * transupp.h
3 * 3 *
4 * Copyright (C) 1997-2011, Thomas G. Lane, Guido Vollbeding. 4 * Copyright (C) 1997-2013, Thomas G. Lane, Guido Vollbeding.
5 * This file is part of the Independent JPEG Group's software. 5 * This file is part of the Independent JPEG Group's software.
6 * For conditions of distribution and use, see the accompanying README file. 6 * For conditions of distribution and use, see the accompanying README file.
7 * 7 *
@@ -51,14 +51,17 @@
51 * 51 *
52 * We also offer a lossless-crop option, which discards data outside a given 52 * We also offer a lossless-crop option, which discards data outside a given
53 * image region but losslessly preserves what is inside. Like the rotate and 53 * image region but losslessly preserves what is inside. Like the rotate and
54 * flip transforms, lossless crop is restricted by the JPEG format: the upper 54 * flip transforms, lossless crop is restricted by the current JPEG format: the
55 * left corner of the selected region must fall on an iMCU boundary. If this 55 * upper left corner of the selected region must fall on an iMCU boundary. If
56 * does not hold for the given crop parameters, we silently move the upper left 56 * this does not hold for the given crop parameters, we silently move the upper
57 * corner up and/or left to make it so, simultaneously increasing the region 57 * left corner up and/or left to make it so, simultaneously increasing the
58 * dimensions to keep the lower right crop corner unchanged. (Thus, the 58 * region dimensions to keep the lower right crop corner unchanged. (Thus, the
59 * output image covers at least the requested region, but may cover more.) 59 * output image covers at least the requested region, but may cover more.)
60 * The adjustment of the region dimensions may be optionally disabled. 60 * The adjustment of the region dimensions may be optionally disabled.
61 * 61 *
62 * A complementary lossless-wipe option is provided to discard (gray out) data
63 * inside a given image region while losslessly preserving what is outside.
64 *
62 * We also provide a lossless-resize option, which is kind of a lossless-crop 65 * We also provide a lossless-resize option, which is kind of a lossless-crop
63 * operation in the DCT coefficient block domain - it discards higher-order 66 * operation in the DCT coefficient block domain - it discards higher-order
64 * coefficients and losslessly preserves lower-order coefficients of a 67 * coefficients and losslessly preserves lower-order coefficients of a
@@ -102,7 +105,8 @@ typedef enum {
102 JXFORM_TRANSVERSE, /* transpose across UR-to-LL axis */ 105 JXFORM_TRANSVERSE, /* transpose across UR-to-LL axis */
103 JXFORM_ROT_90, /* 90-degree clockwise rotation */ 106 JXFORM_ROT_90, /* 90-degree clockwise rotation */
104 JXFORM_ROT_180, /* 180-degree rotation */ 107 JXFORM_ROT_180, /* 180-degree rotation */
105 JXFORM_ROT_270 /* 270-degree clockwise (or 90 ccw) */ 108 JXFORM_ROT_270, /* 270-degree clockwise (or 90 ccw) */
109 JXFORM_WIPE /* wipe */
106} JXFORM_CODE; 110} JXFORM_CODE;
107 111
108/* 112/*
@@ -130,7 +134,7 @@ typedef struct {
130 boolean perfect; /* if TRUE, fail if partial MCUs are requested */ 134 boolean perfect; /* if TRUE, fail if partial MCUs are requested */
131 boolean trim; /* if TRUE, trim partial MCUs as needed */ 135 boolean trim; /* if TRUE, trim partial MCUs as needed */
132 boolean force_grayscale; /* if TRUE, convert color image to grayscale */ 136 boolean force_grayscale; /* if TRUE, convert color image to grayscale */
133 boolean crop; /* if TRUE, crop source image */ 137 boolean crop; /* if TRUE, crop or wipe source image */
134 138
135 /* Crop parameters: application need not set these unless crop is TRUE. 139 /* Crop parameters: application need not set these unless crop is TRUE.
136 * These can be filled in by jtransform_parse_crop_spec(). 140 * These can be filled in by jtransform_parse_crop_spec().
@@ -151,6 +155,8 @@ typedef struct {
151 JDIMENSION output_height; 155 JDIMENSION output_height;
152 JDIMENSION x_crop_offset; /* destination crop offsets measured in iMCUs */ 156 JDIMENSION x_crop_offset; /* destination crop offsets measured in iMCUs */
153 JDIMENSION y_crop_offset; 157 JDIMENSION y_crop_offset;
158 JDIMENSION drop_width; /* drop/wipe dimensions measured in iMCUs */
159 JDIMENSION drop_height;
154 int iMCU_sample_width; /* destination iMCU size */ 160 int iMCU_sample_width; /* destination iMCU size */
155 int iMCU_sample_height; 161 int iMCU_sample_height;
156} jpeg_transform_info; 162} jpeg_transform_info;
diff --git a/gs/jpeg/usage.txt b/gs/jpeg/usage.txt
index de9def717..75140e59c 100644
--- a/gs/jpeg/usage.txt
+++ b/gs/jpeg/usage.txt
@@ -80,8 +80,9 @@ The basic command line switches for cjpeg are:
80 -rgb Create RGB JPEG file. 80 -rgb Create RGB JPEG file.
81 Using this switch suppresses the conversion from RGB 81 Using this switch suppresses the conversion from RGB
82 colorspace input to the default YCbCr JPEG colorspace. 82 colorspace input to the default YCbCr JPEG colorspace.
83 Use this switch in combination with the -block N 83 You can use this switch in combination with the
84 switch (see below) for lossless JPEG coding. 84 -block N switch (see below) for lossless JPEG coding.
85 See also the -rgb1 switch below.
85 86
86 -optimize Perform optimization of entropy encoding parameters. 87 -optimize Perform optimization of entropy encoding parameters.
87 Without this, default encoding parameters are used. 88 Without this, default encoding parameters are used.
@@ -157,10 +158,10 @@ file size is about the same --- often a little smaller.
157 158
158Switches for advanced users: 159Switches for advanced users:
159 160
160 -arithmetic Use arithmetic coding. CAUTION: arithmetic coded JPEG 161 -arithmetic Use arithmetic coding.
161 is not yet widely implemented, so many decoders will 162 CAUTION: arithmetic coded JPEG is not yet widely
162 be unable to view an arithmetic coded JPEG file at 163 implemented, so many decoders will be unable to
163 all. 164 view an arithmetic coded JPEG file at all.
164 165
165 -block N Set DCT block size. All N from 1 to 16 are possible. 166 -block N Set DCT block size. All N from 1 to 16 are possible.
166 Default is 8 (baseline format). 167 Default is 8 (baseline format).
@@ -175,6 +176,37 @@ Switches for advanced users:
175 decoders will be unable to view a SmartScale extended 176 decoders will be unable to view a SmartScale extended
176 JPEG file at all. 177 JPEG file at all.
177 178
179 -rgb1 Create RGB JPEG file with reversible color transform.
180 Works like the -rgb switch (see above) and inserts a
181 simple reversible color transform into the processing
182 which significantly improves the compression.
183 Use this switch in combination with the -block N
184 switch (see above) for lossless JPEG coding.
185 CAUTION: A decoder with inverse color transform
186 support is required for this feature. Reversible
187 color transform support is not yet widely implemented,
188 so many decoders will be unable to view a reversible
189 color transformed JPEG file at all.
190
191 -bgycc Create big gamut YCC JPEG file.
192 In this type of encoding the color difference
193 components are quantized further by a factor of 2
194 compared to the normal Cb/Cr values, thus creating
195 space to allow larger color values with higher
196 saturation than the normal gamut limits to be encoded.
197 In order to compensate for the loss of color fidelity
198 compared to a normal YCC encoded file, the color
199 quantization tables can be adjusted accordingly.
200 For example, cjpeg -bgycc -quality 80,90 will give
201 similar results as cjpeg -quality 80.
202 CAUTION: For correct decompression a decoder with big
203 gamut YCC support (JFIF version 2) is required.
204 An old decoder may or may not display a big gamut YCC
205 encoded JPEG file, depending on JFIF version check
206 and corresponding warning/error configuration.
207 In case of a granted decompression the old decoder
208 will display the image with half saturated colors.
209
178 -dct int Use integer DCT method (default). 210 -dct int Use integer DCT method (default).
179 -dct fast Use fast integer DCT (less accurate). 211 -dct fast Use fast integer DCT (less accurate).
180 -dct float Use floating-point DCT method. 212 -dct float Use floating-point DCT method.
@@ -374,7 +406,8 @@ quality settings to make very small JPEG files; the percentage improvement
374is often a lot more than it is on larger files. (At present, -optimize 406is often a lot more than it is on larger files. (At present, -optimize
375mode is always selected when generating progressive JPEG files.) 407mode is always selected when generating progressive JPEG files.)
376 408
377GIF input files are no longer supported, to avoid the Unisys LZW patent. 409GIF input files are no longer supported, to avoid the Unisys LZW patent
410(now expired).
378(Conversion of GIF files to JPEG is usually a bad idea anyway.) 411(Conversion of GIF files to JPEG is usually a bad idea anyway.)
379 412
380 413
@@ -402,8 +435,9 @@ it may run out of memory even with -maxmemory 0. In that case you can still
402decompress, with some loss of image quality, by specifying -onepass for 435decompress, with some loss of image quality, by specifying -onepass for
403one-pass quantization. 436one-pass quantization.
404 437
405To avoid the Unisys LZW patent, djpeg produces uncompressed GIF files. These 438To avoid the Unisys LZW patent (now expired), djpeg produces uncompressed GIF
406are larger than they should be, but are readable by standard GIF decoders. 439files. These are larger than they should be, but are readable by standard GIF
440decoders.
407 441
408 442
409HINTS FOR BOTH PROGRAMS 443HINTS FOR BOTH PROGRAMS
@@ -520,14 +554,20 @@ image region but losslessly preserves what is inside. Like the rotate and
520flip transforms, lossless crop is restricted by the current JPEG format: the 554flip transforms, lossless crop is restricted by the current JPEG format: the
521upper left corner of the selected region must fall on an iMCU boundary. If 555upper left corner of the selected region must fall on an iMCU boundary. If
522this does not hold for the given crop parameters, we silently move the upper 556this does not hold for the given crop parameters, we silently move the upper
523left corner up and/or left to make it so, simultaneously increasing the region 557left corner up and/or left to make it so, simultaneously increasing the
524dimensions to keep the lower right crop corner unchanged. (Thus, the output 558region dimensions to keep the lower right crop corner unchanged. (Thus, the
525image covers at least the requested region, but may cover more.) 559output image covers at least the requested region, but may cover more.)
560The adjustment of the region dimensions may be optionally disabled.
526 561
527The image can be losslessly cropped by giving the switch: 562The image can be losslessly cropped by giving the switch:
528 -crop WxH+X+Y Crop to a rectangular subarea of width W, height H 563 -crop WxH+X+Y Crop to a rectangular subarea of width W, height H
529 starting at point X,Y. 564 starting at point X,Y.
530 565
566A complementary lossless-wipe option is provided to discard (gray out) data
567inside a given image region while losslessly preserving what is outside:
568 -wipe WxH+X+Y Wipe (gray out) a rectangular subarea of
569 width W, height H starting at point X,Y.
570
531Other not-strictly-lossless transformation switches are: 571Other not-strictly-lossless transformation switches are:
532 572
533 -grayscale Force grayscale output. 573 -grayscale Force grayscale output.