summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Adler <madler@alumni.caltech.edu>2011-09-09 23:27:17 -0700
committerMark Adler <madler@alumni.caltech.edu>2011-09-09 23:27:17 -0700
commite0ff940e1adb68d3575705ebf1546d9f07ad3b4a (patch)
tree792ac6996d1225c0955027050296126bc8ff6e26
parent7df877eccdd826e94df53215f65dee639428e83f (diff)
downloadzlib-1.2.3.8.tar.gz
zlib-1.2.3.8.tar.bz2
zlib-1.2.3.8.zip
zlib 1.2.3.8v1.2.3.8
-rw-r--r--ChangeLog17
-rw-r--r--INDEX24
-rw-r--r--Makefile.in96
-rw-r--r--README4
-rw-r--r--as400/zlib.inc6
-rwxr-xr-xconfigure16
-rw-r--r--contrib/contrib/minizip/ioapi.h196
-rw-r--r--contrib/contrib/minizip/iowin32.c389
-rw-r--r--contrib/contrib/minizip/iowin32.h28
-rw-r--r--contrib/contrib/minizip/miniunz.c649
-rw-r--r--contrib/contrib/minizip/minizip.c508
-rw-r--r--contrib/contrib/vstudio/vc7/zlibvc.def95
-rw-r--r--contrib/contrib/vstudio/vc8/zlibstat.vcproj881
-rw-r--r--contrib/contrib/vstudio/vc8/zlibvc.def95
-rw-r--r--contrib/contrib/vstudio/vc8/zlibvc.vcproj1230
-rw-r--r--contrib/dotzlib/DotZLib.build4
-rw-r--r--contrib/dotzlib/DotZLib.chmbin72728 -> 72726 bytes
-rw-r--r--contrib/dotzlib/DotZLib/AssemblyInfo.cs20
-rw-r--r--contrib/dotzlib/DotZLib/ChecksumImpl.cs10
-rw-r--r--contrib/dotzlib/DotZLib/CircularBuffer.cs4
-rw-r--r--contrib/dotzlib/DotZLib/CodecBase.cs8
-rw-r--r--contrib/dotzlib/DotZLib/Deflater.cs6
-rw-r--r--contrib/dotzlib/DotZLib/DotZLib.cs20
-rw-r--r--contrib/dotzlib/DotZLib/GZipStream.cs18
-rw-r--r--contrib/dotzlib/DotZLib/Inflater.cs6
-rw-r--r--contrib/dotzlib/DotZLib/UnitTests.cs4
-rw-r--r--contrib/dotzlib/readme.txt18
-rw-r--r--contrib/infback9/inftree9.c4
-rw-r--r--contrib/masmx64/gvmat64.asm3
-rw-r--r--contrib/masmx64/gvmat64.objbin4119 -> 0 bytes
-rw-r--r--contrib/masmx64/inffas8664.c4
-rw-r--r--contrib/masmx64/inffasx64.asm4
-rw-r--r--contrib/masmx64/inffasx64.objbin5913 -> 0 bytes
-rw-r--r--contrib/masmx64/readme.txt2
-rw-r--r--contrib/masmx86/bld_ml32.bat4
-rw-r--r--contrib/masmx86/gvmat32.asm8
-rw-r--r--contrib/masmx86/gvmat32.objbin10241 -> 0 bytes
-rw-r--r--contrib/masmx86/inffas32.asm4
-rw-r--r--contrib/masmx86/inffas32.objbin14893 -> 0 bytes
-rw-r--r--contrib/minizip/Makefile50
-rw-r--r--contrib/minizip/MiniZip64_Changes.txt13
-rw-r--r--contrib/minizip/MiniZip64_info.txt158
-rw-r--r--contrib/minizip/crypt.h2
-rw-r--r--contrib/minizip/ioapi.c2
-rw-r--r--contrib/minizip/ioapi.h8
-rw-r--r--contrib/minizip/iowin32.c2
-rw-r--r--contrib/minizip/iowin32.h2
-rw-r--r--contrib/minizip/make_vms.com2
-rw-r--r--contrib/minizip/miniunz.c8
-rw-r--r--contrib/minizip/minizip.c10
-rw-r--r--contrib/minizip/mztools.c562
-rw-r--r--contrib/minizip/mztools.h62
-rw-r--r--contrib/minizip/unzip.c10
-rw-r--r--contrib/minizip/unzip.h4
-rw-r--r--contrib/minizip/zconf.h332
-rw-r--r--contrib/minizip/zconf.in.h332
-rw-r--r--contrib/minizip/zip.c44
-rw-r--r--contrib/minizip/zip.h10
-rwxr-xr-xcontrib/puff/puffbin17344 -> 0 bytes
-rw-r--r--contrib/testzlib/testzlib.c6
-rw-r--r--contrib/vstudio/readme.txt4
-rw-r--r--contrib/vstudio/vc7/zlib.rc6
-rw-r--r--deflate.c2
-rw-r--r--examples/enough.c16
-rw-r--r--examples/gzlog.c2
-rw-r--r--gzguts.h11
-rw-r--r--gzio.c14
-rw-r--r--gzlib.c36
-rw-r--r--gzread.c7
-rw-r--r--gzwrite.c17
-rw-r--r--inftrees.c4
-rw-r--r--make_vms.com36
-rw-r--r--minigzip.c14
-rw-r--r--projects/visualc6/example.dsp14
-rw-r--r--projects/visualc6/minigzip.dsp14
-rw-r--r--projects/visualc6/zlib.dsp22
-rw-r--r--qnx/package.qpg8
-rw-r--r--treebuild.xml106
-rw-r--r--watcom/watcom_f.mak2
-rw-r--r--watcom/watcom_l.mak2
-rw-r--r--zconf.h1
-rw-r--r--zconf.in.h1
-rw-r--r--zlib.34
-rw-r--r--zlib.h8
-rw-r--r--zlib.map6
-rw-r--r--zlib.pc.in2
-rwxr-xr-xzlib2ansi28
87 files changed, 4936 insertions, 1455 deletions
diff --git a/ChangeLog b/ChangeLog
index 68305b4..4834321 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,21 @@
1 1
2 ChangeLog file for zlib 2 ChangeLog file for zlib
3 3
4Changes in 1.2.3.8 (13 Feb 2010)
5- Clean up text files (tabs, trailing whitespace, etc.) [Oberhumer]
6- Use z_off64_t in gz_zero() and gz_skip() to match state->skip
7- Avoid comparison problem when sizeof(int) == sizeof(z_off64_t)
8- Revert to Makefile.in from 1.2.3.6 (live with the clutter)
9- Fix missing error return in gzflush(), add zlib.h note
10- Add *64 functions to zlib.map [Levin]
11- Fix signed/unsigned comparison in gz_comp()
12- Use SFLAGS when testing shared linking in configure
13- Add --64 option to ./configure to use -m64 with gcc
14- Fix ./configure --help to correctly name options
15- Have make fail if a test fails [Levin]
16- Avoid buffer overrun in contrib/masmx64/gvmat64.asm [Simpson]
17- Remove assembler object files from contrib
18
4Changes in 1.2.3.7 (24 Jan 2010) 19Changes in 1.2.3.7 (24 Jan 2010)
5- Always gzopen() with O_LARGEFILE if available 20- Always gzopen() with O_LARGEFILE if available
6- Fix gzdirect() to work immediately after gzopen() or gzdopen() 21- Fix gzdirect() to work immediately after gzopen() or gzdopen()
@@ -191,7 +206,7 @@ Changes in 1.2.3.1 (16 August 2006)
191- Synchronize FAQ with website 206- Synchronize FAQ with website
192- Fix compressBound(), was low for some pathological cases [Fearnley] 207- Fix compressBound(), was low for some pathological cases [Fearnley]
193- Take into account wrapper variations in deflateBound() 208- Take into account wrapper variations in deflateBound()
194- Set examples/zpipe.c input and output to binary mode for Windows 209- Set examples/zpipe.c input and output to binary mode for Windows
195- Update examples/zlib_how.html with new zpipe.c (also web site) 210- Update examples/zlib_how.html with new zpipe.c (also web site)
196- Fix some warnings in examples/gzlog.c and examples/zran.c (it seems 211- Fix some warnings in examples/gzlog.c and examples/zran.c (it seems
197 that gcc became pickier in 4.0) 212 that gcc became pickier in 4.0)
diff --git a/INDEX b/INDEX
index e4c2133..704ded4 100644
--- a/INDEX
+++ b/INDEX
@@ -5,26 +5,26 @@ INDEX this file
5Makefile.in template for Unix Makefile 5Makefile.in template for Unix Makefile
6README guess what 6README guess what
7configure configure script for Unix 7configure configure script for Unix
8make_vms.com makefile for VMS 8make_vms.com makefile for VMS
9treebuild.xml XML description of source file dependencies 9treebuild.xml XML description of source file dependencies
10zconf.in.h zconf.h template for configure 10zconf.in.h zconf.h template for configure
11zlib.3 Man page for zlib 11zlib.3 Man page for zlib
12zlib.map Linux symbol information 12zlib.map Linux symbol information
13zlib.pc.in Template for pkg-config descriptor 13zlib.pc.in Template for pkg-config descriptor
14zlib2ansi perl script to convert source files for C++ compilation 14zlib2ansi perl script to convert source files for C++ compilation
15 15
16amiga/ makefiles for Amiga SAS C 16amiga/ makefiles for Amiga SAS C
17as400/ makefiles for IBM AS/400 17as400/ makefiles for IBM AS/400
18doc/ documentation for formats and algorithms 18doc/ documentation for formats and algorithms
19msdos/ makefiles for MSDOS 19msdos/ makefiles for MSDOS
20nintendods/ makefile for Nintendo DS 20nintendods/ makefile for Nintendo DS
21objs/ destination for object files 21objs/ destination for object files
22old/ makefiles for various architectures and zlib documentation 22old/ makefiles for various architectures and zlib documentation
23 files that have not yet been updated for zlib 1.2.x 23 files that have not yet been updated for zlib 1.2.x
24pics/ destination for position-independent-code object files 24pics/ destination for position-independent-code object files
25projects/ projects for various Integrated Development Environments 25projects/ projects for various Integrated Development Environments
26qnx/ makefiles for QNX 26qnx/ makefiles for QNX
27watcom/ makefiles for OpenWatcom 27watcom/ makefiles for OpenWatcom
28win32/ makefiles for Windows 28win32/ makefiles for Windows
29 29
30 zlib public header files (required for library use): 30 zlib public header files (required for library use):
diff --git a/Makefile.in b/Makefile.in
index 99945a8..a8d10ba 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -32,7 +32,7 @@ CPP=$(CC) -E
32 32
33STATICLIB=libz.a 33STATICLIB=libz.a
34SHAREDLIB=libz.so 34SHAREDLIB=libz.so
35SHAREDLIBV=libz.so.1.2.3.7 35SHAREDLIBV=libz.so.1.2.3.8
36SHAREDLIBM=libz.so.1 36SHAREDLIBM=libz.so.1
37LIBS=$(STATICLIB) $(SHAREDLIB) $(SHAREDLIBV) 37LIBS=$(STATICLIB) $(SHAREDLIB) $(SHAREDLIBV)
38 38
@@ -53,15 +53,16 @@ pkgconfigdir = ${libdir}/pkgconfig
53OBJC = adler32.o compress.o crc32.o deflate.o gzclose.o gzio.o gzlib.o gzread.o \ 53OBJC = adler32.o compress.o crc32.o deflate.o gzclose.o gzio.o gzlib.o gzread.o \
54 gzwrite.o infback.o inffast.o inflate.o inftrees.o trees.o uncompr.o zutil.o 54 gzwrite.o infback.o inffast.o inflate.o inftrees.o trees.o uncompr.o zutil.o
55 55
56# to use the asm code: make OBJA=match.o 56PIC_OBJC = adler32.lo compress.lo crc32.lo deflate.lo gzclose.lo gzio.lo gzlib.lo gzread.lo \
57OBJA = 57 gzwrite.lo infback.lo inffast.lo inflate.lo inftrees.lo trees.lo uncompr.lo zutil.lo
58 58
59objdir = objs/ 59# to use the asm code: make OBJA=match.o, PIC_OBJA=match.lo
60picdir = pics/ 60OBJA =
61PIC_OBJA =
61 62
62OBJS = $(addprefix $(objdir), $(OBJC) $(OBJA)) 63OBJS = $(OBJC) $(OBJA)
63 64
64PIC_OBJS = $(addprefix $(picdir), $(OBJC) $(OBJA)) 65PIC_OBJS = $(PIC_OBJC) $(PIC_OBJA)
65 66
66all: static shared 67all: static shared
67 68
@@ -76,12 +77,10 @@ check: test
76test: all teststatic testshared 77test: all teststatic testshared
77 78
78teststatic: static 79teststatic: static
79 @echo hello world | ./minigzip | ./minigzip -d || \ 80 @if echo hello world | ./minigzip | ./minigzip -d && ./example; then \
80 echo ' *** minigzip test FAILED ***' ; \
81 if ./example; then \
82 echo ' *** zlib test OK ***'; \ 81 echo ' *** zlib test OK ***'; \
83 else \ 82 else \
84 echo ' *** zlib test FAILED ***'; \ 83 echo ' *** zlib test FAILED ***'; false; \
85 fi 84 fi
86 -@rm -f foo.gz 85 -@rm -f foo.gz
87 86
@@ -90,22 +89,18 @@ testshared: shared
90 LD_LIBRARYN32_PATH=`pwd`:$(LD_LIBRARYN32_PATH) ; export LD_LIBRARYN32_PATH; \ 89 LD_LIBRARYN32_PATH=`pwd`:$(LD_LIBRARYN32_PATH) ; export LD_LIBRARYN32_PATH; \
91 DYLD_LIBRARY_PATH=`pwd`:$(DYLD_LIBRARY_PATH) ; export DYLD_LIBRARY_PATH; \ 90 DYLD_LIBRARY_PATH=`pwd`:$(DYLD_LIBRARY_PATH) ; export DYLD_LIBRARY_PATH; \
92 SHLIB_PATH=`pwd`:$(SHLIB_PATH) ; export SHLIB_PATH; \ 91 SHLIB_PATH=`pwd`:$(SHLIB_PATH) ; export SHLIB_PATH; \
93 echo hello world | ./minigzipsh | ./minigzipsh -d || \ 92 if echo hello world | ./minigzipsh | ./minigzipsh -d && ./examplesh; then \
94 echo ' *** minigzip shared test FAILED ***' ; \
95 if ./examplesh; then \
96 echo ' *** zlib shared test OK ***'; \ 93 echo ' *** zlib shared test OK ***'; \
97 else \ 94 else \
98 echo ' *** zlib shared test FAILED ***'; \ 95 echo ' *** zlib shared test FAILED ***'; false; \
99 fi 96 fi
100 -@rm -f foo.gz 97 -@rm -f foo.gz
101 98
102test64: all64 99test64: all64
103 @echo hello world | ./minigzip64 | ./minigzip64 -d || \ 100 @if echo hello world | ./minigzip64 | ./minigzip64 -d && ./example64; then \
104 echo ' *** minigzip 64-bit test FAILED ***' ; \
105 if ./example64; then \
106 echo ' *** zlib 64-bit test OK ***'; \ 101 echo ' *** zlib 64-bit test OK ***'; \
107 else \ 102 else \
108 echo ' *** zlib 64-bit test FAILED ***'; \ 103 echo ' *** zlib 64-bit test FAILED ***'; false; \
109 fi 104 fi
110 -@rm -f foo.gz 105 -@rm -f foo.gz
111 106
@@ -113,51 +108,55 @@ libz.a: $(OBJS)
113 $(AR) $@ $(OBJS) 108 $(AR) $@ $(OBJS)
114 -@ ($(RANLIB) $@ || true) >/dev/null 2>&1 109 -@ ($(RANLIB) $@ || true) >/dev/null 2>&1
115 110
116objs/match.o: match.S 111match.o: match.S
117 $(CPP) match.S > _match.s 112 $(CPP) match.S > _match.s
118 $(CC) -c -o $@ _match.s 113 $(CC) -c _match.s
114 mv _match.o match.o
119 rm -f _match.s 115 rm -f _match.s
120 116
121pics/match.o: match.S 117match.lo: match.S
122 $(CPP) match.S > _match.s 118 $(CPP) match.S > _match.s
123 $(CC) -c -o $@ -fPIC _match.s 119 $(CC) -c -fPIC _match.s
120 mv _match.o match.lo
124 rm -f _match.s 121 rm -f _match.s
125 122
126objs/example64.o: example.c zlib.h zconf.h 123example64.o: example.c zlib.h zconf.h
127 $(CC) $(CFLAGS) -D_FILE_OFFSET_BITS=64 -c -o $@ example.c 124 $(CC) $(CFLAGS) -D_FILE_OFFSET_BITS=64 -c -o $@ example.c
128 125
129objs/minigzip64.o: minigzip.c zlib.h zconf.h 126minigzip64.o: minigzip.c zlib.h zconf.h
130 $(CC) $(CFLAGS) -D_FILE_OFFSET_BITS=64 -c -o $@ minigzip.c 127 $(CC) $(CFLAGS) -D_FILE_OFFSET_BITS=64 -c -o $@ minigzip.c
131 128
132$(objdir)%.o: %.c 129.SUFFIXES: .lo
133 $(CC) $(CFLAGS) -c -o $@ $<
134 130
135$(picdir)%.o: %.c 131.c.lo:
136 $(CC) $(SFLAGS) -DPIC -c -o $@ $< 132 -@if [ ! -d objs ]; then mkdir objs; fi
133 $(CC) $(SFLAGS) -DPIC -c -o objs/$*.o $<
134 -@mv objs/$*.o $@
137 135
138$(SHAREDLIBV): $(PIC_OBJS) 136$(SHAREDLIBV): $(PIC_OBJS)
139 $(LDSHARED) $(SFLAGS) -o $@ $(PIC_OBJS) -lc 137 $(LDSHARED) $(SFLAGS) -o $@ $(PIC_OBJS) -lc
140 rm -f $(SHAREDLIB) $(SHAREDLIBM) 138 rm -f $(SHAREDLIB) $(SHAREDLIBM)
141 ln -s $@ $(SHAREDLIB) 139 ln -s $@ $(SHAREDLIB)
142 ln -s $@ $(SHAREDLIBM) 140 ln -s $@ $(SHAREDLIBM)
141 -@rmdir objs
143 142
144example$(EXE): objs/example.o $(STATICLIB) 143example$(EXE): example.o $(STATICLIB)
145 $(CC) $(CFLAGS) -o $@ objs/example.o $(LDFLAGS) 144 $(CC) $(CFLAGS) -o $@ example.o $(LDFLAGS)
146 145
147minigzip$(EXE): objs/minigzip.o $(STATICLIB) 146minigzip$(EXE): minigzip.o $(STATICLIB)
148 $(CC) $(CFLAGS) -o $@ objs/minigzip.o $(LDFLAGS) 147 $(CC) $(CFLAGS) -o $@ minigzip.o $(LDFLAGS)
149 148
150examplesh$(EXE): objs/example.o $(SHAREDLIBV) 149examplesh$(EXE): example.o $(SHAREDLIBV)
151 $(CC) $(CFLAGS) -o $@ objs/example.o -L. $(SHAREDLIBV) 150 $(CC) $(CFLAGS) -o $@ example.o -L. $(SHAREDLIBV)
152 151
153minigzipsh$(EXE): objs/minigzip.o $(SHAREDLIBV) 152minigzipsh$(EXE): minigzip.o $(SHAREDLIBV)
154 $(CC) $(CFLAGS) -o $@ objs/minigzip.o -L. $(SHAREDLIBV) 153 $(CC) $(CFLAGS) -o $@ minigzip.o -L. $(SHAREDLIBV)
155 154
156example64$(EXE): objs/example64.o $(STATICLIB) 155example64$(EXE): example64.o $(STATICLIB)
157 $(CC) $(CFLAGS) -o $@ objs/example64.o $(LDFLAGS) 156 $(CC) $(CFLAGS) -o $@ example64.o $(LDFLAGS)
158 157
159minigzip64$(EXE): objs/minigzip64.o $(STATICLIB) 158minigzip64$(EXE): minigzip64.o $(STATICLIB)
160 $(CC) $(CFLAGS) -o $@ objs/minigzip64.o $(LDFLAGS) 159 $(CC) $(CFLAGS) -o $@ minigzip64.o $(LDFLAGS)
161 160
162install-libs: $(LIBS) 161install-libs: $(LIBS)
163 -@if [ ! -d $(DESTDIR)$(exec_prefix) ]; then mkdir -p $(DESTDIR)$(exec_prefix); fi 162 -@if [ ! -d $(DESTDIR)$(exec_prefix) ]; then mkdir -p $(DESTDIR)$(exec_prefix); fi
@@ -196,18 +195,19 @@ uninstall:
196 195
197mostlyclean: clean 196mostlyclean: clean
198clean: 197clean:
199 rm -f $(objdir)* $(picdir)* *~ \ 198 rm -f *.o *.lo *~ \
200 example$(EXE) minigzip$(EXE) examplesh$(EXE) minigzipsh$(EXE) \ 199 example$(EXE) minigzip$(EXE) examplesh$(EXE) minigzipsh$(EXE) \
201 example64$(EXE) minigzip64$(EXE) \ 200 example64$(EXE) minigzip64$(EXE) \
202 libz.* foo.gz so_locations \ 201 libz.* foo.gz so_locations \
203 _match.s maketree contrib/infback9/*.o 202 _match.s maketree contrib/infback9/*.o
203 rm -rf objs
204 204
205maintainer-clean: distclean 205maintainer-clean: distclean
206distclean: clean 206distclean: clean
207 cp -p zconf.in.h zconf.h 207 cp -p zconf.in.h zconf.h
208 rm -f zlib.pc .DS_Store 208 rm -f zlib.pc .DS_Store
209 -@printf 'all:\n\t-@echo "Use ./configure first. Thank you."\n' > Makefile 209 -@printf 'all:\n\t-@echo "Use ./configure first. Thank you."\n' > Makefile
210 -@ touch -r Makefile.in Makefile objs pics 210 -@touch -r Makefile.in Makefile
211 211
212tags: 212tags:
213 etags *.[ch] 213 etags *.[ch]
@@ -226,3 +226,13 @@ infback.o inflate.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h inffi
226inffast.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h 226inffast.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h
227inftrees.o: zutil.h zlib.h zconf.h inftrees.h 227inftrees.o: zutil.h zlib.h zconf.h inftrees.h
228trees.o: deflate.h zutil.h zlib.h zconf.h trees.h 228trees.o: deflate.h zutil.h zlib.h zconf.h trees.h
229
230adler32.lo gzio.lo zutil.lo: zutil.h zlib.h zconf.h
231gzclose.lo gzlib.lo gzread.lo gzwrite.lo: zlib.h zconf.h gzguts.h
232compress.lo example.lo minigzip.lo uncompr.lo: zlib.h zconf.h
233crc32.lo: zutil.h zlib.h zconf.h crc32.h
234deflate.lo: deflate.h zutil.h zlib.h zconf.h
235infback.lo inflate.lo: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h inffixed.h
236inffast.lo: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h
237inftrees.lo: zutil.h zlib.h zconf.h inftrees.h
238trees.lo: deflate.h zutil.h zlib.h zconf.h trees.h
diff --git a/README b/README
index f8f37f5..f72a1a4 100644
--- a/README
+++ b/README
@@ -1,6 +1,6 @@
1ZLIB DATA COMPRESSION LIBRARY 1ZLIB DATA COMPRESSION LIBRARY
2 2
3zlib 1.2.3.7 is a general purpose data compression library. All the code is 3zlib 1.2.3.8 is a general purpose data compression library. All the code is
4thread safe. The data format used by the zlib library is described by RFCs 4thread safe. The data format used by the zlib library is described by RFCs
5(Request for Comments) 1950 to 1952 in the files 5(Request for Comments) 1950 to 1952 in the files
6http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate format) 6http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate format)
@@ -33,7 +33,7 @@ Mark Nelson <markn@ieee.org> wrote an article about zlib for the Jan. 1997
33issue of Dr. Dobb's Journal; a copy of the article is available in 33issue of Dr. Dobb's Journal; a copy of the article is available in
34http://dogma.net/markn/articles/zlibtool/zlibtool.htm 34http://dogma.net/markn/articles/zlibtool/zlibtool.htm
35 35
36The changes made in version 1.2.3.7 are documented in the file ChangeLog. 36The changes made in version 1.2.3.8 are documented in the file ChangeLog.
37 37
38Unsupported third party contributions are provided in directory "contrib". 38Unsupported third party contributions are provided in directory "contrib".
39 39
diff --git a/as400/zlib.inc b/as400/zlib.inc
index cfcbfc8..b5e673b 100644
--- a/as400/zlib.inc
+++ b/as400/zlib.inc
@@ -1,7 +1,7 @@
1 * ZLIB.INC - Interface to the general purpose compression library 1 * ZLIB.INC - Interface to the general purpose compression library
2 * 2 *
3 * ILE RPG400 version by Patrick Monnerat, DATASPHERE. 3 * ILE RPG400 version by Patrick Monnerat, DATASPHERE.
4 * Version 1.2.3.7 4 * Version 1.2.3.8
5 * 5 *
6 * 6 *
7 * WARNING: 7 * WARNING:
@@ -22,8 +22,8 @@
22 * 22 *
23 * Versioning information. 23 * Versioning information.
24 * 24 *
25 D ZLIB_VERSION C '1.2.3.7' 25 D ZLIB_VERSION C '1.2.3.8'
26 D ZLIB_VERNUM C X'1237' 26 D ZLIB_VERNUM C X'1238'
27 * 27 *
28 * Other equates. 28 * Other equates.
29 * 29 *
diff --git a/configure b/configure
index 5f0ed6e..66ccbbb 100755
--- a/configure
+++ b/configure
@@ -30,6 +30,7 @@ mandir=${mandir-'${prefix}/share/man'}
30shared_ext='.so' 30shared_ext='.so'
31shared=1 31shared=1
32zprefix=0 32zprefix=0
33build64=0
33gcc=0 34gcc=0
34old_cc="$CC" 35old_cc="$CC"
35old_cflags="$CFLAGS" 36old_cflags="$CFLAGS"
@@ -39,8 +40,8 @@ do
39case "$1" in 40case "$1" in
40 -h* | --help) 41 -h* | --help)
41 echo 'usage:' 42 echo 'usage:'
42 echo ' configure [--shared] [--prefix=PREFIX] [--exec_prefix=EXPREFIX]' 43 echo ' configure [--zprefix] [--prefix=PREFIX] [--eprefix=EXPREFIX]'
43 echo ' [--libdir=LIBDIR] [--includedir=INCLUDEDIR] [--zprefix]' 44 echo ' [--static] [--64] [--libdir=LIBDIR] [--includedir=INCLUDEDIR]'
44 exit 0 ;; 45 exit 0 ;;
45 -p*=* | --prefix=*) prefix=`echo $1 | sed 's/[-a-z_]*=//'`; shift ;; 46 -p*=* | --prefix=*) prefix=`echo $1 | sed 's/[-a-z_]*=//'`; shift ;;
46 -e*=* | --eprefix=*) exec_prefix=`echo $1 | sed 's/[-a-z_]*=//'`; shift ;; 47 -e*=* | --eprefix=*) exec_prefix=`echo $1 | sed 's/[-a-z_]*=//'`; shift ;;
@@ -54,6 +55,7 @@ case "$1" in
54 -s* | --shared | --enable-shared) shared=1; shift ;; 55 -s* | --shared | --enable-shared) shared=1; shift ;;
55 -t | --static) shared=0; shift ;; 56 -t | --static) shared=0; shift ;;
56 -z* | --zprefix) zprefix=1; shift ;; 57 -z* | --zprefix) zprefix=1; shift ;;
58 -6* | --64) build64=1; shift ;;
57 --sysconfdir=*) echo "ignored option: --sysconfdir"; shift ;; 59 --sysconfdir=*) echo "ignored option: --sysconfdir"; shift ;;
58 --localstatedir=*) echo "ignored option: --localstatedir"; shift ;; 60 --localstatedir=*) echo "ignored option: --localstatedir"; shift ;;
59 *) echo "unknown option: $1"; echo "$0 --help for help"; exit 1 ;; 61 *) echo "unknown option: $1"; echo "$0 --help for help"; exit 1 ;;
@@ -78,6 +80,10 @@ if test "$gcc" -eq 1 && ($cc -c $cflags $test.c) 2>/dev/null; then
78 CC="$cc" 80 CC="$cc"
79 SFLAGS="${CFLAGS-"-O3"} -fPIC" 81 SFLAGS="${CFLAGS-"-O3"} -fPIC"
80 CFLAGS="${CFLAGS-"-O3"}" 82 CFLAGS="${CFLAGS-"-O3"}"
83 if test $build64 -eq 1; then
84 CFLAGS="${CFLAGS} -m64"
85 SFLAGS="${SFLAGS} -m64"
86 fi
81 if test "${ZLIBGCCWARN}" = "YES"; then 87 if test "${ZLIBGCCWARN}" = "YES"; then
82 CFLAGS="${CFLAGS} -Wall -Wextra -pedantic" 88 CFLAGS="${CFLAGS} -Wall -Wextra -pedantic"
83 fi 89 fi
@@ -191,7 +197,7 @@ if test $shared -eq 1; then
191 echo Checking for shared library support... 197 echo Checking for shared library support...
192 # we must test in two steps (cc then ld), required at least on SunOS 4.x 198 # we must test in two steps (cc then ld), required at least on SunOS 4.x
193 if test "`($CC -w -c $SFLAGS $test.c) 2>&1`" = "" && 199 if test "`($CC -w -c $SFLAGS $test.c) 2>&1`" = "" &&
194 test "`($LDSHARED -o $test$shared_ext $test.o) 2>&1`" = ""; then 200 test "`($LDSHARED $SFLAGS -o $test$shared_ext $test.o) 2>&1`" = ""; then
195 echo Building shared library $SHAREDLIBV with $CC. 201 echo Building shared library $SHAREDLIBV with $CC.
196 elif test -z "$old_cc" -a -z "$old_cflags"; then 202 elif test -z "$old_cc" -a -z "$old_cflags"; then
197 echo No shared library support. 203 echo No shared library support.
@@ -199,8 +205,8 @@ if test $shared -eq 1; then
199 else 205 else
200 echo Tested $CC -w -c $SFLAGS $test.c 206 echo Tested $CC -w -c $SFLAGS $test.c
201 $CC -w -c $SFLAGS $test.c 207 $CC -w -c $SFLAGS $test.c
202 echo Tested $LDSHARED -o $test$shared_ext $test.o 208 echo Tested $LDSHARED $SFLAGS -o $test$shared_ext $test.o
203 $LDSHARED -o $test$shared_ext $test.o 209 $LDSHARED $SFLAGS -o $test$shared_ext $test.o
204 echo 'No shared library support; try without defining CC and CFLAGS' 210 echo 'No shared library support; try without defining CC and CFLAGS'
205 shared=0; 211 shared=0;
206 fi 212 fi
diff --git a/contrib/contrib/minizip/ioapi.h b/contrib/contrib/minizip/ioapi.h
new file mode 100644
index 0000000..e0e78ce
--- /dev/null
+++ b/contrib/contrib/minizip/ioapi.h
@@ -0,0 +1,196 @@
1/* ioapi.h -- IO base function header for compress/uncompress .zip
2 part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html )
3
4 Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html )
5
6 Modifications for Zip64 support
7 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com )
8
9 For more info read MiniZip_info.txt
10
11 Changes
12
13 Oct-2009 - Defined ZPOS64_T to fpos_t on windows and u_int64_t on linux. (might need to find a better why for this)
14 Oct-2009 - Change to fseeko64, ftello64 and fopen64 so large files would work on linux.
15 More if/def section may be needed to support other platforms
16 Oct-2009 - Defined fxxxx64 calls to normal fopen/ftell/fseek so they would compile on windows.
17 (but you should use iowin32.c for windows instead)
18
19*/
20
21#ifndef _ZLIBIOAPI64_H
22#define _ZLIBIOAPI64_H
23
24#include "zlib.h"
25
26#ifndef _WIN32
27
28 // Linux needs this to support file operation on files larger then 4+GB
29 // But might need better if/def to select just the platforms that needs them.
30
31 #ifndef __USE_FILE_OFFSET64
32 #define __USE_FILE_OFFSET64
33 #endif
34 #ifndef __USE_LARGEFILE64
35 #define __USE_LARGEFILE64
36 #endif
37 #ifndef _LARGEFILE64_SOURCE
38 #define _LARGEFILE64_SOURCE
39 #endif
40 #ifndef _FILE_OFFSET_BIT
41 #define _FILE_OFFSET_BIT 64
42 #endif
43#endif
44
45#include <stdio.h>
46#include <stdlib.h>
47
48
49#ifdef _MSC_VER
50 #define fopen64 fopen
51 #if _MSC_VER >= 1400
52 #define ftello64 _ftelli64
53 #define fseeko64 _fseeki64
54 #else // old MSC
55 #define ftello64 ftell
56 #define fseeko64 fseek
57 #endif
58#endif
59
60/*
61#ifndef ZPOS64_T
62 #ifdef _WIN32
63 #define ZPOS64_T fpos_t
64 #else
65 #include <stdint.h>
66 #define ZPOS64_T uint64_t
67 #endif
68#endif
69*/
70
71#ifdef HAVE_MINIZIP64_CONF_H
72#include "mz64conf.h"
73#endif
74
75/* a type choosen by DEFINE */
76#ifdef HAVE_64BIT_INT_CUSTOM
77typedef 64BIT_INT_CUSTOM_TYPE ZPOS64_T;
78#else
79#ifdef HAS_STDINT_H
80#include "stdint.h"
81typedef uint64_t ZPOS64_T;
82#else
83
84
85#if defined(_MSC_VER) || defined(__BORLANDC__)
86typedef unsigned __int64 ZPOS64_T;
87#else
88typedef unsigned long long int ZPOS64_T;
89#endif
90#endif
91#endif
92
93
94
95#ifdef __cplusplus
96extern "C" {
97#endif
98
99
100#define ZLIB_FILEFUNC_SEEK_CUR (1)
101#define ZLIB_FILEFUNC_SEEK_END (2)
102#define ZLIB_FILEFUNC_SEEK_SET (0)
103
104#define ZLIB_FILEFUNC_MODE_READ (1)
105#define ZLIB_FILEFUNC_MODE_WRITE (2)
106#define ZLIB_FILEFUNC_MODE_READWRITEFILTER (3)
107
108#define ZLIB_FILEFUNC_MODE_EXISTING (4)
109#define ZLIB_FILEFUNC_MODE_CREATE (8)
110
111
112#ifndef ZCALLBACK
113 #if (defined(WIN32) || defined(_WIN32) || defined (WINDOWS) || defined (_WINDOWS)) && defined(CALLBACK) && defined (USEWINDOWS_CALLBACK)
114 #define ZCALLBACK CALLBACK
115 #else
116 #define ZCALLBACK
117 #endif
118#endif
119
120
121
122
123typedef voidpf (ZCALLBACK *open_file_func) OF((voidpf opaque, const char* filename, int mode));
124typedef uLong (ZCALLBACK *read_file_func) OF((voidpf opaque, voidpf stream, void* buf, uLong size));
125typedef uLong (ZCALLBACK *write_file_func) OF((voidpf opaque, voidpf stream, const void* buf, uLong size));
126typedef int (ZCALLBACK *close_file_func) OF((voidpf opaque, voidpf stream));
127typedef int (ZCALLBACK *testerror_file_func) OF((voidpf opaque, voidpf stream));
128
129typedef long (ZCALLBACK *tell_file_func) OF((voidpf opaque, voidpf stream));
130typedef long (ZCALLBACK *seek_file_func) OF((voidpf opaque, voidpf stream, uLong offset, int origin));
131
132
133/* here is the "old" 32 bits structure structure */
134typedef struct zlib_filefunc_def_s
135{
136 open_file_func zopen_file;
137 read_file_func zread_file;
138 write_file_func zwrite_file;
139 tell_file_func ztell_file;
140 seek_file_func zseek_file;
141 close_file_func zclose_file;
142 testerror_file_func zerror_file;
143 voidpf opaque;
144} zlib_filefunc_def;
145
146typedef ZPOS64_T (ZCALLBACK *tell64_file_func) OF((voidpf opaque, voidpf stream));
147typedef long (ZCALLBACK *seek64_file_func) OF((voidpf opaque, voidpf stream, ZPOS64_T offset, int origin));
148typedef voidpf (ZCALLBACK *open64_file_func) OF((voidpf opaque, const void* filename, int mode));
149
150typedef struct zlib_filefunc64_def_s
151{
152 open64_file_func zopen64_file;
153 read_file_func zread_file;
154 write_file_func zwrite_file;
155 tell64_file_func ztell64_file;
156 seek64_file_func zseek64_file;
157 close_file_func zclose_file;
158 testerror_file_func zerror_file;
159 voidpf opaque;
160} zlib_filefunc64_def;
161
162void fill_fopen64_filefunc OF((zlib_filefunc64_def* pzlib_filefunc_def));
163void fill_fopen_filefunc OF((zlib_filefunc_def* pzlib_filefunc_def));
164
165/* now internal definition, only for zip.c and unzip.h */
166typedef struct zlib_filefunc64_32_def_s
167{
168 zlib_filefunc64_def zfile_func64;
169 open_file_func zopen32_file;
170 tell_file_func ztell32_file;
171 seek_file_func zseek32_file;
172} zlib_filefunc64_32_def;
173
174
175#define ZREAD64(filefunc,filestream,buf,size) ((*((filefunc).zfile_func64.zread_file)) ((filefunc).zfile_func64.opaque,filestream,buf,size))
176#define ZWRITE64(filefunc,filestream,buf,size) ((*((filefunc).zfile_func64.zwrite_file)) ((filefunc).zfile_func64.opaque,filestream,buf,size))
177//#define ZTELL64(filefunc,filestream) ((*((filefunc).ztell64_file)) ((filefunc).opaque,filestream))
178//#define ZSEEK64(filefunc,filestream,pos,mode) ((*((filefunc).zseek64_file)) ((filefunc).opaque,filestream,pos,mode))
179#define ZCLOSE64(filefunc,filestream) ((*((filefunc).zfile_func64.zclose_file)) ((filefunc).zfile_func64.opaque,filestream))
180#define ZERROR64(filefunc,filestream) ((*((filefunc).zfile_func64.zerror_file)) ((filefunc).zfile_func64.opaque,filestream))
181
182voidpf call_zopen64 OF((const zlib_filefunc64_32_def* pfilefunc,const void*filename,int mode));
183long call_zseek64 OF((const zlib_filefunc64_32_def* pfilefunc,voidpf filestream, ZPOS64_T offset, int origin));
184ZPOS64_T call_ztell64 OF((const zlib_filefunc64_32_def* pfilefunc,voidpf filestream));
185
186void fill_zlib_filefunc64_32_def_from_filefunc32(zlib_filefunc64_32_def* p_filefunc64_32,const zlib_filefunc_def* p_filefunc32);
187
188#define ZOPEN64(filefunc,filename,mode) (call_zopen64((&(filefunc)),(filename),(mode)))
189#define ZTELL64(filefunc,filestream) (call_ztell64((&(filefunc)),(filestream)))
190#define ZSEEK64(filefunc,filestream,pos,mode) (call_zseek64((&(filefunc)),(filestream),(pos),(mode)))
191
192#ifdef __cplusplus
193}
194#endif
195
196#endif
diff --git a/contrib/contrib/minizip/iowin32.c b/contrib/contrib/minizip/iowin32.c
new file mode 100644
index 0000000..2b69466
--- /dev/null
+++ b/contrib/contrib/minizip/iowin32.c
@@ -0,0 +1,389 @@
1/* iowin32.c -- IO base function header for compress/uncompress .zip
2 Version 1.1, January 7th, 2010
3 part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html )
4
5 Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html )
6
7 Modifications for Zip64 support
8 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com )
9
10 For more info read MiniZip_info.txt
11
12*/
13
14#include <stdlib.h>
15
16#include "zlib.h"
17#include "ioapi.h"
18#include "iowin32.h"
19
20#ifndef INVALID_HANDLE_VALUE
21#define INVALID_HANDLE_VALUE (0xFFFFFFFF)
22#endif
23
24#ifndef INVALID_SET_FILE_POINTER
25#define INVALID_SET_FILE_POINTER ((DWORD)-1)
26#endif
27
28voidpf ZCALLBACK win32_open_file_func OF((voidpf opaque, const char* filename, int mode));
29uLong ZCALLBACK win32_read_file_func OF((voidpf opaque, voidpf stream, void* buf, uLong size));
30uLong ZCALLBACK win32_write_file_func OF((voidpf opaque, voidpf stream, const void* buf, uLong size));
31ZPOS64_T ZCALLBACK win32_tell64_file_func OF((voidpf opaque, voidpf stream));
32long ZCALLBACK win32_seek64_file_func OF((voidpf opaque, voidpf stream, ZPOS64_T offset, int origin));
33int ZCALLBACK win32_close_file_func OF((voidpf opaque, voidpf stream));
34int ZCALLBACK win32_error_file_func OF((voidpf opaque, voidpf stream));
35
36typedef struct
37{
38 HANDLE hf;
39 int error;
40} WIN32FILE_IOWIN;
41
42
43static void win32_translate_open_mode(int mode,
44 DWORD* lpdwDesiredAccess,
45 DWORD* lpdwCreationDisposition,
46 DWORD* lpdwShareMode,
47 DWORD* lpdwFlagsAndAttributes)
48{
49 *lpdwDesiredAccess = *lpdwShareMode = *lpdwFlagsAndAttributes = *lpdwCreationDisposition = 0;
50
51 if ((mode & ZLIB_FILEFUNC_MODE_READWRITEFILTER)==ZLIB_FILEFUNC_MODE_READ)
52 {
53 *lpdwDesiredAccess = GENERIC_READ;
54 *lpdwCreationDisposition = OPEN_EXISTING;
55 *lpdwShareMode = FILE_SHARE_READ;
56 }
57 else if (mode & ZLIB_FILEFUNC_MODE_EXISTING)
58 {
59 *lpdwDesiredAccess = GENERIC_WRITE | GENERIC_READ;
60 *lpdwCreationDisposition = OPEN_EXISTING;
61 }
62 else if (mode & ZLIB_FILEFUNC_MODE_CREATE)
63 {
64 *lpdwDesiredAccess = GENERIC_WRITE | GENERIC_READ;
65 *lpdwCreationDisposition = CREATE_ALWAYS;
66 }
67}
68
69static voidpf win32_build_iowin(HANDLE hFile)
70{
71 voidpf ret=NULL;
72
73 if ((hFile != NULL) && (hFile != INVALID_HANDLE_VALUE))
74 {
75 WIN32FILE_IOWIN w32fiow;
76 w32fiow.hf = hFile;
77 w32fiow.error = 0;
78 ret = malloc(sizeof(WIN32FILE_IOWIN));
79
80 if (ret==NULL)
81 CloseHandle(hFile);
82 else
83 *((WIN32FILE_IOWIN*)ret) = w32fiow;
84 }
85 return ret;
86}
87
88voidpf ZCALLBACK win32_open64_file_func (voidpf opaque,const void* filename,int mode)
89{
90 const char* mode_fopen = NULL;
91 DWORD dwDesiredAccess,dwCreationDisposition,dwShareMode,dwFlagsAndAttributes ;
92 HANDLE hFile = NULL;
93
94 win32_translate_open_mode(mode,&dwDesiredAccess,&dwCreationDisposition,&dwShareMode,&dwFlagsAndAttributes);
95
96 if ((filename!=NULL) && (dwDesiredAccess != 0))
97 hFile = CreateFile((LPCTSTR)filename, dwDesiredAccess, dwShareMode, NULL, dwCreationDisposition, dwFlagsAndAttributes, NULL);
98
99 return win32_build_iowin(hFile);
100}
101
102
103voidpf ZCALLBACK win32_open64_file_funcA (voidpf opaque,const void* filename,int mode)
104{
105 const char* mode_fopen = NULL;
106 DWORD dwDesiredAccess,dwCreationDisposition,dwShareMode,dwFlagsAndAttributes ;
107 HANDLE hFile = NULL;
108
109 win32_translate_open_mode(mode,&dwDesiredAccess,&dwCreationDisposition,&dwShareMode,&dwFlagsAndAttributes);
110
111 if ((filename!=NULL) && (dwDesiredAccess != 0))
112 hFile = CreateFileA((LPCSTR)filename, dwDesiredAccess, dwShareMode, NULL, dwCreationDisposition, dwFlagsAndAttributes, NULL);
113
114 return win32_build_iowin(hFile);
115}
116
117
118voidpf ZCALLBACK win32_open64_file_funcW (voidpf opaque,const void* filename,int mode)
119{
120 const char* mode_fopen = NULL;
121 DWORD dwDesiredAccess,dwCreationDisposition,dwShareMode,dwFlagsAndAttributes ;
122 HANDLE hFile = NULL;
123
124 win32_translate_open_mode(mode,&dwDesiredAccess,&dwCreationDisposition,&dwShareMode,&dwFlagsAndAttributes);
125
126 if ((filename!=NULL) && (dwDesiredAccess != 0))
127 hFile = CreateFileW((LPCWSTR)filename, dwDesiredAccess, dwShareMode, NULL, dwCreationDisposition, dwFlagsAndAttributes, NULL);
128
129 return win32_build_iowin(hFile);
130}
131
132
133voidpf ZCALLBACK win32_open_file_func (voidpf opaque,const char* filename,int mode)
134{
135 const char* mode_fopen = NULL;
136 DWORD dwDesiredAccess,dwCreationDisposition,dwShareMode,dwFlagsAndAttributes ;
137 HANDLE hFile = NULL;
138
139 win32_translate_open_mode(mode,&dwDesiredAccess,&dwCreationDisposition,&dwShareMode,&dwFlagsAndAttributes);
140
141 if ((filename!=NULL) && (dwDesiredAccess != 0))
142 hFile = CreateFile((LPCTSTR)filename, dwDesiredAccess, dwShareMode, NULL, dwCreationDisposition, dwFlagsAndAttributes, NULL);
143
144 return win32_build_iowin(hFile);
145}
146
147
148uLong ZCALLBACK win32_read_file_func (voidpf opaque, voidpf stream, void* buf,uLong size)
149{
150 uLong ret=0;
151 HANDLE hFile = NULL;
152 if (stream!=NULL)
153 hFile = ((WIN32FILE_IOWIN*)stream) -> hf;
154
155 if (hFile != NULL)
156 {
157 if (!ReadFile(hFile, buf, size, &ret, NULL))
158 {
159 DWORD dwErr = GetLastError();
160 if (dwErr == ERROR_HANDLE_EOF)
161 dwErr = 0;
162 ((WIN32FILE_IOWIN*)stream) -> error=(int)dwErr;
163 }
164 }
165
166 return ret;
167}
168
169
170uLong ZCALLBACK win32_write_file_func (voidpf opaque,voidpf stream,const void* buf,uLong size)
171{
172 uLong ret=0;
173 HANDLE hFile = NULL;
174 if (stream!=NULL)
175 hFile = ((WIN32FILE_IOWIN*)stream) -> hf;
176
177 if (hFile != NULL)
178 {
179 if (!WriteFile(hFile, buf, size, &ret, NULL))
180 {
181 DWORD dwErr = GetLastError();
182 if (dwErr == ERROR_HANDLE_EOF)
183 dwErr = 0;
184 ((WIN32FILE_IOWIN*)stream) -> error=(int)dwErr;
185 }
186 }
187
188 return ret;
189}
190
191long ZCALLBACK win32_tell_file_func (voidpf opaque,voidpf stream)
192{
193 long ret=-1;
194 HANDLE hFile = NULL;
195 if (stream!=NULL)
196 hFile = ((WIN32FILE_IOWIN*)stream) -> hf;
197 if (hFile != NULL)
198 {
199 DWORD dwSet = SetFilePointer(hFile, 0, NULL, FILE_CURRENT);
200 if (dwSet == INVALID_SET_FILE_POINTER)
201 {
202 DWORD dwErr = GetLastError();
203 ((WIN32FILE_IOWIN*)stream) -> error=(int)dwErr;
204 ret = -1;
205 }
206 else
207 ret=(long)dwSet;
208 }
209 return ret;
210}
211
212ZPOS64_T ZCALLBACK win32_tell64_file_func (voidpf opaque, voidpf stream)
213{
214 ZPOS64_T ret= (ZPOS64_T)-1;
215 HANDLE hFile = NULL;
216 if (stream!=NULL)
217 hFile = ((WIN32FILE_IOWIN*)stream)->hf;
218
219 if (hFile)
220 {
221 LARGE_INTEGER li;
222 li.QuadPart = 0;
223 li.u.LowPart = SetFilePointer(hFile, li.u.LowPart, &li.u.HighPart, FILE_CURRENT);
224 if ( (li.LowPart == 0xFFFFFFFF) && (GetLastError() != NO_ERROR))
225 {
226 DWORD dwErr = GetLastError();
227 ((WIN32FILE_IOWIN*)stream) -> error=(int)dwErr;
228 ret = (ZPOS64_T)-1;
229 }
230 else
231 ret=li.QuadPart;
232 }
233 return ret;
234}
235
236
237long ZCALLBACK win32_seek_file_func (voidpf opaque,voidpf stream,uLong offset,int origin)
238{
239 DWORD dwMoveMethod=0xFFFFFFFF;
240 HANDLE hFile = NULL;
241
242 long ret=-1;
243 if (stream!=NULL)
244 hFile = ((WIN32FILE_IOWIN*)stream) -> hf;
245 switch (origin)
246 {
247 case ZLIB_FILEFUNC_SEEK_CUR :
248 dwMoveMethod = FILE_CURRENT;
249 break;
250 case ZLIB_FILEFUNC_SEEK_END :
251 dwMoveMethod = FILE_END;
252 break;
253 case ZLIB_FILEFUNC_SEEK_SET :
254 dwMoveMethod = FILE_BEGIN;
255 break;
256 default: return -1;
257 }
258
259 if (hFile != NULL)
260 {
261 DWORD dwSet = SetFilePointer(hFile, offset, NULL, dwMoveMethod);
262 if (dwSet == INVALID_SET_FILE_POINTER)
263 {
264 DWORD dwErr = GetLastError();
265 ((WIN32FILE_IOWIN*)stream) -> error=(int)dwErr;
266 ret = -1;
267 }
268 else
269 ret=0;
270 }
271 return ret;
272}
273
274long ZCALLBACK win32_seek64_file_func (voidpf opaque, voidpf stream,ZPOS64_T offset,int origin)
275{
276 DWORD dwMoveMethod=0xFFFFFFFF;
277 HANDLE hFile = NULL;
278 long ret=-1;
279
280 if (stream!=NULL)
281 hFile = ((WIN32FILE_IOWIN*)stream)->hf;
282
283 switch (origin)
284 {
285 case ZLIB_FILEFUNC_SEEK_CUR :
286 dwMoveMethod = FILE_CURRENT;
287 break;
288 case ZLIB_FILEFUNC_SEEK_END :
289 dwMoveMethod = FILE_END;
290 break;
291 case ZLIB_FILEFUNC_SEEK_SET :
292 dwMoveMethod = FILE_BEGIN;
293 break;
294 default: return -1;
295 }
296
297 if (hFile)
298 {
299 LARGE_INTEGER* li = (LARGE_INTEGER*)&offset;
300 DWORD dwSet = SetFilePointer(hFile, li->u.LowPart, &li->u.HighPart, dwMoveMethod);
301 if (dwSet == INVALID_SET_FILE_POINTER)
302 {
303 DWORD dwErr = GetLastError();
304 ((WIN32FILE_IOWIN*)stream) -> error=(int)dwErr;
305 ret = -1;
306 }
307 else
308 ret=0;
309 }
310 return ret;
311}
312
313int ZCALLBACK win32_close_file_func (voidpf opaque, voidpf stream)
314{
315 int ret=-1;
316
317 if (stream!=NULL)
318 {
319 HANDLE hFile;
320 hFile = ((WIN32FILE_IOWIN*)stream) -> hf;
321 if (hFile != NULL)
322 {
323 CloseHandle(hFile);
324 ret=0;
325 }
326 free(stream);
327 }
328 return ret;
329}
330
331int ZCALLBACK win32_error_file_func (voidpf opaque,voidpf stream)
332{
333 int ret=-1;
334 if (stream!=NULL)
335 {
336 ret = ((WIN32FILE_IOWIN*)stream) -> error;
337 }
338 return ret;
339}
340
341extern void ZEXPORT fill_win32_filefunc (zlib_filefunc_def* pzlib_filefunc_def)
342{
343 pzlib_filefunc_def->zopen_file = win32_open_file_func;
344 pzlib_filefunc_def->zread_file = win32_read_file_func;
345 pzlib_filefunc_def->zwrite_file = win32_write_file_func;
346 pzlib_filefunc_def->ztell_file = win32_tell_file_func;
347 pzlib_filefunc_def->zseek_file = win32_seek_file_func;
348 pzlib_filefunc_def->zclose_file = win32_close_file_func;
349 pzlib_filefunc_def->zerror_file = win32_error_file_func;
350 pzlib_filefunc_def->opaque = NULL;
351}
352
353extern void ZEXPORT fill_win32_filefunc64(zlib_filefunc64_def* pzlib_filefunc_def)
354{
355 pzlib_filefunc_def->zopen64_file = win32_open64_file_func;
356 pzlib_filefunc_def->zread_file = win32_read_file_func;
357 pzlib_filefunc_def->zwrite_file = win32_write_file_func;
358 pzlib_filefunc_def->ztell64_file = win32_tell64_file_func;
359 pzlib_filefunc_def->zseek64_file = win32_seek64_file_func;
360 pzlib_filefunc_def->zclose_file = win32_close_file_func;
361 pzlib_filefunc_def->zerror_file = win32_error_file_func;
362 pzlib_filefunc_def->opaque = NULL;
363}
364
365
366extern void ZEXPORT fill_win32_filefunc64A(zlib_filefunc64_def* pzlib_filefunc_def)
367{
368 pzlib_filefunc_def->zopen64_file = win32_open64_file_funcA;
369 pzlib_filefunc_def->zread_file = win32_read_file_func;
370 pzlib_filefunc_def->zwrite_file = win32_write_file_func;
371 pzlib_filefunc_def->ztell64_file = win32_tell64_file_func;
372 pzlib_filefunc_def->zseek64_file = win32_seek64_file_func;
373 pzlib_filefunc_def->zclose_file = win32_close_file_func;
374 pzlib_filefunc_def->zerror_file = win32_error_file_func;
375 pzlib_filefunc_def->opaque = NULL;
376}
377
378
379extern void ZEXPORT fill_win32_filefunc64W(zlib_filefunc64_def* pzlib_filefunc_def)
380{
381 pzlib_filefunc_def->zopen64_file = win32_open64_file_funcW;
382 pzlib_filefunc_def->zread_file = win32_read_file_func;
383 pzlib_filefunc_def->zwrite_file = win32_write_file_func;
384 pzlib_filefunc_def->ztell64_file = win32_tell64_file_func;
385 pzlib_filefunc_def->zseek64_file = win32_seek64_file_func;
386 pzlib_filefunc_def->zclose_file = win32_close_file_func;
387 pzlib_filefunc_def->zerror_file = win32_error_file_func;
388 pzlib_filefunc_def->opaque = NULL;
389}
diff --git a/contrib/contrib/minizip/iowin32.h b/contrib/contrib/minizip/iowin32.h
new file mode 100644
index 0000000..3d5827f
--- /dev/null
+++ b/contrib/contrib/minizip/iowin32.h
@@ -0,0 +1,28 @@
1/* iowin32.h -- IO base function header for compress/uncompress .zip
2 Version 1.1, January 7th, 2010
3 part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html )
4
5 Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html )
6
7 Modifications for Zip64 support
8 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com )
9
10 For more info read MiniZip_info.txt
11
12*/
13
14#include <windows.h>
15
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20
21extern void ZEXPORT fill_win32_filefunc OF((zlib_filefunc_def* pzlib_filefunc_def));
22extern void ZEXPORT fill_win32_filefunc64 OF((zlib_filefunc64_def* pzlib_filefunc_def));
23extern void ZEXPORT fill_win32_filefunc64A OF((zlib_filefunc64_def* pzlib_filefunc_def));
24extern void ZEXPORT fill_win32_filefunc64W OF((zlib_filefunc64_def* pzlib_filefunc_def));
25
26#ifdef __cplusplus
27}
28#endif
diff --git a/contrib/contrib/minizip/miniunz.c b/contrib/contrib/minizip/miniunz.c
new file mode 100644
index 0000000..6b03e1f
--- /dev/null
+++ b/contrib/contrib/minizip/miniunz.c
@@ -0,0 +1,649 @@
1/*
2 miniunz.c
3 Version 1.1, January 7th, 2010
4 sample part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html )
5
6 Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html )
7
8 Modifications of Unzip for Zip64
9 Copyright (C) 2007-2008 Even Rouault
10
11 Modifications for Zip64 support on both zip and unzip
12 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com )
13*/
14
15#include "unzip.h"
16
17#ifndef _WIN32
18 #ifndef __USE_FILE_OFFSET64
19 #define __USE_FILE_OFFSET64
20 #endif
21 #ifndef __USE_LARGEFILE64
22 #define __USE_LARGEFILE64
23 #endif
24 #ifndef _LARGEFILE64_SOURCE
25 #define _LARGEFILE64_SOURCE
26 #endif
27 #ifndef _FILE_OFFSET_BIT
28 #define _FILE_OFFSET_BIT 64
29 #endif
30#endif
31
32#include <stdio.h>
33#include <stdlib.h>
34#include <string.h>
35#include <time.h>
36#include <errno.h>
37#include <fcntl.h>
38
39#ifdef unix
40# include <unistd.h>
41# include <utime.h>
42#else
43# include <direct.h>
44# include <io.h>
45#endif
46
47
48#define CASESENSITIVITY (0)
49#define WRITEBUFFERSIZE (8192)
50#define MAXFILENAME (256)
51
52#ifdef _WIN32
53#define USEWIN32IOAPI
54#include "iowin32.h"
55#endif
56/*
57 mini unzip, demo of unzip package
58
59 usage :
60 Usage : miniunz [-exvlo] file.zip [file_to_extract] [-d extractdir]
61
62 list the file in the zipfile, and print the content of FILE_ID.ZIP or README.TXT
63 if it exists
64*/
65
66
67/* change_file_date : change the date/time of a file
68 filename : the filename of the file where date/time must be modified
69 dosdate : the new date at the MSDos format (4 bytes)
70 tmu_date : the SAME new date at the tm_unz format */
71void change_file_date(filename,dosdate,tmu_date)
72 const char *filename;
73 uLong dosdate;
74 tm_unz tmu_date;
75{
76#ifdef _WIN32
77 HANDLE hFile;
78 FILETIME ftm,ftLocal,ftCreate,ftLastAcc,ftLastWrite;
79
80 hFile = CreateFileA(filename,GENERIC_READ | GENERIC_WRITE,
81 0,NULL,OPEN_EXISTING,0,NULL);
82 GetFileTime(hFile,&ftCreate,&ftLastAcc,&ftLastWrite);
83 DosDateTimeToFileTime((WORD)(dosdate>>16),(WORD)dosdate,&ftLocal);
84 LocalFileTimeToFileTime(&ftLocal,&ftm);
85 SetFileTime(hFile,&ftm,&ftLastAcc,&ftm);
86 CloseHandle(hFile);
87#else
88#ifdef unix
89 struct utimbuf ut;
90 struct tm newdate;
91 newdate.tm_sec = tmu_date.tm_sec;
92 newdate.tm_min=tmu_date.tm_min;
93 newdate.tm_hour=tmu_date.tm_hour;
94 newdate.tm_mday=tmu_date.tm_mday;
95 newdate.tm_mon=tmu_date.tm_mon;
96 if (tmu_date.tm_year > 1900)
97 newdate.tm_year=tmu_date.tm_year - 1900;
98 else
99 newdate.tm_year=tmu_date.tm_year ;
100 newdate.tm_isdst=-1;
101
102 ut.actime=ut.modtime=mktime(&newdate);
103 utime(filename,&ut);
104#endif
105#endif
106}
107
108
109/* mymkdir and change_file_date are not 100 % portable
110 As I don't know well Unix, I wait feedback for the unix portion */
111
112int mymkdir(dirname)
113 const char* dirname;
114{
115 int ret=0;
116#ifdef _WIN32
117 ret = _mkdir(dirname);
118#else
119#ifdef unix
120 ret = mkdir (dirname,0775);
121#endif
122#endif
123 return ret;
124}
125
126int makedir (newdir)
127 char *newdir;
128{
129 char *buffer ;
130 char *p;
131 int len = (int)strlen(newdir);
132
133 if (len <= 0)
134 return 0;
135
136 buffer = (char*)malloc(len+1);
137 if (buffer==NULL)
138 {
139 printf("Error allocating memory\n");
140 return UNZ_INTERNALERROR;
141 }
142 strcpy(buffer,newdir);
143
144 if (buffer[len-1] == '/') {
145 buffer[len-1] = '\0';
146 }
147 if (mymkdir(buffer) == 0)
148 {
149 free(buffer);
150 return 1;
151 }
152
153 p = buffer+1;
154 while (1)
155 {
156 char hold;
157
158 while(*p && *p != '\\' && *p != '/')
159 p++;
160 hold = *p;
161 *p = 0;
162 if ((mymkdir(buffer) == -1) && (errno == ENOENT))
163 {
164 printf("couldn't create directory %s\n",buffer);
165 free(buffer);
166 return 0;
167 }
168 if (hold == 0)
169 break;
170 *p++ = hold;
171 }
172 free(buffer);
173 return 1;
174}
175
176void do_banner()
177{
178 printf("MiniUnz 1.01b, demo of zLib + Unz package written by Gilles Vollant\n");
179 printf("more info at http://www.winimage.com/zLibDll/unzip.html\n\n");
180}
181
182void do_help()
183{
184 printf("Usage : miniunz [-e] [-x] [-v] [-l] [-o] [-p password] file.zip [file_to_extr.] [-d extractdir]\n\n" \
185 " -e Extract without pathname (junk paths)\n" \
186 " -x Extract with pathname\n" \
187 " -v list files\n" \
188 " -l list files\n" \
189 " -d directory to extract into\n" \
190 " -o overwrite files without prompting\n" \
191 " -p extract crypted file using password\n\n");
192}
193
194void Display64BitsSize(ZPOS64_T n, int size_char)
195{
196 /* to avoid compatibility problem , we do here the conversion */
197 char number[21];
198 int offset=19;
199 int pos_string = 19;
200 number[20]=0;
201 for (;;) {
202 number[offset]=(char)((n%10)+'0');
203 if (number[offset] != '0')
204 pos_string=offset;
205 n/=10;
206 if (offset==0)
207 break;
208 offset--;
209 }
210 {
211 int size_display_string = 19-pos_string;
212 while (size_char > size_display_string)
213 {
214 size_char--;
215 printf(" ");
216 }
217 }
218
219 printf("%s",&number[pos_string]);
220}
221
222int do_list(uf)
223 unzFile uf;
224{
225 uLong i;
226 unz_global_info64 gi;
227 int err;
228
229 err = unzGetGlobalInfo64(uf,&gi);
230 if (err!=UNZ_OK)
231 printf("error %d with zipfile in unzGetGlobalInfo \n",err);
232 printf(" Length Method Size Ratio Date Time CRC-32 Name\n");
233 printf(" ------ ------ ---- ----- ---- ---- ------ ----\n");
234 for (i=0;i<gi.number_entry;i++)
235 {
236 char filename_inzip[256];
237 unz_file_info64 file_info;
238 uLong ratio=0;
239 const char *string_method;
240 char charCrypt=' ';
241 err = unzGetCurrentFileInfo64(uf,&file_info,filename_inzip,sizeof(filename_inzip),NULL,0,NULL,0);
242 if (err!=UNZ_OK)
243 {
244 printf("error %d with zipfile in unzGetCurrentFileInfo\n",err);
245 break;
246 }
247 if (file_info.uncompressed_size>0)
248 ratio = (uLong)((file_info.compressed_size*100)/file_info.uncompressed_size);
249
250 /* display a '*' if the file is crypted */
251 if ((file_info.flag & 1) != 0)
252 charCrypt='*';
253
254 if (file_info.compression_method==0)
255 string_method="Stored";
256 else
257 if (file_info.compression_method==Z_DEFLATED)
258 {
259 uInt iLevel=(uInt)((file_info.flag & 0x6)/2);
260 if (iLevel==0)
261 string_method="Defl:N";
262 else if (iLevel==1)
263 string_method="Defl:X";
264 else if ((iLevel==2) || (iLevel==3))
265 string_method="Defl:F"; /* 2:fast , 3 : extra fast*/
266 }
267 else
268 if (file_info.compression_method==Z_BZIP2ED)
269 {
270 string_method="BZip2 ";
271 }
272 else
273 string_method="Unkn. ";
274
275 Display64BitsSize(file_info.uncompressed_size,7);
276 printf(" %6s%c",string_method,charCrypt);
277 Display64BitsSize(file_info.compressed_size,7);
278 printf(" %3lu%% %2.2lu-%2.2lu-%2.2lu %2.2lu:%2.2lu %8.8lx %s\n",
279 ratio,
280 (uLong)file_info.tmu_date.tm_mon + 1,
281 (uLong)file_info.tmu_date.tm_mday,
282 (uLong)file_info.tmu_date.tm_year % 100,
283 (uLong)file_info.tmu_date.tm_hour,(uLong)file_info.tmu_date.tm_min,
284 (uLong)file_info.crc,filename_inzip);
285 if ((i+1)<gi.number_entry)
286 {
287 err = unzGoToNextFile(uf);
288 if (err!=UNZ_OK)
289 {
290 printf("error %d with zipfile in unzGoToNextFile\n",err);
291 break;
292 }
293 }
294 }
295
296 return 0;
297}
298
299
300int do_extract_currentfile(uf,popt_extract_without_path,popt_overwrite,password)
301 unzFile uf;
302 const int* popt_extract_without_path;
303 int* popt_overwrite;
304 const char* password;
305{
306 char filename_inzip[256];
307 char* filename_withoutpath;
308 char* p;
309 int err=UNZ_OK;
310 FILE *fout=NULL;
311 void* buf;
312 uInt size_buf;
313
314 unz_file_info64 file_info;
315 uLong ratio=0;
316 err = unzGetCurrentFileInfo64(uf,&file_info,filename_inzip,sizeof(filename_inzip),NULL,0,NULL,0);
317
318 if (err!=UNZ_OK)
319 {
320 printf("error %d with zipfile in unzGetCurrentFileInfo\n",err);
321 return err;
322 }
323
324 size_buf = WRITEBUFFERSIZE;
325 buf = (void*)malloc(size_buf);
326 if (buf==NULL)
327 {
328 printf("Error allocating memory\n");
329 return UNZ_INTERNALERROR;
330 }
331
332 p = filename_withoutpath = filename_inzip;
333 while ((*p) != '\0')
334 {
335 if (((*p)=='/') || ((*p)=='\\'))
336 filename_withoutpath = p+1;
337 p++;
338 }
339
340 if ((*filename_withoutpath)=='\0')
341 {
342 if ((*popt_extract_without_path)==0)
343 {
344 printf("creating directory: %s\n",filename_inzip);
345 mymkdir(filename_inzip);
346 }
347 }
348 else
349 {
350 const char* write_filename;
351 int skip=0;
352
353 if ((*popt_extract_without_path)==0)
354 write_filename = filename_inzip;
355 else
356 write_filename = filename_withoutpath;
357
358 err = unzOpenCurrentFilePassword(uf,password);
359 if (err!=UNZ_OK)
360 {
361 printf("error %d with zipfile in unzOpenCurrentFilePassword\n",err);
362 }
363
364 if (((*popt_overwrite)==0) && (err==UNZ_OK))
365 {
366 char rep=0;
367 FILE* ftestexist;
368 ftestexist = fopen64(write_filename,"rb");
369 if (ftestexist!=NULL)
370 {
371 fclose(ftestexist);
372 do
373 {
374 char answer[128];
375 int ret;
376
377 printf("The file %s exists. Overwrite ? [y]es, [n]o, [A]ll: ",write_filename);
378 ret = scanf("%1s",answer);
379 if (ret != 1)
380 {
381 exit(EXIT_FAILURE);
382 }
383 rep = answer[0] ;
384 if ((rep>='a') && (rep<='z'))
385 rep -= 0x20;
386 }
387 while ((rep!='Y') && (rep!='N') && (rep!='A'));
388 }
389
390 if (rep == 'N')
391 skip = 1;
392
393 if (rep == 'A')
394 *popt_overwrite=1;
395 }
396
397 if ((skip==0) && (err==UNZ_OK))
398 {
399 fout=fopen64(write_filename,"wb");
400
401 /* some zipfile don't contain directory alone before file */
402 if ((fout==NULL) && ((*popt_extract_without_path)==0) &&
403 (filename_withoutpath!=(char*)filename_inzip))
404 {
405 char c=*(filename_withoutpath-1);
406 *(filename_withoutpath-1)='\0';
407 makedir(write_filename);
408 *(filename_withoutpath-1)=c;
409 fout=fopen64(write_filename,"wb");
410 }
411
412 if (fout==NULL)
413 {
414 printf("error opening %s\n",write_filename);
415 }
416 }
417
418 if (fout!=NULL)
419 {
420 printf(" extracting: %s\n",write_filename);
421
422 do
423 {
424 err = unzReadCurrentFile(uf,buf,size_buf);
425 if (err<0)
426 {
427 printf("error %d with zipfile in unzReadCurrentFile\n",err);
428 break;
429 }
430 if (err>0)
431 if (fwrite(buf,err,1,fout)!=1)
432 {
433 printf("error in writing extracted file\n");
434 err=UNZ_ERRNO;
435 break;
436 }
437 }
438 while (err>0);
439 if (fout)
440 fclose(fout);
441
442 if (err==0)
443 change_file_date(write_filename,file_info.dosDate,
444 file_info.tmu_date);
445 }
446
447 if (err==UNZ_OK)
448 {
449 err = unzCloseCurrentFile (uf);
450 if (err!=UNZ_OK)
451 {
452 printf("error %d with zipfile in unzCloseCurrentFile\n",err);
453 }
454 }
455 else
456 unzCloseCurrentFile(uf); /* don't lose the error */
457 }
458
459 free(buf);
460 return err;
461}
462
463
464int do_extract(uf,opt_extract_without_path,opt_overwrite,password)
465 unzFile uf;
466 int opt_extract_without_path;
467 int opt_overwrite;
468 const char* password;
469{
470 uLong i;
471 unz_global_info64 gi;
472 int err;
473 FILE* fout=NULL;
474
475 err = unzGetGlobalInfo64(uf,&gi);
476 if (err!=UNZ_OK)
477 printf("error %d with zipfile in unzGetGlobalInfo \n",err);
478
479 for (i=0;i<gi.number_entry;i++)
480 {
481 if (do_extract_currentfile(uf,&opt_extract_without_path,
482 &opt_overwrite,
483 password) != UNZ_OK)
484 break;
485
486 if ((i+1)<gi.number_entry)
487 {
488 err = unzGoToNextFile(uf);
489 if (err!=UNZ_OK)
490 {
491 printf("error %d with zipfile in unzGoToNextFile\n",err);
492 break;
493 }
494 }
495 }
496
497 return 0;
498}
499
500int do_extract_onefile(uf,filename,opt_extract_without_path,opt_overwrite,password)
501 unzFile uf;
502 const char* filename;
503 int opt_extract_without_path;
504 int opt_overwrite;
505 const char* password;
506{
507 int err = UNZ_OK;
508 if (unzLocateFile(uf,filename,CASESENSITIVITY)!=UNZ_OK)
509 {
510 printf("file %s not found in the zipfile\n",filename);
511 return 2;
512 }
513
514 if (do_extract_currentfile(uf,&opt_extract_without_path,
515 &opt_overwrite,
516 password) == UNZ_OK)
517 return 0;
518 else
519 return 1;
520}
521
522
523int main(argc,argv)
524 int argc;
525 char *argv[];
526{
527 const char *zipfilename=NULL;
528 const char *filename_to_extract=NULL;
529 const char *password=NULL;
530 char filename_try[MAXFILENAME+16] = "";
531 int i;
532 int ret_value=0;
533 int opt_do_list=0;
534 int opt_do_extract=1;
535 int opt_do_extract_withoutpath=0;
536 int opt_overwrite=0;
537 int opt_extractdir=0;
538 const char *dirname=NULL;
539 unzFile uf=NULL;
540
541 do_banner();
542 if (argc==1)
543 {
544 do_help();
545 return 0;
546 }
547 else
548 {
549 for (i=1;i<argc;i++)
550 {
551 if ((*argv[i])=='-')
552 {
553 const char *p=argv[i]+1;
554
555 while ((*p)!='\0')
556 {
557 char c=*(p++);;
558 if ((c=='l') || (c=='L'))
559 opt_do_list = 1;
560 if ((c=='v') || (c=='V'))
561 opt_do_list = 1;
562 if ((c=='x') || (c=='X'))
563 opt_do_extract = 1;
564 if ((c=='e') || (c=='E'))
565 opt_do_extract = opt_do_extract_withoutpath = 1;
566 if ((c=='o') || (c=='O'))
567 opt_overwrite=1;
568 if ((c=='d') || (c=='D'))
569 {
570 opt_extractdir=1;
571 dirname=argv[i+1];
572 }
573
574 if (((c=='p') || (c=='P')) && (i+1<argc))
575 {
576 password=argv[i+1];
577 i++;
578 }
579 }
580 }
581 else
582 {
583 if (zipfilename == NULL)
584 zipfilename = argv[i];
585 else if ((filename_to_extract==NULL) && (!opt_extractdir))
586 filename_to_extract = argv[i] ;
587 }
588 }
589 }
590
591 if (zipfilename!=NULL)
592 {
593
594# ifdef USEWIN32IOAPI
595 zlib_filefunc64_def ffunc;
596# endif
597
598 strncpy(filename_try, zipfilename,MAXFILENAME-1);
599 /* strncpy doesnt append the trailing NULL, of the string is too long. */
600 filename_try[ MAXFILENAME ] = '\0';
601
602# ifdef USEWIN32IOAPI
603 fill_win32_filefunc64A(&ffunc);
604 uf = unzOpen2_64(zipfilename,&ffunc);
605# else
606 uf = unzOpen64(zipfilename);
607# endif
608 if (uf==NULL)
609 {
610 strcat(filename_try,".zip");
611# ifdef USEWIN32IOAPI
612 uf = unzOpen2_64(filename_try,&ffunc);
613# else
614 uf = unzOpen64(filename_try);
615# endif
616 }
617 }
618
619 if (uf==NULL)
620 {
621 printf("Cannot open %s or %s.zip\n",zipfilename,zipfilename);
622 return 1;
623 }
624 printf("%s opened\n",filename_try);
625
626 if (opt_do_list==1)
627 ret_value = do_list(uf);
628 else if (opt_do_extract==1)
629 {
630#ifdef _WIN32
631 if (opt_extractdir && _chdir(dirname))
632#else
633 if (opt_extractdir && chdir(dirname))
634#endif
635 {
636 printf("Error changing into %s, aborting\n", dirname);
637 exit(-1);
638 }
639
640 if (filename_to_extract == NULL)
641 ret_value = do_extract(uf, opt_do_extract_withoutpath, opt_overwrite, password);
642 else
643 ret_value = do_extract_onefile(uf, filename_to_extract, opt_do_extract_withoutpath, opt_overwrite, password);
644 }
645
646 unzClose(uf);
647
648 return ret_value;
649}
diff --git a/contrib/contrib/minizip/minizip.c b/contrib/contrib/minizip/minizip.c
new file mode 100644
index 0000000..9e310e8
--- /dev/null
+++ b/contrib/contrib/minizip/minizip.c
@@ -0,0 +1,508 @@
1/*
2 minizip.c
3 Version 1.1, January 7th, 2010
4 sample part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html )
5
6 Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html )
7
8 Modifications of Unzip for Zip64
9 Copyright (C) 2007-2008 Even Rouault
10
11 Modifications for Zip64 support on both zip and unzip
12 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com )
13*/
14
15#include "zip.h"
16
17#ifndef _WIN32
18 #ifndef __USE_FILE_OFFSET64
19 #define __USE_FILE_OFFSET64
20 #endif
21 #ifndef __USE_LARGEFILE64
22 #define __USE_LARGEFILE64
23 #endif
24 #ifndef _LARGEFILE64_SOURCE
25 #define _LARGEFILE64_SOURCE
26 #endif
27 #ifndef _FILE_OFFSET_BIT
28 #define _FILE_OFFSET_BIT 64
29 #endif
30#endif
31
32#include <stdio.h>
33#include <stdlib.h>
34#include <string.h>
35#include <time.h>
36#include <errno.h>
37#include <fcntl.h>
38
39#ifdef unix
40# include <unistd.h>
41# include <utime.h>
42# include <sys/types.h>
43# include <sys/stat.h>
44#else
45# include <direct.h>
46# include <io.h>
47#endif
48
49
50#ifdef _WIN32
51 #define USEWIN32IOAPI
52 #include "iowin32.h"
53#endif
54
55
56
57#define WRITEBUFFERSIZE (16384)
58#define MAXFILENAME (256)
59
60#ifdef _WIN32
61uLong filetime(f, tmzip, dt)
62 char *f; /* name of file to get info on */
63 tm_zip *tmzip; /* return value: access, modific. and creation times */
64 uLong *dt; /* dostime */
65{
66 int ret = 0;
67 {
68 FILETIME ftLocal;
69 HANDLE hFind;
70 WIN32_FIND_DATAA ff32;
71
72 hFind = FindFirstFileA(f,&ff32);
73 if (hFind != INVALID_HANDLE_VALUE)
74 {
75 FileTimeToLocalFileTime(&(ff32.ftLastWriteTime),&ftLocal);
76 FileTimeToDosDateTime(&ftLocal,((LPWORD)dt)+1,((LPWORD)dt)+0);
77 FindClose(hFind);
78 ret = 1;
79 }
80 }
81 return ret;
82}
83#else
84#ifdef unix
85uLong filetime(f, tmzip, dt)
86 char *f; /* name of file to get info on */
87 tm_zip *tmzip; /* return value: access, modific. and creation times */
88 uLong *dt; /* dostime */
89{
90 int ret=0;
91 struct stat s; /* results of stat() */
92 struct tm* filedate;
93 time_t tm_t=0;
94
95 if (strcmp(f,"-")!=0)
96 {
97 char name[MAXFILENAME+1];
98 int len = strlen(f);
99 if (len > MAXFILENAME)
100 len = MAXFILENAME;
101
102 strncpy(name, f,MAXFILENAME-1);
103 /* strncpy doesnt append the trailing NULL, of the string is too long. */
104 name[ MAXFILENAME ] = '\0';
105
106 if (name[len - 1] == '/')
107 name[len - 1] = '\0';
108 /* not all systems allow stat'ing a file with / appended */
109 if (stat(name,&s)==0)
110 {
111 tm_t = s.st_mtime;
112 ret = 1;
113 }
114 }
115 filedate = localtime(&tm_t);
116
117 tmzip->tm_sec = filedate->tm_sec;
118 tmzip->tm_min = filedate->tm_min;
119 tmzip->tm_hour = filedate->tm_hour;
120 tmzip->tm_mday = filedate->tm_mday;
121 tmzip->tm_mon = filedate->tm_mon ;
122 tmzip->tm_year = filedate->tm_year;
123
124 return ret;
125}
126#else
127uLong filetime(f, tmzip, dt)
128 char *f; /* name of file to get info on */
129 tm_zip *tmzip; /* return value: access, modific. and creation times */
130 uLong *dt; /* dostime */
131{
132 return 0;
133}
134#endif
135#endif
136
137
138
139
140int check_exist_file(filename)
141 const char* filename;
142{
143 FILE* ftestexist;
144 int ret = 1;
145 ftestexist = fopen64(filename,"rb");
146 if (ftestexist==NULL)
147 ret = 0;
148 else
149 fclose(ftestexist);
150 return ret;
151}
152
153void do_banner()
154{
155 printf("MiniZip64 1.0, demo of zLib + MiniZip64 package, written by Gilles Vollant\n");
156 printf("more info on MiniZip at http://www.winimage.com/zLibDll/minizip.html\n\n");
157 printf("more info on MiniZip64 at http://result42.com/projects/MiniZip64\n\n");
158}
159
160void do_help()
161{
162 printf("Usage : minizip [-o] [-a] [-0 to -9] [-p password] [-j] file.zip [files_to_add]\n\n" \
163 " -o Overwrite existing file.zip\n" \
164 " -a Append to existing file.zip\n" \
165 " -0 Store only\n" \
166 " -1 Compress faster\n" \
167 " -9 Compress better\n\n" \
168 " -j exclude path. store only the file name.\n\n");
169}
170
171/* calculate the CRC32 of a file,
172 because to encrypt a file, we need known the CRC32 of the file before */
173int getFileCrc(const char* filenameinzip,void*buf,unsigned long size_buf,unsigned long* result_crc)
174{
175 unsigned long calculate_crc=0;
176 int err=ZIP_OK;
177 FILE * fin = fopen64(filenameinzip,"rb");
178 unsigned long size_read = 0;
179 unsigned long total_read = 0;
180 if (fin==NULL)
181 {
182 err = ZIP_ERRNO;
183 }
184
185 if (err == ZIP_OK)
186 do
187 {
188 err = ZIP_OK;
189 size_read = (int)fread(buf,1,size_buf,fin);
190 if (size_read < size_buf)
191 if (feof(fin)==0)
192 {
193 printf("error in reading %s\n",filenameinzip);
194 err = ZIP_ERRNO;
195 }
196
197 if (size_read>0)
198 calculate_crc = crc32(calculate_crc,buf,size_read);
199 total_read += size_read;
200
201 } while ((err == ZIP_OK) && (size_read>0));
202
203 if (fin)
204 fclose(fin);
205
206 *result_crc=calculate_crc;
207 printf("file %s crc %lx\n", filenameinzip, calculate_crc);
208 return err;
209}
210
211int isLargeFile(const char* filename)
212{
213 int largeFile = 0;
214 ZPOS64_T pos = 0;
215 FILE* pFile = fopen64(filename, "rb");
216
217 if(pFile != NULL)
218 {
219 int n = fseeko64(pFile, 0, SEEK_END);
220
221 pos = ftello64(pFile);
222
223 printf("File : %s is %lld bytes\n", filename, pos);
224
225 if(pos >= 0xffffffff)
226 largeFile = 1;
227
228 fclose(pFile);
229 }
230
231 return largeFile;
232}
233
234int main(argc,argv)
235 int argc;
236 char *argv[];
237{
238 int i;
239 int opt_overwrite=0;
240 int opt_compress_level=Z_DEFAULT_COMPRESSION;
241 int opt_exclude_path=0;
242 int zipfilenamearg = 0;
243 char filename_try[MAXFILENAME+16];
244 int zipok;
245 int err=0;
246 int size_buf=0;
247 void* buf=NULL;
248 const char* password=NULL;
249
250
251 do_banner();
252 if (argc==1)
253 {
254 do_help();
255 return 0;
256 }
257 else
258 {
259 for (i=1;i<argc;i++)
260 {
261 if ((*argv[i])=='-')
262 {
263 const char *p=argv[i]+1;
264
265 while ((*p)!='\0')
266 {
267 char c=*(p++);;
268 if ((c=='o') || (c=='O'))
269 opt_overwrite = 1;
270 if ((c=='a') || (c=='A'))
271 opt_overwrite = 2;
272 if ((c>='0') && (c<='9'))
273 opt_compress_level = c-'0';
274 if ((c=='j') || (c=='J'))
275 opt_exclude_path = 1;
276
277 if (((c=='p') || (c=='P')) && (i+1<argc))
278 {
279 password=argv[i+1];
280 i++;
281 }
282 }
283 }
284 else
285 {
286 if (zipfilenamearg == 0)
287 {
288 zipfilenamearg = i ;
289 }
290 }
291 }
292 }
293
294 size_buf = WRITEBUFFERSIZE;
295 buf = (void*)malloc(size_buf);
296 if (buf==NULL)
297 {
298 printf("Error allocating memory\n");
299 return ZIP_INTERNALERROR;
300 }
301
302 if (zipfilenamearg==0)
303 {
304 zipok=0;
305 }
306 else
307 {
308 int i,len;
309 int dot_found=0;
310
311 zipok = 1 ;
312 strncpy(filename_try, argv[zipfilenamearg],MAXFILENAME-1);
313 /* strncpy doesnt append the trailing NULL, of the string is too long. */
314 filename_try[ MAXFILENAME ] = '\0';
315
316 len=(int)strlen(filename_try);
317 for (i=0;i<len;i++)
318 if (filename_try[i]=='.')
319 dot_found=1;
320
321 if (dot_found==0)
322 strcat(filename_try,".zip");
323
324 if (opt_overwrite==2)
325 {
326 /* if the file don't exist, we not append file */
327 if (check_exist_file(filename_try)==0)
328 opt_overwrite=1;
329 }
330 else
331 if (opt_overwrite==0)
332 if (check_exist_file(filename_try)!=0)
333 {
334 char rep=0;
335 do
336 {
337 char answer[128];
338 int ret;
339 printf("The file %s exists. Overwrite ? [y]es, [n]o, [a]ppend : ",filename_try);
340 ret = scanf("%1s",answer);
341 if (ret != 1)
342 {
343 exit(EXIT_FAILURE);
344 }
345 rep = answer[0] ;
346 if ((rep>='a') && (rep<='z'))
347 rep -= 0x20;
348 }
349 while ((rep!='Y') && (rep!='N') && (rep!='A'));
350 if (rep=='N')
351 zipok = 0;
352 if (rep=='A')
353 opt_overwrite = 2;
354 }
355 }
356
357 if (zipok==1)
358 {
359 zipFile zf;
360 int errclose;
361# ifdef USEWIN32IOAPI
362 zlib_filefunc64_def ffunc;
363 fill_win32_filefunc64A(&ffunc);
364 zf = zipOpen2_64(filename_try,(opt_overwrite==2) ? 2 : 0,NULL,&ffunc);
365# else
366 zf = zipOpen64(filename_try,(opt_overwrite==2) ? 2 : 0);
367# endif
368
369 if (zf == NULL)
370 {
371 printf("error opening %s\n",filename_try);
372 err= ZIP_ERRNO;
373 }
374 else
375 printf("creating %s\n",filename_try);
376
377 for (i=zipfilenamearg+1;(i<argc) && (err==ZIP_OK);i++)
378 {
379 if (!((((*(argv[i]))=='-') || ((*(argv[i]))=='/')) &&
380 ((argv[i][1]=='o') || (argv[i][1]=='O') ||
381 (argv[i][1]=='a') || (argv[i][1]=='A') ||
382 (argv[i][1]=='p') || (argv[i][1]=='P') ||
383 ((argv[i][1]>='0') || (argv[i][1]<='9'))) &&
384 (strlen(argv[i]) == 2)))
385 {
386 FILE * fin;
387 int size_read;
388 const char* filenameinzip = argv[i];
389 const char *savefilenameinzip;
390 zip_fileinfo zi;
391 unsigned long crcFile=0;
392 int zip64 = 0;
393
394 zi.tmz_date.tm_sec = zi.tmz_date.tm_min = zi.tmz_date.tm_hour =
395 zi.tmz_date.tm_mday = zi.tmz_date.tm_mon = zi.tmz_date.tm_year = 0;
396 zi.dosDate = 0;
397 zi.internal_fa = 0;
398 zi.external_fa = 0;
399 filetime(filenameinzip,&zi.tmz_date,&zi.dosDate);
400
401/*
402 err = zipOpenNewFileInZip(zf,filenameinzip,&zi,
403 NULL,0,NULL,0,NULL / * comment * /,
404 (opt_compress_level != 0) ? Z_DEFLATED : 0,
405 opt_compress_level);
406*/
407 if ((password != NULL) && (err==ZIP_OK))
408 err = getFileCrc(filenameinzip,buf,size_buf,&crcFile);
409
410 zip64 = isLargeFile(filenameinzip);
411
412 /* The path name saved, should not include a leading slash. */
413 /*if it did, windows/xp and dynazip couldn't read the zip file. */
414 savefilenameinzip = filenameinzip;
415 while( savefilenameinzip[0] == '\\' || savefilenameinzip[0] == '/' )
416 {
417 savefilenameinzip++;
418 }
419
420 /*should the zip file contain any path at all?*/
421 if( opt_exclude_path )
422 {
423 const char *tmpptr;
424 const char *lastslash = 0;
425 for( tmpptr = savefilenameinzip; *tmpptr; tmpptr++)
426 {
427 if( *tmpptr == '\\' || *tmpptr == '/')
428 {
429 lastslash = tmpptr;
430 }
431 }
432 if( lastslash != NULL )
433 {
434 savefilenameinzip = lastslash+1; // base filename follows last slash.
435 }
436 }
437
438 /**/
439 err = zipOpenNewFileInZip3_64(zf,savefilenameinzip,&zi,
440 NULL,0,NULL,0,NULL /* comment*/,
441 (opt_compress_level != 0) ? Z_DEFLATED : 0,
442 opt_compress_level,0,
443 /* -MAX_WBITS, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY, */
444 -MAX_WBITS, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY,
445 password,crcFile, zip64);
446
447 if (err != ZIP_OK)
448 printf("error in opening %s in zipfile\n",filenameinzip);
449 else
450 {
451 fin = fopen64(filenameinzip,"rb");
452 if (fin==NULL)
453 {
454 err=ZIP_ERRNO;
455 printf("error in opening %s for reading\n",filenameinzip);
456 }
457 }
458
459 if (err == ZIP_OK)
460 do
461 {
462 err = ZIP_OK;
463 size_read = (int)fread(buf,1,size_buf,fin);
464 if (size_read < size_buf)
465 if (feof(fin)==0)
466 {
467 printf("error in reading %s\n",filenameinzip);
468 err = ZIP_ERRNO;
469 }
470
471 if (size_read>0)
472 {
473 err = zipWriteInFileInZip (zf,buf,size_read);
474 if (err<0)
475 {
476 printf("error in writing %s in the zipfile\n",
477 filenameinzip);
478 }
479
480 }
481 } while ((err == ZIP_OK) && (size_read>0));
482
483 if (fin)
484 fclose(fin);
485
486 if (err<0)
487 err=ZIP_ERRNO;
488 else
489 {
490 err = zipCloseFileInZip(zf);
491 if (err!=ZIP_OK)
492 printf("error in closing %s in the zipfile\n",
493 filenameinzip);
494 }
495 }
496 }
497 errclose = zipClose(zf,NULL);
498 if (errclose != ZIP_OK)
499 printf("error in closing %s\n",filename_try);
500 }
501 else
502 {
503 do_help();
504 }
505
506 free(buf);
507 return 0;
508}
diff --git a/contrib/contrib/vstudio/vc7/zlibvc.def b/contrib/contrib/vstudio/vc7/zlibvc.def
new file mode 100644
index 0000000..de70122
--- /dev/null
+++ b/contrib/contrib/vstudio/vc7/zlibvc.def
@@ -0,0 +1,95 @@
1
2VERSION 1.23
3
4HEAPSIZE 1048576,8192
5
6EXPORTS
7 adler32 @1
8 compress @2
9 crc32 @3
10 deflate @4
11 deflateCopy @5
12 deflateEnd @6
13 deflateInit2_ @7
14 deflateInit_ @8
15 deflateParams @9
16 deflateReset @10
17 deflateSetDictionary @11
18 gzclose @12
19 gzdopen @13
20 gzerror @14
21 gzflush @15
22 gzopen @16
23 gzread @17
24 gzwrite @18
25 inflate @19
26 inflateEnd @20
27 inflateInit2_ @21
28 inflateInit_ @22
29 inflateReset @23
30 inflateSetDictionary @24
31 inflateSync @25
32 uncompress @26
33 zlibVersion @27
34 gzprintf @28
35 gzputc @29
36 gzgetc @30
37 gzseek @31
38 gzrewind @32
39 gztell @33
40 gzeof @34
41 gzsetparams @35
42 zError @36
43 inflateSyncPoint @37
44 get_crc_table @38
45 compress2 @39
46 gzputs @40
47 gzgets @41
48 inflateCopy @42
49 inflateBackInit_ @43
50 inflateBack @44
51 inflateBackEnd @45
52 compressBound @46
53 deflateBound @47
54 gzclearerr @48
55 gzungetc @49
56 zlibCompileFlags @50
57 deflatePrime @51
58
59 unzOpen @61
60 unzClose @62
61 unzGetGlobalInfo @63
62 unzGetCurrentFileInfo @64
63 unzGoToFirstFile @65
64 unzGoToNextFile @66
65 unzOpenCurrentFile @67
66 unzReadCurrentFile @68
67 unzOpenCurrentFile3 @69
68 unztell @70
69 unzeof @71
70 unzCloseCurrentFile @72
71 unzGetGlobalComment @73
72 unzStringFileNameCompare @74
73 unzLocateFile @75
74 unzGetLocalExtrafield @76
75 unzOpen2 @77
76 unzOpenCurrentFile2 @78
77 unzOpenCurrentFilePassword @79
78
79 zipOpen @80
80 zipOpenNewFileInZip @81
81 zipWriteInFileInZip @82
82 zipCloseFileInZip @83
83 zipClose @84
84 zipOpenNewFileInZip2 @86
85 zipCloseFileInZipRaw @87
86 zipOpen2 @88
87 zipOpenNewFileInZip3 @89
88
89 unzGetFilePos @100
90 unzGoToFilePos @101
91
92 fill_win32_filefunc @110
93 fill_win32_filefunc64 @111
94 fill_win32_filefunc64A @112
95 fill_win32_filefunc64W @113
diff --git a/contrib/contrib/vstudio/vc8/zlibstat.vcproj b/contrib/contrib/vstudio/vc8/zlibstat.vcproj
new file mode 100644
index 0000000..2763eec
--- /dev/null
+++ b/contrib/contrib/vstudio/vc8/zlibstat.vcproj
@@ -0,0 +1,881 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="8,00"
5 Name="zlibstat"
6 ProjectGUID="{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}"
7 >
8 <Platforms>
9 <Platform
10 Name="Win32"
11 />
12 <Platform
13 Name="x64"
14 />
15 <Platform
16 Name="Itanium"
17 />
18 </Platforms>
19 <ToolFiles>
20 </ToolFiles>
21 <Configurations>
22 <Configuration
23 Name="Debug|Win32"
24 OutputDirectory="x86\ZlibStat$(ConfigurationName)"
25 IntermediateDirectory="x86\ZlibStat$(ConfigurationName)\Tmp"
26 ConfigurationType="4"
27 InheritedPropertySheets="UpgradeFromVC70.vsprops"
28 UseOfMFC="0"
29 ATLMinimizesCRunTimeLibraryUsage="false"
30 >
31 <Tool
32 Name="VCPreBuildEventTool"
33 />
34 <Tool
35 Name="VCCustomBuildTool"
36 />
37 <Tool
38 Name="VCXMLDataGeneratorTool"
39 />
40 <Tool
41 Name="VCWebServiceProxyGeneratorTool"
42 />
43 <Tool
44 Name="VCMIDLTool"
45 />
46 <Tool
47 Name="VCCLCompilerTool"
48 Optimization="0"
49 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
50 PreprocessorDefinitions="WIN32;ZLIB_WINAPI;NO_snprintf;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE"
51 ExceptionHandling="0"
52 RuntimeLibrary="1"
53 BufferSecurityCheck="false"
54 PrecompiledHeaderFile="$(IntDir)/zlibstat.pch"
55 AssemblerListingLocation="$(IntDir)\"
56 ObjectFile="$(IntDir)\"
57 ProgramDataBaseFileName="$(OutDir)\"
58 WarningLevel="3"
59 SuppressStartupBanner="true"
60 Detect64BitPortabilityProblems="true"
61 DebugInformationFormat="1"
62 />
63 <Tool
64 Name="VCManagedResourceCompilerTool"
65 />
66 <Tool
67 Name="VCResourceCompilerTool"
68 Culture="1036"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLibrarianTool"
75 AdditionalOptions="/MACHINE:X86 /NODEFAULTLIB"
76 OutputFile="$(OutDir)\zlibstat.lib"
77 SuppressStartupBanner="true"
78 />
79 <Tool
80 Name="VCALinkTool"
81 />
82 <Tool
83 Name="VCXDCMakeTool"
84 />
85 <Tool
86 Name="VCBscMakeTool"
87 />
88 <Tool
89 Name="VCFxCopTool"
90 />
91 <Tool
92 Name="VCPostBuildEventTool"
93 />
94 </Configuration>
95 <Configuration
96 Name="Debug|x64"
97 OutputDirectory="x64\ZlibStat$(ConfigurationName)"
98 IntermediateDirectory="x64\ZlibStat$(ConfigurationName)\Tmp"
99 ConfigurationType="4"
100 InheritedPropertySheets="UpgradeFromVC70.vsprops"
101 UseOfMFC="0"
102 ATLMinimizesCRunTimeLibraryUsage="false"
103 >
104 <Tool
105 Name="VCPreBuildEventTool"
106 />
107 <Tool
108 Name="VCCustomBuildTool"
109 />
110 <Tool
111 Name="VCXMLDataGeneratorTool"
112 />
113 <Tool
114 Name="VCWebServiceProxyGeneratorTool"
115 />
116 <Tool
117 Name="VCMIDLTool"
118 TargetEnvironment="3"
119 />
120 <Tool
121 Name="VCCLCompilerTool"
122 Optimization="0"
123 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
124 PreprocessorDefinitions="ZLIB_WINAPI;NO_snprintf;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;WIN64"
125 ExceptionHandling="0"
126 RuntimeLibrary="3"
127 BufferSecurityCheck="false"
128 PrecompiledHeaderFile="$(IntDir)/zlibstat.pch"
129 AssemblerListingLocation="$(IntDir)\"
130 ObjectFile="$(IntDir)\"
131 ProgramDataBaseFileName="$(OutDir)\"
132 WarningLevel="3"
133 SuppressStartupBanner="true"
134 Detect64BitPortabilityProblems="true"
135 DebugInformationFormat="1"
136 />
137 <Tool
138 Name="VCManagedResourceCompilerTool"
139 />
140 <Tool
141 Name="VCResourceCompilerTool"
142 Culture="1036"
143 />
144 <Tool
145 Name="VCPreLinkEventTool"
146 />
147 <Tool
148 Name="VCLibrarianTool"
149 AdditionalOptions="/MACHINE:AMD64 /NODEFAULTLIB"
150 OutputFile="$(OutDir)\zlibstat.lib"
151 SuppressStartupBanner="true"
152 />
153 <Tool
154 Name="VCALinkTool"
155 />
156 <Tool
157 Name="VCXDCMakeTool"
158 />
159 <Tool
160 Name="VCBscMakeTool"
161 />
162 <Tool
163 Name="VCFxCopTool"
164 />
165 <Tool
166 Name="VCPostBuildEventTool"
167 />
168 </Configuration>
169 <Configuration
170 Name="Debug|Itanium"
171 OutputDirectory="ia64\ZlibStat$(ConfigurationName)"
172 IntermediateDirectory="ia64\ZlibStat$(ConfigurationName)\Tmp"
173 ConfigurationType="4"
174 InheritedPropertySheets="UpgradeFromVC70.vsprops"
175 UseOfMFC="0"
176 ATLMinimizesCRunTimeLibraryUsage="false"
177 >
178 <Tool
179 Name="VCPreBuildEventTool"
180 />
181 <Tool
182 Name="VCCustomBuildTool"
183 />
184 <Tool
185 Name="VCXMLDataGeneratorTool"
186 />
187 <Tool
188 Name="VCWebServiceProxyGeneratorTool"
189 />
190 <Tool
191 Name="VCMIDLTool"
192 TargetEnvironment="2"
193 />
194 <Tool
195 Name="VCCLCompilerTool"
196 Optimization="0"
197 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
198 PreprocessorDefinitions="ZLIB_WINAPI;NO_snprintf;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;WIN64"
199 ExceptionHandling="0"
200 RuntimeLibrary="3"
201 BufferSecurityCheck="false"
202 PrecompiledHeaderFile="$(IntDir)/zlibstat.pch"
203 AssemblerListingLocation="$(IntDir)\"
204 ObjectFile="$(IntDir)\"
205 ProgramDataBaseFileName="$(OutDir)\"
206 WarningLevel="3"
207 SuppressStartupBanner="true"
208 Detect64BitPortabilityProblems="true"
209 DebugInformationFormat="1"
210 />
211 <Tool
212 Name="VCManagedResourceCompilerTool"
213 />
214 <Tool
215 Name="VCResourceCompilerTool"
216 Culture="1036"
217 />
218 <Tool
219 Name="VCPreLinkEventTool"
220 />
221 <Tool
222 Name="VCLibrarianTool"
223 AdditionalOptions="/MACHINE:IA64 /NODEFAULTLIB"
224 OutputFile="$(OutDir)\zlibstat.lib"
225 SuppressStartupBanner="true"
226 />
227 <Tool
228 Name="VCALinkTool"
229 />
230 <Tool
231 Name="VCXDCMakeTool"
232 />
233 <Tool
234 Name="VCBscMakeTool"
235 />
236 <Tool
237 Name="VCFxCopTool"
238 />
239 <Tool
240 Name="VCPostBuildEventTool"
241 />
242 </Configuration>
243 <Configuration
244 Name="Release|Win32"
245 OutputDirectory="x86\ZlibStat$(ConfigurationName)"
246 IntermediateDirectory="x86\ZlibStat$(ConfigurationName)\Tmp"
247 ConfigurationType="4"
248 InheritedPropertySheets="UpgradeFromVC70.vsprops"
249 UseOfMFC="0"
250 ATLMinimizesCRunTimeLibraryUsage="false"
251 >
252 <Tool
253 Name="VCPreBuildEventTool"
254 />
255 <Tool
256 Name="VCCustomBuildTool"
257 />
258 <Tool
259 Name="VCXMLDataGeneratorTool"
260 />
261 <Tool
262 Name="VCWebServiceProxyGeneratorTool"
263 />
264 <Tool
265 Name="VCMIDLTool"
266 />
267 <Tool
268 Name="VCCLCompilerTool"
269 InlineFunctionExpansion="1"
270 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
271 PreprocessorDefinitions="WIN32;ZLIB_WINAPI;NO_snprintf;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ASMV;ASMINF"
272 StringPooling="true"
273 ExceptionHandling="0"
274 RuntimeLibrary="0"
275 BufferSecurityCheck="false"
276 EnableFunctionLevelLinking="true"
277 PrecompiledHeaderFile="$(IntDir)/zlibstat.pch"
278 AssemblerListingLocation="$(IntDir)\"
279 ObjectFile="$(IntDir)\"
280 ProgramDataBaseFileName="$(OutDir)\"
281 WarningLevel="3"
282 SuppressStartupBanner="true"
283 />
284 <Tool
285 Name="VCManagedResourceCompilerTool"
286 />
287 <Tool
288 Name="VCResourceCompilerTool"
289 Culture="1036"
290 />
291 <Tool
292 Name="VCPreLinkEventTool"
293 />
294 <Tool
295 Name="VCLibrarianTool"
296 AdditionalOptions="/MACHINE:X86 /NODEFAULTLIB"
297 AdditionalDependencies="..\..\masmx86\gvmat32.obj ..\..\masmx86\inffas32.obj "
298 OutputFile="$(OutDir)\zlibstat.lib"
299 SuppressStartupBanner="true"
300 />
301 <Tool
302 Name="VCALinkTool"
303 />
304 <Tool
305 Name="VCXDCMakeTool"
306 />
307 <Tool
308 Name="VCBscMakeTool"
309 />
310 <Tool
311 Name="VCFxCopTool"
312 />
313 <Tool
314 Name="VCPostBuildEventTool"
315 />
316 </Configuration>
317 <Configuration
318 Name="Release|x64"
319 OutputDirectory="x64\ZlibStat$(ConfigurationName)"
320 IntermediateDirectory="x64\ZlibStat$(ConfigurationName)\Tmp"
321 ConfigurationType="4"
322 InheritedPropertySheets="UpgradeFromVC70.vsprops"
323 UseOfMFC="0"
324 ATLMinimizesCRunTimeLibraryUsage="false"
325 >
326 <Tool
327 Name="VCPreBuildEventTool"
328 />
329 <Tool
330 Name="VCCustomBuildTool"
331 />
332 <Tool
333 Name="VCXMLDataGeneratorTool"
334 />
335 <Tool
336 Name="VCWebServiceProxyGeneratorTool"
337 />
338 <Tool
339 Name="VCMIDLTool"
340 TargetEnvironment="3"
341 />
342 <Tool
343 Name="VCCLCompilerTool"
344 InlineFunctionExpansion="1"
345 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
346 PreprocessorDefinitions="ZLIB_WINAPI;NO_snprintf;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ASMV;ASMINF;WIN64"
347 StringPooling="true"
348 ExceptionHandling="0"
349 RuntimeLibrary="2"
350 BufferSecurityCheck="false"
351 EnableFunctionLevelLinking="true"
352 PrecompiledHeaderFile="$(IntDir)/zlibstat.pch"
353 AssemblerListingLocation="$(IntDir)\"
354 ObjectFile="$(IntDir)\"
355 ProgramDataBaseFileName="$(OutDir)\"
356 WarningLevel="3"
357 SuppressStartupBanner="true"
358 />
359 <Tool
360 Name="VCManagedResourceCompilerTool"
361 />
362 <Tool
363 Name="VCResourceCompilerTool"
364 Culture="1036"
365 />
366 <Tool
367 Name="VCPreLinkEventTool"
368 />
369 <Tool
370 Name="VCLibrarianTool"
371 AdditionalOptions="/MACHINE:AMD64 /NODEFAULTLIB"
372 AdditionalDependencies="..\..\masmx64\gvmat64.obj ..\..\masmx64\inffasx64.obj "
373 OutputFile="$(OutDir)\zlibstat.lib"
374 SuppressStartupBanner="true"
375 />
376 <Tool
377 Name="VCALinkTool"
378 />
379 <Tool
380 Name="VCXDCMakeTool"
381 />
382 <Tool
383 Name="VCBscMakeTool"
384 />
385 <Tool
386 Name="VCFxCopTool"
387 />
388 <Tool
389 Name="VCPostBuildEventTool"
390 />
391 </Configuration>
392 <Configuration
393 Name="Release|Itanium"
394 OutputDirectory="ia64\ZlibStat$(ConfigurationName)"
395 IntermediateDirectory="ia64\ZlibStat$(ConfigurationName)\Tmp"
396 ConfigurationType="4"
397 InheritedPropertySheets="UpgradeFromVC70.vsprops"
398 UseOfMFC="0"
399 ATLMinimizesCRunTimeLibraryUsage="false"
400 >
401 <Tool
402 Name="VCPreBuildEventTool"
403 />
404 <Tool
405 Name="VCCustomBuildTool"
406 />
407 <Tool
408 Name="VCXMLDataGeneratorTool"
409 />
410 <Tool
411 Name="VCWebServiceProxyGeneratorTool"
412 />
413 <Tool
414 Name="VCMIDLTool"
415 TargetEnvironment="2"
416 />
417 <Tool
418 Name="VCCLCompilerTool"
419 InlineFunctionExpansion="1"
420 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
421 PreprocessorDefinitions="ZLIB_WINAPI;NO_snprintf;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;WIN64"
422 StringPooling="true"
423 ExceptionHandling="0"
424 RuntimeLibrary="2"
425 BufferSecurityCheck="false"
426 EnableFunctionLevelLinking="true"
427 PrecompiledHeaderFile="$(IntDir)/zlibstat.pch"
428 AssemblerListingLocation="$(IntDir)\"
429 ObjectFile="$(IntDir)\"
430 ProgramDataBaseFileName="$(OutDir)\"
431 WarningLevel="3"
432 SuppressStartupBanner="true"
433 />
434 <Tool
435 Name="VCManagedResourceCompilerTool"
436 />
437 <Tool
438 Name="VCResourceCompilerTool"
439 Culture="1036"
440 />
441 <Tool
442 Name="VCPreLinkEventTool"
443 />
444 <Tool
445 Name="VCLibrarianTool"
446 AdditionalOptions="/MACHINE:IA64 /NODEFAULTLIB"
447 OutputFile="$(OutDir)\zlibstat.lib"
448 SuppressStartupBanner="true"
449 />
450 <Tool
451 Name="VCALinkTool"
452 />
453 <Tool
454 Name="VCXDCMakeTool"
455 />
456 <Tool
457 Name="VCBscMakeTool"
458 />
459 <Tool
460 Name="VCFxCopTool"
461 />
462 <Tool
463 Name="VCPostBuildEventTool"
464 />
465 </Configuration>
466 <Configuration
467 Name="ReleaseWithoutAsm|Win32"
468 OutputDirectory="x86\ZlibStat$(ConfigurationName)"
469 IntermediateDirectory="x86\ZlibStat$(ConfigurationName)\Tmp"
470 ConfigurationType="4"
471 InheritedPropertySheets="UpgradeFromVC70.vsprops"
472 UseOfMFC="0"
473 ATLMinimizesCRunTimeLibraryUsage="false"
474 >
475 <Tool
476 Name="VCPreBuildEventTool"
477 />
478 <Tool
479 Name="VCCustomBuildTool"
480 />
481 <Tool
482 Name="VCXMLDataGeneratorTool"
483 />
484 <Tool
485 Name="VCWebServiceProxyGeneratorTool"
486 />
487 <Tool
488 Name="VCMIDLTool"
489 />
490 <Tool
491 Name="VCCLCompilerTool"
492 InlineFunctionExpansion="1"
493 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
494 PreprocessorDefinitions="WIN32;ZLIB_WINAPI;NO_snprintf;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE"
495 StringPooling="true"
496 ExceptionHandling="0"
497 RuntimeLibrary="0"
498 BufferSecurityCheck="false"
499 EnableFunctionLevelLinking="true"
500 PrecompiledHeaderFile="$(IntDir)/zlibstat.pch"
501 AssemblerListingLocation="$(IntDir)\"
502 ObjectFile="$(IntDir)\"
503 ProgramDataBaseFileName="$(OutDir)\"
504 WarningLevel="3"
505 SuppressStartupBanner="true"
506 />
507 <Tool
508 Name="VCManagedResourceCompilerTool"
509 />
510 <Tool
511 Name="VCResourceCompilerTool"
512 Culture="1036"
513 />
514 <Tool
515 Name="VCPreLinkEventTool"
516 />
517 <Tool
518 Name="VCLibrarianTool"
519 AdditionalOptions="/MACHINE:X86 /NODEFAULTLIB"
520 OutputFile="$(OutDir)\zlibstat.lib"
521 SuppressStartupBanner="true"
522 />
523 <Tool
524 Name="VCALinkTool"
525 />
526 <Tool
527 Name="VCXDCMakeTool"
528 />
529 <Tool
530 Name="VCBscMakeTool"
531 />
532 <Tool
533 Name="VCFxCopTool"
534 />
535 <Tool
536 Name="VCPostBuildEventTool"
537 />
538 </Configuration>
539 <Configuration
540 Name="ReleaseWithoutAsm|x64"
541 OutputDirectory="x64\ZlibStat$(ConfigurationName)"
542 IntermediateDirectory="x64\ZlibStat$(ConfigurationName)\Tmp"
543 ConfigurationType="4"
544 InheritedPropertySheets="UpgradeFromVC70.vsprops"
545 UseOfMFC="0"
546 ATLMinimizesCRunTimeLibraryUsage="false"
547 >
548 <Tool
549 Name="VCPreBuildEventTool"
550 />
551 <Tool
552 Name="VCCustomBuildTool"
553 />
554 <Tool
555 Name="VCXMLDataGeneratorTool"
556 />
557 <Tool
558 Name="VCWebServiceProxyGeneratorTool"
559 />
560 <Tool
561 Name="VCMIDLTool"
562 TargetEnvironment="3"
563 />
564 <Tool
565 Name="VCCLCompilerTool"
566 InlineFunctionExpansion="1"
567 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
568 PreprocessorDefinitions="ZLIB_WINAPI;NO_snprintf;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;WIN64"
569 StringPooling="true"
570 ExceptionHandling="0"
571 RuntimeLibrary="2"
572 BufferSecurityCheck="false"
573 EnableFunctionLevelLinking="true"
574 PrecompiledHeaderFile="$(IntDir)/zlibstat.pch"
575 AssemblerListingLocation="$(IntDir)\"
576 ObjectFile="$(IntDir)\"
577 ProgramDataBaseFileName="$(OutDir)\"
578 WarningLevel="3"
579 SuppressStartupBanner="true"
580 />
581 <Tool
582 Name="VCManagedResourceCompilerTool"
583 />
584 <Tool
585 Name="VCResourceCompilerTool"
586 Culture="1036"
587 />
588 <Tool
589 Name="VCPreLinkEventTool"
590 />
591 <Tool
592 Name="VCLibrarianTool"
593 AdditionalOptions="/MACHINE:AMD64 /NODEFAULTLIB"
594 OutputFile="$(OutDir)\zlibstat.lib"
595 SuppressStartupBanner="true"
596 />
597 <Tool
598 Name="VCALinkTool"
599 />
600 <Tool
601 Name="VCXDCMakeTool"
602 />
603 <Tool
604 Name="VCBscMakeTool"
605 />
606 <Tool
607 Name="VCFxCopTool"
608 />
609 <Tool
610 Name="VCPostBuildEventTool"
611 />
612 </Configuration>
613 <Configuration
614 Name="ReleaseWithoutAsm|Itanium"
615 OutputDirectory="ia64\ZlibStat$(ConfigurationName)"
616 IntermediateDirectory="ia64\ZlibStat$(ConfigurationName)\Tmp"
617 ConfigurationType="4"
618 InheritedPropertySheets="UpgradeFromVC70.vsprops"
619 UseOfMFC="0"
620 ATLMinimizesCRunTimeLibraryUsage="false"
621 >
622 <Tool
623 Name="VCPreBuildEventTool"
624 />
625 <Tool
626 Name="VCCustomBuildTool"
627 />
628 <Tool
629 Name="VCXMLDataGeneratorTool"
630 />
631 <Tool
632 Name="VCWebServiceProxyGeneratorTool"
633 />
634 <Tool
635 Name="VCMIDLTool"
636 TargetEnvironment="2"
637 />
638 <Tool
639 Name="VCCLCompilerTool"
640 InlineFunctionExpansion="1"
641 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
642 PreprocessorDefinitions="ZLIB_WINAPI;NO_snprintf;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;WIN64"
643 StringPooling="true"
644 ExceptionHandling="0"
645 RuntimeLibrary="2"
646 BufferSecurityCheck="false"
647 EnableFunctionLevelLinking="true"
648 PrecompiledHeaderFile="$(IntDir)/zlibstat.pch"
649 AssemblerListingLocation="$(IntDir)\"
650 ObjectFile="$(IntDir)\"
651 ProgramDataBaseFileName="$(OutDir)\"
652 WarningLevel="3"
653 SuppressStartupBanner="true"
654 />
655 <Tool
656 Name="VCManagedResourceCompilerTool"
657 />
658 <Tool
659 Name="VCResourceCompilerTool"
660 Culture="1036"
661 />
662 <Tool
663 Name="VCPreLinkEventTool"
664 />
665 <Tool
666 Name="VCLibrarianTool"
667 AdditionalOptions="/MACHINE:IA64 /NODEFAULTLIB"
668 OutputFile="$(OutDir)\zlibstat.lib"
669 SuppressStartupBanner="true"
670 />
671 <Tool
672 Name="VCALinkTool"
673 />
674 <Tool
675 Name="VCXDCMakeTool"
676 />
677 <Tool
678 Name="VCBscMakeTool"
679 />
680 <Tool
681 Name="VCFxCopTool"
682 />
683 <Tool
684 Name="VCPostBuildEventTool"
685 />
686 </Configuration>
687 </Configurations>
688 <References>
689 </References>
690 <Files>
691 <Filter
692 Name="Source Files"
693 >
694 <File
695 RelativePath="..\..\..\adler32.c"
696 >
697 </File>
698 <File
699 RelativePath="..\..\..\compress.c"
700 >
701 </File>
702 <File
703 RelativePath="..\..\..\crc32.c"
704 >
705 </File>
706 <File
707 RelativePath="..\..\..\deflate.c"
708 >
709 </File>
710 <File
711 RelativePath="..\..\masmx86\gvmat32c.c"
712 >
713 <FileConfiguration
714 Name="Debug|x64"
715 ExcludedFromBuild="true"
716 >
717 <Tool
718 Name="VCCLCompilerTool"
719 />
720 </FileConfiguration>
721 <FileConfiguration
722 Name="Debug|Itanium"
723 ExcludedFromBuild="true"
724 >
725 <Tool
726 Name="VCCLCompilerTool"
727 />
728 </FileConfiguration>
729 <FileConfiguration
730 Name="Release|x64"
731 ExcludedFromBuild="true"
732 >
733 <Tool
734 Name="VCCLCompilerTool"
735 />
736 </FileConfiguration>
737 <FileConfiguration
738 Name="Release|Itanium"
739 ExcludedFromBuild="true"
740 >
741 <Tool
742 Name="VCCLCompilerTool"
743 />
744 </FileConfiguration>
745 <FileConfiguration
746 Name="ReleaseWithoutAsm|x64"
747 ExcludedFromBuild="true"
748 >
749 <Tool
750 Name="VCCLCompilerTool"
751 />
752 </FileConfiguration>
753 <FileConfiguration
754 Name="ReleaseWithoutAsm|Itanium"
755 ExcludedFromBuild="true"
756 >
757 <Tool
758 Name="VCCLCompilerTool"
759 />
760 </FileConfiguration>
761 </File>
762 <File
763 RelativePath="..\..\..\gzclose.c">
764 </File>
765 <File
766 RelativePath="..\..\..\gzio.c">
767 </File>
768 <File
769 RelativePath="..\..\..\gzlib.c">
770 </File>
771 <File
772 RelativePath="..\..\..\gzread.c">
773 </File>
774 <File
775 RelativePath="..\..\..\gzwrite.c">
776 </File>
777 <File
778 RelativePath="..\..\..\infback.c"
779 >
780 </File>
781 <File
782 RelativePath="..\..\masmx64\inffas8664.c"
783 >
784 <FileConfiguration
785 Name="Debug|Win32"
786 ExcludedFromBuild="true"
787 >
788 <Tool
789 Name="VCCLCompilerTool"
790 />
791 </FileConfiguration>
792 <FileConfiguration
793 Name="Debug|Itanium"
794 ExcludedFromBuild="true"
795 >
796 <Tool
797 Name="VCCLCompilerTool"
798 />
799 </FileConfiguration>
800 <FileConfiguration
801 Name="Release|Win32"
802 ExcludedFromBuild="true"
803 >
804 <Tool
805 Name="VCCLCompilerTool"
806 />
807 </FileConfiguration>
808 <FileConfiguration
809 Name="Release|Itanium"
810 ExcludedFromBuild="true"
811 >
812 <Tool
813 Name="VCCLCompilerTool"
814 />
815 </FileConfiguration>
816 <FileConfiguration
817 Name="ReleaseWithoutAsm|Win32"
818 ExcludedFromBuild="true"
819 >
820 <Tool
821 Name="VCCLCompilerTool"
822 />
823 </FileConfiguration>
824 <FileConfiguration
825 Name="ReleaseWithoutAsm|Itanium"
826 ExcludedFromBuild="true"
827 >
828 <Tool
829 Name="VCCLCompilerTool"
830 />
831 </FileConfiguration>
832 </File>
833 <File
834 RelativePath="..\..\..\inffast.c"
835 >
836 </File>
837 <File
838 RelativePath="..\..\..\inflate.c"
839 >
840 </File>
841 <File
842 RelativePath="..\..\..\inftrees.c"
843 >
844 </File>
845 <File
846 RelativePath="..\..\minizip\ioapi.c"
847 >
848 </File>
849 <File
850 RelativePath="..\..\..\trees.c"
851 >
852 </File>
853 <File
854 RelativePath="..\..\..\uncompr.c"
855 >
856 </File>
857 <File
858 RelativePath="..\..\minizip\unzip.c"
859 >
860 </File>
861 <File
862 RelativePath="..\..\minizip\zip.c"
863 >
864 </File>
865 <File
866 RelativePath=".\zlib.rc"
867 >
868 </File>
869 <File
870 RelativePath=".\zlibvc.def"
871 >
872 </File>
873 <File
874 RelativePath="..\..\..\zutil.c"
875 >
876 </File>
877 </Filter>
878 </Files>
879 <Globals>
880 </Globals>
881</VisualStudioProject>
diff --git a/contrib/contrib/vstudio/vc8/zlibvc.def b/contrib/contrib/vstudio/vc8/zlibvc.def
new file mode 100644
index 0000000..de70122
--- /dev/null
+++ b/contrib/contrib/vstudio/vc8/zlibvc.def
@@ -0,0 +1,95 @@
1
2VERSION 1.23
3
4HEAPSIZE 1048576,8192
5
6EXPORTS
7 adler32 @1
8 compress @2
9 crc32 @3
10 deflate @4
11 deflateCopy @5
12 deflateEnd @6
13 deflateInit2_ @7
14 deflateInit_ @8
15 deflateParams @9
16 deflateReset @10
17 deflateSetDictionary @11
18 gzclose @12
19 gzdopen @13
20 gzerror @14
21 gzflush @15
22 gzopen @16
23 gzread @17
24 gzwrite @18
25 inflate @19
26 inflateEnd @20
27 inflateInit2_ @21
28 inflateInit_ @22
29 inflateReset @23
30 inflateSetDictionary @24
31 inflateSync @25
32 uncompress @26
33 zlibVersion @27
34 gzprintf @28
35 gzputc @29
36 gzgetc @30
37 gzseek @31
38 gzrewind @32
39 gztell @33
40 gzeof @34
41 gzsetparams @35
42 zError @36
43 inflateSyncPoint @37
44 get_crc_table @38
45 compress2 @39
46 gzputs @40
47 gzgets @41
48 inflateCopy @42
49 inflateBackInit_ @43
50 inflateBack @44
51 inflateBackEnd @45
52 compressBound @46
53 deflateBound @47
54 gzclearerr @48
55 gzungetc @49
56 zlibCompileFlags @50
57 deflatePrime @51
58
59 unzOpen @61
60 unzClose @62
61 unzGetGlobalInfo @63
62 unzGetCurrentFileInfo @64
63 unzGoToFirstFile @65
64 unzGoToNextFile @66
65 unzOpenCurrentFile @67
66 unzReadCurrentFile @68
67 unzOpenCurrentFile3 @69
68 unztell @70
69 unzeof @71
70 unzCloseCurrentFile @72
71 unzGetGlobalComment @73
72 unzStringFileNameCompare @74
73 unzLocateFile @75
74 unzGetLocalExtrafield @76
75 unzOpen2 @77
76 unzOpenCurrentFile2 @78
77 unzOpenCurrentFilePassword @79
78
79 zipOpen @80
80 zipOpenNewFileInZip @81
81 zipWriteInFileInZip @82
82 zipCloseFileInZip @83
83 zipClose @84
84 zipOpenNewFileInZip2 @86
85 zipCloseFileInZipRaw @87
86 zipOpen2 @88
87 zipOpenNewFileInZip3 @89
88
89 unzGetFilePos @100
90 unzGoToFilePos @101
91
92 fill_win32_filefunc @110
93 fill_win32_filefunc64 @111
94 fill_win32_filefunc64A @112
95 fill_win32_filefunc64W @113
diff --git a/contrib/contrib/vstudio/vc8/zlibvc.vcproj b/contrib/contrib/vstudio/vc8/zlibvc.vcproj
new file mode 100644
index 0000000..91e966d
--- /dev/null
+++ b/contrib/contrib/vstudio/vc8/zlibvc.vcproj
@@ -0,0 +1,1230 @@
1<?xml version="1.0" encoding="Windows-1252"?>
2<VisualStudioProject
3 ProjectType="Visual C++"
4 Version="8,00"
5 Name="zlibvc"
6 ProjectGUID="{8FD826F8-3739-44E6-8CC8-997122E53B8D}"
7 >
8 <Platforms>
9 <Platform
10 Name="Win32"
11 />
12 <Platform
13 Name="x64"
14 />
15 <Platform
16 Name="Itanium"
17 />
18 </Platforms>
19 <ToolFiles>
20 </ToolFiles>
21 <Configurations>
22 <Configuration
23 Name="Debug|Win32"
24 OutputDirectory="x86\ZlibDll$(ConfigurationName)"
25 IntermediateDirectory="x86\ZlibDll$(ConfigurationName)\Tmp"
26 ConfigurationType="2"
27 InheritedPropertySheets="UpgradeFromVC70.vsprops"
28 UseOfMFC="0"
29 ATLMinimizesCRunTimeLibraryUsage="false"
30 >
31 <Tool
32 Name="VCPreBuildEventTool"
33 />
34 <Tool
35 Name="VCCustomBuildTool"
36 />
37 <Tool
38 Name="VCXMLDataGeneratorTool"
39 />
40 <Tool
41 Name="VCWebServiceProxyGeneratorTool"
42 />
43 <Tool
44 Name="VCMIDLTool"
45 PreprocessorDefinitions="_DEBUG"
46 MkTypLibCompatible="true"
47 SuppressStartupBanner="true"
48 TargetEnvironment="1"
49 TypeLibraryName="$(OutDir)/zlibvc.tlb"
50 />
51 <Tool
52 Name="VCCLCompilerTool"
53 Optimization="0"
54 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
55 PreprocessorDefinitions="WIN32,_CRT_SECURE_NO_DEPRECATE,ZLIB_WINAPI;NO_snprintf,ASMV,ASMINF"
56 ExceptionHandling="0"
57 RuntimeLibrary="1"
58 BufferSecurityCheck="false"
59 PrecompiledHeaderFile="$(IntDir)/zlibvc.pch"
60 AssemblerListingLocation="$(IntDir)\"
61 ObjectFile="$(IntDir)\"
62 ProgramDataBaseFileName="$(OutDir)\"
63 BrowseInformation="0"
64 WarningLevel="3"
65 SuppressStartupBanner="true"
66 DebugInformationFormat="4"
67 />
68 <Tool
69 Name="VCManagedResourceCompilerTool"
70 />
71 <Tool
72 Name="VCResourceCompilerTool"
73 PreprocessorDefinitions="_DEBUG"
74 Culture="1036"
75 />
76 <Tool
77 Name="VCPreLinkEventTool"
78 />
79 <Tool
80 Name="VCLinkerTool"
81 AdditionalOptions="/MACHINE:I386"
82 AdditionalDependencies="..\..\masmx86\gvmat32.obj ..\..\masmx86\inffas32.obj"
83 OutputFile="$(OutDir)\zlibwapi.dll"
84 LinkIncremental="2"
85 SuppressStartupBanner="true"
86 GenerateManifest="false"
87 ModuleDefinitionFile=".\zlibvc.def"
88 GenerateDebugInformation="true"
89 ProgramDatabaseFile="$(OutDir)/zlibwapi.pdb"
90 GenerateMapFile="true"
91 MapFileName="$(OutDir)/zlibwapi.map"
92 SubSystem="2"
93 ImportLibrary="$(OutDir)/zlibwapi.lib"
94 />
95 <Tool
96 Name="VCALinkTool"
97 />
98 <Tool
99 Name="VCManifestTool"
100 />
101 <Tool
102 Name="VCXDCMakeTool"
103 />
104 <Tool
105 Name="VCBscMakeTool"
106 />
107 <Tool
108 Name="VCFxCopTool"
109 />
110 <Tool
111 Name="VCAppVerifierTool"
112 />
113 <Tool
114 Name="VCWebDeploymentTool"
115 />
116 <Tool
117 Name="VCPostBuildEventTool"
118 />
119 </Configuration>
120 <Configuration
121 Name="Debug|x64"
122 OutputDirectory="x64\ZlibDll$(ConfigurationName)"
123 IntermediateDirectory="x64\ZlibDll$(ConfigurationName)\Tmp"
124 ConfigurationType="2"
125 InheritedPropertySheets="UpgradeFromVC70.vsprops"
126 UseOfMFC="0"
127 ATLMinimizesCRunTimeLibraryUsage="false"
128 >
129 <Tool
130 Name="VCPreBuildEventTool"
131 />
132 <Tool
133 Name="VCCustomBuildTool"
134 />
135 <Tool
136 Name="VCXMLDataGeneratorTool"
137 />
138 <Tool
139 Name="VCWebServiceProxyGeneratorTool"
140 />
141 <Tool
142 Name="VCMIDLTool"
143 PreprocessorDefinitions="_DEBUG"
144 MkTypLibCompatible="true"
145 SuppressStartupBanner="true"
146 TargetEnvironment="3"
147 TypeLibraryName="$(OutDir)/zlibvc.tlb"
148 />
149 <Tool
150 Name="VCCLCompilerTool"
151 Optimization="0"
152 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
153 PreprocessorDefinitions="WIN32,_CRT_SECURE_NO_DEPRECATE,ZLIB_WINAPI;NO_snprintf,ASMV,ASMINF;WIN64"
154 ExceptionHandling="0"
155 RuntimeLibrary="3"
156 BufferSecurityCheck="false"
157 PrecompiledHeaderFile="$(IntDir)/zlibvc.pch"
158 AssemblerListingLocation="$(IntDir)\"
159 ObjectFile="$(IntDir)\"
160 ProgramDataBaseFileName="$(OutDir)\"
161 BrowseInformation="0"
162 WarningLevel="3"
163 SuppressStartupBanner="true"
164 DebugInformationFormat="3"
165 />
166 <Tool
167 Name="VCManagedResourceCompilerTool"
168 />
169 <Tool
170 Name="VCResourceCompilerTool"
171 PreprocessorDefinitions="_DEBUG"
172 Culture="1036"
173 />
174 <Tool
175 Name="VCPreLinkEventTool"
176 />
177 <Tool
178 Name="VCLinkerTool"
179 AdditionalDependencies="..\..\masmx64\gvmat64.obj ..\..\masmx64\inffasx64.obj "
180 OutputFile="$(OutDir)\zlibwapi.dll"
181 LinkIncremental="2"
182 SuppressStartupBanner="true"
183 GenerateManifest="false"
184 ModuleDefinitionFile=".\zlibvc.def"
185 GenerateDebugInformation="true"
186 ProgramDatabaseFile="$(OutDir)/zlibwapi.pdb"
187 GenerateMapFile="true"
188 MapFileName="$(OutDir)/zlibwapi.map"
189 SubSystem="2"
190 ImportLibrary="$(OutDir)/zlibwapi.lib"
191 TargetMachine="17"
192 />
193 <Tool
194 Name="VCALinkTool"
195 />
196 <Tool
197 Name="VCManifestTool"
198 />
199 <Tool
200 Name="VCXDCMakeTool"
201 />
202 <Tool
203 Name="VCBscMakeTool"
204 />
205 <Tool
206 Name="VCFxCopTool"
207 />
208 <Tool
209 Name="VCAppVerifierTool"
210 />
211 <Tool
212 Name="VCWebDeploymentTool"
213 />
214 <Tool
215 Name="VCPostBuildEventTool"
216 />
217 </Configuration>
218 <Configuration
219 Name="Debug|Itanium"
220 OutputDirectory="ia64\ZlibDll$(ConfigurationName)"
221 IntermediateDirectory="ia64\ZlibDll$(ConfigurationName)\Tmp"
222 ConfigurationType="2"
223 InheritedPropertySheets="UpgradeFromVC70.vsprops"
224 UseOfMFC="0"
225 ATLMinimizesCRunTimeLibraryUsage="false"
226 >
227 <Tool
228 Name="VCPreBuildEventTool"
229 />
230 <Tool
231 Name="VCCustomBuildTool"
232 />
233 <Tool
234 Name="VCXMLDataGeneratorTool"
235 />
236 <Tool
237 Name="VCWebServiceProxyGeneratorTool"
238 />
239 <Tool
240 Name="VCMIDLTool"
241 PreprocessorDefinitions="_DEBUG"
242 MkTypLibCompatible="true"
243 SuppressStartupBanner="true"
244 TargetEnvironment="2"
245 TypeLibraryName="$(OutDir)/zlibvc.tlb"
246 />
247 <Tool
248 Name="VCCLCompilerTool"
249 Optimization="0"
250 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
251 PreprocessorDefinitions="WIN32;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NO_snprintf;WIN64"
252 ExceptionHandling="0"
253 RuntimeLibrary="3"
254 BufferSecurityCheck="false"
255 PrecompiledHeaderFile="$(IntDir)/zlibvc.pch"
256 AssemblerListingLocation="$(IntDir)\"
257 ObjectFile="$(IntDir)\"
258 ProgramDataBaseFileName="$(OutDir)\"
259 BrowseInformation="0"
260 WarningLevel="3"
261 SuppressStartupBanner="true"
262 DebugInformationFormat="3"
263 />
264 <Tool
265 Name="VCManagedResourceCompilerTool"
266 />
267 <Tool
268 Name="VCResourceCompilerTool"
269 PreprocessorDefinitions="_DEBUG"
270 Culture="1036"
271 />
272 <Tool
273 Name="VCPreLinkEventTool"
274 />
275 <Tool
276 Name="VCLinkerTool"
277 OutputFile="$(OutDir)\zlibwapi.dll"
278 LinkIncremental="2"
279 SuppressStartupBanner="true"
280 GenerateManifest="false"
281 ModuleDefinitionFile=".\zlibvc.def"
282 GenerateDebugInformation="true"
283 ProgramDatabaseFile="$(OutDir)/zlibwapi.pdb"
284 GenerateMapFile="true"
285 MapFileName="$(OutDir)/zlibwapi.map"
286 SubSystem="2"
287 ImportLibrary="$(OutDir)/zlibwapi.lib"
288 TargetMachine="5"
289 />
290 <Tool
291 Name="VCALinkTool"
292 />
293 <Tool
294 Name="VCManifestTool"
295 />
296 <Tool
297 Name="VCXDCMakeTool"
298 />
299 <Tool
300 Name="VCBscMakeTool"
301 />
302 <Tool
303 Name="VCFxCopTool"
304 />
305 <Tool
306 Name="VCAppVerifierTool"
307 />
308 <Tool
309 Name="VCWebDeploymentTool"
310 />
311 <Tool
312 Name="VCPostBuildEventTool"
313 />
314 </Configuration>
315 <Configuration
316 Name="ReleaseWithoutAsm|Win32"
317 OutputDirectory="x86\ZlibDll$(ConfigurationName)"
318 IntermediateDirectory="x86\ZlibDll$(ConfigurationName)\Tmp"
319 ConfigurationType="2"
320 InheritedPropertySheets="UpgradeFromVC70.vsprops"
321 UseOfMFC="0"
322 ATLMinimizesCRunTimeLibraryUsage="false"
323 WholeProgramOptimization="1"
324 >
325 <Tool
326 Name="VCPreBuildEventTool"
327 />
328 <Tool
329 Name="VCCustomBuildTool"
330 />
331 <Tool
332 Name="VCXMLDataGeneratorTool"
333 />
334 <Tool
335 Name="VCWebServiceProxyGeneratorTool"
336 />
337 <Tool
338 Name="VCMIDLTool"
339 PreprocessorDefinitions="NDEBUG"
340 MkTypLibCompatible="true"
341 SuppressStartupBanner="true"
342 TargetEnvironment="1"
343 TypeLibraryName="$(OutDir)/zlibvc.tlb"
344 />
345 <Tool
346 Name="VCCLCompilerTool"
347 InlineFunctionExpansion="1"
348 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
349 PreprocessorDefinitions="WIN32,_CRT_SECURE_NO_DEPRECATE,ZLIB_WINAPI;NO_snprintf"
350 StringPooling="true"
351 ExceptionHandling="0"
352 RuntimeLibrary="2"
353 BufferSecurityCheck="false"
354 EnableFunctionLevelLinking="true"
355 PrecompiledHeaderFile="$(IntDir)/zlibvc.pch"
356 AssemblerOutput="2"
357 AssemblerListingLocation="$(IntDir)\"
358 ObjectFile="$(IntDir)\"
359 ProgramDataBaseFileName="$(OutDir)\"
360 BrowseInformation="0"
361 WarningLevel="3"
362 SuppressStartupBanner="true"
363 />
364 <Tool
365 Name="VCManagedResourceCompilerTool"
366 />
367 <Tool
368 Name="VCResourceCompilerTool"
369 PreprocessorDefinitions="NDEBUG"
370 Culture="1036"
371 />
372 <Tool
373 Name="VCPreLinkEventTool"
374 />
375 <Tool
376 Name="VCLinkerTool"
377 AdditionalOptions="/MACHINE:I386"
378 OutputFile="$(OutDir)\zlibwapi.dll"
379 LinkIncremental="1"
380 SuppressStartupBanner="true"
381 GenerateManifest="false"
382 IgnoreAllDefaultLibraries="false"
383 ModuleDefinitionFile=".\zlibvc.def"
384 ProgramDatabaseFile="$(OutDir)/zlibwapi.pdb"
385 GenerateMapFile="true"
386 MapFileName="$(OutDir)/zlibwapi.map"
387 SubSystem="2"
388 OptimizeForWindows98="1"
389 ImportLibrary="$(OutDir)/zlibwapi.lib"
390 />
391 <Tool
392 Name="VCALinkTool"
393 />
394 <Tool
395 Name="VCManifestTool"
396 />
397 <Tool
398 Name="VCXDCMakeTool"
399 />
400 <Tool
401 Name="VCBscMakeTool"
402 />
403 <Tool
404 Name="VCFxCopTool"
405 />
406 <Tool
407 Name="VCAppVerifierTool"
408 />
409 <Tool
410 Name="VCWebDeploymentTool"
411 />
412 <Tool
413 Name="VCPostBuildEventTool"
414 />
415 </Configuration>
416 <Configuration
417 Name="ReleaseWithoutAsm|x64"
418 OutputDirectory="x64\ZlibDll$(ConfigurationName)"
419 IntermediateDirectory="x64\ZlibDll$(ConfigurationName)\Tmp"
420 ConfigurationType="2"
421 InheritedPropertySheets="UpgradeFromVC70.vsprops"
422 UseOfMFC="0"
423 ATLMinimizesCRunTimeLibraryUsage="false"
424 WholeProgramOptimization="1"
425 >
426 <Tool
427 Name="VCPreBuildEventTool"
428 />
429 <Tool
430 Name="VCCustomBuildTool"
431 />
432 <Tool
433 Name="VCXMLDataGeneratorTool"
434 />
435 <Tool
436 Name="VCWebServiceProxyGeneratorTool"
437 />
438 <Tool
439 Name="VCMIDLTool"
440 PreprocessorDefinitions="NDEBUG"
441 MkTypLibCompatible="true"
442 SuppressStartupBanner="true"
443 TargetEnvironment="3"
444 TypeLibraryName="$(OutDir)/zlibvc.tlb"
445 />
446 <Tool
447 Name="VCCLCompilerTool"
448 InlineFunctionExpansion="1"
449 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
450 PreprocessorDefinitions="WIN32,_CRT_SECURE_NO_DEPRECATE,ZLIB_WINAPI;NO_snprintf;WIN64"
451 StringPooling="true"
452 ExceptionHandling="0"
453 RuntimeLibrary="2"
454 BufferSecurityCheck="false"
455 EnableFunctionLevelLinking="true"
456 PrecompiledHeaderFile="$(IntDir)/zlibvc.pch"
457 AssemblerOutput="2"
458 AssemblerListingLocation="$(IntDir)\"
459 ObjectFile="$(IntDir)\"
460 ProgramDataBaseFileName="$(OutDir)\"
461 BrowseInformation="0"
462 WarningLevel="3"
463 SuppressStartupBanner="true"
464 />
465 <Tool
466 Name="VCManagedResourceCompilerTool"
467 />
468 <Tool
469 Name="VCResourceCompilerTool"
470 PreprocessorDefinitions="NDEBUG"
471 Culture="1036"
472 />
473 <Tool
474 Name="VCPreLinkEventTool"
475 />
476 <Tool
477 Name="VCLinkerTool"
478 OutputFile="$(OutDir)\zlibwapi.dll"
479 LinkIncremental="1"
480 SuppressStartupBanner="true"
481 GenerateManifest="false"
482 IgnoreAllDefaultLibraries="false"
483 ModuleDefinitionFile=".\zlibvc.def"
484 ProgramDatabaseFile="$(OutDir)/zlibwapi.pdb"
485 GenerateMapFile="true"
486 MapFileName="$(OutDir)/zlibwapi.map"
487 SubSystem="2"
488 OptimizeForWindows98="1"
489 ImportLibrary="$(OutDir)/zlibwapi.lib"
490 TargetMachine="17"
491 />
492 <Tool
493 Name="VCALinkTool"
494 />
495 <Tool
496 Name="VCManifestTool"
497 />
498 <Tool
499 Name="VCXDCMakeTool"
500 />
501 <Tool
502 Name="VCBscMakeTool"
503 />
504 <Tool
505 Name="VCFxCopTool"
506 />
507 <Tool
508 Name="VCAppVerifierTool"
509 />
510 <Tool
511 Name="VCWebDeploymentTool"
512 />
513 <Tool
514 Name="VCPostBuildEventTool"
515 />
516 </Configuration>
517 <Configuration
518 Name="ReleaseWithoutAsm|Itanium"
519 OutputDirectory="ia64\ZlibDll$(ConfigurationName)"
520 IntermediateDirectory="ia64\ZlibDll$(ConfigurationName)\Tmp"
521 ConfigurationType="2"
522 InheritedPropertySheets="UpgradeFromVC70.vsprops"
523 UseOfMFC="0"
524 ATLMinimizesCRunTimeLibraryUsage="false"
525 WholeProgramOptimization="1"
526 >
527 <Tool
528 Name="VCPreBuildEventTool"
529 />
530 <Tool
531 Name="VCCustomBuildTool"
532 />
533 <Tool
534 Name="VCXMLDataGeneratorTool"
535 />
536 <Tool
537 Name="VCWebServiceProxyGeneratorTool"
538 />
539 <Tool
540 Name="VCMIDLTool"
541 PreprocessorDefinitions="NDEBUG"
542 MkTypLibCompatible="true"
543 SuppressStartupBanner="true"
544 TargetEnvironment="2"
545 TypeLibraryName="$(OutDir)/zlibvc.tlb"
546 />
547 <Tool
548 Name="VCCLCompilerTool"
549 InlineFunctionExpansion="1"
550 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
551 PreprocessorDefinitions="WIN32,_CRT_SECURE_NO_DEPRECATE,ZLIB_WINAPI;NO_snprintf;WIN64"
552 StringPooling="true"
553 ExceptionHandling="0"
554 RuntimeLibrary="2"
555 BufferSecurityCheck="false"
556 EnableFunctionLevelLinking="true"
557 PrecompiledHeaderFile="$(IntDir)/zlibvc.pch"
558 AssemblerOutput="2"
559 AssemblerListingLocation="$(IntDir)\"
560 ObjectFile="$(IntDir)\"
561 ProgramDataBaseFileName="$(OutDir)\"
562 BrowseInformation="0"
563 WarningLevel="3"
564 SuppressStartupBanner="true"
565 />
566 <Tool
567 Name="VCManagedResourceCompilerTool"
568 />
569 <Tool
570 Name="VCResourceCompilerTool"
571 PreprocessorDefinitions="NDEBUG"
572 Culture="1036"
573 />
574 <Tool
575 Name="VCPreLinkEventTool"
576 />
577 <Tool
578 Name="VCLinkerTool"
579 OutputFile="$(OutDir)\zlibwapi.dll"
580 LinkIncremental="1"
581 SuppressStartupBanner="true"
582 GenerateManifest="false"
583 IgnoreAllDefaultLibraries="false"
584 ModuleDefinitionFile=".\zlibvc.def"
585 ProgramDatabaseFile="$(OutDir)/zlibwapi.pdb"
586 GenerateMapFile="true"
587 MapFileName="$(OutDir)/zlibwapi.map"
588 SubSystem="2"
589 OptimizeForWindows98="1"
590 ImportLibrary="$(OutDir)/zlibwapi.lib"
591 TargetMachine="5"
592 />
593 <Tool
594 Name="VCALinkTool"
595 />
596 <Tool
597 Name="VCManifestTool"
598 />
599 <Tool
600 Name="VCXDCMakeTool"
601 />
602 <Tool
603 Name="VCBscMakeTool"
604 />
605 <Tool
606 Name="VCFxCopTool"
607 />
608 <Tool
609 Name="VCAppVerifierTool"
610 />
611 <Tool
612 Name="VCWebDeploymentTool"
613 />
614 <Tool
615 Name="VCPostBuildEventTool"
616 />
617 </Configuration>
618 <Configuration
619 Name="Release|Win32"
620 OutputDirectory="x86\ZlibDll$(ConfigurationName)"
621 IntermediateDirectory="x86\ZlibDll$(ConfigurationName)\Tmp"
622 ConfigurationType="2"
623 InheritedPropertySheets="UpgradeFromVC70.vsprops"
624 UseOfMFC="0"
625 ATLMinimizesCRunTimeLibraryUsage="false"
626 WholeProgramOptimization="1"
627 >
628 <Tool
629 Name="VCPreBuildEventTool"
630 />
631 <Tool
632 Name="VCCustomBuildTool"
633 />
634 <Tool
635 Name="VCXMLDataGeneratorTool"
636 />
637 <Tool
638 Name="VCWebServiceProxyGeneratorTool"
639 />
640 <Tool
641 Name="VCMIDLTool"
642 PreprocessorDefinitions="NDEBUG"
643 MkTypLibCompatible="true"
644 SuppressStartupBanner="true"
645 TargetEnvironment="1"
646 TypeLibraryName="$(OutDir)/zlibvc.tlb"
647 />
648 <Tool
649 Name="VCCLCompilerTool"
650 InlineFunctionExpansion="1"
651 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
652 PreprocessorDefinitions="WIN32;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NO_snprintf;ASMV;ASMINF"
653 StringPooling="true"
654 ExceptionHandling="0"
655 RuntimeLibrary="2"
656 BufferSecurityCheck="false"
657 EnableFunctionLevelLinking="true"
658 PrecompiledHeaderFile="$(IntDir)/zlibvc.pch"
659 AssemblerOutput="2"
660 AssemblerListingLocation="$(IntDir)\"
661 ObjectFile="$(IntDir)\"
662 ProgramDataBaseFileName="$(OutDir)\"
663 BrowseInformation="0"
664 WarningLevel="3"
665 SuppressStartupBanner="true"
666 />
667 <Tool
668 Name="VCManagedResourceCompilerTool"
669 />
670 <Tool
671 Name="VCResourceCompilerTool"
672 PreprocessorDefinitions="NDEBUG"
673 Culture="1036"
674 />
675 <Tool
676 Name="VCPreLinkEventTool"
677 />
678 <Tool
679 Name="VCLinkerTool"
680 AdditionalOptions="/MACHINE:I386"
681 AdditionalDependencies="..\..\masmx86\gvmat32.obj ..\..\masmx86\inffas32.obj "
682 OutputFile="$(OutDir)\zlibwapi.dll"
683 LinkIncremental="1"
684 SuppressStartupBanner="true"
685 GenerateManifest="false"
686 IgnoreAllDefaultLibraries="false"
687 ModuleDefinitionFile=".\zlibvc.def"
688 ProgramDatabaseFile="$(OutDir)/zlibwapi.pdb"
689 GenerateMapFile="true"
690 MapFileName="$(OutDir)/zlibwapi.map"
691 SubSystem="2"
692 OptimizeForWindows98="1"
693 ImportLibrary="$(OutDir)/zlibwapi.lib"
694 />
695 <Tool
696 Name="VCALinkTool"
697 />
698 <Tool
699 Name="VCManifestTool"
700 />
701 <Tool
702 Name="VCXDCMakeTool"
703 />
704 <Tool
705 Name="VCBscMakeTool"
706 />
707 <Tool
708 Name="VCFxCopTool"
709 />
710 <Tool
711 Name="VCAppVerifierTool"
712 />
713 <Tool
714 Name="VCWebDeploymentTool"
715 />
716 <Tool
717 Name="VCPostBuildEventTool"
718 />
719 </Configuration>
720 <Configuration
721 Name="Release|x64"
722 OutputDirectory="x64\ZlibDll$(ConfigurationName)"
723 IntermediateDirectory="x64\ZlibDll$(ConfigurationName)\Tmp"
724 ConfigurationType="2"
725 InheritedPropertySheets="UpgradeFromVC70.vsprops"
726 UseOfMFC="0"
727 ATLMinimizesCRunTimeLibraryUsage="false"
728 WholeProgramOptimization="1"
729 >
730 <Tool
731 Name="VCPreBuildEventTool"
732 />
733 <Tool
734 Name="VCCustomBuildTool"
735 />
736 <Tool
737 Name="VCXMLDataGeneratorTool"
738 />
739 <Tool
740 Name="VCWebServiceProxyGeneratorTool"
741 />
742 <Tool
743 Name="VCMIDLTool"
744 PreprocessorDefinitions="NDEBUG"
745 MkTypLibCompatible="true"
746 SuppressStartupBanner="true"
747 TargetEnvironment="3"
748 TypeLibraryName="$(OutDir)/zlibvc.tlb"
749 />
750 <Tool
751 Name="VCCLCompilerTool"
752 InlineFunctionExpansion="1"
753 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
754 PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NO_snprintf;ASMV;ASMINF;WIN64"
755 StringPooling="true"
756 ExceptionHandling="0"
757 RuntimeLibrary="2"
758 BufferSecurityCheck="false"
759 EnableFunctionLevelLinking="true"
760 PrecompiledHeaderFile="$(IntDir)/zlibvc.pch"
761 AssemblerOutput="2"
762 AssemblerListingLocation="$(IntDir)\"
763 ObjectFile="$(IntDir)\"
764 ProgramDataBaseFileName="$(OutDir)\"
765 BrowseInformation="0"
766 WarningLevel="3"
767 SuppressStartupBanner="true"
768 />
769 <Tool
770 Name="VCManagedResourceCompilerTool"
771 />
772 <Tool
773 Name="VCResourceCompilerTool"
774 PreprocessorDefinitions="NDEBUG"
775 Culture="1036"
776 />
777 <Tool
778 Name="VCPreLinkEventTool"
779 />
780 <Tool
781 Name="VCLinkerTool"
782 AdditionalDependencies="..\..\masmx64\gvmat64.obj ..\..\masmx64\inffasx64.obj "
783 OutputFile="$(OutDir)\zlibwapi.dll"
784 LinkIncremental="1"
785 SuppressStartupBanner="true"
786 GenerateManifest="false"
787 IgnoreAllDefaultLibraries="false"
788 ModuleDefinitionFile=".\zlibvc.def"
789 ProgramDatabaseFile="$(OutDir)/zlibwapi.pdb"
790 GenerateMapFile="true"
791 MapFileName="$(OutDir)/zlibwapi.map"
792 SubSystem="2"
793 OptimizeForWindows98="1"
794 ImportLibrary="$(OutDir)/zlibwapi.lib"
795 TargetMachine="17"
796 />
797 <Tool
798 Name="VCALinkTool"
799 />
800 <Tool
801 Name="VCManifestTool"
802 />
803 <Tool
804 Name="VCXDCMakeTool"
805 />
806 <Tool
807 Name="VCBscMakeTool"
808 />
809 <Tool
810 Name="VCFxCopTool"
811 />
812 <Tool
813 Name="VCAppVerifierTool"
814 />
815 <Tool
816 Name="VCWebDeploymentTool"
817 />
818 <Tool
819 Name="VCPostBuildEventTool"
820 />
821 </Configuration>
822 <Configuration
823 Name="Release|Itanium"
824 OutputDirectory="ia64\ZlibDll$(ConfigurationName)"
825 IntermediateDirectory="ia64\ZlibDll$(ConfigurationName)\Tmp"
826 ConfigurationType="2"
827 InheritedPropertySheets="UpgradeFromVC70.vsprops"
828 UseOfMFC="0"
829 ATLMinimizesCRunTimeLibraryUsage="false"
830 WholeProgramOptimization="1"
831 >
832 <Tool
833 Name="VCPreBuildEventTool"
834 />
835 <Tool
836 Name="VCCustomBuildTool"
837 />
838 <Tool
839 Name="VCXMLDataGeneratorTool"
840 />
841 <Tool
842 Name="VCWebServiceProxyGeneratorTool"
843 />
844 <Tool
845 Name="VCMIDLTool"
846 PreprocessorDefinitions="NDEBUG"
847 MkTypLibCompatible="true"
848 SuppressStartupBanner="true"
849 TargetEnvironment="2"
850 TypeLibraryName="$(OutDir)/zlibvc.tlb"
851 />
852 <Tool
853 Name="VCCLCompilerTool"
854 InlineFunctionExpansion="1"
855 AdditionalIncludeDirectories="..\..\..;..\..\masmx86"
856 PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NO_snprintf;WIN64"
857 StringPooling="true"
858 ExceptionHandling="0"
859 RuntimeLibrary="2"
860 BufferSecurityCheck="false"
861 EnableFunctionLevelLinking="true"
862 PrecompiledHeaderFile="$(IntDir)/zlibvc.pch"
863 AssemblerOutput="2"
864 AssemblerListingLocation="$(IntDir)\"
865 ObjectFile="$(IntDir)\"
866 ProgramDataBaseFileName="$(OutDir)\"
867 BrowseInformation="0"
868 WarningLevel="3"
869 SuppressStartupBanner="true"
870 />
871 <Tool
872 Name="VCManagedResourceCompilerTool"
873 />
874 <Tool
875 Name="VCResourceCompilerTool"
876 PreprocessorDefinitions="NDEBUG"
877 Culture="1036"
878 />
879 <Tool
880 Name="VCPreLinkEventTool"
881 />
882 <Tool
883 Name="VCLinkerTool"
884 OutputFile="$(OutDir)\zlibwapi.dll"
885 LinkIncremental="1"
886 SuppressStartupBanner="true"
887 GenerateManifest="false"
888 IgnoreAllDefaultLibraries="false"
889 ModuleDefinitionFile=".\zlibvc.def"
890 ProgramDatabaseFile="$(OutDir)/zlibwapi.pdb"
891 GenerateMapFile="true"
892 MapFileName="$(OutDir)/zlibwapi.map"
893 SubSystem="2"
894 OptimizeForWindows98="1"
895 ImportLibrary="$(OutDir)/zlibwapi.lib"
896 TargetMachine="5"
897 />
898 <Tool
899 Name="VCALinkTool"
900 />
901 <Tool
902 Name="VCManifestTool"
903 />
904 <Tool
905 Name="VCXDCMakeTool"
906 />
907 <Tool
908 Name="VCBscMakeTool"
909 />
910 <Tool
911 Name="VCFxCopTool"
912 />
913 <Tool
914 Name="VCAppVerifierTool"
915 />
916 <Tool
917 Name="VCWebDeploymentTool"
918 />
919 <Tool
920 Name="VCPostBuildEventTool"
921 />
922 </Configuration>
923 </Configurations>
924 <References>
925 </References>
926 <Files>
927 <Filter
928 Name="Source Files"
929 Filter="cpp;c;cxx;rc;def;r;odl;hpj;bat;for;f90"
930 >
931 <File
932 RelativePath="..\..\..\adler32.c"
933 >
934 </File>
935 <File
936 RelativePath="..\..\..\compress.c"
937 >
938 </File>
939 <File
940 RelativePath="..\..\..\crc32.c"
941 >
942 </File>
943 <File
944 RelativePath="..\..\..\deflate.c"
945 >
946 </File>
947 <File
948 RelativePath="..\..\masmx86\gvmat32c.c"
949 >
950 <FileConfiguration
951 Name="Debug|x64"
952 ExcludedFromBuild="true"
953 >
954 <Tool
955 Name="VCCLCompilerTool"
956 />
957 </FileConfiguration>
958 <FileConfiguration
959 Name="Debug|Itanium"
960 ExcludedFromBuild="true"
961 >
962 <Tool
963 Name="VCCLCompilerTool"
964 />
965 </FileConfiguration>
966 <FileConfiguration
967 Name="ReleaseWithoutAsm|Win32"
968 ExcludedFromBuild="true"
969 >
970 <Tool
971 Name="VCCLCompilerTool"
972 />
973 </FileConfiguration>
974 <FileConfiguration
975 Name="ReleaseWithoutAsm|x64"
976 ExcludedFromBuild="true"
977 >
978 <Tool
979 Name="VCCLCompilerTool"
980 />
981 </FileConfiguration>
982 <FileConfiguration
983 Name="ReleaseWithoutAsm|Itanium"
984 ExcludedFromBuild="true"
985 >
986 <Tool
987 Name="VCCLCompilerTool"
988 />
989 </FileConfiguration>
990 <FileConfiguration
991 Name="Release|x64"
992 ExcludedFromBuild="true"
993 >
994 <Tool
995 Name="VCCLCompilerTool"
996 />
997 </FileConfiguration>
998 <FileConfiguration
999 Name="Release|Itanium"
1000 ExcludedFromBuild="true"
1001 >
1002 <Tool
1003 Name="VCCLCompilerTool"
1004 />
1005 </FileConfiguration>
1006 </File>
1007 <File
1008 RelativePath="..\..\..\gzclose.c">
1009 </File>
1010 <File
1011 RelativePath="..\..\..\gzio.c">
1012 </File>
1013 <File
1014 RelativePath="..\..\..\gzlib.c">
1015 </File>
1016 <File
1017 RelativePath="..\..\..\gzread.c">
1018 </File>
1019 <File
1020 RelativePath="..\..\..\gzwrite.c">
1021 </File>
1022 <File
1023 RelativePath="..\..\..\infback.c"
1024 >
1025 </File>
1026 <File
1027 RelativePath="..\..\masmx64\inffas8664.c"
1028 >
1029 <FileConfiguration
1030 Name="Debug|Win32"
1031 ExcludedFromBuild="true"
1032 >
1033 <Tool
1034 Name="VCCLCompilerTool"
1035 />
1036 </FileConfiguration>
1037 <FileConfiguration
1038 Name="Debug|Itanium"
1039 ExcludedFromBuild="true"
1040 >
1041 <Tool
1042 Name="VCCLCompilerTool"
1043 />
1044 </FileConfiguration>
1045 <FileConfiguration
1046 Name="ReleaseWithoutAsm|Win32"
1047 ExcludedFromBuild="true"
1048 >
1049 <Tool
1050 Name="VCCLCompilerTool"
1051 />
1052 </FileConfiguration>
1053 <FileConfiguration
1054 Name="ReleaseWithoutAsm|Itanium"
1055 ExcludedFromBuild="true"
1056 >
1057 <Tool
1058 Name="VCCLCompilerTool"
1059 />
1060 </FileConfiguration>
1061 <FileConfiguration
1062 Name="Release|Win32"
1063 ExcludedFromBuild="true"
1064 >
1065 <Tool
1066 Name="VCCLCompilerTool"
1067 />
1068 </FileConfiguration>
1069 <FileConfiguration
1070 Name="Release|Itanium"
1071 ExcludedFromBuild="true"
1072 >
1073 <Tool
1074 Name="VCCLCompilerTool"
1075 />
1076 </FileConfiguration>
1077 </File>
1078 <File
1079 RelativePath="..\..\..\inffast.c"
1080 >
1081 </File>
1082 <File
1083 RelativePath="..\..\..\inflate.c"
1084 >
1085 </File>
1086 <File
1087 RelativePath="..\..\..\inftrees.c"
1088 >
1089 </File>
1090 <File
1091 RelativePath="..\..\minizip\ioapi.c"
1092 >
1093 </File>
1094 <File
1095 RelativePath="..\..\minizip\iowin32.c"
1096 >
1097 </File>
1098 <File
1099 RelativePath="..\..\..\trees.c"
1100 >
1101 </File>
1102 <File
1103 RelativePath="..\..\..\uncompr.c"
1104 >
1105 </File>
1106 <File
1107 RelativePath="..\..\minizip\unzip.c"
1108 >
1109 <FileConfiguration
1110 Name="Release|Win32"
1111 >
1112 <Tool
1113 Name="VCCLCompilerTool"
1114 AdditionalIncludeDirectories=""
1115 PreprocessorDefinitions="ZLIB_INTERNAL"
1116 />
1117 </FileConfiguration>
1118 <FileConfiguration
1119 Name="Release|x64"
1120 >
1121 <Tool
1122 Name="VCCLCompilerTool"
1123 AdditionalIncludeDirectories=""
1124 PreprocessorDefinitions="ZLIB_INTERNAL"
1125 />
1126 </FileConfiguration>
1127 <FileConfiguration
1128 Name="Release|Itanium"
1129 >
1130 <Tool
1131 Name="VCCLCompilerTool"
1132 AdditionalIncludeDirectories=""
1133 PreprocessorDefinitions="ZLIB_INTERNAL"
1134 />
1135 </FileConfiguration>
1136 </File>
1137 <File
1138 RelativePath="..\..\minizip\zip.c"
1139 >
1140 <FileConfiguration
1141 Name="Release|Win32"
1142 >
1143 <Tool
1144 Name="VCCLCompilerTool"
1145 AdditionalIncludeDirectories=""
1146 PreprocessorDefinitions="ZLIB_INTERNAL"
1147 />
1148 </FileConfiguration>
1149 <FileConfiguration
1150 Name="Release|x64"
1151 >
1152 <Tool
1153 Name="VCCLCompilerTool"
1154 AdditionalIncludeDirectories=""
1155 PreprocessorDefinitions="ZLIB_INTERNAL"
1156 />
1157 </FileConfiguration>
1158 <FileConfiguration
1159 Name="Release|Itanium"
1160 >
1161 <Tool
1162 Name="VCCLCompilerTool"
1163 AdditionalIncludeDirectories=""
1164 PreprocessorDefinitions="ZLIB_INTERNAL"
1165 />
1166 </FileConfiguration>
1167 </File>
1168 <File
1169 RelativePath=".\zlib.rc"
1170 >
1171 </File>
1172 <File
1173 RelativePath=".\zlibvc.def"
1174 >
1175 </File>
1176 <File
1177 RelativePath="..\..\..\zutil.c"
1178 >
1179 </File>
1180 </Filter>
1181 <Filter
1182 Name="Header Files"
1183 Filter="h;hpp;hxx;hm;inl;fi;fd"
1184 >
1185 <File
1186 RelativePath="..\..\..\deflate.h"
1187 >
1188 </File>
1189 <File
1190 RelativePath="..\..\..\infblock.h"
1191 >
1192 </File>
1193 <File
1194 RelativePath="..\..\..\infcodes.h"
1195 >
1196 </File>
1197 <File
1198 RelativePath="..\..\..\inffast.h"
1199 >
1200 </File>
1201 <File
1202 RelativePath="..\..\..\inftrees.h"
1203 >
1204 </File>
1205 <File
1206 RelativePath="..\..\..\infutil.h"
1207 >
1208 </File>
1209 <File
1210 RelativePath="..\..\..\zconf.h"
1211 >
1212 </File>
1213 <File
1214 RelativePath="..\..\..\zlib.h"
1215 >
1216 </File>
1217 <File
1218 RelativePath="..\..\..\zutil.h"
1219 >
1220 </File>
1221 </Filter>
1222 <Filter
1223 Name="Resource Files"
1224 Filter="ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"
1225 >
1226 </Filter>
1227 </Files>
1228 <Globals>
1229 </Globals>
1230</VisualStudioProject>
diff --git a/contrib/dotzlib/DotZLib.build b/contrib/dotzlib/DotZLib.build
index ed19cc9..7f90d6b 100644
--- a/contrib/dotzlib/DotZLib.build
+++ b/contrib/dotzlib/DotZLib.build
@@ -4,7 +4,7 @@
4 4
5 <property name="nunit.location" value="c:/program files/NUnit V2.1/bin" /> 5 <property name="nunit.location" value="c:/program files/NUnit V2.1/bin" />
6 <property name="build.root" value="bin" /> 6 <property name="build.root" value="bin" />
7 7
8 <property name="debug" value="true" /> 8 <property name="debug" value="true" />
9 <property name="nunit" value="true" /> 9 <property name="nunit" value="true" />
10 10
@@ -16,7 +16,7 @@
16 </target> 16 </target>
17 17
18 <target name="build" description="compiles the source code"> 18 <target name="build" description="compiles the source code">
19 19
20 <mkdir dir="${build.folder}" /> 20 <mkdir dir="${build.folder}" />
21 <csc target="library" output="${build.folder}DotZLib.dll" debug="${debug}"> 21 <csc target="library" output="${build.folder}DotZLib.dll" debug="${debug}">
22 <references basedir="${nunit.location}"> 22 <references basedir="${nunit.location}">
diff --git a/contrib/dotzlib/DotZLib.chm b/contrib/dotzlib/DotZLib.chm
index 0bc7df7..f214a44 100644
--- a/contrib/dotzlib/DotZLib.chm
+++ b/contrib/dotzlib/DotZLib.chm
Binary files differ
diff --git a/contrib/dotzlib/DotZLib/AssemblyInfo.cs b/contrib/dotzlib/DotZLib/AssemblyInfo.cs
index 6fc0fdc..0491bfc 100644
--- a/contrib/dotzlib/DotZLib/AssemblyInfo.cs
+++ b/contrib/dotzlib/DotZLib/AssemblyInfo.cs
@@ -2,7 +2,7 @@ using System.Reflection;
2using System.Runtime.CompilerServices; 2using System.Runtime.CompilerServices;
3 3
4// 4//
5// General Information about an assembly is controlled through the following 5// General Information about an assembly is controlled through the following
6// set of attributes. Change these attribute values to modify the information 6// set of attributes. Change these attribute values to modify the information
7// associated with an assembly. 7// associated with an assembly.
8// 8//
@@ -13,42 +13,42 @@ using System.Runtime.CompilerServices;
13[assembly: AssemblyProduct("")] 13[assembly: AssemblyProduct("")]
14[assembly: AssemblyCopyright("(c) 2004 by Henrik Ravn")] 14[assembly: AssemblyCopyright("(c) 2004 by Henrik Ravn")]
15[assembly: AssemblyTrademark("")] 15[assembly: AssemblyTrademark("")]
16[assembly: AssemblyCulture("")] 16[assembly: AssemblyCulture("")]
17 17
18// 18//
19// Version information for an assembly consists of the following four values: 19// Version information for an assembly consists of the following four values:
20// 20//
21// Major Version 21// Major Version
22// Minor Version 22// Minor Version
23// Build Number 23// Build Number
24// Revision 24// Revision
25// 25//
26// You can specify all the values or you can default the Revision and Build Numbers 26// You can specify all the values or you can default the Revision and Build Numbers
27// by using the '*' as shown below: 27// by using the '*' as shown below:
28 28
29[assembly: AssemblyVersion("1.0.*")] 29[assembly: AssemblyVersion("1.0.*")]
30 30
31// 31//
32// In order to sign your assembly you must specify a key to use. Refer to the 32// In order to sign your assembly you must specify a key to use. Refer to the
33// Microsoft .NET Framework documentation for more information on assembly signing. 33// Microsoft .NET Framework documentation for more information on assembly signing.
34// 34//
35// Use the attributes below to control which key is used for signing. 35// Use the attributes below to control which key is used for signing.
36// 36//
37// Notes: 37// Notes:
38// (*) If no key is specified, the assembly is not signed. 38// (*) If no key is specified, the assembly is not signed.
39// (*) KeyName refers to a key that has been installed in the Crypto Service 39// (*) KeyName refers to a key that has been installed in the Crypto Service
40// Provider (CSP) on your machine. KeyFile refers to a file which contains 40// Provider (CSP) on your machine. KeyFile refers to a file which contains
41// a key. 41// a key.
42// (*) If the KeyFile and the KeyName values are both specified, the 42// (*) If the KeyFile and the KeyName values are both specified, the
43// following processing occurs: 43// following processing occurs:
44// (1) If the KeyName can be found in the CSP, that key is used. 44// (1) If the KeyName can be found in the CSP, that key is used.
45// (2) If the KeyName does not exist and the KeyFile does exist, the key 45// (2) If the KeyName does not exist and the KeyFile does exist, the key
46// in the KeyFile is installed into the CSP and used. 46// in the KeyFile is installed into the CSP and used.
47// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility. 47// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
48// When specifying the KeyFile, the location of the KeyFile should be 48// When specifying the KeyFile, the location of the KeyFile should be
49// relative to the project output directory which is 49// relative to the project output directory which is
50// %Project Directory%\obj\<configuration>. For example, if your KeyFile is 50// %Project Directory%\obj\<configuration>. For example, if your KeyFile is
51// located in the project directory, you would specify the AssemblyKeyFile 51// located in the project directory, you would specify the AssemblyKeyFile
52// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")] 52// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")]
53// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework 53// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
54// documentation for more information on this. 54// documentation for more information on this.
diff --git a/contrib/dotzlib/DotZLib/ChecksumImpl.cs b/contrib/dotzlib/DotZLib/ChecksumImpl.cs
index dfe7e90..788b2fc 100644
--- a/contrib/dotzlib/DotZLib/ChecksumImpl.cs
+++ b/contrib/dotzlib/DotZLib/ChecksumImpl.cs
@@ -1,7 +1,7 @@
1// 1//
2// © Copyright Henrik Ravn 2004 2// © Copyright Henrik Ravn 2004
3// 3//
4// Use, modification and distribution are subject to the Boost Software License, Version 1.0. 4// Use, modification and distribution are subject to the Boost Software License, Version 1.0.
5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6// 6//
7 7
@@ -25,7 +25,7 @@ namespace DotZLib
25 protected uint _current; 25 protected uint _current;
26 26
27 /// <summary> 27 /// <summary>
28 /// Initializes a new instance of the checksum generator base - the current checksum is 28 /// Initializes a new instance of the checksum generator base - the current checksum is
29 /// set to zero 29 /// set to zero
30 /// </summary> 30 /// </summary>
31 public ChecksumGeneratorBase() 31 public ChecksumGeneratorBase()
@@ -61,7 +61,7 @@ namespace DotZLib
61 /// <exception cref="ArgumentException">The sum of offset and count is larger than the length of <c>data</c></exception> 61 /// <exception cref="ArgumentException">The sum of offset and count is larger than the length of <c>data</c></exception>
62 /// <exception cref="NullReferenceException"><c>data</c> is a null reference</exception> 62 /// <exception cref="NullReferenceException"><c>data</c> is a null reference</exception>
63 /// <exception cref="ArgumentOutOfRangeException">Offset or count is negative.</exception> 63 /// <exception cref="ArgumentOutOfRangeException">Offset or count is negative.</exception>
64 /// <remarks>All the other <c>Update</c> methods are implmeneted in terms of this one. 64 /// <remarks>All the other <c>Update</c> methods are implmeneted in terms of this one.
65 /// This is therefore the only method a derived class has to implement</remarks> 65 /// This is therefore the only method a derived class has to implement</remarks>
66 public abstract void Update(byte[] data, int offset, int count); 66 public abstract void Update(byte[] data, int offset, int count);
67 67
@@ -101,7 +101,7 @@ namespace DotZLib
101 /// <summary> 101 /// <summary>
102 /// Implements a CRC32 checksum generator 102 /// Implements a CRC32 checksum generator
103 /// </summary> 103 /// </summary>
104 public sealed class CRC32Checksum : ChecksumGeneratorBase 104 public sealed class CRC32Checksum : ChecksumGeneratorBase
105 { 105 {
106 #region DLL imports 106 #region DLL imports
107 107
@@ -152,7 +152,7 @@ namespace DotZLib
152 /// <summary> 152 /// <summary>
153 /// Implements a checksum generator that computes the Adler checksum on data 153 /// Implements a checksum generator that computes the Adler checksum on data
154 /// </summary> 154 /// </summary>
155 public sealed class AdlerChecksum : ChecksumGeneratorBase 155 public sealed class AdlerChecksum : ChecksumGeneratorBase
156 { 156 {
157 #region DLL imports 157 #region DLL imports
158 158
diff --git a/contrib/dotzlib/DotZLib/CircularBuffer.cs b/contrib/dotzlib/DotZLib/CircularBuffer.cs
index 16997e9..c1cab3a 100644
--- a/contrib/dotzlib/DotZLib/CircularBuffer.cs
+++ b/contrib/dotzlib/DotZLib/CircularBuffer.cs
@@ -1,7 +1,7 @@
1// 1//
2// © Copyright Henrik Ravn 2004 2// © Copyright Henrik Ravn 2004
3// 3//
4// Use, modification and distribution are subject to the Boost Software License, Version 1.0. 4// Use, modification and distribution are subject to the Boost Software License, Version 1.0.
5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6// 6//
7 7
@@ -25,7 +25,7 @@ namespace DotZLib
25 #endregion 25 #endregion
26 26
27 public CircularBuffer(int capacity) 27 public CircularBuffer(int capacity)
28 { 28 {
29 Debug.Assert( capacity > 0 ); 29 Debug.Assert( capacity > 0 );
30 _buffer = new byte[capacity]; 30 _buffer = new byte[capacity];
31 _capacity = capacity; 31 _capacity = capacity;
diff --git a/contrib/dotzlib/DotZLib/CodecBase.cs b/contrib/dotzlib/DotZLib/CodecBase.cs
index 954db7d..42e6da3 100644
--- a/contrib/dotzlib/DotZLib/CodecBase.cs
+++ b/contrib/dotzlib/DotZLib/CodecBase.cs
@@ -1,7 +1,7 @@
1// 1//
2// © Copyright Henrik Ravn 2004 2// © Copyright Henrik Ravn 2004
3// 3//
4// Use, modification and distribution are subject to the Boost Software License, Version 1.0. 4// Use, modification and distribution are subject to the Boost Software License, Version 1.0.
5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6// 6//
7 7
@@ -19,7 +19,7 @@ namespace DotZLib
19 #region Data members 19 #region Data members
20 20
21 /// <summary> 21 /// <summary>
22 /// Instance of the internal zlib buffer structure that is 22 /// Instance of the internal zlib buffer structure that is
23 /// passed to all functions in the zlib dll 23 /// passed to all functions in the zlib dll
24 /// </summary> 24 /// </summary>
25 internal ZStream _ztream = new ZStream(); 25 internal ZStream _ztream = new ZStream();
@@ -45,7 +45,7 @@ namespace DotZLib
45 #endregion 45 #endregion
46 46
47 /// <summary> 47 /// <summary>
48 /// Initializes a new instance of the <c>CodeBase</c> class. 48 /// Initializes a new instance of the <c>CodeBase</c> class.
49 /// </summary> 49 /// </summary>
50 public CodecBase() 50 public CodecBase()
51 { 51 {
@@ -77,7 +77,7 @@ namespace DotZLib
77 if (_ztream.total_out > 0) 77 if (_ztream.total_out > 0)
78 { 78 {
79 if (DataAvailable != null) 79 if (DataAvailable != null)
80 DataAvailable( _outBuffer, 0, (int)_ztream.total_out); 80 DataAvailable( _outBuffer, 0, (int)_ztream.total_out);
81 resetOutput(); 81 resetOutput();
82 } 82 }
83 } 83 }
diff --git a/contrib/dotzlib/DotZLib/Deflater.cs b/contrib/dotzlib/DotZLib/Deflater.cs
index d7b8dcc..c247792 100644
--- a/contrib/dotzlib/DotZLib/Deflater.cs
+++ b/contrib/dotzlib/DotZLib/Deflater.cs
@@ -1,7 +1,7 @@
1// 1//
2// © Copyright Henrik Ravn 2004 2// © Copyright Henrik Ravn 2004
3// 3//
4// Use, modification and distribution are subject to the Boost Software License, Version 1.0. 4// Use, modification and distribution are subject to the Boost Software License, Version 1.0.
5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6// 6//
7 7
@@ -56,7 +56,7 @@ namespace DotZLib
56 if (data == null) throw new ArgumentNullException(); 56 if (data == null) throw new ArgumentNullException();
57 if (offset < 0 || count < 0) throw new ArgumentOutOfRangeException(); 57 if (offset < 0 || count < 0) throw new ArgumentOutOfRangeException();
58 if ((offset+count) > data.Length) throw new ArgumentException(); 58 if ((offset+count) > data.Length) throw new ArgumentException();
59 59
60 int total = count; 60 int total = count;
61 int inputIndex = offset; 61 int inputIndex = offset;
62 int err = 0; 62 int err = 0;
@@ -86,7 +86,7 @@ namespace DotZLib
86 public override void Finish() 86 public override void Finish()
87 { 87 {
88 int err; 88 int err;
89 do 89 do
90 { 90 {
91 err = deflate(ref _ztream, (int)FlushTypes.Finish); 91 err = deflate(ref _ztream, (int)FlushTypes.Finish);
92 OnDataAvailable(); 92 OnDataAvailable();
diff --git a/contrib/dotzlib/DotZLib/DotZLib.cs b/contrib/dotzlib/DotZLib/DotZLib.cs
index 410deb0..be184b4 100644
--- a/contrib/dotzlib/DotZLib/DotZLib.cs
+++ b/contrib/dotzlib/DotZLib/DotZLib.cs
@@ -1,7 +1,7 @@
1// 1//
2// © Copyright Henrik Ravn 2004 2// © Copyright Henrik Ravn 2004
3// 3//
4// Use, modification and distribution are subject to the Boost Software License, Version 1.0. 4// Use, modification and distribution are subject to the Boost Software License, Version 1.0.
5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6// 6//
7 7
@@ -19,7 +19,7 @@ namespace DotZLib
19 /// <summary> 19 /// <summary>
20 /// Defines constants for the various flush types used with zlib 20 /// Defines constants for the various flush types used with zlib
21 /// </summary> 21 /// </summary>
22 internal enum FlushTypes 22 internal enum FlushTypes
23 { 23 {
24 None, Partial, Sync, Full, Finish, Block 24 None, Partial, Sync, Full, Finish, Block
25 } 25 }
@@ -38,7 +38,7 @@ namespace DotZLib
38 public uint total_out; 38 public uint total_out;
39 39
40 [MarshalAs(UnmanagedType.LPStr)] 40 [MarshalAs(UnmanagedType.LPStr)]
41 string msg; 41 string msg;
42 uint state; 42 uint state;
43 43
44 uint zalloc; 44 uint zalloc;
@@ -51,7 +51,7 @@ namespace DotZLib
51 } 51 }
52 52
53 #endregion 53 #endregion
54 54
55 #endregion 55 #endregion
56 56
57 #region Public enums 57 #region Public enums
@@ -63,7 +63,7 @@ namespace DotZLib
63 /// <summary> 63 /// <summary>
64 /// The default compression level with a reasonable compromise between compression and speed 64 /// The default compression level with a reasonable compromise between compression and speed
65 /// </summary> 65 /// </summary>
66 Default = -1, 66 Default = -1,
67 /// <summary> 67 /// <summary>
68 /// No compression at all. The data are passed straight through. 68 /// No compression at all. The data are passed straight through.
69 /// </summary> 69 /// </summary>
@@ -71,7 +71,7 @@ namespace DotZLib
71 /// <summary> 71 /// <summary>
72 /// The maximum compression rate available. 72 /// The maximum compression rate available.
73 /// </summary> 73 /// </summary>
74 Best = 9, 74 Best = 9,
75 /// <summary> 75 /// <summary>
76 /// The fastest available compression level. 76 /// The fastest available compression level.
77 /// </summary> 77 /// </summary>
@@ -86,7 +86,7 @@ namespace DotZLib
86 public class ZLibException : ApplicationException 86 public class ZLibException : ApplicationException
87 { 87 {
88 /// <summary> 88 /// <summary>
89 /// Initializes a new instance of the <see cref="ZLibException"/> class with a specified 89 /// Initializes a new instance of the <see cref="ZLibException"/> class with a specified
90 /// error message and error code 90 /// error message and error code
91 /// </summary> 91 /// </summary>
92 /// <param name="errorCode">The zlib error code that caused the exception</param> 92 /// <param name="errorCode">The zlib error code that caused the exception</param>
@@ -96,7 +96,7 @@ namespace DotZLib
96 } 96 }
97 97
98 /// <summary> 98 /// <summary>
99 /// Initializes a new instance of the <see cref="ZLibException"/> class with a specified 99 /// Initializes a new instance of the <see cref="ZLibException"/> class with a specified
100 /// error code 100 /// error code
101 /// </summary> 101 /// </summary>
102 /// <param name="errorCode">The zlib error code that caused the exception</param> 102 /// <param name="errorCode">The zlib error code that caused the exception</param>
@@ -109,7 +109,7 @@ namespace DotZLib
109 #region Interfaces 109 #region Interfaces
110 110
111 /// <summary> 111 /// <summary>
112 /// Declares methods and properties that enables a running checksum to be calculated 112 /// Declares methods and properties that enables a running checksum to be calculated
113 /// </summary> 113 /// </summary>
114 public interface ChecksumGenerator 114 public interface ChecksumGenerator
115 { 115 {
@@ -163,7 +163,7 @@ namespace DotZLib
163 /// <paramref name="data">The byte array containing the processed data</paramref> 163 /// <paramref name="data">The byte array containing the processed data</paramref>
164 /// <paramref name="startIndex">The index of the first processed byte in <c>data</c></paramref> 164 /// <paramref name="startIndex">The index of the first processed byte in <c>data</c></paramref>
165 /// <paramref name="count">The number of processed bytes available</paramref> 165 /// <paramref name="count">The number of processed bytes available</paramref>
166 /// <remarks>On return from this method, the data may be overwritten, so grab it while you can. 166 /// <remarks>On return from this method, the data may be overwritten, so grab it while you can.
167 /// You cannot assume that startIndex will be zero. 167 /// You cannot assume that startIndex will be zero.
168 /// </remarks> 168 /// </remarks>
169 public delegate void DataAvailableHandler(byte[] data, int startIndex, int count); 169 public delegate void DataAvailableHandler(byte[] data, int startIndex, int count);
diff --git a/contrib/dotzlib/DotZLib/GZipStream.cs b/contrib/dotzlib/DotZLib/GZipStream.cs
index f861675..b161300 100644
--- a/contrib/dotzlib/DotZLib/GZipStream.cs
+++ b/contrib/dotzlib/DotZLib/GZipStream.cs
@@ -1,7 +1,7 @@
1// 1//
2// © Copyright Henrik Ravn 2004 2// © Copyright Henrik Ravn 2004
3// 3//
4// Use, modification and distribution are subject to the Boost Software License, Version 1.0. 4// Use, modification and distribution are subject to the Boost Software License, Version 1.0.
5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6// 6//
7 7
@@ -84,7 +84,7 @@ namespace DotZLib
84 return !_isWriting; 84 return !_isWriting;
85 } 85 }
86 } 86 }
87 87
88 88
89 /// <summary> 89 /// <summary>
90 /// Returns false. 90 /// Returns false.
@@ -96,7 +96,7 @@ namespace DotZLib
96 return false; 96 return false;
97 } 97 }
98 } 98 }
99 99
100 /// <summary> 100 /// <summary>
101 /// Returns true if this tsream is writeable, false otherwise 101 /// Returns true if this tsream is writeable, false otherwise
102 /// </summary> 102 /// </summary>
@@ -108,7 +108,7 @@ namespace DotZLib
108 } 108 }
109 } 109 }
110 #endregion 110 #endregion
111 111
112 #region Destructor & IDispose stuff 112 #region Destructor & IDispose stuff
113 113
114 /// <summary> 114 /// <summary>
@@ -137,7 +137,7 @@ namespace DotZLib
137 } 137 }
138 } 138 }
139 #endregion 139 #endregion
140 140
141 #region Basic reading and writing 141 #region Basic reading and writing
142 /// <summary> 142 /// <summary>
143 /// Attempts to read a number of bytes from the stream. 143 /// Attempts to read a number of bytes from the stream.
@@ -244,7 +244,7 @@ namespace DotZLib
244 { 244 {
245 throw new NotSupportedException(); 245 throw new NotSupportedException();
246 } 246 }
247 247
248 /// <summary> 248 /// <summary>
249 /// Not suppported. 249 /// Not suppported.
250 /// </summary> 250 /// </summary>
@@ -256,7 +256,7 @@ namespace DotZLib
256 { 256 {
257 throw new NotSupportedException(); 257 throw new NotSupportedException();
258 } 258 }
259 259
260 /// <summary> 260 /// <summary>
261 /// Flushes the <c>GZipStream</c>. 261 /// Flushes the <c>GZipStream</c>.
262 /// </summary> 262 /// </summary>
@@ -266,7 +266,7 @@ namespace DotZLib
266 { 266 {
267 // left empty on purpose 267 // left empty on purpose
268 } 268 }
269 269
270 /// <summary> 270 /// <summary>
271 /// Gets/sets the current position in the <c>GZipStream</c>. Not suppported. 271 /// Gets/sets the current position in the <c>GZipStream</c>. Not suppported.
272 /// </summary> 272 /// </summary>
@@ -283,7 +283,7 @@ namespace DotZLib
283 throw new NotSupportedException(); 283 throw new NotSupportedException();
284 } 284 }
285 } 285 }
286 286
287 /// <summary> 287 /// <summary>
288 /// Gets the size of the stream. Not suppported. 288 /// Gets the size of the stream. Not suppported.
289 /// </summary> 289 /// </summary>
diff --git a/contrib/dotzlib/DotZLib/Inflater.cs b/contrib/dotzlib/DotZLib/Inflater.cs
index 4e60cda..8ed5451 100644
--- a/contrib/dotzlib/DotZLib/Inflater.cs
+++ b/contrib/dotzlib/DotZLib/Inflater.cs
@@ -1,7 +1,7 @@
1// 1//
2// © Copyright Henrik Ravn 2004 2// © Copyright Henrik Ravn 2004
3// 3//
4// Use, modification and distribution are subject to the Boost Software License, Version 1.0. 4// Use, modification and distribution are subject to the Boost Software License, Version 1.0.
5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6// 6//
7 7
@@ -11,7 +11,7 @@ using System.Runtime.InteropServices;
11 11
12namespace DotZLib 12namespace DotZLib
13{ 13{
14 14
15 /// <summary> 15 /// <summary>
16 /// Implements a data decompressor, using the inflate algorithm in the ZLib dll 16 /// Implements a data decompressor, using the inflate algorithm in the ZLib dll
17 /// </summary> 17 /// </summary>
@@ -84,7 +84,7 @@ namespace DotZLib
84 public override void Finish() 84 public override void Finish()
85 { 85 {
86 int err; 86 int err;
87 do 87 do
88 { 88 {
89 err = inflate(ref _ztream, (int)FlushTypes.Finish); 89 err = inflate(ref _ztream, (int)FlushTypes.Finish);
90 OnDataAvailable(); 90 OnDataAvailable();
diff --git a/contrib/dotzlib/DotZLib/UnitTests.cs b/contrib/dotzlib/DotZLib/UnitTests.cs
index 8dc00db..eb751bb 100644
--- a/contrib/dotzlib/DotZLib/UnitTests.cs
+++ b/contrib/dotzlib/DotZLib/UnitTests.cs
@@ -1,7 +1,7 @@
1// 1//
2// © Copyright Henrik Ravn 2004 2// © Copyright Henrik Ravn 2004
3// 3//
4// Use, modification and distribution are subject to the Boost Software License, Version 1.0. 4// Use, modification and distribution are subject to the Boost Software License, Version 1.0.
5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6// 6//
7 7
@@ -225,7 +225,7 @@ namespace DotZLibTests
225 225
226 [Test] 226 [Test]
227 public void Inflate_Expand() 227 public void Inflate_Expand()
228 { 228 {
229 uncompressedData.Clear(); 229 uncompressedData.Clear();
230 230
231 using (Inflater inf = new Inflater()) 231 using (Inflater inf = new Inflater())
diff --git a/contrib/dotzlib/readme.txt b/contrib/dotzlib/readme.txt
index 210f4b0..b239572 100644
--- a/contrib/dotzlib/readme.txt
+++ b/contrib/dotzlib/readme.txt
@@ -1,6 +1,6 @@
1This directory contains a .Net wrapper class library for the ZLib1.dll 1This directory contains a .Net wrapper class library for the ZLib1.dll
2 2
3The wrapper includes support for inflating/deflating memory buffers, 3The wrapper includes support for inflating/deflating memory buffers,
4.Net streaming wrappers for the gz streams part of zlib, and wrappers 4.Net streaming wrappers for the gz streams part of zlib, and wrappers
5for the checksum parts of zlib. See DotZLib/UnitTests.cs for examples. 5for the checksum parts of zlib. See DotZLib/UnitTests.cs for examples.
6 6
@@ -26,11 +26,11 @@ Build instructions:
26 26
271. Using Visual Studio.Net 2003: 271. Using Visual Studio.Net 2003:
28 Open DotZLib.sln in VS.Net and build from there. Output file (DotZLib.dll) 28 Open DotZLib.sln in VS.Net and build from there. Output file (DotZLib.dll)
29 will be found ./DotZLib/bin/release or ./DotZLib/bin/debug, depending on 29 will be found ./DotZLib/bin/release or ./DotZLib/bin/debug, depending on
30 you are building the release or debug version of the library. Check 30 you are building the release or debug version of the library. Check
31 DotZLib/UnitTests.cs for instructions on how to include unit tests in the 31 DotZLib/UnitTests.cs for instructions on how to include unit tests in the
32 build. 32 build.
33 33
342. Using NAnt: 342. Using NAnt:
35 Open a command prompt with access to the build environment and run nant 35 Open a command prompt with access to the build environment and run nant
36 in the same directory as the DotZLib.build file. 36 in the same directory as the DotZLib.build file.
@@ -38,15 +38,15 @@ Build instructions:
38 debug={true|false} to toggle between release/debug builds (default=true). 38 debug={true|false} to toggle between release/debug builds (default=true).
39 nunit={true|false} to include or esclude unit tests (default=true). 39 nunit={true|false} to include or esclude unit tests (default=true).
40 Also the target clean will remove binaries. 40 Also the target clean will remove binaries.
41 Output file (DotZLib.dll) will be found in either ./DotZLib/bin/release 41 Output file (DotZLib.dll) will be found in either ./DotZLib/bin/release
42 or ./DotZLib/bin/debug, depending on whether you are building the release 42 or ./DotZLib/bin/debug, depending on whether you are building the release
43 or debug version of the library. 43 or debug version of the library.
44 44
45 Examples: 45 Examples:
46 nant -D:debug=false -D:nunit=false 46 nant -D:debug=false -D:nunit=false
47 will build a release mode version of the library without unit tests. 47 will build a release mode version of the library without unit tests.
48 nant 48 nant
49 will build a debug version of the library with unit tests 49 will build a debug version of the library with unit tests
50 nant clean 50 nant clean
51 will remove all previously built files. 51 will remove all previously built files.
52 52
@@ -54,5 +54,5 @@ Build instructions:
54--------------------------------- 54---------------------------------
55Copyright (c) Henrik Ravn 2004 55Copyright (c) Henrik Ravn 2004
56 56
57Use, modification and distribution are subject to the Boost Software License, Version 1.0. 57Use, modification and distribution are subject to the Boost Software License, Version 1.0.
58(See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 58(See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/contrib/infback9/inftree9.c b/contrib/infback9/inftree9.c
index 2018e4d..256c5d5 100644
--- a/contrib/infback9/inftree9.c
+++ b/contrib/infback9/inftree9.c
@@ -9,7 +9,7 @@
9#define MAXBITS 15 9#define MAXBITS 15
10 10
11const char inflate9_copyright[] = 11const char inflate9_copyright[] =
12 " inflate9 1.2.3.7 Copyright 1995-2010 Mark Adler "; 12 " inflate9 1.2.3.8 Copyright 1995-2010 Mark Adler ";
13/* 13/*
14 If you use the zlib library in a product, an acknowledgment is welcome 14 If you use the zlib library in a product, an acknowledgment is welcome
15 in the documentation of your product. If for some reason you cannot 15 in the documentation of your product. If for some reason you cannot
@@ -64,7 +64,7 @@ unsigned short FAR *work;
64 static const unsigned short lext[31] = { /* Length codes 257..285 extra */ 64 static const unsigned short lext[31] = { /* Length codes 257..285 extra */
65 128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 129, 129, 65 128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 129, 129,
66 130, 130, 130, 130, 131, 131, 131, 131, 132, 132, 132, 132, 66 130, 130, 130, 130, 131, 131, 131, 131, 132, 132, 132, 132,
67 133, 133, 133, 133, 144, 72, 193}; 67 133, 133, 133, 133, 144, 78, 75};
68 static const unsigned short dbase[32] = { /* Distance codes 0..31 base */ 68 static const unsigned short dbase[32] = { /* Distance codes 0..31 base */
69 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 69 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49,
70 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 70 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073,
diff --git a/contrib/masmx64/gvmat64.asm b/contrib/masmx64/gvmat64.asm
index 790d655..d2790cc 100644
--- a/contrib/masmx64/gvmat64.asm
+++ b/contrib/masmx64/gvmat64.asm
@@ -406,7 +406,8 @@ LoopCmps:
406 406
407 add rdx,8+8+8 407 add rdx,8+8+8
408 408
409 jmp short LoopCmps 409 jnz short LoopCmps
410 jmp short LenMaximum
410LeaveLoopCmps16: add rdx,8 411LeaveLoopCmps16: add rdx,8
411LeaveLoopCmps8: add rdx,8 412LeaveLoopCmps8: add rdx,8
412LeaveLoopCmps: 413LeaveLoopCmps:
diff --git a/contrib/masmx64/gvmat64.obj b/contrib/masmx64/gvmat64.obj
deleted file mode 100644
index a49ca02..0000000
--- a/contrib/masmx64/gvmat64.obj
+++ /dev/null
Binary files differ
diff --git a/contrib/masmx64/inffas8664.c b/contrib/masmx64/inffas8664.c
index 3af764d..2263d77 100644
--- a/contrib/masmx64/inffas8664.c
+++ b/contrib/masmx64/inffas8664.c
@@ -111,11 +111,11 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
111 type_ar ar; 111 type_ar ar;
112 void inffas8664fnc(struct inffast_ar * par); 112 void inffas8664fnc(struct inffast_ar * par);
113 113
114 114
115 115
116#if (defined( __GNUC__ ) && defined( __amd64__ ) && ! defined( __i386 )) || (defined(_MSC_VER) && defined(_M_AMD64)) 116#if (defined( __GNUC__ ) && defined( __amd64__ ) && ! defined( __i386 )) || (defined(_MSC_VER) && defined(_M_AMD64))
117#define PAD_AVAIL_IN 6 117#define PAD_AVAIL_IN 6
118#define PAD_AVAIL_OUT 258 118#define PAD_AVAIL_OUT 258
119#else 119#else
120#define PAD_AVAIL_IN 5 120#define PAD_AVAIL_IN 5
121#define PAD_AVAIL_OUT 257 121#define PAD_AVAIL_OUT 257
diff --git a/contrib/masmx64/inffasx64.asm b/contrib/masmx64/inffasx64.asm
index b5d93a2..c2ba03f 100644
--- a/contrib/masmx64/inffasx64.asm
+++ b/contrib/masmx64/inffasx64.asm
@@ -11,7 +11,7 @@
11; 11;
12; ml64.exe is given with Visual Studio 2005, Windows 2003 server DDK 12; ml64.exe is given with Visual Studio 2005, Windows 2003 server DDK
13; 13;
14; (you can get Windows 2003 server DDK with ml64 and cl.exe for AMD64 from 14; (you can get Windows 2003 server DDK with ml64 and cl.exe for AMD64 from
15; http://www.microsoft.com/whdc/devtools/ddk/default.mspx for low price) 15; http://www.microsoft.com/whdc/devtools/ddk/default.mspx for low price)
16; 16;
17 17
@@ -379,7 +379,7 @@ L_break_loop_with_status:
379 mov r14,[rsp-40] 379 mov r14,[rsp-40]
380 mov r15,[rsp-48] 380 mov r15,[rsp-48]
381 mov rbx,[rsp-56] 381 mov rbx,[rsp-56]
382 382
383 ret 0 383 ret 0
384; : 384; :
385; : "m" (ar) 385; : "m" (ar)
diff --git a/contrib/masmx64/inffasx64.obj b/contrib/masmx64/inffasx64.obj
deleted file mode 100644
index 8df5d82..0000000
--- a/contrib/masmx64/inffasx64.obj
+++ /dev/null
Binary files differ
diff --git a/contrib/masmx64/readme.txt b/contrib/masmx64/readme.txt
index ee03115..cd697c4 100644
--- a/contrib/masmx64/readme.txt
+++ b/contrib/masmx64/readme.txt
@@ -24,5 +24,5 @@ run bld_64.bat with Microsoft Macro Assembler (x64) for AMD64 (ml64.exe)
24 24
25ml64.exe is given with Visual Studio 2005, Windows 2003 server DDK 25ml64.exe is given with Visual Studio 2005, Windows 2003 server DDK
26 26
27You can get Windows 2003 server DDK with ml64 and cl for AMD64 from 27You can get Windows 2003 server DDK with ml64 and cl for AMD64 from
28 http://www.microsoft.com/whdc/devtools/ddk/default.mspx for low price) 28 http://www.microsoft.com/whdc/devtools/ddk/default.mspx for low price)
diff --git a/contrib/masmx86/bld_ml32.bat b/contrib/masmx86/bld_ml32.bat
index 99144d0..36962e1 100644
--- a/contrib/masmx86/bld_ml32.bat
+++ b/contrib/masmx86/bld_ml32.bat
@@ -1,2 +1,2 @@
1ml /coff /Zi /c /Flgvmat32.lst gvmat32.asm 1ml /coff /Zi /c /Flgvmat32.lst gvmat32.asm
2ml /coff /Zi /c /Flinffas32.lst inffas32.asm 2ml /coff /Zi /c /Flinffas32.lst inffas32.asm
diff --git a/contrib/masmx86/gvmat32.asm b/contrib/masmx86/gvmat32.asm
index 874bb2d..8111616 100644
--- a/contrib/masmx86/gvmat32.asm
+++ b/contrib/masmx86/gvmat32.asm
@@ -14,7 +14,7 @@
14; 14;
15; this file contain two implementation of longest_match 15; this file contain two implementation of longest_match
16; 16;
17; longest_match_7fff : written 1996 by Gilles Vollant optimized for 17; longest_match_7fff : written 1996 by Gilles Vollant optimized for
18; first Pentium. Assume s->w_mask == 0x7fff 18; first Pentium. Assume s->w_mask == 0x7fff
19; longest_match_686 : written by Brian raiter (1998), optimized for Pentium Pro 19; longest_match_686 : written by Brian raiter (1998), optimized for Pentium Pro
20; 20;
@@ -39,7 +39,7 @@
39; 39;
40; compile the asm file running 40; compile the asm file running
41; ml /coff /Zi /c /Flgvmat32.lst /DNOOLDPENTIUMCODE gvmat32.asm 41; ml /coff /Zi /c /Flgvmat32.lst /DNOOLDPENTIUMCODE gvmat32.asm
42; and do not include gvmat32c.c in your project (ou define also 42; and do not include gvmat32c.c in your project (ou define also
43; NOOLDPENTIUMCODE) 43; NOOLDPENTIUMCODE)
44; 44;
45; note : as I known, longest_match_686 is very faster than longest_match_7fff 45; note : as I known, longest_match_686 is very faster than longest_match_7fff
@@ -113,7 +113,7 @@ IFDEF NOUNDERLINE
113 IFDEF NOOLDPENTIUMCODE 113 IFDEF NOOLDPENTIUMCODE
114 public longest_match 114 public longest_match
115 public match_init 115 public match_init
116 ELSE 116 ELSE
117 public longest_match_7fff 117 public longest_match_7fff
118 public cpudetect32 118 public cpudetect32
119 public longest_match_686 119 public longest_match_686
@@ -959,7 +959,7 @@ IFDEF NOOLDPENTIUMCODE
959 _match_init proc near 959 _match_init proc near
960 ret 960 ret
961 _match_init endp 961 _match_init endp
962 ENDIF 962 ENDIF
963ELSE 963ELSE
964 IFDEF NOUNDERLINE 964 IFDEF NOUNDERLINE
965 longest_match_686 endp 965 longest_match_686 endp
diff --git a/contrib/masmx86/gvmat32.obj b/contrib/masmx86/gvmat32.obj
deleted file mode 100644
index ebb3262..0000000
--- a/contrib/masmx86/gvmat32.obj
+++ /dev/null
Binary files differ
diff --git a/contrib/masmx86/inffas32.asm b/contrib/masmx86/inffas32.asm
index 05c46dd..92ac22a 100644
--- a/contrib/masmx86/inffas32.asm
+++ b/contrib/masmx86/inffas32.asm
@@ -16,7 +16,7 @@
16; * enabled. I will attempt to merge the MMX code into this version. Newer 16; * enabled. I will attempt to merge the MMX code into this version. Newer
17; * versions of this and inffast.S can be found at 17; * versions of this and inffast.S can be found at
18; * http://www.eetbeetee.com/zlib/ and http://www.charm.net/~christop/zlib/ 18; * http://www.eetbeetee.com/zlib/ and http://www.charm.net/~christop/zlib/
19; * 19; *
20; * 2005 : modification by Gilles Vollant 20; * 2005 : modification by Gilles Vollant
21; */ 21; */
22; For Visual C++ 4.x and higher and ML 6.x and higher 22; For Visual C++ 4.x and higher and ML 6.x and higher
@@ -33,7 +33,7 @@
33 33
34 34
35; zlib122sup is 0 fort zlib 1.2.2.1 and lower 35; zlib122sup is 0 fort zlib 1.2.2.1 and lower
36; zlib122sup is 8 fort zlib 1.2.2.2 and more (with addition of dmax and head 36; zlib122sup is 8 fort zlib 1.2.2.2 and more (with addition of dmax and head
37; in inflate_state in inflate.h) 37; in inflate_state in inflate.h)
38zlib1222sup equ 8 38zlib1222sup equ 8
39 39
diff --git a/contrib/masmx86/inffas32.obj b/contrib/masmx86/inffas32.obj
deleted file mode 100644
index bd6664d..0000000
--- a/contrib/masmx86/inffas32.obj
+++ /dev/null
Binary files differ
diff --git a/contrib/minizip/Makefile b/contrib/minizip/Makefile
index fbba3ac..84eaad2 100644
--- a/contrib/minizip/Makefile
+++ b/contrib/minizip/Makefile
@@ -1,25 +1,25 @@
1CC=cc 1CC=cc
2CFLAGS=-O -I../.. 2CFLAGS=-O -I../..
3 3
4UNZ_OBJS = miniunz.o unzip.o ioapi.o ../../libz.a 4UNZ_OBJS = miniunz.o unzip.o ioapi.o ../../libz.a
5ZIP_OBJS = minizip.o zip.o ioapi.o ../../libz.a 5ZIP_OBJS = minizip.o zip.o ioapi.o ../../libz.a
6 6
7.c.o: 7.c.o:
8 $(CC) -c $(CFLAGS) $*.c 8 $(CC) -c $(CFLAGS) $*.c
9 9
10all: miniunz minizip 10all: miniunz minizip
11 11
12miniunz: $(UNZ_OBJS) 12miniunz: $(UNZ_OBJS)
13 $(CC) $(CFLAGS) -o $@ $(UNZ_OBJS) 13 $(CC) $(CFLAGS) -o $@ $(UNZ_OBJS)
14 14
15minizip: $(ZIP_OBJS) 15minizip: $(ZIP_OBJS)
16 $(CC) $(CFLAGS) -o $@ $(ZIP_OBJS) 16 $(CC) $(CFLAGS) -o $@ $(ZIP_OBJS)
17 17
18test: miniunz minizip 18test: miniunz minizip
19 ./minizip test readme.txt 19 ./minizip test readme.txt
20 ./miniunz -l test.zip 20 ./miniunz -l test.zip
21 mv readme.txt readme.old 21 mv readme.txt readme.old
22 ./miniunz test.zip 22 ./miniunz test.zip
23 23
24clean: 24clean:
25 /bin/rm -f *.o *~ minizip miniunz 25 /bin/rm -f *.o *~ minizip miniunz
diff --git a/contrib/minizip/MiniZip64_Changes.txt b/contrib/minizip/MiniZip64_Changes.txt
index 9d370df..436d8b3 100644
--- a/contrib/minizip/MiniZip64_Changes.txt
+++ b/contrib/minizip/MiniZip64_Changes.txt
@@ -1,7 +1,6 @@
1 1
2MiniZip64 was derrived from MiniZip at version 1.01f 2MiniZip64 was derrived from MiniZip at version 1.01f
3 3
4Change in 1.0 (Okt 2009) 4Change in 1.0 (Okt 2009)
5 - **TODO - Add history** 5 - **TODO - Add history**
6 6
7 \ No newline at end of file
diff --git a/contrib/minizip/MiniZip64_info.txt b/contrib/minizip/MiniZip64_info.txt
index f4eef25..334b0f0 100644
--- a/contrib/minizip/MiniZip64_info.txt
+++ b/contrib/minizip/MiniZip64_info.txt
@@ -1,79 +1,79 @@
1MiniZip64 - Copyright (c) 2009-2010 - Mathias Svensson - Built from MiniZip by Gilles Vollant 1MiniZip64 - Copyright (c) 2009-2010 - Mathias Svensson - Built from MiniZip by Gilles Vollant
2 2
3Introduction 3Introduction
4--------------------- 4---------------------
5MiniZip64 is built from MiniZip by Gilles Vollant ( http://www.winimage.com/zLibDll/minizip.html ) 5MiniZip64 is built from MiniZip by Gilles Vollant ( http://www.winimage.com/zLibDll/minizip.html )
6 6
7When adding ZIP64 support into minizip it would result into breaking compatibility with current minizip. 7When adding ZIP64 support into minizip it would result into breaking compatibility with current minizip.
8And since breaking compatibility in minizip is not wanted. I decided to create a fork of minizip 8And since breaking compatibility in minizip is not wanted. I decided to create a fork of minizip
9and create minizip64. 9and create minizip64.
10 10
11Even though MiniZip64 is build from MiniZip, all functions and struct's have changed name so that it 11Even though MiniZip64 is build from MiniZip, all functions and struct's have changed name so that it
12would not collide with each other. 12would not collide with each other.
13 13
14 14
15Background 15Background
16--------------------- 16---------------------
17When adding ZIP64 support I found that Even Rouault have added ZIP64 support for unzip.c into minizip 17When adding ZIP64 support I found that Even Rouault have added ZIP64 support for unzip.c into minizip
18for a open source project called gdal ( http://www.gdal.org/ ) 18for a open source project called gdal ( http://www.gdal.org/ )
19 19
20That was used as a starting point. And after that ZIP64 support was added to zip.c 20That was used as a starting point. And after that ZIP64 support was added to zip.c
21some refactoring and code cleanup was also done. 21some refactoring and code cleanup was also done.
22 22
23 23
24Changed from MiniZip to MiniZip64 24Changed from MiniZip to MiniZip64
25------------------------------------- 25-------------------------------------
26* Filenames has got a '64' at the end of them . eg unzip.c is now called unzip64.c 26* Filenames has got a '64' at the end of them . eg unzip.c is now called unzip64.c
27* Added ZIP64 support for unzip ( by Even Rouault ) 27* Added ZIP64 support for unzip ( by Even Rouault )
28* Added ZIP64 support for zip ( by Mathias Svensson ) 28* Added ZIP64 support for zip ( by Mathias Svensson )
29* Reverted some changed that Even Rouault did. 29* Reverted some changed that Even Rouault did.
30* Bunch of patches received from Gulles Vollant that he received for MiniZip from various users. 30* Bunch of patches received from Gulles Vollant that he received for MiniZip from various users.
31* Added unzip patch for BZIP Compression method (patch create by Daniel Borca) 31* Added unzip patch for BZIP Compression method (patch create by Daniel Borca)
32* Added BZIP Compress method for zip 32* Added BZIP Compress method for zip
33* Did some refactoring and code cleanup 33* Did some refactoring and code cleanup
34 34
35 35
36Credits 36Credits
37 37
38 Gilles Vollant - Original MiniZip author 38 Gilles Vollant - Original MiniZip author
39 Even Rouault - ZIP64 unzip Support 39 Even Rouault - ZIP64 unzip Support
40 Daniel Borca - BZip Compression method support in unzip 40 Daniel Borca - BZip Compression method support in unzip
41 Mathias Svensson - ZIP64 zip support 41 Mathias Svensson - ZIP64 zip support
42 Mathias Svensson - BZip Compression method support in zip 42 Mathias Svensson - BZip Compression method support in zip
43 43
44 Resources 44 Resources
45 45
46 ZipLayout http://result42.com/projects/ZipFileLayout 46 ZipLayout http://result42.com/projects/ZipFileLayout
47 Command line tool for Windows that shows the layout and information of the headers in a zip archive. 47 Command line tool for Windows that shows the layout and information of the headers in a zip archive.
48 Used when debugging and validating the creation of zip files using MiniZip64 48 Used when debugging and validating the creation of zip files using MiniZip64
49 49
50 50
51 ZIP App Note http://www.pkware.com/documents/casestudies/APPNOTE.TXT 51 ZIP App Note http://www.pkware.com/documents/casestudies/APPNOTE.TXT
52 Zip File specification 52 Zip File specification
53 53
54 54
55Notes. 55Notes.
56 * To be able to use BZip compression method in zip64.c or unzip64.c the BZIP2 lib is needed and HAVE_BZIP2 need to be defined. 56 * To be able to use BZip compression method in zip64.c or unzip64.c the BZIP2 lib is needed and HAVE_BZIP2 need to be defined.
57 57
58License 58License
59---------------------------------------------------------- 59----------------------------------------------------------
60 Condition of use and distribution are the same than zlib : 60 Condition of use and distribution are the same than zlib :
61 61
62 This software is provided 'as-is', without any express or implied 62 This software is provided 'as-is', without any express or implied
63 warranty. In no event will the authors be held liable for any damages 63 warranty. In no event will the authors be held liable for any damages
64 arising from the use of this software. 64 arising from the use of this software.
65 65
66 Permission is granted to anyone to use this software for any purpose, 66 Permission is granted to anyone to use this software for any purpose,
67 including commercial applications, and to alter it and redistribute it 67 including commercial applications, and to alter it and redistribute it
68 freely, subject to the following restrictions: 68 freely, subject to the following restrictions:
69 69
70 1. The origin of this software must not be misrepresented; you must not 70 1. The origin of this software must not be misrepresented; you must not
71 claim that you wrote the original software. If you use this software 71 claim that you wrote the original software. If you use this software
72 in a product, an acknowledgment in the product documentation would be 72 in a product, an acknowledgment in the product documentation would be
73 appreciated but is not required. 73 appreciated but is not required.
74 2. Altered source versions must be plainly marked as such, and must not be 74 2. Altered source versions must be plainly marked as such, and must not be
75 misrepresented as being the original software. 75 misrepresented as being the original software.
76 3. This notice may not be removed or altered from any source distribution. 76 3. This notice may not be removed or altered from any source distribution.
77 77
78---------------------------------------------------------- 78----------------------------------------------------------
79 79
diff --git a/contrib/minizip/crypt.h b/contrib/minizip/crypt.h
index 679e2a1..a01d08d 100644
--- a/contrib/minizip/crypt.h
+++ b/contrib/minizip/crypt.h
@@ -91,7 +91,7 @@ static int crypthead(const char* passwd, /* password string */
91 unsigned char* buf, /* where to write header */ 91 unsigned char* buf, /* where to write header */
92 int bufSize, 92 int bufSize,
93 unsigned long* pkeys, 93 unsigned long* pkeys,
94 const unsigned long* pcrc_32_tab, 94 const unsigned long* pcrc_32_tab,
95 unsigned long crcForCrypting) 95 unsigned long crcForCrypting)
96{ 96{
97 int n; /* index in random header */ 97 int n; /* index in random header */
diff --git a/contrib/minizip/ioapi.c b/contrib/minizip/ioapi.c
index 36ed0e0..a5f1e0b 100644
--- a/contrib/minizip/ioapi.c
+++ b/contrib/minizip/ioapi.c
@@ -3,7 +3,7 @@
3 3
4 Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html ) 4 Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html )
5 5
6 Modifications for Zip64 support 6 Modifications for Zip64 support
7 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) 7 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com )
8 8
9 For more info read MiniZip_info.txt 9 For more info read MiniZip_info.txt
diff --git a/contrib/minizip/ioapi.h b/contrib/minizip/ioapi.h
index f443d82..1c7feb0 100644
--- a/contrib/minizip/ioapi.h
+++ b/contrib/minizip/ioapi.h
@@ -3,7 +3,7 @@
3 3
4 Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html ) 4 Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html )
5 5
6 Modifications for Zip64 support 6 Modifications for Zip64 support
7 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) 7 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com )
8 8
9 For more info read MiniZip_info.txt 9 For more info read MiniZip_info.txt
@@ -13,7 +13,7 @@
13 Oct-2009 - Defined ZPOS64_T to fpos_t on windows and u_int64_t on linux. (might need to find a better why for this) 13 Oct-2009 - Defined ZPOS64_T to fpos_t on windows and u_int64_t on linux. (might need to find a better why for this)
14 Oct-2009 - Change to fseeko64, ftello64 and fopen64 so large files would work on linux. 14 Oct-2009 - Change to fseeko64, ftello64 and fopen64 so large files would work on linux.
15 More if/def section may be needed to support other platforms 15 More if/def section may be needed to support other platforms
16 Oct-2009 - Defined fxxxx64 calls to normal fopen/ftell/fseek so they would compile on windows. 16 Oct-2009 - Defined fxxxx64 calls to normal fopen/ftell/fseek so they would compile on windows.
17 (but you should use iowin32.c for windows instead) 17 (but you should use iowin32.c for windows instead)
18 18
19*/ 19*/
@@ -21,7 +21,7 @@
21#ifndef _ZLIBIOAPI64_H 21#ifndef _ZLIBIOAPI64_H
22#define _ZLIBIOAPI64_H 22#define _ZLIBIOAPI64_H
23 23
24#ifndef _WIN32 24#ifndef _WIN32
25 25
26 // Linux needs this to support file operation on files larger then 4+GB 26 // Linux needs this to support file operation on files larger then 4+GB
27 // But might need better if/def to select just the platforms that needs them. 27 // But might need better if/def to select just the platforms that needs them.
@@ -60,7 +60,7 @@
60 #ifdef _WIN32 60 #ifdef _WIN32
61 #define ZPOS64_T fpos_t 61 #define ZPOS64_T fpos_t
62 #else 62 #else
63 #include <stdint.h> 63 #include <stdint.h>
64 #define ZPOS64_T uint64_t 64 #define ZPOS64_T uint64_t
65 #endif 65 #endif
66#endif 66#endif
diff --git a/contrib/minizip/iowin32.c b/contrib/minizip/iowin32.c
index 92b9352..43a5715 100644
--- a/contrib/minizip/iowin32.c
+++ b/contrib/minizip/iowin32.c
@@ -4,7 +4,7 @@
4 4
5 Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html ) 5 Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html )
6 6
7 Modifications for Zip64 support 7 Modifications for Zip64 support
8 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) 8 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com )
9 9
10 For more info read MiniZip_info.txt 10 For more info read MiniZip_info.txt
diff --git a/contrib/minizip/iowin32.h b/contrib/minizip/iowin32.h
index cc77ec4..1b6c533 100644
--- a/contrib/minizip/iowin32.h
+++ b/contrib/minizip/iowin32.h
@@ -4,7 +4,7 @@
4 4
5 Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html ) 5 Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html )
6 6
7 Modifications for Zip64 support 7 Modifications for Zip64 support
8 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) 8 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com )
9 9
10 For more info read MiniZip_info.txt 10 For more info read MiniZip_info.txt
diff --git a/contrib/minizip/make_vms.com b/contrib/minizip/make_vms.com
index 548ee29..23e1a3a 100644
--- a/contrib/minizip/make_vms.com
+++ b/contrib/minizip/make_vms.com
@@ -12,7 +12,7 @@ $ close zdef
12$ copy vmsdefs.h,ioapi.h_orig ioapi.h 12$ copy vmsdefs.h,ioapi.h_orig ioapi.h
13$ cc/include=[--]/prefix=all ioapi.c 13$ cc/include=[--]/prefix=all ioapi.c
14$ cc/include=[--]/prefix=all miniunz.c 14$ cc/include=[--]/prefix=all miniunz.c
15$ cc/include=[--]/prefix=all unzip.c 15$ cc/include=[--]/prefix=all unzip.c
16$ cc/include=[--]/prefix=all minizip.c 16$ cc/include=[--]/prefix=all minizip.c
17$ cc/include=[--]/prefix=all zip.c 17$ cc/include=[--]/prefix=all zip.c
18$ link miniunz,unzip,ioapi,[--]libz.olb/lib 18$ link miniunz,unzip,ioapi,[--]libz.olb/lib
diff --git a/contrib/minizip/miniunz.c b/contrib/minizip/miniunz.c
index c0a07ab..cad8ae2 100644
--- a/contrib/minizip/miniunz.c
+++ b/contrib/minizip/miniunz.c
@@ -12,7 +12,7 @@
12 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) 12 Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com )
13*/ 13*/
14 14
15#ifndef _WIN32 15#ifndef _WIN32
16 #ifndef __USE_FILE_OFFSET64 16 #ifndef __USE_FILE_OFFSET64
17 #define __USE_FILE_OFFSET64 17 #define __USE_FILE_OFFSET64
18 #endif 18 #endif
@@ -375,7 +375,7 @@ int do_extract_currentfile(uf,popt_extract_without_path,popt_overwrite,password)
375 375
376 printf("The file %s exists. Overwrite ? [y]es, [n]o, [A]ll: ",write_filename); 376 printf("The file %s exists. Overwrite ? [y]es, [n]o, [A]ll: ",write_filename);
377 ret = scanf("%1s",answer); 377 ret = scanf("%1s",answer);
378 if (ret != 1) 378 if (ret != 1)
379 { 379 {
380 exit(EXIT_FAILURE); 380 exit(EXIT_FAILURE);
381 } 381 }
@@ -627,9 +627,9 @@ int main(argc,argv)
627 else if (opt_do_extract==1) 627 else if (opt_do_extract==1)
628 { 628 {
629#ifdef _WIN32 629#ifdef _WIN32
630 if (opt_extractdir && _chdir(dirname)) 630 if (opt_extractdir && _chdir(dirname))
631#else 631#else
632 if (opt_extractdir && chdir(dirname)) 632 if (opt_extractdir && chdir(dirname))
633#endif 633#endif
634 { 634 {
635 printf("Error changing into %s, aborting\n", dirname); 635 printf("Error changing into %s, aborting\n", dirname);
diff --git a/contrib/minizip/minizip.c b/contrib/minizip/minizip.c
index 4ce33af..ca26091 100644
--- a/contrib/minizip/minizip.c
+++ b/contrib/minizip/minizip.c
@@ -13,7 +13,7 @@
13*/ 13*/
14 14
15 15
16#ifndef _WIN32 16#ifndef _WIN32
17 #ifndef __USE_FILE_OFFSET64 17 #ifndef __USE_FILE_OFFSET64
18 #define __USE_FILE_OFFSET64 18 #define __USE_FILE_OFFSET64
19 #endif 19 #endif
@@ -219,15 +219,15 @@ int isLargeFile(const char* filename)
219 int n = fseeko64(pFile, 0, SEEK_END); 219 int n = fseeko64(pFile, 0, SEEK_END);
220 220
221 pos = ftello64(pFile); 221 pos = ftello64(pFile);
222 222
223 printf("File : %s is %lld bytes\n", filename, pos); 223 printf("File : %s is %lld bytes\n", filename, pos);
224 224
225 if(pos >= 0xffffffff) 225 if(pos >= 0xffffffff)
226 largeFile = 1; 226 largeFile = 1;
227 227
228 fclose(pFile); 228 fclose(pFile);
229 } 229 }
230 230
231 return largeFile; 231 return largeFile;
232} 232}
233 233
@@ -406,7 +406,7 @@ int main(argc,argv)
406*/ 406*/
407 if ((password != NULL) && (err==ZIP_OK)) 407 if ((password != NULL) && (err==ZIP_OK))
408 err = getFileCrc(filenameinzip,buf,size_buf,&crcFile); 408 err = getFileCrc(filenameinzip,buf,size_buf,&crcFile);
409 409
410 zip64 = isLargeFile(filenameinzip); 410 zip64 = isLargeFile(filenameinzip);
411 411
412 /* The path name saved, should not include a leading slash. */ 412 /* The path name saved, should not include a leading slash. */
diff --git a/contrib/minizip/mztools.c b/contrib/minizip/mztools.c
index bc5c798..f9092e6 100644
--- a/contrib/minizip/mztools.c
+++ b/contrib/minizip/mztools.c
@@ -1,281 +1,281 @@
1/* 1/*
2 Additional tools for Minizip 2 Additional tools for Minizip
3 Code: Xavier Roche '2004 3 Code: Xavier Roche '2004
4 License: Same as ZLIB (www.gzip.org) 4 License: Same as ZLIB (www.gzip.org)
5*/ 5*/
6 6
7/* Code */ 7/* Code */
8#include <stdio.h> 8#include <stdio.h>
9#include <stdlib.h> 9#include <stdlib.h>
10#include <string.h> 10#include <string.h>
11#include "zlib.h" 11#include "zlib.h"
12#include "unzip.h" 12#include "unzip.h"
13 13
14#define READ_8(adr) ((unsigned char)*(adr)) 14#define READ_8(adr) ((unsigned char)*(adr))
15#define READ_16(adr) ( READ_8(adr) | (READ_8(adr+1) << 8) ) 15#define READ_16(adr) ( READ_8(adr) | (READ_8(adr+1) << 8) )
16#define READ_32(adr) ( READ_16(adr) | (READ_16((adr)+2) << 16) ) 16#define READ_32(adr) ( READ_16(adr) | (READ_16((adr)+2) << 16) )
17 17
18#define WRITE_8(buff, n) do { \ 18#define WRITE_8(buff, n) do { \
19 *((unsigned char*)(buff)) = (unsigned char) ((n) & 0xff); \ 19 *((unsigned char*)(buff)) = (unsigned char) ((n) & 0xff); \
20} while(0) 20} while(0)
21#define WRITE_16(buff, n) do { \ 21#define WRITE_16(buff, n) do { \
22 WRITE_8((unsigned char*)(buff), n); \ 22 WRITE_8((unsigned char*)(buff), n); \
23 WRITE_8(((unsigned char*)(buff)) + 1, (n) >> 8); \ 23 WRITE_8(((unsigned char*)(buff)) + 1, (n) >> 8); \
24} while(0) 24} while(0)
25#define WRITE_32(buff, n) do { \ 25#define WRITE_32(buff, n) do { \
26 WRITE_16((unsigned char*)(buff), (n) & 0xffff); \ 26 WRITE_16((unsigned char*)(buff), (n) & 0xffff); \
27 WRITE_16((unsigned char*)(buff) + 2, (n) >> 16); \ 27 WRITE_16((unsigned char*)(buff) + 2, (n) >> 16); \
28} while(0) 28} while(0)
29 29
30extern int ZEXPORT unzRepair(file, fileOut, fileOutTmp, nRecovered, bytesRecovered) 30extern int ZEXPORT unzRepair(file, fileOut, fileOutTmp, nRecovered, bytesRecovered)
31const char* file; 31const char* file;
32const char* fileOut; 32const char* fileOut;
33const char* fileOutTmp; 33const char* fileOutTmp;
34uLong* nRecovered; 34uLong* nRecovered;
35uLong* bytesRecovered; 35uLong* bytesRecovered;
36{ 36{
37 int err = Z_OK; 37 int err = Z_OK;
38 FILE* fpZip = fopen(file, "rb"); 38 FILE* fpZip = fopen(file, "rb");
39 FILE* fpOut = fopen(fileOut, "wb"); 39 FILE* fpOut = fopen(fileOut, "wb");
40 FILE* fpOutCD = fopen(fileOutTmp, "wb"); 40 FILE* fpOutCD = fopen(fileOutTmp, "wb");
41 if (fpZip != NULL && fpOut != NULL) { 41 if (fpZip != NULL && fpOut != NULL) {
42 int entries = 0; 42 int entries = 0;
43 uLong totalBytes = 0; 43 uLong totalBytes = 0;
44 char header[30]; 44 char header[30];
45 char filename[256]; 45 char filename[256];
46 char extra[1024]; 46 char extra[1024];
47 int offset = 0; 47 int offset = 0;
48 int offsetCD = 0; 48 int offsetCD = 0;
49 while ( fread(header, 1, 30, fpZip) == 30 ) { 49 while ( fread(header, 1, 30, fpZip) == 30 ) {
50 int currentOffset = offset; 50 int currentOffset = offset;
51 51
52 /* File entry */ 52 /* File entry */
53 if (READ_32(header) == 0x04034b50) { 53 if (READ_32(header) == 0x04034b50) {
54 unsigned int version = READ_16(header + 4); 54 unsigned int version = READ_16(header + 4);
55 unsigned int gpflag = READ_16(header + 6); 55 unsigned int gpflag = READ_16(header + 6);
56 unsigned int method = READ_16(header + 8); 56 unsigned int method = READ_16(header + 8);
57 unsigned int filetime = READ_16(header + 10); 57 unsigned int filetime = READ_16(header + 10);
58 unsigned int filedate = READ_16(header + 12); 58 unsigned int filedate = READ_16(header + 12);
59 unsigned int crc = READ_32(header + 14); /* crc */ 59 unsigned int crc = READ_32(header + 14); /* crc */
60 unsigned int cpsize = READ_32(header + 18); /* compressed size */ 60 unsigned int cpsize = READ_32(header + 18); /* compressed size */
61 unsigned int uncpsize = READ_32(header + 22); /* uncompressed sz */ 61 unsigned int uncpsize = READ_32(header + 22); /* uncompressed sz */
62 unsigned int fnsize = READ_16(header + 26); /* file name length */ 62 unsigned int fnsize = READ_16(header + 26); /* file name length */
63 unsigned int extsize = READ_16(header + 28); /* extra field length */ 63 unsigned int extsize = READ_16(header + 28); /* extra field length */
64 filename[0] = extra[0] = '\0'; 64 filename[0] = extra[0] = '\0';
65 65
66 /* Header */ 66 /* Header */
67 if (fwrite(header, 1, 30, fpOut) == 30) { 67 if (fwrite(header, 1, 30, fpOut) == 30) {
68 offset += 30; 68 offset += 30;
69 } else { 69 } else {
70 err = Z_ERRNO; 70 err = Z_ERRNO;
71 break; 71 break;
72 } 72 }
73 73
74 /* Filename */ 74 /* Filename */
75 if (fnsize > 0) { 75 if (fnsize > 0) {
76 if (fread(filename, 1, fnsize, fpZip) == fnsize) { 76 if (fread(filename, 1, fnsize, fpZip) == fnsize) {
77 if (fwrite(filename, 1, fnsize, fpOut) == fnsize) { 77 if (fwrite(filename, 1, fnsize, fpOut) == fnsize) {
78 offset += fnsize; 78 offset += fnsize;
79 } else { 79 } else {
80 err = Z_ERRNO; 80 err = Z_ERRNO;
81 break; 81 break;
82 } 82 }
83 } else { 83 } else {
84 err = Z_ERRNO; 84 err = Z_ERRNO;
85 break; 85 break;
86 } 86 }
87 } else { 87 } else {
88 err = Z_STREAM_ERROR; 88 err = Z_STREAM_ERROR;
89 break; 89 break;
90 } 90 }
91 91
92 /* Extra field */ 92 /* Extra field */
93 if (extsize > 0) { 93 if (extsize > 0) {
94 if (fread(extra, 1, extsize, fpZip) == extsize) { 94 if (fread(extra, 1, extsize, fpZip) == extsize) {
95 if (fwrite(extra, 1, extsize, fpOut) == extsize) { 95 if (fwrite(extra, 1, extsize, fpOut) == extsize) {
96 offset += extsize; 96 offset += extsize;
97 } else { 97 } else {
98 err = Z_ERRNO; 98 err = Z_ERRNO;
99 break; 99 break;
100 } 100 }
101 } else { 101 } else {
102 err = Z_ERRNO; 102 err = Z_ERRNO;
103 break; 103 break;
104 } 104 }
105 } 105 }
106 106
107 /* Data */ 107 /* Data */
108 { 108 {
109 int dataSize = cpsize; 109 int dataSize = cpsize;
110 if (dataSize == 0) { 110 if (dataSize == 0) {
111 dataSize = uncpsize; 111 dataSize = uncpsize;
112 } 112 }
113 if (dataSize > 0) { 113 if (dataSize > 0) {
114 char* data = malloc(dataSize); 114 char* data = malloc(dataSize);
115 if (data != NULL) { 115 if (data != NULL) {
116 if ((int)fread(data, 1, dataSize, fpZip) == dataSize) { 116 if ((int)fread(data, 1, dataSize, fpZip) == dataSize) {
117 if ((int)fwrite(data, 1, dataSize, fpOut) == dataSize) { 117 if ((int)fwrite(data, 1, dataSize, fpOut) == dataSize) {
118 offset += dataSize; 118 offset += dataSize;
119 totalBytes += dataSize; 119 totalBytes += dataSize;
120 } else { 120 } else {
121 err = Z_ERRNO; 121 err = Z_ERRNO;
122 } 122 }
123 } else { 123 } else {
124 err = Z_ERRNO; 124 err = Z_ERRNO;
125 } 125 }
126 free(data); 126 free(data);
127 if (err != Z_OK) { 127 if (err != Z_OK) {
128 break; 128 break;
129 } 129 }
130 } else { 130 } else {
131 err = Z_MEM_ERROR; 131 err = Z_MEM_ERROR;
132 break; 132 break;
133 } 133 }
134 } 134 }
135 } 135 }
136 136
137 /* Central directory entry */ 137 /* Central directory entry */
138 { 138 {
139 char header[46]; 139 char header[46];
140 char* comment = ""; 140 char* comment = "";
141 int comsize = (int) strlen(comment); 141 int comsize = (int) strlen(comment);
142 WRITE_32(header, 0x02014b50); 142 WRITE_32(header, 0x02014b50);
143 WRITE_16(header + 4, version); 143 WRITE_16(header + 4, version);
144 WRITE_16(header + 6, version); 144 WRITE_16(header + 6, version);
145 WRITE_16(header + 8, gpflag); 145 WRITE_16(header + 8, gpflag);
146 WRITE_16(header + 10, method); 146 WRITE_16(header + 10, method);
147 WRITE_16(header + 12, filetime); 147 WRITE_16(header + 12, filetime);
148 WRITE_16(header + 14, filedate); 148 WRITE_16(header + 14, filedate);
149 WRITE_32(header + 16, crc); 149 WRITE_32(header + 16, crc);
150 WRITE_32(header + 20, cpsize); 150 WRITE_32(header + 20, cpsize);
151 WRITE_32(header + 24, uncpsize); 151 WRITE_32(header + 24, uncpsize);
152 WRITE_16(header + 28, fnsize); 152 WRITE_16(header + 28, fnsize);
153 WRITE_16(header + 30, extsize); 153 WRITE_16(header + 30, extsize);
154 WRITE_16(header + 32, comsize); 154 WRITE_16(header + 32, comsize);
155 WRITE_16(header + 34, 0); /* disk # */ 155 WRITE_16(header + 34, 0); /* disk # */
156 WRITE_16(header + 36, 0); /* int attrb */ 156 WRITE_16(header + 36, 0); /* int attrb */
157 WRITE_32(header + 38, 0); /* ext attrb */ 157 WRITE_32(header + 38, 0); /* ext attrb */
158 WRITE_32(header + 42, currentOffset); 158 WRITE_32(header + 42, currentOffset);
159 /* Header */ 159 /* Header */
160 if (fwrite(header, 1, 46, fpOutCD) == 46) { 160 if (fwrite(header, 1, 46, fpOutCD) == 46) {
161 offsetCD += 46; 161 offsetCD += 46;
162 162
163 /* Filename */ 163 /* Filename */
164 if (fnsize > 0) { 164 if (fnsize > 0) {
165 if (fwrite(filename, 1, fnsize, fpOutCD) == fnsize) { 165 if (fwrite(filename, 1, fnsize, fpOutCD) == fnsize) {
166 offsetCD += fnsize; 166 offsetCD += fnsize;
167 } else { 167 } else {
168 err = Z_ERRNO; 168 err = Z_ERRNO;
169 break; 169 break;
170 } 170 }
171 } else { 171 } else {
172 err = Z_STREAM_ERROR; 172 err = Z_STREAM_ERROR;
173 break; 173 break;
174 } 174 }
175 175
176 /* Extra field */ 176 /* Extra field */
177 if (extsize > 0) { 177 if (extsize > 0) {
178 if (fwrite(extra, 1, extsize, fpOutCD) == extsize) { 178 if (fwrite(extra, 1, extsize, fpOutCD) == extsize) {
179 offsetCD += extsize; 179 offsetCD += extsize;
180 } else { 180 } else {
181 err = Z_ERRNO; 181 err = Z_ERRNO;
182 break; 182 break;
183 } 183 }
184 } 184 }
185 185
186 /* Comment field */ 186 /* Comment field */
187 if (comsize > 0) { 187 if (comsize > 0) {
188 if ((int)fwrite(comment, 1, comsize, fpOutCD) == comsize) { 188 if ((int)fwrite(comment, 1, comsize, fpOutCD) == comsize) {
189 offsetCD += comsize; 189 offsetCD += comsize;
190 } else { 190 } else {
191 err = Z_ERRNO; 191 err = Z_ERRNO;
192 break; 192 break;
193 } 193 }
194 } 194 }
195 195
196 196
197 } else { 197 } else {
198 err = Z_ERRNO; 198 err = Z_ERRNO;
199 break; 199 break;
200 } 200 }
201 } 201 }
202 202
203 /* Success */ 203 /* Success */
204 entries++; 204 entries++;
205 205
206 } else { 206 } else {
207 break; 207 break;
208 } 208 }
209 } 209 }
210 210
211 /* Final central directory */ 211 /* Final central directory */
212 { 212 {
213 int entriesZip = entries; 213 int entriesZip = entries;
214 char header[22]; 214 char header[22];
215 char* comment = ""; // "ZIP File recovered by zlib/minizip/mztools"; 215 char* comment = ""; // "ZIP File recovered by zlib/minizip/mztools";
216 int comsize = (int) strlen(comment); 216 int comsize = (int) strlen(comment);
217 if (entriesZip > 0xffff) { 217 if (entriesZip > 0xffff) {
218 entriesZip = 0xffff; 218 entriesZip = 0xffff;
219 } 219 }
220 WRITE_32(header, 0x06054b50); 220 WRITE_32(header, 0x06054b50);
221 WRITE_16(header + 4, 0); /* disk # */ 221 WRITE_16(header + 4, 0); /* disk # */
222 WRITE_16(header + 6, 0); /* disk # */ 222 WRITE_16(header + 6, 0); /* disk # */
223 WRITE_16(header + 8, entriesZip); /* hack */ 223 WRITE_16(header + 8, entriesZip); /* hack */
224 WRITE_16(header + 10, entriesZip); /* hack */ 224 WRITE_16(header + 10, entriesZip); /* hack */
225 WRITE_32(header + 12, offsetCD); /* size of CD */ 225 WRITE_32(header + 12, offsetCD); /* size of CD */
226 WRITE_32(header + 16, offset); /* offset to CD */ 226 WRITE_32(header + 16, offset); /* offset to CD */
227 WRITE_16(header + 20, comsize); /* comment */ 227 WRITE_16(header + 20, comsize); /* comment */
228 228
229 /* Header */ 229 /* Header */
230 if (fwrite(header, 1, 22, fpOutCD) == 22) { 230 if (fwrite(header, 1, 22, fpOutCD) == 22) {
231 231
232 /* Comment field */ 232 /* Comment field */
233 if (comsize > 0) { 233 if (comsize > 0) {
234 if ((int)fwrite(comment, 1, comsize, fpOutCD) != comsize) { 234 if ((int)fwrite(comment, 1, comsize, fpOutCD) != comsize) {
235 err = Z_ERRNO; 235 err = Z_ERRNO;
236 } 236 }
237 } 237 }
238 238
239 } else { 239 } else {
240 err = Z_ERRNO; 240 err = Z_ERRNO;
241 } 241 }
242 } 242 }
243 243
244 /* Final merge (file + central directory) */ 244 /* Final merge (file + central directory) */
245 fclose(fpOutCD); 245 fclose(fpOutCD);
246 if (err == Z_OK) { 246 if (err == Z_OK) {
247 fpOutCD = fopen(fileOutTmp, "rb"); 247 fpOutCD = fopen(fileOutTmp, "rb");
248 if (fpOutCD != NULL) { 248 if (fpOutCD != NULL) {
249 int nRead; 249 int nRead;
250 char buffer[8192]; 250 char buffer[8192];
251 while ( (nRead = (int)fread(buffer, 1, sizeof(buffer), fpOutCD)) > 0) { 251 while ( (nRead = (int)fread(buffer, 1, sizeof(buffer), fpOutCD)) > 0) {
252 if ((int)fwrite(buffer, 1, nRead, fpOut) != nRead) { 252 if ((int)fwrite(buffer, 1, nRead, fpOut) != nRead) {
253 err = Z_ERRNO; 253 err = Z_ERRNO;
254 break; 254 break;
255 } 255 }
256 } 256 }
257 fclose(fpOutCD); 257 fclose(fpOutCD);
258 } 258 }
259 } 259 }
260 260
261 /* Close */ 261 /* Close */
262 fclose(fpZip); 262 fclose(fpZip);
263 fclose(fpOut); 263 fclose(fpOut);
264 264
265 /* Wipe temporary file */ 265 /* Wipe temporary file */
266 (void)remove(fileOutTmp); 266 (void)remove(fileOutTmp);
267 267
268 /* Number of recovered entries */ 268 /* Number of recovered entries */
269 if (err == Z_OK) { 269 if (err == Z_OK) {
270 if (nRecovered != NULL) { 270 if (nRecovered != NULL) {
271 *nRecovered = entries; 271 *nRecovered = entries;
272 } 272 }
273 if (bytesRecovered != NULL) { 273 if (bytesRecovered != NULL) {
274 *bytesRecovered = totalBytes; 274 *bytesRecovered = totalBytes;
275 } 275 }
276 } 276 }
277 } else { 277 } else {
278 err = Z_STREAM_ERROR; 278 err = Z_STREAM_ERROR;
279 } 279 }
280 return err; 280 return err;
281} 281}
diff --git a/contrib/minizip/mztools.h b/contrib/minizip/mztools.h
index 82d1597..88b3459 100644
--- a/contrib/minizip/mztools.h
+++ b/contrib/minizip/mztools.h
@@ -1,31 +1,31 @@
1/* 1/*
2 Additional tools for Minizip 2 Additional tools for Minizip
3 Code: Xavier Roche '2004 3 Code: Xavier Roche '2004
4 License: Same as ZLIB (www.gzip.org) 4 License: Same as ZLIB (www.gzip.org)
5*/ 5*/
6 6
7#ifndef _zip_tools_H 7#ifndef _zip_tools_H
8#define _zip_tools_H 8#define _zip_tools_H
9 9
10#ifdef __cplusplus 10#ifdef __cplusplus
11extern "C" { 11extern "C" {
12#endif 12#endif
13 13
14#ifndef _ZLIB_H 14#ifndef _ZLIB_H
15#include "zlib.h" 15#include "zlib.h"
16#endif 16#endif
17 17
18#include "unzip.h" 18#include "unzip.h"
19 19
20/* Repair a ZIP file (missing central directory) 20/* Repair a ZIP file (missing central directory)
21 file: file to recover 21 file: file to recover
22 fileOut: output file after recovery 22 fileOut: output file after recovery
23 fileOutTmp: temporary file name used for recovery 23 fileOutTmp: temporary file name used for recovery
24*/ 24*/
25extern int ZEXPORT unzRepair(const char* file, 25extern int ZEXPORT unzRepair(const char* file,
26 const char* fileOut, 26 const char* fileOut,
27 const char* fileOutTmp, 27 const char* fileOutTmp,
28 uLong* nRecovered, 28 uLong* nRecovered,
29 uLong* bytesRecovered); 29 uLong* bytesRecovered);
30 30
31#endif 31#endif
diff --git a/contrib/minizip/unzip.c b/contrib/minizip/unzip.c
index 050d506..6a4d104 100644
--- a/contrib/minizip/unzip.c
+++ b/contrib/minizip/unzip.c
@@ -15,7 +15,7 @@
15 15
16 ------------------------------------------------------------------------------------ 16 ------------------------------------------------------------------------------------
17 Decryption code comes from crypt.c by Info-ZIP but has been greatly reduced in terms of 17 Decryption code comes from crypt.c by Info-ZIP but has been greatly reduced in terms of
18 compatibility with older software. The following is from the original crypt.c. 18 compatibility with older software. The following is from the original crypt.c.
19 Code woven in by Terry Thorsen 1/2003. 19 Code woven in by Terry Thorsen 1/2003.
20 20
21 Copyright (c) 1990-2000 Info-ZIP. All rights reserved. 21 Copyright (c) 1990-2000 Info-ZIP. All rights reserved.
@@ -45,13 +45,13 @@
45 2007-2008 - Even Rouault - Decoration of symbol names unz* -> cpl_unz* 45 2007-2008 - Even Rouault - Decoration of symbol names unz* -> cpl_unz*
46 2007-2008 - Even Rouault - Remove old C style function prototypes 46 2007-2008 - Even Rouault - Remove old C style function prototypes
47 2007-2008 - Even Rouault - Add unzip support for ZIP64 47 2007-2008 - Even Rouault - Add unzip support for ZIP64
48 48
49 Copyright (C) 2007-2008 Even Rouault 49 Copyright (C) 2007-2008 Even Rouault
50 50
51 51
52 Okt-2009 - Mathias Svensson - Removed cpl_* from symbol names (Even Rouault added them but since this is now moved to a new project (minizip64) I renamed them again). 52 Okt-2009 - Mathias Svensson - Removed cpl_* from symbol names (Even Rouault added them but since this is now moved to a new project (minizip64) I renamed them again).
53 Okt-2009 - Mathias Svensson - Fixed problem if uncompressed size was > 4G and compressed size was <4G 53 Okt-2009 - Mathias Svensson - Fixed problem if uncompressed size was > 4G and compressed size was <4G
54 should only read the compressed/uncompressed size from the Zip64 format if 54 should only read the compressed/uncompressed size from the Zip64 format if
55 the size from normal header was 0xFFFFFFFF 55 the size from normal header was 0xFFFFFFFF
56 Okt-2009 - Mathias Svensson - Applied some bug fixes from paches recived from Gilles Vollant 56 Okt-2009 - Mathias Svensson - Applied some bug fixes from paches recived from Gilles Vollant
57 Okt-2009 - Mathias Svensson - Applied support to unzip files with compression mathod BZIP2 (bzip2 lib is required) 57 Okt-2009 - Mathias Svensson - Applied support to unzip files with compression mathod BZIP2 (bzip2 lib is required)
@@ -1010,7 +1010,7 @@ local int unz64local_GetCurrentFileInfoInternal (unzFile file,
1010 if ((err==UNZ_OK) && (file_info.size_file_extra != 0)) 1010 if ((err==UNZ_OK) && (file_info.size_file_extra != 0))
1011 { 1011 {
1012 uLong acc = 0; 1012 uLong acc = 0;
1013 1013
1014 // since lSeek now points to after the extra field we need to move back 1014 // since lSeek now points to after the extra field we need to move back
1015 lSeek -= file_info.size_file_extra; 1015 lSeek -= file_info.size_file_extra;
1016 1016
@@ -1826,7 +1826,7 @@ extern int ZEXPORT unzReadCurrentFile (unzFile file, voidp buf, unsigned len)
1826 pfile_in_zip_read_info->stream.next_out = (Bytef*)pfile_in_zip_read_info->bstream.next_out; 1826 pfile_in_zip_read_info->stream.next_out = (Bytef*)pfile_in_zip_read_info->bstream.next_out;
1827 pfile_in_zip_read_info->stream.avail_out = pfile_in_zip_read_info->bstream.avail_out; 1827 pfile_in_zip_read_info->stream.avail_out = pfile_in_zip_read_info->bstream.avail_out;
1828 pfile_in_zip_read_info->stream.total_out = pfile_in_zip_read_info->bstream.total_out_lo32; 1828 pfile_in_zip_read_info->stream.total_out = pfile_in_zip_read_info->bstream.total_out_lo32;
1829 1829
1830 if (err==BZ_STREAM_END) 1830 if (err==BZ_STREAM_END)
1831 return (iRead==0) ? UNZ_EOF : iRead; 1831 return (iRead==0) ? UNZ_EOF : iRead;
1832 if (err!=BZ_OK) 1832 if (err!=BZ_OK)
diff --git a/contrib/minizip/unzip.h b/contrib/minizip/unzip.h
index a2e698f..da7fb61 100644
--- a/contrib/minizip/unzip.h
+++ b/contrib/minizip/unzip.h
@@ -13,7 +13,7 @@
13 For more info read MiniZip_info.txt 13 For more info read MiniZip_info.txt
14 14
15 --------------------------------------------------------------------------------- 15 ---------------------------------------------------------------------------------
16 16
17 Condition of use and distribution are the same than zlib : 17 Condition of use and distribution are the same than zlib :
18 18
19 This software is provided 'as-is', without any express or implied 19 This software is provided 'as-is', without any express or implied
@@ -36,7 +36,7 @@
36 36
37 Changes 37 Changes
38 38
39 See header of unzip64.c 39 See header of unzip64.c
40 40
41*/ 41*/
42 42
diff --git a/contrib/minizip/zconf.h b/contrib/minizip/zconf.h
deleted file mode 100644
index 03a9431..0000000
--- a/contrib/minizip/zconf.h
+++ /dev/null
@@ -1,332 +0,0 @@
1/* zconf.h -- configuration of the zlib compression library
2 * Copyright (C) 1995-2005 Jean-loup Gailly.
3 * For conditions of distribution and use, see copyright notice in zlib.h
4 */
5
6/* @(#) $Id$ */
7
8#ifndef ZCONF_H
9#define ZCONF_H
10
11/*
12 * If you *really* need a unique prefix for all types and library functions,
13 * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it.
14 */
15#ifdef Z_PREFIX
16# define deflateInit_ z_deflateInit_
17# define deflate z_deflate
18# define deflateEnd z_deflateEnd
19# define inflateInit_ z_inflateInit_
20# define inflate z_inflate
21# define inflateEnd z_inflateEnd
22# define deflateInit2_ z_deflateInit2_
23# define deflateSetDictionary z_deflateSetDictionary
24# define deflateCopy z_deflateCopy
25# define deflateReset z_deflateReset
26# define deflateParams z_deflateParams
27# define deflateBound z_deflateBound
28# define deflatePrime z_deflatePrime
29# define inflateInit2_ z_inflateInit2_
30# define inflateSetDictionary z_inflateSetDictionary
31# define inflateSync z_inflateSync
32# define inflateSyncPoint z_inflateSyncPoint
33# define inflateCopy z_inflateCopy
34# define inflateReset z_inflateReset
35# define inflateBack z_inflateBack
36# define inflateBackEnd z_inflateBackEnd
37# define compress z_compress
38# define compress2 z_compress2
39# define compressBound z_compressBound
40# define uncompress z_uncompress
41# define adler32 z_adler32
42# define crc32 z_crc32
43# define get_crc_table z_get_crc_table
44# define zError z_zError
45
46# define alloc_func z_alloc_func
47# define free_func z_free_func
48# define in_func z_in_func
49# define out_func z_out_func
50# define Byte z_Byte
51# define uInt z_uInt
52# define uLong z_uLong
53# define Bytef z_Bytef
54# define charf z_charf
55# define intf z_intf
56# define uIntf z_uIntf
57# define uLongf z_uLongf
58# define voidpf z_voidpf
59# define voidp z_voidp
60#endif
61
62#if defined(__MSDOS__) && !defined(MSDOS)
63# define MSDOS
64#endif
65#if (defined(OS_2) || defined(__OS2__)) && !defined(OS2)
66# define OS2
67#endif
68#if defined(_WINDOWS) && !defined(WINDOWS)
69# define WINDOWS
70#endif
71#if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__)
72# ifndef WIN32
73# define WIN32
74# endif
75#endif
76#if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32)
77# if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__)
78# ifndef SYS16BIT
79# define SYS16BIT
80# endif
81# endif
82#endif
83
84/*
85 * Compile with -DMAXSEG_64K if the alloc function cannot allocate more
86 * than 64k bytes at a time (needed on systems with 16-bit int).
87 */
88#ifdef SYS16BIT
89# define MAXSEG_64K
90#endif
91#ifdef MSDOS
92# define UNALIGNED_OK
93#endif
94
95#ifdef __STDC_VERSION__
96# ifndef STDC
97# define STDC
98# endif
99# if __STDC_VERSION__ >= 199901L
100# ifndef STDC99
101# define STDC99
102# endif
103# endif
104#endif
105#if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus))
106# define STDC
107#endif
108#if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__))
109# define STDC
110#endif
111#if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32))
112# define STDC
113#endif
114#if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__))
115# define STDC
116#endif
117
118#if defined(__OS400__) && !defined(STDC) /* iSeries (formerly AS/400). */
119# define STDC
120#endif
121
122#ifndef STDC
123# ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */
124# define const /* note: need a more gentle solution here */
125# endif
126#endif
127
128/* Some Mac compilers merge all .h files incorrectly: */
129#if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__)
130# define NO_DUMMY_DECL
131#endif
132
133/* Maximum value for memLevel in deflateInit2 */
134#ifndef MAX_MEM_LEVEL
135# ifdef MAXSEG_64K
136# define MAX_MEM_LEVEL 8
137# else
138# define MAX_MEM_LEVEL 9
139# endif
140#endif
141
142/* Maximum value for windowBits in deflateInit2 and inflateInit2.
143 * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files
144 * created by gzip. (Files created by minigzip can still be extracted by
145 * gzip.)
146 */
147#ifndef MAX_WBITS
148# define MAX_WBITS 15 /* 32K LZ77 window */
149#endif
150
151/* The memory requirements for deflate are (in bytes):
152 (1 << (windowBits+2)) + (1 << (memLevel+9))
153 that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values)
154 plus a few kilobytes for small objects. For example, if you want to reduce
155 the default memory requirements from 256K to 128K, compile with
156 make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7"
157 Of course this will generally degrade compression (there's no free lunch).
158
159 The memory requirements for inflate are (in bytes) 1 << windowBits
160 that is, 32K for windowBits=15 (default value) plus a few kilobytes
161 for small objects.
162*/
163
164 /* Type declarations */
165
166#ifndef OF /* function prototypes */
167# ifdef STDC
168# define OF(args) args
169# else
170# define OF(args) ()
171# endif
172#endif
173
174/* The following definitions for FAR are needed only for MSDOS mixed
175 * model programming (small or medium model with some far allocations).
176 * This was tested only with MSC; for other MSDOS compilers you may have
177 * to define NO_MEMCPY in zutil.h. If you don't need the mixed model,
178 * just define FAR to be empty.
179 */
180#ifdef SYS16BIT
181# if defined(M_I86SM) || defined(M_I86MM)
182 /* MSC small or medium model */
183# define SMALL_MEDIUM
184# ifdef _MSC_VER
185# define FAR _far
186# else
187# define FAR far
188# endif
189# endif
190# if (defined(__SMALL__) || defined(__MEDIUM__))
191 /* Turbo C small or medium model */
192# define SMALL_MEDIUM
193# ifdef __BORLANDC__
194# define FAR _far
195# else
196# define FAR far
197# endif
198# endif
199#endif
200
201#if defined(WINDOWS) || defined(WIN32)
202 /* If building or using zlib as a DLL, define ZLIB_DLL.
203 * This is not mandatory, but it offers a little performance increase.
204 */
205# ifdef ZLIB_DLL
206# if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500))
207# ifdef ZLIB_INTERNAL
208# define ZEXTERN extern __declspec(dllexport)
209# else
210# define ZEXTERN extern __declspec(dllimport)
211# endif
212# endif
213# endif /* ZLIB_DLL */
214 /* If building or using zlib with the WINAPI/WINAPIV calling convention,
215 * define ZLIB_WINAPI.
216 * Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI.
217 */
218# ifdef ZLIB_WINAPI
219# ifdef FAR
220# undef FAR
221# endif
222# include <windows.h>
223 /* No need for _export, use ZLIB.DEF instead. */
224 /* For complete Windows compatibility, use WINAPI, not __stdcall. */
225# define ZEXPORT WINAPI
226# ifdef WIN32
227# define ZEXPORTVA WINAPIV
228# else
229# define ZEXPORTVA FAR CDECL
230# endif
231# endif
232#endif
233
234#if defined (__BEOS__)
235# ifdef ZLIB_DLL
236# ifdef ZLIB_INTERNAL
237# define ZEXPORT __declspec(dllexport)
238# define ZEXPORTVA __declspec(dllexport)
239# else
240# define ZEXPORT __declspec(dllimport)
241# define ZEXPORTVA __declspec(dllimport)
242# endif
243# endif
244#endif
245
246#ifndef ZEXTERN
247# define ZEXTERN extern
248#endif
249#ifndef ZEXPORT
250# define ZEXPORT
251#endif
252#ifndef ZEXPORTVA
253# define ZEXPORTVA
254#endif
255
256#ifndef FAR
257# define FAR
258#endif
259
260#if !defined(__MACTYPES__)
261typedef unsigned char Byte; /* 8 bits */
262#endif
263typedef unsigned int uInt; /* 16 bits or more */
264typedef unsigned long uLong; /* 32 bits or more */
265
266#ifdef SMALL_MEDIUM
267 /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */
268# define Bytef Byte FAR
269#else
270 typedef Byte FAR Bytef;
271#endif
272typedef char FAR charf;
273typedef int FAR intf;
274typedef uInt FAR uIntf;
275typedef uLong FAR uLongf;
276
277#ifdef STDC
278 typedef void const *voidpc;
279 typedef void FAR *voidpf;
280 typedef void *voidp;
281#else
282 typedef Byte const *voidpc;
283 typedef Byte FAR *voidpf;
284 typedef Byte *voidp;
285#endif
286
287#if 0 /* HAVE_UNISTD_H -- this line is updated by ./configure */
288# include <sys/types.h> /* for off_t */
289# include <unistd.h> /* for SEEK_* and off_t */
290# ifdef VMS
291# include <unixio.h> /* for off_t */
292# endif
293# define z_off_t off_t
294#endif
295#ifndef SEEK_SET
296# define SEEK_SET 0 /* Seek from beginning of file. */
297# define SEEK_CUR 1 /* Seek from current position. */
298# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */
299#endif
300#ifndef z_off_t
301# define z_off_t long
302#endif
303
304#if defined(__OS400__)
305# define NO_vsnprintf
306#endif
307
308#if defined(__MVS__)
309# define NO_vsnprintf
310# ifdef FAR
311# undef FAR
312# endif
313#endif
314
315/* MVS linker does not support external names larger than 8 bytes */
316#if defined(__MVS__)
317# pragma map(deflateInit_,"DEIN")
318# pragma map(deflateInit2_,"DEIN2")
319# pragma map(deflateEnd,"DEEND")
320# pragma map(deflateBound,"DEBND")
321# pragma map(inflateInit_,"ININ")
322# pragma map(inflateInit2_,"ININ2")
323# pragma map(inflateEnd,"INEND")
324# pragma map(inflateSync,"INSY")
325# pragma map(inflateSetDictionary,"INSEDI")
326# pragma map(compressBound,"CMBND")
327# pragma map(inflate_table,"INTABL")
328# pragma map(inflate_fast,"INFA")
329# pragma map(inflate_copyright,"INCOPY")
330#endif
331
332#endif /* ZCONF_H */
diff --git a/contrib/minizip/zconf.in.h b/contrib/minizip/zconf.in.h
deleted file mode 100644
index 03a9431..0000000
--- a/contrib/minizip/zconf.in.h
+++ /dev/null
@@ -1,332 +0,0 @@
1/* zconf.h -- configuration of the zlib compression library
2 * Copyright (C) 1995-2005 Jean-loup Gailly.
3 * For conditions of distribution and use, see copyright notice in zlib.h
4 */
5
6/* @(#) $Id$ */
7
8#ifndef ZCONF_H
9#define ZCONF_H
10
11/*
12 * If you *really* need a unique prefix for all types and library functions,
13 * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it.
14 */
15#ifdef Z_PREFIX
16# define deflateInit_ z_deflateInit_
17# define deflate z_deflate
18# define deflateEnd z_deflateEnd
19# define inflateInit_ z_inflateInit_
20# define inflate z_inflate
21# define inflateEnd z_inflateEnd
22# define deflateInit2_ z_deflateInit2_
23# define deflateSetDictionary z_deflateSetDictionary
24# define deflateCopy z_deflateCopy
25# define deflateReset z_deflateReset
26# define deflateParams z_deflateParams
27# define deflateBound z_deflateBound
28# define deflatePrime z_deflatePrime
29# define inflateInit2_ z_inflateInit2_
30# define inflateSetDictionary z_inflateSetDictionary
31# define inflateSync z_inflateSync
32# define inflateSyncPoint z_inflateSyncPoint
33# define inflateCopy z_inflateCopy
34# define inflateReset z_inflateReset
35# define inflateBack z_inflateBack
36# define inflateBackEnd z_inflateBackEnd
37# define compress z_compress
38# define compress2 z_compress2
39# define compressBound z_compressBound
40# define uncompress z_uncompress
41# define adler32 z_adler32
42# define crc32 z_crc32
43# define get_crc_table z_get_crc_table
44# define zError z_zError
45
46# define alloc_func z_alloc_func
47# define free_func z_free_func
48# define in_func z_in_func
49# define out_func z_out_func
50# define Byte z_Byte
51# define uInt z_uInt
52# define uLong z_uLong
53# define Bytef z_Bytef
54# define charf z_charf
55# define intf z_intf
56# define uIntf z_uIntf
57# define uLongf z_uLongf
58# define voidpf z_voidpf
59# define voidp z_voidp
60#endif
61
62#if defined(__MSDOS__) && !defined(MSDOS)
63# define MSDOS
64#endif
65#if (defined(OS_2) || defined(__OS2__)) && !defined(OS2)
66# define OS2
67#endif
68#if defined(_WINDOWS) && !defined(WINDOWS)
69# define WINDOWS
70#endif
71#if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__)
72# ifndef WIN32
73# define WIN32
74# endif
75#endif
76#if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32)
77# if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__)
78# ifndef SYS16BIT
79# define SYS16BIT
80# endif
81# endif
82#endif
83
84/*
85 * Compile with -DMAXSEG_64K if the alloc function cannot allocate more
86 * than 64k bytes at a time (needed on systems with 16-bit int).
87 */
88#ifdef SYS16BIT
89# define MAXSEG_64K
90#endif
91#ifdef MSDOS
92# define UNALIGNED_OK
93#endif
94
95#ifdef __STDC_VERSION__
96# ifndef STDC
97# define STDC
98# endif
99# if __STDC_VERSION__ >= 199901L
100# ifndef STDC99
101# define STDC99
102# endif
103# endif
104#endif
105#if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus))
106# define STDC
107#endif
108#if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__))
109# define STDC
110#endif
111#if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32))
112# define STDC
113#endif
114#if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__))
115# define STDC
116#endif
117
118#if defined(__OS400__) && !defined(STDC) /* iSeries (formerly AS/400). */
119# define STDC
120#endif
121
122#ifndef STDC
123# ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */
124# define const /* note: need a more gentle solution here */
125# endif
126#endif
127
128/* Some Mac compilers merge all .h files incorrectly: */
129#if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__)
130# define NO_DUMMY_DECL
131#endif
132
133/* Maximum value for memLevel in deflateInit2 */
134#ifndef MAX_MEM_LEVEL
135# ifdef MAXSEG_64K
136# define MAX_MEM_LEVEL 8
137# else
138# define MAX_MEM_LEVEL 9
139# endif
140#endif
141
142/* Maximum value for windowBits in deflateInit2 and inflateInit2.
143 * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files
144 * created by gzip. (Files created by minigzip can still be extracted by
145 * gzip.)
146 */
147#ifndef MAX_WBITS
148# define MAX_WBITS 15 /* 32K LZ77 window */
149#endif
150
151/* The memory requirements for deflate are (in bytes):
152 (1 << (windowBits+2)) + (1 << (memLevel+9))
153 that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values)
154 plus a few kilobytes for small objects. For example, if you want to reduce
155 the default memory requirements from 256K to 128K, compile with
156 make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7"
157 Of course this will generally degrade compression (there's no free lunch).
158
159 The memory requirements for inflate are (in bytes) 1 << windowBits
160 that is, 32K for windowBits=15 (default value) plus a few kilobytes
161 for small objects.
162*/
163
164 /* Type declarations */
165
166#ifndef OF /* function prototypes */
167# ifdef STDC
168# define OF(args) args
169# else
170# define OF(args) ()
171# endif
172#endif
173
174/* The following definitions for FAR are needed only for MSDOS mixed
175 * model programming (small or medium model with some far allocations).
176 * This was tested only with MSC; for other MSDOS compilers you may have
177 * to define NO_MEMCPY in zutil.h. If you don't need the mixed model,
178 * just define FAR to be empty.
179 */
180#ifdef SYS16BIT
181# if defined(M_I86SM) || defined(M_I86MM)
182 /* MSC small or medium model */
183# define SMALL_MEDIUM
184# ifdef _MSC_VER
185# define FAR _far
186# else
187# define FAR far
188# endif
189# endif
190# if (defined(__SMALL__) || defined(__MEDIUM__))
191 /* Turbo C small or medium model */
192# define SMALL_MEDIUM
193# ifdef __BORLANDC__
194# define FAR _far
195# else
196# define FAR far
197# endif
198# endif
199#endif
200
201#if defined(WINDOWS) || defined(WIN32)
202 /* If building or using zlib as a DLL, define ZLIB_DLL.
203 * This is not mandatory, but it offers a little performance increase.
204 */
205# ifdef ZLIB_DLL
206# if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500))
207# ifdef ZLIB_INTERNAL
208# define ZEXTERN extern __declspec(dllexport)
209# else
210# define ZEXTERN extern __declspec(dllimport)
211# endif
212# endif
213# endif /* ZLIB_DLL */
214 /* If building or using zlib with the WINAPI/WINAPIV calling convention,
215 * define ZLIB_WINAPI.
216 * Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI.
217 */
218# ifdef ZLIB_WINAPI
219# ifdef FAR
220# undef FAR
221# endif
222# include <windows.h>
223 /* No need for _export, use ZLIB.DEF instead. */
224 /* For complete Windows compatibility, use WINAPI, not __stdcall. */
225# define ZEXPORT WINAPI
226# ifdef WIN32
227# define ZEXPORTVA WINAPIV
228# else
229# define ZEXPORTVA FAR CDECL
230# endif
231# endif
232#endif
233
234#if defined (__BEOS__)
235# ifdef ZLIB_DLL
236# ifdef ZLIB_INTERNAL
237# define ZEXPORT __declspec(dllexport)
238# define ZEXPORTVA __declspec(dllexport)
239# else
240# define ZEXPORT __declspec(dllimport)
241# define ZEXPORTVA __declspec(dllimport)
242# endif
243# endif
244#endif
245
246#ifndef ZEXTERN
247# define ZEXTERN extern
248#endif
249#ifndef ZEXPORT
250# define ZEXPORT
251#endif
252#ifndef ZEXPORTVA
253# define ZEXPORTVA
254#endif
255
256#ifndef FAR
257# define FAR
258#endif
259
260#if !defined(__MACTYPES__)
261typedef unsigned char Byte; /* 8 bits */
262#endif
263typedef unsigned int uInt; /* 16 bits or more */
264typedef unsigned long uLong; /* 32 bits or more */
265
266#ifdef SMALL_MEDIUM
267 /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */
268# define Bytef Byte FAR
269#else
270 typedef Byte FAR Bytef;
271#endif
272typedef char FAR charf;
273typedef int FAR intf;
274typedef uInt FAR uIntf;
275typedef uLong FAR uLongf;
276
277#ifdef STDC
278 typedef void const *voidpc;
279 typedef void FAR *voidpf;
280 typedef void *voidp;
281#else
282 typedef Byte const *voidpc;
283 typedef Byte FAR *voidpf;
284 typedef Byte *voidp;
285#endif
286
287#if 0 /* HAVE_UNISTD_H -- this line is updated by ./configure */
288# include <sys/types.h> /* for off_t */
289# include <unistd.h> /* for SEEK_* and off_t */
290# ifdef VMS
291# include <unixio.h> /* for off_t */
292# endif
293# define z_off_t off_t
294#endif
295#ifndef SEEK_SET
296# define SEEK_SET 0 /* Seek from beginning of file. */
297# define SEEK_CUR 1 /* Seek from current position. */
298# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */
299#endif
300#ifndef z_off_t
301# define z_off_t long
302#endif
303
304#if defined(__OS400__)
305# define NO_vsnprintf
306#endif
307
308#if defined(__MVS__)
309# define NO_vsnprintf
310# ifdef FAR
311# undef FAR
312# endif
313#endif
314
315/* MVS linker does not support external names larger than 8 bytes */
316#if defined(__MVS__)
317# pragma map(deflateInit_,"DEIN")
318# pragma map(deflateInit2_,"DEIN2")
319# pragma map(deflateEnd,"DEEND")
320# pragma map(deflateBound,"DEBND")
321# pragma map(inflateInit_,"ININ")
322# pragma map(inflateInit2_,"ININ2")
323# pragma map(inflateEnd,"INEND")
324# pragma map(inflateSync,"INSY")
325# pragma map(inflateSetDictionary,"INSEDI")
326# pragma map(compressBound,"CMBND")
327# pragma map(inflate_table,"INTABL")
328# pragma map(inflate_fast,"INFA")
329# pragma map(inflate_copyright,"INCOPY")
330#endif
331
332#endif /* ZCONF_H */
diff --git a/contrib/minizip/zip.c b/contrib/minizip/zip.c
index e12da4c..698dcec 100644
--- a/contrib/minizip/zip.c
+++ b/contrib/minizip/zip.c
@@ -73,7 +73,7 @@
73 73
74 74
75// NOT sure that this work on ALL platform 75// NOT sure that this work on ALL platform
76#define MAKEULONG64(a, b) ((ZPOS64_T)(((unsigned long)(a)) | ((ZPOS64_T)((unsigned long)(b))) << 32)) 76#define MAKEULONG64(a, b) ((ZPOS64_T)(((unsigned long)(a)) | ((ZPOS64_T)((unsigned long)(b))) << 32))
77 77
78#ifndef SEEK_CUR 78#ifndef SEEK_CUR
79#define SEEK_CUR 1 79#define SEEK_CUR 1
@@ -759,7 +759,7 @@ int LoadCentralDirectoryRecord(zip64_internal* pziinit)
759 number_entry_CD = 0; 759 number_entry_CD = 0;
760 if (zip64local_getShort(&pziinit->z_filefunc, pziinit->filestream, &uL)!=ZIP_OK) 760 if (zip64local_getShort(&pziinit->z_filefunc, pziinit->filestream, &uL)!=ZIP_OK)
761 err=ZIP_ERRNO; 761 err=ZIP_ERRNO;
762 else 762 else
763 number_entry_CD = uL; 763 number_entry_CD = uL;
764 764
765 if ((number_entry_CD!=number_entry) || (number_disk_with_CD!=0) || (number_disk!=0)) 765 if ((number_entry_CD!=number_entry) || (number_disk_with_CD!=0) || (number_disk!=0))
@@ -1021,7 +1021,7 @@ int Write_LocalFileHeader(zip64_internal* zi, const char* filename, uInt size_ex
1021 err = ZIP_ERRNO; 1021 err = ZIP_ERRNO;
1022 } 1022 }
1023 1023
1024 1024
1025 if ((err==ZIP_OK) && (zi->ci.zip64)) 1025 if ((err==ZIP_OK) && (zi->ci.zip64))
1026 { 1026 {
1027 // write the Zip64 extended info 1027 // write the Zip64 extended info
@@ -1035,7 +1035,7 @@ int Write_LocalFileHeader(zip64_internal* zi, const char* filename, uInt size_ex
1035 1035
1036 err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (short)HeaderID,2); 1036 err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (short)HeaderID,2);
1037 err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (short)DataSize,2); 1037 err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (short)DataSize,2);
1038 1038
1039 err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (ZPOS64_T)UncompressedSize,8); 1039 err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (ZPOS64_T)UncompressedSize,8);
1040 err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (ZPOS64_T)CompressedSize,8); 1040 err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (ZPOS64_T)CompressedSize,8);
1041 } 1041 }
@@ -1044,11 +1044,11 @@ int Write_LocalFileHeader(zip64_internal* zi, const char* filename, uInt size_ex
1044} 1044}
1045 1045
1046/* 1046/*
1047 NOTE. 1047 NOTE.
1048 When writing RAW the ZIP64 extended information in extrafield_local and extrafield_global needs to be stripped 1048 When writing RAW the ZIP64 extended information in extrafield_local and extrafield_global needs to be stripped
1049 before calling this function it can be done with zipRemoveExtraInfoBlock 1049 before calling this function it can be done with zipRemoveExtraInfoBlock
1050 1050
1051 It is not done here because then we need to realloc a new buffer since parameters are 'const' and I want to minimize 1051 It is not done here because then we need to realloc a new buffer since parameters are 'const' and I want to minimize
1052 unnecessary allocations. 1052 unnecessary allocations.
1053 */ 1053 */
1054extern int ZEXPORT zipOpenNewFileInZip4_64 (zipFile file, const char* filename, const zip_fileinfo* zipfi, 1054extern int ZEXPORT zipOpenNewFileInZip4_64 (zipFile file, const char* filename, const zip_fileinfo* zipfi,
@@ -1106,7 +1106,7 @@ extern int ZEXPORT zipOpenNewFileInZip4_64 (zipFile file, const char* filename,
1106 { 1106 {
1107 if (zipfi->dosDate != 0) 1107 if (zipfi->dosDate != 0)
1108 zi->ci.dosDate = zipfi->dosDate; 1108 zi->ci.dosDate = zipfi->dosDate;
1109 else 1109 else
1110 zi->ci.dosDate = zip64local_TmzDateToDosDate(&zipfi->tmz_date); 1110 zi->ci.dosDate = zip64local_TmzDateToDosDate(&zipfi->tmz_date);
1111 } 1111 }
1112 1112
@@ -1305,7 +1305,7 @@ extern int ZEXPORT zipOpenNewFileInZip3_64(zipFile file, const char* filename, c
1305 windowBits, memLevel, strategy, 1305 windowBits, memLevel, strategy,
1306 password, crcForCrypting, VERSIONMADEBY, 0, zip64); 1306 password, crcForCrypting, VERSIONMADEBY, 0, zip64);
1307} 1307}
1308 1308
1309extern int ZEXPORT zipOpenNewFileInZip2(zipFile file, const char* filename, const zip_fileinfo* zipfi, 1309extern int ZEXPORT zipOpenNewFileInZip2(zipFile file, const char* filename, const zip_fileinfo* zipfi,
1310 const void* extrafield_local, uInt size_extrafield_local, 1310 const void* extrafield_local, uInt size_extrafield_local,
1311 const void* extrafield_global, uInt size_extrafield_global, 1311 const void* extrafield_global, uInt size_extrafield_global,
@@ -1393,7 +1393,7 @@ local int zip64FlushWriteBuffer(zip64_internal* zi)
1393 1393
1394 1394
1395 zi->ci.pos_in_buffered_data = 0; 1395 zi->ci.pos_in_buffered_data = 0;
1396 1396
1397 return err; 1397 return err;
1398} 1398}
1399 1399
@@ -1581,7 +1581,7 @@ extern int ZEXPORT zipCloseFileInZipRaw64 (zipFile file, ZPOS64_T uncompressed_s
1581 if ((zi->ci.method == Z_DEFLATED) && (!zi->ci.raw)) 1581 if ((zi->ci.method == Z_DEFLATED) && (!zi->ci.raw))
1582 { 1582 {
1583 int tmp_err = deflateEnd(&zi->ci.stream); 1583 int tmp_err = deflateEnd(&zi->ci.stream);
1584 if (err == ZIP_OK) 1584 if (err == ZIP_OK)
1585 err = tmp_err; 1585 err = tmp_err;
1586 zi->ci.stream_initialised = 0; 1586 zi->ci.stream_initialised = 0;
1587 } 1587 }
@@ -1589,7 +1589,7 @@ extern int ZEXPORT zipCloseFileInZipRaw64 (zipFile file, ZPOS64_T uncompressed_s
1589 else if((zi->ci.method == Z_BZIP2ED) && (!zi->ci.raw)) 1589 else if((zi->ci.method == Z_BZIP2ED) && (!zi->ci.raw))
1590 { 1590 {
1591 int tmperr = BZ2_bzCompressEnd(&zi->ci.bstream); 1591 int tmperr = BZ2_bzCompressEnd(&zi->ci.bstream);
1592 if (err==ZIP_OK) 1592 if (err==ZIP_OK)
1593 err = tmperr; 1593 err = tmperr;
1594 zi->ci.stream_initialised = 0; 1594 zi->ci.stream_initialised = 0;
1595 } 1595 }
@@ -1662,7 +1662,7 @@ extern int ZEXPORT zipCloseFileInZipRaw64 (zipFile file, ZPOS64_T uncompressed_s
1662 p += 2; 1662 p += 2;
1663 zip64local_putValue_inmemory(p, datasize, 2); // DataSize 1663 zip64local_putValue_inmemory(p, datasize, 2); // DataSize
1664 p += 2; 1664 p += 2;
1665 1665
1666 if(uncompressed_size >= 0xffffffff) 1666 if(uncompressed_size >= 0xffffffff)
1667 { 1667 {
1668 zip64local_putValue_inmemory(p, uncompressed_size, 8); 1668 zip64local_putValue_inmemory(p, uncompressed_size, 8);
@@ -1680,7 +1680,7 @@ extern int ZEXPORT zipCloseFileInZipRaw64 (zipFile file, ZPOS64_T uncompressed_s
1680 zip64local_putValue_inmemory(p, zi->ci.pos_local_header, 8); 1680 zip64local_putValue_inmemory(p, zi->ci.pos_local_header, 8);
1681 p += 8; 1681 p += 8;
1682 } 1682 }
1683 1683
1684 // Update how much extra free space we got in the memory buffer 1684 // Update how much extra free space we got in the memory buffer
1685 // and increase the centralheader size so the new ZIP64 fields are included 1685 // and increase the centralheader size so the new ZIP64 fields are included
1686 // ( 4 below is the size of HeaderID and DataSize field ) 1686 // ( 4 below is the size of HeaderID and DataSize field )
@@ -1691,7 +1691,7 @@ extern int ZEXPORT zipCloseFileInZipRaw64 (zipFile file, ZPOS64_T uncompressed_s
1691 zi->ci.size_centralExtra += datasize + 4; 1691 zi->ci.size_centralExtra += datasize + 4;
1692 zip64local_putValue_inmemory(zi->ci.central_header+30,(uLong)zi->ci.size_centralExtra,2); 1692 zip64local_putValue_inmemory(zi->ci.central_header+30,(uLong)zi->ci.size_centralExtra,2);
1693 } 1693 }
1694 1694
1695 if (err==ZIP_OK) 1695 if (err==ZIP_OK)
1696 err = add_data_in_datablock(&zi->central_dir, zi->ci.central_header, (uLong)zi->ci.size_centralheader); 1696 err = add_data_in_datablock(&zi->central_dir, zi->ci.central_header, (uLong)zi->ci.size_centralheader);
1697 1697
@@ -1752,9 +1752,9 @@ int Write_Zip64EndOfCentralDirectoryLocator(zip64_internal* zi, ZPOS64_T zip64eo
1752{ 1752{
1753 int err = ZIP_OK; 1753 int err = ZIP_OK;
1754 ZPOS64_T pos = zip64eocd_pos_inzip - zi->add_position_when_writting_offset; 1754 ZPOS64_T pos = zip64eocd_pos_inzip - zi->add_position_when_writting_offset;
1755 1755
1756 err = zip64local_putValue(&zi->z_filefunc,zi->filestream,(uLong)ZIP64ENDLOCHEADERMAGIC,4); 1756 err = zip64local_putValue(&zi->z_filefunc,zi->filestream,(uLong)ZIP64ENDLOCHEADERMAGIC,4);
1757 1757
1758 /*num disks*/ 1758 /*num disks*/
1759 if (err==ZIP_OK) /* number of the disk with the start of the central directory */ 1759 if (err==ZIP_OK) /* number of the disk with the start of the central directory */
1760 err = zip64local_putValue(&zi->z_filefunc,zi->filestream,(uLong)0,4); 1760 err = zip64local_putValue(&zi->z_filefunc,zi->filestream,(uLong)0,4);
@@ -1807,12 +1807,12 @@ int Write_Zip64EndOfCentralDirectoryRecord(zip64_internal* zi, uLong size_centra
1807 ZPOS64_T pos = centraldir_pos_inzip - zi->add_position_when_writting_offset; 1807 ZPOS64_T pos = centraldir_pos_inzip - zi->add_position_when_writting_offset;
1808 err = zip64local_putValue(&zi->z_filefunc,zi->filestream, (ZPOS64_T)pos,8); 1808 err = zip64local_putValue(&zi->z_filefunc,zi->filestream, (ZPOS64_T)pos,8);
1809 } 1809 }
1810 return err; 1810 return err;
1811} 1811}
1812int Write_EndOfCentralDirectoryRecord(zip64_internal* zi, uLong size_centraldir, ZPOS64_T centraldir_pos_inzip) 1812int Write_EndOfCentralDirectoryRecord(zip64_internal* zi, uLong size_centraldir, ZPOS64_T centraldir_pos_inzip)
1813{ 1813{
1814 int err = ZIP_OK; 1814 int err = ZIP_OK;
1815 1815
1816 /*signature*/ 1816 /*signature*/
1817 err = zip64local_putValue(&zi->z_filefunc,zi->filestream,(uLong)ENDHEADERMAGIC,4); 1817 err = zip64local_putValue(&zi->z_filefunc,zi->filestream,(uLong)ENDHEADERMAGIC,4);
1818 1818
@@ -1861,7 +1861,7 @@ int Write_GlobalComment(zip64_internal* zi, const char* global_comment)
1861{ 1861{
1862 int err = ZIP_OK; 1862 int err = ZIP_OK;
1863 uInt size_global_comment = 0; 1863 uInt size_global_comment = 0;
1864 1864
1865 if(global_comment != NULL) 1865 if(global_comment != NULL)
1866 size_global_comment = (uInt)strlen(global_comment); 1866 size_global_comment = (uInt)strlen(global_comment);
1867 1867
@@ -1897,7 +1897,7 @@ extern int ZEXPORT zipClose (zipFile file, const char* global_comment)
1897 if (global_comment==NULL) 1897 if (global_comment==NULL)
1898 global_comment = zi->globalcomment; 1898 global_comment = zi->globalcomment;
1899#endif 1899#endif
1900 1900
1901 centraldir_pos_inzip = ZTELL64(zi->z_filefunc,zi->filestream); 1901 centraldir_pos_inzip = ZTELL64(zi->z_filefunc,zi->filestream);
1902 1902
1903 if (err==ZIP_OK) 1903 if (err==ZIP_OK)
@@ -1922,7 +1922,7 @@ extern int ZEXPORT zipClose (zipFile file, const char* global_comment)
1922 { 1922 {
1923 ZPOS64_T Zip64EOCDpos = ZTELL64(zi->z_filefunc,zi->filestream); 1923 ZPOS64_T Zip64EOCDpos = ZTELL64(zi->z_filefunc,zi->filestream);
1924 Write_Zip64EndOfCentralDirectoryRecord(zi, size_centraldir, centraldir_pos_inzip); 1924 Write_Zip64EndOfCentralDirectoryRecord(zi, size_centraldir, centraldir_pos_inzip);
1925 1925
1926 Write_Zip64EndOfCentralDirectoryLocator(zi, Zip64EOCDpos); 1926 Write_Zip64EndOfCentralDirectoryLocator(zi, Zip64EOCDpos);
1927 } 1927 }
1928 1928
@@ -1977,7 +1977,7 @@ extern int ZEXPORT zipRemoveExtraInfoBlock (char* pData, int* dataLen, short sHe
1977 p += dataSize + 4; 1977 p += dataSize + 4;
1978 size += dataSize + 4; 1978 size += dataSize + 4;
1979 } 1979 }
1980 1980
1981 } 1981 }
1982 1982
1983 if(size < *dataLen) 1983 if(size < *dataLen)
diff --git a/contrib/minizip/zip.h b/contrib/minizip/zip.h
index a33a52d..5e3a46c 100644
--- a/contrib/minizip/zip.h
+++ b/contrib/minizip/zip.h
@@ -31,7 +31,7 @@
31 31
32 --------------------------------------------------------------------------- 32 ---------------------------------------------------------------------------
33 33
34 Changes 34 Changes
35 35
36 See header of zip.h 36 See header of zip.h
37 37
@@ -338,13 +338,13 @@ extern int ZEXPORT zipClose OF((zipFile file,
338 338
339 339
340extern int ZEXPORT zipRemoveExtraInfoBlock OF((char* pData, int* dataLen, short sHeader)); 340extern int ZEXPORT zipRemoveExtraInfoBlock OF((char* pData, int* dataLen, short sHeader));
341/* 341/*
342 zipRemoveExtraInfoBlock - Added by Mathias Svensson 342 zipRemoveExtraInfoBlock - Added by Mathias Svensson
343 343
344 Remove extra information block from a extra information data for the local file header or central directory header 344 Remove extra information block from a extra information data for the local file header or central directory header
345 345
346 It is needed to remove ZIP64 extra information blocks when before data is written if using RAW mode. 346 It is needed to remove ZIP64 extra information blocks when before data is written if using RAW mode.
347 347
348 0x0001 is the signature header for the ZIP64 extra information blocks 348 0x0001 is the signature header for the ZIP64 extra information blocks
349 349
350 usage. 350 usage.
diff --git a/contrib/puff/puff b/contrib/puff/puff
deleted file mode 100755
index bedac26..0000000
--- a/contrib/puff/puff
+++ /dev/null
Binary files differ
diff --git a/contrib/testzlib/testzlib.c b/contrib/testzlib/testzlib.c
index e5574f4..135888e 100644
--- a/contrib/testzlib/testzlib.c
+++ b/contrib/testzlib/testzlib.c
@@ -103,12 +103,12 @@ DWORD GetMsecSincePerfCounter(LARGE_INTEGER beginTime64,BOOL fComputeTimeQueryPe
103 MyDoMinus64(&ticks,endTime64,beginTime64); 103 MyDoMinus64(&ticks,endTime64,beginTime64);
104 QueryPerformanceFrequency(&ticksPerSecond); 104 QueryPerformanceFrequency(&ticksPerSecond);
105 105
106 106
107 { 107 {
108 ticksShifted = Int64ShrlMod32(*(DWORDLONG*)&ticks,dwLog); 108 ticksShifted = Int64ShrlMod32(*(DWORDLONG*)&ticks,dwLog);
109 tickSecShifted = Int64ShrlMod32(*(DWORDLONG*)&ticksPerSecond,dwLog); 109 tickSecShifted = Int64ShrlMod32(*(DWORDLONG*)&ticksPerSecond,dwLog);
110 110
111 } 111 }
112 112
113 dwRet = (DWORD)((((DWORD)ticksShifted)*1000)/(DWORD)(tickSecShifted)); 113 dwRet = (DWORD)((((DWORD)ticksShifted)*1000)/(DWORD)(tickSecShifted));
114 dwRet *=1; 114 dwRet *=1;
diff --git a/contrib/vstudio/readme.txt b/contrib/vstudio/readme.txt
index 16159f9..416fc49 100644
--- a/contrib/vstudio/readme.txt
+++ b/contrib/vstudio/readme.txt
@@ -30,9 +30,9 @@ Build instructions for Visual Studio 2005 (32 bits or 64 bits)
30 30
31Build instructions for Visual Studio 2005 64 bits, PSDK compiler 31Build instructions for Visual Studio 2005 64 bits, PSDK compiler
32---------------------------------------------------------------- 32----------------------------------------------------------------
33at the time of writing this text file, Visual Studio 2005 (and 33at the time of writing this text file, Visual Studio 2005 (and
34 Microsoft Visual C++ 8.0) is on the beta 2 stage. 34 Microsoft Visual C++ 8.0) is on the beta 2 stage.
35Using you can get the free 64 bits compiler from Platform SDK, 35Using you can get the free 64 bits compiler from Platform SDK,
36 which is NOT a beta, and compile using the Visual studio 2005 IDE 36 which is NOT a beta, and compile using the Visual studio 2005 IDE
37see http://www.winimage.com/misc/sdk64onvs2005/ for instruction 37see http://www.winimage.com/misc/sdk64onvs2005/ for instruction
38 38
diff --git a/contrib/vstudio/vc7/zlib.rc b/contrib/vstudio/vc7/zlib.rc
index 68cb9cb..266fb83 100644
--- a/contrib/vstudio/vc7/zlib.rc
+++ b/contrib/vstudio/vc7/zlib.rc
@@ -2,8 +2,8 @@
2 2
3#define IDR_VERSION1 1 3#define IDR_VERSION1 1
4IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE 4IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE
5 FILEVERSION 1,2,3,7 5 FILEVERSION 1,2,3,8
6 PRODUCTVERSION 1,2,3,7 6 PRODUCTVERSION 1,2,3,8
7 FILEFLAGSMASK VS_FFI_FILEFLAGSMASK 7 FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
8 FILEFLAGS 0 8 FILEFLAGS 0
9 FILEOS VOS_DOS_WINDOWS32 9 FILEOS VOS_DOS_WINDOWS32
@@ -17,7 +17,7 @@ BEGIN
17 17
18 BEGIN 18 BEGIN
19 VALUE "FileDescription", "zlib data compression library\0" 19 VALUE "FileDescription", "zlib data compression library\0"
20 VALUE "FileVersion", "1.2.3.7\0" 20 VALUE "FileVersion", "1.2.3.8\0"
21 VALUE "InternalName", "zlib\0" 21 VALUE "InternalName", "zlib\0"
22 VALUE "OriginalFilename", "zlib.dll\0" 22 VALUE "OriginalFilename", "zlib.dll\0"
23 VALUE "ProductName", "ZLib.DLL\0" 23 VALUE "ProductName", "ZLib.DLL\0"
diff --git a/deflate.c b/deflate.c
index 990fe02..55ebbbf 100644
--- a/deflate.c
+++ b/deflate.c
@@ -52,7 +52,7 @@
52#include "deflate.h" 52#include "deflate.h"
53 53
54const char deflate_copyright[] = 54const char deflate_copyright[] =
55 " deflate 1.2.3.7 Copyright 1995-2010 Jean-loup Gailly and Mark Adler "; 55 " deflate 1.2.3.8 Copyright 1995-2010 Jean-loup Gailly and Mark Adler ";
56/* 56/*
57 If you use the zlib library in a product, an acknowledgment is welcome 57 If you use the zlib library in a product, an acknowledgment is welcome
58 in the documentation of your product. If for some reason you cannot 58 in the documentation of your product. If for some reason you cannot
diff --git a/examples/enough.c b/examples/enough.c
index b570707..c40410b 100644
--- a/examples/enough.c
+++ b/examples/enough.c
@@ -141,7 +141,7 @@ struct tab { /* type for been here check */
141 For the deflate example of 286 symbols limited to 15-bit codes, the array 141 For the deflate example of 286 symbols limited to 15-bit codes, the array
142 has 284,284 entries, taking up 2.17 MB for an 8-byte big_t. More than 142 has 284,284 entries, taking up 2.17 MB for an 8-byte big_t. More than
143 half of the space allocated for saved results is actually used -- not all 143 half of the space allocated for saved results is actually used -- not all
144 possible triplets are reached in the generation of valid Huffman codes. 144 possible triplets are reached in the generation of valid Huffman codes.
145 */ 145 */
146 146
147/* The array for tracking visited states, done[], is itself indexed identically 147/* The array for tracking visited states, done[], is itself indexed identically
@@ -466,19 +466,19 @@ int main(int argc, char **argv)
466 466
467 /* get arguments -- default to the deflate literal/length code */ 467 /* get arguments -- default to the deflate literal/length code */
468 syms = 286; 468 syms = 286;
469 root = 9; 469 root = 9;
470 max = 15; 470 max = 15;
471 if (argc > 1) { 471 if (argc > 1) {
472 syms = atoi(argv[1]); 472 syms = atoi(argv[1]);
473 if (argc > 2) { 473 if (argc > 2) {
474 root = atoi(argv[2]); 474 root = atoi(argv[2]);
475 if (argc > 3) 475 if (argc > 3)
476 max = atoi(argv[3]); 476 max = atoi(argv[3]);
477 } 477 }
478 } 478 }
479 if (argc > 4 || syms < 2 || root < 1 || max < 1) { 479 if (argc > 4 || syms < 2 || root < 1 || max < 1) {
480 fputs("invalid arguments, need: [sym >= 2 [root >= 1 [max >= 1]]]\n", 480 fputs("invalid arguments, need: [sym >= 2 [root >= 1 [max >= 1]]]\n",
481 stderr); 481 stderr);
482 return 1; 482 return 1;
483 } 483 }
484 484
@@ -556,8 +556,8 @@ int main(int argc, char **argv)
556 } 556 }
557 557
558 /* find and show maximum inflate table usage */ 558 /* find and show maximum inflate table usage */
559 if (root > max) /* reduce root to max length */ 559 if (root > max) /* reduce root to max length */
560 root = max; 560 root = max;
561 if (syms < ((code_t)1 << (root + 1))) 561 if (syms < ((code_t)1 << (root + 1)))
562 enough(syms); 562 enough(syms);
563 else 563 else
diff --git a/examples/gzlog.c b/examples/gzlog.c
index 4daf1c2..d70aaca 100644
--- a/examples/gzlog.c
+++ b/examples/gzlog.c
@@ -62,7 +62,7 @@
62 compressed data, and contains both the crc and length of just the compressed 62 compressed data, and contains both the crc and length of just the compressed
63 data and of the complete set of data including the contents of the foo.add 63 data and of the complete set of data including the contents of the foo.add
64 file. 64 file.
65 65
66 Again, the foo.add file is maintained during the compress operation in case 66 Again, the foo.add file is maintained during the compress operation in case
67 of an interruption. If in the unlikely event the foo.add file with the data 67 of an interruption. If in the unlikely event the foo.add file with the data
68 to be compressed is missing due to some external force, a gzip file with 68 to be compressed is missing due to some external force, a gzip file with
diff --git a/gzguts.h b/gzguts.h
index 26791b0..84a9797 100644
--- a/gzguts.h
+++ b/gzguts.h
@@ -19,6 +19,7 @@
19#ifdef STDC 19#ifdef STDC
20# include <string.h> 20# include <string.h>
21# include <stdlib.h> 21# include <stdlib.h>
22# include <limits.h>
22#endif 23#endif
23#include <fcntl.h> 24#include <fcntl.h>
24 25
@@ -119,3 +120,13 @@ ZEXTERN void ZEXPORT gz_error OF((gz_statep, int, const char *));
119#if defined UNDER_CE && defined NO_ERRNO_H 120#if defined UNDER_CE && defined NO_ERRNO_H
120ZEXTERN char ZEXPORT *gz_strwinerror OF((DWORD error)); 121ZEXTERN char ZEXPORT *gz_strwinerror OF((DWORD error));
121#endif 122#endif
123
124/* GT_OFF(x), where x is an unsigned value, is true if x > maximum z_off64_t
125 value -- needed when comparing unsigned to z_off64_t, which is signed
126 (possible z_off64_t types off_t, off64_t, and long are all signed) */
127#ifdef INT_MAX
128# define GT_OFF(x) (sizeof(int) == sizeof(z_off64_t) && (x) > INT_MAX)
129#else
130ZEXTERN unsigned ZEXPORT gz_intmax OF((void));
131# define GT_OFF(x) (sizeof(int) == sizeof(z_off64_t) && (x) > gz_intmax())
132#endif
diff --git a/gzio.c b/gzio.c
index 72b6287..38b3c03 100644
--- a/gzio.c
+++ b/gzio.c
@@ -61,13 +61,13 @@ local char *strwinerror (error)
61 wchar_t *msgbuf; 61 wchar_t *msgbuf;
62 DWORD lasterr = GetLastError(); 62 DWORD lasterr = GetLastError();
63 DWORD chars = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM 63 DWORD chars = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM
64 | FORMAT_MESSAGE_ALLOCATE_BUFFER, 64 | FORMAT_MESSAGE_ALLOCATE_BUFFER,
65 NULL, 65 NULL,
66 error, 66 error,
67 0, /* Default language */ 67 0, /* Default language */
68 (LPVOID)&msgbuf, 68 (LPVOID)&msgbuf,
69 0, 69 0,
70 NULL); 70 NULL);
71 if (chars != 0) { 71 if (chars != 0) {
72 /* If there is an \r\n appended, zap it. */ 72 /* If there is an \r\n appended, zap it. */
73 if (chars >= 2 73 if (chars >= 2
diff --git a/gzlib.c b/gzlib.c
index e637e83..fec283f 100644
--- a/gzlib.c
+++ b/gzlib.c
@@ -36,13 +36,13 @@ char ZEXPORT *gz_strwinerror (error)
36 wchar_t *msgbuf; 36 wchar_t *msgbuf;
37 DWORD lasterr = GetLastError(); 37 DWORD lasterr = GetLastError();
38 DWORD chars = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM 38 DWORD chars = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM
39 | FORMAT_MESSAGE_ALLOCATE_BUFFER, 39 | FORMAT_MESSAGE_ALLOCATE_BUFFER,
40 NULL, 40 NULL,
41 error, 41 error,
42 0, /* Default language */ 42 0, /* Default language */
43 (LPVOID)&msgbuf, 43 (LPVOID)&msgbuf,
44 0, 44 0,
45 NULL); 45 NULL);
46 if (chars != 0) { 46 if (chars != 0) {
47 /* If there is an \r\n appended, zap it. */ 47 /* If there is an \r\n appended, zap it. */
48 if (chars >= 2 48 if (chars >= 2
@@ -330,7 +330,8 @@ z_off64_t ZEXPORT gzseek64(file, offset, whence)
330 330
331 /* if reading, skip what's in output buffer (one less gzgetc() check) */ 331 /* if reading, skip what's in output buffer (one less gzgetc() check) */
332 if (state->mode == GZ_READ) { 332 if (state->mode == GZ_READ) {
333 n = state->have > offset ? (unsigned)offset : state->have; 333 n = GT_OFF(state->have) || (z_off64_t)state->have > offset ?
334 (unsigned)offset : state->have;
334 state->have -= n; 335 state->have -= n;
335 state->next += n; 336 state->next += n;
336 state->pos += n; 337 state->pos += n;
@@ -513,4 +514,23 @@ void ZEXPORT gz_error(state, err, msg)
513 return; 514 return;
514} 515}
515 516
517#ifndef INT_MAX
518/* portably return maximum value for an int (when limits.h presumed not
519 available) -- we need to do this to cover cases where 2's complement not
520 used, since C standard permits 1's complement and sign-bit representations,
521 otherwise we could just use ((unsigned)-1) >> 1 */
522unsigned ZEXPORT gz_intmax()
523{
524 unsigned p, q;
525
526 p = 1;
527 do {
528 q = p;
529 p <<= 1;
530 p++;
531 } while (p > q);
532 return q >> 1;
533}
534#endif
535
516#endif /* !OLD_GZIO */ 536#endif /* !OLD_GZIO */
diff --git a/gzread.c b/gzread.c
index 74322ca..a560c16 100644
--- a/gzread.c
+++ b/gzread.c
@@ -14,7 +14,7 @@ local int gz_next4 OF((gz_statep, unsigned long *));
14local int gz_head OF((gz_statep)); 14local int gz_head OF((gz_statep));
15local int gz_decomp OF((gz_statep)); 15local int gz_decomp OF((gz_statep));
16local int gz_make OF((gz_statep)); 16local int gz_make OF((gz_statep));
17local int gz_skip OF((gz_statep, z_off_t)); 17local int gz_skip OF((gz_statep, z_off64_t));
18 18
19/* Use read() to load a buffer -- return -1 on error, otherwise 0. Read from 19/* Use read() to load a buffer -- return -1 on error, otherwise 0. Read from
20 state->fd, and update state->eof, state->err, and state->msg as appropriate. 20 state->fd, and update state->eof, state->err, and state->msg as appropriate.
@@ -330,7 +330,7 @@ local int gz_make(state)
330/* Skip len uncompressed bytes of output. Return -1 on error, 0 on success. */ 330/* Skip len uncompressed bytes of output. Return -1 on error, 0 on success. */
331local int gz_skip(state, len) 331local int gz_skip(state, len)
332 gz_statep state; 332 gz_statep state;
333 z_off_t len; 333 z_off64_t len;
334{ 334{
335 unsigned n; 335 unsigned n;
336 336
@@ -338,7 +338,8 @@ local int gz_skip(state, len)
338 while (len) 338 while (len)
339 /* skip over whatever is in output buffer */ 339 /* skip over whatever is in output buffer */
340 if (state->have) { 340 if (state->have) {
341 n = state->have > len ? (unsigned)len : state->have; 341 n = GT_OFF(state->have) || (z_off64_t)state->have > len ?
342 (unsigned)len : state->have;
342 state->have -= n; 343 state->have -= n;
343 state->next += n; 344 state->next += n;
344 state->pos += n; 345 state->pos += n;
diff --git a/gzwrite.c b/gzwrite.c
index f4a0a80..50b1a7c 100644
--- a/gzwrite.c
+++ b/gzwrite.c
@@ -10,7 +10,7 @@
10/* Local functions */ 10/* Local functions */
11local int gz_init OF((gz_statep)); 11local int gz_init OF((gz_statep));
12local int gz_comp OF((gz_statep, int)); 12local int gz_comp OF((gz_statep, int));
13local int gz_zero OF((gz_statep, z_off_t)); 13local int gz_zero OF((gz_statep, z_off64_t));
14 14
15/* Initialize state for writing a gzip file. Mark initialization by setting 15/* Initialize state for writing a gzip file. Mark initialization by setting
16 state->size to non-zero. Return -1 on failure or 0 on success. */ 16 state->size to non-zero. Return -1 on failure or 0 on success. */
@@ -62,7 +62,7 @@ local int gz_comp(state, flush)
62 gz_statep state; 62 gz_statep state;
63 int flush; 63 int flush;
64{ 64{
65 int ret; 65 int ret, got;
66 unsigned have; 66 unsigned have;
67 z_streamp strm = &(state->strm); 67 z_streamp strm = &(state->strm);
68 68
@@ -78,7 +78,8 @@ local int gz_comp(state, flush)
78 if (strm->avail_out == 0 || (flush != Z_NO_FLUSH && 78 if (strm->avail_out == 0 || (flush != Z_NO_FLUSH &&
79 (flush != Z_FINISH || ret == Z_STREAM_END))) { 79 (flush != Z_FINISH || ret == Z_STREAM_END))) {
80 have = strm->next_out - state->next; 80 have = strm->next_out - state->next;
81 if (have && write(state->fd, state->next, have) != have) { 81 if (have && ((got = write(state->fd, state->next, have)) < 0 ||
82 (unsigned)got != have)) {
82 gz_error(state, Z_ERRNO, zstrerror()); 83 gz_error(state, Z_ERRNO, zstrerror());
83 return -1; 84 return -1;
84 } 85 }
@@ -111,7 +112,7 @@ local int gz_comp(state, flush)
111/* Compress len zeros to output. Return -1 on error, 0 on success. */ 112/* Compress len zeros to output. Return -1 on error, 0 on success. */
112local int gz_zero(state, len) 113local int gz_zero(state, len)
113 gz_statep state; 114 gz_statep state;
114 z_off_t len; 115 z_off64_t len;
115{ 116{
116 int first; 117 int first;
117 unsigned n; 118 unsigned n;
@@ -121,10 +122,11 @@ local int gz_zero(state, len)
121 if (strm->avail_in && gz_comp(state, Z_NO_FLUSH) == -1) 122 if (strm->avail_in && gz_comp(state, Z_NO_FLUSH) == -1)
122 return -1; 123 return -1;
123 124
124 /* compress len zeros */ 125 /* compress len zeros (len guaranteed > 0) */
125 first = 1; 126 first = 1;
126 while (len) { 127 while (len) {
127 n = len < state->size ? (unsigned)len : state->size; 128 n = GT_OFF(state->size) || (z_off64_t)state->size > len ?
129 (unsigned)len : state->size;
128 if (first) { 130 if (first) {
129 memset(state->in, 0, n); 131 memset(state->in, 0, n);
130 first = 0; 132 first = 0;
@@ -435,7 +437,8 @@ int ZEXPORT gzflush(file, flush)
435 state = (gz_statep)file; 437 state = (gz_statep)file;
436 438
437 /* check that we're writing and that there's no error */ 439 /* check that we're writing and that there's no error */
438 if (state->mode != GZ_WRITE|| state->err != Z_OK) 440 if (state->mode != GZ_WRITE || state->err != Z_OK)
441 return Z_STREAM_ERROR;
439 442
440 /* check flush parameter */ 443 /* check flush parameter */
441 if (flush < 0 || flush > Z_FINISH) 444 if (flush < 0 || flush > Z_FINISH)
diff --git a/inftrees.c b/inftrees.c
index d24b8d4..5a6ef81 100644
--- a/inftrees.c
+++ b/inftrees.c
@@ -9,7 +9,7 @@
9#define MAXBITS 15 9#define MAXBITS 15
10 10
11const char inflate_copyright[] = 11const char inflate_copyright[] =
12 " inflate 1.2.3.7 Copyright 1995-2010 Mark Adler "; 12 " inflate 1.2.3.8 Copyright 1995-2010 Mark Adler ";
13/* 13/*
14 If you use the zlib library in a product, an acknowledgment is welcome 14 If you use the zlib library in a product, an acknowledgment is welcome
15 in the documentation of your product. If for some reason you cannot 15 in the documentation of your product. If for some reason you cannot
@@ -62,7 +62,7 @@ unsigned short FAR *work;
62 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0}; 62 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0};
63 static const unsigned short lext[31] = { /* Length codes 257..285 extra */ 63 static const unsigned short lext[31] = { /* Length codes 257..285 extra */
64 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 64 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18,
65 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 193}; 65 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 78, 75};
66 static const unsigned short dbase[32] = { /* Distance codes 0..29 base */ 66 static const unsigned short dbase[32] = { /* Distance codes 0..29 base */
67 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 67 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,
68 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 68 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,
diff --git a/make_vms.com b/make_vms.com
index 8e5b7b5..c7c309e 100644
--- a/make_vms.com
+++ b/make_vms.com
@@ -42,7 +42,7 @@ $ aconf_in_file = "config.hin"
42$ conf_check_string = "" 42$ conf_check_string = ""
43$ linkonly = false 43$ linkonly = false
44$ optfile = name + ".opt" 44$ optfile = name + ".opt"
45$ libdefs = "" 45$ libdefs = ""
46$ axp = f$getsyi("HW_MODEL").ge.1024 .and. f$getsyi("HW_MODEL").lt.4096 46$ axp = f$getsyi("HW_MODEL").ge.1024 .and. f$getsyi("HW_MODEL").lt.4096
47$! 47$!
48$ whoami = f$parse(f$enviornment("Procedure"),,,,"NO_CONCEAL") 48$ whoami = f$parse(f$enviornment("Procedure"),,,,"NO_CONCEAL")
@@ -87,7 +87,7 @@ $ then
87$ if f$trnlnm("SYS").eqs."" then define sys sys$library: 87$ if f$trnlnm("SYS").eqs."" then define sys sys$library:
88$ endif 88$ endif
89$! 89$!
90$! Build a fake configure input header 90$! Build a fake configure input header
91$! 91$!
92$ open/write conf_hin config.hin 92$ open/write conf_hin config.hin
93$ write conf_hin "#undef _LARGEFILE64_SOURCE" 93$ write conf_hin "#undef _LARGEFILE64_SOURCE"
@@ -99,7 +99,7 @@ $FIND_ACONF:
99$ fname = f$element(i,"#",aconf_in_file) 99$ fname = f$element(i,"#",aconf_in_file)
100$ if fname .eqs. "#" then goto AMISS_ERR 100$ if fname .eqs. "#" then goto AMISS_ERR
101$ if f$search(fname) .eqs. "" 101$ if f$search(fname) .eqs. ""
102$ then 102$ then
103$ i = i + 1 103$ i = i + 1
104$ goto find_aconf 104$ goto find_aconf
105$ endif 105$ endif
@@ -396,7 +396,7 @@ $ deck
396# written by Martin P.J. Zinser 396# written by Martin P.J. Zinser
397# <zinser@zinser.no-ip.info or zinser@sysdev.deutsche-boerse.com> 397# <zinser@zinser.no-ip.info or zinser@sysdev.deutsche-boerse.com>
398 398
399OBJS = adler32.obj, compress.obj, crc32.obj, gzclose.obj, gzio.obj, gzlib.obj\ 399OBJS = adler32.obj, compress.obj, crc32.obj, gzclose.obj, gzio.obj, gzlib.obj\
400 gzread.obj, gzwrite.obj, uncompr.obj, infback.obj\ 400 gzread.obj, gzwrite.obj, uncompr.obj, infback.obj\
401 deflate.obj, trees.obj, zutil.obj, inflate.obj, \ 401 deflate.obj, trees.obj, zutil.obj, inflate.obj, \
402 inftrees.obj, inffast.obj 402 inftrees.obj, inffast.obj
@@ -521,7 +521,7 @@ $ else
521$ if (f$type('cdef') .eqs. "INTEGER") 521$ if (f$type('cdef') .eqs. "INTEGER")
522$ then 522$ then
523$ write aconf "#define ''cdef' ", 'cdef' 523$ write aconf "#define ''cdef' ", 'cdef'
524$ else 524$ else
525$ if (f$type('cdef') .eqs. "STRING") 525$ if (f$type('cdef') .eqs. "STRING")
526$ then 526$ then
527$ write aconf "#define ''cdef' ", """", '''cdef'', """" 527$ write aconf "#define ''cdef' ", """", '''cdef'', """"
@@ -587,7 +587,7 @@ $ set message/fac/ident/sever/text
587$ on error then goto err_exit 587$ on error then goto err_exit
588$ delete/nolog 'tmpnam'.*;*/exclude='th' 588$ delete/nolog 'tmpnam'.*;*/exclude='th'
589$ if (cc_prop .and. .not. is_need) .or. - 589$ if (cc_prop .and. .not. is_need) .or. -
590 (.not. cc_prop .and. is_need) 590 (.not. cc_prop .and. is_need)
591$ then 591$ then
592$ write sys$output "Checking for ''cdef'... yes" 592$ write sys$output "Checking for ''cdef'... yes"
593$ if f$type('cdef_val'_yes) .nes. "" 593$ if f$type('cdef_val'_yes) .nes. ""
@@ -599,10 +599,10 @@ $ if f$type('cdef_val'_yes) .eqs. "STRING" -
599$ else 599$ else
600$ call write_config f$fao("#define !AS 1",cdef) 600$ call write_config f$fao("#define !AS 1",cdef)
601$ endif 601$ endif
602$ if (cdef .eqs. "HAVE_FSEEKO") .or. (cdef .eqs. "_LARGE_FILES") .or. - 602$ if (cdef .eqs. "HAVE_FSEEKO") .or. (cdef .eqs. "_LARGE_FILES") .or. -
603 (cdef .eqs. "_LARGEFILE64_SOURCE") then - 603 (cdef .eqs. "_LARGEFILE64_SOURCE") then -
604 call write_config f$string("#define _LARGEFILE 1") 604 call write_config f$string("#define _LARGEFILE 1")
605$ else 605$ else
606$ write sys$output "Checking for ''cdef'... no" 606$ write sys$output "Checking for ''cdef'... no"
607$ if (comm_h) 607$ if (comm_h)
608$ then 608$ then
@@ -645,7 +645,7 @@ $ if .not. ($status) then cc_prop = false
645$ set message/fac/ident/sever/text 645$ set message/fac/ident/sever/text
646$ on error then goto err_exit 646$ on error then goto err_exit
647$ delete/nolog 'tmpnam'_'i'.*;* 647$ delete/nolog 'tmpnam'_'i'.*;*
648$ if (cc_prop) 648$ if (cc_prop)
649$ then 649$ then
650$ write sys$output "Checking for ''cdef'... ", mdef_'i' 650$ write sys$output "Checking for ''cdef'... ", mdef_'i'
651$ if f$type(mdef_'i') .eqs. "INTEGER" - 651$ if f$type(mdef_'i') .eqs. "INTEGER" -
@@ -670,7 +670,7 @@ $ endif
670$ return 670$ return
671$!------------------------------------------------------------------------------ 671$!------------------------------------------------------------------------------
672$! 672$!
673$! Analyze Object files for OpenVMS AXP to extract Procedure and Data 673$! Analyze Object files for OpenVMS AXP to extract Procedure and Data
674$! information to build a symbol vector for a shareable image 674$! information to build a symbol vector for a shareable image
675$! All the "brains" of this logic was suggested by Hartmut Becker 675$! All the "brains" of this logic was suggested by Hartmut Becker
676$! (Hartmut.Becker@compaq.com). All the bugs were introduced by me 676$! (Hartmut.Becker@compaq.com). All the bugs were introduced by me
@@ -683,10 +683,10 @@ $! 0.02 20041109 Fix option file for shareable images with case_sensitive=YES
683$! 0.03 20050107 Skip over Identification labels in option file 683$! 0.03 20050107 Skip over Identification labels in option file
684$! 0.04 20060117 Add uppercase alias to code compiled with /name=as_is 684$! 0.04 20060117 Add uppercase alias to code compiled with /name=as_is
685$! 685$!
686$ ANAL_OBJ_AXP: Subroutine 686$ ANAL_OBJ_AXP: Subroutine
687$ V = 'F$Verify(0) 687$ V = 'F$Verify(0)
688$ SAY := "WRITE_ SYS$OUTPUT" 688$ SAY := "WRITE_ SYS$OUTPUT"
689$ 689$
690$ IF F$SEARCH("''P1'") .EQS. "" 690$ IF F$SEARCH("''P1'") .EQS. ""
691$ THEN 691$ THEN
692$ SAY "ANAL_OBJ_AXP-E-NOSUCHFILE: Error, inputfile ''p1' not available" 692$ SAY "ANAL_OBJ_AXP-E-NOSUCHFILE: Error, inputfile ''p1' not available"
@@ -765,15 +765,15 @@ $ if f$locate("=PROCEDURE)",raw_element) .lt. f$length(raw_element)
765$ then 765$ then
766$ name = f$element(1,"=",raw_element) - "(" 766$ name = f$element(1,"=",raw_element) - "("
767$ if f$edit(name,"UPCASE") .nes. name then - 767$ if f$edit(name,"UPCASE") .nes. name then -
768 write case_vector f$fao(" symbol_vector=(!AS/!AS=PROCEDURE)", - 768 write case_vector f$fao(" symbol_vector=(!AS/!AS=PROCEDURE)", -
769 f$edit(name,"UPCASE"), name) 769 f$edit(name,"UPCASE"), name)
770$ endif 770$ endif
771$ if f$locate("=DATA)",raw_element) .lt. f$length(raw_element) 771$ if f$locate("=DATA)",raw_element) .lt. f$length(raw_element)
772$ then 772$ then
773$ name = f$element(1,"=",raw_element) - "(" 773$ name = f$element(1,"=",raw_element) - "("
774$ if f$edit(name,"UPCASE") .nes. name then - 774$ if f$edit(name,"UPCASE") .nes. name then -
775 write case_vector f$fao(" symbol_vector=(!AS/!AS=DATA)", - 775 write case_vector f$fao(" symbol_vector=(!AS/!AS=DATA)", -
776 f$edit(name,"UPCASE"), name) 776 f$edit(name,"UPCASE"), name)
777$ endif 777$ endif
778$ goto rawloop 778$ goto rawloop
779$ END_RAWLOOP: 779$ END_RAWLOOP:
@@ -785,7 +785,7 @@ $ if f$search("x.tmp") .nes. "" -
785$! 785$!
786$ EXIT_AA: 786$ EXIT_AA:
787$ if V then set verify 787$ if V then set verify
788$ endsubroutine 788$ endsubroutine
789$!------------------------------------------------------------------------------ 789$!------------------------------------------------------------------------------
790$! 790$!
791$! Write configuration to both permanent and temporary config file 791$! Write configuration to both permanent and temporary config file
diff --git a/minigzip.c b/minigzip.c
index e74d672..9d18266 100644
--- a/minigzip.c
+++ b/minigzip.c
@@ -76,13 +76,13 @@ static char *strwinerror (error)
76 wchar_t *msgbuf; 76 wchar_t *msgbuf;
77 DWORD lasterr = GetLastError(); 77 DWORD lasterr = GetLastError();
78 DWORD chars = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM 78 DWORD chars = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM
79 | FORMAT_MESSAGE_ALLOCATE_BUFFER, 79 | FORMAT_MESSAGE_ALLOCATE_BUFFER,
80 NULL, 80 NULL,
81 error, 81 error,
82 0, /* Default language */ 82 0, /* Default language */
83 (LPVOID)&msgbuf, 83 (LPVOID)&msgbuf,
84 0, 84 0,
85 NULL); 85 NULL);
86 if (chars != 0) { 86 if (chars != 0) {
87 /* If there is an \r\n appended, zap it. */ 87 /* If there is an \r\n appended, zap it. */
88 if (chars >= 2 88 if (chars >= 2
diff --git a/projects/visualc6/example.dsp b/projects/visualc6/example.dsp
index f713efd..d358052 100644
--- a/projects/visualc6/example.dsp
+++ b/projects/visualc6/example.dsp
@@ -7,16 +7,16 @@
7CFG=example - Win32 LIB Debug 7CFG=example - Win32 LIB Debug
8!MESSAGE This is not a valid makefile. To build this project using NMAKE, 8!MESSAGE This is not a valid makefile. To build this project using NMAKE,
9!MESSAGE use the Export Makefile command and run 9!MESSAGE use the Export Makefile command and run
10!MESSAGE 10!MESSAGE
11!MESSAGE NMAKE /f "example.mak". 11!MESSAGE NMAKE /f "example.mak".
12!MESSAGE 12!MESSAGE
13!MESSAGE You can specify a configuration when running NMAKE 13!MESSAGE You can specify a configuration when running NMAKE
14!MESSAGE by defining the macro CFG on the command line. For example: 14!MESSAGE by defining the macro CFG on the command line. For example:
15!MESSAGE 15!MESSAGE
16!MESSAGE NMAKE /f "example.mak" CFG="example - Win32 LIB Debug" 16!MESSAGE NMAKE /f "example.mak" CFG="example - Win32 LIB Debug"
17!MESSAGE 17!MESSAGE
18!MESSAGE Possible choices for configuration are: 18!MESSAGE Possible choices for configuration are:
19!MESSAGE 19!MESSAGE
20!MESSAGE "example - Win32 DLL ASM Release" (based on "Win32 (x86) Console Application") 20!MESSAGE "example - Win32 DLL ASM Release" (based on "Win32 (x86) Console Application")
21!MESSAGE "example - Win32 DLL ASM Debug" (based on "Win32 (x86) Console Application") 21!MESSAGE "example - Win32 DLL ASM Debug" (based on "Win32 (x86) Console Application")
22!MESSAGE "example - Win32 DLL Release" (based on "Win32 (x86) Console Application") 22!MESSAGE "example - Win32 DLL Release" (based on "Win32 (x86) Console Application")
@@ -25,7 +25,7 @@ CFG=example - Win32 LIB Debug
25!MESSAGE "example - Win32 LIB ASM Debug" (based on "Win32 (x86) Console Application") 25!MESSAGE "example - Win32 LIB ASM Debug" (based on "Win32 (x86) Console Application")
26!MESSAGE "example - Win32 LIB Release" (based on "Win32 (x86) Console Application") 26!MESSAGE "example - Win32 LIB Release" (based on "Win32 (x86) Console Application")
27!MESSAGE "example - Win32 LIB Debug" (based on "Win32 (x86) Console Application") 27!MESSAGE "example - Win32 LIB Debug" (based on "Win32 (x86) Console Application")
28!MESSAGE 28!MESSAGE
29 29
30# Begin Project 30# Begin Project
31# PROP AllowPerConfigDependencies 0 31# PROP AllowPerConfigDependencies 0
@@ -242,7 +242,7 @@ LINK32=link.exe
242# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept 242# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
243# ADD LINK32 /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept 243# ADD LINK32 /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
244 244
245!ENDIF 245!ENDIF
246 246
247# Begin Target 247# Begin Target
248 248
diff --git a/projects/visualc6/minigzip.dsp b/projects/visualc6/minigzip.dsp
index c50b488..7103468 100644
--- a/projects/visualc6/minigzip.dsp
+++ b/projects/visualc6/minigzip.dsp
@@ -7,16 +7,16 @@
7CFG=minigzip - Win32 LIB Debug 7CFG=minigzip - Win32 LIB Debug
8!MESSAGE This is not a valid makefile. To build this project using NMAKE, 8!MESSAGE This is not a valid makefile. To build this project using NMAKE,
9!MESSAGE use the Export Makefile command and run 9!MESSAGE use the Export Makefile command and run
10!MESSAGE 10!MESSAGE
11!MESSAGE NMAKE /f "minigzip.mak". 11!MESSAGE NMAKE /f "minigzip.mak".
12!MESSAGE 12!MESSAGE
13!MESSAGE You can specify a configuration when running NMAKE 13!MESSAGE You can specify a configuration when running NMAKE
14!MESSAGE by defining the macro CFG on the command line. For example: 14!MESSAGE by defining the macro CFG on the command line. For example:
15!MESSAGE 15!MESSAGE
16!MESSAGE NMAKE /f "minigzip.mak" CFG="minigzip - Win32 LIB Debug" 16!MESSAGE NMAKE /f "minigzip.mak" CFG="minigzip - Win32 LIB Debug"
17!MESSAGE 17!MESSAGE
18!MESSAGE Possible choices for configuration are: 18!MESSAGE Possible choices for configuration are:
19!MESSAGE 19!MESSAGE
20!MESSAGE "minigzip - Win32 DLL ASM Release" (based on "Win32 (x86) Console Application") 20!MESSAGE "minigzip - Win32 DLL ASM Release" (based on "Win32 (x86) Console Application")
21!MESSAGE "minigzip - Win32 DLL ASM Debug" (based on "Win32 (x86) Console Application") 21!MESSAGE "minigzip - Win32 DLL ASM Debug" (based on "Win32 (x86) Console Application")
22!MESSAGE "minigzip - Win32 DLL Release" (based on "Win32 (x86) Console Application") 22!MESSAGE "minigzip - Win32 DLL Release" (based on "Win32 (x86) Console Application")
@@ -25,7 +25,7 @@ CFG=minigzip - Win32 LIB Debug
25!MESSAGE "minigzip - Win32 LIB ASM Debug" (based on "Win32 (x86) Console Application") 25!MESSAGE "minigzip - Win32 LIB ASM Debug" (based on "Win32 (x86) Console Application")
26!MESSAGE "minigzip - Win32 LIB Release" (based on "Win32 (x86) Console Application") 26!MESSAGE "minigzip - Win32 LIB Release" (based on "Win32 (x86) Console Application")
27!MESSAGE "minigzip - Win32 LIB Debug" (based on "Win32 (x86) Console Application") 27!MESSAGE "minigzip - Win32 LIB Debug" (based on "Win32 (x86) Console Application")
28!MESSAGE 28!MESSAGE
29 29
30# Begin Project 30# Begin Project
31# PROP AllowPerConfigDependencies 0 31# PROP AllowPerConfigDependencies 0
@@ -242,7 +242,7 @@ LINK32=link.exe
242# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept 242# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
243# ADD LINK32 /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept 243# ADD LINK32 /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
244 244
245!ENDIF 245!ENDIF
246 246
247# Begin Target 247# Begin Target
248 248
diff --git a/projects/visualc6/zlib.dsp b/projects/visualc6/zlib.dsp
index 3e98f3d..d8b3dff 100644
--- a/projects/visualc6/zlib.dsp
+++ b/projects/visualc6/zlib.dsp
@@ -8,16 +8,16 @@
8CFG=zlib - Win32 LIB Debug 8CFG=zlib - Win32 LIB Debug
9!MESSAGE This is not a valid makefile. To build this project using NMAKE, 9!MESSAGE This is not a valid makefile. To build this project using NMAKE,
10!MESSAGE use the Export Makefile command and run 10!MESSAGE use the Export Makefile command and run
11!MESSAGE 11!MESSAGE
12!MESSAGE NMAKE /f "zlib.mak". 12!MESSAGE NMAKE /f "zlib.mak".
13!MESSAGE 13!MESSAGE
14!MESSAGE You can specify a configuration when running NMAKE 14!MESSAGE You can specify a configuration when running NMAKE
15!MESSAGE by defining the macro CFG on the command line. For example: 15!MESSAGE by defining the macro CFG on the command line. For example:
16!MESSAGE 16!MESSAGE
17!MESSAGE NMAKE /f "zlib.mak" CFG="zlib - Win32 LIB Debug" 17!MESSAGE NMAKE /f "zlib.mak" CFG="zlib - Win32 LIB Debug"
18!MESSAGE 18!MESSAGE
19!MESSAGE Possible choices for configuration are: 19!MESSAGE Possible choices for configuration are:
20!MESSAGE 20!MESSAGE
21!MESSAGE "zlib - Win32 DLL ASM Release" (based on "Win32 (x86) Dynamic-Link Library") 21!MESSAGE "zlib - Win32 DLL ASM Release" (based on "Win32 (x86) Dynamic-Link Library")
22!MESSAGE "zlib - Win32 DLL ASM Debug" (based on "Win32 (x86) Dynamic-Link Library") 22!MESSAGE "zlib - Win32 DLL ASM Debug" (based on "Win32 (x86) Dynamic-Link Library")
23!MESSAGE "zlib - Win32 DLL Release" (based on "Win32 (x86) Dynamic-Link Library") 23!MESSAGE "zlib - Win32 DLL Release" (based on "Win32 (x86) Dynamic-Link Library")
@@ -26,7 +26,7 @@ CFG=zlib - Win32 LIB Debug
26!MESSAGE "zlib - Win32 LIB ASM Debug" (based on "Win32 (x86) Static Library") 26!MESSAGE "zlib - Win32 LIB ASM Debug" (based on "Win32 (x86) Static Library")
27!MESSAGE "zlib - Win32 LIB Release" (based on "Win32 (x86) Static Library") 27!MESSAGE "zlib - Win32 LIB Release" (based on "Win32 (x86) Static Library")
28!MESSAGE "zlib - Win32 LIB Debug" (based on "Win32 (x86) Static Library") 28!MESSAGE "zlib - Win32 LIB Debug" (based on "Win32 (x86) Static Library")
29!MESSAGE 29!MESSAGE
30 30
31# Begin Project 31# Begin Project
32# PROP AllowPerConfigDependencies 0 32# PROP AllowPerConfigDependencies 0
@@ -265,7 +265,7 @@ LIB32=link.exe -lib
265# ADD BASE LIB32 /nologo 265# ADD BASE LIB32 /nologo
266# ADD LIB32 /nologo /out:"Win32_LIB_Debug\zlibd.lib" 266# ADD LIB32 /nologo /out:"Win32_LIB_Debug\zlibd.lib"
267 267
268!ENDIF 268!ENDIF
269 269
270# Begin Target 270# Begin Target
271 271
@@ -368,7 +368,7 @@ SOURCE=..\..\win32\zlib.def
368 368
369# PROP Exclude_From_Build 1 369# PROP Exclude_From_Build 1
370 370
371!ENDIF 371!ENDIF
372 372
373# End Source File 373# End Source File
374# Begin Source File 374# Begin Source File
@@ -499,7 +499,7 @@ InputName=gvmat32
499 499
500# PROP Exclude_From_Build 1 500# PROP Exclude_From_Build 1
501 501
502!ENDIF 502!ENDIF
503 503
504# End Source File 504# End Source File
505# Begin Source File 505# Begin Source File
@@ -542,7 +542,7 @@ SOURCE=..\..\contrib\masmx86\gvmat32c.c
542# PROP Exclude_From_Build 1 542# PROP Exclude_From_Build 1
543# ADD CPP /I "..\.." 543# ADD CPP /I "..\.."
544 544
545!ENDIF 545!ENDIF
546 546
547# End Source File 547# End Source File
548# Begin Source File 548# Begin Source File
@@ -613,7 +613,7 @@ InputName=inffas32
613 613
614# PROP Exclude_From_Build 1 614# PROP Exclude_From_Build 1
615 615
616!ENDIF 616!ENDIF
617 617
618# End Source File 618# End Source File
619# End Group 619# End Group
diff --git a/qnx/package.qpg b/qnx/package.qpg
index 74bdb21..e805463 100644
--- a/qnx/package.qpg
+++ b/qnx/package.qpg
@@ -25,10 +25,10 @@
25 <QPG:Files> 25 <QPG:Files>
26 <QPG:Add file="../zconf.h" install="/opt/include/" user="root:sys" permission="644"/> 26 <QPG:Add file="../zconf.h" install="/opt/include/" user="root:sys" permission="644"/>
27 <QPG:Add file="../zlib.h" install="/opt/include/" user="root:sys" permission="644"/> 27 <QPG:Add file="../zlib.h" install="/opt/include/" user="root:sys" permission="644"/>
28 <QPG:Add file="../libz.so.1.2.3.7" install="/opt/lib/" user="root:bin" permission="644"/> 28 <QPG:Add file="../libz.so.1.2.3.8" install="/opt/lib/" user="root:bin" permission="644"/>
29 <QPG:Add file="libz.so" install="/opt/lib/" component="dev" filetype="symlink" linkto="libz.so.1.2.3.7"/> 29 <QPG:Add file="libz.so" install="/opt/lib/" component="dev" filetype="symlink" linkto="libz.so.1.2.3.8"/>
30 <QPG:Add file="libz.so.1" install="/opt/lib/" filetype="symlink" linkto="libz.so.1.2.3.6"/> 30 <QPG:Add file="libz.so.1" install="/opt/lib/" filetype="symlink" linkto="libz.so.1.2.3.6"/>
31 <QPG:Add file="../libz.so.1.2.3.7" install="/opt/lib/" component="slib"/> 31 <QPG:Add file="../libz.so.1.2.3.8" install="/opt/lib/" component="slib"/>
32 </QPG:Files> 32 </QPG:Files>
33 33
34 <QPG:PackageFilter> 34 <QPG:PackageFilter>
@@ -63,7 +63,7 @@
63 </QPM:ProductDescription> 63 </QPM:ProductDescription>
64 64
65 <QPM:ReleaseDescription> 65 <QPM:ReleaseDescription>
66 <QPM:ReleaseVersion>1.2.3.7</QPM:ReleaseVersion> 66 <QPM:ReleaseVersion>1.2.3.8</QPM:ReleaseVersion>
67 <QPM:ReleaseUrgency>Medium</QPM:ReleaseUrgency> 67 <QPM:ReleaseUrgency>Medium</QPM:ReleaseUrgency>
68 <QPM:ReleaseStability>Stable</QPM:ReleaseStability> 68 <QPM:ReleaseStability>Stable</QPM:ReleaseStability>
69 <QPM:ReleaseNoteMinor></QPM:ReleaseNoteMinor> 69 <QPM:ReleaseNoteMinor></QPM:ReleaseNoteMinor>
diff --git a/treebuild.xml b/treebuild.xml
index 387336e..3423e6b 100644
--- a/treebuild.xml
+++ b/treebuild.xml
@@ -3,7 +3,7 @@
3 <library name="zlib" dlversion="1.2.3" dlname="z"> 3 <library name="zlib" dlversion="1.2.3" dlname="z">
4 <property name="description"> zip compression library </property> 4 <property name="description"> zip compression library </property>
5 <property name="include-target-dir" value="$(@PACKAGE/install-includedir)" /> 5 <property name="include-target-dir" value="$(@PACKAGE/install-includedir)" />
6 6
7 <!-- fixme: not implemented yet --> 7 <!-- fixme: not implemented yet -->
8 <property name="compiler/c/inline" value="yes" /> 8 <property name="compiler/c/inline" value="yes" />
9 9
@@ -11,92 +11,92 @@
11 <include-file name="zconf.h" scope="public" mode="644" /> 11 <include-file name="zconf.h" scope="public" mode="644" />
12 12
13 <source name="adler32.c"> 13 <source name="adler32.c">
14 <depend name="zlib.h" /> 14 <depend name="zlib.h" />
15 <depend name="zconf.h" /> 15 <depend name="zconf.h" />
16 </source> 16 </source>
17 <source name="compress.c"> 17 <source name="compress.c">
18 <depend name="zlib.h" /> 18 <depend name="zlib.h" />
19 <depend name="zconf.h" /> 19 <depend name="zconf.h" />
20 </source> 20 </source>
21 <source name="crc32.c"> 21 <source name="crc32.c">
22 <depend name="zlib.h" /> 22 <depend name="zlib.h" />
23 <depend name="zconf.h" /> 23 <depend name="zconf.h" />
24 <depend name="crc32.h" /> 24 <depend name="crc32.h" />
25 </source> 25 </source>
26 <source name="gzclose.c"> 26 <source name="gzclose.c">
27 <depend name="zlib.h" /> 27 <depend name="zlib.h" />
28 <depend name="zconf.h" /> 28 <depend name="zconf.h" />
29 <depend name="gzguts.h" /> 29 <depend name="gzguts.h" />
30 </source> 30 </source>
31 <source name="gzio.c"> 31 <source name="gzio.c">
32 <depend name="zlib.h" /> 32 <depend name="zlib.h" />
33 <depend name="zconf.h" /> 33 <depend name="zconf.h" />
34 <depend name="zutil.h" /> 34 <depend name="zutil.h" />
35 </source> 35 </source>
36 <source name="gzlib.c"> 36 <source name="gzlib.c">
37 <depend name="zlib.h" /> 37 <depend name="zlib.h" />
38 <depend name="zconf.h" /> 38 <depend name="zconf.h" />
39 <depend name="gzguts.h" /> 39 <depend name="gzguts.h" />
40 </source> 40 </source>
41 <source name="gzread.c"> 41 <source name="gzread.c">
42 <depend name="zlib.h" /> 42 <depend name="zlib.h" />
43 <depend name="zconf.h" /> 43 <depend name="zconf.h" />
44 <depend name="gzguts.h" /> 44 <depend name="gzguts.h" />
45 </source> 45 </source>
46 <source name="gzwrite.c"> 46 <source name="gzwrite.c">
47 <depend name="zlib.h" /> 47 <depend name="zlib.h" />
48 <depend name="zconf.h" /> 48 <depend name="zconf.h" />
49 <depend name="gzguts.h" /> 49 <depend name="gzguts.h" />
50 </source> 50 </source>
51 <source name="uncompr.c"> 51 <source name="uncompr.c">
52 <depend name="zlib.h" /> 52 <depend name="zlib.h" />
53 <depend name="zconf.h" /> 53 <depend name="zconf.h" />
54 </source> 54 </source>
55 <source name="deflate.c"> 55 <source name="deflate.c">
56 <depend name="zlib.h" /> 56 <depend name="zlib.h" />
57 <depend name="zconf.h" /> 57 <depend name="zconf.h" />
58 <depend name="zutil.h" /> 58 <depend name="zutil.h" />
59 <depend name="deflate.h" /> 59 <depend name="deflate.h" />
60 </source> 60 </source>
61 <source name="trees.c"> 61 <source name="trees.c">
62 <depend name="zlib.h" /> 62 <depend name="zlib.h" />
63 <depend name="zconf.h" /> 63 <depend name="zconf.h" />
64 <depend name="zutil.h" /> 64 <depend name="zutil.h" />
65 <depend name="deflate.h" /> 65 <depend name="deflate.h" />
66 <depend name="trees.h" /> 66 <depend name="trees.h" />
67 </source> 67 </source>
68 <source name="zutil.c"> 68 <source name="zutil.c">
69 <depend name="zlib.h" /> 69 <depend name="zlib.h" />
70 <depend name="zconf.h" /> 70 <depend name="zconf.h" />
71 <depend name="zutil.h" /> 71 <depend name="zutil.h" />
72 </source> 72 </source>
73 <source name="inflate.c"> 73 <source name="inflate.c">
74 <depend name="zlib.h" /> 74 <depend name="zlib.h" />
75 <depend name="zconf.h" /> 75 <depend name="zconf.h" />
76 <depend name="zutil.h" /> 76 <depend name="zutil.h" />
77 <depend name="inftrees.h" /> 77 <depend name="inftrees.h" />
78 <depend name="inflate.h" /> 78 <depend name="inflate.h" />
79 <depend name="inffast.h" /> 79 <depend name="inffast.h" />
80 </source> 80 </source>
81 <source name="infback.c"> 81 <source name="infback.c">
82 <depend name="zlib.h" /> 82 <depend name="zlib.h" />
83 <depend name="zconf.h" /> 83 <depend name="zconf.h" />
84 <depend name="zutil.h" /> 84 <depend name="zutil.h" />
85 <depend name="inftrees.h" /> 85 <depend name="inftrees.h" />
86 <depend name="inflate.h" /> 86 <depend name="inflate.h" />
87 <depend name="inffast.h" /> 87 <depend name="inffast.h" />
88 </source> 88 </source>
89 <source name="inftrees.c"> 89 <source name="inftrees.c">
90 <depend name="zlib.h" /> 90 <depend name="zlib.h" />
91 <depend name="zconf.h" /> 91 <depend name="zconf.h" />
92 <depend name="zutil.h" /> 92 <depend name="zutil.h" />
93 <depend name="inftrees.h" /> 93 <depend name="inftrees.h" />
94 </source> 94 </source>
95 <source name="inffast.c"> 95 <source name="inffast.c">
96 <depend name="zlib.h" /> 96 <depend name="zlib.h" />
97 <depend name="zconf.h" /> 97 <depend name="zconf.h" />
98 <depend name="zutil.h" /> 98 <depend name="zutil.h" />
99 <depend name="inftrees.h" /> 99 <depend name="inftrees.h" />
100 <depend name="inflate.h" /> 100 <depend name="inflate.h" />
101 <depend name="inffast.h" /> 101 <depend name="inffast.h" />
102 </source> 102 </source>
@@ -112,7 +112,7 @@ CFLAGS=-O
112 112
113# OBJA = 113# OBJA =
114# to use the asm code: make OBJA=match.o 114# to use the asm code: make OBJA=match.o
115# 115#
116match.o: match.S 116match.o: match.S
117 $(CPP) match.S > _match.s 117 $(CPP) match.S > _match.s
118 $(CC) -c _match.s 118 $(CC) -c _match.s
diff --git a/watcom/watcom_f.mak b/watcom/watcom_f.mak
index ace6bcf..273440a 100644
--- a/watcom/watcom_f.mak
+++ b/watcom/watcom_f.mak
@@ -19,7 +19,7 @@ LINKER = wcl386
19CFLAGS = -zq -mf -3r -fp3 -s -bt=dos -oilrtfm -fr=nul -wx 19CFLAGS = -zq -mf -3r -fp3 -s -bt=dos -oilrtfm -fr=nul -wx
20ZLIB_LIB = zlib_f.lib 20ZLIB_LIB = zlib_f.lib
21 21
22.C.OBJ: 22.C.OBJ:
23 $(CC) $(CFLAGS) $[@ 23 $(CC) $(CFLAGS) $[@
24 24
25all: $(ZLIB_LIB) example.exe minigzip.exe 25all: $(ZLIB_LIB) example.exe minigzip.exe
diff --git a/watcom/watcom_l.mak b/watcom/watcom_l.mak
index d8a106f..8e0f4d1 100644
--- a/watcom/watcom_l.mak
+++ b/watcom/watcom_l.mak
@@ -19,7 +19,7 @@ LINKER = wcl
19CFLAGS = -zq -ml -s -bt=dos -oilrtfm -fr=nul -wx 19CFLAGS = -zq -ml -s -bt=dos -oilrtfm -fr=nul -wx
20ZLIB_LIB = zlib_l.lib 20ZLIB_LIB = zlib_l.lib
21 21
22.C.OBJ: 22.C.OBJ:
23 $(CC) $(CFLAGS) $[@ 23 $(CC) $(CFLAGS) $[@
24 24
25all: $(ZLIB_LIB) example.exe minigzip.exe 25all: $(ZLIB_LIB) example.exe minigzip.exe
diff --git a/zconf.h b/zconf.h
index df24759..71a41ad 100644
--- a/zconf.h
+++ b/zconf.h
@@ -48,6 +48,7 @@
48# define deflate_copyright z_deflate_copyright 48# define deflate_copyright z_deflate_copyright
49# define get_crc_table z_get_crc_table 49# define get_crc_table z_get_crc_table
50# define gz_error z_gz_error 50# define gz_error z_gz_error
51# define gz_intmax z_gz_intmax
51# define gz_strwinerror z_gz_strwinerror 52# define gz_strwinerror z_gz_strwinerror
52# define gzbuffer z_gzbuffer 53# define gzbuffer z_gzbuffer
53# define gzclearerr z_gzclearerr 54# define gzclearerr z_gzclearerr
diff --git a/zconf.in.h b/zconf.in.h
index df24759..71a41ad 100644
--- a/zconf.in.h
+++ b/zconf.in.h
@@ -48,6 +48,7 @@
48# define deflate_copyright z_deflate_copyright 48# define deflate_copyright z_deflate_copyright
49# define get_crc_table z_get_crc_table 49# define get_crc_table z_get_crc_table
50# define gz_error z_gz_error 50# define gz_error z_gz_error
51# define gz_intmax z_gz_intmax
51# define gz_strwinerror z_gz_strwinerror 52# define gz_strwinerror z_gz_strwinerror
52# define gzbuffer z_gzbuffer 53# define gzbuffer z_gzbuffer
53# define gzclearerr z_gzclearerr 54# define gzclearerr z_gzclearerr
diff --git a/zlib.3 b/zlib.3
index b96d959..f2171ae 100644
--- a/zlib.3
+++ b/zlib.3
@@ -1,4 +1,4 @@
1.TH ZLIB 3 "24 January 2010" 1.TH ZLIB 3 "13 February 2010"
2.SH NAME 2.SH NAME
3zlib \- compression/decompression library 3zlib \- compression/decompression library
4.SH SYNOPSIS 4.SH SYNOPSIS
@@ -132,7 +132,7 @@ before asking for help.
132Send questions and/or comments to zlib@gzip.org, 132Send questions and/or comments to zlib@gzip.org,
133or (for the Windows DLL version) to Gilles Vollant (info@winimage.com). 133or (for the Windows DLL version) to Gilles Vollant (info@winimage.com).
134.SH AUTHORS 134.SH AUTHORS
135Version 1.2.3.7 135Version 1.2.3.8
136Copyright (C) 1995-2010 Jean-loup Gailly (jloup@gzip.org) 136Copyright (C) 1995-2010 Jean-loup Gailly (jloup@gzip.org)
137and Mark Adler (madler@alumni.caltech.edu). 137and Mark Adler (madler@alumni.caltech.edu).
138.LP 138.LP
diff --git a/zlib.h b/zlib.h
index 86a67f8..0bd83e9 100644
--- a/zlib.h
+++ b/zlib.h
@@ -1,5 +1,5 @@
1/* zlib.h -- interface of the 'zlib' general purpose compression library 1/* zlib.h -- interface of the 'zlib' general purpose compression library
2 version 1.2.3.7, Jan 24th, 2010 2 version 1.2.3.8, Feb 13th, 2010
3 3
4 Copyright (C) 1995-2010 Jean-loup Gailly and Mark Adler 4 Copyright (C) 1995-2010 Jean-loup Gailly and Mark Adler
5 5
@@ -37,8 +37,8 @@
37extern "C" { 37extern "C" {
38#endif 38#endif
39 39
40#define ZLIB_VERSION "1.2.3.7" 40#define ZLIB_VERSION "1.2.3.8"
41#define ZLIB_VERNUM 0x1237 41#define ZLIB_VERNUM 0x1238
42#define ZLIB_VER_MAJOR 1 42#define ZLIB_VER_MAJOR 1
43#define ZLIB_VER_MINOR 2 43#define ZLIB_VER_MINOR 2
44#define ZLIB_VER_REVISION 3 44#define ZLIB_VER_REVISION 3
@@ -1316,7 +1316,7 @@ ZEXTERN int ZEXPORT gzflush OF((gzFile file, int flush));
1316/* 1316/*
1317 Flushes all pending output into the compressed file. The parameter flush 1317 Flushes all pending output into the compressed file. The parameter flush
1318 is as in the deflate() function. The return value is the zlib error number 1318 is as in the deflate() function. The return value is the zlib error number
1319 (see function gzerror below). 1319 (see function gzerror below). gzflush is only permitted when writing.
1320 1320
1321 If the flush parameter is Z_FINISH, the remaining data is written and the 1321 If the flush parameter is Z_FINISH, the remaining data is written and the
1322 gzip stream is completed in the output. If gzwrite() is called again, a new 1322 gzip stream is completed in the output. If gzwrite() is called again, a new
diff --git a/zlib.map b/zlib.map
index c99e973..3b443c7 100644
--- a/zlib.map
+++ b/zlib.map
@@ -15,6 +15,7 @@ ZLIB_1.2.0 {
15 zcfree; 15 zcfree;
16 z_errmsg; 16 z_errmsg;
17 gz_error; 17 gz_error;
18 gz_intmax;
18 gzio_old; 19 gzio_old;
19 _*; 20 _*;
20}; 21};
@@ -46,6 +47,11 @@ ZLIB_1.2.2.4 {
46} ZLIB_1.2.2.3; 47} ZLIB_1.2.2.3;
47 48
48ZLIB_1.2.3.3 { 49ZLIB_1.2.3.3 {
50 adler32_combine64;
51 crc32_combine64;
52 gzopen64;
53 gzseek64;
54 gztell64;
49 inflateUndermine; 55 inflateUndermine;
50} ZLIB_1.2.2.4; 56} ZLIB_1.2.2.4;
51 57
diff --git a/zlib.pc.in b/zlib.pc.in
index 3e355aa..b4f98e5 100644
--- a/zlib.pc.in
+++ b/zlib.pc.in
@@ -7,6 +7,6 @@ Name: zlib
7Description: zlib compression library 7Description: zlib compression library
8Version: @VERSION@ 8Version: @VERSION@
9 9
10Requires: 10Requires:
11Libs: -L${libdir} -lz 11Libs: -L${libdir} -lz
12Cflags: -I${includedir} 12Cflags: -I${includedir}
diff --git a/zlib2ansi b/zlib2ansi
index 0695f6b..15e3e16 100755
--- a/zlib2ansi
+++ b/zlib2ansi
@@ -25,7 +25,7 @@ my $decl = qr{ $sp (?: \w+ $sp )+ $d1 }xo ;
25my $dList = qr{ $sp $decl (?: $sp , $d1 )* $sp ; $sp }xo ; 25my $dList = qr{ $sp $decl (?: $sp , $d1 )* $sp ; $sp }xo ;
26 26
27 27
28while (s/^ 28while (s/^
29 ( # Start $1 29 ( # Start $1
30 ( # Start $2 30 ( # Start $2
31 .*? # Minimal eat content 31 .*? # Minimal eat content
@@ -57,7 +57,7 @@ while (s/^
57 my $i = 0 ; 57 my $i = 0 ;
58 my %pList = map { $_ => $i++ } 58 my %pList = map { $_ => $i++ }
59 split /\s*,\s*/, $param_list; 59 split /\s*,\s*/, $param_list;
60 my $pMatch = '(\b' . join('|', keys %pList) . '\b)\W*$' ; 60 my $pMatch = '(\b' . join('|', keys %pList) . '\b)\W*$' ;
61 61
62 my @params = split /\s*;\s*/, $params; 62 my @params = split /\s*;\s*/, $params;
63 my @outParams = (); 63 my @outParams = ();
@@ -80,16 +80,16 @@ while (s/^
80 } 80 }
81 } 81 }
82 82
83 83
84 my %tmp = map { /$pMatch/; $_ => $pList{$1} } 84 my %tmp = map { /$pMatch/; $_ => $pList{$1} }
85 @outParams ; 85 @outParams ;
86 86
87 @outParams = map { " $_" } 87 @outParams = map { " $_" }
88 sort { $tmp{$a} <=> $tmp{$b} } 88 sort { $tmp{$a} <=> $tmp{$b} }
89 @outParams ; 89 @outParams ;
90 90
91 print $prefix ; 91 print $prefix ;
92 print "(\n" . join(",\n", @outParams) . ")\n"; 92 print "(\n" . join(",\n", @outParams) . ")\n";
93 print "{" ; 93 print "{" ;
94 94
95} 95}
@@ -116,13 +116,13 @@ sub StripComments
116 )* ## 0-or-more things which don't start with / 116 )* ## 0-or-more things which don't start with /
117 ## but do end with '*' 117 ## but do end with '*'
118 / ## End of /* ... */ comment 118 / ## End of /* ... */ comment
119 119
120 | ## OR C++ Comment 120 | ## OR C++ Comment
121 // ## Start of C++ comment // 121 // ## Start of C++ comment //
122 [^\n]* ## followed by 0-or-more non end of line characters 122 [^\n]* ## followed by 0-or-more non end of line characters
123 123
124 | ## OR various things which aren't comments: 124 | ## OR various things which aren't comments:
125 125
126 ( 126 (
127 " ## Start of " ... " string 127 " ## Start of " ... " string
128 ( 128 (
@@ -131,9 +131,9 @@ sub StripComments
131 [^"\\] ## Non "\ 131 [^"\\] ## Non "\
132 )* 132 )*
133 " ## End of " ... " string 133 " ## End of " ... " string
134 134
135 | ## OR 135 | ## OR
136 136
137 ' ## Start of ' ... ' string 137 ' ## Start of ' ... ' string
138 ( 138 (
139 \\. ## Escaped char 139 \\. ## Escaped char
@@ -141,9 +141,9 @@ sub StripComments
141 [^'\\] ## Non '\ 141 [^'\\] ## Non '\
142 )* 142 )*
143 ' ## End of ' ... ' string 143 ' ## End of ' ... ' string
144 144
145 | ## OR 145 | ## OR
146 146
147 . ## Anything other char 147 . ## Anything other char
148 [^/"'\\]* ## Chars which doesn't start a comment, string or escape 148 [^/"'\\]* ## Chars which doesn't start a comment, string or escape
149 ) 149 )