Compare commits
3 Commits
tcl-core-8
...
tcl-core-8
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
490cb690a8 | ||
|
|
0343d03b22 | ||
|
|
cc7c413b4f |
@@ -1,6 +1,6 @@
|
|||||||
A NOTE ON THE CHANGELOG:
|
A NOTE ON THE CHANGELOG:
|
||||||
Starting in early 2011, Tcl source code has been under the management of
|
Starting in early 2011, Tcl source code has been under the management of
|
||||||
fossil, hosted at http://core.tcl.tk/tcl/ . Fossil presents a "Timeline"
|
fossil, hosted at https://core.tcl-lang.org/tcl/ . Fossil presents a "Timeline"
|
||||||
view of changes made that is superior in every way to a hand edited log file.
|
view of changes made that is superior in every way to a hand edited log file.
|
||||||
Because of this, many Tcl developers are now out of the habit of maintaining
|
Because of this, many Tcl developers are now out of the habit of maintaining
|
||||||
this log file. You may still find useful things in it, but the Timeline is
|
this log file. You may still find useful things in it, but the Timeline is
|
||||||
|
|||||||
@@ -414,7 +414,7 @@
|
|||||||
Tcl_IsChannelExisting, and Tcl_ClearChannelHandlers to conform to the
|
Tcl_IsChannelExisting, and Tcl_ClearChannelHandlers to conform to the
|
||||||
new stacked channel implementation. Their stub slots were also moved
|
new stacked channel implementation. Their stub slots were also moved
|
||||||
to give preference to the new 8.3.2 stub functions. This will cause an
|
to give preference to the new 8.3.2 stub functions. This will cause an
|
||||||
incompatability with 8.4a1 only.
|
incompatibility with 8.4a1 only.
|
||||||
(StopCopy): fixed a bug introduced by a partial fix in 8.3.2 that
|
(StopCopy): fixed a bug introduced by a partial fix in 8.3.2 that
|
||||||
didn't set nonBlocking correctly when resetting the flags for the
|
didn't set nonBlocking correctly when resetting the flags for the
|
||||||
write side. [Bug: 6261]
|
write side. [Bug: 6261]
|
||||||
|
|||||||
@@ -847,7 +847,7 @@
|
|||||||
exit.
|
exit.
|
||||||
|
|
||||||
* tests/exec.test: marked exec-18.1 unixOnly until the Windows
|
* tests/exec.test: marked exec-18.1 unixOnly until the Windows
|
||||||
incompatability (in the test, not the core) can be resolved.
|
incompatibility (in the test, not the core) can be resolved.
|
||||||
|
|
||||||
* tests/http.test (http-3.11): added close $fp that was causing an
|
* tests/http.test (http-3.11): added close $fp that was causing an
|
||||||
error on Windows because the file was not closed before deleting.
|
error on Windows because the file was not closed before deleting.
|
||||||
@@ -3642,7 +3642,7 @@
|
|||||||
* compat/strtoll.c (strtoll):
|
* compat/strtoll.c (strtoll):
|
||||||
* compat/strtoull.c (strtoull):
|
* compat/strtoull.c (strtoull):
|
||||||
* unix/tclUnixPort.h:
|
* unix/tclUnixPort.h:
|
||||||
* win/tclWinPort.h: Const-ing 64-bit compatability declarations. Note
|
* win/tclWinPort.h: Const-ing 64-bit compatibility declarations. Note
|
||||||
that the return pointer is non-const because it is entirely legal for
|
that the return pointer is non-const because it is entirely legal for
|
||||||
the functions to be called from somewhere that owns the string being
|
the functions to be called from somewhere that owns the string being
|
||||||
passed. Fixes problem reported by Larry Virden.
|
passed. Fixes problem reported by Larry Virden.
|
||||||
@@ -3779,7 +3779,7 @@
|
|||||||
|
|
||||||
There are a lot of changes from this TIP, so please see
|
There are a lot of changes from this TIP, so please see
|
||||||
http://purl.org/tcl/tip/72.html for discussion of
|
http://purl.org/tcl/tip/72.html for discussion of
|
||||||
backward-compatability issues, but the main ones modifications are in:
|
backward-compatibility issues, but the main ones modifications are in:
|
||||||
|
|
||||||
* generic/tcl.h: New types.
|
* generic/tcl.h: New types.
|
||||||
* generic/tcl.decls: New public functions.
|
* generic/tcl.decls: New public functions.
|
||||||
|
|||||||
@@ -947,7 +947,7 @@
|
|||||||
declarations match and will end up using the declarations in the
|
declarations match and will end up using the declarations in the
|
||||||
public code from now on because of #include ordering. Keeping the old
|
public code from now on because of #include ordering. Keeping the old
|
||||||
declarations in tclInt.decls; there's no need to gratuitously break
|
declarations in tclInt.decls; there's no need to gratuitously break
|
||||||
compatability for those extensions which are already clients of the
|
compatibility for those extensions which are already clients of the
|
||||||
namespace code.
|
namespace code.
|
||||||
|
|
||||||
2003-08-23 Zoran Vasiljevic <zoran@archiwrae.com>
|
2003-08-23 Zoran Vasiljevic <zoran@archiwrae.com>
|
||||||
@@ -1278,7 +1278,7 @@
|
|||||||
|
|
||||||
* generic/tclVar.c (Tcl_ArrayObjCmd, TclArraySet): Made [array get]
|
* generic/tclVar.c (Tcl_ArrayObjCmd, TclArraySet): Made [array get]
|
||||||
and [array set] work with dictionaries, producing them and consuming
|
and [array set] work with dictionaries, producing them and consuming
|
||||||
them. Note that for compatability reasons, you will never get a dict
|
them. Note that for compatibility reasons, you will never get a dict
|
||||||
from feeding a string literal to [array set] since that alters the
|
from feeding a string literal to [array set] since that alters the
|
||||||
trace behaviour of "multi-key" sets. [Bug 759935]
|
trace behaviour of "multi-key" sets. [Bug 759935]
|
||||||
|
|
||||||
|
|||||||
@@ -1356,7 +1356,7 @@
|
|||||||
2004-10-07 Donal K. Fellows <donal.k.fellows@man.ac.uk>
|
2004-10-07 Donal K. Fellows <donal.k.fellows@man.ac.uk>
|
||||||
|
|
||||||
* *.3: Convert CONST to const and VOID to void so we document how
|
* *.3: Convert CONST to const and VOID to void so we document how
|
||||||
people should actually use the Tcl API and not the compatability hacks
|
people should actually use the Tcl API and not the compatibility hacks
|
||||||
that it has to have.
|
that it has to have.
|
||||||
|
|
||||||
* doc/man.macros, *.3: Update .AS macro so it can know how wide to
|
* doc/man.macros, *.3: Update .AS macro so it can know how wide to
|
||||||
|
|||||||
24
README
24
README
@@ -1,5 +1,5 @@
|
|||||||
README: Tcl
|
README: Tcl
|
||||||
This is the Tcl 8.6.6 source distribution.
|
This is the Tcl 8.6.9 source distribution.
|
||||||
http://sourceforge.net/projects/tcl/files/Tcl/
|
http://sourceforge.net/projects/tcl/files/Tcl/
|
||||||
You can get any source release of Tcl from the URL above.
|
You can get any source release of Tcl from the URL above.
|
||||||
|
|
||||||
@@ -29,7 +29,7 @@ Tcl is maintained, enhanced, and distributed freely by the Tcl community.
|
|||||||
Source code development and tracking of bug reports and feature requests
|
Source code development and tracking of bug reports and feature requests
|
||||||
takes place at:
|
takes place at:
|
||||||
|
|
||||||
http://core.tcl.tk/
|
http://core.tcl-lang.org/
|
||||||
|
|
||||||
Tcl/Tk release and mailing list services are hosted by SourceForge:
|
Tcl/Tk release and mailing list services are hosted by SourceForge:
|
||||||
|
|
||||||
@@ -37,7 +37,7 @@ Tcl/Tk release and mailing list services are hosted by SourceForge:
|
|||||||
|
|
||||||
with the Tcl Developer Xchange hosted at:
|
with the Tcl Developer Xchange hosted at:
|
||||||
|
|
||||||
http://www.tcl.tk/
|
http://www.tcl-lang.org/
|
||||||
|
|
||||||
Tcl is a freely available open source package. You can do virtually
|
Tcl is a freely available open source package. You can do virtually
|
||||||
anything you like with it, such as modifying it, redistributing it,
|
anything you like with it, such as modifying it, redistributing it,
|
||||||
@@ -49,21 +49,21 @@ and selling it either in whole or in part. See the file
|
|||||||
|
|
||||||
Extensive documentation is available at our website.
|
Extensive documentation is available at our website.
|
||||||
The home page for this release, including new features, is
|
The home page for this release, including new features, is
|
||||||
http://www.tcl.tk/software/tcltk/8.6.html
|
http://www.tcl-lang.org/software/tcltk/8.6.html
|
||||||
|
|
||||||
Detailed release notes can be found at the file distributions page
|
Detailed release notes can be found at the file distributions page
|
||||||
by clicking on the relevant version.
|
by clicking on the relevant version.
|
||||||
http://sourceforge.net/projects/tcl/files/Tcl/
|
http://sourceforge.net/projects/tcl/files/Tcl/
|
||||||
|
|
||||||
Information about Tcl itself can be found at
|
Information about Tcl itself can be found at
|
||||||
http://www.tcl.tk/about/
|
http://www.tcl-lang.org/about/
|
||||||
|
|
||||||
There have been many Tcl books on the market. Many are mentioned in the Wiki:
|
There have been many Tcl books on the market. Many are mentioned in the Wiki:
|
||||||
http://wiki.tcl.tk/_/ref?N=25206
|
http://wiki.tcl-lang.org/_/ref?N=25206
|
||||||
|
|
||||||
To view the complete set of reference manual entries for Tcl 8.6 online,
|
To view the complete set of reference manual entries for Tcl 8.6 online,
|
||||||
visit the URL:
|
visit the URL:
|
||||||
http://www.tcl.tk/man/tcl8.6/
|
http://www.tcl-lang.org/man/tcl8.6/
|
||||||
|
|
||||||
2a. Unix Documentation
|
2a. Unix Documentation
|
||||||
----------------------
|
----------------------
|
||||||
@@ -101,7 +101,7 @@ There are brief notes in the unix/README, win/README, and macosx/README about
|
|||||||
compiling on these different platforms. There is additional information
|
compiling on these different platforms. There is additional information
|
||||||
about building Tcl from sources at
|
about building Tcl from sources at
|
||||||
|
|
||||||
http://www.tcl.tk/doc/howto/compile.html
|
http://www.tcl-lang.org/doc/howto/compile.html
|
||||||
|
|
||||||
4. Development tools
|
4. Development tools
|
||||||
---------------------------
|
---------------------------
|
||||||
@@ -127,7 +127,7 @@ see the "Support and bug fixes" section below.
|
|||||||
|
|
||||||
A Wiki-based open community site covering all aspects of Tcl/Tk is at:
|
A Wiki-based open community site covering all aspects of Tcl/Tk is at:
|
||||||
|
|
||||||
http://wiki.tcl.tk/
|
http://wiki.tcl-lang.org/
|
||||||
|
|
||||||
It is dedicated to the Tcl programming language and its extensions. A
|
It is dedicated to the Tcl programming language and its extensions. A
|
||||||
wealth of useful information can be found there. It contains code
|
wealth of useful information can be found there. It contains code
|
||||||
@@ -153,7 +153,7 @@ We are very interested in receiving bug reports, patches, and suggestions
|
|||||||
for improvements. We prefer that you send this information to us as
|
for improvements. We prefer that you send this information to us as
|
||||||
tickets entered into our tracker at:
|
tickets entered into our tracker at:
|
||||||
|
|
||||||
http://core.tcl.tk/tcl/reportlist
|
http://core.tcl-lang.org/tcl/reportlist
|
||||||
|
|
||||||
We will log and follow-up on each bug, although we cannot promise a
|
We will log and follow-up on each bug, although we cannot promise a
|
||||||
specific turn-around time. Enhancements may take longer and may not happen
|
specific turn-around time. Enhancements may take longer and may not happen
|
||||||
@@ -169,13 +169,13 @@ questions for which no one else is likely to know the answer. In addition,
|
|||||||
see the following Web site for links to other organizations that offer
|
see the following Web site for links to other organizations that offer
|
||||||
Tcl/Tk training:
|
Tcl/Tk training:
|
||||||
|
|
||||||
http://wiki.tcl.tk/training
|
http://wiki.tcl-lang.org/training
|
||||||
|
|
||||||
9. Tracking Development
|
9. Tracking Development
|
||||||
-----------------------
|
-----------------------
|
||||||
|
|
||||||
Tcl is developed in public. To keep an eye on how Tcl is changing, see
|
Tcl is developed in public. To keep an eye on how Tcl is changing, see
|
||||||
http://core.tcl.tk/
|
http://core.tcl-lang.org/
|
||||||
|
|
||||||
10. Thank You
|
10. Thank You
|
||||||
-------------
|
-------------
|
||||||
|
|||||||
196
changes
196
changes
@@ -8698,3 +8698,199 @@ improvements to regexp engine from Postgres (lane,porter,fellows,seltenreich)
|
|||||||
2016-07-20 tzdata updated to Olson's tzdata2016f (venkat)
|
2016-07-20 tzdata updated to Olson's tzdata2016f (venkat)
|
||||||
|
|
||||||
--- Released 8.6.6, July 27, 2016 --- http://core.tcl.tk/tcl/ for details
|
--- Released 8.6.6, July 27, 2016 --- http://core.tcl.tk/tcl/ for details
|
||||||
|
|
||||||
|
2016-09-07 (bug)[c09edf] Bad caching with custom resolver (neumann,nijtmans)
|
||||||
|
|
||||||
|
2016-09-07 (bug)[4dbdd9] Memleak in test var-8.3 (mr_calvin,porter)
|
||||||
|
|
||||||
|
2016-10-03 (bug)[2bf561] Allow empty command as alias target (yorick,nijtmans)
|
||||||
|
*** POTENTIAL INCOMPATIBILITY ***
|
||||||
|
|
||||||
|
2016-10-04 (bug)[4d5ae7] Crash in async connects host no address (gahr,fellows)
|
||||||
|
|
||||||
|
2016-10-08 (bug)[838e99] treat application/xml as text (gahr,fellows)
|
||||||
|
=> http 2.8.10
|
||||||
|
|
||||||
|
2016-10-11 (bug)[3cc1d9] Thread finalization crash in zippy (neumann)
|
||||||
|
|
||||||
|
2016-10-12 (bug)[be003d] Fix [scan 0x1 %b], [scan 0x1 %o] (porter)
|
||||||
|
|
||||||
|
2016-10-14 (bug)[eb6b68] Fix stringComp-14.5 (porter)
|
||||||
|
|
||||||
|
2016-10-30 (bug)[b26e38] Fix zlib-7.8 (fellows)
|
||||||
|
|
||||||
|
2016-10-30 (bug)[1ae129] Fix memleak in [history] destruction (fellows)
|
||||||
|
|
||||||
|
2016-11-04 (feature) Provisional Tcl 9 support in msgcat and tcltest (nijtmans)
|
||||||
|
=> msgcat 1.6.1
|
||||||
|
=> tcltest 2.4.1
|
||||||
|
|
||||||
|
2016-11-04 (bug)[824752] Crash in Tcl_ListObjReplace() (gahr,porter)
|
||||||
|
|
||||||
|
2016-11-11 (bug)[79614f] invalidate VFS mounts on sytem encoding change (yorick)
|
||||||
|
|
||||||
|
2016-11-14 OSX: End panic() as legacy support macro; system conflicts (nijtmans)
|
||||||
|
*** POTENTIAL INCOMPATIBILITY ***
|
||||||
|
|
||||||
|
2016-11-15 (bug) TclOO fix stops crash mixing Itcl and snit (fellows)
|
||||||
|
|
||||||
|
2016-11-17 (update) Reconcile libtommath updates; purge unused files (nijtmans)
|
||||||
|
*** POTENTIAL INCOMPATIBILITY ***
|
||||||
|
|
||||||
|
2017-01-09 (bug)[b87ad7] Repair drifts in timer clock (sebres)
|
||||||
|
|
||||||
|
2017-01-17 (update) => zlib 1.2.11 (nijtmans)
|
||||||
|
|
||||||
|
2017-01-31 (bug)[39f630] Revise Tcl_LinkVar to tolerate some prefixes (nijtmans)
|
||||||
|
*** POTENTIAL INCOMPATIBILITY ***
|
||||||
|
|
||||||
|
2017-02-01 (bug)[d0f7ba] Improper NAN optimization. expr-22.1[01] (aspect)
|
||||||
|
|
||||||
|
2017-02-26 (bug)[25842c] zlib stream finalization (aspect)
|
||||||
|
|
||||||
|
2017-03-07 (deprecate) Remove unmaintained makefile.bc file (nijtmans)
|
||||||
|
*** POTENTIAL INCOMPATIBILITY ***
|
||||||
|
|
||||||
|
2017-03-14 (enhancement) [clock] and [encoding] are now ensembles (kenny)
|
||||||
|
|
||||||
|
2017-03-15 (enhancement) several [clock] subcommands bytecoded (kenny)
|
||||||
|
|
||||||
|
2017-03-23 tzdata updated to Olson's tzdata2017b (jima)
|
||||||
|
|
||||||
|
2017-03-29 (bug)[900cb0] Fix OO unexport introspection (napier)
|
||||||
|
|
||||||
|
2017-04-12 (bug)[42202b] Nesting imbalance in coro injection (nadkarni,sebres)
|
||||||
|
|
||||||
|
2017-04-18 (bug)[bc4322] http package support for safe interps (nash,nijtmans)
|
||||||
|
|
||||||
|
2017-04-28 (bug)[f34cf8] [file join a //b] => /b (neumann,porter)
|
||||||
|
|
||||||
|
2017-05-01 (bug)[8bd13f] Windows threads and pipes (sebres,nijtmans)
|
||||||
|
|
||||||
|
2017-05-01 (bug)[f9fe90] [file join //a b] EIAS violation (aspect,porter)
|
||||||
|
|
||||||
|
2017-05-04 (bug) Make test filesystem-1.52 pass on Windows (nijtmans)
|
||||||
|
|
||||||
|
2017-05-05 (bug)[601522] [binary] field spec overflow -> segfault (porter)
|
||||||
|
|
||||||
|
2017-05-08 (bug)[6ca52a] http memleak handling keep-alive (aspect,nijtmans)
|
||||||
|
=> http 2.8.11
|
||||||
|
|
||||||
|
2017-05-29 (bug)[a3fb33] crash in [lsort] on long lists (sebres)
|
||||||
|
|
||||||
|
2017-06-05 (bug)[67aa9a] Tcl_UtfToUniChar() revised handling invalid UTF-8 (nijtmans)
|
||||||
|
*** POTENTIAL INCOMPATIBILITY ***
|
||||||
|
|
||||||
|
2017-06-08 (bug)[2738427] Tcl_NumUtfChars() corner case utf-4.9 (nijtmans)
|
||||||
|
|
||||||
|
2017-06-22 (update) Update Unicode data to 10.0 (nijtmans)
|
||||||
|
*** POTENTIAL INCOMPATIBILITY ***
|
||||||
|
|
||||||
|
2017-06-22 (TIP 473) Let [oo::copy] specify target namespace (fellows)
|
||||||
|
|
||||||
|
2017-06-26 (bug)[46f801] Repair autoloader fragility (porter)
|
||||||
|
|
||||||
|
2017-07-06 (bug)[adb198] Plug memleak in TclJoinPath (sebres,porter)
|
||||||
|
|
||||||
|
2017-07-17 (bug)[fb2208] Repeatable tclIndex generation (wiedemann,nijtmans)
|
||||||
|
|
||||||
|
--- Released 8.6.7, August 9, 2017 --- http://core.tcl.tk/tcl/ for details
|
||||||
|
|
||||||
|
2017-08-10 [array names -regexp] supports backrefs (goth)
|
||||||
|
|
||||||
|
2017-08-10 Fix gcc build failures due to #pragma placement (cassoff,fellows)
|
||||||
|
|
||||||
|
2017-08-29 (bug)[b50fb2] exec redir append stdout and stderr to file (coulter)
|
||||||
|
|
||||||
|
2017-08-31 (bug)[2a9465] http state 100 continue handling broken (oehlmann)
|
||||||
|
=> http 2.8.12
|
||||||
|
|
||||||
|
2017-09-02 (bug)[0e4d88] replace command, delete trace kills namespace (porter)
|
||||||
|
|
||||||
|
2017-10-19 (bug)[1a5655] [info * methods] includes mixins (fellows)
|
||||||
|
|
||||||
|
2017-10-23 tzdata updated to Olson's tzdata2017c (jima)
|
||||||
|
|
||||||
|
2017-10-24 (bug)[fc1409] segfault in method cloning, oo-15.15 (coulter,fellows)
|
||||||
|
|
||||||
|
2017-11-03 (bug)[6f2f83] More robust [load] for ReactOS (werner)
|
||||||
|
|
||||||
|
2017-11-08 (bug)[3298012] Stop crash when hash tables overflow 32 bits (porter)
|
||||||
|
|
||||||
|
2017-11-14 (bug)[5d6de6] Close failing case of [package prefer stable] (kupries)
|
||||||
|
|
||||||
|
2017-11-17 (bug)[fab924] Fix misleading [load] message on Windows (oehlmann)
|
||||||
|
|
||||||
|
2017-12-05 (bug)[4f6a1e] Crash when ensemble map and list are same (sebres)
|
||||||
|
|
||||||
|
2017-12-06 (bug)[ce3a21] file normalize failure when tail is empty (porter)
|
||||||
|
|
||||||
|
2017-12-08 (new)[TIP 477] nmake build system reform (nadkarni)
|
||||||
|
|
||||||
|
2017-12-19 (bug)[586e71] EvalObjv exception handling at level #0 (sebres,porter)
|
||||||
|
|
||||||
|
--- Released 8.6.8, December 22, 2017 --- http://core.tcl.tk/tcl/ for details
|
||||||
|
|
||||||
|
2018-02-11 (enhance) stop blocking conversion of object to/from class (coulter)
|
||||||
|
|
||||||
|
2018-02-12 (enhance) NR-enable [package require] (coulter)
|
||||||
|
|
||||||
|
2018-02-14 (bug)[9fd5c6] crash in object deletion, test oo-11.5 (coulter)
|
||||||
|
|
||||||
|
2018-02-14 (bug)[3c32a3] crash deleting object with class mixed in (coulter)
|
||||||
|
|
||||||
|
2018-02-15 (platform) stop using -lieee, removed from glibc-2.27 (porter)
|
||||||
|
***POTENTIAL INCOMPATIBILITY for math programs that embed Tcl***
|
||||||
|
|
||||||
|
2018-02-23 (bug)[8e6a9a] bad binary [string match], test string-11.55 (porter)
|
||||||
|
|
||||||
|
2018-03-05 (bug)[1873ea] repair multi-thread std channel init (sebres)
|
||||||
|
|
||||||
|
2018-03-09 (bug)[db36fa] broken bytecode for index values (porter)
|
||||||
|
|
||||||
|
2018-03-13 (bug) broken compiled [string replace], test string-14.19 (porter)
|
||||||
|
|
||||||
|
2018-03-14 (bug) [string trim*] engine crashed on invalid UTF (sebres)
|
||||||
|
|
||||||
|
2018-04-17 (bug) missing trace in compiled [array set], test var-20.11 (porter)
|
||||||
|
|
||||||
|
2018-04-22 (bug)[46a241] crash in unset array with search, var-13.[23] (goth)
|
||||||
|
|
||||||
|
2018-04-30 (bug)[27b682] race made [file delete] raise "no such file" (sebres)
|
||||||
|
|
||||||
|
2018-06-04 (bug)[925643] 32/64 cleanup of filesystem DIR operations (sebres)
|
||||||
|
|
||||||
|
2018-06-18 (bug) leaks in TclSetEnv and env cache (coulter)
|
||||||
|
|
||||||
|
2018-06-24 (bug)[3592747] [yieldto] dying namespace, tailcall-14.1 (coulter)
|
||||||
|
|
||||||
|
2018-07-09 (bug)[270f78] race in [file mkdir] (sebres)
|
||||||
|
|
||||||
|
2018-07-12 (bug)[3f7af0] [file delete] raised "permission denied" (sebres)
|
||||||
|
|
||||||
|
2018-07-26 (bug)[d051b7] overflow crash in [format] (sebres)
|
||||||
|
|
||||||
|
2018-08-29 revised quoting of [exec] args in generated command line (sebres)
|
||||||
|
***POTENTIAL INCOMPATIBILITY***
|
||||||
|
|
||||||
|
2018-09-20 HTTP Keep-Alive with pipelined requests (nash)
|
||||||
|
=> http 2.9.0
|
||||||
|
|
||||||
|
2018-09-27 (new)[TIP 505] [lreplace] accepts all out of range indices (porter)
|
||||||
|
|
||||||
|
2018-10-04 (bug) Prevent crash from NULL keyName (nijtmans)
|
||||||
|
=> registry 1.3.3
|
||||||
|
|
||||||
|
2018-10-26 (enhance) advance dde version (nijtmans)
|
||||||
|
=> dde 1.4.1
|
||||||
|
|
||||||
|
2018-10-27 tzdata updated to Olson's tzdata2018g (jima)
|
||||||
|
|
||||||
|
2018-10-29 Update tcltest package for Travis support (fellows)
|
||||||
|
=> tcltest 2.5.0
|
||||||
|
|
||||||
|
2018-11-09 (bug)[35a8f1] overlong string length of some lists (owens)
|
||||||
|
|
||||||
|
2018-11-16 (bug)[00d04c] Repair [binary encode base64] (sebres)
|
||||||
|
|
||||||
|
- Released 8.6.9, November 16, 2018 - details at http://core.tcl-lang.org/tcl/ -
|
||||||
|
|||||||
@@ -1,36 +0,0 @@
|
|||||||
/*
|
|
||||||
* fixstrtod.c --
|
|
||||||
*
|
|
||||||
* Source code for the "fixstrtod" procedure. This procedure is
|
|
||||||
* used in place of strtod under Solaris 2.4, in order to fix
|
|
||||||
* a bug where the "end" pointer gets set incorrectly.
|
|
||||||
*
|
|
||||||
* Copyright (c) 1995 Sun Microsystems, Inc.
|
|
||||||
*
|
|
||||||
* See the file "license.terms" for information on usage and redistribution
|
|
||||||
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <stdio.h>
|
|
||||||
|
|
||||||
#undef strtod
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Declare strtod explicitly rather than including stdlib.h, since in
|
|
||||||
* somes systems (e.g. SunOS 4.1.4) stdlib.h doesn't declare strtod.
|
|
||||||
*/
|
|
||||||
|
|
||||||
extern double strtod(char *, char **);
|
|
||||||
|
|
||||||
double
|
|
||||||
fixstrtod(
|
|
||||||
char *string,
|
|
||||||
char **endPtr)
|
|
||||||
{
|
|
||||||
double d;
|
|
||||||
d = strtod(string, endPtr);
|
|
||||||
if ((endPtr != NULL) && (*endPtr != string) && ((*endPtr)[-1] == 0)) {
|
|
||||||
*endPtr -= 1;
|
|
||||||
}
|
|
||||||
return d;
|
|
||||||
}
|
|
||||||
@@ -29,7 +29,6 @@ extern char * malloc(unsigned int numBytes);
|
|||||||
extern void qsort(void *base, int n, int size, int (*compar)(
|
extern void qsort(void *base, int n, int size, int (*compar)(
|
||||||
const void *element1, const void *element2));
|
const void *element1, const void *element2));
|
||||||
extern char * realloc(char *ptr, unsigned int numBytes);
|
extern char * realloc(char *ptr, unsigned int numBytes);
|
||||||
extern double strtod(const char *string, char **endPtr);
|
|
||||||
extern long strtol(const char *string, char **endPtr, int base);
|
extern long strtol(const char *string, char **endPtr, int base);
|
||||||
extern unsigned long strtoul(const char *string, char **endPtr, int base);
|
extern unsigned long strtoul(const char *string, char **endPtr, int base);
|
||||||
|
|
||||||
|
|||||||
252
compat/strtod.c
252
compat/strtod.c
@@ -1,252 +0,0 @@
|
|||||||
/*
|
|
||||||
* strtod.c --
|
|
||||||
*
|
|
||||||
* Source code for the "strtod" library procedure.
|
|
||||||
*
|
|
||||||
* Copyright (c) 1988-1993 The Regents of the University of California.
|
|
||||||
* Copyright (c) 1994 Sun Microsystems, Inc.
|
|
||||||
*
|
|
||||||
* See the file "license.terms" for information on usage and redistribution
|
|
||||||
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include "tclInt.h"
|
|
||||||
|
|
||||||
#ifndef TRUE
|
|
||||||
#define TRUE 1
|
|
||||||
#define FALSE 0
|
|
||||||
#endif
|
|
||||||
#ifndef NULL
|
|
||||||
#define NULL 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static const int maxExponent = 511; /* Largest possible base 10 exponent. Any
|
|
||||||
* exponent larger than this will already
|
|
||||||
* produce underflow or overflow, so there's
|
|
||||||
* no need to worry about additional digits.
|
|
||||||
*/
|
|
||||||
static const double powersOf10[] = { /* Table giving binary powers of 10. Entry */
|
|
||||||
10., /* is 10^2^i. Used to convert decimal */
|
|
||||||
100., /* exponents into floating-point numbers. */
|
|
||||||
1.0e4,
|
|
||||||
1.0e8,
|
|
||||||
1.0e16,
|
|
||||||
1.0e32,
|
|
||||||
1.0e64,
|
|
||||||
1.0e128,
|
|
||||||
1.0e256
|
|
||||||
};
|
|
||||||
|
|
||||||
/*
|
|
||||||
*----------------------------------------------------------------------
|
|
||||||
*
|
|
||||||
* strtod --
|
|
||||||
*
|
|
||||||
* This procedure converts a floating-point number from an ASCII
|
|
||||||
* decimal representation to internal double-precision format.
|
|
||||||
*
|
|
||||||
* Results:
|
|
||||||
* The return value is the double-precision floating-point
|
|
||||||
* representation of the characters in string. If endPtr isn't
|
|
||||||
* NULL, then *endPtr is filled in with the address of the
|
|
||||||
* next character after the last one that was part of the
|
|
||||||
* floating-point number.
|
|
||||||
*
|
|
||||||
* Side effects:
|
|
||||||
* None.
|
|
||||||
*
|
|
||||||
*----------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
|
|
||||||
double
|
|
||||||
strtod(
|
|
||||||
const char *string, /* A decimal ASCII floating-point number,
|
|
||||||
* optionally preceded by white space. Must
|
|
||||||
* have form "-I.FE-X", where I is the integer
|
|
||||||
* part of the mantissa, F is the fractional
|
|
||||||
* part of the mantissa, and X is the
|
|
||||||
* exponent. Either of the signs may be "+",
|
|
||||||
* "-", or omitted. Either I or F may be
|
|
||||||
* omitted, or both. The decimal point isn't
|
|
||||||
* necessary unless F is present. The "E" may
|
|
||||||
* actually be an "e". E and X may both be
|
|
||||||
* omitted (but not just one). */
|
|
||||||
char **endPtr) /* If non-NULL, store terminating character's
|
|
||||||
* address here. */
|
|
||||||
{
|
|
||||||
int sign, expSign = FALSE;
|
|
||||||
double fraction, dblExp;
|
|
||||||
const double *d;
|
|
||||||
register const char *p;
|
|
||||||
register int c;
|
|
||||||
int exp = 0; /* Exponent read from "EX" field. */
|
|
||||||
int fracExp = 0; /* Exponent that derives from the fractional
|
|
||||||
* part. Under normal circumstatnces, it is
|
|
||||||
* the negative of the number of digits in F.
|
|
||||||
* However, if I is very long, the last digits
|
|
||||||
* of I get dropped (otherwise a long I with a
|
|
||||||
* large negative exponent could cause an
|
|
||||||
* unnecessary overflow on I alone). In this
|
|
||||||
* case, fracExp is incremented one for each
|
|
||||||
* dropped digit. */
|
|
||||||
int mantSize; /* Number of digits in mantissa. */
|
|
||||||
int decPt; /* Number of mantissa digits BEFORE decimal
|
|
||||||
* point. */
|
|
||||||
const char *pExp; /* Temporarily holds location of exponent in
|
|
||||||
* string. */
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Strip off leading blanks and check for a sign.
|
|
||||||
*/
|
|
||||||
|
|
||||||
p = string;
|
|
||||||
while (isspace(UCHAR(*p))) {
|
|
||||||
p += 1;
|
|
||||||
}
|
|
||||||
if (*p == '-') {
|
|
||||||
sign = TRUE;
|
|
||||||
p += 1;
|
|
||||||
} else {
|
|
||||||
if (*p == '+') {
|
|
||||||
p += 1;
|
|
||||||
}
|
|
||||||
sign = FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Count the number of digits in the mantissa (including the decimal
|
|
||||||
* point), and also locate the decimal point.
|
|
||||||
*/
|
|
||||||
|
|
||||||
decPt = -1;
|
|
||||||
for (mantSize = 0; ; mantSize += 1)
|
|
||||||
{
|
|
||||||
c = *p;
|
|
||||||
if (!isdigit(c)) {
|
|
||||||
if ((c != '.') || (decPt >= 0)) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
decPt = mantSize;
|
|
||||||
}
|
|
||||||
p += 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Now suck up the digits in the mantissa. Use two integers to collect 9
|
|
||||||
* digits each (this is faster than using floating-point). If the mantissa
|
|
||||||
* has more than 18 digits, ignore the extras, since they can't affect the
|
|
||||||
* value anyway.
|
|
||||||
*/
|
|
||||||
|
|
||||||
pExp = p;
|
|
||||||
p -= mantSize;
|
|
||||||
if (decPt < 0) {
|
|
||||||
decPt = mantSize;
|
|
||||||
} else {
|
|
||||||
mantSize -= 1; /* One of the digits was the point. */
|
|
||||||
}
|
|
||||||
if (mantSize > 18) {
|
|
||||||
fracExp = decPt - 18;
|
|
||||||
mantSize = 18;
|
|
||||||
} else {
|
|
||||||
fracExp = decPt - mantSize;
|
|
||||||
}
|
|
||||||
if (mantSize == 0) {
|
|
||||||
fraction = 0.0;
|
|
||||||
p = string;
|
|
||||||
goto done;
|
|
||||||
} else {
|
|
||||||
int frac1, frac2;
|
|
||||||
|
|
||||||
frac1 = 0;
|
|
||||||
for ( ; mantSize > 9; mantSize -= 1) {
|
|
||||||
c = *p;
|
|
||||||
p += 1;
|
|
||||||
if (c == '.') {
|
|
||||||
c = *p;
|
|
||||||
p += 1;
|
|
||||||
}
|
|
||||||
frac1 = 10*frac1 + (c - '0');
|
|
||||||
}
|
|
||||||
frac2 = 0;
|
|
||||||
for (; mantSize > 0; mantSize -= 1) {
|
|
||||||
c = *p;
|
|
||||||
p += 1;
|
|
||||||
if (c == '.') {
|
|
||||||
c = *p;
|
|
||||||
p += 1;
|
|
||||||
}
|
|
||||||
frac2 = 10*frac2 + (c - '0');
|
|
||||||
}
|
|
||||||
fraction = (1.0e9 * frac1) + frac2;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Skim off the exponent.
|
|
||||||
*/
|
|
||||||
|
|
||||||
p = pExp;
|
|
||||||
if ((*p == 'E') || (*p == 'e')) {
|
|
||||||
p += 1;
|
|
||||||
if (*p == '-') {
|
|
||||||
expSign = TRUE;
|
|
||||||
p += 1;
|
|
||||||
} else {
|
|
||||||
if (*p == '+') {
|
|
||||||
p += 1;
|
|
||||||
}
|
|
||||||
expSign = FALSE;
|
|
||||||
}
|
|
||||||
if (!isdigit(UCHAR(*p))) {
|
|
||||||
p = pExp;
|
|
||||||
goto done;
|
|
||||||
}
|
|
||||||
while (isdigit(UCHAR(*p))) {
|
|
||||||
exp = exp * 10 + (*p - '0');
|
|
||||||
p += 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (expSign) {
|
|
||||||
exp = fracExp - exp;
|
|
||||||
} else {
|
|
||||||
exp = fracExp + exp;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Generate a floating-point number that represents the exponent. Do this
|
|
||||||
* by processing the exponent one bit at a time to combine many powers of
|
|
||||||
* 2 of 10. Then combine the exponent with the fraction.
|
|
||||||
*/
|
|
||||||
|
|
||||||
if (exp < 0) {
|
|
||||||
expSign = TRUE;
|
|
||||||
exp = -exp;
|
|
||||||
} else {
|
|
||||||
expSign = FALSE;
|
|
||||||
}
|
|
||||||
if (exp > maxExponent) {
|
|
||||||
exp = maxExponent;
|
|
||||||
errno = ERANGE;
|
|
||||||
}
|
|
||||||
dblExp = 1.0;
|
|
||||||
for (d = powersOf10; exp != 0; exp >>= 1, ++d) {
|
|
||||||
if (exp & 01) {
|
|
||||||
dblExp *= *d;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (expSign) {
|
|
||||||
fraction /= dblExp;
|
|
||||||
} else {
|
|
||||||
fraction *= dblExp;
|
|
||||||
}
|
|
||||||
|
|
||||||
done:
|
|
||||||
if (endPtr != NULL) {
|
|
||||||
*endPtr = (char *) p;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (sign) {
|
|
||||||
return -fraction;
|
|
||||||
}
|
|
||||||
return fraction;
|
|
||||||
}
|
|
||||||
@@ -3,7 +3,7 @@ set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS ON)
|
|||||||
|
|
||||||
project(zlib C)
|
project(zlib C)
|
||||||
|
|
||||||
set(VERSION "1.2.8")
|
set(VERSION "1.2.11")
|
||||||
|
|
||||||
option(ASM686 "Enable building i686 assembly implementation")
|
option(ASM686 "Enable building i686 assembly implementation")
|
||||||
option(AMD64 "Enable building amd64 assembly implementation")
|
option(AMD64 "Enable building amd64 assembly implementation")
|
||||||
|
|||||||
@@ -1,10 +1,53 @@
|
|||||||
|
|
||||||
ChangeLog file for zlib
|
ChangeLog file for zlib
|
||||||
|
|
||||||
|
Changes in 1.2.11 (15 Jan 2017)
|
||||||
|
- Fix deflate stored bug when pulling last block from window
|
||||||
|
- Permit immediate deflateParams changes before any deflate input
|
||||||
|
|
||||||
|
Changes in 1.2.10 (2 Jan 2017)
|
||||||
|
- Avoid warnings on snprintf() return value
|
||||||
|
- Fix bug in deflate_stored() for zero-length input
|
||||||
|
- Fix bug in gzwrite.c that produced corrupt gzip files
|
||||||
|
- Remove files to be installed before copying them in Makefile.in
|
||||||
|
- Add warnings when compiling with assembler code
|
||||||
|
|
||||||
|
Changes in 1.2.9 (31 Dec 2016)
|
||||||
|
- Fix contrib/minizip to permit unzipping with desktop API [Zouzou]
|
||||||
|
- Improve contrib/blast to return unused bytes
|
||||||
|
- Assure that gzoffset() is correct when appending
|
||||||
|
- Improve compress() and uncompress() to support large lengths
|
||||||
|
- Fix bug in test/example.c where error code not saved
|
||||||
|
- Remedy Coverity warning [Randers-Pehrson]
|
||||||
|
- Improve speed of gzprintf() in transparent mode
|
||||||
|
- Fix inflateInit2() bug when windowBits is 16 or 32
|
||||||
|
- Change DEBUG macro to ZLIB_DEBUG
|
||||||
|
- Avoid uninitialized access by gzclose_w()
|
||||||
|
- Allow building zlib outside of the source directory
|
||||||
|
- Fix bug that accepted invalid zlib header when windowBits is zero
|
||||||
|
- Fix gzseek() problem on MinGW due to buggy _lseeki64 there
|
||||||
|
- Loop on write() calls in gzwrite.c in case of non-blocking I/O
|
||||||
|
- Add --warn (-w) option to ./configure for more compiler warnings
|
||||||
|
- Reject a window size of 256 bytes if not using the zlib wrapper
|
||||||
|
- Fix bug when level 0 used with Z_HUFFMAN or Z_RLE
|
||||||
|
- Add --debug (-d) option to ./configure to define ZLIB_DEBUG
|
||||||
|
- Fix bugs in creating a very large gzip header
|
||||||
|
- Add uncompress2() function, which returns the input size used
|
||||||
|
- Assure that deflateParams() will not switch functions mid-block
|
||||||
|
- Dramatically speed up deflation for level 0 (storing)
|
||||||
|
- Add gzfread(), duplicating the interface of fread()
|
||||||
|
- Add gzfwrite(), duplicating the interface of fwrite()
|
||||||
|
- Add deflateGetDictionary() function
|
||||||
|
- Use snprintf() for later versions of Microsoft C
|
||||||
|
- Fix *Init macros to use z_ prefix when requested
|
||||||
|
- Replace as400 with os400 for OS/400 support [Monnerat]
|
||||||
|
- Add crc32_z() and adler32_z() functions with size_t lengths
|
||||||
|
- Update Visual Studio project files [AraHaan]
|
||||||
|
|
||||||
Changes in 1.2.8 (28 Apr 2013)
|
Changes in 1.2.8 (28 Apr 2013)
|
||||||
- Update contrib/minizip/iowin32.c for Windows RT [Vollant]
|
- Update contrib/minizip/iowin32.c for Windows RT [Vollant]
|
||||||
- Do not force Z_CONST for C++
|
- Do not force Z_CONST for C++
|
||||||
- Clean up contrib/vstudio [Ro<EFBFBD>]
|
- Clean up contrib/vstudio [Roß]
|
||||||
- Correct spelling error in zlib.h
|
- Correct spelling error in zlib.h
|
||||||
- Fix mixed line endings in contrib/vstudio
|
- Fix mixed line endings in contrib/vstudio
|
||||||
|
|
||||||
@@ -34,7 +77,7 @@ Changes in 1.2.7.1 (24 Mar 2013)
|
|||||||
- Clean up the usage of z_const and respect const usage within zlib
|
- Clean up the usage of z_const and respect const usage within zlib
|
||||||
- Clean up examples/gzlog.[ch] comparisons of different types
|
- Clean up examples/gzlog.[ch] comparisons of different types
|
||||||
- Avoid shift equal to bits in type (caused endless loop)
|
- Avoid shift equal to bits in type (caused endless loop)
|
||||||
- Fix unintialized value bug in gzputc() introduced by const patches
|
- Fix uninitialized value bug in gzputc() introduced by const patches
|
||||||
- Fix memory allocation error in examples/zran.c [Nor]
|
- Fix memory allocation error in examples/zran.c [Nor]
|
||||||
- Fix bug where gzopen(), gzclose() would write an empty file
|
- Fix bug where gzopen(), gzclose() would write an empty file
|
||||||
- Fix bug in gzclose() when gzwrite() runs out of memory
|
- Fix bug in gzclose() when gzwrite() runs out of memory
|
||||||
@@ -194,7 +237,7 @@ Changes in 1.2.5.2 (17 Dec 2011)
|
|||||||
- Add a transparent write mode to gzopen() when 'T' is in the mode
|
- Add a transparent write mode to gzopen() when 'T' is in the mode
|
||||||
- Update python link in zlib man page
|
- Update python link in zlib man page
|
||||||
- Get inffixed.h and MAKEFIXED result to match
|
- Get inffixed.h and MAKEFIXED result to match
|
||||||
- Add a ./config --solo option to make zlib subset with no libary use
|
- Add a ./config --solo option to make zlib subset with no library use
|
||||||
- Add undocumented inflateResetKeep() function for CAB file decoding
|
- Add undocumented inflateResetKeep() function for CAB file decoding
|
||||||
- Add --cover option to ./configure for gcc coverage testing
|
- Add --cover option to ./configure for gcc coverage testing
|
||||||
- Add #define ZLIB_CONST option to use const in the z_stream interface
|
- Add #define ZLIB_CONST option to use const in the z_stream interface
|
||||||
@@ -564,7 +607,7 @@ Changes in 1.2.3.1 (16 August 2006)
|
|||||||
- Update make_vms.com [Zinser]
|
- Update make_vms.com [Zinser]
|
||||||
- Use -fPIC for shared build in configure [Teredesai, Nicholson]
|
- Use -fPIC for shared build in configure [Teredesai, Nicholson]
|
||||||
- Use only major version number for libz.so on IRIX and OSF1 [Reinholdtsen]
|
- Use only major version number for libz.so on IRIX and OSF1 [Reinholdtsen]
|
||||||
- Use fdopen() (not _fdopen()) for Interix in zutil.h [B<EFBFBD>ck]
|
- Use fdopen() (not _fdopen()) for Interix in zutil.h [Bäck]
|
||||||
- Add some FAQ entries about the contrib directory
|
- Add some FAQ entries about the contrib directory
|
||||||
- Update the MVS question in the FAQ
|
- Update the MVS question in the FAQ
|
||||||
- Avoid extraneous reads after EOF in gzio.c [Brown]
|
- Avoid extraneous reads after EOF in gzio.c [Brown]
|
||||||
@@ -1178,7 +1221,7 @@ Changes in 1.0.6 (19 Jan 1998)
|
|||||||
386 asm code replacing longest_match().
|
386 asm code replacing longest_match().
|
||||||
contrib/iostream/ by Kevin Ruland <kevin@rodin.wustl.edu>
|
contrib/iostream/ by Kevin Ruland <kevin@rodin.wustl.edu>
|
||||||
A C++ I/O streams interface to the zlib gz* functions
|
A C++ I/O streams interface to the zlib gz* functions
|
||||||
contrib/iostream2/ by Tyge L<EFBFBD>vset <Tyge.Lovset@cmr.no>
|
contrib/iostream2/ by Tyge Løvset <Tyge.Lovset@cmr.no>
|
||||||
Another C++ I/O streams interface
|
Another C++ I/O streams interface
|
||||||
contrib/untgz/ by "Pedro A. Aranda Guti\irrez" <paag@tid.es>
|
contrib/untgz/ by "Pedro A. Aranda Guti\irrez" <paag@tid.es>
|
||||||
A very simple tar.gz file extractor using zlib
|
A very simple tar.gz file extractor using zlib
|
||||||
@@ -1267,7 +1310,7 @@ Changes in 1.0.1 (20 May 96) [1.0 skipped to avoid confusion]
|
|||||||
- fix array overlay in deflate.c which sometimes caused bad compressed data
|
- fix array overlay in deflate.c which sometimes caused bad compressed data
|
||||||
- fix inflate bug with empty stored block
|
- fix inflate bug with empty stored block
|
||||||
- fix MSDOS medium model which was broken in 0.99
|
- fix MSDOS medium model which was broken in 0.99
|
||||||
- fix deflateParams() which could generated bad compressed data.
|
- fix deflateParams() which could generate bad compressed data.
|
||||||
- Bytef is define'd instead of typedef'ed (work around Borland bug)
|
- Bytef is define'd instead of typedef'ed (work around Borland bug)
|
||||||
- added an INDEX file
|
- added an INDEX file
|
||||||
- new makefiles for DJGPP (Makefile.dj2), 32-bit Borland (Makefile.b32),
|
- new makefiles for DJGPP (Makefile.dj2), 32-bit Borland (Makefile.b32),
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
# Makefile for zlib
|
# Makefile for zlib
|
||||||
# Copyright (C) 1995-2013 Jean-loup Gailly, Mark Adler
|
# Copyright (C) 1995-2017 Jean-loup Gailly, Mark Adler
|
||||||
# For conditions of distribution and use, see copyright notice in zlib.h
|
# For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
|
|
||||||
# To compile and test, type:
|
# To compile and test, type:
|
||||||
@@ -20,7 +20,7 @@ CC=cc
|
|||||||
|
|
||||||
CFLAGS=-O
|
CFLAGS=-O
|
||||||
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
|
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
|
||||||
#CFLAGS=-g -DDEBUG
|
#CFLAGS=-g -DZLIB_DEBUG
|
||||||
#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
|
#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
|
||||||
# -Wstrict-prototypes -Wmissing-prototypes
|
# -Wstrict-prototypes -Wmissing-prototypes
|
||||||
|
|
||||||
@@ -32,7 +32,7 @@ CPP=$(CC) -E
|
|||||||
|
|
||||||
STATICLIB=libz.a
|
STATICLIB=libz.a
|
||||||
SHAREDLIB=libz.so
|
SHAREDLIB=libz.so
|
||||||
SHAREDLIBV=libz.so.1.2.8
|
SHAREDLIBV=libz.so.1.2.11
|
||||||
SHAREDLIBM=libz.so.1
|
SHAREDLIBM=libz.so.1
|
||||||
LIBS=$(STATICLIB) $(SHAREDLIBV)
|
LIBS=$(STATICLIB) $(SHAREDLIBV)
|
||||||
|
|
||||||
@@ -53,6 +53,9 @@ includedir = ${prefix}/include
|
|||||||
mandir = ${prefix}/share/man
|
mandir = ${prefix}/share/man
|
||||||
man3dir = ${mandir}/man3
|
man3dir = ${mandir}/man3
|
||||||
pkgconfigdir = ${libdir}/pkgconfig
|
pkgconfigdir = ${libdir}/pkgconfig
|
||||||
|
SRCDIR=
|
||||||
|
ZINC=
|
||||||
|
ZINCOUT=-I.
|
||||||
|
|
||||||
OBJZ = adler32.o crc32.o deflate.o infback.o inffast.o inflate.o inftrees.o trees.o zutil.o
|
OBJZ = adler32.o crc32.o deflate.o infback.o inffast.o inflate.o inftrees.o trees.o zutil.o
|
||||||
OBJG = compress.o uncompr.o gzclose.o gzlib.o gzread.o gzwrite.o
|
OBJG = compress.o uncompr.o gzclose.o gzlib.o gzread.o gzwrite.o
|
||||||
@@ -113,8 +116,8 @@ test64: all64
|
|||||||
fi; \
|
fi; \
|
||||||
rm -f $$TMP64
|
rm -f $$TMP64
|
||||||
|
|
||||||
infcover.o: test/infcover.c zlib.h zconf.h
|
infcover.o: $(SRCDIR)test/infcover.c $(SRCDIR)zlib.h zconf.h
|
||||||
$(CC) $(CFLAGS) -I. -c -o $@ test/infcover.c
|
$(CC) $(CFLAGS) $(ZINCOUT) -c -o $@ $(SRCDIR)test/infcover.c
|
||||||
|
|
||||||
infcover: infcover.o libz.a
|
infcover: infcover.o libz.a
|
||||||
$(CC) $(CFLAGS) -o $@ infcover.o libz.a
|
$(CC) $(CFLAGS) -o $@ infcover.o libz.a
|
||||||
@@ -140,24 +143,140 @@ match.lo: match.S
|
|||||||
mv _match.o match.lo
|
mv _match.o match.lo
|
||||||
rm -f _match.s
|
rm -f _match.s
|
||||||
|
|
||||||
example.o: test/example.c zlib.h zconf.h
|
example.o: $(SRCDIR)test/example.c $(SRCDIR)zlib.h zconf.h
|
||||||
$(CC) $(CFLAGS) -I. -c -o $@ test/example.c
|
$(CC) $(CFLAGS) $(ZINCOUT) -c -o $@ $(SRCDIR)test/example.c
|
||||||
|
|
||||||
minigzip.o: test/minigzip.c zlib.h zconf.h
|
minigzip.o: $(SRCDIR)test/minigzip.c $(SRCDIR)zlib.h zconf.h
|
||||||
$(CC) $(CFLAGS) -I. -c -o $@ test/minigzip.c
|
$(CC) $(CFLAGS) $(ZINCOUT) -c -o $@ $(SRCDIR)test/minigzip.c
|
||||||
|
|
||||||
example64.o: test/example.c zlib.h zconf.h
|
example64.o: $(SRCDIR)test/example.c $(SRCDIR)zlib.h zconf.h
|
||||||
$(CC) $(CFLAGS) -I. -D_FILE_OFFSET_BITS=64 -c -o $@ test/example.c
|
$(CC) $(CFLAGS) $(ZINCOUT) -D_FILE_OFFSET_BITS=64 -c -o $@ $(SRCDIR)test/example.c
|
||||||
|
|
||||||
minigzip64.o: test/minigzip.c zlib.h zconf.h
|
minigzip64.o: $(SRCDIR)test/minigzip.c $(SRCDIR)zlib.h zconf.h
|
||||||
$(CC) $(CFLAGS) -I. -D_FILE_OFFSET_BITS=64 -c -o $@ test/minigzip.c
|
$(CC) $(CFLAGS) $(ZINCOUT) -D_FILE_OFFSET_BITS=64 -c -o $@ $(SRCDIR)test/minigzip.c
|
||||||
|
|
||||||
.SUFFIXES: .lo
|
|
||||||
|
|
||||||
.c.lo:
|
adler32.o: $(SRCDIR)adler32.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)adler32.c
|
||||||
|
|
||||||
|
crc32.o: $(SRCDIR)crc32.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)crc32.c
|
||||||
|
|
||||||
|
deflate.o: $(SRCDIR)deflate.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)deflate.c
|
||||||
|
|
||||||
|
infback.o: $(SRCDIR)infback.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)infback.c
|
||||||
|
|
||||||
|
inffast.o: $(SRCDIR)inffast.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)inffast.c
|
||||||
|
|
||||||
|
inflate.o: $(SRCDIR)inflate.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)inflate.c
|
||||||
|
|
||||||
|
inftrees.o: $(SRCDIR)inftrees.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)inftrees.c
|
||||||
|
|
||||||
|
trees.o: $(SRCDIR)trees.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)trees.c
|
||||||
|
|
||||||
|
zutil.o: $(SRCDIR)zutil.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)zutil.c
|
||||||
|
|
||||||
|
compress.o: $(SRCDIR)compress.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)compress.c
|
||||||
|
|
||||||
|
uncompr.o: $(SRCDIR)uncompr.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)uncompr.c
|
||||||
|
|
||||||
|
gzclose.o: $(SRCDIR)gzclose.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzclose.c
|
||||||
|
|
||||||
|
gzlib.o: $(SRCDIR)gzlib.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzlib.c
|
||||||
|
|
||||||
|
gzread.o: $(SRCDIR)gzread.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzread.c
|
||||||
|
|
||||||
|
gzwrite.o: $(SRCDIR)gzwrite.c
|
||||||
|
$(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzwrite.c
|
||||||
|
|
||||||
|
|
||||||
|
adler32.lo: $(SRCDIR)adler32.c
|
||||||
-@mkdir objs 2>/dev/null || test -d objs
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
$(CC) $(SFLAGS) -DPIC -c -o objs/$*.o $<
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/adler32.o $(SRCDIR)adler32.c
|
||||||
-@mv objs/$*.o $@
|
-@mv objs/adler32.o $@
|
||||||
|
|
||||||
|
crc32.lo: $(SRCDIR)crc32.c
|
||||||
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/crc32.o $(SRCDIR)crc32.c
|
||||||
|
-@mv objs/crc32.o $@
|
||||||
|
|
||||||
|
deflate.lo: $(SRCDIR)deflate.c
|
||||||
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/deflate.o $(SRCDIR)deflate.c
|
||||||
|
-@mv objs/deflate.o $@
|
||||||
|
|
||||||
|
infback.lo: $(SRCDIR)infback.c
|
||||||
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/infback.o $(SRCDIR)infback.c
|
||||||
|
-@mv objs/infback.o $@
|
||||||
|
|
||||||
|
inffast.lo: $(SRCDIR)inffast.c
|
||||||
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/inffast.o $(SRCDIR)inffast.c
|
||||||
|
-@mv objs/inffast.o $@
|
||||||
|
|
||||||
|
inflate.lo: $(SRCDIR)inflate.c
|
||||||
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/inflate.o $(SRCDIR)inflate.c
|
||||||
|
-@mv objs/inflate.o $@
|
||||||
|
|
||||||
|
inftrees.lo: $(SRCDIR)inftrees.c
|
||||||
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/inftrees.o $(SRCDIR)inftrees.c
|
||||||
|
-@mv objs/inftrees.o $@
|
||||||
|
|
||||||
|
trees.lo: $(SRCDIR)trees.c
|
||||||
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/trees.o $(SRCDIR)trees.c
|
||||||
|
-@mv objs/trees.o $@
|
||||||
|
|
||||||
|
zutil.lo: $(SRCDIR)zutil.c
|
||||||
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/zutil.o $(SRCDIR)zutil.c
|
||||||
|
-@mv objs/zutil.o $@
|
||||||
|
|
||||||
|
compress.lo: $(SRCDIR)compress.c
|
||||||
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/compress.o $(SRCDIR)compress.c
|
||||||
|
-@mv objs/compress.o $@
|
||||||
|
|
||||||
|
uncompr.lo: $(SRCDIR)uncompr.c
|
||||||
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/uncompr.o $(SRCDIR)uncompr.c
|
||||||
|
-@mv objs/uncompr.o $@
|
||||||
|
|
||||||
|
gzclose.lo: $(SRCDIR)gzclose.c
|
||||||
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/gzclose.o $(SRCDIR)gzclose.c
|
||||||
|
-@mv objs/gzclose.o $@
|
||||||
|
|
||||||
|
gzlib.lo: $(SRCDIR)gzlib.c
|
||||||
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/gzlib.o $(SRCDIR)gzlib.c
|
||||||
|
-@mv objs/gzlib.o $@
|
||||||
|
|
||||||
|
gzread.lo: $(SRCDIR)gzread.c
|
||||||
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/gzread.o $(SRCDIR)gzread.c
|
||||||
|
-@mv objs/gzread.o $@
|
||||||
|
|
||||||
|
gzwrite.lo: $(SRCDIR)gzwrite.c
|
||||||
|
-@mkdir objs 2>/dev/null || test -d objs
|
||||||
|
$(CC) $(SFLAGS) $(ZINC) -DPIC -c -o objs/gzwrite.o $(SRCDIR)gzwrite.c
|
||||||
|
-@mv objs/gzwrite.o $@
|
||||||
|
|
||||||
|
|
||||||
placebo $(SHAREDLIBV): $(PIC_OBJS) libz.a
|
placebo $(SHAREDLIBV): $(PIC_OBJS) libz.a
|
||||||
$(LDSHARED) $(SFLAGS) -o $@ $(PIC_OBJS) $(LDSHAREDLIBC) $(LDFLAGS)
|
$(LDSHARED) $(SFLAGS) -o $@ $(PIC_OBJS) $(LDSHAREDLIBC) $(LDFLAGS)
|
||||||
@@ -190,10 +309,12 @@ install-libs: $(LIBS)
|
|||||||
-@if [ ! -d $(DESTDIR)$(sharedlibdir) ]; then mkdir -p $(DESTDIR)$(sharedlibdir); fi
|
-@if [ ! -d $(DESTDIR)$(sharedlibdir) ]; then mkdir -p $(DESTDIR)$(sharedlibdir); fi
|
||||||
-@if [ ! -d $(DESTDIR)$(man3dir) ]; then mkdir -p $(DESTDIR)$(man3dir); fi
|
-@if [ ! -d $(DESTDIR)$(man3dir) ]; then mkdir -p $(DESTDIR)$(man3dir); fi
|
||||||
-@if [ ! -d $(DESTDIR)$(pkgconfigdir) ]; then mkdir -p $(DESTDIR)$(pkgconfigdir); fi
|
-@if [ ! -d $(DESTDIR)$(pkgconfigdir) ]; then mkdir -p $(DESTDIR)$(pkgconfigdir); fi
|
||||||
|
rm -f $(DESTDIR)$(libdir)/$(STATICLIB)
|
||||||
cp $(STATICLIB) $(DESTDIR)$(libdir)
|
cp $(STATICLIB) $(DESTDIR)$(libdir)
|
||||||
chmod 644 $(DESTDIR)$(libdir)/$(STATICLIB)
|
chmod 644 $(DESTDIR)$(libdir)/$(STATICLIB)
|
||||||
-@($(RANLIB) $(DESTDIR)$(libdir)/libz.a || true) >/dev/null 2>&1
|
-@($(RANLIB) $(DESTDIR)$(libdir)/libz.a || true) >/dev/null 2>&1
|
||||||
-@if test -n "$(SHAREDLIBV)"; then \
|
-@if test -n "$(SHAREDLIBV)"; then \
|
||||||
|
rm -f $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBV); \
|
||||||
cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir); \
|
cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir); \
|
||||||
echo "cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)"; \
|
echo "cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)"; \
|
||||||
chmod 755 $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBV); \
|
chmod 755 $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBV); \
|
||||||
@@ -203,8 +324,10 @@ install-libs: $(LIBS)
|
|||||||
ln -s $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBM); \
|
ln -s $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBM); \
|
||||||
($(LDCONFIG) || true) >/dev/null 2>&1; \
|
($(LDCONFIG) || true) >/dev/null 2>&1; \
|
||||||
fi
|
fi
|
||||||
cp zlib.3 $(DESTDIR)$(man3dir)
|
rm -f $(DESTDIR)$(man3dir)/zlib.3
|
||||||
|
cp $(SRCDIR)zlib.3 $(DESTDIR)$(man3dir)
|
||||||
chmod 644 $(DESTDIR)$(man3dir)/zlib.3
|
chmod 644 $(DESTDIR)$(man3dir)/zlib.3
|
||||||
|
rm -f $(DESTDIR)$(pkgconfigdir)/zlib.pc
|
||||||
cp zlib.pc $(DESTDIR)$(pkgconfigdir)
|
cp zlib.pc $(DESTDIR)$(pkgconfigdir)
|
||||||
chmod 644 $(DESTDIR)$(pkgconfigdir)/zlib.pc
|
chmod 644 $(DESTDIR)$(pkgconfigdir)/zlib.pc
|
||||||
# The ranlib in install is needed on NeXTSTEP which checks file times
|
# The ranlib in install is needed on NeXTSTEP which checks file times
|
||||||
@@ -212,7 +335,8 @@ install-libs: $(LIBS)
|
|||||||
|
|
||||||
install: install-libs
|
install: install-libs
|
||||||
-@if [ ! -d $(DESTDIR)$(includedir) ]; then mkdir -p $(DESTDIR)$(includedir); fi
|
-@if [ ! -d $(DESTDIR)$(includedir) ]; then mkdir -p $(DESTDIR)$(includedir); fi
|
||||||
cp zlib.h zconf.h $(DESTDIR)$(includedir)
|
rm -f $(DESTDIR)$(includedir)/zlib.h $(DESTDIR)$(includedir)/zconf.h
|
||||||
|
cp $(SRCDIR)zlib.h zconf.h $(DESTDIR)$(includedir)
|
||||||
chmod 644 $(DESTDIR)$(includedir)/zlib.h $(DESTDIR)$(includedir)/zconf.h
|
chmod 644 $(DESTDIR)$(includedir)/zlib.h $(DESTDIR)$(includedir)/zconf.h
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
@@ -226,18 +350,18 @@ uninstall:
|
|||||||
|
|
||||||
docs: zlib.3.pdf
|
docs: zlib.3.pdf
|
||||||
|
|
||||||
zlib.3.pdf: zlib.3
|
zlib.3.pdf: $(SRCDIR)zlib.3
|
||||||
groff -mandoc -f H -T ps zlib.3 | ps2pdf - zlib.3.pdf
|
groff -mandoc -f H -T ps $(SRCDIR)zlib.3 | ps2pdf - $@
|
||||||
|
|
||||||
zconf.h.cmakein: zconf.h.in
|
zconf.h.cmakein: $(SRCDIR)zconf.h.in
|
||||||
-@ TEMPFILE=zconfh_$$; \
|
-@ TEMPFILE=zconfh_$$; \
|
||||||
echo "/#define ZCONF_H/ a\\\\\n#cmakedefine Z_PREFIX\\\\\n#cmakedefine Z_HAVE_UNISTD_H\n" >> $$TEMPFILE &&\
|
echo "/#define ZCONF_H/ a\\\\\n#cmakedefine Z_PREFIX\\\\\n#cmakedefine Z_HAVE_UNISTD_H\n" >> $$TEMPFILE &&\
|
||||||
sed -f $$TEMPFILE zconf.h.in > zconf.h.cmakein &&\
|
sed -f $$TEMPFILE $(SRCDIR)zconf.h.in > $@ &&\
|
||||||
touch -r zconf.h.in zconf.h.cmakein &&\
|
touch -r $(SRCDIR)zconf.h.in $@ &&\
|
||||||
rm $$TEMPFILE
|
rm $$TEMPFILE
|
||||||
|
|
||||||
zconf: zconf.h.in
|
zconf: $(SRCDIR)zconf.h.in
|
||||||
cp -p zconf.h.in zconf.h
|
cp -p $(SRCDIR)zconf.h.in zconf.h
|
||||||
|
|
||||||
mostlyclean: clean
|
mostlyclean: clean
|
||||||
clean:
|
clean:
|
||||||
@@ -255,34 +379,32 @@ maintainer-clean: distclean
|
|||||||
distclean: clean zconf zconf.h.cmakein docs
|
distclean: clean zconf zconf.h.cmakein docs
|
||||||
rm -f Makefile zlib.pc configure.log
|
rm -f Makefile zlib.pc configure.log
|
||||||
-@rm -f .DS_Store
|
-@rm -f .DS_Store
|
||||||
-@printf 'all:\n\t-@echo "Please use ./configure first. Thank you."\n' > Makefile
|
@if [ -f Makefile.in ]; then \
|
||||||
-@printf '\ndistclean:\n\tmake -f Makefile.in distclean\n' >> Makefile
|
printf 'all:\n\t-@echo "Please use ./configure first. Thank you."\n' > Makefile ; \
|
||||||
-@touch -r Makefile.in Makefile
|
printf '\ndistclean:\n\tmake -f Makefile.in distclean\n' >> Makefile ; \
|
||||||
|
touch -r $(SRCDIR)Makefile.in Makefile ; fi
|
||||||
|
@if [ ! -f zconf.h.in ]; then rm -f zconf.h zconf.h.cmakein ; fi
|
||||||
|
@if [ ! -f zlib.3 ]; then rm -f zlib.3.pdf ; fi
|
||||||
|
|
||||||
tags:
|
tags:
|
||||||
etags *.[ch]
|
etags $(SRCDIR)*.[ch]
|
||||||
|
|
||||||
depend:
|
adler32.o zutil.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h
|
||||||
makedepend -- $(CFLAGS) -- *.[ch]
|
gzclose.o gzlib.o gzread.o gzwrite.o: $(SRCDIR)zlib.h zconf.h $(SRCDIR)gzguts.h
|
||||||
|
compress.o example.o minigzip.o uncompr.o: $(SRCDIR)zlib.h zconf.h
|
||||||
|
crc32.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)crc32.h
|
||||||
|
deflate.o: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h
|
||||||
|
infback.o inflate.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h $(SRCDIR)inffixed.h
|
||||||
|
inffast.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h
|
||||||
|
inftrees.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h
|
||||||
|
trees.o: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)trees.h
|
||||||
|
|
||||||
# DO NOT DELETE THIS LINE -- make depend depends on it.
|
adler32.lo zutil.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h
|
||||||
|
gzclose.lo gzlib.lo gzread.lo gzwrite.lo: $(SRCDIR)zlib.h zconf.h $(SRCDIR)gzguts.h
|
||||||
adler32.o zutil.o: zutil.h zlib.h zconf.h
|
compress.lo example.lo minigzip.lo uncompr.lo: $(SRCDIR)zlib.h zconf.h
|
||||||
gzclose.o gzlib.o gzread.o gzwrite.o: zlib.h zconf.h gzguts.h
|
crc32.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)crc32.h
|
||||||
compress.o example.o minigzip.o uncompr.o: zlib.h zconf.h
|
deflate.lo: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h
|
||||||
crc32.o: zutil.h zlib.h zconf.h crc32.h
|
infback.lo inflate.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h $(SRCDIR)inffixed.h
|
||||||
deflate.o: deflate.h zutil.h zlib.h zconf.h
|
inffast.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h
|
||||||
infback.o inflate.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h inffixed.h
|
inftrees.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h
|
||||||
inffast.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h
|
trees.lo: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)trees.h
|
||||||
inftrees.o: zutil.h zlib.h zconf.h inftrees.h
|
|
||||||
trees.o: deflate.h zutil.h zlib.h zconf.h trees.h
|
|
||||||
|
|
||||||
adler32.lo zutil.lo: zutil.h zlib.h zconf.h
|
|
||||||
gzclose.lo gzlib.lo gzread.lo gzwrite.lo: zlib.h zconf.h gzguts.h
|
|
||||||
compress.lo example.lo minigzip.lo uncompr.lo: zlib.h zconf.h
|
|
||||||
crc32.lo: zutil.h zlib.h zconf.h crc32.h
|
|
||||||
deflate.lo: deflate.h zutil.h zlib.h zconf.h
|
|
||||||
infback.lo inflate.lo: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h inffixed.h
|
|
||||||
inffast.lo: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h
|
|
||||||
inftrees.lo: zutil.h zlib.h zconf.h inftrees.h
|
|
||||||
trees.lo: deflate.h zutil.h zlib.h zconf.h trees.h
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
ZLIB DATA COMPRESSION LIBRARY
|
ZLIB DATA COMPRESSION LIBRARY
|
||||||
|
|
||||||
zlib 1.2.8 is a general purpose data compression library. All the code is
|
zlib 1.2.11 is a general purpose data compression library. All the code is
|
||||||
thread safe. The data format used by the zlib library is described by RFCs
|
thread safe. The data format used by the zlib library is described by RFCs
|
||||||
(Request for Comments) 1950 to 1952 in the files
|
(Request for Comments) 1950 to 1952 in the files
|
||||||
http://tools.ietf.org/html/rfc1950 (zlib format), rfc1951 (deflate format) and
|
http://tools.ietf.org/html/rfc1950 (zlib format), rfc1951 (deflate format) and
|
||||||
@@ -31,7 +31,7 @@ Mark Nelson <markn@ieee.org> wrote an article about zlib for the Jan. 1997
|
|||||||
issue of Dr. Dobb's Journal; a copy of the article is available at
|
issue of Dr. Dobb's Journal; a copy of the article is available at
|
||||||
http://marknelson.us/1997/01/01/zlib-engine/ .
|
http://marknelson.us/1997/01/01/zlib-engine/ .
|
||||||
|
|
||||||
The changes made in version 1.2.8 are documented in the file ChangeLog.
|
The changes made in version 1.2.11 are documented in the file ChangeLog.
|
||||||
|
|
||||||
Unsupported third party contributions are provided in directory contrib/ .
|
Unsupported third party contributions are provided in directory contrib/ .
|
||||||
|
|
||||||
@@ -84,7 +84,7 @@ Acknowledgments:
|
|||||||
|
|
||||||
Copyright notice:
|
Copyright notice:
|
||||||
|
|
||||||
(C) 1995-2013 Jean-loup Gailly and Mark Adler
|
(C) 1995-2017 Jean-loup Gailly and Mark Adler
|
||||||
|
|
||||||
This software is provided 'as-is', without any express or implied
|
This software is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the authors be held liable for any damages
|
warranty. In no event will the authors be held liable for any damages
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* adler32.c -- compute the Adler-32 checksum of a data stream
|
/* adler32.c -- compute the Adler-32 checksum of a data stream
|
||||||
* Copyright (C) 1995-2011 Mark Adler
|
* Copyright (C) 1995-2011, 2016 Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -7,11 +7,9 @@
|
|||||||
|
|
||||||
#include "zutil.h"
|
#include "zutil.h"
|
||||||
|
|
||||||
#define local static
|
|
||||||
|
|
||||||
local uLong adler32_combine_ OF((uLong adler1, uLong adler2, z_off64_t len2));
|
local uLong adler32_combine_ OF((uLong adler1, uLong adler2, z_off64_t len2));
|
||||||
|
|
||||||
#define BASE 65521 /* largest prime smaller than 65536 */
|
#define BASE 65521U /* largest prime smaller than 65536 */
|
||||||
#define NMAX 5552
|
#define NMAX 5552
|
||||||
/* NMAX is the largest n such that 255n(n+1)/2 + (n+1)(BASE-1) <= 2^32-1 */
|
/* NMAX is the largest n such that 255n(n+1)/2 + (n+1)(BASE-1) <= 2^32-1 */
|
||||||
|
|
||||||
@@ -62,10 +60,10 @@ local uLong adler32_combine_ OF((uLong adler1, uLong adler2, z_off64_t len2));
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* ========================================================================= */
|
/* ========================================================================= */
|
||||||
uLong ZEXPORT adler32(adler, buf, len)
|
uLong ZEXPORT adler32_z(adler, buf, len)
|
||||||
uLong adler;
|
uLong adler;
|
||||||
const Bytef *buf;
|
const Bytef *buf;
|
||||||
uInt len;
|
z_size_t len;
|
||||||
{
|
{
|
||||||
unsigned long sum2;
|
unsigned long sum2;
|
||||||
unsigned n;
|
unsigned n;
|
||||||
@@ -132,6 +130,15 @@ uLong ZEXPORT adler32(adler, buf, len)
|
|||||||
return adler | (sum2 << 16);
|
return adler | (sum2 << 16);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ========================================================================= */
|
||||||
|
uLong ZEXPORT adler32(adler, buf, len)
|
||||||
|
uLong adler;
|
||||||
|
const Bytef *buf;
|
||||||
|
uInt len;
|
||||||
|
{
|
||||||
|
return adler32_z(adler, buf, len);
|
||||||
|
}
|
||||||
|
|
||||||
/* ========================================================================= */
|
/* ========================================================================= */
|
||||||
local uLong adler32_combine_(adler1, adler2, len2)
|
local uLong adler32_combine_(adler1, adler2, len2)
|
||||||
uLong adler1;
|
uLong adler1;
|
||||||
@@ -156,7 +163,7 @@ local uLong adler32_combine_(adler1, adler2, len2)
|
|||||||
sum2 += ((adler1 >> 16) & 0xffff) + ((adler2 >> 16) & 0xffff) + BASE - rem;
|
sum2 += ((adler1 >> 16) & 0xffff) + ((adler2 >> 16) & 0xffff) + BASE - rem;
|
||||||
if (sum1 >= BASE) sum1 -= BASE;
|
if (sum1 >= BASE) sum1 -= BASE;
|
||||||
if (sum1 >= BASE) sum1 -= BASE;
|
if (sum1 >= BASE) sum1 -= BASE;
|
||||||
if (sum2 >= (BASE << 1)) sum2 -= (BASE << 1);
|
if (sum2 >= ((unsigned long)BASE << 1)) sum2 -= ((unsigned long)BASE << 1);
|
||||||
if (sum2 >= BASE) sum2 -= BASE;
|
if (sum2 >= BASE) sum2 -= BASE;
|
||||||
return sum1 | (sum2 << 16);
|
return sum1 | (sum2 << 16);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,215 +0,0 @@
|
|||||||
STRPGMEXP PGMLVL(*CURRENT) SIGNATURE('ZLIB')
|
|
||||||
|
|
||||||
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
|
||||||
/* Version 1.1.3 entry points. */
|
|
||||||
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE ADLER32 ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("adler32")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE COMPRESS ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("compress")
|
|
||||||
EXPORT SYMBOL("compress2")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE CRC32 ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("crc32")
|
|
||||||
EXPORT SYMBOL("get_crc_table")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE DEFLATE ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("deflate")
|
|
||||||
EXPORT SYMBOL("deflateEnd")
|
|
||||||
EXPORT SYMBOL("deflateSetDictionary")
|
|
||||||
EXPORT SYMBOL("deflateCopy")
|
|
||||||
EXPORT SYMBOL("deflateReset")
|
|
||||||
EXPORT SYMBOL("deflateParams")
|
|
||||||
EXPORT SYMBOL("deflatePrime")
|
|
||||||
EXPORT SYMBOL("deflateInit_")
|
|
||||||
EXPORT SYMBOL("deflateInit2_")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE GZIO ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("gzopen")
|
|
||||||
EXPORT SYMBOL("gzdopen")
|
|
||||||
EXPORT SYMBOL("gzsetparams")
|
|
||||||
EXPORT SYMBOL("gzread")
|
|
||||||
EXPORT SYMBOL("gzwrite")
|
|
||||||
EXPORT SYMBOL("gzprintf")
|
|
||||||
EXPORT SYMBOL("gzputs")
|
|
||||||
EXPORT SYMBOL("gzgets")
|
|
||||||
EXPORT SYMBOL("gzputc")
|
|
||||||
EXPORT SYMBOL("gzgetc")
|
|
||||||
EXPORT SYMBOL("gzflush")
|
|
||||||
EXPORT SYMBOL("gzseek")
|
|
||||||
EXPORT SYMBOL("gzrewind")
|
|
||||||
EXPORT SYMBOL("gztell")
|
|
||||||
EXPORT SYMBOL("gzeof")
|
|
||||||
EXPORT SYMBOL("gzclose")
|
|
||||||
EXPORT SYMBOL("gzerror")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE INFLATE ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("inflate")
|
|
||||||
EXPORT SYMBOL("inflateEnd")
|
|
||||||
EXPORT SYMBOL("inflateSetDictionary")
|
|
||||||
EXPORT SYMBOL("inflateSync")
|
|
||||||
EXPORT SYMBOL("inflateReset")
|
|
||||||
EXPORT SYMBOL("inflateInit_")
|
|
||||||
EXPORT SYMBOL("inflateInit2_")
|
|
||||||
EXPORT SYMBOL("inflateSyncPoint")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE UNCOMPR ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("uncompress")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE ZUTIL ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("zlibVersion")
|
|
||||||
EXPORT SYMBOL("zError")
|
|
||||||
|
|
||||||
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
|
||||||
/* Version 1.2.1 additional entry points. */
|
|
||||||
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE COMPRESS ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("compressBound")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE DEFLATE ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("deflateBound")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE GZIO ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("gzungetc")
|
|
||||||
EXPORT SYMBOL("gzclearerr")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE INFBACK ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("inflateBack")
|
|
||||||
EXPORT SYMBOL("inflateBackEnd")
|
|
||||||
EXPORT SYMBOL("inflateBackInit_")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE INFLATE ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("inflateCopy")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE ZUTIL ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("zlibCompileFlags")
|
|
||||||
|
|
||||||
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
|
||||||
/* Version 1.2.5 additional entry points. */
|
|
||||||
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE ADLER32 ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("adler32_combine")
|
|
||||||
EXPORT SYMBOL("adler32_combine64")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE CRC32 ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("crc32_combine")
|
|
||||||
EXPORT SYMBOL("crc32_combine64")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE GZLIB ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("gzbuffer")
|
|
||||||
EXPORT SYMBOL("gzoffset")
|
|
||||||
EXPORT SYMBOL("gzoffset64")
|
|
||||||
EXPORT SYMBOL("gzopen64")
|
|
||||||
EXPORT SYMBOL("gzseek64")
|
|
||||||
EXPORT SYMBOL("gztell64")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE GZREAD ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("gzclose_r")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE GZWRITE ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("gzclose_w")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE INFLATE ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("inflateMark")
|
|
||||||
EXPORT SYMBOL("inflatePrime")
|
|
||||||
EXPORT SYMBOL("inflateReset2")
|
|
||||||
EXPORT SYMBOL("inflateUndermine")
|
|
||||||
|
|
||||||
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
|
||||||
/* Version 1.2.6 additional entry points. */
|
|
||||||
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE DEFLATE ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("deflateResetKeep")
|
|
||||||
EXPORT SYMBOL("deflatePending")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE GZWRITE ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("gzgetc_")
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE INFLATE ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("inflateResetKeep")
|
|
||||||
|
|
||||||
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
|
||||||
/* Version 1.2.8 additional entry points. */
|
|
||||||
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
|
||||||
|
|
||||||
/********************************************************************/
|
|
||||||
/* *MODULE INFLATE ZLIB 01/02/01 00:15:09 */
|
|
||||||
/********************************************************************/
|
|
||||||
|
|
||||||
EXPORT SYMBOL("inflateGetDictionary")
|
|
||||||
|
|
||||||
ENDPGMEXP
|
|
||||||
@@ -1,110 +0,0 @@
|
|||||||
/******************************************************************************/
|
|
||||||
/* */
|
|
||||||
/* ZLIB */
|
|
||||||
/* */
|
|
||||||
/* Compile sources into modules and link them into a service program. */
|
|
||||||
/* */
|
|
||||||
/******************************************************************************/
|
|
||||||
|
|
||||||
PGM
|
|
||||||
|
|
||||||
/* Configuration adjustable parameters. */
|
|
||||||
|
|
||||||
DCL VAR(&SRCLIB) TYPE(*CHAR) LEN(10) +
|
|
||||||
VALUE('ZLIB') /* Source library. */
|
|
||||||
DCL VAR(&SRCFILE) TYPE(*CHAR) LEN(10) +
|
|
||||||
VALUE('SOURCES') /* Source member file. */
|
|
||||||
DCL VAR(&CTLFILE) TYPE(*CHAR) LEN(10) +
|
|
||||||
VALUE('TOOLS') /* Control member file. */
|
|
||||||
|
|
||||||
DCL VAR(&MODLIB) TYPE(*CHAR) LEN(10) +
|
|
||||||
VALUE('ZLIB') /* Module library. */
|
|
||||||
|
|
||||||
DCL VAR(&SRVLIB) TYPE(*CHAR) LEN(10) +
|
|
||||||
VALUE('LGPL') /* Service program library. */
|
|
||||||
|
|
||||||
DCL VAR(&CFLAGS) TYPE(*CHAR) +
|
|
||||||
VALUE('OPTIMIZE(40)') /* Compile options. */
|
|
||||||
|
|
||||||
DCL VAR(&TGTRLS) TYPE(*CHAR) +
|
|
||||||
VALUE('V5R3M0') /* Target release. */
|
|
||||||
|
|
||||||
|
|
||||||
/* Working storage. */
|
|
||||||
|
|
||||||
DCL VAR(&CMDLEN) TYPE(*DEC) LEN(15 5) VALUE(300) /* Command length. */
|
|
||||||
DCL VAR(&CMD) TYPE(*CHAR) LEN(512)
|
|
||||||
DCL VAR(&FIXDCMD) TYPE(*CHAR) LEN(512)
|
|
||||||
|
|
||||||
|
|
||||||
/* Compile sources into modules. */
|
|
||||||
|
|
||||||
CHGVAR VAR(&FIXDCMD) VALUE('CRTCMOD' *BCAT &CFLAGS *BCAT +
|
|
||||||
'SYSIFCOPT(*IFS64IO)' *BCAT +
|
|
||||||
'DEFINE(''_LARGEFILE64_SOURCE''' *BCAT +
|
|
||||||
'''_LFS64_LARGEFILE=1'') TGTRLS(' *TCAT &TGTRLS *TCAT +
|
|
||||||
') SRCFILE(' *TCAT &SRCLIB *TCAT '/' *TCAT +
|
|
||||||
&SRCFILE *TCAT ') MODULE(' *TCAT &MODLIB *TCAT '/')
|
|
||||||
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'ADLER32)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'COMPRESS)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'CRC32)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'DEFLATE)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'GZCLOSE)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'GZLIB)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'GZREAD)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'GZWRITE)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'INFBACK)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'INFFAST)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'INFLATE)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'INFTREES)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'TREES)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'UNCOMPR)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
CHGVAR VAR(&CMD) VALUE(&FIXDCMD *TCAT 'ZUTIL)')
|
|
||||||
CALL PGM(QCMDEXC) PARM(&CMD &CMDLEN)
|
|
||||||
|
|
||||||
|
|
||||||
/* Link modules into a service program. */
|
|
||||||
|
|
||||||
CRTSRVPGM SRVPGM(&SRVLIB/ZLIB) +
|
|
||||||
MODULE(&MODLIB/ADLER32 &MODLIB/COMPRESS +
|
|
||||||
&MODLIB/CRC32 &MODLIB/DEFLATE +
|
|
||||||
&MODLIB/GZCLOSE &MODLIB/GZLIB +
|
|
||||||
&MODLIB/GZREAD &MODLIB/GZWRITE +
|
|
||||||
&MODLIB/INFBACK &MODLIB/INFFAST +
|
|
||||||
&MODLIB/INFLATE &MODLIB/INFTREES +
|
|
||||||
&MODLIB/TREES &MODLIB/UNCOMPR +
|
|
||||||
&MODLIB/ZUTIL) +
|
|
||||||
SRCFILE(&SRCLIB/&CTLFILE) SRCMBR(BNDSRC) +
|
|
||||||
TEXT('ZLIB 1.2.8') TGTRLS(&TGTRLS)
|
|
||||||
|
|
||||||
ENDPGM
|
|
||||||
@@ -1,115 +0,0 @@
|
|||||||
ZLIB version 1.2.8 for AS400 installation instructions
|
|
||||||
|
|
||||||
I) From an AS400 *SAVF file:
|
|
||||||
|
|
||||||
1) Unpacking archive to an AS400 save file
|
|
||||||
|
|
||||||
On the AS400:
|
|
||||||
|
|
||||||
_ Create the ZLIB AS400 library:
|
|
||||||
|
|
||||||
CRTLIB LIB(ZLIB) TYPE(*PROD) TEXT('ZLIB compression API library')
|
|
||||||
|
|
||||||
_ Create a work save file, for example:
|
|
||||||
|
|
||||||
CRTSAVF FILE(ZLIB/ZLIBSAVF)
|
|
||||||
|
|
||||||
On a PC connected to the target AS400:
|
|
||||||
|
|
||||||
_ Unpack the save file image to a PC file "ZLIBSAVF"
|
|
||||||
_ Upload this file into the save file on the AS400, for example
|
|
||||||
using ftp in BINARY mode.
|
|
||||||
|
|
||||||
|
|
||||||
2) Populating the ZLIB AS400 source library
|
|
||||||
|
|
||||||
On the AS400:
|
|
||||||
|
|
||||||
_ Extract the saved objects into the ZLIB AS400 library using:
|
|
||||||
|
|
||||||
RSTOBJ OBJ(*ALL) SAVLIB(ZLIB) DEV(*SAVF) SAVF(ZLIB/ZLIBSAVF) RSTLIB(ZLIB)
|
|
||||||
|
|
||||||
|
|
||||||
3) Customize installation:
|
|
||||||
|
|
||||||
_ Edit CL member ZLIB/TOOLS(COMPILE) and change parameters if needed,
|
|
||||||
according to the comments.
|
|
||||||
|
|
||||||
_ Compile this member with:
|
|
||||||
|
|
||||||
CRTCLPGM PGM(ZLIB/COMPILE) SRCFILE(ZLIB/TOOLS) SRCMBR(COMPILE)
|
|
||||||
|
|
||||||
|
|
||||||
4) Compile and generate the service program:
|
|
||||||
|
|
||||||
_ This can now be done by executing:
|
|
||||||
|
|
||||||
CALL PGM(ZLIB/COMPILE)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
II) From the original source distribution:
|
|
||||||
|
|
||||||
1) On the AS400, create the source library:
|
|
||||||
|
|
||||||
CRTLIB LIB(ZLIB) TYPE(*PROD) TEXT('ZLIB compression API library')
|
|
||||||
|
|
||||||
2) Create the source files:
|
|
||||||
|
|
||||||
CRTSRCPF FILE(ZLIB/SOURCES) RCDLEN(112) TEXT('ZLIB library modules')
|
|
||||||
CRTSRCPF FILE(ZLIB/H) RCDLEN(112) TEXT('ZLIB library includes')
|
|
||||||
CRTSRCPF FILE(ZLIB/TOOLS) RCDLEN(112) TEXT('ZLIB library control utilities')
|
|
||||||
|
|
||||||
3) From the machine hosting the distribution files, upload them (with
|
|
||||||
FTP in text mode, for example) according to the following table:
|
|
||||||
|
|
||||||
Original AS400 AS400 AS400 AS400
|
|
||||||
file file member type description
|
|
||||||
SOURCES Original ZLIB C subprogram sources
|
|
||||||
adler32.c ADLER32 C ZLIB - Compute the Adler-32 checksum of a dta strm
|
|
||||||
compress.c COMPRESS C ZLIB - Compress a memory buffer
|
|
||||||
crc32.c CRC32 C ZLIB - Compute the CRC-32 of a data stream
|
|
||||||
deflate.c DEFLATE C ZLIB - Compress data using the deflation algorithm
|
|
||||||
gzclose.c GZCLOSE C ZLIB - Close .gz files
|
|
||||||
gzlib.c GZLIB C ZLIB - Miscellaneous .gz files IO support
|
|
||||||
gzread.c GZREAD C ZLIB - Read .gz files
|
|
||||||
gzwrite.c GZWRITE C ZLIB - Write .gz files
|
|
||||||
infback.c INFBACK C ZLIB - Inflate using a callback interface
|
|
||||||
inffast.c INFFAST C ZLIB - Fast proc. literals & length/distance pairs
|
|
||||||
inflate.c INFLATE C ZLIB - Interface to inflate modules
|
|
||||||
inftrees.c INFTREES C ZLIB - Generate Huffman trees for efficient decode
|
|
||||||
trees.c TREES C ZLIB - Output deflated data using Huffman coding
|
|
||||||
uncompr.c UNCOMPR C ZLIB - Decompress a memory buffer
|
|
||||||
zutil.c ZUTIL C ZLIB - Target dependent utility functions
|
|
||||||
H Original ZLIB C and ILE/RPG include files
|
|
||||||
crc32.h CRC32 C ZLIB - CRC32 tables
|
|
||||||
deflate.h DEFLATE C ZLIB - Internal compression state
|
|
||||||
gzguts.h GZGUTS C ZLIB - Definitions for the gzclose module
|
|
||||||
inffast.h INFFAST C ZLIB - Header to use inffast.c
|
|
||||||
inffixed.h INFFIXED C ZLIB - Table for decoding fixed codes
|
|
||||||
inflate.h INFLATE C ZLIB - Internal inflate state definitions
|
|
||||||
inftrees.h INFTREES C ZLIB - Header to use inftrees.c
|
|
||||||
trees.h TREES C ZLIB - Created automatically with -DGEN_TREES_H
|
|
||||||
zconf.h ZCONF C ZLIB - Compression library configuration
|
|
||||||
zlib.h ZLIB C ZLIB - Compression library C user interface
|
|
||||||
as400/zlib.inc ZLIB.INC RPGLE ZLIB - Compression library ILE RPG user interface
|
|
||||||
zutil.h ZUTIL C ZLIB - Internal interface and configuration
|
|
||||||
TOOLS Building source software & AS/400 README
|
|
||||||
as400/bndsrc BNDSRC Entry point exportation list
|
|
||||||
as400/compile.clp COMPILE CLP Compile sources & generate service program
|
|
||||||
as400/readme.txt README TXT Installation instructions
|
|
||||||
|
|
||||||
4) Continue as in I)3).
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Notes: For AS400 ILE RPG programmers, a /copy member defining the ZLIB
|
|
||||||
API prototypes for ILE RPG can be found in ZLIB/H(ZLIB.INC).
|
|
||||||
Please read comments in this member for more information.
|
|
||||||
|
|
||||||
Remember that most foreign textual data are ASCII coded: this
|
|
||||||
implementation does not handle conversion from/to ASCII, so
|
|
||||||
text data code conversions must be done explicitely.
|
|
||||||
|
|
||||||
Mainly for the reason above, always open zipped files in binary mode.
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
/* compress.c -- compress a memory buffer
|
/* compress.c -- compress a memory buffer
|
||||||
* Copyright (C) 1995-2005 Jean-loup Gailly.
|
* Copyright (C) 1995-2005, 2014, 2016 Jean-loup Gailly, Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -28,16 +28,11 @@ int ZEXPORT compress2 (dest, destLen, source, sourceLen, level)
|
|||||||
{
|
{
|
||||||
z_stream stream;
|
z_stream stream;
|
||||||
int err;
|
int err;
|
||||||
|
const uInt max = (uInt)-1;
|
||||||
|
uLong left;
|
||||||
|
|
||||||
stream.next_in = (z_const Bytef *)source;
|
left = *destLen;
|
||||||
stream.avail_in = (uInt)sourceLen;
|
*destLen = 0;
|
||||||
#ifdef MAXSEG_64K
|
|
||||||
/* Check for source > 64K on 16-bit machine: */
|
|
||||||
if ((uLong)stream.avail_in != sourceLen) return Z_BUF_ERROR;
|
|
||||||
#endif
|
|
||||||
stream.next_out = dest;
|
|
||||||
stream.avail_out = (uInt)*destLen;
|
|
||||||
if ((uLong)stream.avail_out != *destLen) return Z_BUF_ERROR;
|
|
||||||
|
|
||||||
stream.zalloc = (alloc_func)0;
|
stream.zalloc = (alloc_func)0;
|
||||||
stream.zfree = (free_func)0;
|
stream.zfree = (free_func)0;
|
||||||
@@ -46,15 +41,26 @@ int ZEXPORT compress2 (dest, destLen, source, sourceLen, level)
|
|||||||
err = deflateInit(&stream, level);
|
err = deflateInit(&stream, level);
|
||||||
if (err != Z_OK) return err;
|
if (err != Z_OK) return err;
|
||||||
|
|
||||||
err = deflate(&stream, Z_FINISH);
|
stream.next_out = dest;
|
||||||
if (err != Z_STREAM_END) {
|
stream.avail_out = 0;
|
||||||
deflateEnd(&stream);
|
stream.next_in = (z_const Bytef *)source;
|
||||||
return err == Z_OK ? Z_BUF_ERROR : err;
|
stream.avail_in = 0;
|
||||||
}
|
|
||||||
*destLen = stream.total_out;
|
|
||||||
|
|
||||||
err = deflateEnd(&stream);
|
do {
|
||||||
return err;
|
if (stream.avail_out == 0) {
|
||||||
|
stream.avail_out = left > (uLong)max ? max : (uInt)left;
|
||||||
|
left -= stream.avail_out;
|
||||||
|
}
|
||||||
|
if (stream.avail_in == 0) {
|
||||||
|
stream.avail_in = sourceLen > (uLong)max ? max : (uInt)sourceLen;
|
||||||
|
sourceLen -= stream.avail_in;
|
||||||
|
}
|
||||||
|
err = deflate(&stream, sourceLen ? Z_NO_FLUSH : Z_FINISH);
|
||||||
|
} while (err == Z_OK);
|
||||||
|
|
||||||
|
*destLen = stream.total_out;
|
||||||
|
deflateEnd(&stream);
|
||||||
|
return err == Z_STREAM_END ? Z_OK : err;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ===========================================================================
|
/* ===========================================================================
|
||||||
|
|||||||
134
compat/zlib/configure
vendored
Normal file → Executable file
134
compat/zlib/configure
vendored
Normal file → Executable file
@@ -18,6 +18,18 @@ echo -------------------- >> configure.log
|
|||||||
echo $0 $* >> configure.log
|
echo $0 $* >> configure.log
|
||||||
date >> configure.log
|
date >> configure.log
|
||||||
|
|
||||||
|
# get source directory
|
||||||
|
SRCDIR=`dirname $0`
|
||||||
|
if test $SRCDIR = "."; then
|
||||||
|
ZINC=""
|
||||||
|
ZINCOUT="-I."
|
||||||
|
SRCDIR=""
|
||||||
|
else
|
||||||
|
ZINC='-include zconf.h'
|
||||||
|
ZINCOUT='-I. -I$(SRCDIR)'
|
||||||
|
SRCDIR="$SRCDIR/"
|
||||||
|
fi
|
||||||
|
|
||||||
# set command prefix for cross-compilation
|
# set command prefix for cross-compilation
|
||||||
if [ -n "${CHOST}" ]; then
|
if [ -n "${CHOST}" ]; then
|
||||||
uname="`echo "${CHOST}" | sed -e 's/^[^-]*-\([^-]*\)$/\1/' -e 's/^[^-]*-[^-]*-\([^-]*\)$/\1/' -e 's/^[^-]*-[^-]*-\([^-]*\)-.*$/\1/'`"
|
uname="`echo "${CHOST}" | sed -e 's/^[^-]*-\([^-]*\)$/\1/' -e 's/^[^-]*-[^-]*-\([^-]*\)$/\1/' -e 's/^[^-]*-[^-]*-\([^-]*\)-.*$/\1/'`"
|
||||||
@@ -28,10 +40,10 @@ fi
|
|||||||
STATICLIB=libz.a
|
STATICLIB=libz.a
|
||||||
|
|
||||||
# extract zlib version numbers from zlib.h
|
# extract zlib version numbers from zlib.h
|
||||||
VER=`sed -n -e '/VERSION "/s/.*"\(.*\)".*/\1/p' < zlib.h`
|
VER=`sed -n -e '/VERSION "/s/.*"\(.*\)".*/\1/p' < ${SRCDIR}zlib.h`
|
||||||
VER3=`sed -n -e '/VERSION "/s/.*"\([0-9]*\\.[0-9]*\\.[0-9]*\).*/\1/p' < zlib.h`
|
VER3=`sed -n -e '/VERSION "/s/.*"\([0-9]*\\.[0-9]*\\.[0-9]*\).*/\1/p' < ${SRCDIR}zlib.h`
|
||||||
VER2=`sed -n -e '/VERSION "/s/.*"\([0-9]*\\.[0-9]*\)\\..*/\1/p' < zlib.h`
|
VER2=`sed -n -e '/VERSION "/s/.*"\([0-9]*\\.[0-9]*\)\\..*/\1/p' < ${SRCDIR}zlib.h`
|
||||||
VER1=`sed -n -e '/VERSION "/s/.*"\([0-9]*\)\\..*/\1/p' < zlib.h`
|
VER1=`sed -n -e '/VERSION "/s/.*"\([0-9]*\)\\..*/\1/p' < ${SRCDIR}zlib.h`
|
||||||
|
|
||||||
# establish commands for library building
|
# establish commands for library building
|
||||||
if "${CROSS_PREFIX}ar" --version >/dev/null 2>/dev/null || test $? -lt 126; then
|
if "${CROSS_PREFIX}ar" --version >/dev/null 2>/dev/null || test $? -lt 126; then
|
||||||
@@ -73,6 +85,8 @@ zprefix=0
|
|||||||
zconst=0
|
zconst=0
|
||||||
build64=0
|
build64=0
|
||||||
gcc=0
|
gcc=0
|
||||||
|
warn=0
|
||||||
|
debug=0
|
||||||
old_cc="$CC"
|
old_cc="$CC"
|
||||||
old_cflags="$CFLAGS"
|
old_cflags="$CFLAGS"
|
||||||
OBJC='$(OBJZ) $(OBJG)'
|
OBJC='$(OBJZ) $(OBJG)'
|
||||||
@@ -121,6 +135,8 @@ case "$1" in
|
|||||||
--sysconfdir=*) echo "ignored option: --sysconfdir" | tee -a configure.log; shift ;;
|
--sysconfdir=*) echo "ignored option: --sysconfdir" | tee -a configure.log; shift ;;
|
||||||
--localstatedir=*) echo "ignored option: --localstatedir" | tee -a configure.log; shift ;;
|
--localstatedir=*) echo "ignored option: --localstatedir" | tee -a configure.log; shift ;;
|
||||||
-c* | --const) zconst=1; shift ;;
|
-c* | --const) zconst=1; shift ;;
|
||||||
|
-w* | --warn) warn=1; shift ;;
|
||||||
|
-d* | --debug) debug=1; shift ;;
|
||||||
*)
|
*)
|
||||||
echo "unknown option: $1" | tee -a configure.log
|
echo "unknown option: $1" | tee -a configure.log
|
||||||
echo "$0 --help for help" | tee -a configure.log
|
echo "$0 --help for help" | tee -a configure.log
|
||||||
@@ -159,34 +175,42 @@ case "$cc" in
|
|||||||
esac
|
esac
|
||||||
case `$cc -v 2>&1` in
|
case `$cc -v 2>&1` in
|
||||||
*gcc*) gcc=1 ;;
|
*gcc*) gcc=1 ;;
|
||||||
|
*clang*) gcc=1 ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
show $cc -c $test.c
|
show $cc -c $test.c
|
||||||
if test "$gcc" -eq 1 && ($cc -c $test.c) >> configure.log 2>&1; then
|
if test "$gcc" -eq 1 && ($cc -c $test.c) >> configure.log 2>&1; then
|
||||||
echo ... using gcc >> configure.log
|
echo ... using gcc >> configure.log
|
||||||
CC="$cc"
|
CC="$cc"
|
||||||
CFLAGS="${CFLAGS--O3} ${ARCHS}"
|
CFLAGS="${CFLAGS--O3}"
|
||||||
SFLAGS="${CFLAGS--O3} -fPIC"
|
SFLAGS="${CFLAGS--O3} -fPIC"
|
||||||
LDFLAGS="${LDFLAGS} ${ARCHS}"
|
if test "$ARCHS"; then
|
||||||
|
CFLAGS="${CFLAGS} ${ARCHS}"
|
||||||
|
LDFLAGS="${LDFLAGS} ${ARCHS}"
|
||||||
|
fi
|
||||||
if test $build64 -eq 1; then
|
if test $build64 -eq 1; then
|
||||||
CFLAGS="${CFLAGS} -m64"
|
CFLAGS="${CFLAGS} -m64"
|
||||||
SFLAGS="${SFLAGS} -m64"
|
SFLAGS="${SFLAGS} -m64"
|
||||||
fi
|
fi
|
||||||
if test "${ZLIBGCCWARN}" = "YES"; then
|
if test "$warn" -eq 1; then
|
||||||
if test "$zconst" -eq 1; then
|
if test "$zconst" -eq 1; then
|
||||||
CFLAGS="${CFLAGS} -Wall -Wextra -Wcast-qual -pedantic -DZLIB_CONST"
|
CFLAGS="${CFLAGS} -Wall -Wextra -Wcast-qual -pedantic -DZLIB_CONST"
|
||||||
else
|
else
|
||||||
CFLAGS="${CFLAGS} -Wall -Wextra -pedantic"
|
CFLAGS="${CFLAGS} -Wall -Wextra -pedantic"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
if test $debug -eq 1; then
|
||||||
|
CFLAGS="${CFLAGS} -DZLIB_DEBUG"
|
||||||
|
SFLAGS="${SFLAGS} -DZLIB_DEBUG"
|
||||||
|
fi
|
||||||
if test -z "$uname"; then
|
if test -z "$uname"; then
|
||||||
uname=`(uname -s || echo unknown) 2>/dev/null`
|
uname=`(uname -s || echo unknown) 2>/dev/null`
|
||||||
fi
|
fi
|
||||||
case "$uname" in
|
case "$uname" in
|
||||||
Linux* | linux* | GNU | GNU/* | solaris*)
|
Linux* | linux* | GNU | GNU/* | solaris*)
|
||||||
LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1,--version-script,zlib.map"} ;;
|
LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1,--version-script,${SRCDIR}zlib.map"} ;;
|
||||||
*BSD | *bsd* | DragonFly)
|
*BSD | *bsd* | DragonFly)
|
||||||
LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1,--version-script,zlib.map"}
|
LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1,--version-script,${SRCDIR}zlib.map"}
|
||||||
LDCONFIG="ldconfig -m" ;;
|
LDCONFIG="ldconfig -m" ;;
|
||||||
CYGWIN* | Cygwin* | cygwin* | OS/2*)
|
CYGWIN* | Cygwin* | cygwin* | OS/2*)
|
||||||
EXE='.exe' ;;
|
EXE='.exe' ;;
|
||||||
@@ -287,6 +311,9 @@ else
|
|||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
if test -n "$ZINC"; then
|
||||||
|
ZINC='-I- -I. -I$(SRCDIR)'
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
SunOS\ 4*) SFLAGS=${CFLAGS-"-O2 -PIC"}
|
SunOS\ 4*) SFLAGS=${CFLAGS-"-O2 -PIC"}
|
||||||
CFLAGS=${CFLAGS-"-O2"}
|
CFLAGS=${CFLAGS-"-O2"}
|
||||||
@@ -337,16 +364,16 @@ if ($CC -c $CFLAGS $test.c) 2>/dev/null; then
|
|||||||
}
|
}
|
||||||
echo - using any output from compiler to indicate an error >> configure.log
|
echo - using any output from compiler to indicate an error >> configure.log
|
||||||
else
|
else
|
||||||
try()
|
try()
|
||||||
{
|
{
|
||||||
show $*
|
show $*
|
||||||
( $* ) >> configure.log 2>&1
|
( $* ) >> configure.log 2>&1
|
||||||
ret=$?
|
ret=$?
|
||||||
if test $ret -ne 0; then
|
if test $ret -ne 0; then
|
||||||
echo "(exit code "$ret")" >> configure.log
|
echo "(exit code "$ret")" >> configure.log
|
||||||
fi
|
fi
|
||||||
return $ret
|
return $ret
|
||||||
}
|
}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
tryboth()
|
tryboth()
|
||||||
@@ -422,6 +449,65 @@ esac
|
|||||||
|
|
||||||
echo >> configure.log
|
echo >> configure.log
|
||||||
|
|
||||||
|
# check for size_t
|
||||||
|
cat > $test.c <<EOF
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
size_t dummy = 0;
|
||||||
|
EOF
|
||||||
|
if try $CC -c $CFLAGS $test.c; then
|
||||||
|
echo "Checking for size_t... Yes." | tee -a configure.log
|
||||||
|
need_sizet=0
|
||||||
|
else
|
||||||
|
echo "Checking for size_t... No." | tee -a configure.log
|
||||||
|
need_sizet=1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo >> configure.log
|
||||||
|
|
||||||
|
# find the size_t integer type, if needed
|
||||||
|
if test $need_sizet -eq 1; then
|
||||||
|
cat > $test.c <<EOF
|
||||||
|
long long dummy = 0;
|
||||||
|
EOF
|
||||||
|
if try $CC -c $CFLAGS $test.c; then
|
||||||
|
echo "Checking for long long... Yes." | tee -a configure.log
|
||||||
|
cat > $test.c <<EOF
|
||||||
|
#include <stdio.h>
|
||||||
|
int main(void) {
|
||||||
|
if (sizeof(void *) <= sizeof(int)) puts("int");
|
||||||
|
else if (sizeof(void *) <= sizeof(long)) puts("long");
|
||||||
|
else puts("z_longlong");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
else
|
||||||
|
echo "Checking for long long... No." | tee -a configure.log
|
||||||
|
cat > $test.c <<EOF
|
||||||
|
#include <stdio.h>
|
||||||
|
int main(void) {
|
||||||
|
if (sizeof(void *) <= sizeof(int)) puts("int");
|
||||||
|
else puts("long");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
if try $CC $CFLAGS -o $test $test.c; then
|
||||||
|
sizet=`./$test`
|
||||||
|
echo "Checking for a pointer-size integer type..." $sizet"." | tee -a configure.log
|
||||||
|
else
|
||||||
|
echo "Failed to find a pointer-size integer type." | tee -a configure.log
|
||||||
|
leave 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test $need_sizet -eq 1; then
|
||||||
|
CFLAGS="${CFLAGS} -DNO_SIZE_T=${sizet}"
|
||||||
|
SFLAGS="${SFLAGS} -DNO_SIZE_T=${sizet}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo >> configure.log
|
||||||
|
|
||||||
# check for large file support, and if none, check for fseeko()
|
# check for large file support, and if none, check for fseeko()
|
||||||
cat > $test.c <<EOF
|
cat > $test.c <<EOF
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
@@ -470,7 +556,7 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# copy clean zconf.h for subsequent edits
|
# copy clean zconf.h for subsequent edits
|
||||||
cp -p zconf.h.in zconf.h
|
cp -p ${SRCDIR}zconf.h.in zconf.h
|
||||||
|
|
||||||
echo >> configure.log
|
echo >> configure.log
|
||||||
|
|
||||||
@@ -764,6 +850,7 @@ echo STATICLIB = $STATICLIB >> configure.log
|
|||||||
echo TEST = $TEST >> configure.log
|
echo TEST = $TEST >> configure.log
|
||||||
echo VER = $VER >> configure.log
|
echo VER = $VER >> configure.log
|
||||||
echo Z_U4 = $Z_U4 >> configure.log
|
echo Z_U4 = $Z_U4 >> configure.log
|
||||||
|
echo SRCDIR = $SRCDIR >> configure.log
|
||||||
echo exec_prefix = $exec_prefix >> configure.log
|
echo exec_prefix = $exec_prefix >> configure.log
|
||||||
echo includedir = $includedir >> configure.log
|
echo includedir = $includedir >> configure.log
|
||||||
echo libdir = $libdir >> configure.log
|
echo libdir = $libdir >> configure.log
|
||||||
@@ -773,7 +860,7 @@ echo sharedlibdir = $sharedlibdir >> configure.log
|
|||||||
echo uname = $uname >> configure.log
|
echo uname = $uname >> configure.log
|
||||||
|
|
||||||
# udpate Makefile with the configure results
|
# udpate Makefile with the configure results
|
||||||
sed < Makefile.in "
|
sed < ${SRCDIR}Makefile.in "
|
||||||
/^CC *=/s#=.*#=$CC#
|
/^CC *=/s#=.*#=$CC#
|
||||||
/^CFLAGS *=/s#=.*#=$CFLAGS#
|
/^CFLAGS *=/s#=.*#=$CFLAGS#
|
||||||
/^SFLAGS *=/s#=.*#=$SFLAGS#
|
/^SFLAGS *=/s#=.*#=$SFLAGS#
|
||||||
@@ -790,6 +877,9 @@ sed < Makefile.in "
|
|||||||
/^LDCONFIG *=/s#=.*#=$LDCONFIG#
|
/^LDCONFIG *=/s#=.*#=$LDCONFIG#
|
||||||
/^LDSHAREDLIBC *=/s#=.*#=$LDSHAREDLIBC#
|
/^LDSHAREDLIBC *=/s#=.*#=$LDSHAREDLIBC#
|
||||||
/^EXE *=/s#=.*#=$EXE#
|
/^EXE *=/s#=.*#=$EXE#
|
||||||
|
/^SRCDIR *=/s#=.*#=$SRCDIR#
|
||||||
|
/^ZINC *=/s#=.*#=$ZINC#
|
||||||
|
/^ZINCOUT *=/s#=.*#=$ZINCOUT#
|
||||||
/^prefix *=/s#=.*#=$prefix#
|
/^prefix *=/s#=.*#=$prefix#
|
||||||
/^exec_prefix *=/s#=.*#=$exec_prefix#
|
/^exec_prefix *=/s#=.*#=$exec_prefix#
|
||||||
/^libdir *=/s#=.*#=$libdir#
|
/^libdir *=/s#=.*#=$libdir#
|
||||||
@@ -803,7 +893,7 @@ sed < Makefile.in "
|
|||||||
" > Makefile
|
" > Makefile
|
||||||
|
|
||||||
# create zlib.pc with the configure results
|
# create zlib.pc with the configure results
|
||||||
sed < zlib.pc.in "
|
sed < ${SRCDIR}zlib.pc.in "
|
||||||
/^CC *=/s#=.*#=$CC#
|
/^CC *=/s#=.*#=$CC#
|
||||||
/^CFLAGS *=/s#=.*#=$CFLAGS#
|
/^CFLAGS *=/s#=.*#=$CFLAGS#
|
||||||
/^CPP *=/s#=.*#=$CPP#
|
/^CPP *=/s#=.*#=$CPP#
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ inflate86/ by Chris Anderson <christop@charm.net>
|
|||||||
iostream/ by Kevin Ruland <kevin@rodin.wustl.edu>
|
iostream/ by Kevin Ruland <kevin@rodin.wustl.edu>
|
||||||
A C++ I/O streams interface to the zlib gz* functions
|
A C++ I/O streams interface to the zlib gz* functions
|
||||||
|
|
||||||
iostream2/ by Tyge L<EFBFBD>vset <Tyge.Lovset@cmr.no>
|
iostream2/ by Tyge Løvset <Tyge.Lovset@cmr.no>
|
||||||
Another C++ I/O streams interface
|
Another C++ I/O streams interface
|
||||||
|
|
||||||
iostream3/ by Ludwig Schwardt <schwardt@sun.ac.za>
|
iostream3/ by Ludwig Schwardt <schwardt@sun.ac.za>
|
||||||
@@ -58,7 +58,7 @@ masmx86/ by Gilles Vollant <info@winimage.com>
|
|||||||
minizip/ by Gilles Vollant <info@winimage.com>
|
minizip/ by Gilles Vollant <info@winimage.com>
|
||||||
Mini zip and unzip based on zlib
|
Mini zip and unzip based on zlib
|
||||||
Includes Zip64 support by Mathias Svensson <mathias@result42.com>
|
Includes Zip64 support by Mathias Svensson <mathias@result42.com>
|
||||||
See http://www.winimage.com/zLibDll/unzip.html
|
See http://www.winimage.com/zLibDll/minizip.html
|
||||||
|
|
||||||
pascal/ by Bob Dellaca <bobdl@xtra.co.nz> et al.
|
pascal/ by Bob Dellaca <bobdl@xtra.co.nz> et al.
|
||||||
Support for Pascal
|
Support for Pascal
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ package ZLib.Streams is
|
|||||||
Mode : in Flush_Mode := Sync_Flush);
|
Mode : in Flush_Mode := Sync_Flush);
|
||||||
-- Flush the written data to the back stream,
|
-- Flush the written data to the back stream,
|
||||||
-- all data placed to the compressor is flushing to the Back stream.
|
-- all data placed to the compressor is flushing to the Back stream.
|
||||||
-- Should not be used untill necessary, becouse it is decreasing
|
-- Should not be used until necessary, because it is decreasing
|
||||||
-- compression.
|
-- compression.
|
||||||
|
|
||||||
function Read_Total_In (Stream : in Stream_Type) return Count;
|
function Read_Total_In (Stream : in Stream_Type) return Count;
|
||||||
@@ -97,13 +97,13 @@ private
|
|||||||
Rest_Last : Stream_Element_Offset;
|
Rest_Last : Stream_Element_Offset;
|
||||||
-- Buffer for Read operation.
|
-- Buffer for Read operation.
|
||||||
-- We need to have this buffer in the record
|
-- We need to have this buffer in the record
|
||||||
-- becouse not all read data from back stream
|
-- because not all read data from back stream
|
||||||
-- could be processed during the read operation.
|
-- could be processed during the read operation.
|
||||||
|
|
||||||
Buffer_Size : Stream_Element_Offset;
|
Buffer_Size : Stream_Element_Offset;
|
||||||
-- Buffer size for write operation.
|
-- Buffer size for write operation.
|
||||||
-- We do not need to have this buffer
|
-- We do not need to have this buffer
|
||||||
-- in the record becouse all data could be
|
-- in the record because all data could be
|
||||||
-- processed in the write operation.
|
-- processed in the write operation.
|
||||||
|
|
||||||
Back : Stream_Access;
|
Back : Stream_Access;
|
||||||
|
|||||||
@@ -436,7 +436,7 @@ private
|
|||||||
|
|
||||||
pragma Import (C, inflateBackInit, "inflateBackInit_");
|
pragma Import (C, inflateBackInit, "inflateBackInit_");
|
||||||
|
|
||||||
-- I stopped binding the inflateBack routines, becouse realize that
|
-- I stopped binding the inflateBack routines, because realize that
|
||||||
-- it does not support zlib and gzip headers for now, and have no
|
-- it does not support zlib and gzip headers for now, and have no
|
||||||
-- symmetric deflateBack routines.
|
-- symmetric deflateBack routines.
|
||||||
-- ZLib-Ada is symmetric regarding deflate/inflate data transformation
|
-- ZLib-Ada is symmetric regarding deflate/inflate data transformation
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
/* blast.c
|
/* blast.c
|
||||||
* Copyright (C) 2003, 2012 Mark Adler
|
* Copyright (C) 2003, 2012, 2013 Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in blast.h
|
* For conditions of distribution and use, see copyright notice in blast.h
|
||||||
* version 1.2, 24 Oct 2012
|
* version 1.3, 24 Aug 2013
|
||||||
*
|
*
|
||||||
* blast.c decompresses data compressed by the PKWare Compression Library.
|
* blast.c decompresses data compressed by the PKWare Compression Library.
|
||||||
* This function provides functionality similar to the explode() function of
|
* This function provides functionality similar to the explode() function of
|
||||||
@@ -24,8 +24,12 @@
|
|||||||
* 1.1 16 Feb 2003 - Fixed distance check for > 4 GB uncompressed data
|
* 1.1 16 Feb 2003 - Fixed distance check for > 4 GB uncompressed data
|
||||||
* 1.2 24 Oct 2012 - Add note about using binary mode in stdio
|
* 1.2 24 Oct 2012 - Add note about using binary mode in stdio
|
||||||
* - Fix comparisons of differently signed integers
|
* - Fix comparisons of differently signed integers
|
||||||
|
* 1.3 24 Aug 2013 - Return unused input from blast()
|
||||||
|
* - Fix test code to correctly report unused input
|
||||||
|
* - Enable the provision of initial input to blast()
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <stddef.h> /* for NULL */
|
||||||
#include <setjmp.h> /* for setjmp(), longjmp(), and jmp_buf */
|
#include <setjmp.h> /* for setjmp(), longjmp(), and jmp_buf */
|
||||||
#include "blast.h" /* prototype for blast() */
|
#include "blast.h" /* prototype for blast() */
|
||||||
|
|
||||||
@@ -256,7 +260,7 @@ local int construct(struct huffman *h, const unsigned char *rep, int n)
|
|||||||
* next, 0 for literals, 1 for length/distance.
|
* next, 0 for literals, 1 for length/distance.
|
||||||
*
|
*
|
||||||
* - If literals are uncoded, then the next eight bits are the literal, in the
|
* - If literals are uncoded, then the next eight bits are the literal, in the
|
||||||
* normal bit order in th stream, i.e. no bit-reversal is needed. Similarly,
|
* normal bit order in the stream, i.e. no bit-reversal is needed. Similarly,
|
||||||
* no bit reversal is needed for either the length extra bits or the distance
|
* no bit reversal is needed for either the length extra bits or the distance
|
||||||
* extra bits.
|
* extra bits.
|
||||||
*
|
*
|
||||||
@@ -376,7 +380,8 @@ local int decomp(struct state *s)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* See comments in blast.h */
|
/* See comments in blast.h */
|
||||||
int blast(blast_in infun, void *inhow, blast_out outfun, void *outhow)
|
int blast(blast_in infun, void *inhow, blast_out outfun, void *outhow,
|
||||||
|
unsigned *left, unsigned char **in)
|
||||||
{
|
{
|
||||||
struct state s; /* input/output state */
|
struct state s; /* input/output state */
|
||||||
int err; /* return value */
|
int err; /* return value */
|
||||||
@@ -384,7 +389,12 @@ int blast(blast_in infun, void *inhow, blast_out outfun, void *outhow)
|
|||||||
/* initialize input state */
|
/* initialize input state */
|
||||||
s.infun = infun;
|
s.infun = infun;
|
||||||
s.inhow = inhow;
|
s.inhow = inhow;
|
||||||
s.left = 0;
|
if (left != NULL && *left) {
|
||||||
|
s.left = *left;
|
||||||
|
s.in = *in;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
s.left = 0;
|
||||||
s.bitbuf = 0;
|
s.bitbuf = 0;
|
||||||
s.bitcnt = 0;
|
s.bitcnt = 0;
|
||||||
|
|
||||||
@@ -400,6 +410,12 @@ int blast(blast_in infun, void *inhow, blast_out outfun, void *outhow)
|
|||||||
else
|
else
|
||||||
err = decomp(&s); /* decompress */
|
err = decomp(&s); /* decompress */
|
||||||
|
|
||||||
|
/* return unused input */
|
||||||
|
if (left != NULL)
|
||||||
|
*left = s.left;
|
||||||
|
if (in != NULL)
|
||||||
|
*in = s.left ? s.in : NULL;
|
||||||
|
|
||||||
/* write any leftover output and update the error code if needed */
|
/* write any leftover output and update the error code if needed */
|
||||||
if (err != 1 && s.next && s.outfun(s.outhow, s.out, s.next) && err == 0)
|
if (err != 1 && s.next && s.outfun(s.outhow, s.out, s.next) && err == 0)
|
||||||
err = 1;
|
err = 1;
|
||||||
@@ -429,16 +445,20 @@ local int outf(void *how, unsigned char *buf, unsigned len)
|
|||||||
/* Decompress a PKWare Compression Library stream from stdin to stdout */
|
/* Decompress a PKWare Compression Library stream from stdin to stdout */
|
||||||
int main(void)
|
int main(void)
|
||||||
{
|
{
|
||||||
int ret, n;
|
int ret;
|
||||||
|
unsigned left;
|
||||||
|
|
||||||
/* decompress to stdout */
|
/* decompress to stdout */
|
||||||
ret = blast(inf, stdin, outf, stdout);
|
left = 0;
|
||||||
if (ret != 0) fprintf(stderr, "blast error: %d\n", ret);
|
ret = blast(inf, stdin, outf, stdout, &left, NULL);
|
||||||
|
if (ret != 0)
|
||||||
|
fprintf(stderr, "blast error: %d\n", ret);
|
||||||
|
|
||||||
/* see if there are any leftover bytes */
|
/* count any leftover bytes */
|
||||||
n = 0;
|
while (getchar() != EOF)
|
||||||
while (getchar() != EOF) n++;
|
left++;
|
||||||
if (n) fprintf(stderr, "blast warning: %d unused bytes of input\n", n);
|
if (left)
|
||||||
|
fprintf(stderr, "blast warning: %u unused bytes of input\n", left);
|
||||||
|
|
||||||
/* return blast() error code */
|
/* return blast() error code */
|
||||||
return ret;
|
return ret;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
/* blast.h -- interface for blast.c
|
/* blast.h -- interface for blast.c
|
||||||
Copyright (C) 2003, 2012 Mark Adler
|
Copyright (C) 2003, 2012, 2013 Mark Adler
|
||||||
version 1.2, 24 Oct 2012
|
version 1.3, 24 Aug 2013
|
||||||
|
|
||||||
This software is provided 'as-is', without any express or implied
|
This software is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the author be held liable for any damages
|
warranty. In no event will the author be held liable for any damages
|
||||||
@@ -42,7 +42,8 @@ typedef int (*blast_out)(void *how, unsigned char *buf, unsigned len);
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
int blast(blast_in infun, void *inhow, blast_out outfun, void *outhow);
|
int blast(blast_in infun, void *inhow, blast_out outfun, void *outhow,
|
||||||
|
unsigned *left, unsigned char **in);
|
||||||
/* Decompress input to output using the provided infun() and outfun() calls.
|
/* Decompress input to output using the provided infun() and outfun() calls.
|
||||||
* On success, the return value of blast() is zero. If there is an error in
|
* On success, the return value of blast() is zero. If there is an error in
|
||||||
* the source data, i.e. it is not in the proper format, then a negative value
|
* the source data, i.e. it is not in the proper format, then a negative value
|
||||||
@@ -55,12 +56,19 @@ int blast(blast_in infun, void *inhow, blast_out outfun, void *outhow);
|
|||||||
* an input error. (blast() only asks for input if it needs it.) inhow is for
|
* an input error. (blast() only asks for input if it needs it.) inhow is for
|
||||||
* use by the application to pass an input descriptor to infun(), if desired.
|
* use by the application to pass an input descriptor to infun(), if desired.
|
||||||
*
|
*
|
||||||
|
* If left and in are not NULL and *left is not zero when blast() is called,
|
||||||
|
* then the *left bytes are *in are consumed for input before infun() is used.
|
||||||
|
*
|
||||||
* The output function is invoked: err = outfun(how, buf, len), where the bytes
|
* The output function is invoked: err = outfun(how, buf, len), where the bytes
|
||||||
* to be written are buf[0..len-1]. If err is not zero, then blast() returns
|
* to be written are buf[0..len-1]. If err is not zero, then blast() returns
|
||||||
* with an output error. outfun() is always called with len <= 4096. outhow
|
* with an output error. outfun() is always called with len <= 4096. outhow
|
||||||
* is for use by the application to pass an output descriptor to outfun(), if
|
* is for use by the application to pass an output descriptor to outfun(), if
|
||||||
* desired.
|
* desired.
|
||||||
*
|
*
|
||||||
|
* If there is any unused input, *left is set to the number of bytes that were
|
||||||
|
* read and *in points to them. Otherwise *left is set to zero and *in is set
|
||||||
|
* to NULL. If left or in are NULL, then they are not set.
|
||||||
|
*
|
||||||
* The return codes are:
|
* The return codes are:
|
||||||
*
|
*
|
||||||
* 2: ran out of input before completing decompression
|
* 2: ran out of input before completing decompression
|
||||||
|
|||||||
@@ -152,7 +152,7 @@ procedure DecompressToUserBuf(const InBuf: Pointer; InBytes: Integer;
|
|||||||
const OutBuf: Pointer; BufSize: Integer);
|
const OutBuf: Pointer; BufSize: Integer);
|
||||||
|
|
||||||
const
|
const
|
||||||
zlib_version = '1.2.8';
|
zlib_version = '1.2.11';
|
||||||
|
|
||||||
type
|
type
|
||||||
EZlibError = class(Exception);
|
EZlibError = class(Exception);
|
||||||
|
|||||||
@@ -156,7 +156,7 @@ namespace DotZLibTests
|
|||||||
public void Info_Version()
|
public void Info_Version()
|
||||||
{
|
{
|
||||||
Info info = new Info();
|
Info info = new Info();
|
||||||
Assert.AreEqual("1.2.8", Info.Version);
|
Assert.AreEqual("1.2.11", Info.Version);
|
||||||
Assert.AreEqual(32, info.SizeOfUInt);
|
Assert.AreEqual(32, info.SizeOfUInt);
|
||||||
Assert.AreEqual(32, info.SizeOfULong);
|
Assert.AreEqual(32, info.SizeOfULong);
|
||||||
Assert.AreEqual(32, info.SizeOfPointer);
|
Assert.AreEqual(32, info.SizeOfPointer);
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* inftree9.c -- generate Huffman trees for efficient decoding
|
/* inftree9.c -- generate Huffman trees for efficient decoding
|
||||||
* Copyright (C) 1995-2013 Mark Adler
|
* Copyright (C) 1995-2017 Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -9,7 +9,7 @@
|
|||||||
#define MAXBITS 15
|
#define MAXBITS 15
|
||||||
|
|
||||||
const char inflate9_copyright[] =
|
const char inflate9_copyright[] =
|
||||||
" inflate9 1.2.8 Copyright 1995-2013 Mark Adler ";
|
" inflate9 1.2.11 Copyright 1995-2017 Mark Adler ";
|
||||||
/*
|
/*
|
||||||
If you use the zlib library in a product, an acknowledgment is welcome
|
If you use the zlib library in a product, an acknowledgment is welcome
|
||||||
in the documentation of your product. If for some reason you cannot
|
in the documentation of your product. If for some reason you cannot
|
||||||
@@ -64,7 +64,7 @@ unsigned short FAR *work;
|
|||||||
static const unsigned short lext[31] = { /* Length codes 257..285 extra */
|
static const unsigned short lext[31] = { /* Length codes 257..285 extra */
|
||||||
128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 129, 129,
|
128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 129, 129,
|
||||||
130, 130, 130, 130, 131, 131, 131, 131, 132, 132, 132, 132,
|
130, 130, 130, 130, 131, 131, 131, 131, 132, 132, 132, 132,
|
||||||
133, 133, 133, 133, 144, 72, 78};
|
133, 133, 133, 133, 144, 77, 202};
|
||||||
static const unsigned short dbase[32] = { /* Distance codes 0..31 base */
|
static const unsigned short dbase[32] = { /* Distance codes 0..31 base */
|
||||||
1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49,
|
1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49,
|
||||||
65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073,
|
65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# -*- Autoconf -*-
|
# -*- Autoconf -*-
|
||||||
# Process this file with autoconf to produce a configure script.
|
# Process this file with autoconf to produce a configure script.
|
||||||
|
|
||||||
AC_INIT([minizip], [1.2.8], [bugzilla.redhat.com])
|
AC_INIT([minizip], [1.2.11], [bugzilla.redhat.com])
|
||||||
AC_CONFIG_SRCDIR([minizip.c])
|
AC_CONFIG_SRCDIR([minizip.c])
|
||||||
AM_INIT_AUTOMAKE([foreign])
|
AM_INIT_AUTOMAKE([foreign])
|
||||||
LT_INIT
|
LT_INIT
|
||||||
|
|||||||
@@ -26,8 +26,9 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
// see Include/shared/winapifamily.h in the Windows Kit
|
||||||
#if defined(WINAPI_FAMILY_PARTITION) && (!(defined(IOWIN32_USING_WINRT_API)))
|
#if defined(WINAPI_FAMILY_PARTITION) && (!(defined(IOWIN32_USING_WINRT_API)))
|
||||||
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
|
#if WINAPI_FAMILY_ONE_PARTITION(WINAPI_FAMILY, WINAPI_PARTITION_APP)
|
||||||
#define IOWIN32_USING_WINRT_API 1
|
#define IOWIN32_USING_WINRT_API 1
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
@@ -243,7 +244,7 @@ static BOOL MySetFilePointerEx(HANDLE hFile, LARGE_INTEGER pos, LARGE_INTEGER *n
|
|||||||
return SetFilePointerEx(hFile, pos, newPos, dwMoveMethod);
|
return SetFilePointerEx(hFile, pos, newPos, dwMoveMethod);
|
||||||
#else
|
#else
|
||||||
LONG lHigh = pos.HighPart;
|
LONG lHigh = pos.HighPart;
|
||||||
DWORD dwNewPos = SetFilePointer(hFile, pos.LowPart, &lHigh, FILE_CURRENT);
|
DWORD dwNewPos = SetFilePointer(hFile, pos.LowPart, &lHigh, dwMoveMethod);
|
||||||
BOOL fOk = TRUE;
|
BOOL fOk = TRUE;
|
||||||
if (dwNewPos == 0xFFFFFFFF)
|
if (dwNewPos == 0xFFFFFFFF)
|
||||||
if (GetLastError() != NO_ERROR)
|
if (GetLastError() != NO_ERROR)
|
||||||
@@ -370,7 +371,7 @@ long ZCALLBACK win32_seek64_file_func (voidpf opaque, voidpf stream,ZPOS64_T off
|
|||||||
{
|
{
|
||||||
LARGE_INTEGER pos;
|
LARGE_INTEGER pos;
|
||||||
pos.QuadPart = offset;
|
pos.QuadPart = offset;
|
||||||
if (!MySetFilePointerEx(hFile, pos, NULL, FILE_CURRENT))
|
if (!MySetFilePointerEx(hFile, pos, NULL, dwMoveMethod))
|
||||||
{
|
{
|
||||||
DWORD dwErr = GetLastError();
|
DWORD dwErr = GetLastError();
|
||||||
((WIN32FILE_IOWIN*)stream) -> error=(int)dwErr;
|
((WIN32FILE_IOWIN*)stream) -> error=(int)dwErr;
|
||||||
|
|||||||
@@ -200,7 +200,7 @@ typedef struct
|
|||||||
/* ===========================================================================
|
/* ===========================================================================
|
||||||
Read a byte from a gz_stream; update next_in and avail_in. Return EOF
|
Read a byte from a gz_stream; update next_in and avail_in. Return EOF
|
||||||
for end of file.
|
for end of file.
|
||||||
IN assertion: the stream s has been sucessfully opened for reading.
|
IN assertion: the stream s has been successfully opened for reading.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
Oct-2009 - Mathias Svensson - Did some code cleanup and refactoring to get better overview of some functions.
|
Oct-2009 - Mathias Svensson - Did some code cleanup and refactoring to get better overview of some functions.
|
||||||
Oct-2009 - Mathias Svensson - Added zipRemoveExtraInfoBlock to strip extra field data from its ZIP64 data
|
Oct-2009 - Mathias Svensson - Added zipRemoveExtraInfoBlock to strip extra field data from its ZIP64 data
|
||||||
It is used when recreting zip archive with RAW when deleting items from a zip.
|
It is used when recreting zip archive with RAW when deleting items from a zip.
|
||||||
ZIP64 data is automaticly added to items that needs it, and existing ZIP64 data need to be removed.
|
ZIP64 data is automatically added to items that needs it, and existing ZIP64 data need to be removed.
|
||||||
Oct-2009 - Mathias Svensson - Added support for BZIP2 as compression mode (bzip2 lib is required)
|
Oct-2009 - Mathias Svensson - Added support for BZIP2 as compression mode (bzip2 lib is required)
|
||||||
Jan-2010 - back to unzip and minizip 1.0 name scheme, with compatibility layer
|
Jan-2010 - back to unzip and minizip 1.0 name scheme, with compatibility layer
|
||||||
|
|
||||||
@@ -116,7 +116,7 @@ typedef struct linkedlist_datablock_internal_s
|
|||||||
struct linkedlist_datablock_internal_s* next_datablock;
|
struct linkedlist_datablock_internal_s* next_datablock;
|
||||||
uLong avail_in_this_block;
|
uLong avail_in_this_block;
|
||||||
uLong filled_in_this_block;
|
uLong filled_in_this_block;
|
||||||
uLong unused; /* for future use and alignement */
|
uLong unused; /* for future use and alignment */
|
||||||
unsigned char data[SIZEDATA_INDATABLOCK];
|
unsigned char data[SIZEDATA_INDATABLOCK];
|
||||||
} linkedlist_datablock_internal;
|
} linkedlist_datablock_internal;
|
||||||
|
|
||||||
@@ -171,7 +171,7 @@ typedef struct
|
|||||||
curfile64_info ci; /* info on the file curretly writing */
|
curfile64_info ci; /* info on the file curretly writing */
|
||||||
|
|
||||||
ZPOS64_T begin_pos; /* position of the beginning of the zipfile */
|
ZPOS64_T begin_pos; /* position of the beginning of the zipfile */
|
||||||
ZPOS64_T add_position_when_writting_offset;
|
ZPOS64_T add_position_when_writing_offset;
|
||||||
ZPOS64_T number_entry;
|
ZPOS64_T number_entry;
|
||||||
|
|
||||||
#ifndef NO_ADDFILEINEXISTINGZIP
|
#ifndef NO_ADDFILEINEXISTINGZIP
|
||||||
@@ -807,7 +807,7 @@ int LoadCentralDirectoryRecord(zip64_internal* pziinit)
|
|||||||
}
|
}
|
||||||
|
|
||||||
byte_before_the_zipfile = central_pos - (offset_central_dir+size_central_dir);
|
byte_before_the_zipfile = central_pos - (offset_central_dir+size_central_dir);
|
||||||
pziinit->add_position_when_writting_offset = byte_before_the_zipfile;
|
pziinit->add_position_when_writing_offset = byte_before_the_zipfile;
|
||||||
|
|
||||||
{
|
{
|
||||||
ZPOS64_T size_central_dir_to_read = size_central_dir;
|
ZPOS64_T size_central_dir_to_read = size_central_dir;
|
||||||
@@ -875,7 +875,7 @@ extern zipFile ZEXPORT zipOpen3 (const void *pathname, int append, zipcharpc* gl
|
|||||||
ziinit.in_opened_file_inzip = 0;
|
ziinit.in_opened_file_inzip = 0;
|
||||||
ziinit.ci.stream_initialised = 0;
|
ziinit.ci.stream_initialised = 0;
|
||||||
ziinit.number_entry = 0;
|
ziinit.number_entry = 0;
|
||||||
ziinit.add_position_when_writting_offset = 0;
|
ziinit.add_position_when_writing_offset = 0;
|
||||||
init_linkedlist(&(ziinit.central_dir));
|
init_linkedlist(&(ziinit.central_dir));
|
||||||
|
|
||||||
|
|
||||||
@@ -1164,7 +1164,7 @@ extern int ZEXPORT zipOpenNewFileInZip4_64 (zipFile file, const char* filename,
|
|||||||
if(zi->ci.pos_local_header >= 0xffffffff)
|
if(zi->ci.pos_local_header >= 0xffffffff)
|
||||||
zip64local_putValue_inmemory(zi->ci.central_header+42,(uLong)0xffffffff,4);
|
zip64local_putValue_inmemory(zi->ci.central_header+42,(uLong)0xffffffff,4);
|
||||||
else
|
else
|
||||||
zip64local_putValue_inmemory(zi->ci.central_header+42,(uLong)zi->ci.pos_local_header - zi->add_position_when_writting_offset,4);
|
zip64local_putValue_inmemory(zi->ci.central_header+42,(uLong)zi->ci.pos_local_header - zi->add_position_when_writing_offset,4);
|
||||||
|
|
||||||
for (i=0;i<size_filename;i++)
|
for (i=0;i<size_filename;i++)
|
||||||
*(zi->ci.central_header+SIZECENTRALHEADER+i) = *(filename+i);
|
*(zi->ci.central_header+SIZECENTRALHEADER+i) = *(filename+i);
|
||||||
@@ -1755,7 +1755,7 @@ extern int ZEXPORT zipCloseFileInZip (zipFile file)
|
|||||||
int Write_Zip64EndOfCentralDirectoryLocator(zip64_internal* zi, ZPOS64_T zip64eocd_pos_inzip)
|
int Write_Zip64EndOfCentralDirectoryLocator(zip64_internal* zi, ZPOS64_T zip64eocd_pos_inzip)
|
||||||
{
|
{
|
||||||
int err = ZIP_OK;
|
int err = ZIP_OK;
|
||||||
ZPOS64_T pos = zip64eocd_pos_inzip - zi->add_position_when_writting_offset;
|
ZPOS64_T pos = zip64eocd_pos_inzip - zi->add_position_when_writing_offset;
|
||||||
|
|
||||||
err = zip64local_putValue(&zi->z_filefunc,zi->filestream,(uLong)ZIP64ENDLOCHEADERMAGIC,4);
|
err = zip64local_putValue(&zi->z_filefunc,zi->filestream,(uLong)ZIP64ENDLOCHEADERMAGIC,4);
|
||||||
|
|
||||||
@@ -1808,7 +1808,7 @@ int Write_Zip64EndOfCentralDirectoryRecord(zip64_internal* zi, uLong size_centra
|
|||||||
|
|
||||||
if (err==ZIP_OK) /* offset of start of central directory with respect to the starting disk number */
|
if (err==ZIP_OK) /* offset of start of central directory with respect to the starting disk number */
|
||||||
{
|
{
|
||||||
ZPOS64_T pos = centraldir_pos_inzip - zi->add_position_when_writting_offset;
|
ZPOS64_T pos = centraldir_pos_inzip - zi->add_position_when_writing_offset;
|
||||||
err = zip64local_putValue(&zi->z_filefunc,zi->filestream, (ZPOS64_T)pos,8);
|
err = zip64local_putValue(&zi->z_filefunc,zi->filestream, (ZPOS64_T)pos,8);
|
||||||
}
|
}
|
||||||
return err;
|
return err;
|
||||||
@@ -1849,13 +1849,13 @@ int Write_EndOfCentralDirectoryRecord(zip64_internal* zi, uLong size_centraldir,
|
|||||||
|
|
||||||
if (err==ZIP_OK) /* offset of start of central directory with respect to the starting disk number */
|
if (err==ZIP_OK) /* offset of start of central directory with respect to the starting disk number */
|
||||||
{
|
{
|
||||||
ZPOS64_T pos = centraldir_pos_inzip - zi->add_position_when_writting_offset;
|
ZPOS64_T pos = centraldir_pos_inzip - zi->add_position_when_writing_offset;
|
||||||
if(pos >= 0xffffffff)
|
if(pos >= 0xffffffff)
|
||||||
{
|
{
|
||||||
err = zip64local_putValue(&zi->z_filefunc,zi->filestream, (uLong)0xffffffff,4);
|
err = zip64local_putValue(&zi->z_filefunc,zi->filestream, (uLong)0xffffffff,4);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
err = zip64local_putValue(&zi->z_filefunc,zi->filestream, (uLong)(centraldir_pos_inzip - zi->add_position_when_writting_offset),4);
|
err = zip64local_putValue(&zi->z_filefunc,zi->filestream, (uLong)(centraldir_pos_inzip - zi->add_position_when_writing_offset),4);
|
||||||
}
|
}
|
||||||
|
|
||||||
return err;
|
return err;
|
||||||
@@ -1921,7 +1921,7 @@ extern int ZEXPORT zipClose (zipFile file, const char* global_comment)
|
|||||||
}
|
}
|
||||||
free_linkedlist(&(zi->central_dir));
|
free_linkedlist(&(zi->central_dir));
|
||||||
|
|
||||||
pos = centraldir_pos_inzip - zi->add_position_when_writting_offset;
|
pos = centraldir_pos_inzip - zi->add_position_when_writing_offset;
|
||||||
if(pos >= 0xffffffff || zi->number_entry > 0xFFFF)
|
if(pos >= 0xffffffff || zi->number_entry > 0xFFFF)
|
||||||
{
|
{
|
||||||
ZPOS64_T Zip64EOCDpos = ZTELL64(zi->z_filefunc,zi->filestream);
|
ZPOS64_T Zip64EOCDpos = ZTELL64(zi->z_filefunc,zi->filestream);
|
||||||
|
|||||||
@@ -10,8 +10,8 @@ unit zlibpas;
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
const
|
const
|
||||||
ZLIB_VERSION = '1.2.8';
|
ZLIB_VERSION = '1.2.11';
|
||||||
ZLIB_VERNUM = $1280;
|
ZLIB_VERNUM = $12a0;
|
||||||
|
|
||||||
type
|
type
|
||||||
alloc_func = function(opaque: Pointer; items, size: Integer): Pointer;
|
alloc_func = function(opaque: Pointer; items, size: Integer): Pointer;
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
* All dynamically allocated memory comes from the stack. The stack required
|
* All dynamically allocated memory comes from the stack. The stack required
|
||||||
* is less than 2K bytes. This code is compatible with 16-bit int's and
|
* is less than 2K bytes. This code is compatible with 16-bit int's and
|
||||||
* assumes that long's are at least 32 bits. puff.c uses the short data type,
|
* assumes that long's are at least 32 bits. puff.c uses the short data type,
|
||||||
* assumed to be 16 bits, for arrays in order to to conserve memory. The code
|
* assumed to be 16 bits, for arrays in order to conserve memory. The code
|
||||||
* works whether integers are stored big endian or little endian.
|
* works whether integers are stored big endian or little endian.
|
||||||
*
|
*
|
||||||
* In the comments below are "Format notes" that describe the inflate process
|
* In the comments below are "Format notes" that describe the inflate process
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
Building instructions for the DLL versions of Zlib 1.2.8
|
Building instructions for the DLL versions of Zlib 1.2.11
|
||||||
========================================================
|
========================================================
|
||||||
|
|
||||||
This directory contains projects that build zlib and minizip using
|
This directory contains projects that build zlib and minizip using
|
||||||
@@ -16,7 +16,7 @@ More information can be found at this site.
|
|||||||
|
|
||||||
Build instructions for Visual Studio 2008 (32 bits or 64 bits)
|
Build instructions for Visual Studio 2008 (32 bits or 64 bits)
|
||||||
--------------------------------------------------------------
|
--------------------------------------------------------------
|
||||||
- Uncompress current zlib, including all contrib/* files
|
- Decompress current zlib, including all contrib/* files
|
||||||
- Compile assembly code (with Visual Studio Command Prompt) by running:
|
- Compile assembly code (with Visual Studio Command Prompt) by running:
|
||||||
bld_ml64.bat (in contrib\masmx64)
|
bld_ml64.bat (in contrib\masmx64)
|
||||||
bld_ml32.bat (in contrib\masmx86)
|
bld_ml32.bat (in contrib\masmx86)
|
||||||
@@ -25,14 +25,24 @@ Build instructions for Visual Studio 2008 (32 bits or 64 bits)
|
|||||||
|
|
||||||
Build instructions for Visual Studio 2010 (32 bits or 64 bits)
|
Build instructions for Visual Studio 2010 (32 bits or 64 bits)
|
||||||
--------------------------------------------------------------
|
--------------------------------------------------------------
|
||||||
- Uncompress current zlib, including all contrib/* files
|
- Decompress current zlib, including all contrib/* files
|
||||||
- Open contrib\vstudio\vc10\zlibvc.sln with Microsoft Visual C++ 2010
|
- Open contrib\vstudio\vc10\zlibvc.sln with Microsoft Visual C++ 2010
|
||||||
|
|
||||||
Build instructions for Visual Studio 2012 (32 bits or 64 bits)
|
Build instructions for Visual Studio 2012 (32 bits or 64 bits)
|
||||||
--------------------------------------------------------------
|
--------------------------------------------------------------
|
||||||
- Uncompress current zlib, including all contrib/* files
|
- Decompress current zlib, including all contrib/* files
|
||||||
- Open contrib\vstudio\vc11\zlibvc.sln with Microsoft Visual C++ 2012
|
- Open contrib\vstudio\vc11\zlibvc.sln with Microsoft Visual C++ 2012
|
||||||
|
|
||||||
|
Build instructions for Visual Studio 2013 (32 bits or 64 bits)
|
||||||
|
--------------------------------------------------------------
|
||||||
|
- Decompress current zlib, including all contrib/* files
|
||||||
|
- Open contrib\vstudio\vc12\zlibvc.sln with Microsoft Visual C++ 2013
|
||||||
|
|
||||||
|
Build instructions for Visual Studio 2015 (32 bits or 64 bits)
|
||||||
|
--------------------------------------------------------------
|
||||||
|
- Decompress current zlib, including all contrib/* files
|
||||||
|
- Open contrib\vstudio\vc14\zlibvc.sln with Microsoft Visual C++ 2015
|
||||||
|
|
||||||
|
|
||||||
Important
|
Important
|
||||||
---------
|
---------
|
||||||
@@ -63,3 +73,6 @@ Additional notes
|
|||||||
|
|
||||||
Gilles Vollant
|
Gilles Vollant
|
||||||
info@winimage.com
|
info@winimage.com
|
||||||
|
|
||||||
|
Visual Studio 2013 and 2015 Projects from Sean Hunt
|
||||||
|
seandhunt_7@yahoo.com
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
#define IDR_VERSION1 1
|
#define IDR_VERSION1 1
|
||||||
IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE
|
IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE
|
||||||
FILEVERSION 1,2,8,0
|
FILEVERSION 1, 2, 11, 0
|
||||||
PRODUCTVERSION 1,2,8,0
|
PRODUCTVERSION 1, 2, 11, 0
|
||||||
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
|
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
|
||||||
FILEFLAGS 0
|
FILEFLAGS 0
|
||||||
FILEOS VOS_DOS_WINDOWS32
|
FILEOS VOS_DOS_WINDOWS32
|
||||||
@@ -17,12 +17,12 @@ BEGIN
|
|||||||
|
|
||||||
BEGIN
|
BEGIN
|
||||||
VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0"
|
VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0"
|
||||||
VALUE "FileVersion", "1.2.8\0"
|
VALUE "FileVersion", "1.2.11\0"
|
||||||
VALUE "InternalName", "zlib\0"
|
VALUE "InternalName", "zlib\0"
|
||||||
VALUE "OriginalFilename", "zlibwapi.dll\0"
|
VALUE "OriginalFilename", "zlibwapi.dll\0"
|
||||||
VALUE "ProductName", "ZLib.DLL\0"
|
VALUE "ProductName", "ZLib.DLL\0"
|
||||||
VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0"
|
VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0"
|
||||||
VALUE "LegalCopyright", "(C) 1995-2013 Jean-loup Gailly & Mark Adler\0"
|
VALUE "LegalCopyright", "(C) 1995-2017 Jean-loup Gailly & Mark Adler\0"
|
||||||
END
|
END
|
||||||
END
|
END
|
||||||
BLOCK "VarFileInfo"
|
BLOCK "VarFileInfo"
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
LIBRARY
|
LIBRARY
|
||||||
; zlib data compression and ZIP file I/O library
|
; zlib data compression and ZIP file I/O library
|
||||||
|
|
||||||
VERSION 1.2.8
|
VERSION 1.2
|
||||||
|
|
||||||
EXPORTS
|
EXPORTS
|
||||||
adler32 @1
|
adler32 @1
|
||||||
@@ -141,3 +141,13 @@ EXPORTS
|
|||||||
; zlib1 v1.2.8 added:
|
; zlib1 v1.2.8 added:
|
||||||
inflateGetDictionary @166
|
inflateGetDictionary @166
|
||||||
gzvprintf @167
|
gzvprintf @167
|
||||||
|
|
||||||
|
; zlib1 v1.2.9 added:
|
||||||
|
inflateCodesUsed @168
|
||||||
|
inflateValidate @169
|
||||||
|
uncompress2 @170
|
||||||
|
gzfread @171
|
||||||
|
gzfwrite @172
|
||||||
|
deflateGetDictionary @173
|
||||||
|
adler32_z @174
|
||||||
|
crc32_z @175
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
#define IDR_VERSION1 1
|
#define IDR_VERSION1 1
|
||||||
IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE
|
IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE
|
||||||
FILEVERSION 1,2,8,0
|
FILEVERSION 1, 2, 11, 0
|
||||||
PRODUCTVERSION 1,2,8,0
|
PRODUCTVERSION 1, 2, 11, 0
|
||||||
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
|
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
|
||||||
FILEFLAGS 0
|
FILEFLAGS 0
|
||||||
FILEOS VOS_DOS_WINDOWS32
|
FILEOS VOS_DOS_WINDOWS32
|
||||||
@@ -17,12 +17,12 @@ BEGIN
|
|||||||
|
|
||||||
BEGIN
|
BEGIN
|
||||||
VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0"
|
VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0"
|
||||||
VALUE "FileVersion", "1.2.8\0"
|
VALUE "FileVersion", "1.2.11\0"
|
||||||
VALUE "InternalName", "zlib\0"
|
VALUE "InternalName", "zlib\0"
|
||||||
VALUE "OriginalFilename", "zlibwapi.dll\0"
|
VALUE "OriginalFilename", "zlibwapi.dll\0"
|
||||||
VALUE "ProductName", "ZLib.DLL\0"
|
VALUE "ProductName", "ZLib.DLL\0"
|
||||||
VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0"
|
VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0"
|
||||||
VALUE "LegalCopyright", "(C) 1995-2013 Jean-loup Gailly & Mark Adler\0"
|
VALUE "LegalCopyright", "(C) 1995-2017 Jean-loup Gailly & Mark Adler\0"
|
||||||
END
|
END
|
||||||
END
|
END
|
||||||
BLOCK "VarFileInfo"
|
BLOCK "VarFileInfo"
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
LIBRARY
|
LIBRARY
|
||||||
; zlib data compression and ZIP file I/O library
|
; zlib data compression and ZIP file I/O library
|
||||||
|
|
||||||
VERSION 1.2.8
|
VERSION 1.2
|
||||||
|
|
||||||
EXPORTS
|
EXPORTS
|
||||||
adler32 @1
|
adler32 @1
|
||||||
@@ -141,3 +141,13 @@ EXPORTS
|
|||||||
; zlib1 v1.2.8 added:
|
; zlib1 v1.2.8 added:
|
||||||
inflateGetDictionary @166
|
inflateGetDictionary @166
|
||||||
gzvprintf @167
|
gzvprintf @167
|
||||||
|
|
||||||
|
; zlib1 v1.2.9 added:
|
||||||
|
inflateCodesUsed @168
|
||||||
|
inflateValidate @169
|
||||||
|
uncompress2 @170
|
||||||
|
gzfread @171
|
||||||
|
gzfwrite @172
|
||||||
|
deflateGetDictionary @173
|
||||||
|
adler32_z @174
|
||||||
|
crc32_z @175
|
||||||
|
|||||||
316
compat/zlib/contrib/vstudio/vc12/miniunz.vcxproj
Normal file
316
compat/zlib/contrib/vstudio/vc12/miniunz.vcxproj
Normal file
@@ -0,0 +1,316 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Itanium">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Itanium">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{C52F9E7B-498A-42BE-8DB4-85A15694382A}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<_ProjectFileVersion>10.0.30128.1</_ProjectFileVersion>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\MiniUnzip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\MiniUnzip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\MiniUnzip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\MiniUnzip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\MiniUnzip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\MiniUnzip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\MiniUnzip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\MiniUnzip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\MiniUnzip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\MiniUnzip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\MiniUnzip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\MiniUnzip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</GenerateManifest>
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x86\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)miniunz.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)miniunz.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x86\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)miniunz.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x64\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)miniunz.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)miniunz.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>ia64\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)miniunz.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)miniunz.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x64\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)miniunz.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>ia64\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)miniunz.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\minizip\miniunz.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="zlibvc.vcxproj">
|
||||||
|
<Project>{8fd826f8-3739-44e6-8cc8-997122e53b8d}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
313
compat/zlib/contrib/vstudio/vc12/minizip.vcxproj
Normal file
313
compat/zlib/contrib/vstudio/vc12/minizip.vcxproj
Normal file
@@ -0,0 +1,313 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Itanium">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Itanium">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<_ProjectFileVersion>10.0.30128.1</_ProjectFileVersion>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\MiniZip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\MiniZip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\MiniZip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\MiniZip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\$(Configuration)\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\$(Configuration)\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\$(Configuration)\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\$(Configuration)\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</LinkIncremental>
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x86\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)minizip.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)minizip.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x86\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)minizip.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x64\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)minizip.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)minizip.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>ia64\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)minizip.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)minizip.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x64\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)minizip.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>ia64\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)minizip.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\minizip\minizip.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="zlibvc.vcxproj">
|
||||||
|
<Project>{8fd826f8-3739-44e6-8cc8-997122e53b8d}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
430
compat/zlib/contrib/vstudio/vc12/testzlib.vcxproj
Normal file
430
compat/zlib/contrib/vstudio/vc12/testzlib.vcxproj
Normal file
@@ -0,0 +1,430 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Itanium">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|Itanium">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|Win32">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|x64">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Itanium">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}</ProjectGuid>
|
||||||
|
<RootNamespace>testzlib</RootNamespace>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<_ProjectFileVersion>10.0.30128.1</_ProjectFileVersion>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">x86\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">x86\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">x64\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">x64\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">ia64\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">ia64\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</GenerateManifest>
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerOutput>AssemblyAndSourceCode</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlib.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)testzlib.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlib.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerOutput>AssemblyAndSourceCode</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)testzlib.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)testzlib.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)testzlib.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\adler32.c" />
|
||||||
|
<ClCompile Include="..\..\..\compress.c" />
|
||||||
|
<ClCompile Include="..\..\..\crc32.c" />
|
||||||
|
<ClCompile Include="..\..\..\deflate.c" />
|
||||||
|
<ClCompile Include="..\..\..\infback.c" />
|
||||||
|
<ClCompile Include="..\..\masmx64\inffas8664.c">
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\..\inffast.c" />
|
||||||
|
<ClCompile Include="..\..\..\inflate.c" />
|
||||||
|
<ClCompile Include="..\..\..\inftrees.c" />
|
||||||
|
<ClCompile Include="..\..\testzlib\testzlib.c" />
|
||||||
|
<ClCompile Include="..\..\..\trees.c" />
|
||||||
|
<ClCompile Include="..\..\..\uncompr.c" />
|
||||||
|
<ClCompile Include="..\..\..\zutil.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
316
compat/zlib/contrib/vstudio/vc12/testzlibdll.vcxproj
Normal file
316
compat/zlib/contrib/vstudio/vc12/testzlibdll.vcxproj
Normal file
@@ -0,0 +1,316 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Itanium">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Itanium">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{C52F9E7B-498A-42BE-8DB4-85A15694366A}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<_ProjectFileVersion>10.0.30128.1</_ProjectFileVersion>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\TestZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\TestZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\TestZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\TestZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\TestZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\TestZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\TestZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\TestZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\TestZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\TestZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\TestZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\TestZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</GenerateManifest>
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x86\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlibdll.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x86\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlibdll.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x64\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlibdll.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>ia64\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlibdll.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x64\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlibdll.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>ia64\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlibdll.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\testzlib\testzlib.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="zlibvc.vcxproj">
|
||||||
|
<Project>{8fd826f8-3739-44e6-8cc8-997122e53b8d}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
32
compat/zlib/contrib/vstudio/vc12/zlib.rc
Normal file
32
compat/zlib/contrib/vstudio/vc12/zlib.rc
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
#include <windows.h>
|
||||||
|
|
||||||
|
#define IDR_VERSION1 1
|
||||||
|
IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE
|
||||||
|
FILEVERSION 1, 2, 11, 0
|
||||||
|
PRODUCTVERSION 1, 2, 11, 0
|
||||||
|
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
|
||||||
|
FILEFLAGS 0
|
||||||
|
FILEOS VOS_DOS_WINDOWS32
|
||||||
|
FILETYPE VFT_DLL
|
||||||
|
FILESUBTYPE 0 // not used
|
||||||
|
BEGIN
|
||||||
|
BLOCK "StringFileInfo"
|
||||||
|
BEGIN
|
||||||
|
BLOCK "040904E4"
|
||||||
|
//language ID = U.S. English, char set = Windows, Multilingual
|
||||||
|
|
||||||
|
BEGIN
|
||||||
|
VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0"
|
||||||
|
VALUE "FileVersion", "1.2.11\0"
|
||||||
|
VALUE "InternalName", "zlib\0"
|
||||||
|
VALUE "OriginalFilename", "zlibwapi.dll\0"
|
||||||
|
VALUE "ProductName", "ZLib.DLL\0"
|
||||||
|
VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0"
|
||||||
|
VALUE "LegalCopyright", "(C) 1995-2017 Jean-loup Gailly & Mark Adler\0"
|
||||||
|
END
|
||||||
|
END
|
||||||
|
BLOCK "VarFileInfo"
|
||||||
|
BEGIN
|
||||||
|
VALUE "Translation", 0x0409, 1252
|
||||||
|
END
|
||||||
|
END
|
||||||
467
compat/zlib/contrib/vstudio/vc12/zlibstat.vcxproj
Normal file
467
compat/zlib/contrib/vstudio/vc12/zlibstat.vcxproj
Normal file
@@ -0,0 +1,467 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Itanium">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|Itanium">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|Win32">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|x64">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Itanium">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}</ProjectGuid>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<_ProjectFileVersion>10.0.30128.1</_ProjectFileVersion>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">x86\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">x86\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">x64\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">x64\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">ia64\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">ia64\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>OldStyle</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>OldStyle</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>OldStyle</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:IA64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:IA64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:IA64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\adler32.c" />
|
||||||
|
<ClCompile Include="..\..\..\compress.c" />
|
||||||
|
<ClCompile Include="..\..\..\crc32.c" />
|
||||||
|
<ClCompile Include="..\..\..\deflate.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzclose.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzlib.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzread.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzwrite.c" />
|
||||||
|
<ClCompile Include="..\..\..\infback.c" />
|
||||||
|
<ClCompile Include="..\..\masmx64\inffas8664.c">
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\..\inffast.c" />
|
||||||
|
<ClCompile Include="..\..\..\inflate.c" />
|
||||||
|
<ClCompile Include="..\..\..\inftrees.c" />
|
||||||
|
<ClCompile Include="..\..\minizip\ioapi.c" />
|
||||||
|
<ClCompile Include="..\..\..\trees.c" />
|
||||||
|
<ClCompile Include="..\..\..\uncompr.c" />
|
||||||
|
<ClCompile Include="..\..\minizip\unzip.c" />
|
||||||
|
<ClCompile Include="..\..\minizip\zip.c" />
|
||||||
|
<ClCompile Include="..\..\..\zutil.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ResourceCompile Include="zlib.rc" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="zlibvc.def" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
153
compat/zlib/contrib/vstudio/vc12/zlibvc.def
Normal file
153
compat/zlib/contrib/vstudio/vc12/zlibvc.def
Normal file
@@ -0,0 +1,153 @@
|
|||||||
|
LIBRARY
|
||||||
|
; zlib data compression and ZIP file I/O library
|
||||||
|
|
||||||
|
VERSION 1.2
|
||||||
|
|
||||||
|
EXPORTS
|
||||||
|
adler32 @1
|
||||||
|
compress @2
|
||||||
|
crc32 @3
|
||||||
|
deflate @4
|
||||||
|
deflateCopy @5
|
||||||
|
deflateEnd @6
|
||||||
|
deflateInit2_ @7
|
||||||
|
deflateInit_ @8
|
||||||
|
deflateParams @9
|
||||||
|
deflateReset @10
|
||||||
|
deflateSetDictionary @11
|
||||||
|
gzclose @12
|
||||||
|
gzdopen @13
|
||||||
|
gzerror @14
|
||||||
|
gzflush @15
|
||||||
|
gzopen @16
|
||||||
|
gzread @17
|
||||||
|
gzwrite @18
|
||||||
|
inflate @19
|
||||||
|
inflateEnd @20
|
||||||
|
inflateInit2_ @21
|
||||||
|
inflateInit_ @22
|
||||||
|
inflateReset @23
|
||||||
|
inflateSetDictionary @24
|
||||||
|
inflateSync @25
|
||||||
|
uncompress @26
|
||||||
|
zlibVersion @27
|
||||||
|
gzprintf @28
|
||||||
|
gzputc @29
|
||||||
|
gzgetc @30
|
||||||
|
gzseek @31
|
||||||
|
gzrewind @32
|
||||||
|
gztell @33
|
||||||
|
gzeof @34
|
||||||
|
gzsetparams @35
|
||||||
|
zError @36
|
||||||
|
inflateSyncPoint @37
|
||||||
|
get_crc_table @38
|
||||||
|
compress2 @39
|
||||||
|
gzputs @40
|
||||||
|
gzgets @41
|
||||||
|
inflateCopy @42
|
||||||
|
inflateBackInit_ @43
|
||||||
|
inflateBack @44
|
||||||
|
inflateBackEnd @45
|
||||||
|
compressBound @46
|
||||||
|
deflateBound @47
|
||||||
|
gzclearerr @48
|
||||||
|
gzungetc @49
|
||||||
|
zlibCompileFlags @50
|
||||||
|
deflatePrime @51
|
||||||
|
deflatePending @52
|
||||||
|
|
||||||
|
unzOpen @61
|
||||||
|
unzClose @62
|
||||||
|
unzGetGlobalInfo @63
|
||||||
|
unzGetCurrentFileInfo @64
|
||||||
|
unzGoToFirstFile @65
|
||||||
|
unzGoToNextFile @66
|
||||||
|
unzOpenCurrentFile @67
|
||||||
|
unzReadCurrentFile @68
|
||||||
|
unzOpenCurrentFile3 @69
|
||||||
|
unztell @70
|
||||||
|
unzeof @71
|
||||||
|
unzCloseCurrentFile @72
|
||||||
|
unzGetGlobalComment @73
|
||||||
|
unzStringFileNameCompare @74
|
||||||
|
unzLocateFile @75
|
||||||
|
unzGetLocalExtrafield @76
|
||||||
|
unzOpen2 @77
|
||||||
|
unzOpenCurrentFile2 @78
|
||||||
|
unzOpenCurrentFilePassword @79
|
||||||
|
|
||||||
|
zipOpen @80
|
||||||
|
zipOpenNewFileInZip @81
|
||||||
|
zipWriteInFileInZip @82
|
||||||
|
zipCloseFileInZip @83
|
||||||
|
zipClose @84
|
||||||
|
zipOpenNewFileInZip2 @86
|
||||||
|
zipCloseFileInZipRaw @87
|
||||||
|
zipOpen2 @88
|
||||||
|
zipOpenNewFileInZip3 @89
|
||||||
|
|
||||||
|
unzGetFilePos @100
|
||||||
|
unzGoToFilePos @101
|
||||||
|
|
||||||
|
fill_win32_filefunc @110
|
||||||
|
|
||||||
|
; zlibwapi v1.2.4 added:
|
||||||
|
fill_win32_filefunc64 @111
|
||||||
|
fill_win32_filefunc64A @112
|
||||||
|
fill_win32_filefunc64W @113
|
||||||
|
|
||||||
|
unzOpen64 @120
|
||||||
|
unzOpen2_64 @121
|
||||||
|
unzGetGlobalInfo64 @122
|
||||||
|
unzGetCurrentFileInfo64 @124
|
||||||
|
unzGetCurrentFileZStreamPos64 @125
|
||||||
|
unztell64 @126
|
||||||
|
unzGetFilePos64 @127
|
||||||
|
unzGoToFilePos64 @128
|
||||||
|
|
||||||
|
zipOpen64 @130
|
||||||
|
zipOpen2_64 @131
|
||||||
|
zipOpenNewFileInZip64 @132
|
||||||
|
zipOpenNewFileInZip2_64 @133
|
||||||
|
zipOpenNewFileInZip3_64 @134
|
||||||
|
zipOpenNewFileInZip4_64 @135
|
||||||
|
zipCloseFileInZipRaw64 @136
|
||||||
|
|
||||||
|
; zlib1 v1.2.4 added:
|
||||||
|
adler32_combine @140
|
||||||
|
crc32_combine @142
|
||||||
|
deflateSetHeader @144
|
||||||
|
deflateTune @145
|
||||||
|
gzbuffer @146
|
||||||
|
gzclose_r @147
|
||||||
|
gzclose_w @148
|
||||||
|
gzdirect @149
|
||||||
|
gzoffset @150
|
||||||
|
inflateGetHeader @156
|
||||||
|
inflateMark @157
|
||||||
|
inflatePrime @158
|
||||||
|
inflateReset2 @159
|
||||||
|
inflateUndermine @160
|
||||||
|
|
||||||
|
; zlib1 v1.2.6 added:
|
||||||
|
gzgetc_ @161
|
||||||
|
inflateResetKeep @163
|
||||||
|
deflateResetKeep @164
|
||||||
|
|
||||||
|
; zlib1 v1.2.7 added:
|
||||||
|
gzopen_w @165
|
||||||
|
|
||||||
|
; zlib1 v1.2.8 added:
|
||||||
|
inflateGetDictionary @166
|
||||||
|
gzvprintf @167
|
||||||
|
|
||||||
|
; zlib1 v1.2.9 added:
|
||||||
|
inflateCodesUsed @168
|
||||||
|
inflateValidate @169
|
||||||
|
uncompress2 @170
|
||||||
|
gzfread @171
|
||||||
|
gzfwrite @172
|
||||||
|
deflateGetDictionary @173
|
||||||
|
adler32_z @174
|
||||||
|
crc32_z @175
|
||||||
119
compat/zlib/contrib/vstudio/vc12/zlibvc.sln
Normal file
119
compat/zlib/contrib/vstudio/vc12/zlibvc.sln
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
|
||||||
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
|
# Visual Studio 2013
|
||||||
|
VisualStudioVersion = 12.0.40629.0
|
||||||
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlibvc", "zlibvc.vcxproj", "{8FD826F8-3739-44E6-8CC8-997122E53B8D}"
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlibstat", "zlibstat.vcxproj", "{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}"
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testzlib", "testzlib.vcxproj", "{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}"
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testzlibdll", "testzlibdll.vcxproj", "{C52F9E7B-498A-42BE-8DB4-85A15694366A}"
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "minizip", "minizip.vcxproj", "{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}"
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "miniunz", "miniunz.vcxproj", "{C52F9E7B-498A-42BE-8DB4-85A15694382A}"
|
||||||
|
EndProject
|
||||||
|
Global
|
||||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Debug|Itanium = Debug|Itanium
|
||||||
|
Debug|Win32 = Debug|Win32
|
||||||
|
Debug|x64 = Debug|x64
|
||||||
|
Release|Itanium = Release|Itanium
|
||||||
|
Release|Win32 = Release|Win32
|
||||||
|
Release|x64 = Release|x64
|
||||||
|
ReleaseWithoutAsm|Itanium = ReleaseWithoutAsm|Itanium
|
||||||
|
ReleaseWithoutAsm|Win32 = ReleaseWithoutAsm|Win32
|
||||||
|
ReleaseWithoutAsm|x64 = ReleaseWithoutAsm|x64
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|Itanium.ActiveCfg = Debug|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|x64.Build.0 = Release|x64
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseWithoutAsm|Itanium.ActiveCfg = ReleaseWithoutAsm|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseWithoutAsm|Win32.ActiveCfg = ReleaseWithoutAsm|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseWithoutAsm|Win32.Build.0 = ReleaseWithoutAsm|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseWithoutAsm|x64.ActiveCfg = ReleaseWithoutAsm|x64
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseWithoutAsm|x64.Build.0 = ReleaseWithoutAsm|x64
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|Itanium.ActiveCfg = Debug|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release|x64.Build.0 = Release|x64
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.ReleaseWithoutAsm|Itanium.ActiveCfg = ReleaseWithoutAsm|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.ReleaseWithoutAsm|Win32.ActiveCfg = ReleaseWithoutAsm|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.ReleaseWithoutAsm|Win32.Build.0 = ReleaseWithoutAsm|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.ReleaseWithoutAsm|x64.ActiveCfg = ReleaseWithoutAsm|x64
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.ReleaseWithoutAsm|x64.Build.0 = ReleaseWithoutAsm|x64
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Debug|Itanium.ActiveCfg = Debug|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Release|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Release|x64.Build.0 = Release|x64
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|Itanium.ActiveCfg = ReleaseWithoutAsm|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|Win32.ActiveCfg = ReleaseWithoutAsm|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|Win32.Build.0 = ReleaseWithoutAsm|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|x64.ActiveCfg = ReleaseWithoutAsm|x64
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|x64.Build.0 = ReleaseWithoutAsm|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Debug|Itanium.ActiveCfg = Debug|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Release|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Release|x64.Build.0 = Release|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.ReleaseWithoutAsm|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.ReleaseWithoutAsm|Win32.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.ReleaseWithoutAsm|x64.ActiveCfg = Release|x64
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Debug|Itanium.ActiveCfg = Debug|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Release|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Release|x64.Build.0 = Release|x64
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|Win32.ActiveCfg = Release|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|x64.ActiveCfg = Release|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Debug|Itanium.ActiveCfg = Debug|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Release|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Release|x64.Build.0 = Release|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.ReleaseWithoutAsm|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.ReleaseWithoutAsm|Win32.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.ReleaseWithoutAsm|x64.ActiveCfg = Release|x64
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
|
HideSolutionNode = FALSE
|
||||||
|
EndGlobalSection
|
||||||
|
EndGlobal
|
||||||
692
compat/zlib/contrib/vstudio/vc12/zlibvc.vcxproj
Normal file
692
compat/zlib/contrib/vstudio/vc12/zlibvc.vcxproj
Normal file
@@ -0,0 +1,692 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Itanium">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|Itanium">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|Win32">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|x64">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Itanium">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{8FD826F8-3739-44E6-8CC8-997122E53B8D}</ProjectGuid>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v120</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<_ProjectFileVersion>10.0.30128.1</_ProjectFileVersion>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">x86\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">x86\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">x64\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">x64\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">ia64\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">ia64\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</GenerateManifest>
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">zlibwapi</TargetName>
|
||||||
|
<TargetName Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">zlibwapi</TargetName>
|
||||||
|
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">zlibwapi</TargetName>
|
||||||
|
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">zlibwapi</TargetName>
|
||||||
|
<TargetName Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">zlibwapi</TargetName>
|
||||||
|
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">zlibwapi</TargetName>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>Win32</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
</Link>
|
||||||
|
<PreBuildEvent>
|
||||||
|
<Command>cd ..\..\masmx86
|
||||||
|
bld_ml32.bat</Command>
|
||||||
|
</PreBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>Win32</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerOutput>All</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>Win32</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerOutput>All</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||||
|
</Link>
|
||||||
|
<PreBuildEvent>
|
||||||
|
<Command>cd ..\..\masmx86
|
||||||
|
bld_ml32.bat</Command>
|
||||||
|
</PreBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
<PreBuildEvent>
|
||||||
|
<Command>cd ..\..\contrib\masmx64
|
||||||
|
bld_ml64.bat</Command>
|
||||||
|
</PreBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerOutput>All</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerOutput>All</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerOutput>All</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
<PreBuildEvent>
|
||||||
|
<Command>cd ..\..\masmx64
|
||||||
|
bld_ml64.bat</Command>
|
||||||
|
</PreBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerOutput>All</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\adler32.c" />
|
||||||
|
<ClCompile Include="..\..\..\compress.c" />
|
||||||
|
<ClCompile Include="..\..\..\crc32.c" />
|
||||||
|
<ClCompile Include="..\..\..\deflate.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzclose.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzlib.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzread.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzwrite.c" />
|
||||||
|
<ClCompile Include="..\..\..\infback.c" />
|
||||||
|
<ClCompile Include="..\..\masmx64\inffas8664.c">
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\..\inffast.c" />
|
||||||
|
<ClCompile Include="..\..\..\inflate.c" />
|
||||||
|
<ClCompile Include="..\..\..\inftrees.c" />
|
||||||
|
<ClCompile Include="..\..\minizip\ioapi.c" />
|
||||||
|
<ClCompile Include="..\..\minizip\iowin32.c" />
|
||||||
|
<ClCompile Include="..\..\..\trees.c" />
|
||||||
|
<ClCompile Include="..\..\..\uncompr.c" />
|
||||||
|
<ClCompile Include="..\..\minizip\unzip.c">
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ZLIB_INTERNAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">ZLIB_INTERNAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">ZLIB_INTERNAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\minizip\zip.c">
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ZLIB_INTERNAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">ZLIB_INTERNAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">ZLIB_INTERNAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\..\zutil.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ResourceCompile Include="zlib.rc" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="zlibvc.def" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClInclude Include="..\..\..\deflate.h" />
|
||||||
|
<ClInclude Include="..\..\..\infblock.h" />
|
||||||
|
<ClInclude Include="..\..\..\infcodes.h" />
|
||||||
|
<ClInclude Include="..\..\..\inffast.h" />
|
||||||
|
<ClInclude Include="..\..\..\inftrees.h" />
|
||||||
|
<ClInclude Include="..\..\..\infutil.h" />
|
||||||
|
<ClInclude Include="..\..\..\zconf.h" />
|
||||||
|
<ClInclude Include="..\..\..\zlib.h" />
|
||||||
|
<ClInclude Include="..\..\..\zutil.h" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
316
compat/zlib/contrib/vstudio/vc14/miniunz.vcxproj
Normal file
316
compat/zlib/contrib/vstudio/vc14/miniunz.vcxproj
Normal file
@@ -0,0 +1,316 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Itanium">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Itanium">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{C52F9E7B-498A-42BE-8DB4-85A15694382A}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<_ProjectFileVersion>10.0.30128.1</_ProjectFileVersion>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\MiniUnzip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\MiniUnzip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\MiniUnzip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\MiniUnzip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\MiniUnzip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\MiniUnzip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\MiniUnzip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\MiniUnzip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\MiniUnzip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\MiniUnzip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\MiniUnzip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\MiniUnzip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</GenerateManifest>
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x86\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)miniunz.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)miniunz.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x86\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)miniunz.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x64\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)miniunz.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)miniunz.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>ia64\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)miniunz.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)miniunz.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x64\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)miniunz.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>ia64\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)miniunz.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\minizip\miniunz.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="zlibvc.vcxproj">
|
||||||
|
<Project>{8fd826f8-3739-44e6-8cc8-997122e53b8d}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
313
compat/zlib/contrib/vstudio/vc14/minizip.vcxproj
Normal file
313
compat/zlib/contrib/vstudio/vc14/minizip.vcxproj
Normal file
@@ -0,0 +1,313 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Itanium">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Itanium">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<_ProjectFileVersion>10.0.30128.1</_ProjectFileVersion>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\MiniZip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\MiniZip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\MiniZip$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\MiniZip$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\$(Configuration)\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\$(Configuration)\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\$(Configuration)\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\$(Configuration)\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</LinkIncremental>
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x86\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)minizip.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)minizip.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x86\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)minizip.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x64\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)minizip.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)minizip.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>ia64\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)minizip.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)minizip.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x64\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)minizip.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>ia64\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)minizip.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\minizip\minizip.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="zlibvc.vcxproj">
|
||||||
|
<Project>{8fd826f8-3739-44e6-8cc8-997122e53b8d}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
430
compat/zlib/contrib/vstudio/vc14/testzlib.vcxproj
Normal file
430
compat/zlib/contrib/vstudio/vc14/testzlib.vcxproj
Normal file
@@ -0,0 +1,430 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Itanium">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|Itanium">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|Win32">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|x64">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Itanium">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}</ProjectGuid>
|
||||||
|
<RootNamespace>testzlib</RootNamespace>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<_ProjectFileVersion>10.0.30128.1</_ProjectFileVersion>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">x86\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">x86\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">x64\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">x64\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">ia64\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">ia64\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\TestZlib$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\TestZlib$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</GenerateManifest>
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerOutput>AssemblyAndSourceCode</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlib.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)testzlib.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlib.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerOutput>AssemblyAndSourceCode</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)testzlib.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)testzlib.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)testzlib.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\adler32.c" />
|
||||||
|
<ClCompile Include="..\..\..\compress.c" />
|
||||||
|
<ClCompile Include="..\..\..\crc32.c" />
|
||||||
|
<ClCompile Include="..\..\..\deflate.c" />
|
||||||
|
<ClCompile Include="..\..\..\infback.c" />
|
||||||
|
<ClCompile Include="..\..\masmx64\inffas8664.c">
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\..\inffast.c" />
|
||||||
|
<ClCompile Include="..\..\..\inflate.c" />
|
||||||
|
<ClCompile Include="..\..\..\inftrees.c" />
|
||||||
|
<ClCompile Include="..\..\testzlib\testzlib.c" />
|
||||||
|
<ClCompile Include="..\..\..\trees.c" />
|
||||||
|
<ClCompile Include="..\..\..\uncompr.c" />
|
||||||
|
<ClCompile Include="..\..\..\zutil.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
316
compat/zlib/contrib/vstudio/vc14/testzlibdll.vcxproj
Normal file
316
compat/zlib/contrib/vstudio/vc14/testzlibdll.vcxproj
Normal file
@@ -0,0 +1,316 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Itanium">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Itanium">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{C52F9E7B-498A-42BE-8DB4-85A15694366A}</ProjectGuid>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<_ProjectFileVersion>10.0.30128.1</_ProjectFileVersion>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\TestZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\TestZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\TestZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\TestZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\TestZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\TestZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\TestZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\TestZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\TestZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\TestZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\TestZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\TestZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</GenerateManifest>
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x86\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlibdll.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x86\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlibdll.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<TargetMachine>MachineX86</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x64\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlibdll.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;_DEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MinimalRebuild>true</MinimalRebuild>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>ia64\ZlibDllDebug\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlibdll.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>x64\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlibdll.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>MaxSpeed</Optimization>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<OmitFramePointers>true</OmitFramePointers>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\minizip;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;ZLIB_WINAPI;NDEBUG;_CONSOLE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeader>
|
||||||
|
</PrecompiledHeader>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>ia64\ZlibDllRelease\zlibwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)testzlibdll.exe</OutputFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\testzlib\testzlib.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="zlibvc.vcxproj">
|
||||||
|
<Project>{8fd826f8-3739-44e6-8cc8-997122e53b8d}</Project>
|
||||||
|
</ProjectReference>
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
32
compat/zlib/contrib/vstudio/vc14/zlib.rc
Normal file
32
compat/zlib/contrib/vstudio/vc14/zlib.rc
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
#include <windows.h>
|
||||||
|
|
||||||
|
#define IDR_VERSION1 1
|
||||||
|
IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE
|
||||||
|
FILEVERSION 1, 2, 11, 0
|
||||||
|
PRODUCTVERSION 1, 2, 11, 0
|
||||||
|
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
|
||||||
|
FILEFLAGS 0
|
||||||
|
FILEOS VOS_DOS_WINDOWS32
|
||||||
|
FILETYPE VFT_DLL
|
||||||
|
FILESUBTYPE 0 // not used
|
||||||
|
BEGIN
|
||||||
|
BLOCK "StringFileInfo"
|
||||||
|
BEGIN
|
||||||
|
BLOCK "040904E4"
|
||||||
|
//language ID = U.S. English, char set = Windows, Multilingual
|
||||||
|
|
||||||
|
BEGIN
|
||||||
|
VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0"
|
||||||
|
VALUE "FileVersion", "1.2.11\0"
|
||||||
|
VALUE "InternalName", "zlib\0"
|
||||||
|
VALUE "OriginalFilename", "zlibwapi.dll\0"
|
||||||
|
VALUE "ProductName", "ZLib.DLL\0"
|
||||||
|
VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0"
|
||||||
|
VALUE "LegalCopyright", "(C) 1995-2017 Jean-loup Gailly & Mark Adler\0"
|
||||||
|
END
|
||||||
|
END
|
||||||
|
BLOCK "VarFileInfo"
|
||||||
|
BEGIN
|
||||||
|
VALUE "Translation", 0x0409, 1252
|
||||||
|
END
|
||||||
|
END
|
||||||
467
compat/zlib/contrib/vstudio/vc14/zlibstat.vcxproj
Normal file
467
compat/zlib/contrib/vstudio/vc14/zlibstat.vcxproj
Normal file
@@ -0,0 +1,467 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Itanium">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|Itanium">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|Win32">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|x64">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Itanium">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}</ProjectGuid>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<_ProjectFileVersion>10.0.30128.1</_ProjectFileVersion>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">x86\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">x86\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">x64\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">x64\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">ia64\ZlibStat$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">ia64\ZlibStat$(Configuration)\Tmp\</IntDir>
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>OldStyle</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>OldStyle</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>OldStyle</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:IA64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:IA64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibstat.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Lib>
|
||||||
|
<AdditionalOptions>/MACHINE:IA64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibstat.lib</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</Lib>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\adler32.c" />
|
||||||
|
<ClCompile Include="..\..\..\compress.c" />
|
||||||
|
<ClCompile Include="..\..\..\crc32.c" />
|
||||||
|
<ClCompile Include="..\..\..\deflate.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzclose.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzlib.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzread.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzwrite.c" />
|
||||||
|
<ClCompile Include="..\..\..\infback.c" />
|
||||||
|
<ClCompile Include="..\..\masmx64\inffas8664.c">
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\..\inffast.c" />
|
||||||
|
<ClCompile Include="..\..\..\inflate.c" />
|
||||||
|
<ClCompile Include="..\..\..\inftrees.c" />
|
||||||
|
<ClCompile Include="..\..\minizip\ioapi.c" />
|
||||||
|
<ClCompile Include="..\..\..\trees.c" />
|
||||||
|
<ClCompile Include="..\..\..\uncompr.c" />
|
||||||
|
<ClCompile Include="..\..\minizip\unzip.c" />
|
||||||
|
<ClCompile Include="..\..\minizip\zip.c" />
|
||||||
|
<ClCompile Include="..\..\..\zutil.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ResourceCompile Include="zlib.rc" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="zlibvc.def" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
153
compat/zlib/contrib/vstudio/vc14/zlibvc.def
Normal file
153
compat/zlib/contrib/vstudio/vc14/zlibvc.def
Normal file
@@ -0,0 +1,153 @@
|
|||||||
|
LIBRARY
|
||||||
|
; zlib data compression and ZIP file I/O library
|
||||||
|
|
||||||
|
VERSION 1.2
|
||||||
|
|
||||||
|
EXPORTS
|
||||||
|
adler32 @1
|
||||||
|
compress @2
|
||||||
|
crc32 @3
|
||||||
|
deflate @4
|
||||||
|
deflateCopy @5
|
||||||
|
deflateEnd @6
|
||||||
|
deflateInit2_ @7
|
||||||
|
deflateInit_ @8
|
||||||
|
deflateParams @9
|
||||||
|
deflateReset @10
|
||||||
|
deflateSetDictionary @11
|
||||||
|
gzclose @12
|
||||||
|
gzdopen @13
|
||||||
|
gzerror @14
|
||||||
|
gzflush @15
|
||||||
|
gzopen @16
|
||||||
|
gzread @17
|
||||||
|
gzwrite @18
|
||||||
|
inflate @19
|
||||||
|
inflateEnd @20
|
||||||
|
inflateInit2_ @21
|
||||||
|
inflateInit_ @22
|
||||||
|
inflateReset @23
|
||||||
|
inflateSetDictionary @24
|
||||||
|
inflateSync @25
|
||||||
|
uncompress @26
|
||||||
|
zlibVersion @27
|
||||||
|
gzprintf @28
|
||||||
|
gzputc @29
|
||||||
|
gzgetc @30
|
||||||
|
gzseek @31
|
||||||
|
gzrewind @32
|
||||||
|
gztell @33
|
||||||
|
gzeof @34
|
||||||
|
gzsetparams @35
|
||||||
|
zError @36
|
||||||
|
inflateSyncPoint @37
|
||||||
|
get_crc_table @38
|
||||||
|
compress2 @39
|
||||||
|
gzputs @40
|
||||||
|
gzgets @41
|
||||||
|
inflateCopy @42
|
||||||
|
inflateBackInit_ @43
|
||||||
|
inflateBack @44
|
||||||
|
inflateBackEnd @45
|
||||||
|
compressBound @46
|
||||||
|
deflateBound @47
|
||||||
|
gzclearerr @48
|
||||||
|
gzungetc @49
|
||||||
|
zlibCompileFlags @50
|
||||||
|
deflatePrime @51
|
||||||
|
deflatePending @52
|
||||||
|
|
||||||
|
unzOpen @61
|
||||||
|
unzClose @62
|
||||||
|
unzGetGlobalInfo @63
|
||||||
|
unzGetCurrentFileInfo @64
|
||||||
|
unzGoToFirstFile @65
|
||||||
|
unzGoToNextFile @66
|
||||||
|
unzOpenCurrentFile @67
|
||||||
|
unzReadCurrentFile @68
|
||||||
|
unzOpenCurrentFile3 @69
|
||||||
|
unztell @70
|
||||||
|
unzeof @71
|
||||||
|
unzCloseCurrentFile @72
|
||||||
|
unzGetGlobalComment @73
|
||||||
|
unzStringFileNameCompare @74
|
||||||
|
unzLocateFile @75
|
||||||
|
unzGetLocalExtrafield @76
|
||||||
|
unzOpen2 @77
|
||||||
|
unzOpenCurrentFile2 @78
|
||||||
|
unzOpenCurrentFilePassword @79
|
||||||
|
|
||||||
|
zipOpen @80
|
||||||
|
zipOpenNewFileInZip @81
|
||||||
|
zipWriteInFileInZip @82
|
||||||
|
zipCloseFileInZip @83
|
||||||
|
zipClose @84
|
||||||
|
zipOpenNewFileInZip2 @86
|
||||||
|
zipCloseFileInZipRaw @87
|
||||||
|
zipOpen2 @88
|
||||||
|
zipOpenNewFileInZip3 @89
|
||||||
|
|
||||||
|
unzGetFilePos @100
|
||||||
|
unzGoToFilePos @101
|
||||||
|
|
||||||
|
fill_win32_filefunc @110
|
||||||
|
|
||||||
|
; zlibwapi v1.2.4 added:
|
||||||
|
fill_win32_filefunc64 @111
|
||||||
|
fill_win32_filefunc64A @112
|
||||||
|
fill_win32_filefunc64W @113
|
||||||
|
|
||||||
|
unzOpen64 @120
|
||||||
|
unzOpen2_64 @121
|
||||||
|
unzGetGlobalInfo64 @122
|
||||||
|
unzGetCurrentFileInfo64 @124
|
||||||
|
unzGetCurrentFileZStreamPos64 @125
|
||||||
|
unztell64 @126
|
||||||
|
unzGetFilePos64 @127
|
||||||
|
unzGoToFilePos64 @128
|
||||||
|
|
||||||
|
zipOpen64 @130
|
||||||
|
zipOpen2_64 @131
|
||||||
|
zipOpenNewFileInZip64 @132
|
||||||
|
zipOpenNewFileInZip2_64 @133
|
||||||
|
zipOpenNewFileInZip3_64 @134
|
||||||
|
zipOpenNewFileInZip4_64 @135
|
||||||
|
zipCloseFileInZipRaw64 @136
|
||||||
|
|
||||||
|
; zlib1 v1.2.4 added:
|
||||||
|
adler32_combine @140
|
||||||
|
crc32_combine @142
|
||||||
|
deflateSetHeader @144
|
||||||
|
deflateTune @145
|
||||||
|
gzbuffer @146
|
||||||
|
gzclose_r @147
|
||||||
|
gzclose_w @148
|
||||||
|
gzdirect @149
|
||||||
|
gzoffset @150
|
||||||
|
inflateGetHeader @156
|
||||||
|
inflateMark @157
|
||||||
|
inflatePrime @158
|
||||||
|
inflateReset2 @159
|
||||||
|
inflateUndermine @160
|
||||||
|
|
||||||
|
; zlib1 v1.2.6 added:
|
||||||
|
gzgetc_ @161
|
||||||
|
inflateResetKeep @163
|
||||||
|
deflateResetKeep @164
|
||||||
|
|
||||||
|
; zlib1 v1.2.7 added:
|
||||||
|
gzopen_w @165
|
||||||
|
|
||||||
|
; zlib1 v1.2.8 added:
|
||||||
|
inflateGetDictionary @166
|
||||||
|
gzvprintf @167
|
||||||
|
|
||||||
|
; zlib1 v1.2.9 added:
|
||||||
|
inflateCodesUsed @168
|
||||||
|
inflateValidate @169
|
||||||
|
uncompress2 @170
|
||||||
|
gzfread @171
|
||||||
|
gzfwrite @172
|
||||||
|
deflateGetDictionary @173
|
||||||
|
adler32_z @174
|
||||||
|
crc32_z @175
|
||||||
119
compat/zlib/contrib/vstudio/vc14/zlibvc.sln
Normal file
119
compat/zlib/contrib/vstudio/vc14/zlibvc.sln
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
|
||||||
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
|
# Visual Studio 14
|
||||||
|
VisualStudioVersion = 14.0.25420.1
|
||||||
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlibvc", "zlibvc.vcxproj", "{8FD826F8-3739-44E6-8CC8-997122E53B8D}"
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlibstat", "zlibstat.vcxproj", "{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}"
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testzlib", "testzlib.vcxproj", "{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}"
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testzlibdll", "testzlibdll.vcxproj", "{C52F9E7B-498A-42BE-8DB4-85A15694366A}"
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "minizip", "minizip.vcxproj", "{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}"
|
||||||
|
EndProject
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "miniunz", "miniunz.vcxproj", "{C52F9E7B-498A-42BE-8DB4-85A15694382A}"
|
||||||
|
EndProject
|
||||||
|
Global
|
||||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Debug|Itanium = Debug|Itanium
|
||||||
|
Debug|Win32 = Debug|Win32
|
||||||
|
Debug|x64 = Debug|x64
|
||||||
|
Release|Itanium = Release|Itanium
|
||||||
|
Release|Win32 = Release|Win32
|
||||||
|
Release|x64 = Release|x64
|
||||||
|
ReleaseWithoutAsm|Itanium = ReleaseWithoutAsm|Itanium
|
||||||
|
ReleaseWithoutAsm|Win32 = ReleaseWithoutAsm|Win32
|
||||||
|
ReleaseWithoutAsm|x64 = ReleaseWithoutAsm|x64
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|Itanium.ActiveCfg = Debug|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|x64.Build.0 = Release|x64
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseWithoutAsm|Itanium.ActiveCfg = ReleaseWithoutAsm|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseWithoutAsm|Win32.ActiveCfg = ReleaseWithoutAsm|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseWithoutAsm|Win32.Build.0 = ReleaseWithoutAsm|Win32
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseWithoutAsm|x64.ActiveCfg = ReleaseWithoutAsm|x64
|
||||||
|
{8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseWithoutAsm|x64.Build.0 = ReleaseWithoutAsm|x64
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|Itanium.ActiveCfg = Debug|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release|x64.Build.0 = Release|x64
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.ReleaseWithoutAsm|Itanium.ActiveCfg = ReleaseWithoutAsm|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.ReleaseWithoutAsm|Win32.ActiveCfg = ReleaseWithoutAsm|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.ReleaseWithoutAsm|Win32.Build.0 = ReleaseWithoutAsm|Win32
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.ReleaseWithoutAsm|x64.ActiveCfg = ReleaseWithoutAsm|x64
|
||||||
|
{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.ReleaseWithoutAsm|x64.Build.0 = ReleaseWithoutAsm|x64
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Debug|Itanium.ActiveCfg = Debug|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Release|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.Release|x64.Build.0 = Release|x64
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|Itanium.ActiveCfg = ReleaseWithoutAsm|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|Win32.ActiveCfg = ReleaseWithoutAsm|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|Win32.Build.0 = ReleaseWithoutAsm|Win32
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|x64.ActiveCfg = ReleaseWithoutAsm|x64
|
||||||
|
{AA6666AA-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|x64.Build.0 = ReleaseWithoutAsm|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Debug|Itanium.ActiveCfg = Debug|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Release|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.Release|x64.Build.0 = Release|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.ReleaseWithoutAsm|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.ReleaseWithoutAsm|Win32.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694366A}.ReleaseWithoutAsm|x64.ActiveCfg = Release|x64
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Debug|Itanium.ActiveCfg = Debug|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Release|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.Release|x64.Build.0 = Release|x64
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|Win32.ActiveCfg = Release|Win32
|
||||||
|
{48CDD9DC-E09F-4135-9C0C-4FE50C3C654B}.ReleaseWithoutAsm|x64.ActiveCfg = Release|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Debug|Itanium.ActiveCfg = Debug|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Release|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.Release|x64.Build.0 = Release|x64
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.ReleaseWithoutAsm|Itanium.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.ReleaseWithoutAsm|Win32.ActiveCfg = Release|Win32
|
||||||
|
{C52F9E7B-498A-42BE-8DB4-85A15694382A}.ReleaseWithoutAsm|x64.ActiveCfg = Release|x64
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
|
HideSolutionNode = FALSE
|
||||||
|
EndGlobalSection
|
||||||
|
EndGlobal
|
||||||
692
compat/zlib/contrib/vstudio/vc14/zlibvc.vcxproj
Normal file
692
compat/zlib/contrib/vstudio/vc14/zlibvc.vcxproj
Normal file
@@ -0,0 +1,692 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Itanium">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|Itanium">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|Win32">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="ReleaseWithoutAsm|x64">
|
||||||
|
<Configuration>ReleaseWithoutAsm</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Itanium">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Itanium</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{8FD826F8-3739-44E6-8CC8-997122E53B8D}</ProjectGuid>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
|
<UseOfMfc>false</UseOfMfc>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<_ProjectFileVersion>10.0.30128.1</_ProjectFileVersion>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">x86\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">x86\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">x86\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">x86\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">x64\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">ia64\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">x64\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">x64\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">ia64\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">ia64\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">x64\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</GenerateManifest>
|
||||||
|
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\ZlibDll$(Configuration)\</OutDir>
|
||||||
|
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ia64\ZlibDll$(Configuration)\Tmp\</IntDir>
|
||||||
|
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</LinkIncremental>
|
||||||
|
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">false</GenerateManifest>
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||||
|
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||||
|
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">zlibwapi</TargetName>
|
||||||
|
<TargetName Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">zlibwapi</TargetName>
|
||||||
|
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">zlibwapi</TargetName>
|
||||||
|
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">zlibwapi</TargetName>
|
||||||
|
<TargetName Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">zlibwapi</TargetName>
|
||||||
|
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">zlibwapi</TargetName>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>Win32</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
</Link>
|
||||||
|
<PreBuildEvent>
|
||||||
|
<Command>cd ..\..\masmx86
|
||||||
|
bld_ml32.bat</Command>
|
||||||
|
</PreBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>Win32</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerOutput>All</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>Win32</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerOutput>All</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions>
|
||||||
|
<AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||||
|
<DataExecutionPrevention>
|
||||||
|
</DataExecutionPrevention>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||||
|
</Link>
|
||||||
|
<PreBuildEvent>
|
||||||
|
<Command>cd ..\..\masmx86
|
||||||
|
bld_ml32.bat</Command>
|
||||||
|
</PreBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
<PreBuildEvent>
|
||||||
|
<Command>cd ..\..\contrib\masmx64
|
||||||
|
bld_ml64.bat</Command>
|
||||||
|
</PreBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<Optimization>Disabled</Optimization>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|x64'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerOutput>All</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerOutput>All</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>X64</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerOutput>All</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
<TargetMachine>MachineX64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
<PreBuildEvent>
|
||||||
|
<Command>cd ..\..\masmx64
|
||||||
|
bld_ml64.bat</Command>
|
||||||
|
</PreBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">
|
||||||
|
<Midl>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<TargetEnvironment>Itanium</TargetEnvironment>
|
||||||
|
<TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName>
|
||||||
|
</Midl>
|
||||||
|
<ClCompile>
|
||||||
|
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||||
|
<AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<StringPooling>true</StringPooling>
|
||||||
|
<ExceptionHandling>
|
||||||
|
</ExceptionHandling>
|
||||||
|
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||||
|
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile>
|
||||||
|
<AssemblerOutput>All</AssemblerOutput>
|
||||||
|
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||||
|
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||||
|
<ProgramDataBaseFileName>$(OutDir)</ProgramDataBaseFileName>
|
||||||
|
<BrowseInformation>
|
||||||
|
</BrowseInformation>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
</ClCompile>
|
||||||
|
<ResourceCompile>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<Culture>0x040c</Culture>
|
||||||
|
</ResourceCompile>
|
||||||
|
<Link>
|
||||||
|
<OutputFile>$(OutDir)zlibwapi.dll</OutputFile>
|
||||||
|
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||||
|
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
|
||||||
|
<ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile>
|
||||||
|
<ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile>
|
||||||
|
<GenerateMapFile>true</GenerateMapFile>
|
||||||
|
<MapFileName>$(OutDir)zlibwapi.map</MapFileName>
|
||||||
|
<SubSystem>Windows</SubSystem>
|
||||||
|
<ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary>
|
||||||
|
<TargetMachine>MachineIA64</TargetMachine>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="..\..\..\adler32.c" />
|
||||||
|
<ClCompile Include="..\..\..\compress.c" />
|
||||||
|
<ClCompile Include="..\..\..\crc32.c" />
|
||||||
|
<ClCompile Include="..\..\..\deflate.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzclose.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzlib.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzread.c" />
|
||||||
|
<ClCompile Include="..\..\..\gzwrite.c" />
|
||||||
|
<ClCompile Include="..\..\..\infback.c" />
|
||||||
|
<ClCompile Include="..\..\masmx64\inffas8664.c">
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild>
|
||||||
|
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\..\inffast.c" />
|
||||||
|
<ClCompile Include="..\..\..\inflate.c" />
|
||||||
|
<ClCompile Include="..\..\..\inftrees.c" />
|
||||||
|
<ClCompile Include="..\..\minizip\ioapi.c" />
|
||||||
|
<ClCompile Include="..\..\minizip\iowin32.c" />
|
||||||
|
<ClCompile Include="..\..\..\trees.c" />
|
||||||
|
<ClCompile Include="..\..\..\uncompr.c" />
|
||||||
|
<ClCompile Include="..\..\minizip\unzip.c">
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ZLIB_INTERNAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">ZLIB_INTERNAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">ZLIB_INTERNAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\minizip\zip.c">
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">ZLIB_INTERNAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">ZLIB_INTERNAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">ZLIB_INTERNAL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\..\zutil.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ResourceCompile Include="zlib.rc" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="zlibvc.def" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClInclude Include="..\..\..\deflate.h" />
|
||||||
|
<ClInclude Include="..\..\..\infblock.h" />
|
||||||
|
<ClInclude Include="..\..\..\infcodes.h" />
|
||||||
|
<ClInclude Include="..\..\..\inffast.h" />
|
||||||
|
<ClInclude Include="..\..\..\inftrees.h" />
|
||||||
|
<ClInclude Include="..\..\..\infutil.h" />
|
||||||
|
<ClInclude Include="..\..\..\zconf.h" />
|
||||||
|
<ClInclude Include="..\..\..\zlib.h" />
|
||||||
|
<ClInclude Include="..\..\..\zutil.h" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
#define IDR_VERSION1 1
|
#define IDR_VERSION1 1
|
||||||
IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE
|
IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE
|
||||||
FILEVERSION 1,2,8,0
|
FILEVERSION 1, 2, 11, 0
|
||||||
PRODUCTVERSION 1,2,8,0
|
PRODUCTVERSION 1, 2, 11, 0
|
||||||
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
|
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
|
||||||
FILEFLAGS 0
|
FILEFLAGS 0
|
||||||
FILEOS VOS_DOS_WINDOWS32
|
FILEOS VOS_DOS_WINDOWS32
|
||||||
@@ -17,12 +17,12 @@ BEGIN
|
|||||||
|
|
||||||
BEGIN
|
BEGIN
|
||||||
VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0"
|
VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0"
|
||||||
VALUE "FileVersion", "1.2.8\0"
|
VALUE "FileVersion", "1.2.11\0"
|
||||||
VALUE "InternalName", "zlib\0"
|
VALUE "InternalName", "zlib\0"
|
||||||
VALUE "OriginalFilename", "zlibwapi.dll\0"
|
VALUE "OriginalFilename", "zlibwapi.dll\0"
|
||||||
VALUE "ProductName", "ZLib.DLL\0"
|
VALUE "ProductName", "ZLib.DLL\0"
|
||||||
VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0"
|
VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0"
|
||||||
VALUE "LegalCopyright", "(C) 1995-2013 Jean-loup Gailly & Mark Adler\0"
|
VALUE "LegalCopyright", "(C) 1995-2017 Jean-loup Gailly & Mark Adler\0"
|
||||||
END
|
END
|
||||||
END
|
END
|
||||||
BLOCK "VarFileInfo"
|
BLOCK "VarFileInfo"
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
LIBRARY
|
LIBRARY
|
||||||
; zlib data compression and ZIP file I/O library
|
; zlib data compression and ZIP file I/O library
|
||||||
|
|
||||||
VERSION 1.2.8
|
VERSION 1.2
|
||||||
|
|
||||||
EXPORTS
|
EXPORTS
|
||||||
adler32 @1
|
adler32 @1
|
||||||
@@ -141,3 +141,13 @@ EXPORTS
|
|||||||
; zlib1 v1.2.8 added:
|
; zlib1 v1.2.8 added:
|
||||||
inflateGetDictionary @166
|
inflateGetDictionary @166
|
||||||
gzvprintf @167
|
gzvprintf @167
|
||||||
|
|
||||||
|
; zlib1 v1.2.9 added:
|
||||||
|
inflateCodesUsed @168
|
||||||
|
inflateValidate @169
|
||||||
|
uncompress2 @170
|
||||||
|
gzfread @171
|
||||||
|
gzfwrite @172
|
||||||
|
deflateGetDictionary @173
|
||||||
|
adler32_z @174
|
||||||
|
crc32_z @175
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* crc32.c -- compute the CRC-32 of a data stream
|
/* crc32.c -- compute the CRC-32 of a data stream
|
||||||
* Copyright (C) 1995-2006, 2010, 2011, 2012 Mark Adler
|
* Copyright (C) 1995-2006, 2010, 2011, 2012, 2016 Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*
|
*
|
||||||
* Thanks to Rodney Brown <rbrown64@csc.com.au> for his contribution of faster
|
* Thanks to Rodney Brown <rbrown64@csc.com.au> for his contribution of faster
|
||||||
@@ -30,17 +30,15 @@
|
|||||||
|
|
||||||
#include "zutil.h" /* for STDC and FAR definitions */
|
#include "zutil.h" /* for STDC and FAR definitions */
|
||||||
|
|
||||||
#define local static
|
|
||||||
|
|
||||||
/* Definitions for doing the crc four data bytes at a time. */
|
/* Definitions for doing the crc four data bytes at a time. */
|
||||||
#if !defined(NOBYFOUR) && defined(Z_U4)
|
#if !defined(NOBYFOUR) && defined(Z_U4)
|
||||||
# define BYFOUR
|
# define BYFOUR
|
||||||
#endif
|
#endif
|
||||||
#ifdef BYFOUR
|
#ifdef BYFOUR
|
||||||
local unsigned long crc32_little OF((unsigned long,
|
local unsigned long crc32_little OF((unsigned long,
|
||||||
const unsigned char FAR *, unsigned));
|
const unsigned char FAR *, z_size_t));
|
||||||
local unsigned long crc32_big OF((unsigned long,
|
local unsigned long crc32_big OF((unsigned long,
|
||||||
const unsigned char FAR *, unsigned));
|
const unsigned char FAR *, z_size_t));
|
||||||
# define TBLS 8
|
# define TBLS 8
|
||||||
#else
|
#else
|
||||||
# define TBLS 1
|
# define TBLS 1
|
||||||
@@ -201,10 +199,10 @@ const z_crc_t FAR * ZEXPORT get_crc_table()
|
|||||||
#define DO8 DO1; DO1; DO1; DO1; DO1; DO1; DO1; DO1
|
#define DO8 DO1; DO1; DO1; DO1; DO1; DO1; DO1; DO1
|
||||||
|
|
||||||
/* ========================================================================= */
|
/* ========================================================================= */
|
||||||
unsigned long ZEXPORT crc32(crc, buf, len)
|
unsigned long ZEXPORT crc32_z(crc, buf, len)
|
||||||
unsigned long crc;
|
unsigned long crc;
|
||||||
const unsigned char FAR *buf;
|
const unsigned char FAR *buf;
|
||||||
uInt len;
|
z_size_t len;
|
||||||
{
|
{
|
||||||
if (buf == Z_NULL) return 0UL;
|
if (buf == Z_NULL) return 0UL;
|
||||||
|
|
||||||
@@ -235,8 +233,29 @@ unsigned long ZEXPORT crc32(crc, buf, len)
|
|||||||
return crc ^ 0xffffffffUL;
|
return crc ^ 0xffffffffUL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ========================================================================= */
|
||||||
|
unsigned long ZEXPORT crc32(crc, buf, len)
|
||||||
|
unsigned long crc;
|
||||||
|
const unsigned char FAR *buf;
|
||||||
|
uInt len;
|
||||||
|
{
|
||||||
|
return crc32_z(crc, buf, len);
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef BYFOUR
|
#ifdef BYFOUR
|
||||||
|
|
||||||
|
/*
|
||||||
|
This BYFOUR code accesses the passed unsigned char * buffer with a 32-bit
|
||||||
|
integer pointer type. This violates the strict aliasing rule, where a
|
||||||
|
compiler can assume, for optimization purposes, that two pointers to
|
||||||
|
fundamentally different types won't ever point to the same memory. This can
|
||||||
|
manifest as a problem only if one of the pointers is written to. This code
|
||||||
|
only reads from those pointers. So long as this code remains isolated in
|
||||||
|
this compilation unit, there won't be a problem. For this reason, this code
|
||||||
|
should not be copied and pasted into a compilation unit in which other code
|
||||||
|
writes to the buffer that is passed to these routines.
|
||||||
|
*/
|
||||||
|
|
||||||
/* ========================================================================= */
|
/* ========================================================================= */
|
||||||
#define DOLIT4 c ^= *buf4++; \
|
#define DOLIT4 c ^= *buf4++; \
|
||||||
c = crc_table[3][c & 0xff] ^ crc_table[2][(c >> 8) & 0xff] ^ \
|
c = crc_table[3][c & 0xff] ^ crc_table[2][(c >> 8) & 0xff] ^ \
|
||||||
@@ -247,7 +266,7 @@ unsigned long ZEXPORT crc32(crc, buf, len)
|
|||||||
local unsigned long crc32_little(crc, buf, len)
|
local unsigned long crc32_little(crc, buf, len)
|
||||||
unsigned long crc;
|
unsigned long crc;
|
||||||
const unsigned char FAR *buf;
|
const unsigned char FAR *buf;
|
||||||
unsigned len;
|
z_size_t len;
|
||||||
{
|
{
|
||||||
register z_crc_t c;
|
register z_crc_t c;
|
||||||
register const z_crc_t FAR *buf4;
|
register const z_crc_t FAR *buf4;
|
||||||
@@ -278,7 +297,7 @@ local unsigned long crc32_little(crc, buf, len)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* ========================================================================= */
|
/* ========================================================================= */
|
||||||
#define DOBIG4 c ^= *++buf4; \
|
#define DOBIG4 c ^= *buf4++; \
|
||||||
c = crc_table[4][c & 0xff] ^ crc_table[5][(c >> 8) & 0xff] ^ \
|
c = crc_table[4][c & 0xff] ^ crc_table[5][(c >> 8) & 0xff] ^ \
|
||||||
crc_table[6][(c >> 16) & 0xff] ^ crc_table[7][c >> 24]
|
crc_table[6][(c >> 16) & 0xff] ^ crc_table[7][c >> 24]
|
||||||
#define DOBIG32 DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4
|
#define DOBIG32 DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4
|
||||||
@@ -287,7 +306,7 @@ local unsigned long crc32_little(crc, buf, len)
|
|||||||
local unsigned long crc32_big(crc, buf, len)
|
local unsigned long crc32_big(crc, buf, len)
|
||||||
unsigned long crc;
|
unsigned long crc;
|
||||||
const unsigned char FAR *buf;
|
const unsigned char FAR *buf;
|
||||||
unsigned len;
|
z_size_t len;
|
||||||
{
|
{
|
||||||
register z_crc_t c;
|
register z_crc_t c;
|
||||||
register const z_crc_t FAR *buf4;
|
register const z_crc_t FAR *buf4;
|
||||||
@@ -300,7 +319,6 @@ local unsigned long crc32_big(crc, buf, len)
|
|||||||
}
|
}
|
||||||
|
|
||||||
buf4 = (const z_crc_t FAR *)(const void FAR *)buf;
|
buf4 = (const z_crc_t FAR *)(const void FAR *)buf;
|
||||||
buf4--;
|
|
||||||
while (len >= 32) {
|
while (len >= 32) {
|
||||||
DOBIG32;
|
DOBIG32;
|
||||||
len -= 32;
|
len -= 32;
|
||||||
@@ -309,7 +327,6 @@ local unsigned long crc32_big(crc, buf, len)
|
|||||||
DOBIG4;
|
DOBIG4;
|
||||||
len -= 4;
|
len -= 4;
|
||||||
}
|
}
|
||||||
buf4++;
|
|
||||||
buf = (const unsigned char FAR *)buf4;
|
buf = (const unsigned char FAR *)buf4;
|
||||||
|
|
||||||
if (len) do {
|
if (len) do {
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,5 @@
|
|||||||
/* deflate.h -- internal compression state
|
/* deflate.h -- internal compression state
|
||||||
* Copyright (C) 1995-2012 Jean-loup Gailly
|
* Copyright (C) 1995-2016 Jean-loup Gailly
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -51,13 +51,16 @@
|
|||||||
#define Buf_size 16
|
#define Buf_size 16
|
||||||
/* size of bit buffer in bi_buf */
|
/* size of bit buffer in bi_buf */
|
||||||
|
|
||||||
#define INIT_STATE 42
|
#define INIT_STATE 42 /* zlib header -> BUSY_STATE */
|
||||||
#define EXTRA_STATE 69
|
#ifdef GZIP
|
||||||
#define NAME_STATE 73
|
# define GZIP_STATE 57 /* gzip header -> BUSY_STATE | EXTRA_STATE */
|
||||||
#define COMMENT_STATE 91
|
#endif
|
||||||
#define HCRC_STATE 103
|
#define EXTRA_STATE 69 /* gzip extra block -> NAME_STATE */
|
||||||
#define BUSY_STATE 113
|
#define NAME_STATE 73 /* gzip file name -> COMMENT_STATE */
|
||||||
#define FINISH_STATE 666
|
#define COMMENT_STATE 91 /* gzip comment -> HCRC_STATE */
|
||||||
|
#define HCRC_STATE 103 /* gzip header CRC -> BUSY_STATE */
|
||||||
|
#define BUSY_STATE 113 /* deflate -> FINISH_STATE */
|
||||||
|
#define FINISH_STATE 666 /* stream complete */
|
||||||
/* Stream status */
|
/* Stream status */
|
||||||
|
|
||||||
|
|
||||||
@@ -83,7 +86,7 @@ typedef struct static_tree_desc_s static_tree_desc;
|
|||||||
typedef struct tree_desc_s {
|
typedef struct tree_desc_s {
|
||||||
ct_data *dyn_tree; /* the dynamic tree */
|
ct_data *dyn_tree; /* the dynamic tree */
|
||||||
int max_code; /* largest code with non zero frequency */
|
int max_code; /* largest code with non zero frequency */
|
||||||
static_tree_desc *stat_desc; /* the corresponding static tree */
|
const static_tree_desc *stat_desc; /* the corresponding static tree */
|
||||||
} FAR tree_desc;
|
} FAR tree_desc;
|
||||||
|
|
||||||
typedef ush Pos;
|
typedef ush Pos;
|
||||||
@@ -100,10 +103,10 @@ typedef struct internal_state {
|
|||||||
Bytef *pending_buf; /* output still pending */
|
Bytef *pending_buf; /* output still pending */
|
||||||
ulg pending_buf_size; /* size of pending_buf */
|
ulg pending_buf_size; /* size of pending_buf */
|
||||||
Bytef *pending_out; /* next pending byte to output to the stream */
|
Bytef *pending_out; /* next pending byte to output to the stream */
|
||||||
uInt pending; /* nb of bytes in the pending buffer */
|
ulg pending; /* nb of bytes in the pending buffer */
|
||||||
int wrap; /* bit 0 true for zlib, bit 1 true for gzip */
|
int wrap; /* bit 0 true for zlib, bit 1 true for gzip */
|
||||||
gz_headerp gzhead; /* gzip header information to write */
|
gz_headerp gzhead; /* gzip header information to write */
|
||||||
uInt gzindex; /* where in extra, name, or comment */
|
ulg gzindex; /* where in extra, name, or comment */
|
||||||
Byte method; /* can only be DEFLATED */
|
Byte method; /* can only be DEFLATED */
|
||||||
int last_flush; /* value of flush param for previous deflate call */
|
int last_flush; /* value of flush param for previous deflate call */
|
||||||
|
|
||||||
@@ -249,7 +252,7 @@ typedef struct internal_state {
|
|||||||
uInt matches; /* number of string matches in current block */
|
uInt matches; /* number of string matches in current block */
|
||||||
uInt insert; /* bytes at end of window left to insert */
|
uInt insert; /* bytes at end of window left to insert */
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef ZLIB_DEBUG
|
||||||
ulg compressed_len; /* total bit length of compressed file mod 2^32 */
|
ulg compressed_len; /* total bit length of compressed file mod 2^32 */
|
||||||
ulg bits_sent; /* bit length of compressed data sent mod 2^32 */
|
ulg bits_sent; /* bit length of compressed data sent mod 2^32 */
|
||||||
#endif
|
#endif
|
||||||
@@ -275,7 +278,7 @@ typedef struct internal_state {
|
|||||||
/* Output a byte on the stream.
|
/* Output a byte on the stream.
|
||||||
* IN assertion: there is enough room in pending_buf.
|
* IN assertion: there is enough room in pending_buf.
|
||||||
*/
|
*/
|
||||||
#define put_byte(s, c) {s->pending_buf[s->pending++] = (c);}
|
#define put_byte(s, c) {s->pending_buf[s->pending++] = (Bytef)(c);}
|
||||||
|
|
||||||
|
|
||||||
#define MIN_LOOKAHEAD (MAX_MATCH+MIN_MATCH+1)
|
#define MIN_LOOKAHEAD (MAX_MATCH+MIN_MATCH+1)
|
||||||
@@ -309,7 +312,7 @@ void ZLIB_INTERNAL _tr_stored_block OF((deflate_state *s, charf *buf,
|
|||||||
* used.
|
* used.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef DEBUG
|
#ifndef ZLIB_DEBUG
|
||||||
/* Inline versions of _tr_tally for speed: */
|
/* Inline versions of _tr_tally for speed: */
|
||||||
|
|
||||||
#if defined(GEN_TREES_H) || !defined(STDC)
|
#if defined(GEN_TREES_H) || !defined(STDC)
|
||||||
@@ -328,8 +331,8 @@ void ZLIB_INTERNAL _tr_stored_block OF((deflate_state *s, charf *buf,
|
|||||||
flush = (s->last_lit == s->lit_bufsize-1); \
|
flush = (s->last_lit == s->lit_bufsize-1); \
|
||||||
}
|
}
|
||||||
# define _tr_tally_dist(s, distance, length, flush) \
|
# define _tr_tally_dist(s, distance, length, flush) \
|
||||||
{ uch len = (length); \
|
{ uch len = (uch)(length); \
|
||||||
ush dist = (distance); \
|
ush dist = (ush)(distance); \
|
||||||
s->d_buf[s->last_lit] = dist; \
|
s->d_buf[s->last_lit] = dist; \
|
||||||
s->l_buf[s->last_lit++] = len; \
|
s->l_buf[s->last_lit++] = len; \
|
||||||
dist--; \
|
dist--; \
|
||||||
|
|||||||
@@ -1,209 +0,0 @@
|
|||||||
1. Compression algorithm (deflate)
|
|
||||||
|
|
||||||
The deflation algorithm used by gzip (also zip and zlib) is a variation of
|
|
||||||
LZ77 (Lempel-Ziv 1977, see reference below). It finds duplicated strings in
|
|
||||||
the input data. The second occurrence of a string is replaced by a
|
|
||||||
pointer to the previous string, in the form of a pair (distance,
|
|
||||||
length). Distances are limited to 32K bytes, and lengths are limited
|
|
||||||
to 258 bytes. When a string does not occur anywhere in the previous
|
|
||||||
32K bytes, it is emitted as a sequence of literal bytes. (In this
|
|
||||||
description, `string' must be taken as an arbitrary sequence of bytes,
|
|
||||||
and is not restricted to printable characters.)
|
|
||||||
|
|
||||||
Literals or match lengths are compressed with one Huffman tree, and
|
|
||||||
match distances are compressed with another tree. The trees are stored
|
|
||||||
in a compact form at the start of each block. The blocks can have any
|
|
||||||
size (except that the compressed data for one block must fit in
|
|
||||||
available memory). A block is terminated when deflate() determines that
|
|
||||||
it would be useful to start another block with fresh trees. (This is
|
|
||||||
somewhat similar to the behavior of LZW-based _compress_.)
|
|
||||||
|
|
||||||
Duplicated strings are found using a hash table. All input strings of
|
|
||||||
length 3 are inserted in the hash table. A hash index is computed for
|
|
||||||
the next 3 bytes. If the hash chain for this index is not empty, all
|
|
||||||
strings in the chain are compared with the current input string, and
|
|
||||||
the longest match is selected.
|
|
||||||
|
|
||||||
The hash chains are searched starting with the most recent strings, to
|
|
||||||
favor small distances and thus take advantage of the Huffman encoding.
|
|
||||||
The hash chains are singly linked. There are no deletions from the
|
|
||||||
hash chains, the algorithm simply discards matches that are too old.
|
|
||||||
|
|
||||||
To avoid a worst-case situation, very long hash chains are arbitrarily
|
|
||||||
truncated at a certain length, determined by a runtime option (level
|
|
||||||
parameter of deflateInit). So deflate() does not always find the longest
|
|
||||||
possible match but generally finds a match which is long enough.
|
|
||||||
|
|
||||||
deflate() also defers the selection of matches with a lazy evaluation
|
|
||||||
mechanism. After a match of length N has been found, deflate() searches for
|
|
||||||
a longer match at the next input byte. If a longer match is found, the
|
|
||||||
previous match is truncated to a length of one (thus producing a single
|
|
||||||
literal byte) and the process of lazy evaluation begins again. Otherwise,
|
|
||||||
the original match is kept, and the next match search is attempted only N
|
|
||||||
steps later.
|
|
||||||
|
|
||||||
The lazy match evaluation is also subject to a runtime parameter. If
|
|
||||||
the current match is long enough, deflate() reduces the search for a longer
|
|
||||||
match, thus speeding up the whole process. If compression ratio is more
|
|
||||||
important than speed, deflate() attempts a complete second search even if
|
|
||||||
the first match is already long enough.
|
|
||||||
|
|
||||||
The lazy match evaluation is not performed for the fastest compression
|
|
||||||
modes (level parameter 1 to 3). For these fast modes, new strings
|
|
||||||
are inserted in the hash table only when no match was found, or
|
|
||||||
when the match is not too long. This degrades the compression ratio
|
|
||||||
but saves time since there are both fewer insertions and fewer searches.
|
|
||||||
|
|
||||||
|
|
||||||
2. Decompression algorithm (inflate)
|
|
||||||
|
|
||||||
2.1 Introduction
|
|
||||||
|
|
||||||
The key question is how to represent a Huffman code (or any prefix code) so
|
|
||||||
that you can decode fast. The most important characteristic is that shorter
|
|
||||||
codes are much more common than longer codes, so pay attention to decoding the
|
|
||||||
short codes fast, and let the long codes take longer to decode.
|
|
||||||
|
|
||||||
inflate() sets up a first level table that covers some number of bits of
|
|
||||||
input less than the length of longest code. It gets that many bits from the
|
|
||||||
stream, and looks it up in the table. The table will tell if the next
|
|
||||||
code is that many bits or less and how many, and if it is, it will tell
|
|
||||||
the value, else it will point to the next level table for which inflate()
|
|
||||||
grabs more bits and tries to decode a longer code.
|
|
||||||
|
|
||||||
How many bits to make the first lookup is a tradeoff between the time it
|
|
||||||
takes to decode and the time it takes to build the table. If building the
|
|
||||||
table took no time (and if you had infinite memory), then there would only
|
|
||||||
be a first level table to cover all the way to the longest code. However,
|
|
||||||
building the table ends up taking a lot longer for more bits since short
|
|
||||||
codes are replicated many times in such a table. What inflate() does is
|
|
||||||
simply to make the number of bits in the first table a variable, and then
|
|
||||||
to set that variable for the maximum speed.
|
|
||||||
|
|
||||||
For inflate, which has 286 possible codes for the literal/length tree, the size
|
|
||||||
of the first table is nine bits. Also the distance trees have 30 possible
|
|
||||||
values, and the size of the first table is six bits. Note that for each of
|
|
||||||
those cases, the table ended up one bit longer than the ``average'' code
|
|
||||||
length, i.e. the code length of an approximately flat code which would be a
|
|
||||||
little more than eight bits for 286 symbols and a little less than five bits
|
|
||||||
for 30 symbols.
|
|
||||||
|
|
||||||
|
|
||||||
2.2 More details on the inflate table lookup
|
|
||||||
|
|
||||||
Ok, you want to know what this cleverly obfuscated inflate tree actually
|
|
||||||
looks like. You are correct that it's not a Huffman tree. It is simply a
|
|
||||||
lookup table for the first, let's say, nine bits of a Huffman symbol. The
|
|
||||||
symbol could be as short as one bit or as long as 15 bits. If a particular
|
|
||||||
symbol is shorter than nine bits, then that symbol's translation is duplicated
|
|
||||||
in all those entries that start with that symbol's bits. For example, if the
|
|
||||||
symbol is four bits, then it's duplicated 32 times in a nine-bit table. If a
|
|
||||||
symbol is nine bits long, it appears in the table once.
|
|
||||||
|
|
||||||
If the symbol is longer than nine bits, then that entry in the table points
|
|
||||||
to another similar table for the remaining bits. Again, there are duplicated
|
|
||||||
entries as needed. The idea is that most of the time the symbol will be short
|
|
||||||
and there will only be one table look up. (That's whole idea behind data
|
|
||||||
compression in the first place.) For the less frequent long symbols, there
|
|
||||||
will be two lookups. If you had a compression method with really long
|
|
||||||
symbols, you could have as many levels of lookups as is efficient. For
|
|
||||||
inflate, two is enough.
|
|
||||||
|
|
||||||
So a table entry either points to another table (in which case nine bits in
|
|
||||||
the above example are gobbled), or it contains the translation for the symbol
|
|
||||||
and the number of bits to gobble. Then you start again with the next
|
|
||||||
ungobbled bit.
|
|
||||||
|
|
||||||
You may wonder: why not just have one lookup table for how ever many bits the
|
|
||||||
longest symbol is? The reason is that if you do that, you end up spending
|
|
||||||
more time filling in duplicate symbol entries than you do actually decoding.
|
|
||||||
At least for deflate's output that generates new trees every several 10's of
|
|
||||||
kbytes. You can imagine that filling in a 2^15 entry table for a 15-bit code
|
|
||||||
would take too long if you're only decoding several thousand symbols. At the
|
|
||||||
other extreme, you could make a new table for every bit in the code. In fact,
|
|
||||||
that's essentially a Huffman tree. But then you spend too much time
|
|
||||||
traversing the tree while decoding, even for short symbols.
|
|
||||||
|
|
||||||
So the number of bits for the first lookup table is a trade of the time to
|
|
||||||
fill out the table vs. the time spent looking at the second level and above of
|
|
||||||
the table.
|
|
||||||
|
|
||||||
Here is an example, scaled down:
|
|
||||||
|
|
||||||
The code being decoded, with 10 symbols, from 1 to 6 bits long:
|
|
||||||
|
|
||||||
A: 0
|
|
||||||
B: 10
|
|
||||||
C: 1100
|
|
||||||
D: 11010
|
|
||||||
E: 11011
|
|
||||||
F: 11100
|
|
||||||
G: 11101
|
|
||||||
H: 11110
|
|
||||||
I: 111110
|
|
||||||
J: 111111
|
|
||||||
|
|
||||||
Let's make the first table three bits long (eight entries):
|
|
||||||
|
|
||||||
000: A,1
|
|
||||||
001: A,1
|
|
||||||
010: A,1
|
|
||||||
011: A,1
|
|
||||||
100: B,2
|
|
||||||
101: B,2
|
|
||||||
110: -> table X (gobble 3 bits)
|
|
||||||
111: -> table Y (gobble 3 bits)
|
|
||||||
|
|
||||||
Each entry is what the bits decode as and how many bits that is, i.e. how
|
|
||||||
many bits to gobble. Or the entry points to another table, with the number of
|
|
||||||
bits to gobble implicit in the size of the table.
|
|
||||||
|
|
||||||
Table X is two bits long since the longest code starting with 110 is five bits
|
|
||||||
long:
|
|
||||||
|
|
||||||
00: C,1
|
|
||||||
01: C,1
|
|
||||||
10: D,2
|
|
||||||
11: E,2
|
|
||||||
|
|
||||||
Table Y is three bits long since the longest code starting with 111 is six
|
|
||||||
bits long:
|
|
||||||
|
|
||||||
000: F,2
|
|
||||||
001: F,2
|
|
||||||
010: G,2
|
|
||||||
011: G,2
|
|
||||||
100: H,2
|
|
||||||
101: H,2
|
|
||||||
110: I,3
|
|
||||||
111: J,3
|
|
||||||
|
|
||||||
So what we have here are three tables with a total of 20 entries that had to
|
|
||||||
be constructed. That's compared to 64 entries for a single table. Or
|
|
||||||
compared to 16 entries for a Huffman tree (six two entry tables and one four
|
|
||||||
entry table). Assuming that the code ideally represents the probability of
|
|
||||||
the symbols, it takes on the average 1.25 lookups per symbol. That's compared
|
|
||||||
to one lookup for the single table, or 1.66 lookups per symbol for the
|
|
||||||
Huffman tree.
|
|
||||||
|
|
||||||
There, I think that gives you a picture of what's going on. For inflate, the
|
|
||||||
meaning of a particular symbol is often more than just a letter. It can be a
|
|
||||||
byte (a "literal"), or it can be either a length or a distance which
|
|
||||||
indicates a base value and a number of bits to fetch after the code that is
|
|
||||||
added to the base value. Or it might be the special end-of-block code. The
|
|
||||||
data structures created in inftrees.c try to encode all that information
|
|
||||||
compactly in the tables.
|
|
||||||
|
|
||||||
|
|
||||||
Jean-loup Gailly Mark Adler
|
|
||||||
jloup@gzip.org madler@alumni.caltech.edu
|
|
||||||
|
|
||||||
|
|
||||||
References:
|
|
||||||
|
|
||||||
[LZ77] Ziv J., Lempel A., ``A Universal Algorithm for Sequential Data
|
|
||||||
Compression,'' IEEE Transactions on Information Theory, Vol. 23, No. 3,
|
|
||||||
pp. 337-343.
|
|
||||||
|
|
||||||
``DEFLATE Compressed Data Format Specification'' available in
|
|
||||||
http://tools.ietf.org/html/rfc1951
|
|
||||||
@@ -1,619 +0,0 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Network Working Group P. Deutsch
|
|
||||||
Request for Comments: 1950 Aladdin Enterprises
|
|
||||||
Category: Informational J-L. Gailly
|
|
||||||
Info-ZIP
|
|
||||||
May 1996
|
|
||||||
|
|
||||||
|
|
||||||
ZLIB Compressed Data Format Specification version 3.3
|
|
||||||
|
|
||||||
Status of This Memo
|
|
||||||
|
|
||||||
This memo provides information for the Internet community. This memo
|
|
||||||
does not specify an Internet standard of any kind. Distribution of
|
|
||||||
this memo is unlimited.
|
|
||||||
|
|
||||||
IESG Note:
|
|
||||||
|
|
||||||
The IESG takes no position on the validity of any Intellectual
|
|
||||||
Property Rights statements contained in this document.
|
|
||||||
|
|
||||||
Notices
|
|
||||||
|
|
||||||
Copyright (c) 1996 L. Peter Deutsch and Jean-Loup Gailly
|
|
||||||
|
|
||||||
Permission is granted to copy and distribute this document for any
|
|
||||||
purpose and without charge, including translations into other
|
|
||||||
languages and incorporation into compilations, provided that the
|
|
||||||
copyright notice and this notice are preserved, and that any
|
|
||||||
substantive changes or deletions from the original are clearly
|
|
||||||
marked.
|
|
||||||
|
|
||||||
A pointer to the latest version of this and related documentation in
|
|
||||||
HTML format can be found at the URL
|
|
||||||
<ftp://ftp.uu.net/graphics/png/documents/zlib/zdoc-index.html>.
|
|
||||||
|
|
||||||
Abstract
|
|
||||||
|
|
||||||
This specification defines a lossless compressed data format. The
|
|
||||||
data can be produced or consumed, even for an arbitrarily long
|
|
||||||
sequentially presented input data stream, using only an a priori
|
|
||||||
bounded amount of intermediate storage. The format presently uses
|
|
||||||
the DEFLATE compression method but can be easily extended to use
|
|
||||||
other compression methods. It can be implemented readily in a manner
|
|
||||||
not covered by patents. This specification also defines the ADLER-32
|
|
||||||
checksum (an extension and improvement of the Fletcher checksum),
|
|
||||||
used for detection of data corruption, and provides an algorithm for
|
|
||||||
computing it.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch & Gailly Informational [Page 1]
|
|
||||||
|
|
||||||
RFC 1950 ZLIB Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
Table of Contents
|
|
||||||
|
|
||||||
1. Introduction ................................................... 2
|
|
||||||
1.1. Purpose ................................................... 2
|
|
||||||
1.2. Intended audience ......................................... 3
|
|
||||||
1.3. Scope ..................................................... 3
|
|
||||||
1.4. Compliance ................................................ 3
|
|
||||||
1.5. Definitions of terms and conventions used ................ 3
|
|
||||||
1.6. Changes from previous versions ............................ 3
|
|
||||||
2. Detailed specification ......................................... 3
|
|
||||||
2.1. Overall conventions ....................................... 3
|
|
||||||
2.2. Data format ............................................... 4
|
|
||||||
2.3. Compliance ................................................ 7
|
|
||||||
3. References ..................................................... 7
|
|
||||||
4. Source code .................................................... 8
|
|
||||||
5. Security Considerations ........................................ 8
|
|
||||||
6. Acknowledgements ............................................... 8
|
|
||||||
7. Authors' Addresses ............................................. 8
|
|
||||||
8. Appendix: Rationale ............................................ 9
|
|
||||||
9. Appendix: Sample code ..........................................10
|
|
||||||
|
|
||||||
1. Introduction
|
|
||||||
|
|
||||||
1.1. Purpose
|
|
||||||
|
|
||||||
The purpose of this specification is to define a lossless
|
|
||||||
compressed data format that:
|
|
||||||
|
|
||||||
* Is independent of CPU type, operating system, file system,
|
|
||||||
and character set, and hence can be used for interchange;
|
|
||||||
|
|
||||||
* Can be produced or consumed, even for an arbitrarily long
|
|
||||||
sequentially presented input data stream, using only an a
|
|
||||||
priori bounded amount of intermediate storage, and hence can
|
|
||||||
be used in data communications or similar structures such as
|
|
||||||
Unix filters;
|
|
||||||
|
|
||||||
* Can use a number of different compression methods;
|
|
||||||
|
|
||||||
* Can be implemented readily in a manner not covered by
|
|
||||||
patents, and hence can be practiced freely.
|
|
||||||
|
|
||||||
The data format defined by this specification does not attempt to
|
|
||||||
allow random access to compressed data.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch & Gailly Informational [Page 2]
|
|
||||||
|
|
||||||
RFC 1950 ZLIB Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
1.2. Intended audience
|
|
||||||
|
|
||||||
This specification is intended for use by implementors of software
|
|
||||||
to compress data into zlib format and/or decompress data from zlib
|
|
||||||
format.
|
|
||||||
|
|
||||||
The text of the specification assumes a basic background in
|
|
||||||
programming at the level of bits and other primitive data
|
|
||||||
representations.
|
|
||||||
|
|
||||||
1.3. Scope
|
|
||||||
|
|
||||||
The specification specifies a compressed data format that can be
|
|
||||||
used for in-memory compression of a sequence of arbitrary bytes.
|
|
||||||
|
|
||||||
1.4. Compliance
|
|
||||||
|
|
||||||
Unless otherwise indicated below, a compliant decompressor must be
|
|
||||||
able to accept and decompress any data set that conforms to all
|
|
||||||
the specifications presented here; a compliant compressor must
|
|
||||||
produce data sets that conform to all the specifications presented
|
|
||||||
here.
|
|
||||||
|
|
||||||
1.5. Definitions of terms and conventions used
|
|
||||||
|
|
||||||
byte: 8 bits stored or transmitted as a unit (same as an octet).
|
|
||||||
(For this specification, a byte is exactly 8 bits, even on
|
|
||||||
machines which store a character on a number of bits different
|
|
||||||
from 8.) See below, for the numbering of bits within a byte.
|
|
||||||
|
|
||||||
1.6. Changes from previous versions
|
|
||||||
|
|
||||||
Version 3.1 was the first public release of this specification.
|
|
||||||
In version 3.2, some terminology was changed and the Adler-32
|
|
||||||
sample code was rewritten for clarity. In version 3.3, the
|
|
||||||
support for a preset dictionary was introduced, and the
|
|
||||||
specification was converted to RFC style.
|
|
||||||
|
|
||||||
2. Detailed specification
|
|
||||||
|
|
||||||
2.1. Overall conventions
|
|
||||||
|
|
||||||
In the diagrams below, a box like this:
|
|
||||||
|
|
||||||
+---+
|
|
||||||
| | <-- the vertical bars might be missing
|
|
||||||
+---+
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch & Gailly Informational [Page 3]
|
|
||||||
|
|
||||||
RFC 1950 ZLIB Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
represents one byte; a box like this:
|
|
||||||
|
|
||||||
+==============+
|
|
||||||
| |
|
|
||||||
+==============+
|
|
||||||
|
|
||||||
represents a variable number of bytes.
|
|
||||||
|
|
||||||
Bytes stored within a computer do not have a "bit order", since
|
|
||||||
they are always treated as a unit. However, a byte considered as
|
|
||||||
an integer between 0 and 255 does have a most- and least-
|
|
||||||
significant bit, and since we write numbers with the most-
|
|
||||||
significant digit on the left, we also write bytes with the most-
|
|
||||||
significant bit on the left. In the diagrams below, we number the
|
|
||||||
bits of a byte so that bit 0 is the least-significant bit, i.e.,
|
|
||||||
the bits are numbered:
|
|
||||||
|
|
||||||
+--------+
|
|
||||||
|76543210|
|
|
||||||
+--------+
|
|
||||||
|
|
||||||
Within a computer, a number may occupy multiple bytes. All
|
|
||||||
multi-byte numbers in the format described here are stored with
|
|
||||||
the MOST-significant byte first (at the lower memory address).
|
|
||||||
For example, the decimal number 520 is stored as:
|
|
||||||
|
|
||||||
0 1
|
|
||||||
+--------+--------+
|
|
||||||
|00000010|00001000|
|
|
||||||
+--------+--------+
|
|
||||||
^ ^
|
|
||||||
| |
|
|
||||||
| + less significant byte = 8
|
|
||||||
+ more significant byte = 2 x 256
|
|
||||||
|
|
||||||
2.2. Data format
|
|
||||||
|
|
||||||
A zlib stream has the following structure:
|
|
||||||
|
|
||||||
0 1
|
|
||||||
+---+---+
|
|
||||||
|CMF|FLG| (more-->)
|
|
||||||
+---+---+
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch & Gailly Informational [Page 4]
|
|
||||||
|
|
||||||
RFC 1950 ZLIB Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
(if FLG.FDICT set)
|
|
||||||
|
|
||||||
0 1 2 3
|
|
||||||
+---+---+---+---+
|
|
||||||
| DICTID | (more-->)
|
|
||||||
+---+---+---+---+
|
|
||||||
|
|
||||||
+=====================+---+---+---+---+
|
|
||||||
|...compressed data...| ADLER32 |
|
|
||||||
+=====================+---+---+---+---+
|
|
||||||
|
|
||||||
Any data which may appear after ADLER32 are not part of the zlib
|
|
||||||
stream.
|
|
||||||
|
|
||||||
CMF (Compression Method and flags)
|
|
||||||
This byte is divided into a 4-bit compression method and a 4-
|
|
||||||
bit information field depending on the compression method.
|
|
||||||
|
|
||||||
bits 0 to 3 CM Compression method
|
|
||||||
bits 4 to 7 CINFO Compression info
|
|
||||||
|
|
||||||
CM (Compression method)
|
|
||||||
This identifies the compression method used in the file. CM = 8
|
|
||||||
denotes the "deflate" compression method with a window size up
|
|
||||||
to 32K. This is the method used by gzip and PNG (see
|
|
||||||
references [1] and [2] in Chapter 3, below, for the reference
|
|
||||||
documents). CM = 15 is reserved. It might be used in a future
|
|
||||||
version of this specification to indicate the presence of an
|
|
||||||
extra field before the compressed data.
|
|
||||||
|
|
||||||
CINFO (Compression info)
|
|
||||||
For CM = 8, CINFO is the base-2 logarithm of the LZ77 window
|
|
||||||
size, minus eight (CINFO=7 indicates a 32K window size). Values
|
|
||||||
of CINFO above 7 are not allowed in this version of the
|
|
||||||
specification. CINFO is not defined in this specification for
|
|
||||||
CM not equal to 8.
|
|
||||||
|
|
||||||
FLG (FLaGs)
|
|
||||||
This flag byte is divided as follows:
|
|
||||||
|
|
||||||
bits 0 to 4 FCHECK (check bits for CMF and FLG)
|
|
||||||
bit 5 FDICT (preset dictionary)
|
|
||||||
bits 6 to 7 FLEVEL (compression level)
|
|
||||||
|
|
||||||
The FCHECK value must be such that CMF and FLG, when viewed as
|
|
||||||
a 16-bit unsigned integer stored in MSB order (CMF*256 + FLG),
|
|
||||||
is a multiple of 31.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch & Gailly Informational [Page 5]
|
|
||||||
|
|
||||||
RFC 1950 ZLIB Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
FDICT (Preset dictionary)
|
|
||||||
If FDICT is set, a DICT dictionary identifier is present
|
|
||||||
immediately after the FLG byte. The dictionary is a sequence of
|
|
||||||
bytes which are initially fed to the compressor without
|
|
||||||
producing any compressed output. DICT is the Adler-32 checksum
|
|
||||||
of this sequence of bytes (see the definition of ADLER32
|
|
||||||
below). The decompressor can use this identifier to determine
|
|
||||||
which dictionary has been used by the compressor.
|
|
||||||
|
|
||||||
FLEVEL (Compression level)
|
|
||||||
These flags are available for use by specific compression
|
|
||||||
methods. The "deflate" method (CM = 8) sets these flags as
|
|
||||||
follows:
|
|
||||||
|
|
||||||
0 - compressor used fastest algorithm
|
|
||||||
1 - compressor used fast algorithm
|
|
||||||
2 - compressor used default algorithm
|
|
||||||
3 - compressor used maximum compression, slowest algorithm
|
|
||||||
|
|
||||||
The information in FLEVEL is not needed for decompression; it
|
|
||||||
is there to indicate if recompression might be worthwhile.
|
|
||||||
|
|
||||||
compressed data
|
|
||||||
For compression method 8, the compressed data is stored in the
|
|
||||||
deflate compressed data format as described in the document
|
|
||||||
"DEFLATE Compressed Data Format Specification" by L. Peter
|
|
||||||
Deutsch. (See reference [3] in Chapter 3, below)
|
|
||||||
|
|
||||||
Other compressed data formats are not specified in this version
|
|
||||||
of the zlib specification.
|
|
||||||
|
|
||||||
ADLER32 (Adler-32 checksum)
|
|
||||||
This contains a checksum value of the uncompressed data
|
|
||||||
(excluding any dictionary data) computed according to Adler-32
|
|
||||||
algorithm. This algorithm is a 32-bit extension and improvement
|
|
||||||
of the Fletcher algorithm, used in the ITU-T X.224 / ISO 8073
|
|
||||||
standard. See references [4] and [5] in Chapter 3, below)
|
|
||||||
|
|
||||||
Adler-32 is composed of two sums accumulated per byte: s1 is
|
|
||||||
the sum of all bytes, s2 is the sum of all s1 values. Both sums
|
|
||||||
are done modulo 65521. s1 is initialized to 1, s2 to zero. The
|
|
||||||
Adler-32 checksum is stored as s2*65536 + s1 in most-
|
|
||||||
significant-byte first (network) order.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch & Gailly Informational [Page 6]
|
|
||||||
|
|
||||||
RFC 1950 ZLIB Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
2.3. Compliance
|
|
||||||
|
|
||||||
A compliant compressor must produce streams with correct CMF, FLG
|
|
||||||
and ADLER32, but need not support preset dictionaries. When the
|
|
||||||
zlib data format is used as part of another standard data format,
|
|
||||||
the compressor may use only preset dictionaries that are specified
|
|
||||||
by this other data format. If this other format does not use the
|
|
||||||
preset dictionary feature, the compressor must not set the FDICT
|
|
||||||
flag.
|
|
||||||
|
|
||||||
A compliant decompressor must check CMF, FLG, and ADLER32, and
|
|
||||||
provide an error indication if any of these have incorrect values.
|
|
||||||
A compliant decompressor must give an error indication if CM is
|
|
||||||
not one of the values defined in this specification (only the
|
|
||||||
value 8 is permitted in this version), since another value could
|
|
||||||
indicate the presence of new features that would cause subsequent
|
|
||||||
data to be interpreted incorrectly. A compliant decompressor must
|
|
||||||
give an error indication if FDICT is set and DICTID is not the
|
|
||||||
identifier of a known preset dictionary. A decompressor may
|
|
||||||
ignore FLEVEL and still be compliant. When the zlib data format
|
|
||||||
is being used as a part of another standard format, a compliant
|
|
||||||
decompressor must support all the preset dictionaries specified by
|
|
||||||
the other format. When the other format does not use the preset
|
|
||||||
dictionary feature, a compliant decompressor must reject any
|
|
||||||
stream in which the FDICT flag is set.
|
|
||||||
|
|
||||||
3. References
|
|
||||||
|
|
||||||
[1] Deutsch, L.P.,"GZIP Compressed Data Format Specification",
|
|
||||||
available in ftp://ftp.uu.net/pub/archiving/zip/doc/
|
|
||||||
|
|
||||||
[2] Thomas Boutell, "PNG (Portable Network Graphics) specification",
|
|
||||||
available in ftp://ftp.uu.net/graphics/png/documents/
|
|
||||||
|
|
||||||
[3] Deutsch, L.P.,"DEFLATE Compressed Data Format Specification",
|
|
||||||
available in ftp://ftp.uu.net/pub/archiving/zip/doc/
|
|
||||||
|
|
||||||
[4] Fletcher, J. G., "An Arithmetic Checksum for Serial
|
|
||||||
Transmissions," IEEE Transactions on Communications, Vol. COM-30,
|
|
||||||
No. 1, January 1982, pp. 247-252.
|
|
||||||
|
|
||||||
[5] ITU-T Recommendation X.224, Annex D, "Checksum Algorithms,"
|
|
||||||
November, 1993, pp. 144, 145. (Available from
|
|
||||||
gopher://info.itu.ch). ITU-T X.244 is also the same as ISO 8073.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch & Gailly Informational [Page 7]
|
|
||||||
|
|
||||||
RFC 1950 ZLIB Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
4. Source code
|
|
||||||
|
|
||||||
Source code for a C language implementation of a "zlib" compliant
|
|
||||||
library is available at ftp://ftp.uu.net/pub/archiving/zip/zlib/.
|
|
||||||
|
|
||||||
5. Security Considerations
|
|
||||||
|
|
||||||
A decoder that fails to check the ADLER32 checksum value may be
|
|
||||||
subject to undetected data corruption.
|
|
||||||
|
|
||||||
6. Acknowledgements
|
|
||||||
|
|
||||||
Trademarks cited in this document are the property of their
|
|
||||||
respective owners.
|
|
||||||
|
|
||||||
Jean-Loup Gailly and Mark Adler designed the zlib format and wrote
|
|
||||||
the related software described in this specification. Glenn
|
|
||||||
Randers-Pehrson converted this document to RFC and HTML format.
|
|
||||||
|
|
||||||
7. Authors' Addresses
|
|
||||||
|
|
||||||
L. Peter Deutsch
|
|
||||||
Aladdin Enterprises
|
|
||||||
203 Santa Margarita Ave.
|
|
||||||
Menlo Park, CA 94025
|
|
||||||
|
|
||||||
Phone: (415) 322-0103 (AM only)
|
|
||||||
FAX: (415) 322-1734
|
|
||||||
EMail: <ghost@aladdin.com>
|
|
||||||
|
|
||||||
|
|
||||||
Jean-Loup Gailly
|
|
||||||
|
|
||||||
EMail: <gzip@prep.ai.mit.edu>
|
|
||||||
|
|
||||||
Questions about the technical content of this specification can be
|
|
||||||
sent by email to
|
|
||||||
|
|
||||||
Jean-Loup Gailly <gzip@prep.ai.mit.edu> and
|
|
||||||
Mark Adler <madler@alumni.caltech.edu>
|
|
||||||
|
|
||||||
Editorial comments on this specification can be sent by email to
|
|
||||||
|
|
||||||
L. Peter Deutsch <ghost@aladdin.com> and
|
|
||||||
Glenn Randers-Pehrson <randeg@alumni.rpi.edu>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch & Gailly Informational [Page 8]
|
|
||||||
|
|
||||||
RFC 1950 ZLIB Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
8. Appendix: Rationale
|
|
||||||
|
|
||||||
8.1. Preset dictionaries
|
|
||||||
|
|
||||||
A preset dictionary is specially useful to compress short input
|
|
||||||
sequences. The compressor can take advantage of the dictionary
|
|
||||||
context to encode the input in a more compact manner. The
|
|
||||||
decompressor can be initialized with the appropriate context by
|
|
||||||
virtually decompressing a compressed version of the dictionary
|
|
||||||
without producing any output. However for certain compression
|
|
||||||
algorithms such as the deflate algorithm this operation can be
|
|
||||||
achieved without actually performing any decompression.
|
|
||||||
|
|
||||||
The compressor and the decompressor must use exactly the same
|
|
||||||
dictionary. The dictionary may be fixed or may be chosen among a
|
|
||||||
certain number of predefined dictionaries, according to the kind
|
|
||||||
of input data. The decompressor can determine which dictionary has
|
|
||||||
been chosen by the compressor by checking the dictionary
|
|
||||||
identifier. This document does not specify the contents of
|
|
||||||
predefined dictionaries, since the optimal dictionaries are
|
|
||||||
application specific. Standard data formats using this feature of
|
|
||||||
the zlib specification must precisely define the allowed
|
|
||||||
dictionaries.
|
|
||||||
|
|
||||||
8.2. The Adler-32 algorithm
|
|
||||||
|
|
||||||
The Adler-32 algorithm is much faster than the CRC32 algorithm yet
|
|
||||||
still provides an extremely low probability of undetected errors.
|
|
||||||
|
|
||||||
The modulo on unsigned long accumulators can be delayed for 5552
|
|
||||||
bytes, so the modulo operation time is negligible. If the bytes
|
|
||||||
are a, b, c, the second sum is 3a + 2b + c + 3, and so is position
|
|
||||||
and order sensitive, unlike the first sum, which is just a
|
|
||||||
checksum. That 65521 is prime is important to avoid a possible
|
|
||||||
large class of two-byte errors that leave the check unchanged.
|
|
||||||
(The Fletcher checksum uses 255, which is not prime and which also
|
|
||||||
makes the Fletcher check insensitive to single byte changes 0 <->
|
|
||||||
255.)
|
|
||||||
|
|
||||||
The sum s1 is initialized to 1 instead of zero to make the length
|
|
||||||
of the sequence part of s2, so that the length does not have to be
|
|
||||||
checked separately. (Any sequence of zeroes has a Fletcher
|
|
||||||
checksum of zero.)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch & Gailly Informational [Page 9]
|
|
||||||
|
|
||||||
RFC 1950 ZLIB Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
9. Appendix: Sample code
|
|
||||||
|
|
||||||
The following C code computes the Adler-32 checksum of a data buffer.
|
|
||||||
It is written for clarity, not for speed. The sample code is in the
|
|
||||||
ANSI C programming language. Non C users may find it easier to read
|
|
||||||
with these hints:
|
|
||||||
|
|
||||||
& Bitwise AND operator.
|
|
||||||
>> Bitwise right shift operator. When applied to an
|
|
||||||
unsigned quantity, as here, right shift inserts zero bit(s)
|
|
||||||
at the left.
|
|
||||||
<< Bitwise left shift operator. Left shift inserts zero
|
|
||||||
bit(s) at the right.
|
|
||||||
++ "n++" increments the variable n.
|
|
||||||
% modulo operator: a % b is the remainder of a divided by b.
|
|
||||||
|
|
||||||
#define BASE 65521 /* largest prime smaller than 65536 */
|
|
||||||
|
|
||||||
/*
|
|
||||||
Update a running Adler-32 checksum with the bytes buf[0..len-1]
|
|
||||||
and return the updated checksum. The Adler-32 checksum should be
|
|
||||||
initialized to 1.
|
|
||||||
|
|
||||||
Usage example:
|
|
||||||
|
|
||||||
unsigned long adler = 1L;
|
|
||||||
|
|
||||||
while (read_buffer(buffer, length) != EOF) {
|
|
||||||
adler = update_adler32(adler, buffer, length);
|
|
||||||
}
|
|
||||||
if (adler != original_adler) error();
|
|
||||||
*/
|
|
||||||
unsigned long update_adler32(unsigned long adler,
|
|
||||||
unsigned char *buf, int len)
|
|
||||||
{
|
|
||||||
unsigned long s1 = adler & 0xffff;
|
|
||||||
unsigned long s2 = (adler >> 16) & 0xffff;
|
|
||||||
int n;
|
|
||||||
|
|
||||||
for (n = 0; n < len; n++) {
|
|
||||||
s1 = (s1 + buf[n]) % BASE;
|
|
||||||
s2 = (s2 + s1) % BASE;
|
|
||||||
}
|
|
||||||
return (s2 << 16) + s1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Return the adler32 of the bytes buf[0..len-1] */
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch & Gailly Informational [Page 10]
|
|
||||||
|
|
||||||
RFC 1950 ZLIB Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
unsigned long adler32(unsigned char *buf, int len)
|
|
||||||
{
|
|
||||||
return update_adler32(1L, buf, len);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch & Gailly Informational [Page 11]
|
|
||||||
|
|
||||||
@@ -1,955 +0,0 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Network Working Group P. Deutsch
|
|
||||||
Request for Comments: 1951 Aladdin Enterprises
|
|
||||||
Category: Informational May 1996
|
|
||||||
|
|
||||||
|
|
||||||
DEFLATE Compressed Data Format Specification version 1.3
|
|
||||||
|
|
||||||
Status of This Memo
|
|
||||||
|
|
||||||
This memo provides information for the Internet community. This memo
|
|
||||||
does not specify an Internet standard of any kind. Distribution of
|
|
||||||
this memo is unlimited.
|
|
||||||
|
|
||||||
IESG Note:
|
|
||||||
|
|
||||||
The IESG takes no position on the validity of any Intellectual
|
|
||||||
Property Rights statements contained in this document.
|
|
||||||
|
|
||||||
Notices
|
|
||||||
|
|
||||||
Copyright (c) 1996 L. Peter Deutsch
|
|
||||||
|
|
||||||
Permission is granted to copy and distribute this document for any
|
|
||||||
purpose and without charge, including translations into other
|
|
||||||
languages and incorporation into compilations, provided that the
|
|
||||||
copyright notice and this notice are preserved, and that any
|
|
||||||
substantive changes or deletions from the original are clearly
|
|
||||||
marked.
|
|
||||||
|
|
||||||
A pointer to the latest version of this and related documentation in
|
|
||||||
HTML format can be found at the URL
|
|
||||||
<ftp://ftp.uu.net/graphics/png/documents/zlib/zdoc-index.html>.
|
|
||||||
|
|
||||||
Abstract
|
|
||||||
|
|
||||||
This specification defines a lossless compressed data format that
|
|
||||||
compresses data using a combination of the LZ77 algorithm and Huffman
|
|
||||||
coding, with efficiency comparable to the best currently available
|
|
||||||
general-purpose compression methods. The data can be produced or
|
|
||||||
consumed, even for an arbitrarily long sequentially presented input
|
|
||||||
data stream, using only an a priori bounded amount of intermediate
|
|
||||||
storage. The format can be implemented readily in a manner not
|
|
||||||
covered by patents.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 1]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
Table of Contents
|
|
||||||
|
|
||||||
1. Introduction ................................................... 2
|
|
||||||
1.1. Purpose ................................................... 2
|
|
||||||
1.2. Intended audience ......................................... 3
|
|
||||||
1.3. Scope ..................................................... 3
|
|
||||||
1.4. Compliance ................................................ 3
|
|
||||||
1.5. Definitions of terms and conventions used ................ 3
|
|
||||||
1.6. Changes from previous versions ............................ 4
|
|
||||||
2. Compressed representation overview ............................. 4
|
|
||||||
3. Detailed specification ......................................... 5
|
|
||||||
3.1. Overall conventions ....................................... 5
|
|
||||||
3.1.1. Packing into bytes .................................. 5
|
|
||||||
3.2. Compressed block format ................................... 6
|
|
||||||
3.2.1. Synopsis of prefix and Huffman coding ............... 6
|
|
||||||
3.2.2. Use of Huffman coding in the "deflate" format ....... 7
|
|
||||||
3.2.3. Details of block format ............................. 9
|
|
||||||
3.2.4. Non-compressed blocks (BTYPE=00) ................... 11
|
|
||||||
3.2.5. Compressed blocks (length and distance codes) ...... 11
|
|
||||||
3.2.6. Compression with fixed Huffman codes (BTYPE=01) .... 12
|
|
||||||
3.2.7. Compression with dynamic Huffman codes (BTYPE=10) .. 13
|
|
||||||
3.3. Compliance ............................................... 14
|
|
||||||
4. Compression algorithm details ................................. 14
|
|
||||||
5. References .................................................... 16
|
|
||||||
6. Security Considerations ....................................... 16
|
|
||||||
7. Source code ................................................... 16
|
|
||||||
8. Acknowledgements .............................................. 16
|
|
||||||
9. Author's Address .............................................. 17
|
|
||||||
|
|
||||||
1. Introduction
|
|
||||||
|
|
||||||
1.1. Purpose
|
|
||||||
|
|
||||||
The purpose of this specification is to define a lossless
|
|
||||||
compressed data format that:
|
|
||||||
* Is independent of CPU type, operating system, file system,
|
|
||||||
and character set, and hence can be used for interchange;
|
|
||||||
* Can be produced or consumed, even for an arbitrarily long
|
|
||||||
sequentially presented input data stream, using only an a
|
|
||||||
priori bounded amount of intermediate storage, and hence
|
|
||||||
can be used in data communications or similar structures
|
|
||||||
such as Unix filters;
|
|
||||||
* Compresses data with efficiency comparable to the best
|
|
||||||
currently available general-purpose compression methods,
|
|
||||||
and in particular considerably better than the "compress"
|
|
||||||
program;
|
|
||||||
* Can be implemented readily in a manner not covered by
|
|
||||||
patents, and hence can be practiced freely;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 2]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
* Is compatible with the file format produced by the current
|
|
||||||
widely used gzip utility, in that conforming decompressors
|
|
||||||
will be able to read data produced by the existing gzip
|
|
||||||
compressor.
|
|
||||||
|
|
||||||
The data format defined by this specification does not attempt to:
|
|
||||||
|
|
||||||
* Allow random access to compressed data;
|
|
||||||
* Compress specialized data (e.g., raster graphics) as well
|
|
||||||
as the best currently available specialized algorithms.
|
|
||||||
|
|
||||||
A simple counting argument shows that no lossless compression
|
|
||||||
algorithm can compress every possible input data set. For the
|
|
||||||
format defined here, the worst case expansion is 5 bytes per 32K-
|
|
||||||
byte block, i.e., a size increase of 0.015% for large data sets.
|
|
||||||
English text usually compresses by a factor of 2.5 to 3;
|
|
||||||
executable files usually compress somewhat less; graphical data
|
|
||||||
such as raster images may compress much more.
|
|
||||||
|
|
||||||
1.2. Intended audience
|
|
||||||
|
|
||||||
This specification is intended for use by implementors of software
|
|
||||||
to compress data into "deflate" format and/or decompress data from
|
|
||||||
"deflate" format.
|
|
||||||
|
|
||||||
The text of the specification assumes a basic background in
|
|
||||||
programming at the level of bits and other primitive data
|
|
||||||
representations. Familiarity with the technique of Huffman coding
|
|
||||||
is helpful but not required.
|
|
||||||
|
|
||||||
1.3. Scope
|
|
||||||
|
|
||||||
The specification specifies a method for representing a sequence
|
|
||||||
of bytes as a (usually shorter) sequence of bits, and a method for
|
|
||||||
packing the latter bit sequence into bytes.
|
|
||||||
|
|
||||||
1.4. Compliance
|
|
||||||
|
|
||||||
Unless otherwise indicated below, a compliant decompressor must be
|
|
||||||
able to accept and decompress any data set that conforms to all
|
|
||||||
the specifications presented here; a compliant compressor must
|
|
||||||
produce data sets that conform to all the specifications presented
|
|
||||||
here.
|
|
||||||
|
|
||||||
1.5. Definitions of terms and conventions used
|
|
||||||
|
|
||||||
Byte: 8 bits stored or transmitted as a unit (same as an octet).
|
|
||||||
For this specification, a byte is exactly 8 bits, even on machines
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 3]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
which store a character on a number of bits different from eight.
|
|
||||||
See below, for the numbering of bits within a byte.
|
|
||||||
|
|
||||||
String: a sequence of arbitrary bytes.
|
|
||||||
|
|
||||||
1.6. Changes from previous versions
|
|
||||||
|
|
||||||
There have been no technical changes to the deflate format since
|
|
||||||
version 1.1 of this specification. In version 1.2, some
|
|
||||||
terminology was changed. Version 1.3 is a conversion of the
|
|
||||||
specification to RFC style.
|
|
||||||
|
|
||||||
2. Compressed representation overview
|
|
||||||
|
|
||||||
A compressed data set consists of a series of blocks, corresponding
|
|
||||||
to successive blocks of input data. The block sizes are arbitrary,
|
|
||||||
except that non-compressible blocks are limited to 65,535 bytes.
|
|
||||||
|
|
||||||
Each block is compressed using a combination of the LZ77 algorithm
|
|
||||||
and Huffman coding. The Huffman trees for each block are independent
|
|
||||||
of those for previous or subsequent blocks; the LZ77 algorithm may
|
|
||||||
use a reference to a duplicated string occurring in a previous block,
|
|
||||||
up to 32K input bytes before.
|
|
||||||
|
|
||||||
Each block consists of two parts: a pair of Huffman code trees that
|
|
||||||
describe the representation of the compressed data part, and a
|
|
||||||
compressed data part. (The Huffman trees themselves are compressed
|
|
||||||
using Huffman encoding.) The compressed data consists of a series of
|
|
||||||
elements of two types: literal bytes (of strings that have not been
|
|
||||||
detected as duplicated within the previous 32K input bytes), and
|
|
||||||
pointers to duplicated strings, where a pointer is represented as a
|
|
||||||
pair <length, backward distance>. The representation used in the
|
|
||||||
"deflate" format limits distances to 32K bytes and lengths to 258
|
|
||||||
bytes, but does not limit the size of a block, except for
|
|
||||||
uncompressible blocks, which are limited as noted above.
|
|
||||||
|
|
||||||
Each type of value (literals, distances, and lengths) in the
|
|
||||||
compressed data is represented using a Huffman code, using one code
|
|
||||||
tree for literals and lengths and a separate code tree for distances.
|
|
||||||
The code trees for each block appear in a compact form just before
|
|
||||||
the compressed data for that block.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 4]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
3. Detailed specification
|
|
||||||
|
|
||||||
3.1. Overall conventions In the diagrams below, a box like this:
|
|
||||||
|
|
||||||
+---+
|
|
||||||
| | <-- the vertical bars might be missing
|
|
||||||
+---+
|
|
||||||
|
|
||||||
represents one byte; a box like this:
|
|
||||||
|
|
||||||
+==============+
|
|
||||||
| |
|
|
||||||
+==============+
|
|
||||||
|
|
||||||
represents a variable number of bytes.
|
|
||||||
|
|
||||||
Bytes stored within a computer do not have a "bit order", since
|
|
||||||
they are always treated as a unit. However, a byte considered as
|
|
||||||
an integer between 0 and 255 does have a most- and least-
|
|
||||||
significant bit, and since we write numbers with the most-
|
|
||||||
significant digit on the left, we also write bytes with the most-
|
|
||||||
significant bit on the left. In the diagrams below, we number the
|
|
||||||
bits of a byte so that bit 0 is the least-significant bit, i.e.,
|
|
||||||
the bits are numbered:
|
|
||||||
|
|
||||||
+--------+
|
|
||||||
|76543210|
|
|
||||||
+--------+
|
|
||||||
|
|
||||||
Within a computer, a number may occupy multiple bytes. All
|
|
||||||
multi-byte numbers in the format described here are stored with
|
|
||||||
the least-significant byte first (at the lower memory address).
|
|
||||||
For example, the decimal number 520 is stored as:
|
|
||||||
|
|
||||||
0 1
|
|
||||||
+--------+--------+
|
|
||||||
|00001000|00000010|
|
|
||||||
+--------+--------+
|
|
||||||
^ ^
|
|
||||||
| |
|
|
||||||
| + more significant byte = 2 x 256
|
|
||||||
+ less significant byte = 8
|
|
||||||
|
|
||||||
3.1.1. Packing into bytes
|
|
||||||
|
|
||||||
This document does not address the issue of the order in which
|
|
||||||
bits of a byte are transmitted on a bit-sequential medium,
|
|
||||||
since the final data format described here is byte- rather than
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 5]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
bit-oriented. However, we describe the compressed block format
|
|
||||||
in below, as a sequence of data elements of various bit
|
|
||||||
lengths, not a sequence of bytes. We must therefore specify
|
|
||||||
how to pack these data elements into bytes to form the final
|
|
||||||
compressed byte sequence:
|
|
||||||
|
|
||||||
* Data elements are packed into bytes in order of
|
|
||||||
increasing bit number within the byte, i.e., starting
|
|
||||||
with the least-significant bit of the byte.
|
|
||||||
* Data elements other than Huffman codes are packed
|
|
||||||
starting with the least-significant bit of the data
|
|
||||||
element.
|
|
||||||
* Huffman codes are packed starting with the most-
|
|
||||||
significant bit of the code.
|
|
||||||
|
|
||||||
In other words, if one were to print out the compressed data as
|
|
||||||
a sequence of bytes, starting with the first byte at the
|
|
||||||
*right* margin and proceeding to the *left*, with the most-
|
|
||||||
significant bit of each byte on the left as usual, one would be
|
|
||||||
able to parse the result from right to left, with fixed-width
|
|
||||||
elements in the correct MSB-to-LSB order and Huffman codes in
|
|
||||||
bit-reversed order (i.e., with the first bit of the code in the
|
|
||||||
relative LSB position).
|
|
||||||
|
|
||||||
3.2. Compressed block format
|
|
||||||
|
|
||||||
3.2.1. Synopsis of prefix and Huffman coding
|
|
||||||
|
|
||||||
Prefix coding represents symbols from an a priori known
|
|
||||||
alphabet by bit sequences (codes), one code for each symbol, in
|
|
||||||
a manner such that different symbols may be represented by bit
|
|
||||||
sequences of different lengths, but a parser can always parse
|
|
||||||
an encoded string unambiguously symbol-by-symbol.
|
|
||||||
|
|
||||||
We define a prefix code in terms of a binary tree in which the
|
|
||||||
two edges descending from each non-leaf node are labeled 0 and
|
|
||||||
1 and in which the leaf nodes correspond one-for-one with (are
|
|
||||||
labeled with) the symbols of the alphabet; then the code for a
|
|
||||||
symbol is the sequence of 0's and 1's on the edges leading from
|
|
||||||
the root to the leaf labeled with that symbol. For example:
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 6]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
/\ Symbol Code
|
|
||||||
0 1 ------ ----
|
|
||||||
/ \ A 00
|
|
||||||
/\ B B 1
|
|
||||||
0 1 C 011
|
|
||||||
/ \ D 010
|
|
||||||
A /\
|
|
||||||
0 1
|
|
||||||
/ \
|
|
||||||
D C
|
|
||||||
|
|
||||||
A parser can decode the next symbol from an encoded input
|
|
||||||
stream by walking down the tree from the root, at each step
|
|
||||||
choosing the edge corresponding to the next input bit.
|
|
||||||
|
|
||||||
Given an alphabet with known symbol frequencies, the Huffman
|
|
||||||
algorithm allows the construction of an optimal prefix code
|
|
||||||
(one which represents strings with those symbol frequencies
|
|
||||||
using the fewest bits of any possible prefix codes for that
|
|
||||||
alphabet). Such a code is called a Huffman code. (See
|
|
||||||
reference [1] in Chapter 5, references for additional
|
|
||||||
information on Huffman codes.)
|
|
||||||
|
|
||||||
Note that in the "deflate" format, the Huffman codes for the
|
|
||||||
various alphabets must not exceed certain maximum code lengths.
|
|
||||||
This constraint complicates the algorithm for computing code
|
|
||||||
lengths from symbol frequencies. Again, see Chapter 5,
|
|
||||||
references for details.
|
|
||||||
|
|
||||||
3.2.2. Use of Huffman coding in the "deflate" format
|
|
||||||
|
|
||||||
The Huffman codes used for each alphabet in the "deflate"
|
|
||||||
format have two additional rules:
|
|
||||||
|
|
||||||
* All codes of a given bit length have lexicographically
|
|
||||||
consecutive values, in the same order as the symbols
|
|
||||||
they represent;
|
|
||||||
|
|
||||||
* Shorter codes lexicographically precede longer codes.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 7]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
We could recode the example above to follow this rule as
|
|
||||||
follows, assuming that the order of the alphabet is ABCD:
|
|
||||||
|
|
||||||
Symbol Code
|
|
||||||
------ ----
|
|
||||||
A 10
|
|
||||||
B 0
|
|
||||||
C 110
|
|
||||||
D 111
|
|
||||||
|
|
||||||
I.e., 0 precedes 10 which precedes 11x, and 110 and 111 are
|
|
||||||
lexicographically consecutive.
|
|
||||||
|
|
||||||
Given this rule, we can define the Huffman code for an alphabet
|
|
||||||
just by giving the bit lengths of the codes for each symbol of
|
|
||||||
the alphabet in order; this is sufficient to determine the
|
|
||||||
actual codes. In our example, the code is completely defined
|
|
||||||
by the sequence of bit lengths (2, 1, 3, 3). The following
|
|
||||||
algorithm generates the codes as integers, intended to be read
|
|
||||||
from most- to least-significant bit. The code lengths are
|
|
||||||
initially in tree[I].Len; the codes are produced in
|
|
||||||
tree[I].Code.
|
|
||||||
|
|
||||||
1) Count the number of codes for each code length. Let
|
|
||||||
bl_count[N] be the number of codes of length N, N >= 1.
|
|
||||||
|
|
||||||
2) Find the numerical value of the smallest code for each
|
|
||||||
code length:
|
|
||||||
|
|
||||||
code = 0;
|
|
||||||
bl_count[0] = 0;
|
|
||||||
for (bits = 1; bits <= MAX_BITS; bits++) {
|
|
||||||
code = (code + bl_count[bits-1]) << 1;
|
|
||||||
next_code[bits] = code;
|
|
||||||
}
|
|
||||||
|
|
||||||
3) Assign numerical values to all codes, using consecutive
|
|
||||||
values for all codes of the same length with the base
|
|
||||||
values determined at step 2. Codes that are never used
|
|
||||||
(which have a bit length of zero) must not be assigned a
|
|
||||||
value.
|
|
||||||
|
|
||||||
for (n = 0; n <= max_code; n++) {
|
|
||||||
len = tree[n].Len;
|
|
||||||
if (len != 0) {
|
|
||||||
tree[n].Code = next_code[len];
|
|
||||||
next_code[len]++;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 8]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
Consider the alphabet ABCDEFGH, with bit lengths (3, 3, 3, 3,
|
|
||||||
3, 2, 4, 4). After step 1, we have:
|
|
||||||
|
|
||||||
N bl_count[N]
|
|
||||||
- -----------
|
|
||||||
2 1
|
|
||||||
3 5
|
|
||||||
4 2
|
|
||||||
|
|
||||||
Step 2 computes the following next_code values:
|
|
||||||
|
|
||||||
N next_code[N]
|
|
||||||
- ------------
|
|
||||||
1 0
|
|
||||||
2 0
|
|
||||||
3 2
|
|
||||||
4 14
|
|
||||||
|
|
||||||
Step 3 produces the following code values:
|
|
||||||
|
|
||||||
Symbol Length Code
|
|
||||||
------ ------ ----
|
|
||||||
A 3 010
|
|
||||||
B 3 011
|
|
||||||
C 3 100
|
|
||||||
D 3 101
|
|
||||||
E 3 110
|
|
||||||
F 2 00
|
|
||||||
G 4 1110
|
|
||||||
H 4 1111
|
|
||||||
|
|
||||||
3.2.3. Details of block format
|
|
||||||
|
|
||||||
Each block of compressed data begins with 3 header bits
|
|
||||||
containing the following data:
|
|
||||||
|
|
||||||
first bit BFINAL
|
|
||||||
next 2 bits BTYPE
|
|
||||||
|
|
||||||
Note that the header bits do not necessarily begin on a byte
|
|
||||||
boundary, since a block does not necessarily occupy an integral
|
|
||||||
number of bytes.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 9]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
BFINAL is set if and only if this is the last block of the data
|
|
||||||
set.
|
|
||||||
|
|
||||||
BTYPE specifies how the data are compressed, as follows:
|
|
||||||
|
|
||||||
00 - no compression
|
|
||||||
01 - compressed with fixed Huffman codes
|
|
||||||
10 - compressed with dynamic Huffman codes
|
|
||||||
11 - reserved (error)
|
|
||||||
|
|
||||||
The only difference between the two compressed cases is how the
|
|
||||||
Huffman codes for the literal/length and distance alphabets are
|
|
||||||
defined.
|
|
||||||
|
|
||||||
In all cases, the decoding algorithm for the actual data is as
|
|
||||||
follows:
|
|
||||||
|
|
||||||
do
|
|
||||||
read block header from input stream.
|
|
||||||
if stored with no compression
|
|
||||||
skip any remaining bits in current partially
|
|
||||||
processed byte
|
|
||||||
read LEN and NLEN (see next section)
|
|
||||||
copy LEN bytes of data to output
|
|
||||||
otherwise
|
|
||||||
if compressed with dynamic Huffman codes
|
|
||||||
read representation of code trees (see
|
|
||||||
subsection below)
|
|
||||||
loop (until end of block code recognized)
|
|
||||||
decode literal/length value from input stream
|
|
||||||
if value < 256
|
|
||||||
copy value (literal byte) to output stream
|
|
||||||
otherwise
|
|
||||||
if value = end of block (256)
|
|
||||||
break from loop
|
|
||||||
otherwise (value = 257..285)
|
|
||||||
decode distance from input stream
|
|
||||||
|
|
||||||
move backwards distance bytes in the output
|
|
||||||
stream, and copy length bytes from this
|
|
||||||
position to the output stream.
|
|
||||||
end loop
|
|
||||||
while not last block
|
|
||||||
|
|
||||||
Note that a duplicated string reference may refer to a string
|
|
||||||
in a previous block; i.e., the backward distance may cross one
|
|
||||||
or more block boundaries. However a distance cannot refer past
|
|
||||||
the beginning of the output stream. (An application using a
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 10]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
preset dictionary might discard part of the output stream; a
|
|
||||||
distance can refer to that part of the output stream anyway)
|
|
||||||
Note also that the referenced string may overlap the current
|
|
||||||
position; for example, if the last 2 bytes decoded have values
|
|
||||||
X and Y, a string reference with <length = 5, distance = 2>
|
|
||||||
adds X,Y,X,Y,X to the output stream.
|
|
||||||
|
|
||||||
We now specify each compression method in turn.
|
|
||||||
|
|
||||||
3.2.4. Non-compressed blocks (BTYPE=00)
|
|
||||||
|
|
||||||
Any bits of input up to the next byte boundary are ignored.
|
|
||||||
The rest of the block consists of the following information:
|
|
||||||
|
|
||||||
0 1 2 3 4...
|
|
||||||
+---+---+---+---+================================+
|
|
||||||
| LEN | NLEN |... LEN bytes of literal data...|
|
|
||||||
+---+---+---+---+================================+
|
|
||||||
|
|
||||||
LEN is the number of data bytes in the block. NLEN is the
|
|
||||||
one's complement of LEN.
|
|
||||||
|
|
||||||
3.2.5. Compressed blocks (length and distance codes)
|
|
||||||
|
|
||||||
As noted above, encoded data blocks in the "deflate" format
|
|
||||||
consist of sequences of symbols drawn from three conceptually
|
|
||||||
distinct alphabets: either literal bytes, from the alphabet of
|
|
||||||
byte values (0..255), or <length, backward distance> pairs,
|
|
||||||
where the length is drawn from (3..258) and the distance is
|
|
||||||
drawn from (1..32,768). In fact, the literal and length
|
|
||||||
alphabets are merged into a single alphabet (0..285), where
|
|
||||||
values 0..255 represent literal bytes, the value 256 indicates
|
|
||||||
end-of-block, and values 257..285 represent length codes
|
|
||||||
(possibly in conjunction with extra bits following the symbol
|
|
||||||
code) as follows:
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 11]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
Extra Extra Extra
|
|
||||||
Code Bits Length(s) Code Bits Lengths Code Bits Length(s)
|
|
||||||
---- ---- ------ ---- ---- ------- ---- ---- -------
|
|
||||||
257 0 3 267 1 15,16 277 4 67-82
|
|
||||||
258 0 4 268 1 17,18 278 4 83-98
|
|
||||||
259 0 5 269 2 19-22 279 4 99-114
|
|
||||||
260 0 6 270 2 23-26 280 4 115-130
|
|
||||||
261 0 7 271 2 27-30 281 5 131-162
|
|
||||||
262 0 8 272 2 31-34 282 5 163-194
|
|
||||||
263 0 9 273 3 35-42 283 5 195-226
|
|
||||||
264 0 10 274 3 43-50 284 5 227-257
|
|
||||||
265 1 11,12 275 3 51-58 285 0 258
|
|
||||||
266 1 13,14 276 3 59-66
|
|
||||||
|
|
||||||
The extra bits should be interpreted as a machine integer
|
|
||||||
stored with the most-significant bit first, e.g., bits 1110
|
|
||||||
represent the value 14.
|
|
||||||
|
|
||||||
Extra Extra Extra
|
|
||||||
Code Bits Dist Code Bits Dist Code Bits Distance
|
|
||||||
---- ---- ---- ---- ---- ------ ---- ---- --------
|
|
||||||
0 0 1 10 4 33-48 20 9 1025-1536
|
|
||||||
1 0 2 11 4 49-64 21 9 1537-2048
|
|
||||||
2 0 3 12 5 65-96 22 10 2049-3072
|
|
||||||
3 0 4 13 5 97-128 23 10 3073-4096
|
|
||||||
4 1 5,6 14 6 129-192 24 11 4097-6144
|
|
||||||
5 1 7,8 15 6 193-256 25 11 6145-8192
|
|
||||||
6 2 9-12 16 7 257-384 26 12 8193-12288
|
|
||||||
7 2 13-16 17 7 385-512 27 12 12289-16384
|
|
||||||
8 3 17-24 18 8 513-768 28 13 16385-24576
|
|
||||||
9 3 25-32 19 8 769-1024 29 13 24577-32768
|
|
||||||
|
|
||||||
3.2.6. Compression with fixed Huffman codes (BTYPE=01)
|
|
||||||
|
|
||||||
The Huffman codes for the two alphabets are fixed, and are not
|
|
||||||
represented explicitly in the data. The Huffman code lengths
|
|
||||||
for the literal/length alphabet are:
|
|
||||||
|
|
||||||
Lit Value Bits Codes
|
|
||||||
--------- ---- -----
|
|
||||||
0 - 143 8 00110000 through
|
|
||||||
10111111
|
|
||||||
144 - 255 9 110010000 through
|
|
||||||
111111111
|
|
||||||
256 - 279 7 0000000 through
|
|
||||||
0010111
|
|
||||||
280 - 287 8 11000000 through
|
|
||||||
11000111
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 12]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
The code lengths are sufficient to generate the actual codes,
|
|
||||||
as described above; we show the codes in the table for added
|
|
||||||
clarity. Literal/length values 286-287 will never actually
|
|
||||||
occur in the compressed data, but participate in the code
|
|
||||||
construction.
|
|
||||||
|
|
||||||
Distance codes 0-31 are represented by (fixed-length) 5-bit
|
|
||||||
codes, with possible additional bits as shown in the table
|
|
||||||
shown in Paragraph 3.2.5, above. Note that distance codes 30-
|
|
||||||
31 will never actually occur in the compressed data.
|
|
||||||
|
|
||||||
3.2.7. Compression with dynamic Huffman codes (BTYPE=10)
|
|
||||||
|
|
||||||
The Huffman codes for the two alphabets appear in the block
|
|
||||||
immediately after the header bits and before the actual
|
|
||||||
compressed data, first the literal/length code and then the
|
|
||||||
distance code. Each code is defined by a sequence of code
|
|
||||||
lengths, as discussed in Paragraph 3.2.2, above. For even
|
|
||||||
greater compactness, the code length sequences themselves are
|
|
||||||
compressed using a Huffman code. The alphabet for code lengths
|
|
||||||
is as follows:
|
|
||||||
|
|
||||||
0 - 15: Represent code lengths of 0 - 15
|
|
||||||
16: Copy the previous code length 3 - 6 times.
|
|
||||||
The next 2 bits indicate repeat length
|
|
||||||
(0 = 3, ... , 3 = 6)
|
|
||||||
Example: Codes 8, 16 (+2 bits 11),
|
|
||||||
16 (+2 bits 10) will expand to
|
|
||||||
12 code lengths of 8 (1 + 6 + 5)
|
|
||||||
17: Repeat a code length of 0 for 3 - 10 times.
|
|
||||||
(3 bits of length)
|
|
||||||
18: Repeat a code length of 0 for 11 - 138 times
|
|
||||||
(7 bits of length)
|
|
||||||
|
|
||||||
A code length of 0 indicates that the corresponding symbol in
|
|
||||||
the literal/length or distance alphabet will not occur in the
|
|
||||||
block, and should not participate in the Huffman code
|
|
||||||
construction algorithm given earlier. If only one distance
|
|
||||||
code is used, it is encoded using one bit, not zero bits; in
|
|
||||||
this case there is a single code length of one, with one unused
|
|
||||||
code. One distance code of zero bits means that there are no
|
|
||||||
distance codes used at all (the data is all literals).
|
|
||||||
|
|
||||||
We can now define the format of the block:
|
|
||||||
|
|
||||||
5 Bits: HLIT, # of Literal/Length codes - 257 (257 - 286)
|
|
||||||
5 Bits: HDIST, # of Distance codes - 1 (1 - 32)
|
|
||||||
4 Bits: HCLEN, # of Code Length codes - 4 (4 - 19)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 13]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
(HCLEN + 4) x 3 bits: code lengths for the code length
|
|
||||||
alphabet given just above, in the order: 16, 17, 18,
|
|
||||||
0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15
|
|
||||||
|
|
||||||
These code lengths are interpreted as 3-bit integers
|
|
||||||
(0-7); as above, a code length of 0 means the
|
|
||||||
corresponding symbol (literal/length or distance code
|
|
||||||
length) is not used.
|
|
||||||
|
|
||||||
HLIT + 257 code lengths for the literal/length alphabet,
|
|
||||||
encoded using the code length Huffman code
|
|
||||||
|
|
||||||
HDIST + 1 code lengths for the distance alphabet,
|
|
||||||
encoded using the code length Huffman code
|
|
||||||
|
|
||||||
The actual compressed data of the block,
|
|
||||||
encoded using the literal/length and distance Huffman
|
|
||||||
codes
|
|
||||||
|
|
||||||
The literal/length symbol 256 (end of data),
|
|
||||||
encoded using the literal/length Huffman code
|
|
||||||
|
|
||||||
The code length repeat codes can cross from HLIT + 257 to the
|
|
||||||
HDIST + 1 code lengths. In other words, all code lengths form
|
|
||||||
a single sequence of HLIT + HDIST + 258 values.
|
|
||||||
|
|
||||||
3.3. Compliance
|
|
||||||
|
|
||||||
A compressor may limit further the ranges of values specified in
|
|
||||||
the previous section and still be compliant; for example, it may
|
|
||||||
limit the range of backward pointers to some value smaller than
|
|
||||||
32K. Similarly, a compressor may limit the size of blocks so that
|
|
||||||
a compressible block fits in memory.
|
|
||||||
|
|
||||||
A compliant decompressor must accept the full range of possible
|
|
||||||
values defined in the previous section, and must accept blocks of
|
|
||||||
arbitrary size.
|
|
||||||
|
|
||||||
4. Compression algorithm details
|
|
||||||
|
|
||||||
While it is the intent of this document to define the "deflate"
|
|
||||||
compressed data format without reference to any particular
|
|
||||||
compression algorithm, the format is related to the compressed
|
|
||||||
formats produced by LZ77 (Lempel-Ziv 1977, see reference [2] below);
|
|
||||||
since many variations of LZ77 are patented, it is strongly
|
|
||||||
recommended that the implementor of a compressor follow the general
|
|
||||||
algorithm presented here, which is known not to be patented per se.
|
|
||||||
The material in this section is not part of the definition of the
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 14]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
specification per se, and a compressor need not follow it in order to
|
|
||||||
be compliant.
|
|
||||||
|
|
||||||
The compressor terminates a block when it determines that starting a
|
|
||||||
new block with fresh trees would be useful, or when the block size
|
|
||||||
fills up the compressor's block buffer.
|
|
||||||
|
|
||||||
The compressor uses a chained hash table to find duplicated strings,
|
|
||||||
using a hash function that operates on 3-byte sequences. At any
|
|
||||||
given point during compression, let XYZ be the next 3 input bytes to
|
|
||||||
be examined (not necessarily all different, of course). First, the
|
|
||||||
compressor examines the hash chain for XYZ. If the chain is empty,
|
|
||||||
the compressor simply writes out X as a literal byte and advances one
|
|
||||||
byte in the input. If the hash chain is not empty, indicating that
|
|
||||||
the sequence XYZ (or, if we are unlucky, some other 3 bytes with the
|
|
||||||
same hash function value) has occurred recently, the compressor
|
|
||||||
compares all strings on the XYZ hash chain with the actual input data
|
|
||||||
sequence starting at the current point, and selects the longest
|
|
||||||
match.
|
|
||||||
|
|
||||||
The compressor searches the hash chains starting with the most recent
|
|
||||||
strings, to favor small distances and thus take advantage of the
|
|
||||||
Huffman encoding. The hash chains are singly linked. There are no
|
|
||||||
deletions from the hash chains; the algorithm simply discards matches
|
|
||||||
that are too old. To avoid a worst-case situation, very long hash
|
|
||||||
chains are arbitrarily truncated at a certain length, determined by a
|
|
||||||
run-time parameter.
|
|
||||||
|
|
||||||
To improve overall compression, the compressor optionally defers the
|
|
||||||
selection of matches ("lazy matching"): after a match of length N has
|
|
||||||
been found, the compressor searches for a longer match starting at
|
|
||||||
the next input byte. If it finds a longer match, it truncates the
|
|
||||||
previous match to a length of one (thus producing a single literal
|
|
||||||
byte) and then emits the longer match. Otherwise, it emits the
|
|
||||||
original match, and, as described above, advances N bytes before
|
|
||||||
continuing.
|
|
||||||
|
|
||||||
Run-time parameters also control this "lazy match" procedure. If
|
|
||||||
compression ratio is most important, the compressor attempts a
|
|
||||||
complete second search regardless of the length of the first match.
|
|
||||||
In the normal case, if the current match is "long enough", the
|
|
||||||
compressor reduces the search for a longer match, thus speeding up
|
|
||||||
the process. If speed is most important, the compressor inserts new
|
|
||||||
strings in the hash table only when no match was found, or when the
|
|
||||||
match is not "too long". This degrades the compression ratio but
|
|
||||||
saves time since there are both fewer insertions and fewer searches.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 15]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
5. References
|
|
||||||
|
|
||||||
[1] Huffman, D. A., "A Method for the Construction of Minimum
|
|
||||||
Redundancy Codes", Proceedings of the Institute of Radio
|
|
||||||
Engineers, September 1952, Volume 40, Number 9, pp. 1098-1101.
|
|
||||||
|
|
||||||
[2] Ziv J., Lempel A., "A Universal Algorithm for Sequential Data
|
|
||||||
Compression", IEEE Transactions on Information Theory, Vol. 23,
|
|
||||||
No. 3, pp. 337-343.
|
|
||||||
|
|
||||||
[3] Gailly, J.-L., and Adler, M., ZLIB documentation and sources,
|
|
||||||
available in ftp://ftp.uu.net/pub/archiving/zip/doc/
|
|
||||||
|
|
||||||
[4] Gailly, J.-L., and Adler, M., GZIP documentation and sources,
|
|
||||||
available as gzip-*.tar in ftp://prep.ai.mit.edu/pub/gnu/
|
|
||||||
|
|
||||||
[5] Schwartz, E. S., and Kallick, B. "Generating a canonical prefix
|
|
||||||
encoding." Comm. ACM, 7,3 (Mar. 1964), pp. 166-169.
|
|
||||||
|
|
||||||
[6] Hirschberg and Lelewer, "Efficient decoding of prefix codes,"
|
|
||||||
Comm. ACM, 33,4, April 1990, pp. 449-459.
|
|
||||||
|
|
||||||
6. Security Considerations
|
|
||||||
|
|
||||||
Any data compression method involves the reduction of redundancy in
|
|
||||||
the data. Consequently, any corruption of the data is likely to have
|
|
||||||
severe effects and be difficult to correct. Uncompressed text, on
|
|
||||||
the other hand, will probably still be readable despite the presence
|
|
||||||
of some corrupted bytes.
|
|
||||||
|
|
||||||
It is recommended that systems using this data format provide some
|
|
||||||
means of validating the integrity of the compressed data. See
|
|
||||||
reference [3], for example.
|
|
||||||
|
|
||||||
7. Source code
|
|
||||||
|
|
||||||
Source code for a C language implementation of a "deflate" compliant
|
|
||||||
compressor and decompressor is available within the zlib package at
|
|
||||||
ftp://ftp.uu.net/pub/archiving/zip/zlib/.
|
|
||||||
|
|
||||||
8. Acknowledgements
|
|
||||||
|
|
||||||
Trademarks cited in this document are the property of their
|
|
||||||
respective owners.
|
|
||||||
|
|
||||||
Phil Katz designed the deflate format. Jean-Loup Gailly and Mark
|
|
||||||
Adler wrote the related software described in this specification.
|
|
||||||
Glenn Randers-Pehrson converted this document to RFC and HTML format.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 16]
|
|
||||||
|
|
||||||
RFC 1951 DEFLATE Compressed Data Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
9. Author's Address
|
|
||||||
|
|
||||||
L. Peter Deutsch
|
|
||||||
Aladdin Enterprises
|
|
||||||
203 Santa Margarita Ave.
|
|
||||||
Menlo Park, CA 94025
|
|
||||||
|
|
||||||
Phone: (415) 322-0103 (AM only)
|
|
||||||
FAX: (415) 322-1734
|
|
||||||
EMail: <ghost@aladdin.com>
|
|
||||||
|
|
||||||
Questions about the technical content of this specification can be
|
|
||||||
sent by email to:
|
|
||||||
|
|
||||||
Jean-Loup Gailly <gzip@prep.ai.mit.edu> and
|
|
||||||
Mark Adler <madler@alumni.caltech.edu>
|
|
||||||
|
|
||||||
Editorial comments on this specification can be sent by email to:
|
|
||||||
|
|
||||||
L. Peter Deutsch <ghost@aladdin.com> and
|
|
||||||
Glenn Randers-Pehrson <randeg@alumni.rpi.edu>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 17]
|
|
||||||
|
|
||||||
@@ -1,675 +0,0 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Network Working Group P. Deutsch
|
|
||||||
Request for Comments: 1952 Aladdin Enterprises
|
|
||||||
Category: Informational May 1996
|
|
||||||
|
|
||||||
|
|
||||||
GZIP file format specification version 4.3
|
|
||||||
|
|
||||||
Status of This Memo
|
|
||||||
|
|
||||||
This memo provides information for the Internet community. This memo
|
|
||||||
does not specify an Internet standard of any kind. Distribution of
|
|
||||||
this memo is unlimited.
|
|
||||||
|
|
||||||
IESG Note:
|
|
||||||
|
|
||||||
The IESG takes no position on the validity of any Intellectual
|
|
||||||
Property Rights statements contained in this document.
|
|
||||||
|
|
||||||
Notices
|
|
||||||
|
|
||||||
Copyright (c) 1996 L. Peter Deutsch
|
|
||||||
|
|
||||||
Permission is granted to copy and distribute this document for any
|
|
||||||
purpose and without charge, including translations into other
|
|
||||||
languages and incorporation into compilations, provided that the
|
|
||||||
copyright notice and this notice are preserved, and that any
|
|
||||||
substantive changes or deletions from the original are clearly
|
|
||||||
marked.
|
|
||||||
|
|
||||||
A pointer to the latest version of this and related documentation in
|
|
||||||
HTML format can be found at the URL
|
|
||||||
<ftp://ftp.uu.net/graphics/png/documents/zlib/zdoc-index.html>.
|
|
||||||
|
|
||||||
Abstract
|
|
||||||
|
|
||||||
This specification defines a lossless compressed data format that is
|
|
||||||
compatible with the widely used GZIP utility. The format includes a
|
|
||||||
cyclic redundancy check value for detecting data corruption. The
|
|
||||||
format presently uses the DEFLATE method of compression but can be
|
|
||||||
easily extended to use other compression methods. The format can be
|
|
||||||
implemented readily in a manner not covered by patents.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 1]
|
|
||||||
|
|
||||||
RFC 1952 GZIP File Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
Table of Contents
|
|
||||||
|
|
||||||
1. Introduction ................................................... 2
|
|
||||||
1.1. Purpose ................................................... 2
|
|
||||||
1.2. Intended audience ......................................... 3
|
|
||||||
1.3. Scope ..................................................... 3
|
|
||||||
1.4. Compliance ................................................ 3
|
|
||||||
1.5. Definitions of terms and conventions used ................. 3
|
|
||||||
1.6. Changes from previous versions ............................ 3
|
|
||||||
2. Detailed specification ......................................... 4
|
|
||||||
2.1. Overall conventions ....................................... 4
|
|
||||||
2.2. File format ............................................... 5
|
|
||||||
2.3. Member format ............................................. 5
|
|
||||||
2.3.1. Member header and trailer ........................... 6
|
|
||||||
2.3.1.1. Extra field ................................... 8
|
|
||||||
2.3.1.2. Compliance .................................... 9
|
|
||||||
3. References .................................................. 9
|
|
||||||
4. Security Considerations .................................... 10
|
|
||||||
5. Acknowledgements ........................................... 10
|
|
||||||
6. Author's Address ........................................... 10
|
|
||||||
7. Appendix: Jean-Loup Gailly's gzip utility .................. 11
|
|
||||||
8. Appendix: Sample CRC Code .................................. 11
|
|
||||||
|
|
||||||
1. Introduction
|
|
||||||
|
|
||||||
1.1. Purpose
|
|
||||||
|
|
||||||
The purpose of this specification is to define a lossless
|
|
||||||
compressed data format that:
|
|
||||||
|
|
||||||
* Is independent of CPU type, operating system, file system,
|
|
||||||
and character set, and hence can be used for interchange;
|
|
||||||
* Can compress or decompress a data stream (as opposed to a
|
|
||||||
randomly accessible file) to produce another data stream,
|
|
||||||
using only an a priori bounded amount of intermediate
|
|
||||||
storage, and hence can be used in data communications or
|
|
||||||
similar structures such as Unix filters;
|
|
||||||
* Compresses data with efficiency comparable to the best
|
|
||||||
currently available general-purpose compression methods,
|
|
||||||
and in particular considerably better than the "compress"
|
|
||||||
program;
|
|
||||||
* Can be implemented readily in a manner not covered by
|
|
||||||
patents, and hence can be practiced freely;
|
|
||||||
* Is compatible with the file format produced by the current
|
|
||||||
widely used gzip utility, in that conforming decompressors
|
|
||||||
will be able to read data produced by the existing gzip
|
|
||||||
compressor.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 2]
|
|
||||||
|
|
||||||
RFC 1952 GZIP File Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
The data format defined by this specification does not attempt to:
|
|
||||||
|
|
||||||
* Provide random access to compressed data;
|
|
||||||
* Compress specialized data (e.g., raster graphics) as well as
|
|
||||||
the best currently available specialized algorithms.
|
|
||||||
|
|
||||||
1.2. Intended audience
|
|
||||||
|
|
||||||
This specification is intended for use by implementors of software
|
|
||||||
to compress data into gzip format and/or decompress data from gzip
|
|
||||||
format.
|
|
||||||
|
|
||||||
The text of the specification assumes a basic background in
|
|
||||||
programming at the level of bits and other primitive data
|
|
||||||
representations.
|
|
||||||
|
|
||||||
1.3. Scope
|
|
||||||
|
|
||||||
The specification specifies a compression method and a file format
|
|
||||||
(the latter assuming only that a file can store a sequence of
|
|
||||||
arbitrary bytes). It does not specify any particular interface to
|
|
||||||
a file system or anything about character sets or encodings
|
|
||||||
(except for file names and comments, which are optional).
|
|
||||||
|
|
||||||
1.4. Compliance
|
|
||||||
|
|
||||||
Unless otherwise indicated below, a compliant decompressor must be
|
|
||||||
able to accept and decompress any file that conforms to all the
|
|
||||||
specifications presented here; a compliant compressor must produce
|
|
||||||
files that conform to all the specifications presented here. The
|
|
||||||
material in the appendices is not part of the specification per se
|
|
||||||
and is not relevant to compliance.
|
|
||||||
|
|
||||||
1.5. Definitions of terms and conventions used
|
|
||||||
|
|
||||||
byte: 8 bits stored or transmitted as a unit (same as an octet).
|
|
||||||
(For this specification, a byte is exactly 8 bits, even on
|
|
||||||
machines which store a character on a number of bits different
|
|
||||||
from 8.) See below for the numbering of bits within a byte.
|
|
||||||
|
|
||||||
1.6. Changes from previous versions
|
|
||||||
|
|
||||||
There have been no technical changes to the gzip format since
|
|
||||||
version 4.1 of this specification. In version 4.2, some
|
|
||||||
terminology was changed, and the sample CRC code was rewritten for
|
|
||||||
clarity and to eliminate the requirement for the caller to do pre-
|
|
||||||
and post-conditioning. Version 4.3 is a conversion of the
|
|
||||||
specification to RFC style.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 3]
|
|
||||||
|
|
||||||
RFC 1952 GZIP File Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
2. Detailed specification
|
|
||||||
|
|
||||||
2.1. Overall conventions
|
|
||||||
|
|
||||||
In the diagrams below, a box like this:
|
|
||||||
|
|
||||||
+---+
|
|
||||||
| | <-- the vertical bars might be missing
|
|
||||||
+---+
|
|
||||||
|
|
||||||
represents one byte; a box like this:
|
|
||||||
|
|
||||||
+==============+
|
|
||||||
| |
|
|
||||||
+==============+
|
|
||||||
|
|
||||||
represents a variable number of bytes.
|
|
||||||
|
|
||||||
Bytes stored within a computer do not have a "bit order", since
|
|
||||||
they are always treated as a unit. However, a byte considered as
|
|
||||||
an integer between 0 and 255 does have a most- and least-
|
|
||||||
significant bit, and since we write numbers with the most-
|
|
||||||
significant digit on the left, we also write bytes with the most-
|
|
||||||
significant bit on the left. In the diagrams below, we number the
|
|
||||||
bits of a byte so that bit 0 is the least-significant bit, i.e.,
|
|
||||||
the bits are numbered:
|
|
||||||
|
|
||||||
+--------+
|
|
||||||
|76543210|
|
|
||||||
+--------+
|
|
||||||
|
|
||||||
This document does not address the issue of the order in which
|
|
||||||
bits of a byte are transmitted on a bit-sequential medium, since
|
|
||||||
the data format described here is byte- rather than bit-oriented.
|
|
||||||
|
|
||||||
Within a computer, a number may occupy multiple bytes. All
|
|
||||||
multi-byte numbers in the format described here are stored with
|
|
||||||
the least-significant byte first (at the lower memory address).
|
|
||||||
For example, the decimal number 520 is stored as:
|
|
||||||
|
|
||||||
0 1
|
|
||||||
+--------+--------+
|
|
||||||
|00001000|00000010|
|
|
||||||
+--------+--------+
|
|
||||||
^ ^
|
|
||||||
| |
|
|
||||||
| + more significant byte = 2 x 256
|
|
||||||
+ less significant byte = 8
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 4]
|
|
||||||
|
|
||||||
RFC 1952 GZIP File Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
2.2. File format
|
|
||||||
|
|
||||||
A gzip file consists of a series of "members" (compressed data
|
|
||||||
sets). The format of each member is specified in the following
|
|
||||||
section. The members simply appear one after another in the file,
|
|
||||||
with no additional information before, between, or after them.
|
|
||||||
|
|
||||||
2.3. Member format
|
|
||||||
|
|
||||||
Each member has the following structure:
|
|
||||||
|
|
||||||
+---+---+---+---+---+---+---+---+---+---+
|
|
||||||
|ID1|ID2|CM |FLG| MTIME |XFL|OS | (more-->)
|
|
||||||
+---+---+---+---+---+---+---+---+---+---+
|
|
||||||
|
|
||||||
(if FLG.FEXTRA set)
|
|
||||||
|
|
||||||
+---+---+=================================+
|
|
||||||
| XLEN |...XLEN bytes of "extra field"...| (more-->)
|
|
||||||
+---+---+=================================+
|
|
||||||
|
|
||||||
(if FLG.FNAME set)
|
|
||||||
|
|
||||||
+=========================================+
|
|
||||||
|...original file name, zero-terminated...| (more-->)
|
|
||||||
+=========================================+
|
|
||||||
|
|
||||||
(if FLG.FCOMMENT set)
|
|
||||||
|
|
||||||
+===================================+
|
|
||||||
|...file comment, zero-terminated...| (more-->)
|
|
||||||
+===================================+
|
|
||||||
|
|
||||||
(if FLG.FHCRC set)
|
|
||||||
|
|
||||||
+---+---+
|
|
||||||
| CRC16 |
|
|
||||||
+---+---+
|
|
||||||
|
|
||||||
+=======================+
|
|
||||||
|...compressed blocks...| (more-->)
|
|
||||||
+=======================+
|
|
||||||
|
|
||||||
0 1 2 3 4 5 6 7
|
|
||||||
+---+---+---+---+---+---+---+---+
|
|
||||||
| CRC32 | ISIZE |
|
|
||||||
+---+---+---+---+---+---+---+---+
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 5]
|
|
||||||
|
|
||||||
RFC 1952 GZIP File Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
2.3.1. Member header and trailer
|
|
||||||
|
|
||||||
ID1 (IDentification 1)
|
|
||||||
ID2 (IDentification 2)
|
|
||||||
These have the fixed values ID1 = 31 (0x1f, \037), ID2 = 139
|
|
||||||
(0x8b, \213), to identify the file as being in gzip format.
|
|
||||||
|
|
||||||
CM (Compression Method)
|
|
||||||
This identifies the compression method used in the file. CM
|
|
||||||
= 0-7 are reserved. CM = 8 denotes the "deflate"
|
|
||||||
compression method, which is the one customarily used by
|
|
||||||
gzip and which is documented elsewhere.
|
|
||||||
|
|
||||||
FLG (FLaGs)
|
|
||||||
This flag byte is divided into individual bits as follows:
|
|
||||||
|
|
||||||
bit 0 FTEXT
|
|
||||||
bit 1 FHCRC
|
|
||||||
bit 2 FEXTRA
|
|
||||||
bit 3 FNAME
|
|
||||||
bit 4 FCOMMENT
|
|
||||||
bit 5 reserved
|
|
||||||
bit 6 reserved
|
|
||||||
bit 7 reserved
|
|
||||||
|
|
||||||
If FTEXT is set, the file is probably ASCII text. This is
|
|
||||||
an optional indication, which the compressor may set by
|
|
||||||
checking a small amount of the input data to see whether any
|
|
||||||
non-ASCII characters are present. In case of doubt, FTEXT
|
|
||||||
is cleared, indicating binary data. For systems which have
|
|
||||||
different file formats for ascii text and binary data, the
|
|
||||||
decompressor can use FTEXT to choose the appropriate format.
|
|
||||||
We deliberately do not specify the algorithm used to set
|
|
||||||
this bit, since a compressor always has the option of
|
|
||||||
leaving it cleared and a decompressor always has the option
|
|
||||||
of ignoring it and letting some other program handle issues
|
|
||||||
of data conversion.
|
|
||||||
|
|
||||||
If FHCRC is set, a CRC16 for the gzip header is present,
|
|
||||||
immediately before the compressed data. The CRC16 consists
|
|
||||||
of the two least significant bytes of the CRC32 for all
|
|
||||||
bytes of the gzip header up to and not including the CRC16.
|
|
||||||
[The FHCRC bit was never set by versions of gzip up to
|
|
||||||
1.2.4, even though it was documented with a different
|
|
||||||
meaning in gzip 1.2.4.]
|
|
||||||
|
|
||||||
If FEXTRA is set, optional extra fields are present, as
|
|
||||||
described in a following section.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 6]
|
|
||||||
|
|
||||||
RFC 1952 GZIP File Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
If FNAME is set, an original file name is present,
|
|
||||||
terminated by a zero byte. The name must consist of ISO
|
|
||||||
8859-1 (LATIN-1) characters; on operating systems using
|
|
||||||
EBCDIC or any other character set for file names, the name
|
|
||||||
must be translated to the ISO LATIN-1 character set. This
|
|
||||||
is the original name of the file being compressed, with any
|
|
||||||
directory components removed, and, if the file being
|
|
||||||
compressed is on a file system with case insensitive names,
|
|
||||||
forced to lower case. There is no original file name if the
|
|
||||||
data was compressed from a source other than a named file;
|
|
||||||
for example, if the source was stdin on a Unix system, there
|
|
||||||
is no file name.
|
|
||||||
|
|
||||||
If FCOMMENT is set, a zero-terminated file comment is
|
|
||||||
present. This comment is not interpreted; it is only
|
|
||||||
intended for human consumption. The comment must consist of
|
|
||||||
ISO 8859-1 (LATIN-1) characters. Line breaks should be
|
|
||||||
denoted by a single line feed character (10 decimal).
|
|
||||||
|
|
||||||
Reserved FLG bits must be zero.
|
|
||||||
|
|
||||||
MTIME (Modification TIME)
|
|
||||||
This gives the most recent modification time of the original
|
|
||||||
file being compressed. The time is in Unix format, i.e.,
|
|
||||||
seconds since 00:00:00 GMT, Jan. 1, 1970. (Note that this
|
|
||||||
may cause problems for MS-DOS and other systems that use
|
|
||||||
local rather than Universal time.) If the compressed data
|
|
||||||
did not come from a file, MTIME is set to the time at which
|
|
||||||
compression started. MTIME = 0 means no time stamp is
|
|
||||||
available.
|
|
||||||
|
|
||||||
XFL (eXtra FLags)
|
|
||||||
These flags are available for use by specific compression
|
|
||||||
methods. The "deflate" method (CM = 8) sets these flags as
|
|
||||||
follows:
|
|
||||||
|
|
||||||
XFL = 2 - compressor used maximum compression,
|
|
||||||
slowest algorithm
|
|
||||||
XFL = 4 - compressor used fastest algorithm
|
|
||||||
|
|
||||||
OS (Operating System)
|
|
||||||
This identifies the type of file system on which compression
|
|
||||||
took place. This may be useful in determining end-of-line
|
|
||||||
convention for text files. The currently defined values are
|
|
||||||
as follows:
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 7]
|
|
||||||
|
|
||||||
RFC 1952 GZIP File Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
0 - FAT filesystem (MS-DOS, OS/2, NT/Win32)
|
|
||||||
1 - Amiga
|
|
||||||
2 - VMS (or OpenVMS)
|
|
||||||
3 - Unix
|
|
||||||
4 - VM/CMS
|
|
||||||
5 - Atari TOS
|
|
||||||
6 - HPFS filesystem (OS/2, NT)
|
|
||||||
7 - Macintosh
|
|
||||||
8 - Z-System
|
|
||||||
9 - CP/M
|
|
||||||
10 - TOPS-20
|
|
||||||
11 - NTFS filesystem (NT)
|
|
||||||
12 - QDOS
|
|
||||||
13 - Acorn RISCOS
|
|
||||||
255 - unknown
|
|
||||||
|
|
||||||
XLEN (eXtra LENgth)
|
|
||||||
If FLG.FEXTRA is set, this gives the length of the optional
|
|
||||||
extra field. See below for details.
|
|
||||||
|
|
||||||
CRC32 (CRC-32)
|
|
||||||
This contains a Cyclic Redundancy Check value of the
|
|
||||||
uncompressed data computed according to CRC-32 algorithm
|
|
||||||
used in the ISO 3309 standard and in section 8.1.1.6.2 of
|
|
||||||
ITU-T recommendation V.42. (See http://www.iso.ch for
|
|
||||||
ordering ISO documents. See gopher://info.itu.ch for an
|
|
||||||
online version of ITU-T V.42.)
|
|
||||||
|
|
||||||
ISIZE (Input SIZE)
|
|
||||||
This contains the size of the original (uncompressed) input
|
|
||||||
data modulo 2^32.
|
|
||||||
|
|
||||||
2.3.1.1. Extra field
|
|
||||||
|
|
||||||
If the FLG.FEXTRA bit is set, an "extra field" is present in
|
|
||||||
the header, with total length XLEN bytes. It consists of a
|
|
||||||
series of subfields, each of the form:
|
|
||||||
|
|
||||||
+---+---+---+---+==================================+
|
|
||||||
|SI1|SI2| LEN |... LEN bytes of subfield data ...|
|
|
||||||
+---+---+---+---+==================================+
|
|
||||||
|
|
||||||
SI1 and SI2 provide a subfield ID, typically two ASCII letters
|
|
||||||
with some mnemonic value. Jean-Loup Gailly
|
|
||||||
<gzip@prep.ai.mit.edu> is maintaining a registry of subfield
|
|
||||||
IDs; please send him any subfield ID you wish to use. Subfield
|
|
||||||
IDs with SI2 = 0 are reserved for future use. The following
|
|
||||||
IDs are currently defined:
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 8]
|
|
||||||
|
|
||||||
RFC 1952 GZIP File Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
SI1 SI2 Data
|
|
||||||
---------- ---------- ----
|
|
||||||
0x41 ('A') 0x70 ('P') Apollo file type information
|
|
||||||
|
|
||||||
LEN gives the length of the subfield data, excluding the 4
|
|
||||||
initial bytes.
|
|
||||||
|
|
||||||
2.3.1.2. Compliance
|
|
||||||
|
|
||||||
A compliant compressor must produce files with correct ID1,
|
|
||||||
ID2, CM, CRC32, and ISIZE, but may set all the other fields in
|
|
||||||
the fixed-length part of the header to default values (255 for
|
|
||||||
OS, 0 for all others). The compressor must set all reserved
|
|
||||||
bits to zero.
|
|
||||||
|
|
||||||
A compliant decompressor must check ID1, ID2, and CM, and
|
|
||||||
provide an error indication if any of these have incorrect
|
|
||||||
values. It must examine FEXTRA/XLEN, FNAME, FCOMMENT and FHCRC
|
|
||||||
at least so it can skip over the optional fields if they are
|
|
||||||
present. It need not examine any other part of the header or
|
|
||||||
trailer; in particular, a decompressor may ignore FTEXT and OS
|
|
||||||
and always produce binary output, and still be compliant. A
|
|
||||||
compliant decompressor must give an error indication if any
|
|
||||||
reserved bit is non-zero, since such a bit could indicate the
|
|
||||||
presence of a new field that would cause subsequent data to be
|
|
||||||
interpreted incorrectly.
|
|
||||||
|
|
||||||
3. References
|
|
||||||
|
|
||||||
[1] "Information Processing - 8-bit single-byte coded graphic
|
|
||||||
character sets - Part 1: Latin alphabet No.1" (ISO 8859-1:1987).
|
|
||||||
The ISO 8859-1 (Latin-1) character set is a superset of 7-bit
|
|
||||||
ASCII. Files defining this character set are available as
|
|
||||||
iso_8859-1.* in ftp://ftp.uu.net/graphics/png/documents/
|
|
||||||
|
|
||||||
[2] ISO 3309
|
|
||||||
|
|
||||||
[3] ITU-T recommendation V.42
|
|
||||||
|
|
||||||
[4] Deutsch, L.P.,"DEFLATE Compressed Data Format Specification",
|
|
||||||
available in ftp://ftp.uu.net/pub/archiving/zip/doc/
|
|
||||||
|
|
||||||
[5] Gailly, J.-L., GZIP documentation, available as gzip-*.tar in
|
|
||||||
ftp://prep.ai.mit.edu/pub/gnu/
|
|
||||||
|
|
||||||
[6] Sarwate, D.V., "Computation of Cyclic Redundancy Checks via Table
|
|
||||||
Look-Up", Communications of the ACM, 31(8), pp.1008-1013.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 9]
|
|
||||||
|
|
||||||
RFC 1952 GZIP File Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
[7] Schwaderer, W.D., "CRC Calculation", April 85 PC Tech Journal,
|
|
||||||
pp.118-133.
|
|
||||||
|
|
||||||
[8] ftp://ftp.adelaide.edu.au/pub/rocksoft/papers/crc_v3.txt,
|
|
||||||
describing the CRC concept.
|
|
||||||
|
|
||||||
4. Security Considerations
|
|
||||||
|
|
||||||
Any data compression method involves the reduction of redundancy in
|
|
||||||
the data. Consequently, any corruption of the data is likely to have
|
|
||||||
severe effects and be difficult to correct. Uncompressed text, on
|
|
||||||
the other hand, will probably still be readable despite the presence
|
|
||||||
of some corrupted bytes.
|
|
||||||
|
|
||||||
It is recommended that systems using this data format provide some
|
|
||||||
means of validating the integrity of the compressed data, such as by
|
|
||||||
setting and checking the CRC-32 check value.
|
|
||||||
|
|
||||||
5. Acknowledgements
|
|
||||||
|
|
||||||
Trademarks cited in this document are the property of their
|
|
||||||
respective owners.
|
|
||||||
|
|
||||||
Jean-Loup Gailly designed the gzip format and wrote, with Mark Adler,
|
|
||||||
the related software described in this specification. Glenn
|
|
||||||
Randers-Pehrson converted this document to RFC and HTML format.
|
|
||||||
|
|
||||||
6. Author's Address
|
|
||||||
|
|
||||||
L. Peter Deutsch
|
|
||||||
Aladdin Enterprises
|
|
||||||
203 Santa Margarita Ave.
|
|
||||||
Menlo Park, CA 94025
|
|
||||||
|
|
||||||
Phone: (415) 322-0103 (AM only)
|
|
||||||
FAX: (415) 322-1734
|
|
||||||
EMail: <ghost@aladdin.com>
|
|
||||||
|
|
||||||
Questions about the technical content of this specification can be
|
|
||||||
sent by email to:
|
|
||||||
|
|
||||||
Jean-Loup Gailly <gzip@prep.ai.mit.edu> and
|
|
||||||
Mark Adler <madler@alumni.caltech.edu>
|
|
||||||
|
|
||||||
Editorial comments on this specification can be sent by email to:
|
|
||||||
|
|
||||||
L. Peter Deutsch <ghost@aladdin.com> and
|
|
||||||
Glenn Randers-Pehrson <randeg@alumni.rpi.edu>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 10]
|
|
||||||
|
|
||||||
RFC 1952 GZIP File Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
7. Appendix: Jean-Loup Gailly's gzip utility
|
|
||||||
|
|
||||||
The most widely used implementation of gzip compression, and the
|
|
||||||
original documentation on which this specification is based, were
|
|
||||||
created by Jean-Loup Gailly <gzip@prep.ai.mit.edu>. Since this
|
|
||||||
implementation is a de facto standard, we mention some more of its
|
|
||||||
features here. Again, the material in this section is not part of
|
|
||||||
the specification per se, and implementations need not follow it to
|
|
||||||
be compliant.
|
|
||||||
|
|
||||||
When compressing or decompressing a file, gzip preserves the
|
|
||||||
protection, ownership, and modification time attributes on the local
|
|
||||||
file system, since there is no provision for representing protection
|
|
||||||
attributes in the gzip file format itself. Since the file format
|
|
||||||
includes a modification time, the gzip decompressor provides a
|
|
||||||
command line switch that assigns the modification time from the file,
|
|
||||||
rather than the local modification time of the compressed input, to
|
|
||||||
the decompressed output.
|
|
||||||
|
|
||||||
8. Appendix: Sample CRC Code
|
|
||||||
|
|
||||||
The following sample code represents a practical implementation of
|
|
||||||
the CRC (Cyclic Redundancy Check). (See also ISO 3309 and ITU-T V.42
|
|
||||||
for a formal specification.)
|
|
||||||
|
|
||||||
The sample code is in the ANSI C programming language. Non C users
|
|
||||||
may find it easier to read with these hints:
|
|
||||||
|
|
||||||
& Bitwise AND operator.
|
|
||||||
^ Bitwise exclusive-OR operator.
|
|
||||||
>> Bitwise right shift operator. When applied to an
|
|
||||||
unsigned quantity, as here, right shift inserts zero
|
|
||||||
bit(s) at the left.
|
|
||||||
! Logical NOT operator.
|
|
||||||
++ "n++" increments the variable n.
|
|
||||||
0xNNN 0x introduces a hexadecimal (base 16) constant.
|
|
||||||
Suffix L indicates a long value (at least 32 bits).
|
|
||||||
|
|
||||||
/* Table of CRCs of all 8-bit messages. */
|
|
||||||
unsigned long crc_table[256];
|
|
||||||
|
|
||||||
/* Flag: has the table been computed? Initially false. */
|
|
||||||
int crc_table_computed = 0;
|
|
||||||
|
|
||||||
/* Make the table for a fast CRC. */
|
|
||||||
void make_crc_table(void)
|
|
||||||
{
|
|
||||||
unsigned long c;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 11]
|
|
||||||
|
|
||||||
RFC 1952 GZIP File Format Specification May 1996
|
|
||||||
|
|
||||||
|
|
||||||
int n, k;
|
|
||||||
for (n = 0; n < 256; n++) {
|
|
||||||
c = (unsigned long) n;
|
|
||||||
for (k = 0; k < 8; k++) {
|
|
||||||
if (c & 1) {
|
|
||||||
c = 0xedb88320L ^ (c >> 1);
|
|
||||||
} else {
|
|
||||||
c = c >> 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
crc_table[n] = c;
|
|
||||||
}
|
|
||||||
crc_table_computed = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
Update a running crc with the bytes buf[0..len-1] and return
|
|
||||||
the updated crc. The crc should be initialized to zero. Pre- and
|
|
||||||
post-conditioning (one's complement) is performed within this
|
|
||||||
function so it shouldn't be done by the caller. Usage example:
|
|
||||||
|
|
||||||
unsigned long crc = 0L;
|
|
||||||
|
|
||||||
while (read_buffer(buffer, length) != EOF) {
|
|
||||||
crc = update_crc(crc, buffer, length);
|
|
||||||
}
|
|
||||||
if (crc != original_crc) error();
|
|
||||||
*/
|
|
||||||
unsigned long update_crc(unsigned long crc,
|
|
||||||
unsigned char *buf, int len)
|
|
||||||
{
|
|
||||||
unsigned long c = crc ^ 0xffffffffL;
|
|
||||||
int n;
|
|
||||||
|
|
||||||
if (!crc_table_computed)
|
|
||||||
make_crc_table();
|
|
||||||
for (n = 0; n < len; n++) {
|
|
||||||
c = crc_table[(c ^ buf[n]) & 0xff] ^ (c >> 8);
|
|
||||||
}
|
|
||||||
return c ^ 0xffffffffL;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Return the CRC of the bytes buf[0..len-1]. */
|
|
||||||
unsigned long crc(unsigned char *buf, int len)
|
|
||||||
{
|
|
||||||
return update_crc(0L, buf, len);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Deutsch Informational [Page 12]
|
|
||||||
|
|
||||||
@@ -1,107 +0,0 @@
|
|||||||
A Fast Method for Identifying Plain Text Files
|
|
||||||
==============================================
|
|
||||||
|
|
||||||
|
|
||||||
Introduction
|
|
||||||
------------
|
|
||||||
|
|
||||||
Given a file coming from an unknown source, it is sometimes desirable
|
|
||||||
to find out whether the format of that file is plain text. Although
|
|
||||||
this may appear like a simple task, a fully accurate detection of the
|
|
||||||
file type requires heavy-duty semantic analysis on the file contents.
|
|
||||||
It is, however, possible to obtain satisfactory results by employing
|
|
||||||
various heuristics.
|
|
||||||
|
|
||||||
Previous versions of PKZip and other zip-compatible compression tools
|
|
||||||
were using a crude detection scheme: if more than 80% (4/5) of the bytes
|
|
||||||
found in a certain buffer are within the range [7..127], the file is
|
|
||||||
labeled as plain text, otherwise it is labeled as binary. A prominent
|
|
||||||
limitation of this scheme is the restriction to Latin-based alphabets.
|
|
||||||
Other alphabets, like Greek, Cyrillic or Asian, make extensive use of
|
|
||||||
the bytes within the range [128..255], and texts using these alphabets
|
|
||||||
are most often misidentified by this scheme; in other words, the rate
|
|
||||||
of false negatives is sometimes too high, which means that the recall
|
|
||||||
is low. Another weakness of this scheme is a reduced precision, due to
|
|
||||||
the false positives that may occur when binary files containing large
|
|
||||||
amounts of textual characters are misidentified as plain text.
|
|
||||||
|
|
||||||
In this article we propose a new, simple detection scheme that features
|
|
||||||
a much increased precision and a near-100% recall. This scheme is
|
|
||||||
designed to work on ASCII, Unicode and other ASCII-derived alphabets,
|
|
||||||
and it handles single-byte encodings (ISO-8859, MacRoman, KOI8, etc.)
|
|
||||||
and variable-sized encodings (ISO-2022, UTF-8, etc.). Wider encodings
|
|
||||||
(UCS-2/UTF-16 and UCS-4/UTF-32) are not handled, however.
|
|
||||||
|
|
||||||
|
|
||||||
The Algorithm
|
|
||||||
-------------
|
|
||||||
|
|
||||||
The algorithm works by dividing the set of bytecodes [0..255] into three
|
|
||||||
categories:
|
|
||||||
- The white list of textual bytecodes:
|
|
||||||
9 (TAB), 10 (LF), 13 (CR), 32 (SPACE) to 255.
|
|
||||||
- The gray list of tolerated bytecodes:
|
|
||||||
7 (BEL), 8 (BS), 11 (VT), 12 (FF), 26 (SUB), 27 (ESC).
|
|
||||||
- The black list of undesired, non-textual bytecodes:
|
|
||||||
0 (NUL) to 6, 14 to 31.
|
|
||||||
|
|
||||||
If a file contains at least one byte that belongs to the white list and
|
|
||||||
no byte that belongs to the black list, then the file is categorized as
|
|
||||||
plain text; otherwise, it is categorized as binary. (The boundary case,
|
|
||||||
when the file is empty, automatically falls into the latter category.)
|
|
||||||
|
|
||||||
|
|
||||||
Rationale
|
|
||||||
---------
|
|
||||||
|
|
||||||
The idea behind this algorithm relies on two observations.
|
|
||||||
|
|
||||||
The first observation is that, although the full range of 7-bit codes
|
|
||||||
[0..127] is properly specified by the ASCII standard, most control
|
|
||||||
characters in the range [0..31] are not used in practice. The only
|
|
||||||
widely-used, almost universally-portable control codes are 9 (TAB),
|
|
||||||
10 (LF) and 13 (CR). There are a few more control codes that are
|
|
||||||
recognized on a reduced range of platforms and text viewers/editors:
|
|
||||||
7 (BEL), 8 (BS), 11 (VT), 12 (FF), 26 (SUB) and 27 (ESC); but these
|
|
||||||
codes are rarely (if ever) used alone, without being accompanied by
|
|
||||||
some printable text. Even the newer, portable text formats such as
|
|
||||||
XML avoid using control characters outside the list mentioned here.
|
|
||||||
|
|
||||||
The second observation is that most of the binary files tend to contain
|
|
||||||
control characters, especially 0 (NUL). Even though the older text
|
|
||||||
detection schemes observe the presence of non-ASCII codes from the range
|
|
||||||
[128..255], the precision rarely has to suffer if this upper range is
|
|
||||||
labeled as textual, because the files that are genuinely binary tend to
|
|
||||||
contain both control characters and codes from the upper range. On the
|
|
||||||
other hand, the upper range needs to be labeled as textual, because it
|
|
||||||
is used by virtually all ASCII extensions. In particular, this range is
|
|
||||||
used for encoding non-Latin scripts.
|
|
||||||
|
|
||||||
Since there is no counting involved, other than simply observing the
|
|
||||||
presence or the absence of some byte values, the algorithm produces
|
|
||||||
consistent results, regardless what alphabet encoding is being used.
|
|
||||||
(If counting were involved, it could be possible to obtain different
|
|
||||||
results on a text encoded, say, using ISO-8859-16 versus UTF-8.)
|
|
||||||
|
|
||||||
There is an extra category of plain text files that are "polluted" with
|
|
||||||
one or more black-listed codes, either by mistake or by peculiar design
|
|
||||||
considerations. In such cases, a scheme that tolerates a small fraction
|
|
||||||
of black-listed codes would provide an increased recall (i.e. more true
|
|
||||||
positives). This, however, incurs a reduced precision overall, since
|
|
||||||
false positives are more likely to appear in binary files that contain
|
|
||||||
large chunks of textual data. Furthermore, "polluted" plain text should
|
|
||||||
be regarded as binary by general-purpose text detection schemes, because
|
|
||||||
general-purpose text processing algorithms might not be applicable.
|
|
||||||
Under this premise, it is safe to say that our detection method provides
|
|
||||||
a near-100% recall.
|
|
||||||
|
|
||||||
Experiments have been run on many files coming from various platforms
|
|
||||||
and applications. We tried plain text files, system logs, source code,
|
|
||||||
formatted office documents, compiled object code, etc. The results
|
|
||||||
confirm the optimistic assumptions about the capabilities of this
|
|
||||||
algorithm.
|
|
||||||
|
|
||||||
|
|
||||||
--
|
|
||||||
Cosmin Truta
|
|
||||||
Last updated: 2006-May-28
|
|
||||||
@@ -46,7 +46,7 @@
|
|||||||
end-of-file, they cannot be concantenated. If a Unix compress stream is
|
end-of-file, they cannot be concantenated. If a Unix compress stream is
|
||||||
encountered in an input file, it is the last stream in that file.
|
encountered in an input file, it is the last stream in that file.
|
||||||
|
|
||||||
Like gunzip and uncompress, the file attributes of the orignal compressed
|
Like gunzip and uncompress, the file attributes of the original compressed
|
||||||
file are maintained in the final uncompressed file, to the extent that the
|
file are maintained in the final uncompressed file, to the extent that the
|
||||||
user permissions allow it.
|
user permissions allow it.
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
* gzlog.c
|
* gzlog.c
|
||||||
* Copyright (C) 2004, 2008, 2012 Mark Adler, all rights reserved
|
* Copyright (C) 2004, 2008, 2012, 2016 Mark Adler, all rights reserved
|
||||||
* For conditions of distribution and use, see copyright notice in gzlog.h
|
* For conditions of distribution and use, see copyright notice in gzlog.h
|
||||||
* version 2.2, 14 Aug 2012
|
* version 2.2, 14 Aug 2012
|
||||||
*/
|
*/
|
||||||
@@ -243,7 +243,7 @@ typedef unsigned int uint;
|
|||||||
typedef unsigned long ulong;
|
typedef unsigned long ulong;
|
||||||
|
|
||||||
/* Macro for debugging to deterministically force recovery operations */
|
/* Macro for debugging to deterministically force recovery operations */
|
||||||
#ifdef DEBUG
|
#ifdef GZLOG_DEBUG
|
||||||
#include <setjmp.h> /* longjmp */
|
#include <setjmp.h> /* longjmp */
|
||||||
jmp_buf gzlog_jump; /* where to go back to */
|
jmp_buf gzlog_jump; /* where to go back to */
|
||||||
int gzlog_bail = 0; /* which point to bail at (1..8) */
|
int gzlog_bail = 0; /* which point to bail at (1..8) */
|
||||||
|
|||||||
@@ -27,7 +27,7 @@
|
|||||||
grows as needed to accommodate the points.
|
grows as needed to accommodate the points.
|
||||||
|
|
||||||
To use the index, an offset in the uncompressed data is provided, for which
|
To use the index, an offset in the uncompressed data is provided, for which
|
||||||
the latest accees point at or preceding that offset is located in the index.
|
the latest access point at or preceding that offset is located in the index.
|
||||||
The input file is positioned to the specified location in the index, and if
|
The input file is positioned to the specified location in the index, and if
|
||||||
necessary the first few bits of the compressed data is read from the file.
|
necessary the first few bits of the compressed data is read from the file.
|
||||||
inflate is initialized with those bits and the 32K of uncompressed data, and
|
inflate is initialized with those bits and the 32K of uncompressed data, and
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* gzguts.h -- zlib internal header definitions for gz* operations
|
/* gzguts.h -- zlib internal header definitions for gz* operations
|
||||||
* Copyright (C) 2004, 2005, 2010, 2011, 2012, 2013 Mark Adler
|
* Copyright (C) 2004, 2005, 2010, 2011, 2012, 2013, 2016 Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -25,6 +25,10 @@
|
|||||||
# include <stdlib.h>
|
# include <stdlib.h>
|
||||||
# include <limits.h>
|
# include <limits.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef _POSIX_SOURCE
|
||||||
|
# define _POSIX_SOURCE
|
||||||
|
#endif
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
|
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
@@ -35,6 +39,10 @@
|
|||||||
# include <io.h>
|
# include <io.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(_WIN32) || defined(__CYGWIN__)
|
||||||
|
# define WIDECHAR
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef WINAPI_FAMILY
|
#ifdef WINAPI_FAMILY
|
||||||
# define open _open
|
# define open _open
|
||||||
# define read _read
|
# define read _read
|
||||||
@@ -95,18 +103,19 @@
|
|||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* unlike snprintf (which is required in C99, yet still not supported by
|
/* unlike snprintf (which is required in C99), _snprintf does not guarantee
|
||||||
Microsoft more than a decade later!), _snprintf does not guarantee null
|
null termination of the result -- however this is only used in gzlib.c where
|
||||||
termination of the result -- however this is only used in gzlib.c where
|
|
||||||
the result is assured to fit in the space provided */
|
the result is assured to fit in the space provided */
|
||||||
#ifdef _MSC_VER
|
#if defined(_MSC_VER) && _MSC_VER < 1900
|
||||||
# define snprintf _snprintf
|
# define snprintf _snprintf
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef local
|
#ifndef local
|
||||||
# define local static
|
# define local static
|
||||||
#endif
|
#endif
|
||||||
/* compile with -Dlocal if your debugger can't find static symbols */
|
/* since "static" is used to mean two completely different things in C, we
|
||||||
|
define "local" for the non-static meaning of "static", for readability
|
||||||
|
(compile with -Dlocal if your debugger can't find static symbols) */
|
||||||
|
|
||||||
/* gz* functions always use library allocation functions */
|
/* gz* functions always use library allocation functions */
|
||||||
#ifndef STDC
|
#ifndef STDC
|
||||||
@@ -170,7 +179,7 @@ typedef struct {
|
|||||||
char *path; /* path or fd for error messages */
|
char *path; /* path or fd for error messages */
|
||||||
unsigned size; /* buffer size, zero if not allocated yet */
|
unsigned size; /* buffer size, zero if not allocated yet */
|
||||||
unsigned want; /* requested buffer size, default is GZBUFSIZE */
|
unsigned want; /* requested buffer size, default is GZBUFSIZE */
|
||||||
unsigned char *in; /* input buffer */
|
unsigned char *in; /* input buffer (double-sized when writing) */
|
||||||
unsigned char *out; /* output buffer (double-sized when reading) */
|
unsigned char *out; /* output buffer (double-sized when reading) */
|
||||||
int direct; /* 0 if processing gzip, 1 if transparent */
|
int direct; /* 0 if processing gzip, 1 if transparent */
|
||||||
/* just for reading */
|
/* just for reading */
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
/* gzlib.c -- zlib functions common to reading and writing gzip files
|
/* gzlib.c -- zlib functions common to reading and writing gzip files
|
||||||
* Copyright (C) 2004, 2010, 2011, 2012, 2013 Mark Adler
|
* Copyright (C) 2004-2017 Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "gzguts.h"
|
#include "gzguts.h"
|
||||||
|
|
||||||
#if defined(_WIN32) && !defined(__BORLANDC__)
|
#if defined(_WIN32) && !defined(__BORLANDC__) && !defined(__MINGW32__)
|
||||||
# define LSEEK _lseeki64
|
# define LSEEK _lseeki64
|
||||||
#else
|
#else
|
||||||
#if defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0
|
#if defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0
|
||||||
@@ -94,7 +94,7 @@ local gzFile gz_open(path, fd, mode)
|
|||||||
const char *mode;
|
const char *mode;
|
||||||
{
|
{
|
||||||
gz_statep state;
|
gz_statep state;
|
||||||
size_t len;
|
z_size_t len;
|
||||||
int oflag;
|
int oflag;
|
||||||
#ifdef O_CLOEXEC
|
#ifdef O_CLOEXEC
|
||||||
int cloexec = 0;
|
int cloexec = 0;
|
||||||
@@ -188,10 +188,10 @@ local gzFile gz_open(path, fd, mode)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* save the path name for error messages */
|
/* save the path name for error messages */
|
||||||
#ifdef _WIN32
|
#ifdef WIDECHAR
|
||||||
if (fd == -2) {
|
if (fd == -2) {
|
||||||
len = wcstombs(NULL, path, 0);
|
len = wcstombs(NULL, path, 0);
|
||||||
if (len == (size_t)-1)
|
if (len == (z_size_t)-1)
|
||||||
len = 0;
|
len = 0;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -202,7 +202,7 @@ local gzFile gz_open(path, fd, mode)
|
|||||||
free(state);
|
free(state);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
#ifdef _WIN32
|
#ifdef WIDECHAR
|
||||||
if (fd == -2)
|
if (fd == -2)
|
||||||
if (len)
|
if (len)
|
||||||
wcstombs(state->path, path, len + 1);
|
wcstombs(state->path, path, len + 1);
|
||||||
@@ -211,7 +211,7 @@ local gzFile gz_open(path, fd, mode)
|
|||||||
else
|
else
|
||||||
#endif
|
#endif
|
||||||
#if !defined(NO_snprintf) && !defined(NO_vsnprintf)
|
#if !defined(NO_snprintf) && !defined(NO_vsnprintf)
|
||||||
snprintf(state->path, len + 1, "%s", (const char *)path);
|
(void)snprintf(state->path, len + 1, "%s", (const char *)path);
|
||||||
#else
|
#else
|
||||||
strcpy(state->path, path);
|
strcpy(state->path, path);
|
||||||
#endif
|
#endif
|
||||||
@@ -239,7 +239,7 @@ local gzFile gz_open(path, fd, mode)
|
|||||||
|
|
||||||
/* open the file with the appropriate flags (or just use fd) */
|
/* open the file with the appropriate flags (or just use fd) */
|
||||||
state->fd = fd > -1 ? fd : (
|
state->fd = fd > -1 ? fd : (
|
||||||
#ifdef _WIN32
|
#ifdef WIDECHAR
|
||||||
fd == -2 ? _wopen(path, oflag, 0666) :
|
fd == -2 ? _wopen(path, oflag, 0666) :
|
||||||
#endif
|
#endif
|
||||||
open((const char *)path, oflag, 0666));
|
open((const char *)path, oflag, 0666));
|
||||||
@@ -248,8 +248,10 @@ local gzFile gz_open(path, fd, mode)
|
|||||||
free(state);
|
free(state);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
if (state->mode == GZ_APPEND)
|
if (state->mode == GZ_APPEND) {
|
||||||
|
LSEEK(state->fd, 0, SEEK_END); /* so gzoffset() is correct */
|
||||||
state->mode = GZ_WRITE; /* simplify later checks */
|
state->mode = GZ_WRITE; /* simplify later checks */
|
||||||
|
}
|
||||||
|
|
||||||
/* save the current position for rewinding (only if reading) */
|
/* save the current position for rewinding (only if reading) */
|
||||||
if (state->mode == GZ_READ) {
|
if (state->mode == GZ_READ) {
|
||||||
@@ -291,7 +293,7 @@ gzFile ZEXPORT gzdopen(fd, mode)
|
|||||||
if (fd == -1 || (path = (char *)malloc(7 + 3 * sizeof(int))) == NULL)
|
if (fd == -1 || (path = (char *)malloc(7 + 3 * sizeof(int))) == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
#if !defined(NO_snprintf) && !defined(NO_vsnprintf)
|
#if !defined(NO_snprintf) && !defined(NO_vsnprintf)
|
||||||
snprintf(path, 7 + 3 * sizeof(int), "<fd:%d>", fd); /* for debugging */
|
(void)snprintf(path, 7 + 3 * sizeof(int), "<fd:%d>", fd);
|
||||||
#else
|
#else
|
||||||
sprintf(path, "<fd:%d>", fd); /* for debugging */
|
sprintf(path, "<fd:%d>", fd); /* for debugging */
|
||||||
#endif
|
#endif
|
||||||
@@ -301,7 +303,7 @@ gzFile ZEXPORT gzdopen(fd, mode)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* -- see zlib.h -- */
|
/* -- see zlib.h -- */
|
||||||
#ifdef _WIN32
|
#ifdef WIDECHAR
|
||||||
gzFile ZEXPORT gzopen_w(path, mode)
|
gzFile ZEXPORT gzopen_w(path, mode)
|
||||||
const wchar_t *path;
|
const wchar_t *path;
|
||||||
const char *mode;
|
const char *mode;
|
||||||
@@ -329,6 +331,8 @@ int ZEXPORT gzbuffer(file, size)
|
|||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
/* check and set requested size */
|
/* check and set requested size */
|
||||||
|
if ((size << 1) < size)
|
||||||
|
return -1; /* need to be able to double it */
|
||||||
if (size < 2)
|
if (size < 2)
|
||||||
size = 2; /* need two bytes to check magic header */
|
size = 2; /* need two bytes to check magic header */
|
||||||
state->want = size;
|
state->want = size;
|
||||||
@@ -604,14 +608,13 @@ void ZLIB_INTERNAL gz_error(state, err, msg)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#if !defined(NO_snprintf) && !defined(NO_vsnprintf)
|
#if !defined(NO_snprintf) && !defined(NO_vsnprintf)
|
||||||
snprintf(state->msg, strlen(state->path) + strlen(msg) + 3,
|
(void)snprintf(state->msg, strlen(state->path) + strlen(msg) + 3,
|
||||||
"%s%s%s", state->path, ": ", msg);
|
"%s%s%s", state->path, ": ", msg);
|
||||||
#else
|
#else
|
||||||
strcpy(state->msg, state->path);
|
strcpy(state->msg, state->path);
|
||||||
strcat(state->msg, ": ");
|
strcat(state->msg, ": ");
|
||||||
strcat(state->msg, msg);
|
strcat(state->msg, msg);
|
||||||
#endif
|
#endif
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef INT_MAX
|
#ifndef INT_MAX
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* gzread.c -- zlib functions for reading gzip files
|
/* gzread.c -- zlib functions for reading gzip files
|
||||||
* Copyright (C) 2004, 2005, 2010, 2011, 2012, 2013 Mark Adler
|
* Copyright (C) 2004, 2005, 2010, 2011, 2012, 2013, 2016 Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -12,6 +12,7 @@ local int gz_look OF((gz_statep));
|
|||||||
local int gz_decomp OF((gz_statep));
|
local int gz_decomp OF((gz_statep));
|
||||||
local int gz_fetch OF((gz_statep));
|
local int gz_fetch OF((gz_statep));
|
||||||
local int gz_skip OF((gz_statep, z_off64_t));
|
local int gz_skip OF((gz_statep, z_off64_t));
|
||||||
|
local z_size_t gz_read OF((gz_statep, voidp, z_size_t));
|
||||||
|
|
||||||
/* Use read() to load a buffer -- return -1 on error, otherwise 0. Read from
|
/* Use read() to load a buffer -- return -1 on error, otherwise 0. Read from
|
||||||
state->fd, and update state->eof, state->err, and state->msg as appropriate.
|
state->fd, and update state->eof, state->err, and state->msg as appropriate.
|
||||||
@@ -24,13 +25,17 @@ local int gz_load(state, buf, len, have)
|
|||||||
unsigned *have;
|
unsigned *have;
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
unsigned get, max = ((unsigned)-1 >> 2) + 1;
|
||||||
|
|
||||||
*have = 0;
|
*have = 0;
|
||||||
do {
|
do {
|
||||||
ret = read(state->fd, buf + *have, len - *have);
|
get = len - *have;
|
||||||
|
if (get > max)
|
||||||
|
get = max;
|
||||||
|
ret = read(state->fd, buf + *have, get);
|
||||||
if (ret <= 0)
|
if (ret <= 0)
|
||||||
break;
|
break;
|
||||||
*have += ret;
|
*have += (unsigned)ret;
|
||||||
} while (*have < len);
|
} while (*have < len);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
gz_error(state, Z_ERRNO, zstrerror());
|
gz_error(state, Z_ERRNO, zstrerror());
|
||||||
@@ -94,10 +99,8 @@ local int gz_look(state)
|
|||||||
state->in = (unsigned char *)malloc(state->want);
|
state->in = (unsigned char *)malloc(state->want);
|
||||||
state->out = (unsigned char *)malloc(state->want << 1);
|
state->out = (unsigned char *)malloc(state->want << 1);
|
||||||
if (state->in == NULL || state->out == NULL) {
|
if (state->in == NULL || state->out == NULL) {
|
||||||
if (state->out != NULL)
|
free(state->out);
|
||||||
free(state->out);
|
free(state->in);
|
||||||
if (state->in != NULL)
|
|
||||||
free(state->in);
|
|
||||||
gz_error(state, Z_MEM_ERROR, "out of memory");
|
gz_error(state, Z_MEM_ERROR, "out of memory");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@@ -284,33 +287,17 @@ local int gz_skip(state, len)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -- see zlib.h -- */
|
/* Read len bytes into buf from file, or less than len up to the end of the
|
||||||
int ZEXPORT gzread(file, buf, len)
|
input. Return the number of bytes read. If zero is returned, either the
|
||||||
gzFile file;
|
end of file was reached, or there was an error. state->err must be
|
||||||
voidp buf;
|
consulted in that case to determine which. */
|
||||||
unsigned len;
|
local z_size_t gz_read(state, buf, len)
|
||||||
{
|
|
||||||
unsigned got, n;
|
|
||||||
gz_statep state;
|
gz_statep state;
|
||||||
z_streamp strm;
|
voidp buf;
|
||||||
|
z_size_t len;
|
||||||
/* get internal structure */
|
{
|
||||||
if (file == NULL)
|
z_size_t got;
|
||||||
return -1;
|
unsigned n;
|
||||||
state = (gz_statep)file;
|
|
||||||
strm = &(state->strm);
|
|
||||||
|
|
||||||
/* check that we're reading and that there's no (serious) error */
|
|
||||||
if (state->mode != GZ_READ ||
|
|
||||||
(state->err != Z_OK && state->err != Z_BUF_ERROR))
|
|
||||||
return -1;
|
|
||||||
|
|
||||||
/* since an int is returned, make sure len fits in one, otherwise return
|
|
||||||
with an error (this avoids the flaw in the interface) */
|
|
||||||
if ((int)len < 0) {
|
|
||||||
gz_error(state, Z_DATA_ERROR, "requested length does not fit in int");
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* if len is zero, avoid unnecessary operations */
|
/* if len is zero, avoid unnecessary operations */
|
||||||
if (len == 0)
|
if (len == 0)
|
||||||
@@ -320,32 +307,38 @@ int ZEXPORT gzread(file, buf, len)
|
|||||||
if (state->seek) {
|
if (state->seek) {
|
||||||
state->seek = 0;
|
state->seek = 0;
|
||||||
if (gz_skip(state, state->skip) == -1)
|
if (gz_skip(state, state->skip) == -1)
|
||||||
return -1;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* get len bytes to buf, or less than len if at the end */
|
/* get len bytes to buf, or less than len if at the end */
|
||||||
got = 0;
|
got = 0;
|
||||||
do {
|
do {
|
||||||
|
/* set n to the maximum amount of len that fits in an unsigned int */
|
||||||
|
n = -1;
|
||||||
|
if (n > len)
|
||||||
|
n = len;
|
||||||
|
|
||||||
/* first just try copying data from the output buffer */
|
/* first just try copying data from the output buffer */
|
||||||
if (state->x.have) {
|
if (state->x.have) {
|
||||||
n = state->x.have > len ? len : state->x.have;
|
if (state->x.have < n)
|
||||||
|
n = state->x.have;
|
||||||
memcpy(buf, state->x.next, n);
|
memcpy(buf, state->x.next, n);
|
||||||
state->x.next += n;
|
state->x.next += n;
|
||||||
state->x.have -= n;
|
state->x.have -= n;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* output buffer empty -- return if we're at the end of the input */
|
/* output buffer empty -- return if we're at the end of the input */
|
||||||
else if (state->eof && strm->avail_in == 0) {
|
else if (state->eof && state->strm.avail_in == 0) {
|
||||||
state->past = 1; /* tried to read past end */
|
state->past = 1; /* tried to read past end */
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* need output data -- for small len or new stream load up our output
|
/* need output data -- for small len or new stream load up our output
|
||||||
buffer */
|
buffer */
|
||||||
else if (state->how == LOOK || len < (state->size << 1)) {
|
else if (state->how == LOOK || n < (state->size << 1)) {
|
||||||
/* get more output, looking for header if required */
|
/* get more output, looking for header if required */
|
||||||
if (gz_fetch(state) == -1)
|
if (gz_fetch(state) == -1)
|
||||||
return -1;
|
return 0;
|
||||||
continue; /* no progress yet -- go back to copy above */
|
continue; /* no progress yet -- go back to copy above */
|
||||||
/* the copy above assures that we will leave with space in the
|
/* the copy above assures that we will leave with space in the
|
||||||
output buffer, allowing at least one gzungetc() to succeed */
|
output buffer, allowing at least one gzungetc() to succeed */
|
||||||
@@ -353,16 +346,16 @@ int ZEXPORT gzread(file, buf, len)
|
|||||||
|
|
||||||
/* large len -- read directly into user buffer */
|
/* large len -- read directly into user buffer */
|
||||||
else if (state->how == COPY) { /* read directly */
|
else if (state->how == COPY) { /* read directly */
|
||||||
if (gz_load(state, (unsigned char *)buf, len, &n) == -1)
|
if (gz_load(state, (unsigned char *)buf, n, &n) == -1)
|
||||||
return -1;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* large len -- decompress directly into user buffer */
|
/* large len -- decompress directly into user buffer */
|
||||||
else { /* state->how == GZIP */
|
else { /* state->how == GZIP */
|
||||||
strm->avail_out = len;
|
state->strm.avail_out = n;
|
||||||
strm->next_out = (unsigned char *)buf;
|
state->strm.next_out = (unsigned char *)buf;
|
||||||
if (gz_decomp(state) == -1)
|
if (gz_decomp(state) == -1)
|
||||||
return -1;
|
return 0;
|
||||||
n = state->x.have;
|
n = state->x.have;
|
||||||
state->x.have = 0;
|
state->x.have = 0;
|
||||||
}
|
}
|
||||||
@@ -374,8 +367,75 @@ int ZEXPORT gzread(file, buf, len)
|
|||||||
state->x.pos += n;
|
state->x.pos += n;
|
||||||
} while (len);
|
} while (len);
|
||||||
|
|
||||||
/* return number of bytes read into user buffer (will fit in int) */
|
/* return number of bytes read into user buffer */
|
||||||
return (int)got;
|
return got;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- see zlib.h -- */
|
||||||
|
int ZEXPORT gzread(file, buf, len)
|
||||||
|
gzFile file;
|
||||||
|
voidp buf;
|
||||||
|
unsigned len;
|
||||||
|
{
|
||||||
|
gz_statep state;
|
||||||
|
|
||||||
|
/* get internal structure */
|
||||||
|
if (file == NULL)
|
||||||
|
return -1;
|
||||||
|
state = (gz_statep)file;
|
||||||
|
|
||||||
|
/* check that we're reading and that there's no (serious) error */
|
||||||
|
if (state->mode != GZ_READ ||
|
||||||
|
(state->err != Z_OK && state->err != Z_BUF_ERROR))
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
/* since an int is returned, make sure len fits in one, otherwise return
|
||||||
|
with an error (this avoids a flaw in the interface) */
|
||||||
|
if ((int)len < 0) {
|
||||||
|
gz_error(state, Z_STREAM_ERROR, "request does not fit in an int");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* read len or fewer bytes to buf */
|
||||||
|
len = gz_read(state, buf, len);
|
||||||
|
|
||||||
|
/* check for an error */
|
||||||
|
if (len == 0 && state->err != Z_OK && state->err != Z_BUF_ERROR)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
/* return the number of bytes read (this is assured to fit in an int) */
|
||||||
|
return (int)len;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- see zlib.h -- */
|
||||||
|
z_size_t ZEXPORT gzfread(buf, size, nitems, file)
|
||||||
|
voidp buf;
|
||||||
|
z_size_t size;
|
||||||
|
z_size_t nitems;
|
||||||
|
gzFile file;
|
||||||
|
{
|
||||||
|
z_size_t len;
|
||||||
|
gz_statep state;
|
||||||
|
|
||||||
|
/* get internal structure */
|
||||||
|
if (file == NULL)
|
||||||
|
return 0;
|
||||||
|
state = (gz_statep)file;
|
||||||
|
|
||||||
|
/* check that we're reading and that there's no (serious) error */
|
||||||
|
if (state->mode != GZ_READ ||
|
||||||
|
(state->err != Z_OK && state->err != Z_BUF_ERROR))
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
/* compute bytes to read -- error on overflow */
|
||||||
|
len = nitems * size;
|
||||||
|
if (size && len / size != nitems) {
|
||||||
|
gz_error(state, Z_STREAM_ERROR, "request does not fit in a size_t");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* read len or fewer bytes to buf, return the number of full items read */
|
||||||
|
return len ? gz_read(state, buf, len) / size : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -- see zlib.h -- */
|
/* -- see zlib.h -- */
|
||||||
@@ -408,8 +468,8 @@ int ZEXPORT gzgetc(file)
|
|||||||
return *(state->x.next)++;
|
return *(state->x.next)++;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* nothing there -- try gzread() */
|
/* nothing there -- try gz_read() */
|
||||||
ret = gzread(file, buf, 1);
|
ret = gz_read(state, buf, 1);
|
||||||
return ret < 1 ? -1 : buf[0];
|
return ret < 1 ? -1 : buf[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -451,7 +511,7 @@ int ZEXPORT gzungetc(c, file)
|
|||||||
if (state->x.have == 0) {
|
if (state->x.have == 0) {
|
||||||
state->x.have = 1;
|
state->x.have = 1;
|
||||||
state->x.next = state->out + (state->size << 1) - 1;
|
state->x.next = state->out + (state->size << 1) - 1;
|
||||||
state->x.next[0] = c;
|
state->x.next[0] = (unsigned char)c;
|
||||||
state->x.pos--;
|
state->x.pos--;
|
||||||
state->past = 0;
|
state->past = 0;
|
||||||
return c;
|
return c;
|
||||||
@@ -473,7 +533,7 @@ int ZEXPORT gzungetc(c, file)
|
|||||||
}
|
}
|
||||||
state->x.have++;
|
state->x.have++;
|
||||||
state->x.next--;
|
state->x.next--;
|
||||||
state->x.next[0] = c;
|
state->x.next[0] = (unsigned char)c;
|
||||||
state->x.pos--;
|
state->x.pos--;
|
||||||
state->past = 0;
|
state->past = 0;
|
||||||
return c;
|
return c;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* gzwrite.c -- zlib functions for writing gzip files
|
/* gzwrite.c -- zlib functions for writing gzip files
|
||||||
* Copyright (C) 2004, 2005, 2010, 2011, 2012, 2013 Mark Adler
|
* Copyright (C) 2004-2017 Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -9,17 +9,19 @@
|
|||||||
local int gz_init OF((gz_statep));
|
local int gz_init OF((gz_statep));
|
||||||
local int gz_comp OF((gz_statep, int));
|
local int gz_comp OF((gz_statep, int));
|
||||||
local int gz_zero OF((gz_statep, z_off64_t));
|
local int gz_zero OF((gz_statep, z_off64_t));
|
||||||
|
local z_size_t gz_write OF((gz_statep, voidpc, z_size_t));
|
||||||
|
|
||||||
/* Initialize state for writing a gzip file. Mark initialization by setting
|
/* Initialize state for writing a gzip file. Mark initialization by setting
|
||||||
state->size to non-zero. Return -1 on failure or 0 on success. */
|
state->size to non-zero. Return -1 on a memory allocation failure, or 0 on
|
||||||
|
success. */
|
||||||
local int gz_init(state)
|
local int gz_init(state)
|
||||||
gz_statep state;
|
gz_statep state;
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
z_streamp strm = &(state->strm);
|
z_streamp strm = &(state->strm);
|
||||||
|
|
||||||
/* allocate input buffer */
|
/* allocate input buffer (double size for gzprintf) */
|
||||||
state->in = (unsigned char *)malloc(state->want);
|
state->in = (unsigned char *)malloc(state->want << 1);
|
||||||
if (state->in == NULL) {
|
if (state->in == NULL) {
|
||||||
gz_error(state, Z_MEM_ERROR, "out of memory");
|
gz_error(state, Z_MEM_ERROR, "out of memory");
|
||||||
return -1;
|
return -1;
|
||||||
@@ -47,6 +49,7 @@ local int gz_init(state)
|
|||||||
gz_error(state, Z_MEM_ERROR, "out of memory");
|
gz_error(state, Z_MEM_ERROR, "out of memory");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
strm->next_in = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* mark state as initialized */
|
/* mark state as initialized */
|
||||||
@@ -62,17 +65,17 @@ local int gz_init(state)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Compress whatever is at avail_in and next_in and write to the output file.
|
/* Compress whatever is at avail_in and next_in and write to the output file.
|
||||||
Return -1 if there is an error writing to the output file, otherwise 0.
|
Return -1 if there is an error writing to the output file or if gz_init()
|
||||||
flush is assumed to be a valid deflate() flush value. If flush is Z_FINISH,
|
fails to allocate memory, otherwise 0. flush is assumed to be a valid
|
||||||
then the deflate() state is reset to start a new gzip stream. If gz->direct
|
deflate() flush value. If flush is Z_FINISH, then the deflate() state is
|
||||||
is true, then simply write to the output file without compressing, and
|
reset to start a new gzip stream. If gz->direct is true, then simply write
|
||||||
ignore flush. */
|
to the output file without compressing, and ignore flush. */
|
||||||
local int gz_comp(state, flush)
|
local int gz_comp(state, flush)
|
||||||
gz_statep state;
|
gz_statep state;
|
||||||
int flush;
|
int flush;
|
||||||
{
|
{
|
||||||
int ret, got;
|
int ret, writ;
|
||||||
unsigned have;
|
unsigned have, put, max = ((unsigned)-1 >> 2) + 1;
|
||||||
z_streamp strm = &(state->strm);
|
z_streamp strm = &(state->strm);
|
||||||
|
|
||||||
/* allocate memory if this is the first time through */
|
/* allocate memory if this is the first time through */
|
||||||
@@ -81,12 +84,16 @@ local int gz_comp(state, flush)
|
|||||||
|
|
||||||
/* write directly if requested */
|
/* write directly if requested */
|
||||||
if (state->direct) {
|
if (state->direct) {
|
||||||
got = write(state->fd, strm->next_in, strm->avail_in);
|
while (strm->avail_in) {
|
||||||
if (got < 0 || (unsigned)got != strm->avail_in) {
|
put = strm->avail_in > max ? max : strm->avail_in;
|
||||||
gz_error(state, Z_ERRNO, zstrerror());
|
writ = write(state->fd, strm->next_in, put);
|
||||||
return -1;
|
if (writ < 0) {
|
||||||
|
gz_error(state, Z_ERRNO, zstrerror());
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
strm->avail_in -= (unsigned)writ;
|
||||||
|
strm->next_in += writ;
|
||||||
}
|
}
|
||||||
strm->avail_in = 0;
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -97,17 +104,21 @@ local int gz_comp(state, flush)
|
|||||||
doing Z_FINISH then don't write until we get to Z_STREAM_END */
|
doing Z_FINISH then don't write until we get to Z_STREAM_END */
|
||||||
if (strm->avail_out == 0 || (flush != Z_NO_FLUSH &&
|
if (strm->avail_out == 0 || (flush != Z_NO_FLUSH &&
|
||||||
(flush != Z_FINISH || ret == Z_STREAM_END))) {
|
(flush != Z_FINISH || ret == Z_STREAM_END))) {
|
||||||
have = (unsigned)(strm->next_out - state->x.next);
|
while (strm->next_out > state->x.next) {
|
||||||
if (have && ((got = write(state->fd, state->x.next, have)) < 0 ||
|
put = strm->next_out - state->x.next > (int)max ? max :
|
||||||
(unsigned)got != have)) {
|
(unsigned)(strm->next_out - state->x.next);
|
||||||
gz_error(state, Z_ERRNO, zstrerror());
|
writ = write(state->fd, state->x.next, put);
|
||||||
return -1;
|
if (writ < 0) {
|
||||||
|
gz_error(state, Z_ERRNO, zstrerror());
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
state->x.next += writ;
|
||||||
}
|
}
|
||||||
if (strm->avail_out == 0) {
|
if (strm->avail_out == 0) {
|
||||||
strm->avail_out = state->size;
|
strm->avail_out = state->size;
|
||||||
strm->next_out = state->out;
|
strm->next_out = state->out;
|
||||||
|
state->x.next = state->out;
|
||||||
}
|
}
|
||||||
state->x.next = strm->next_out;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* compress */
|
/* compress */
|
||||||
@@ -129,7 +140,8 @@ local int gz_comp(state, flush)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Compress len zeros to output. Return -1 on error, 0 on success. */
|
/* Compress len zeros to output. Return -1 on a write error or memory
|
||||||
|
allocation failure by gz_comp(), or 0 on success. */
|
||||||
local int gz_zero(state, len)
|
local int gz_zero(state, len)
|
||||||
gz_statep state;
|
gz_statep state;
|
||||||
z_off64_t len;
|
z_off64_t len;
|
||||||
@@ -161,32 +173,14 @@ local int gz_zero(state, len)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -- see zlib.h -- */
|
/* Write len bytes from buf to file. Return the number of bytes written. If
|
||||||
int ZEXPORT gzwrite(file, buf, len)
|
the returned value is less than len, then there was an error. */
|
||||||
gzFile file;
|
local z_size_t gz_write(state, buf, len)
|
||||||
voidpc buf;
|
|
||||||
unsigned len;
|
|
||||||
{
|
|
||||||
unsigned put = len;
|
|
||||||
gz_statep state;
|
gz_statep state;
|
||||||
z_streamp strm;
|
voidpc buf;
|
||||||
|
z_size_t len;
|
||||||
/* get internal structure */
|
{
|
||||||
if (file == NULL)
|
z_size_t put = len;
|
||||||
return 0;
|
|
||||||
state = (gz_statep)file;
|
|
||||||
strm = &(state->strm);
|
|
||||||
|
|
||||||
/* check that we're writing and that there's no error */
|
|
||||||
if (state->mode != GZ_WRITE || state->err != Z_OK)
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
/* since an int is returned, make sure len fits in one, otherwise return
|
|
||||||
with an error (this avoids the flaw in the interface) */
|
|
||||||
if ((int)len < 0) {
|
|
||||||
gz_error(state, Z_DATA_ERROR, "requested length does not fit in int");
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* if len is zero, avoid unnecessary operations */
|
/* if len is zero, avoid unnecessary operations */
|
||||||
if (len == 0)
|
if (len == 0)
|
||||||
@@ -209,14 +203,15 @@ int ZEXPORT gzwrite(file, buf, len)
|
|||||||
do {
|
do {
|
||||||
unsigned have, copy;
|
unsigned have, copy;
|
||||||
|
|
||||||
if (strm->avail_in == 0)
|
if (state->strm.avail_in == 0)
|
||||||
strm->next_in = state->in;
|
state->strm.next_in = state->in;
|
||||||
have = (unsigned)((strm->next_in + strm->avail_in) - state->in);
|
have = (unsigned)((state->strm.next_in + state->strm.avail_in) -
|
||||||
|
state->in);
|
||||||
copy = state->size - have;
|
copy = state->size - have;
|
||||||
if (copy > len)
|
if (copy > len)
|
||||||
copy = len;
|
copy = len;
|
||||||
memcpy(state->in + have, buf, copy);
|
memcpy(state->in + have, buf, copy);
|
||||||
strm->avail_in += copy;
|
state->strm.avail_in += copy;
|
||||||
state->x.pos += copy;
|
state->x.pos += copy;
|
||||||
buf = (const char *)buf + copy;
|
buf = (const char *)buf + copy;
|
||||||
len -= copy;
|
len -= copy;
|
||||||
@@ -226,19 +221,83 @@ int ZEXPORT gzwrite(file, buf, len)
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
/* consume whatever's left in the input buffer */
|
/* consume whatever's left in the input buffer */
|
||||||
if (strm->avail_in && gz_comp(state, Z_NO_FLUSH) == -1)
|
if (state->strm.avail_in && gz_comp(state, Z_NO_FLUSH) == -1)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
/* directly compress user buffer to file */
|
/* directly compress user buffer to file */
|
||||||
strm->avail_in = len;
|
state->strm.next_in = (z_const Bytef *)buf;
|
||||||
strm->next_in = (z_const Bytef *)buf;
|
do {
|
||||||
state->x.pos += len;
|
unsigned n = (unsigned)-1;
|
||||||
if (gz_comp(state, Z_NO_FLUSH) == -1)
|
if (n > len)
|
||||||
return 0;
|
n = len;
|
||||||
|
state->strm.avail_in = n;
|
||||||
|
state->x.pos += n;
|
||||||
|
if (gz_comp(state, Z_NO_FLUSH) == -1)
|
||||||
|
return 0;
|
||||||
|
len -= n;
|
||||||
|
} while (len);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* input was all buffered or compressed (put will fit in int) */
|
/* input was all buffered or compressed */
|
||||||
return (int)put;
|
return put;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- see zlib.h -- */
|
||||||
|
int ZEXPORT gzwrite(file, buf, len)
|
||||||
|
gzFile file;
|
||||||
|
voidpc buf;
|
||||||
|
unsigned len;
|
||||||
|
{
|
||||||
|
gz_statep state;
|
||||||
|
|
||||||
|
/* get internal structure */
|
||||||
|
if (file == NULL)
|
||||||
|
return 0;
|
||||||
|
state = (gz_statep)file;
|
||||||
|
|
||||||
|
/* check that we're writing and that there's no error */
|
||||||
|
if (state->mode != GZ_WRITE || state->err != Z_OK)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
/* since an int is returned, make sure len fits in one, otherwise return
|
||||||
|
with an error (this avoids a flaw in the interface) */
|
||||||
|
if ((int)len < 0) {
|
||||||
|
gz_error(state, Z_DATA_ERROR, "requested length does not fit in int");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* write len bytes from buf (the return value will fit in an int) */
|
||||||
|
return (int)gz_write(state, buf, len);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- see zlib.h -- */
|
||||||
|
z_size_t ZEXPORT gzfwrite(buf, size, nitems, file)
|
||||||
|
voidpc buf;
|
||||||
|
z_size_t size;
|
||||||
|
z_size_t nitems;
|
||||||
|
gzFile file;
|
||||||
|
{
|
||||||
|
z_size_t len;
|
||||||
|
gz_statep state;
|
||||||
|
|
||||||
|
/* get internal structure */
|
||||||
|
if (file == NULL)
|
||||||
|
return 0;
|
||||||
|
state = (gz_statep)file;
|
||||||
|
|
||||||
|
/* check that we're writing and that there's no error */
|
||||||
|
if (state->mode != GZ_WRITE || state->err != Z_OK)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
/* compute bytes to read -- error on overflow */
|
||||||
|
len = nitems * size;
|
||||||
|
if (size && len / size != nitems) {
|
||||||
|
gz_error(state, Z_STREAM_ERROR, "request does not fit in a size_t");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* write len bytes to buf, return the number of full items written */
|
||||||
|
return len ? gz_write(state, buf, len) / size : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* -- see zlib.h -- */
|
/* -- see zlib.h -- */
|
||||||
@@ -275,7 +334,7 @@ int ZEXPORT gzputc(file, c)
|
|||||||
strm->next_in = state->in;
|
strm->next_in = state->in;
|
||||||
have = (unsigned)((strm->next_in + strm->avail_in) - state->in);
|
have = (unsigned)((strm->next_in + strm->avail_in) - state->in);
|
||||||
if (have < state->size) {
|
if (have < state->size) {
|
||||||
state->in[have] = c;
|
state->in[have] = (unsigned char)c;
|
||||||
strm->avail_in++;
|
strm->avail_in++;
|
||||||
state->x.pos++;
|
state->x.pos++;
|
||||||
return c & 0xff;
|
return c & 0xff;
|
||||||
@@ -283,8 +342,8 @@ int ZEXPORT gzputc(file, c)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* no room in buffer or not initialized, use gz_write() */
|
/* no room in buffer or not initialized, use gz_write() */
|
||||||
buf[0] = c;
|
buf[0] = (unsigned char)c;
|
||||||
if (gzwrite(file, buf, 1) != 1)
|
if (gz_write(state, buf, 1) != 1)
|
||||||
return -1;
|
return -1;
|
||||||
return c & 0xff;
|
return c & 0xff;
|
||||||
}
|
}
|
||||||
@@ -295,11 +354,21 @@ int ZEXPORT gzputs(file, str)
|
|||||||
const char *str;
|
const char *str;
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
unsigned len;
|
z_size_t len;
|
||||||
|
gz_statep state;
|
||||||
|
|
||||||
|
/* get internal structure */
|
||||||
|
if (file == NULL)
|
||||||
|
return -1;
|
||||||
|
state = (gz_statep)file;
|
||||||
|
|
||||||
|
/* check that we're writing and that there's no error */
|
||||||
|
if (state->mode != GZ_WRITE || state->err != Z_OK)
|
||||||
|
return -1;
|
||||||
|
|
||||||
/* write string */
|
/* write string */
|
||||||
len = (unsigned)strlen(str);
|
len = strlen(str);
|
||||||
ret = gzwrite(file, str, len);
|
ret = gz_write(state, str, len);
|
||||||
return ret == 0 && len != 0 ? -1 : ret;
|
return ret == 0 && len != 0 ? -1 : ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -309,63 +378,73 @@ int ZEXPORT gzputs(file, str)
|
|||||||
/* -- see zlib.h -- */
|
/* -- see zlib.h -- */
|
||||||
int ZEXPORTVA gzvprintf(gzFile file, const char *format, va_list va)
|
int ZEXPORTVA gzvprintf(gzFile file, const char *format, va_list va)
|
||||||
{
|
{
|
||||||
int size, len;
|
int len;
|
||||||
|
unsigned left;
|
||||||
|
char *next;
|
||||||
gz_statep state;
|
gz_statep state;
|
||||||
z_streamp strm;
|
z_streamp strm;
|
||||||
|
|
||||||
/* get internal structure */
|
/* get internal structure */
|
||||||
if (file == NULL)
|
if (file == NULL)
|
||||||
return -1;
|
return Z_STREAM_ERROR;
|
||||||
state = (gz_statep)file;
|
state = (gz_statep)file;
|
||||||
strm = &(state->strm);
|
strm = &(state->strm);
|
||||||
|
|
||||||
/* check that we're writing and that there's no error */
|
/* check that we're writing and that there's no error */
|
||||||
if (state->mode != GZ_WRITE || state->err != Z_OK)
|
if (state->mode != GZ_WRITE || state->err != Z_OK)
|
||||||
return 0;
|
return Z_STREAM_ERROR;
|
||||||
|
|
||||||
/* make sure we have some buffer space */
|
/* make sure we have some buffer space */
|
||||||
if (state->size == 0 && gz_init(state) == -1)
|
if (state->size == 0 && gz_init(state) == -1)
|
||||||
return 0;
|
return state->err;
|
||||||
|
|
||||||
/* check for seek request */
|
/* check for seek request */
|
||||||
if (state->seek) {
|
if (state->seek) {
|
||||||
state->seek = 0;
|
state->seek = 0;
|
||||||
if (gz_zero(state, state->skip) == -1)
|
if (gz_zero(state, state->skip) == -1)
|
||||||
return 0;
|
return state->err;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* consume whatever's left in the input buffer */
|
/* do the printf() into the input buffer, put length in len -- the input
|
||||||
if (strm->avail_in && gz_comp(state, Z_NO_FLUSH) == -1)
|
buffer is double-sized just for this function, so there is guaranteed to
|
||||||
return 0;
|
be state->size bytes available after the current contents */
|
||||||
|
if (strm->avail_in == 0)
|
||||||
/* do the printf() into the input buffer, put length in len */
|
strm->next_in = state->in;
|
||||||
size = (int)(state->size);
|
next = (char *)(state->in + (strm->next_in - state->in) + strm->avail_in);
|
||||||
state->in[size - 1] = 0;
|
next[state->size - 1] = 0;
|
||||||
#ifdef NO_vsnprintf
|
#ifdef NO_vsnprintf
|
||||||
# ifdef HAS_vsprintf_void
|
# ifdef HAS_vsprintf_void
|
||||||
(void)vsprintf((char *)(state->in), format, va);
|
(void)vsprintf(next, format, va);
|
||||||
for (len = 0; len < size; len++)
|
for (len = 0; len < state->size; len++)
|
||||||
if (state->in[len] == 0) break;
|
if (next[len] == 0) break;
|
||||||
# else
|
# else
|
||||||
len = vsprintf((char *)(state->in), format, va);
|
len = vsprintf(next, format, va);
|
||||||
# endif
|
# endif
|
||||||
#else
|
#else
|
||||||
# ifdef HAS_vsnprintf_void
|
# ifdef HAS_vsnprintf_void
|
||||||
(void)vsnprintf((char *)(state->in), size, format, va);
|
(void)vsnprintf(next, state->size, format, va);
|
||||||
len = strlen((char *)(state->in));
|
len = strlen(next);
|
||||||
# else
|
# else
|
||||||
len = vsnprintf((char *)(state->in), size, format, va);
|
len = vsnprintf(next, state->size, format, va);
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* check that printf() results fit in buffer */
|
/* check that printf() results fit in buffer */
|
||||||
if (len <= 0 || len >= (int)size || state->in[size - 1] != 0)
|
if (len == 0 || (unsigned)len >= state->size || next[state->size - 1] != 0)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
/* update buffer and position, defer compression until needed */
|
/* update buffer and position, compress first half if past that */
|
||||||
strm->avail_in = (unsigned)len;
|
strm->avail_in += (unsigned)len;
|
||||||
strm->next_in = state->in;
|
|
||||||
state->x.pos += len;
|
state->x.pos += len;
|
||||||
|
if (strm->avail_in >= state->size) {
|
||||||
|
left = strm->avail_in - state->size;
|
||||||
|
strm->avail_in = state->size;
|
||||||
|
if (gz_comp(state, Z_NO_FLUSH) == -1)
|
||||||
|
return state->err;
|
||||||
|
memcpy(state->in, state->in + state->size, left);
|
||||||
|
strm->next_in = state->in;
|
||||||
|
strm->avail_in = left;
|
||||||
|
}
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -390,73 +469,82 @@ int ZEXPORTVA gzprintf (file, format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10,
|
|||||||
int a1, a2, a3, a4, a5, a6, a7, a8, a9, a10,
|
int a1, a2, a3, a4, a5, a6, a7, a8, a9, a10,
|
||||||
a11, a12, a13, a14, a15, a16, a17, a18, a19, a20;
|
a11, a12, a13, a14, a15, a16, a17, a18, a19, a20;
|
||||||
{
|
{
|
||||||
int size, len;
|
unsigned len, left;
|
||||||
|
char *next;
|
||||||
gz_statep state;
|
gz_statep state;
|
||||||
z_streamp strm;
|
z_streamp strm;
|
||||||
|
|
||||||
/* get internal structure */
|
/* get internal structure */
|
||||||
if (file == NULL)
|
if (file == NULL)
|
||||||
return -1;
|
return Z_STREAM_ERROR;
|
||||||
state = (gz_statep)file;
|
state = (gz_statep)file;
|
||||||
strm = &(state->strm);
|
strm = &(state->strm);
|
||||||
|
|
||||||
/* check that can really pass pointer in ints */
|
/* check that can really pass pointer in ints */
|
||||||
if (sizeof(int) != sizeof(void *))
|
if (sizeof(int) != sizeof(void *))
|
||||||
return 0;
|
return Z_STREAM_ERROR;
|
||||||
|
|
||||||
/* check that we're writing and that there's no error */
|
/* check that we're writing and that there's no error */
|
||||||
if (state->mode != GZ_WRITE || state->err != Z_OK)
|
if (state->mode != GZ_WRITE || state->err != Z_OK)
|
||||||
return 0;
|
return Z_STREAM_ERROR;
|
||||||
|
|
||||||
/* make sure we have some buffer space */
|
/* make sure we have some buffer space */
|
||||||
if (state->size == 0 && gz_init(state) == -1)
|
if (state->size == 0 && gz_init(state) == -1)
|
||||||
return 0;
|
return state->error;
|
||||||
|
|
||||||
/* check for seek request */
|
/* check for seek request */
|
||||||
if (state->seek) {
|
if (state->seek) {
|
||||||
state->seek = 0;
|
state->seek = 0;
|
||||||
if (gz_zero(state, state->skip) == -1)
|
if (gz_zero(state, state->skip) == -1)
|
||||||
return 0;
|
return state->error;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* consume whatever's left in the input buffer */
|
/* do the printf() into the input buffer, put length in len -- the input
|
||||||
if (strm->avail_in && gz_comp(state, Z_NO_FLUSH) == -1)
|
buffer is double-sized just for this function, so there is guaranteed to
|
||||||
return 0;
|
be state->size bytes available after the current contents */
|
||||||
|
if (strm->avail_in == 0)
|
||||||
/* do the printf() into the input buffer, put length in len */
|
strm->next_in = state->in;
|
||||||
size = (int)(state->size);
|
next = (char *)(strm->next_in + strm->avail_in);
|
||||||
state->in[size - 1] = 0;
|
next[state->size - 1] = 0;
|
||||||
#ifdef NO_snprintf
|
#ifdef NO_snprintf
|
||||||
# ifdef HAS_sprintf_void
|
# ifdef HAS_sprintf_void
|
||||||
sprintf((char *)(state->in), format, a1, a2, a3, a4, a5, a6, a7, a8,
|
sprintf(next, format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12,
|
||||||
a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
|
a13, a14, a15, a16, a17, a18, a19, a20);
|
||||||
for (len = 0; len < size; len++)
|
for (len = 0; len < size; len++)
|
||||||
if (state->in[len] == 0) break;
|
if (next[len] == 0)
|
||||||
|
break;
|
||||||
# else
|
# else
|
||||||
len = sprintf((char *)(state->in), format, a1, a2, a3, a4, a5, a6, a7, a8,
|
len = sprintf(next, format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11,
|
||||||
a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
|
a12, a13, a14, a15, a16, a17, a18, a19, a20);
|
||||||
# endif
|
# endif
|
||||||
#else
|
#else
|
||||||
# ifdef HAS_snprintf_void
|
# ifdef HAS_snprintf_void
|
||||||
snprintf((char *)(state->in), size, format, a1, a2, a3, a4, a5, a6, a7, a8,
|
snprintf(next, state->size, format, a1, a2, a3, a4, a5, a6, a7, a8, a9,
|
||||||
a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
|
a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
|
||||||
len = strlen((char *)(state->in));
|
len = strlen(next);
|
||||||
# else
|
# else
|
||||||
len = snprintf((char *)(state->in), size, format, a1, a2, a3, a4, a5, a6,
|
len = snprintf(next, state->size, format, a1, a2, a3, a4, a5, a6, a7, a8,
|
||||||
a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18,
|
a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20);
|
||||||
a19, a20);
|
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* check that printf() results fit in buffer */
|
/* check that printf() results fit in buffer */
|
||||||
if (len <= 0 || len >= (int)size || state->in[size - 1] != 0)
|
if (len == 0 || len >= state->size || next[state->size - 1] != 0)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
/* update buffer and position, defer compression until needed */
|
/* update buffer and position, compress first half if past that */
|
||||||
strm->avail_in = (unsigned)len;
|
strm->avail_in += len;
|
||||||
strm->next_in = state->in;
|
|
||||||
state->x.pos += len;
|
state->x.pos += len;
|
||||||
return len;
|
if (strm->avail_in >= state->size) {
|
||||||
|
left = strm->avail_in - state->size;
|
||||||
|
strm->avail_in = state->size;
|
||||||
|
if (gz_comp(state, Z_NO_FLUSH) == -1)
|
||||||
|
return state->err;
|
||||||
|
memcpy(state->in, state->in + state->size, left);
|
||||||
|
strm->next_in = state->in;
|
||||||
|
strm->avail_in = left;
|
||||||
|
}
|
||||||
|
return (int)len;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@@ -470,7 +558,7 @@ int ZEXPORT gzflush(file, flush)
|
|||||||
|
|
||||||
/* get internal structure */
|
/* get internal structure */
|
||||||
if (file == NULL)
|
if (file == NULL)
|
||||||
return -1;
|
return Z_STREAM_ERROR;
|
||||||
state = (gz_statep)file;
|
state = (gz_statep)file;
|
||||||
|
|
||||||
/* check that we're writing and that there's no error */
|
/* check that we're writing and that there's no error */
|
||||||
@@ -485,11 +573,11 @@ int ZEXPORT gzflush(file, flush)
|
|||||||
if (state->seek) {
|
if (state->seek) {
|
||||||
state->seek = 0;
|
state->seek = 0;
|
||||||
if (gz_zero(state, state->skip) == -1)
|
if (gz_zero(state, state->skip) == -1)
|
||||||
return -1;
|
return state->err;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* compress remaining data with requested flush */
|
/* compress remaining data with requested flush */
|
||||||
gz_comp(state, flush);
|
(void)gz_comp(state, flush);
|
||||||
return state->err;
|
return state->err;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -520,13 +608,13 @@ int ZEXPORT gzsetparams(file, level, strategy)
|
|||||||
if (state->seek) {
|
if (state->seek) {
|
||||||
state->seek = 0;
|
state->seek = 0;
|
||||||
if (gz_zero(state, state->skip) == -1)
|
if (gz_zero(state, state->skip) == -1)
|
||||||
return -1;
|
return state->err;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* change compression parameters for subsequent input */
|
/* change compression parameters for subsequent input */
|
||||||
if (state->size) {
|
if (state->size) {
|
||||||
/* flush previous input with previous parameters before changing */
|
/* flush previous input with previous parameters before changing */
|
||||||
if (strm->avail_in && gz_comp(state, Z_PARTIAL_FLUSH) == -1)
|
if (strm->avail_in && gz_comp(state, Z_BLOCK) == -1)
|
||||||
return state->err;
|
return state->err;
|
||||||
deflateParams(strm, level, strategy);
|
deflateParams(strm, level, strategy);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* infback.c -- inflate using a call-back interface
|
/* infback.c -- inflate using a call-back interface
|
||||||
* Copyright (C) 1995-2011 Mark Adler
|
* Copyright (C) 1995-2016 Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -61,7 +61,7 @@ int stream_size;
|
|||||||
Tracev((stderr, "inflate: allocated\n"));
|
Tracev((stderr, "inflate: allocated\n"));
|
||||||
strm->state = (struct internal_state FAR *)state;
|
strm->state = (struct internal_state FAR *)state;
|
||||||
state->dmax = 32768U;
|
state->dmax = 32768U;
|
||||||
state->wbits = windowBits;
|
state->wbits = (uInt)windowBits;
|
||||||
state->wsize = 1U << windowBits;
|
state->wsize = 1U << windowBits;
|
||||||
state->window = window;
|
state->window = window;
|
||||||
state->wnext = 0;
|
state->wnext = 0;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* inffast.c -- fast decoding
|
/* inffast.c -- fast decoding
|
||||||
* Copyright (C) 1995-2008, 2010, 2013 Mark Adler
|
* Copyright (C) 1995-2017 Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -8,26 +8,9 @@
|
|||||||
#include "inflate.h"
|
#include "inflate.h"
|
||||||
#include "inffast.h"
|
#include "inffast.h"
|
||||||
|
|
||||||
#ifndef ASMINF
|
#ifdef ASMINF
|
||||||
|
# pragma message("Assembler code may have bugs -- use at your own risk")
|
||||||
/* Allow machine dependent optimization for post-increment or pre-increment.
|
|
||||||
Based on testing to date,
|
|
||||||
Pre-increment preferred for:
|
|
||||||
- PowerPC G3 (Adler)
|
|
||||||
- MIPS R5000 (Randers-Pehrson)
|
|
||||||
Post-increment preferred for:
|
|
||||||
- none
|
|
||||||
No measurable difference:
|
|
||||||
- Pentium III (Anderson)
|
|
||||||
- M68060 (Nikl)
|
|
||||||
*/
|
|
||||||
#ifdef POSTINC
|
|
||||||
# define OFF 0
|
|
||||||
# define PUP(a) *(a)++
|
|
||||||
#else
|
#else
|
||||||
# define OFF 1
|
|
||||||
# define PUP(a) *++(a)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Decode literal, length, and distance codes and write out the resulting
|
Decode literal, length, and distance codes and write out the resulting
|
||||||
@@ -96,9 +79,9 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
|
|||||||
|
|
||||||
/* copy state to local variables */
|
/* copy state to local variables */
|
||||||
state = (struct inflate_state FAR *)strm->state;
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
in = strm->next_in - OFF;
|
in = strm->next_in;
|
||||||
last = in + (strm->avail_in - 5);
|
last = in + (strm->avail_in - 5);
|
||||||
out = strm->next_out - OFF;
|
out = strm->next_out;
|
||||||
beg = out - (start - strm->avail_out);
|
beg = out - (start - strm->avail_out);
|
||||||
end = out + (strm->avail_out - 257);
|
end = out + (strm->avail_out - 257);
|
||||||
#ifdef INFLATE_STRICT
|
#ifdef INFLATE_STRICT
|
||||||
@@ -119,9 +102,9 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
|
|||||||
input data or output space */
|
input data or output space */
|
||||||
do {
|
do {
|
||||||
if (bits < 15) {
|
if (bits < 15) {
|
||||||
hold += (unsigned long)(PUP(in)) << bits;
|
hold += (unsigned long)(*in++) << bits;
|
||||||
bits += 8;
|
bits += 8;
|
||||||
hold += (unsigned long)(PUP(in)) << bits;
|
hold += (unsigned long)(*in++) << bits;
|
||||||
bits += 8;
|
bits += 8;
|
||||||
}
|
}
|
||||||
here = lcode[hold & lmask];
|
here = lcode[hold & lmask];
|
||||||
@@ -134,14 +117,14 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
|
|||||||
Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?
|
Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?
|
||||||
"inflate: literal '%c'\n" :
|
"inflate: literal '%c'\n" :
|
||||||
"inflate: literal 0x%02x\n", here.val));
|
"inflate: literal 0x%02x\n", here.val));
|
||||||
PUP(out) = (unsigned char)(here.val);
|
*out++ = (unsigned char)(here.val);
|
||||||
}
|
}
|
||||||
else if (op & 16) { /* length base */
|
else if (op & 16) { /* length base */
|
||||||
len = (unsigned)(here.val);
|
len = (unsigned)(here.val);
|
||||||
op &= 15; /* number of extra bits */
|
op &= 15; /* number of extra bits */
|
||||||
if (op) {
|
if (op) {
|
||||||
if (bits < op) {
|
if (bits < op) {
|
||||||
hold += (unsigned long)(PUP(in)) << bits;
|
hold += (unsigned long)(*in++) << bits;
|
||||||
bits += 8;
|
bits += 8;
|
||||||
}
|
}
|
||||||
len += (unsigned)hold & ((1U << op) - 1);
|
len += (unsigned)hold & ((1U << op) - 1);
|
||||||
@@ -150,9 +133,9 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
|
|||||||
}
|
}
|
||||||
Tracevv((stderr, "inflate: length %u\n", len));
|
Tracevv((stderr, "inflate: length %u\n", len));
|
||||||
if (bits < 15) {
|
if (bits < 15) {
|
||||||
hold += (unsigned long)(PUP(in)) << bits;
|
hold += (unsigned long)(*in++) << bits;
|
||||||
bits += 8;
|
bits += 8;
|
||||||
hold += (unsigned long)(PUP(in)) << bits;
|
hold += (unsigned long)(*in++) << bits;
|
||||||
bits += 8;
|
bits += 8;
|
||||||
}
|
}
|
||||||
here = dcode[hold & dmask];
|
here = dcode[hold & dmask];
|
||||||
@@ -165,10 +148,10 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
|
|||||||
dist = (unsigned)(here.val);
|
dist = (unsigned)(here.val);
|
||||||
op &= 15; /* number of extra bits */
|
op &= 15; /* number of extra bits */
|
||||||
if (bits < op) {
|
if (bits < op) {
|
||||||
hold += (unsigned long)(PUP(in)) << bits;
|
hold += (unsigned long)(*in++) << bits;
|
||||||
bits += 8;
|
bits += 8;
|
||||||
if (bits < op) {
|
if (bits < op) {
|
||||||
hold += (unsigned long)(PUP(in)) << bits;
|
hold += (unsigned long)(*in++) << bits;
|
||||||
bits += 8;
|
bits += 8;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -196,30 +179,30 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
|
|||||||
#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR
|
#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR
|
||||||
if (len <= op - whave) {
|
if (len <= op - whave) {
|
||||||
do {
|
do {
|
||||||
PUP(out) = 0;
|
*out++ = 0;
|
||||||
} while (--len);
|
} while (--len);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
len -= op - whave;
|
len -= op - whave;
|
||||||
do {
|
do {
|
||||||
PUP(out) = 0;
|
*out++ = 0;
|
||||||
} while (--op > whave);
|
} while (--op > whave);
|
||||||
if (op == 0) {
|
if (op == 0) {
|
||||||
from = out - dist;
|
from = out - dist;
|
||||||
do {
|
do {
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
} while (--len);
|
} while (--len);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
from = window - OFF;
|
from = window;
|
||||||
if (wnext == 0) { /* very common case */
|
if (wnext == 0) { /* very common case */
|
||||||
from += wsize - op;
|
from += wsize - op;
|
||||||
if (op < len) { /* some from window */
|
if (op < len) { /* some from window */
|
||||||
len -= op;
|
len -= op;
|
||||||
do {
|
do {
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
} while (--op);
|
} while (--op);
|
||||||
from = out - dist; /* rest from output */
|
from = out - dist; /* rest from output */
|
||||||
}
|
}
|
||||||
@@ -230,14 +213,14 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
|
|||||||
if (op < len) { /* some from end of window */
|
if (op < len) { /* some from end of window */
|
||||||
len -= op;
|
len -= op;
|
||||||
do {
|
do {
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
} while (--op);
|
} while (--op);
|
||||||
from = window - OFF;
|
from = window;
|
||||||
if (wnext < len) { /* some from start of window */
|
if (wnext < len) { /* some from start of window */
|
||||||
op = wnext;
|
op = wnext;
|
||||||
len -= op;
|
len -= op;
|
||||||
do {
|
do {
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
} while (--op);
|
} while (--op);
|
||||||
from = out - dist; /* rest from output */
|
from = out - dist; /* rest from output */
|
||||||
}
|
}
|
||||||
@@ -248,35 +231,35 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
|
|||||||
if (op < len) { /* some from window */
|
if (op < len) { /* some from window */
|
||||||
len -= op;
|
len -= op;
|
||||||
do {
|
do {
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
} while (--op);
|
} while (--op);
|
||||||
from = out - dist; /* rest from output */
|
from = out - dist; /* rest from output */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
while (len > 2) {
|
while (len > 2) {
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
len -= 3;
|
len -= 3;
|
||||||
}
|
}
|
||||||
if (len) {
|
if (len) {
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
if (len > 1)
|
if (len > 1)
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
from = out - dist; /* copy direct from output */
|
from = out - dist; /* copy direct from output */
|
||||||
do { /* minimum length is three */
|
do { /* minimum length is three */
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
len -= 3;
|
len -= 3;
|
||||||
} while (len > 2);
|
} while (len > 2);
|
||||||
if (len) {
|
if (len) {
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
if (len > 1)
|
if (len > 1)
|
||||||
PUP(out) = PUP(from);
|
*out++ = *from++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -313,8 +296,8 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
|
|||||||
hold &= (1U << bits) - 1;
|
hold &= (1U << bits) - 1;
|
||||||
|
|
||||||
/* update state and return */
|
/* update state and return */
|
||||||
strm->next_in = in + OFF;
|
strm->next_in = in;
|
||||||
strm->next_out = out + OFF;
|
strm->next_out = out;
|
||||||
strm->avail_in = (unsigned)(in < last ? 5 + (last - in) : 5 - (in - last));
|
strm->avail_in = (unsigned)(in < last ? 5 + (last - in) : 5 - (in - last));
|
||||||
strm->avail_out = (unsigned)(out < end ?
|
strm->avail_out = (unsigned)(out < end ?
|
||||||
257 + (end - out) : 257 - (out - end));
|
257 + (end - out) : 257 - (out - end));
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* inflate.c -- zlib decompression
|
/* inflate.c -- zlib decompression
|
||||||
* Copyright (C) 1995-2012 Mark Adler
|
* Copyright (C) 1995-2016 Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -92,6 +92,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* function prototypes */
|
/* function prototypes */
|
||||||
|
local int inflateStateCheck OF((z_streamp strm));
|
||||||
local void fixedtables OF((struct inflate_state FAR *state));
|
local void fixedtables OF((struct inflate_state FAR *state));
|
||||||
local int updatewindow OF((z_streamp strm, const unsigned char FAR *end,
|
local int updatewindow OF((z_streamp strm, const unsigned char FAR *end,
|
||||||
unsigned copy));
|
unsigned copy));
|
||||||
@@ -101,12 +102,26 @@ local int updatewindow OF((z_streamp strm, const unsigned char FAR *end,
|
|||||||
local unsigned syncsearch OF((unsigned FAR *have, const unsigned char FAR *buf,
|
local unsigned syncsearch OF((unsigned FAR *have, const unsigned char FAR *buf,
|
||||||
unsigned len));
|
unsigned len));
|
||||||
|
|
||||||
|
local int inflateStateCheck(strm)
|
||||||
|
z_streamp strm;
|
||||||
|
{
|
||||||
|
struct inflate_state FAR *state;
|
||||||
|
if (strm == Z_NULL ||
|
||||||
|
strm->zalloc == (alloc_func)0 || strm->zfree == (free_func)0)
|
||||||
|
return 1;
|
||||||
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
|
if (state == Z_NULL || state->strm != strm ||
|
||||||
|
state->mode < HEAD || state->mode > SYNC)
|
||||||
|
return 1;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
int ZEXPORT inflateResetKeep(strm)
|
int ZEXPORT inflateResetKeep(strm)
|
||||||
z_streamp strm;
|
z_streamp strm;
|
||||||
{
|
{
|
||||||
struct inflate_state FAR *state;
|
struct inflate_state FAR *state;
|
||||||
|
|
||||||
if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
|
if (inflateStateCheck(strm)) return Z_STREAM_ERROR;
|
||||||
state = (struct inflate_state FAR *)strm->state;
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
strm->total_in = strm->total_out = state->total = 0;
|
strm->total_in = strm->total_out = state->total = 0;
|
||||||
strm->msg = Z_NULL;
|
strm->msg = Z_NULL;
|
||||||
@@ -131,7 +146,7 @@ z_streamp strm;
|
|||||||
{
|
{
|
||||||
struct inflate_state FAR *state;
|
struct inflate_state FAR *state;
|
||||||
|
|
||||||
if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
|
if (inflateStateCheck(strm)) return Z_STREAM_ERROR;
|
||||||
state = (struct inflate_state FAR *)strm->state;
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
state->wsize = 0;
|
state->wsize = 0;
|
||||||
state->whave = 0;
|
state->whave = 0;
|
||||||
@@ -147,7 +162,7 @@ int windowBits;
|
|||||||
struct inflate_state FAR *state;
|
struct inflate_state FAR *state;
|
||||||
|
|
||||||
/* get the state */
|
/* get the state */
|
||||||
if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
|
if (inflateStateCheck(strm)) return Z_STREAM_ERROR;
|
||||||
state = (struct inflate_state FAR *)strm->state;
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
|
|
||||||
/* extract wrap request from windowBits parameter */
|
/* extract wrap request from windowBits parameter */
|
||||||
@@ -156,7 +171,7 @@ int windowBits;
|
|||||||
windowBits = -windowBits;
|
windowBits = -windowBits;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
wrap = (windowBits >> 4) + 1;
|
wrap = (windowBits >> 4) + 5;
|
||||||
#ifdef GUNZIP
|
#ifdef GUNZIP
|
||||||
if (windowBits < 48)
|
if (windowBits < 48)
|
||||||
windowBits &= 15;
|
windowBits &= 15;
|
||||||
@@ -210,7 +225,9 @@ int stream_size;
|
|||||||
if (state == Z_NULL) return Z_MEM_ERROR;
|
if (state == Z_NULL) return Z_MEM_ERROR;
|
||||||
Tracev((stderr, "inflate: allocated\n"));
|
Tracev((stderr, "inflate: allocated\n"));
|
||||||
strm->state = (struct internal_state FAR *)state;
|
strm->state = (struct internal_state FAR *)state;
|
||||||
|
state->strm = strm;
|
||||||
state->window = Z_NULL;
|
state->window = Z_NULL;
|
||||||
|
state->mode = HEAD; /* to pass state test in inflateReset2() */
|
||||||
ret = inflateReset2(strm, windowBits);
|
ret = inflateReset2(strm, windowBits);
|
||||||
if (ret != Z_OK) {
|
if (ret != Z_OK) {
|
||||||
ZFREE(strm, state);
|
ZFREE(strm, state);
|
||||||
@@ -234,17 +251,17 @@ int value;
|
|||||||
{
|
{
|
||||||
struct inflate_state FAR *state;
|
struct inflate_state FAR *state;
|
||||||
|
|
||||||
if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
|
if (inflateStateCheck(strm)) return Z_STREAM_ERROR;
|
||||||
state = (struct inflate_state FAR *)strm->state;
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
if (bits < 0) {
|
if (bits < 0) {
|
||||||
state->hold = 0;
|
state->hold = 0;
|
||||||
state->bits = 0;
|
state->bits = 0;
|
||||||
return Z_OK;
|
return Z_OK;
|
||||||
}
|
}
|
||||||
if (bits > 16 || state->bits + bits > 32) return Z_STREAM_ERROR;
|
if (bits > 16 || state->bits + (uInt)bits > 32) return Z_STREAM_ERROR;
|
||||||
value &= (1L << bits) - 1;
|
value &= (1L << bits) - 1;
|
||||||
state->hold += value << state->bits;
|
state->hold += (unsigned)value << state->bits;
|
||||||
state->bits += bits;
|
state->bits += (uInt)bits;
|
||||||
return Z_OK;
|
return Z_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -625,7 +642,7 @@ int flush;
|
|||||||
static const unsigned short order[19] = /* permutation of code lengths */
|
static const unsigned short order[19] = /* permutation of code lengths */
|
||||||
{16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15};
|
{16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15};
|
||||||
|
|
||||||
if (strm == Z_NULL || strm->state == Z_NULL || strm->next_out == Z_NULL ||
|
if (inflateStateCheck(strm) || strm->next_out == Z_NULL ||
|
||||||
(strm->next_in == Z_NULL && strm->avail_in != 0))
|
(strm->next_in == Z_NULL && strm->avail_in != 0))
|
||||||
return Z_STREAM_ERROR;
|
return Z_STREAM_ERROR;
|
||||||
|
|
||||||
@@ -645,6 +662,8 @@ int flush;
|
|||||||
NEEDBITS(16);
|
NEEDBITS(16);
|
||||||
#ifdef GUNZIP
|
#ifdef GUNZIP
|
||||||
if ((state->wrap & 2) && hold == 0x8b1f) { /* gzip header */
|
if ((state->wrap & 2) && hold == 0x8b1f) { /* gzip header */
|
||||||
|
if (state->wbits == 0)
|
||||||
|
state->wbits = 15;
|
||||||
state->check = crc32(0L, Z_NULL, 0);
|
state->check = crc32(0L, Z_NULL, 0);
|
||||||
CRC2(state->check, hold);
|
CRC2(state->check, hold);
|
||||||
INITBITS();
|
INITBITS();
|
||||||
@@ -672,7 +691,7 @@ int flush;
|
|||||||
len = BITS(4) + 8;
|
len = BITS(4) + 8;
|
||||||
if (state->wbits == 0)
|
if (state->wbits == 0)
|
||||||
state->wbits = len;
|
state->wbits = len;
|
||||||
else if (len > state->wbits) {
|
if (len > 15 || len > state->wbits) {
|
||||||
strm->msg = (char *)"invalid window size";
|
strm->msg = (char *)"invalid window size";
|
||||||
state->mode = BAD;
|
state->mode = BAD;
|
||||||
break;
|
break;
|
||||||
@@ -699,14 +718,16 @@ int flush;
|
|||||||
}
|
}
|
||||||
if (state->head != Z_NULL)
|
if (state->head != Z_NULL)
|
||||||
state->head->text = (int)((hold >> 8) & 1);
|
state->head->text = (int)((hold >> 8) & 1);
|
||||||
if (state->flags & 0x0200) CRC2(state->check, hold);
|
if ((state->flags & 0x0200) && (state->wrap & 4))
|
||||||
|
CRC2(state->check, hold);
|
||||||
INITBITS();
|
INITBITS();
|
||||||
state->mode = TIME;
|
state->mode = TIME;
|
||||||
case TIME:
|
case TIME:
|
||||||
NEEDBITS(32);
|
NEEDBITS(32);
|
||||||
if (state->head != Z_NULL)
|
if (state->head != Z_NULL)
|
||||||
state->head->time = hold;
|
state->head->time = hold;
|
||||||
if (state->flags & 0x0200) CRC4(state->check, hold);
|
if ((state->flags & 0x0200) && (state->wrap & 4))
|
||||||
|
CRC4(state->check, hold);
|
||||||
INITBITS();
|
INITBITS();
|
||||||
state->mode = OS;
|
state->mode = OS;
|
||||||
case OS:
|
case OS:
|
||||||
@@ -715,7 +736,8 @@ int flush;
|
|||||||
state->head->xflags = (int)(hold & 0xff);
|
state->head->xflags = (int)(hold & 0xff);
|
||||||
state->head->os = (int)(hold >> 8);
|
state->head->os = (int)(hold >> 8);
|
||||||
}
|
}
|
||||||
if (state->flags & 0x0200) CRC2(state->check, hold);
|
if ((state->flags & 0x0200) && (state->wrap & 4))
|
||||||
|
CRC2(state->check, hold);
|
||||||
INITBITS();
|
INITBITS();
|
||||||
state->mode = EXLEN;
|
state->mode = EXLEN;
|
||||||
case EXLEN:
|
case EXLEN:
|
||||||
@@ -724,7 +746,8 @@ int flush;
|
|||||||
state->length = (unsigned)(hold);
|
state->length = (unsigned)(hold);
|
||||||
if (state->head != Z_NULL)
|
if (state->head != Z_NULL)
|
||||||
state->head->extra_len = (unsigned)hold;
|
state->head->extra_len = (unsigned)hold;
|
||||||
if (state->flags & 0x0200) CRC2(state->check, hold);
|
if ((state->flags & 0x0200) && (state->wrap & 4))
|
||||||
|
CRC2(state->check, hold);
|
||||||
INITBITS();
|
INITBITS();
|
||||||
}
|
}
|
||||||
else if (state->head != Z_NULL)
|
else if (state->head != Z_NULL)
|
||||||
@@ -742,7 +765,7 @@ int flush;
|
|||||||
len + copy > state->head->extra_max ?
|
len + copy > state->head->extra_max ?
|
||||||
state->head->extra_max - len : copy);
|
state->head->extra_max - len : copy);
|
||||||
}
|
}
|
||||||
if (state->flags & 0x0200)
|
if ((state->flags & 0x0200) && (state->wrap & 4))
|
||||||
state->check = crc32(state->check, next, copy);
|
state->check = crc32(state->check, next, copy);
|
||||||
have -= copy;
|
have -= copy;
|
||||||
next += copy;
|
next += copy;
|
||||||
@@ -761,9 +784,9 @@ int flush;
|
|||||||
if (state->head != Z_NULL &&
|
if (state->head != Z_NULL &&
|
||||||
state->head->name != Z_NULL &&
|
state->head->name != Z_NULL &&
|
||||||
state->length < state->head->name_max)
|
state->length < state->head->name_max)
|
||||||
state->head->name[state->length++] = len;
|
state->head->name[state->length++] = (Bytef)len;
|
||||||
} while (len && copy < have);
|
} while (len && copy < have);
|
||||||
if (state->flags & 0x0200)
|
if ((state->flags & 0x0200) && (state->wrap & 4))
|
||||||
state->check = crc32(state->check, next, copy);
|
state->check = crc32(state->check, next, copy);
|
||||||
have -= copy;
|
have -= copy;
|
||||||
next += copy;
|
next += copy;
|
||||||
@@ -782,9 +805,9 @@ int flush;
|
|||||||
if (state->head != Z_NULL &&
|
if (state->head != Z_NULL &&
|
||||||
state->head->comment != Z_NULL &&
|
state->head->comment != Z_NULL &&
|
||||||
state->length < state->head->comm_max)
|
state->length < state->head->comm_max)
|
||||||
state->head->comment[state->length++] = len;
|
state->head->comment[state->length++] = (Bytef)len;
|
||||||
} while (len && copy < have);
|
} while (len && copy < have);
|
||||||
if (state->flags & 0x0200)
|
if ((state->flags & 0x0200) && (state->wrap & 4))
|
||||||
state->check = crc32(state->check, next, copy);
|
state->check = crc32(state->check, next, copy);
|
||||||
have -= copy;
|
have -= copy;
|
||||||
next += copy;
|
next += copy;
|
||||||
@@ -796,7 +819,7 @@ int flush;
|
|||||||
case HCRC:
|
case HCRC:
|
||||||
if (state->flags & 0x0200) {
|
if (state->flags & 0x0200) {
|
||||||
NEEDBITS(16);
|
NEEDBITS(16);
|
||||||
if (hold != (state->check & 0xffff)) {
|
if ((state->wrap & 4) && hold != (state->check & 0xffff)) {
|
||||||
strm->msg = (char *)"header crc mismatch";
|
strm->msg = (char *)"header crc mismatch";
|
||||||
state->mode = BAD;
|
state->mode = BAD;
|
||||||
break;
|
break;
|
||||||
@@ -1177,11 +1200,11 @@ int flush;
|
|||||||
out -= left;
|
out -= left;
|
||||||
strm->total_out += out;
|
strm->total_out += out;
|
||||||
state->total += out;
|
state->total += out;
|
||||||
if (out)
|
if ((state->wrap & 4) && out)
|
||||||
strm->adler = state->check =
|
strm->adler = state->check =
|
||||||
UPDATE(state->check, put - out, out);
|
UPDATE(state->check, put - out, out);
|
||||||
out = left;
|
out = left;
|
||||||
if ((
|
if ((state->wrap & 4) && (
|
||||||
#ifdef GUNZIP
|
#ifdef GUNZIP
|
||||||
state->flags ? hold :
|
state->flags ? hold :
|
||||||
#endif
|
#endif
|
||||||
@@ -1240,10 +1263,10 @@ int flush;
|
|||||||
strm->total_in += in;
|
strm->total_in += in;
|
||||||
strm->total_out += out;
|
strm->total_out += out;
|
||||||
state->total += out;
|
state->total += out;
|
||||||
if (state->wrap && out)
|
if ((state->wrap & 4) && out)
|
||||||
strm->adler = state->check =
|
strm->adler = state->check =
|
||||||
UPDATE(state->check, strm->next_out - out, out);
|
UPDATE(state->check, strm->next_out - out, out);
|
||||||
strm->data_type = state->bits + (state->last ? 64 : 0) +
|
strm->data_type = (int)state->bits + (state->last ? 64 : 0) +
|
||||||
(state->mode == TYPE ? 128 : 0) +
|
(state->mode == TYPE ? 128 : 0) +
|
||||||
(state->mode == LEN_ || state->mode == COPY_ ? 256 : 0);
|
(state->mode == LEN_ || state->mode == COPY_ ? 256 : 0);
|
||||||
if (((in == 0 && out == 0) || flush == Z_FINISH) && ret == Z_OK)
|
if (((in == 0 && out == 0) || flush == Z_FINISH) && ret == Z_OK)
|
||||||
@@ -1255,7 +1278,7 @@ int ZEXPORT inflateEnd(strm)
|
|||||||
z_streamp strm;
|
z_streamp strm;
|
||||||
{
|
{
|
||||||
struct inflate_state FAR *state;
|
struct inflate_state FAR *state;
|
||||||
if (strm == Z_NULL || strm->state == Z_NULL || strm->zfree == (free_func)0)
|
if (inflateStateCheck(strm))
|
||||||
return Z_STREAM_ERROR;
|
return Z_STREAM_ERROR;
|
||||||
state = (struct inflate_state FAR *)strm->state;
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
if (state->window != Z_NULL) ZFREE(strm, state->window);
|
if (state->window != Z_NULL) ZFREE(strm, state->window);
|
||||||
@@ -1273,7 +1296,7 @@ uInt *dictLength;
|
|||||||
struct inflate_state FAR *state;
|
struct inflate_state FAR *state;
|
||||||
|
|
||||||
/* check state */
|
/* check state */
|
||||||
if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
|
if (inflateStateCheck(strm)) return Z_STREAM_ERROR;
|
||||||
state = (struct inflate_state FAR *)strm->state;
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
|
|
||||||
/* copy dictionary */
|
/* copy dictionary */
|
||||||
@@ -1298,7 +1321,7 @@ uInt dictLength;
|
|||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
/* check state */
|
/* check state */
|
||||||
if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
|
if (inflateStateCheck(strm)) return Z_STREAM_ERROR;
|
||||||
state = (struct inflate_state FAR *)strm->state;
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
if (state->wrap != 0 && state->mode != DICT)
|
if (state->wrap != 0 && state->mode != DICT)
|
||||||
return Z_STREAM_ERROR;
|
return Z_STREAM_ERROR;
|
||||||
@@ -1330,7 +1353,7 @@ gz_headerp head;
|
|||||||
struct inflate_state FAR *state;
|
struct inflate_state FAR *state;
|
||||||
|
|
||||||
/* check state */
|
/* check state */
|
||||||
if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
|
if (inflateStateCheck(strm)) return Z_STREAM_ERROR;
|
||||||
state = (struct inflate_state FAR *)strm->state;
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
if ((state->wrap & 2) == 0) return Z_STREAM_ERROR;
|
if ((state->wrap & 2) == 0) return Z_STREAM_ERROR;
|
||||||
|
|
||||||
@@ -1383,7 +1406,7 @@ z_streamp strm;
|
|||||||
struct inflate_state FAR *state;
|
struct inflate_state FAR *state;
|
||||||
|
|
||||||
/* check parameters */
|
/* check parameters */
|
||||||
if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
|
if (inflateStateCheck(strm)) return Z_STREAM_ERROR;
|
||||||
state = (struct inflate_state FAR *)strm->state;
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
if (strm->avail_in == 0 && state->bits < 8) return Z_BUF_ERROR;
|
if (strm->avail_in == 0 && state->bits < 8) return Z_BUF_ERROR;
|
||||||
|
|
||||||
@@ -1430,7 +1453,7 @@ z_streamp strm;
|
|||||||
{
|
{
|
||||||
struct inflate_state FAR *state;
|
struct inflate_state FAR *state;
|
||||||
|
|
||||||
if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
|
if (inflateStateCheck(strm)) return Z_STREAM_ERROR;
|
||||||
state = (struct inflate_state FAR *)strm->state;
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
return state->mode == STORED && state->bits == 0;
|
return state->mode == STORED && state->bits == 0;
|
||||||
}
|
}
|
||||||
@@ -1445,8 +1468,7 @@ z_streamp source;
|
|||||||
unsigned wsize;
|
unsigned wsize;
|
||||||
|
|
||||||
/* check input */
|
/* check input */
|
||||||
if (dest == Z_NULL || source == Z_NULL || source->state == Z_NULL ||
|
if (inflateStateCheck(source) || dest == Z_NULL)
|
||||||
source->zalloc == (alloc_func)0 || source->zfree == (free_func)0)
|
|
||||||
return Z_STREAM_ERROR;
|
return Z_STREAM_ERROR;
|
||||||
state = (struct inflate_state FAR *)source->state;
|
state = (struct inflate_state FAR *)source->state;
|
||||||
|
|
||||||
@@ -1467,6 +1489,7 @@ z_streamp source;
|
|||||||
/* copy state */
|
/* copy state */
|
||||||
zmemcpy((voidpf)dest, (voidpf)source, sizeof(z_stream));
|
zmemcpy((voidpf)dest, (voidpf)source, sizeof(z_stream));
|
||||||
zmemcpy((voidpf)copy, (voidpf)state, sizeof(struct inflate_state));
|
zmemcpy((voidpf)copy, (voidpf)state, sizeof(struct inflate_state));
|
||||||
|
copy->strm = dest;
|
||||||
if (state->lencode >= state->codes &&
|
if (state->lencode >= state->codes &&
|
||||||
state->lencode <= state->codes + ENOUGH - 1) {
|
state->lencode <= state->codes + ENOUGH - 1) {
|
||||||
copy->lencode = copy->codes + (state->lencode - state->codes);
|
copy->lencode = copy->codes + (state->lencode - state->codes);
|
||||||
@@ -1488,25 +1511,51 @@ int subvert;
|
|||||||
{
|
{
|
||||||
struct inflate_state FAR *state;
|
struct inflate_state FAR *state;
|
||||||
|
|
||||||
if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
|
if (inflateStateCheck(strm)) return Z_STREAM_ERROR;
|
||||||
state = (struct inflate_state FAR *)strm->state;
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
state->sane = !subvert;
|
|
||||||
#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR
|
#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR
|
||||||
|
state->sane = !subvert;
|
||||||
return Z_OK;
|
return Z_OK;
|
||||||
#else
|
#else
|
||||||
|
(void)subvert;
|
||||||
state->sane = 1;
|
state->sane = 1;
|
||||||
return Z_DATA_ERROR;
|
return Z_DATA_ERROR;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int ZEXPORT inflateValidate(strm, check)
|
||||||
|
z_streamp strm;
|
||||||
|
int check;
|
||||||
|
{
|
||||||
|
struct inflate_state FAR *state;
|
||||||
|
|
||||||
|
if (inflateStateCheck(strm)) return Z_STREAM_ERROR;
|
||||||
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
|
if (check)
|
||||||
|
state->wrap |= 4;
|
||||||
|
else
|
||||||
|
state->wrap &= ~4;
|
||||||
|
return Z_OK;
|
||||||
|
}
|
||||||
|
|
||||||
long ZEXPORT inflateMark(strm)
|
long ZEXPORT inflateMark(strm)
|
||||||
z_streamp strm;
|
z_streamp strm;
|
||||||
{
|
{
|
||||||
struct inflate_state FAR *state;
|
struct inflate_state FAR *state;
|
||||||
|
|
||||||
if (strm == Z_NULL || strm->state == Z_NULL) return -1L << 16;
|
if (inflateStateCheck(strm))
|
||||||
|
return -(1L << 16);
|
||||||
state = (struct inflate_state FAR *)strm->state;
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
return ((long)(state->back) << 16) +
|
return (long)(((unsigned long)((long)state->back)) << 16) +
|
||||||
(state->mode == COPY ? state->length :
|
(state->mode == COPY ? state->length :
|
||||||
(state->mode == MATCH ? state->was - state->length : 0));
|
(state->mode == MATCH ? state->was - state->length : 0));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
unsigned long ZEXPORT inflateCodesUsed(strm)
|
||||||
|
z_streamp strm;
|
||||||
|
{
|
||||||
|
struct inflate_state FAR *state;
|
||||||
|
if (inflateStateCheck(strm)) return (unsigned long)-1;
|
||||||
|
state = (struct inflate_state FAR *)strm->state;
|
||||||
|
return (unsigned long)(state->next - state->codes);
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* inflate.h -- internal inflate state definition
|
/* inflate.h -- internal inflate state definition
|
||||||
* Copyright (C) 1995-2009 Mark Adler
|
* Copyright (C) 1995-2016 Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -18,7 +18,7 @@
|
|||||||
|
|
||||||
/* Possible inflate modes between inflate() calls */
|
/* Possible inflate modes between inflate() calls */
|
||||||
typedef enum {
|
typedef enum {
|
||||||
HEAD, /* i: waiting for magic header */
|
HEAD = 16180, /* i: waiting for magic header */
|
||||||
FLAGS, /* i: waiting for method and flags (gzip) */
|
FLAGS, /* i: waiting for method and flags (gzip) */
|
||||||
TIME, /* i: waiting for modification time (gzip) */
|
TIME, /* i: waiting for modification time (gzip) */
|
||||||
OS, /* i: waiting for extra flags and operating system (gzip) */
|
OS, /* i: waiting for extra flags and operating system (gzip) */
|
||||||
@@ -77,11 +77,14 @@ typedef enum {
|
|||||||
CHECK -> LENGTH -> DONE
|
CHECK -> LENGTH -> DONE
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* state maintained between inflate() calls. Approximately 10K bytes. */
|
/* State maintained between inflate() calls -- approximately 7K bytes, not
|
||||||
|
including the allocated sliding window, which is up to 32K bytes. */
|
||||||
struct inflate_state {
|
struct inflate_state {
|
||||||
|
z_streamp strm; /* pointer back to this zlib stream */
|
||||||
inflate_mode mode; /* current inflate mode */
|
inflate_mode mode; /* current inflate mode */
|
||||||
int last; /* true if processing last block */
|
int last; /* true if processing last block */
|
||||||
int wrap; /* bit 0 true for zlib, bit 1 true for gzip */
|
int wrap; /* bit 0 true for zlib, bit 1 true for gzip,
|
||||||
|
bit 2 true to validate check value */
|
||||||
int havedict; /* true if dictionary provided */
|
int havedict; /* true if dictionary provided */
|
||||||
int flags; /* gzip header method and flags (0 if zlib) */
|
int flags; /* gzip header method and flags (0 if zlib) */
|
||||||
unsigned dmax; /* zlib header max distance (INFLATE_STRICT) */
|
unsigned dmax; /* zlib header max distance (INFLATE_STRICT) */
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* inftrees.c -- generate Huffman trees for efficient decoding
|
/* inftrees.c -- generate Huffman trees for efficient decoding
|
||||||
* Copyright (C) 1995-2013 Mark Adler
|
* Copyright (C) 1995-2017 Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -9,7 +9,7 @@
|
|||||||
#define MAXBITS 15
|
#define MAXBITS 15
|
||||||
|
|
||||||
const char inflate_copyright[] =
|
const char inflate_copyright[] =
|
||||||
" inflate 1.2.8 Copyright 1995-2013 Mark Adler ";
|
" inflate 1.2.11 Copyright 1995-2017 Mark Adler ";
|
||||||
/*
|
/*
|
||||||
If you use the zlib library in a product, an acknowledgment is welcome
|
If you use the zlib library in a product, an acknowledgment is welcome
|
||||||
in the documentation of your product. If for some reason you cannot
|
in the documentation of your product. If for some reason you cannot
|
||||||
@@ -54,7 +54,7 @@ unsigned short FAR *work;
|
|||||||
code FAR *next; /* next available space in table */
|
code FAR *next; /* next available space in table */
|
||||||
const unsigned short FAR *base; /* base value table to use */
|
const unsigned short FAR *base; /* base value table to use */
|
||||||
const unsigned short FAR *extra; /* extra bits table to use */
|
const unsigned short FAR *extra; /* extra bits table to use */
|
||||||
int end; /* use base and extra for symbol > end */
|
unsigned match; /* use base and extra for symbol >= match */
|
||||||
unsigned short count[MAXBITS+1]; /* number of codes of each length */
|
unsigned short count[MAXBITS+1]; /* number of codes of each length */
|
||||||
unsigned short offs[MAXBITS+1]; /* offsets in table for each length */
|
unsigned short offs[MAXBITS+1]; /* offsets in table for each length */
|
||||||
static const unsigned short lbase[31] = { /* Length codes 257..285 base */
|
static const unsigned short lbase[31] = { /* Length codes 257..285 base */
|
||||||
@@ -62,7 +62,7 @@ unsigned short FAR *work;
|
|||||||
35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0};
|
35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0};
|
||||||
static const unsigned short lext[31] = { /* Length codes 257..285 extra */
|
static const unsigned short lext[31] = { /* Length codes 257..285 extra */
|
||||||
16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18,
|
16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18,
|
||||||
19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78};
|
19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 77, 202};
|
||||||
static const unsigned short dbase[32] = { /* Distance codes 0..29 base */
|
static const unsigned short dbase[32] = { /* Distance codes 0..29 base */
|
||||||
1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,
|
1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,
|
||||||
257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,
|
257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,
|
||||||
@@ -181,19 +181,17 @@ unsigned short FAR *work;
|
|||||||
switch (type) {
|
switch (type) {
|
||||||
case CODES:
|
case CODES:
|
||||||
base = extra = work; /* dummy value--not used */
|
base = extra = work; /* dummy value--not used */
|
||||||
end = 19;
|
match = 20;
|
||||||
break;
|
break;
|
||||||
case LENS:
|
case LENS:
|
||||||
base = lbase;
|
base = lbase;
|
||||||
base -= 257;
|
|
||||||
extra = lext;
|
extra = lext;
|
||||||
extra -= 257;
|
match = 257;
|
||||||
end = 256;
|
|
||||||
break;
|
break;
|
||||||
default: /* DISTS */
|
default: /* DISTS */
|
||||||
base = dbase;
|
base = dbase;
|
||||||
extra = dext;
|
extra = dext;
|
||||||
end = -1;
|
match = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* initialize state for loop */
|
/* initialize state for loop */
|
||||||
@@ -216,13 +214,13 @@ unsigned short FAR *work;
|
|||||||
for (;;) {
|
for (;;) {
|
||||||
/* create table entry */
|
/* create table entry */
|
||||||
here.bits = (unsigned char)(len - drop);
|
here.bits = (unsigned char)(len - drop);
|
||||||
if ((int)(work[sym]) < end) {
|
if (work[sym] + 1U < match) {
|
||||||
here.op = (unsigned char)0;
|
here.op = (unsigned char)0;
|
||||||
here.val = work[sym];
|
here.val = work[sym];
|
||||||
}
|
}
|
||||||
else if ((int)(work[sym]) > end) {
|
else if (work[sym] >= match) {
|
||||||
here.op = (unsigned char)(extra[work[sym]]);
|
here.op = (unsigned char)(extra[work[sym] - match]);
|
||||||
here.val = base[work[sym]];
|
here.val = base[work[sym] - match];
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
here.op = (unsigned char)(32 + 64); /* end of block */
|
here.op = (unsigned char)(32 + 64); /* end of block */
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ CC=gcc
|
|||||||
|
|
||||||
#CFLAGS=-MMD -O
|
#CFLAGS=-MMD -O
|
||||||
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
|
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
|
||||||
#CFLAGS=-MMD -g -DDEBUG
|
#CFLAGS=-MMD -g -DZLIB_DEBUG
|
||||||
CFLAGS=-MMD -O3 $(BUTT) -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
|
CFLAGS=-MMD -O3 $(BUTT) -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
|
||||||
-Wstrict-prototypes -Wmissing-prototypes
|
-Wstrict-prototypes -Wmissing-prototypes
|
||||||
|
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ CC=gcc
|
|||||||
|
|
||||||
#CFLAGS=-MMD -O
|
#CFLAGS=-MMD -O
|
||||||
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
|
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
|
||||||
#CFLAGS=-MMD -g -DDEBUG
|
#CFLAGS=-MMD -g -DZLIB_DEBUG
|
||||||
CFLAGS=-MMD -O3 $(BUTT) -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
|
CFLAGS=-MMD -O3 $(BUTT) -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
|
||||||
-Wstrict-prototypes -Wmissing-prototypes
|
-Wstrict-prototypes -Wmissing-prototypes
|
||||||
|
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ CC=gcc -Zwin32
|
|||||||
|
|
||||||
#CFLAGS=-MMD -O
|
#CFLAGS=-MMD -O
|
||||||
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
|
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
|
||||||
#CFLAGS=-MMD -g -DDEBUG
|
#CFLAGS=-MMD -g -DZLIB_DEBUG
|
||||||
CFLAGS=-MMD -O3 $(BUTT) -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
|
CFLAGS=-MMD -O3 $(BUTT) -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
|
||||||
-Wstrict-prototypes -Wmissing-prototypes
|
-Wstrict-prototypes -Wmissing-prototypes
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ CC=gcc -Zomf -s
|
|||||||
|
|
||||||
CFLAGS=-O6 -Wall
|
CFLAGS=-O6 -Wall
|
||||||
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
|
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
|
||||||
#CFLAGS=-g -DDEBUG
|
#CFLAGS=-g -DZLIB_DEBUG
|
||||||
#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
|
#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
|
||||||
# -Wstrict-prototypes -Wmissing-prototypes
|
# -Wstrict-prototypes -Wmissing-prototypes
|
||||||
|
|
||||||
|
|||||||
48
compat/zlib/os400/README400
Normal file
48
compat/zlib/os400/README400
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
ZLIB version 1.2.11 for OS/400 installation instructions
|
||||||
|
|
||||||
|
1) Download and unpack the zlib tarball to some IFS directory.
|
||||||
|
(i.e.: /path/to/the/zlib/ifs/source/directory)
|
||||||
|
|
||||||
|
If the installed IFS command suppors gzip format, this is straightforward,
|
||||||
|
else you have to unpack first to some directory on a system supporting it,
|
||||||
|
then move the whole directory to the IFS via the network (via SMB or FTP).
|
||||||
|
|
||||||
|
2) Edit the configuration parameters in the compilation script.
|
||||||
|
|
||||||
|
EDTF STMF('/path/to/the/zlib/ifs/source/directory/os400/make.sh')
|
||||||
|
|
||||||
|
Tune the parameters according to your needs if not matching the defaults.
|
||||||
|
Save the file and exit after edition.
|
||||||
|
|
||||||
|
3) Enter qshell, then work in the zlib OS/400 specific directory.
|
||||||
|
|
||||||
|
QSH
|
||||||
|
cd /path/to/the/zlib/ifs/source/directory/os400
|
||||||
|
|
||||||
|
4) Compile and install
|
||||||
|
|
||||||
|
sh make.sh
|
||||||
|
|
||||||
|
The script will:
|
||||||
|
- create the libraries, objects and IFS directories for the zlib environment,
|
||||||
|
- compile all modules,
|
||||||
|
- create a service program,
|
||||||
|
- create a static and a dynamic binding directory,
|
||||||
|
- install header files for C/C++ and for ILE/RPG, both for compilation in
|
||||||
|
DB2 and IFS environments.
|
||||||
|
|
||||||
|
That's all.
|
||||||
|
|
||||||
|
|
||||||
|
Notes: For OS/400 ILE RPG programmers, a /copy member defining the ZLIB
|
||||||
|
API prototypes for ILE RPG can be found in ZLIB/H(ZLIB.INC).
|
||||||
|
In the ILE environment, the same definitions are available from
|
||||||
|
file zlib.inc located in the same IFS include directory as the
|
||||||
|
C/C++ header files.
|
||||||
|
Please read comments in this member for more information.
|
||||||
|
|
||||||
|
Remember that most foreign textual data are ASCII coded: this
|
||||||
|
implementation does not handle conversion from/to ASCII, so
|
||||||
|
text data code conversions must be done explicitely.
|
||||||
|
|
||||||
|
Mainly for the reason above, always open zipped files in binary mode.
|
||||||
119
compat/zlib/os400/bndsrc
Normal file
119
compat/zlib/os400/bndsrc
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
STRPGMEXP PGMLVL(*CURRENT) SIGNATURE('ZLIB')
|
||||||
|
|
||||||
|
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
||||||
|
/* Version 1.1.3 entry points. */
|
||||||
|
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
||||||
|
|
||||||
|
EXPORT SYMBOL("adler32")
|
||||||
|
EXPORT SYMBOL("compress")
|
||||||
|
EXPORT SYMBOL("compress2")
|
||||||
|
EXPORT SYMBOL("crc32")
|
||||||
|
EXPORT SYMBOL("get_crc_table")
|
||||||
|
EXPORT SYMBOL("deflate")
|
||||||
|
EXPORT SYMBOL("deflateEnd")
|
||||||
|
EXPORT SYMBOL("deflateSetDictionary")
|
||||||
|
EXPORT SYMBOL("deflateCopy")
|
||||||
|
EXPORT SYMBOL("deflateReset")
|
||||||
|
EXPORT SYMBOL("deflateParams")
|
||||||
|
EXPORT SYMBOL("deflatePrime")
|
||||||
|
EXPORT SYMBOL("deflateInit_")
|
||||||
|
EXPORT SYMBOL("deflateInit2_")
|
||||||
|
EXPORT SYMBOL("gzopen")
|
||||||
|
EXPORT SYMBOL("gzdopen")
|
||||||
|
EXPORT SYMBOL("gzsetparams")
|
||||||
|
EXPORT SYMBOL("gzread")
|
||||||
|
EXPORT SYMBOL("gzwrite")
|
||||||
|
EXPORT SYMBOL("gzprintf")
|
||||||
|
EXPORT SYMBOL("gzputs")
|
||||||
|
EXPORT SYMBOL("gzgets")
|
||||||
|
EXPORT SYMBOL("gzputc")
|
||||||
|
EXPORT SYMBOL("gzgetc")
|
||||||
|
EXPORT SYMBOL("gzflush")
|
||||||
|
EXPORT SYMBOL("gzseek")
|
||||||
|
EXPORT SYMBOL("gzrewind")
|
||||||
|
EXPORT SYMBOL("gztell")
|
||||||
|
EXPORT SYMBOL("gzeof")
|
||||||
|
EXPORT SYMBOL("gzclose")
|
||||||
|
EXPORT SYMBOL("gzerror")
|
||||||
|
EXPORT SYMBOL("inflate")
|
||||||
|
EXPORT SYMBOL("inflateEnd")
|
||||||
|
EXPORT SYMBOL("inflateSetDictionary")
|
||||||
|
EXPORT SYMBOL("inflateSync")
|
||||||
|
EXPORT SYMBOL("inflateReset")
|
||||||
|
EXPORT SYMBOL("inflateInit_")
|
||||||
|
EXPORT SYMBOL("inflateInit2_")
|
||||||
|
EXPORT SYMBOL("inflateSyncPoint")
|
||||||
|
EXPORT SYMBOL("uncompress")
|
||||||
|
EXPORT SYMBOL("zlibVersion")
|
||||||
|
EXPORT SYMBOL("zError")
|
||||||
|
EXPORT SYMBOL("z_errmsg")
|
||||||
|
|
||||||
|
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
||||||
|
/* Version 1.2.1 additional entry points. */
|
||||||
|
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
||||||
|
|
||||||
|
EXPORT SYMBOL("compressBound")
|
||||||
|
EXPORT SYMBOL("deflateBound")
|
||||||
|
EXPORT SYMBOL("deflatePending")
|
||||||
|
EXPORT SYMBOL("gzungetc")
|
||||||
|
EXPORT SYMBOL("gzclearerr")
|
||||||
|
EXPORT SYMBOL("inflateBack")
|
||||||
|
EXPORT SYMBOL("inflateBackEnd")
|
||||||
|
EXPORT SYMBOL("inflateBackInit_")
|
||||||
|
EXPORT SYMBOL("inflateCopy")
|
||||||
|
EXPORT SYMBOL("zlibCompileFlags")
|
||||||
|
|
||||||
|
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
||||||
|
/* Version 1.2.4 additional entry points. */
|
||||||
|
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
||||||
|
|
||||||
|
EXPORT SYMBOL("adler32_combine")
|
||||||
|
EXPORT SYMBOL("adler32_combine64")
|
||||||
|
EXPORT SYMBOL("crc32_combine")
|
||||||
|
EXPORT SYMBOL("crc32_combine64")
|
||||||
|
EXPORT SYMBOL("deflateSetHeader")
|
||||||
|
EXPORT SYMBOL("deflateTune")
|
||||||
|
EXPORT SYMBOL("gzbuffer")
|
||||||
|
EXPORT SYMBOL("gzclose_r")
|
||||||
|
EXPORT SYMBOL("gzclose_w")
|
||||||
|
EXPORT SYMBOL("gzdirect")
|
||||||
|
EXPORT SYMBOL("gzoffset")
|
||||||
|
EXPORT SYMBOL("gzoffset64")
|
||||||
|
EXPORT SYMBOL("gzopen64")
|
||||||
|
EXPORT SYMBOL("gzseek64")
|
||||||
|
EXPORT SYMBOL("gztell64")
|
||||||
|
EXPORT SYMBOL("inflateGetHeader")
|
||||||
|
EXPORT SYMBOL("inflateMark")
|
||||||
|
EXPORT SYMBOL("inflatePrime")
|
||||||
|
EXPORT SYMBOL("inflateReset2")
|
||||||
|
EXPORT SYMBOL("inflateUndermine")
|
||||||
|
|
||||||
|
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
||||||
|
/* Version 1.2.6 additional entry points. */
|
||||||
|
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
||||||
|
|
||||||
|
EXPORT SYMBOL("deflateResetKeep")
|
||||||
|
EXPORT SYMBOL("gzgetc_")
|
||||||
|
EXPORT SYMBOL("inflateResetKeep")
|
||||||
|
|
||||||
|
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
||||||
|
/* Version 1.2.8 additional entry points. */
|
||||||
|
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
||||||
|
|
||||||
|
EXPORT SYMBOL("gzvprintf")
|
||||||
|
EXPORT SYMBOL("inflateGetDictionary")
|
||||||
|
|
||||||
|
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
||||||
|
/* Version 1.2.9 additional entry points. */
|
||||||
|
/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
|
||||||
|
|
||||||
|
EXPORT SYMBOL("adler32_z")
|
||||||
|
EXPORT SYMBOL("crc32_z")
|
||||||
|
EXPORT SYMBOL("deflateGetDictionary")
|
||||||
|
EXPORT SYMBOL("gzfread")
|
||||||
|
EXPORT SYMBOL("gzfwrite")
|
||||||
|
EXPORT SYMBOL("inflateCodesUsed")
|
||||||
|
EXPORT SYMBOL("inflateValidate")
|
||||||
|
EXPORT SYMBOL("uncompress2")
|
||||||
|
|
||||||
|
ENDPGMEXP
|
||||||
366
compat/zlib/os400/make.sh
Normal file
366
compat/zlib/os400/make.sh
Normal file
@@ -0,0 +1,366 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# ZLIB compilation script for the OS/400.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# This is a shell script since make is not a standard component of OS/400.
|
||||||
|
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
#
|
||||||
|
# Tunable configuration parameters.
|
||||||
|
#
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
TARGETLIB='ZLIB' # Target OS/400 program library
|
||||||
|
STATBNDDIR='ZLIB_A' # Static binding directory.
|
||||||
|
DYNBNDDIR='ZLIB' # Dynamic binding directory.
|
||||||
|
SRVPGM="ZLIB" # Service program.
|
||||||
|
IFSDIR='/zlib' # IFS support base directory.
|
||||||
|
TGTCCSID='500' # Target CCSID of objects
|
||||||
|
DEBUG='*NONE' # Debug level
|
||||||
|
OPTIMIZE='40' # Optimisation level
|
||||||
|
OUTPUT='*NONE' # Compilation output option.
|
||||||
|
TGTRLS='V6R1M0' # Target OS release
|
||||||
|
|
||||||
|
export TARGETLIB STATBNDDIR DYNBNDDIR SRVPGM IFSDIR
|
||||||
|
export TGTCCSID DEBUG OPTIMIZE OUTPUT TGTRLS
|
||||||
|
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
#
|
||||||
|
# OS/400 specific definitions.
|
||||||
|
#
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
LIBIFSNAME="/QSYS.LIB/${TARGETLIB}.LIB"
|
||||||
|
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
#
|
||||||
|
# Procedures.
|
||||||
|
#
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
# action_needed dest [src]
|
||||||
|
#
|
||||||
|
# dest is an object to build
|
||||||
|
# if specified, src is an object on which dest depends.
|
||||||
|
#
|
||||||
|
# exit 0 (succeeds) if some action has to be taken, else 1.
|
||||||
|
|
||||||
|
action_needed()
|
||||||
|
|
||||||
|
{
|
||||||
|
[ ! -e "${1}" ] && return 0
|
||||||
|
[ "${2}" ] || return 1
|
||||||
|
[ "${1}" -ot "${2}" ] && return 0
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# make_module module_name source_name [additional_definitions]
|
||||||
|
#
|
||||||
|
# Compile source name into module if needed.
|
||||||
|
# As side effect, append the module name to variable MODULES.
|
||||||
|
# Set LINK to "YES" if the module has been compiled.
|
||||||
|
|
||||||
|
make_module()
|
||||||
|
|
||||||
|
{
|
||||||
|
MODULES="${MODULES} ${1}"
|
||||||
|
MODIFSNAME="${LIBIFSNAME}/${1}.MODULE"
|
||||||
|
CSRC="`basename \"${2}\"`"
|
||||||
|
|
||||||
|
if action_needed "${MODIFSNAME}" "${2}"
|
||||||
|
then :
|
||||||
|
elif [ ! "`sed -e \"/<source name=\\\"${CSRC}\\\">/,/<\\\\/source>/!d\" \
|
||||||
|
-e '/<depend /!d' \
|
||||||
|
-e 's/.* name=\"\\([^\"]*\\)\".*/\\1/' < \"${TOPDIR}/treebuild.xml\" |
|
||||||
|
while read HDR
|
||||||
|
do if action_needed \"${MODIFSNAME}\" \"${IFSDIR}/include/${HDR}\"
|
||||||
|
then echo recompile
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done`" ]
|
||||||
|
then return 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
CMD="CRTCMOD MODULE(${TARGETLIB}/${1}) SRCSTMF('${2}')"
|
||||||
|
CMD="${CMD} SYSIFCOPT(*IFS64IO) OPTION(*INCDIRFIRST)"
|
||||||
|
CMD="${CMD} LOCALETYPE(*LOCALE) FLAG(10)"
|
||||||
|
CMD="${CMD} INCDIR('${IFSDIR}/include' ${INCLUDES})"
|
||||||
|
CMD="${CMD} TGTCCSID(${TGTCCSID}) TGTRLS(${TGTRLS})"
|
||||||
|
CMD="${CMD} OUTPUT(${OUTPUT})"
|
||||||
|
CMD="${CMD} OPTIMIZE(${OPTIMIZE})"
|
||||||
|
CMD="${CMD} DBGVIEW(${DEBUG})"
|
||||||
|
system "${CMD}"
|
||||||
|
LINK=YES
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# Determine DB2 object name from IFS name.
|
||||||
|
|
||||||
|
db2_name()
|
||||||
|
|
||||||
|
{
|
||||||
|
basename "${1}" |
|
||||||
|
tr 'a-z-' 'A-Z_' |
|
||||||
|
sed -e 's/\..*//' \
|
||||||
|
-e 's/^\(.\).*\(.........\)$/\1\2/'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# Force enumeration types to be the same size as integers.
|
||||||
|
|
||||||
|
copy_hfile()
|
||||||
|
|
||||||
|
{
|
||||||
|
sed -e '1i\
|
||||||
|
#pragma enum(int)\
|
||||||
|
' "${@}" -e '$a\
|
||||||
|
#pragma enum(pop)\
|
||||||
|
'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
#
|
||||||
|
# Script initialization.
|
||||||
|
#
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
SCRIPTDIR=`dirname "${0}"`
|
||||||
|
|
||||||
|
case "${SCRIPTDIR}" in
|
||||||
|
/*) ;;
|
||||||
|
*) SCRIPTDIR="`pwd`/${SCRIPTDIR}"
|
||||||
|
esac
|
||||||
|
|
||||||
|
while true
|
||||||
|
do case "${SCRIPTDIR}" in
|
||||||
|
*/.) SCRIPTDIR="${SCRIPTDIR%/.}";;
|
||||||
|
*) break;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
# The script directory is supposed to be in ${TOPDIR}/os400.
|
||||||
|
|
||||||
|
TOPDIR=`dirname "${SCRIPTDIR}"`
|
||||||
|
export SCRIPTDIR TOPDIR
|
||||||
|
cd "${TOPDIR}"
|
||||||
|
|
||||||
|
|
||||||
|
# Extract the version from the master compilation XML file.
|
||||||
|
|
||||||
|
VERSION=`sed -e '/^<package /!d' \
|
||||||
|
-e 's/^.* version="\([0-9.]*\)".*$/\1/' -e 'q' \
|
||||||
|
< treebuild.xml`
|
||||||
|
export VERSION
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
|
||||||
|
# Create the OS/400 library if it does not exist.
|
||||||
|
|
||||||
|
if action_needed "${LIBIFSNAME}"
|
||||||
|
then CMD="CRTLIB LIB(${TARGETLIB}) TEXT('ZLIB: Data compression API')"
|
||||||
|
system "${CMD}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# Create the DOCS source file if it does not exist.
|
||||||
|
|
||||||
|
if action_needed "${LIBIFSNAME}/DOCS.FILE"
|
||||||
|
then CMD="CRTSRCPF FILE(${TARGETLIB}/DOCS) RCDLEN(112)"
|
||||||
|
CMD="${CMD} CCSID(${TGTCCSID}) TEXT('Documentation texts')"
|
||||||
|
system "${CMD}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Copy some documentation files if needed.
|
||||||
|
|
||||||
|
for TEXT in "${TOPDIR}/ChangeLog" "${TOPDIR}/FAQ" \
|
||||||
|
"${TOPDIR}/README" "${SCRIPTDIR}/README400"
|
||||||
|
do MEMBER="${LIBIFSNAME}/DOCS.FILE/`db2_name \"${TEXT}\"`.MBR"
|
||||||
|
|
||||||
|
if action_needed "${MEMBER}" "${TEXT}"
|
||||||
|
then CMD="CPY OBJ('${TEXT}') TOOBJ('${MEMBER}') TOCCSID(${TGTCCSID})"
|
||||||
|
CMD="${CMD} DTAFMT(*TEXT) REPLACE(*YES)"
|
||||||
|
system "${CMD}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
# Create the OS/400 source program file for the C header files.
|
||||||
|
|
||||||
|
SRCPF="${LIBIFSNAME}/H.FILE"
|
||||||
|
|
||||||
|
if action_needed "${SRCPF}"
|
||||||
|
then CMD="CRTSRCPF FILE(${TARGETLIB}/H) RCDLEN(112)"
|
||||||
|
CMD="${CMD} CCSID(${TGTCCSID}) TEXT('ZLIB: C/C++ header files')"
|
||||||
|
system "${CMD}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# Create the IFS directory for the C header files.
|
||||||
|
|
||||||
|
if action_needed "${IFSDIR}/include"
|
||||||
|
then mkdir -p "${IFSDIR}/include"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Copy the header files to DB2 library. Link from IFS include directory.
|
||||||
|
|
||||||
|
for HFILE in "${TOPDIR}/"*.h
|
||||||
|
do DEST="${SRCPF}/`db2_name \"${HFILE}\"`.MBR"
|
||||||
|
|
||||||
|
if action_needed "${DEST}" "${HFILE}"
|
||||||
|
then copy_hfile < "${HFILE}" > tmphdrfile
|
||||||
|
|
||||||
|
# Need to translate to target CCSID.
|
||||||
|
|
||||||
|
CMD="CPY OBJ('`pwd`/tmphdrfile') TOOBJ('${DEST}')"
|
||||||
|
CMD="${CMD} TOCCSID(${TGTCCSID}) DTAFMT(*TEXT) REPLACE(*YES)"
|
||||||
|
system "${CMD}"
|
||||||
|
# touch -r "${HFILE}" "${DEST}"
|
||||||
|
rm -f tmphdrfile
|
||||||
|
fi
|
||||||
|
|
||||||
|
IFSFILE="${IFSDIR}/include/`basename \"${HFILE}\"`"
|
||||||
|
|
||||||
|
if action_needed "${IFSFILE}" "${DEST}"
|
||||||
|
then rm -f "${IFSFILE}"
|
||||||
|
ln -s "${DEST}" "${IFSFILE}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
# Install the ILE/RPG header file.
|
||||||
|
|
||||||
|
|
||||||
|
HFILE="${SCRIPTDIR}/zlib.inc"
|
||||||
|
DEST="${SRCPF}/ZLIB.INC.MBR"
|
||||||
|
|
||||||
|
if action_needed "${DEST}" "${HFILE}"
|
||||||
|
then CMD="CPY OBJ('${HFILE}') TOOBJ('${DEST}')"
|
||||||
|
CMD="${CMD} TOCCSID(${TGTCCSID}) DTAFMT(*TEXT) REPLACE(*YES)"
|
||||||
|
system "${CMD}"
|
||||||
|
# touch -r "${HFILE}" "${DEST}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
IFSFILE="${IFSDIR}/include/`basename \"${HFILE}\"`"
|
||||||
|
|
||||||
|
if action_needed "${IFSFILE}" "${DEST}"
|
||||||
|
then rm -f "${IFSFILE}"
|
||||||
|
ln -s "${DEST}" "${IFSFILE}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# Create and compile the identification source file.
|
||||||
|
|
||||||
|
echo '#pragma comment(user, "ZLIB version '"${VERSION}"'")' > os400.c
|
||||||
|
echo '#pragma comment(user, __DATE__)' >> os400.c
|
||||||
|
echo '#pragma comment(user, __TIME__)' >> os400.c
|
||||||
|
echo '#pragma comment(copyright, "Copyright (C) 1995-2017 Jean-Loup Gailly, Mark Adler. OS/400 version by P. Monnerat.")' >> os400.c
|
||||||
|
make_module OS400 os400.c
|
||||||
|
LINK= # No need to rebuild service program yet.
|
||||||
|
MODULES=
|
||||||
|
|
||||||
|
|
||||||
|
# Get source list.
|
||||||
|
|
||||||
|
CSOURCES=`sed -e '/<source name="/!d' \
|
||||||
|
-e 's/.* name="\([^"]*\)".*/\1/' < treebuild.xml`
|
||||||
|
|
||||||
|
# Compile the sources into modules.
|
||||||
|
|
||||||
|
for SRC in ${CSOURCES}
|
||||||
|
do MODULE=`db2_name "${SRC}"`
|
||||||
|
make_module "${MODULE}" "${SRC}"
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
# If needed, (re)create the static binding directory.
|
||||||
|
|
||||||
|
if action_needed "${LIBIFSNAME}/${STATBNDDIR}.BNDDIR"
|
||||||
|
then LINK=YES
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "${LINK}" ]
|
||||||
|
then rm -rf "${LIBIFSNAME}/${STATBNDDIR}.BNDDIR"
|
||||||
|
CMD="CRTBNDDIR BNDDIR(${TARGETLIB}/${STATBNDDIR})"
|
||||||
|
CMD="${CMD} TEXT('ZLIB static binding directory')"
|
||||||
|
system "${CMD}"
|
||||||
|
|
||||||
|
for MODULE in ${MODULES}
|
||||||
|
do CMD="ADDBNDDIRE BNDDIR(${TARGETLIB}/${STATBNDDIR})"
|
||||||
|
CMD="${CMD} OBJ((${TARGETLIB}/${MODULE} *MODULE))"
|
||||||
|
system "${CMD}"
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# The exportation file for service program creation must be in a DB2
|
||||||
|
# source file, so make sure it exists.
|
||||||
|
|
||||||
|
if action_needed "${LIBIFSNAME}/TOOLS.FILE"
|
||||||
|
then CMD="CRTSRCPF FILE(${TARGETLIB}/TOOLS) RCDLEN(112)"
|
||||||
|
CMD="${CMD} CCSID(${TGTCCSID}) TEXT('ZLIB: build tools')"
|
||||||
|
system "${CMD}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
DEST="${LIBIFSNAME}/TOOLS.FILE/BNDSRC.MBR"
|
||||||
|
|
||||||
|
if action_needed "${SCRIPTDIR}/bndsrc" "${DEST}"
|
||||||
|
then CMD="CPY OBJ('${SCRIPTDIR}/bndsrc') TOOBJ('${DEST}')"
|
||||||
|
CMD="${CMD} TOCCSID(${TGTCCSID}) DTAFMT(*TEXT) REPLACE(*YES)"
|
||||||
|
system "${CMD}"
|
||||||
|
# touch -r "${SCRIPTDIR}/bndsrc" "${DEST}"
|
||||||
|
LINK=YES
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# Build the service program if needed.
|
||||||
|
|
||||||
|
if action_needed "${LIBIFSNAME}/${SRVPGM}.SRVPGM"
|
||||||
|
then LINK=YES
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "${LINK}" ]
|
||||||
|
then CMD="CRTSRVPGM SRVPGM(${TARGETLIB}/${SRVPGM})"
|
||||||
|
CMD="${CMD} SRCFILE(${TARGETLIB}/TOOLS) SRCMBR(BNDSRC)"
|
||||||
|
CMD="${CMD} MODULE(${TARGETLIB}/OS400)"
|
||||||
|
CMD="${CMD} BNDDIR(${TARGETLIB}/${STATBNDDIR})"
|
||||||
|
CMD="${CMD} TEXT('ZLIB ${VERSION} dynamic library')"
|
||||||
|
CMD="${CMD} TGTRLS(${TGTRLS})"
|
||||||
|
system "${CMD}"
|
||||||
|
LINK=YES
|
||||||
|
|
||||||
|
# Duplicate the service program for a versioned backup.
|
||||||
|
|
||||||
|
BACKUP=`echo "${SRVPGM}${VERSION}" |
|
||||||
|
sed -e 's/.*\(..........\)$/\1/' -e 's/\./_/g'`
|
||||||
|
BACKUP="`db2_name \"${BACKUP}\"`"
|
||||||
|
BKUPIFSNAME="${LIBIFSNAME}/${BACKUP}.SRVPGM"
|
||||||
|
rm -f "${BKUPIFSNAME}"
|
||||||
|
CMD="CRTDUPOBJ OBJ(${SRVPGM}) FROMLIB(${TARGETLIB})"
|
||||||
|
CMD="${CMD} OBJTYPE(*SRVPGM) NEWOBJ(${BACKUP})"
|
||||||
|
system "${CMD}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# If needed, (re)create the dynamic binding directory.
|
||||||
|
|
||||||
|
if action_needed "${LIBIFSNAME}/${DYNBNDDIR}.BNDDIR"
|
||||||
|
then LINK=YES
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "${LINK}" ]
|
||||||
|
then rm -rf "${LIBIFSNAME}/${DYNBNDDIR}.BNDDIR"
|
||||||
|
CMD="CRTBNDDIR BNDDIR(${TARGETLIB}/${DYNBNDDIR})"
|
||||||
|
CMD="${CMD} TEXT('ZLIB dynamic binding directory')"
|
||||||
|
system "${CMD}"
|
||||||
|
CMD="ADDBNDDIRE BNDDIR(${TARGETLIB}/${DYNBNDDIR})"
|
||||||
|
CMD="${CMD} OBJ((*LIBL/${SRVPGM} *SRVPGM))"
|
||||||
|
system "${CMD}"
|
||||||
|
fi
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
* ZLIB.INC - Interface to the general purpose compression library
|
* ZLIB.INC - Interface to the general purpose compression library
|
||||||
*
|
*
|
||||||
* ILE RPG400 version by Patrick Monnerat, DATASPHERE.
|
* ILE RPG400 version by Patrick Monnerat, DATASPHERE.
|
||||||
* Version 1.2.8
|
* Version 1.2.11
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* WARNING:
|
* WARNING:
|
||||||
@@ -22,12 +22,12 @@
|
|||||||
*
|
*
|
||||||
* Versioning information.
|
* Versioning information.
|
||||||
*
|
*
|
||||||
D ZLIB_VERSION C '1.2.8'
|
D ZLIB_VERSION C '1.2.11'
|
||||||
D ZLIB_VERNUM C X'1280'
|
D ZLIB_VERNUM C X'12a0'
|
||||||
D ZLIB_VER_MAJOR C 1
|
D ZLIB_VER_MAJOR C 1
|
||||||
D ZLIB_VER_MINOR C 2
|
D ZLIB_VER_MINOR C 2
|
||||||
D ZLIB_VER_REVISION...
|
D ZLIB_VER_REVISION...
|
||||||
D C 8
|
D C 11
|
||||||
D ZLIB_VER_SUBREVISION...
|
D ZLIB_VER_SUBREVISION...
|
||||||
D C 0
|
D C 0
|
||||||
*
|
*
|
||||||
@@ -50,7 +50,7 @@
|
|||||||
D Z_DATA_ERROR C -3
|
D Z_DATA_ERROR C -3
|
||||||
D Z_MEM_ERROR C -4
|
D Z_MEM_ERROR C -4
|
||||||
D Z_BUF_ERROR C -5
|
D Z_BUF_ERROR C -5
|
||||||
DZ_VERSION_ERROR C -6
|
D Z_VERSION_ERROR C -6
|
||||||
*
|
*
|
||||||
D Z_NO_COMPRESSION...
|
D Z_NO_COMPRESSION...
|
||||||
D C 0
|
D C 0
|
||||||
@@ -80,6 +80,7 @@
|
|||||||
*
|
*
|
||||||
D z_streamp S * Stream struct ptr
|
D z_streamp S * Stream struct ptr
|
||||||
D gzFile S * File pointer
|
D gzFile S * File pointer
|
||||||
|
D gz_headerp S *
|
||||||
D z_off_t S 10i 0 Stream offsets
|
D z_off_t S 10i 0 Stream offsets
|
||||||
D z_off64_t S 20i 0 Stream offsets
|
D z_off64_t S 20i 0 Stream offsets
|
||||||
*
|
*
|
||||||
@@ -132,6 +133,12 @@
|
|||||||
D source 65535 const options(*varsize) Source buffer
|
D source 65535 const options(*varsize) Source buffer
|
||||||
D sourceLen 10U 0 value Source length
|
D sourceLen 10U 0 value Source length
|
||||||
*
|
*
|
||||||
|
D uncompress2 PR 10I 0 extproc('uncompress2')
|
||||||
|
D dest 65535 options(*varsize) Destination buffer
|
||||||
|
D destLen 10U 0 Destination length
|
||||||
|
D source 65535 const options(*varsize) Source buffer
|
||||||
|
D sourceLen 10U 0 Source length
|
||||||
|
*
|
||||||
/if not defined(LARGE_FILES)
|
/if not defined(LARGE_FILES)
|
||||||
D gzopen PR extproc('gzopen')
|
D gzopen PR extproc('gzopen')
|
||||||
D like(gzFile)
|
D like(gzFile)
|
||||||
@@ -168,11 +175,23 @@
|
|||||||
D buf 65535 options(*varsize) Buffer
|
D buf 65535 options(*varsize) Buffer
|
||||||
D len 10u 0 value Buffer length
|
D len 10u 0 value Buffer length
|
||||||
*
|
*
|
||||||
|
D gzfread PR 20I 0 extproc('gzfread')
|
||||||
|
D buf 65535 options(*varsize) Buffer
|
||||||
|
D size 20u 0 value Buffer length
|
||||||
|
D nitems 20u 0 value Buffer length
|
||||||
|
D file value like(gzFile) File pointer
|
||||||
|
*
|
||||||
D gzwrite PR 10I 0 extproc('gzwrite')
|
D gzwrite PR 10I 0 extproc('gzwrite')
|
||||||
D file value like(gzFile) File pointer
|
D file value like(gzFile) File pointer
|
||||||
D buf 65535 const options(*varsize) Buffer
|
D buf 65535 const options(*varsize) Buffer
|
||||||
D len 10u 0 value Buffer length
|
D len 10u 0 value Buffer length
|
||||||
*
|
*
|
||||||
|
D gzfwrite PR 20I 0 extproc('gzfwrite')
|
||||||
|
D buf 65535 options(*varsize) Buffer
|
||||||
|
D size 20u 0 value Buffer length
|
||||||
|
D nitems 20u 0 value Buffer length
|
||||||
|
D file value like(gzFile) File pointer
|
||||||
|
*
|
||||||
D gzputs PR 10I 0 extproc('gzputs')
|
D gzputs PR 10I 0 extproc('gzputs')
|
||||||
D file value like(gzFile) File pointer
|
D file value like(gzFile) File pointer
|
||||||
D s * value options(*string) String to output
|
D s * value options(*string) String to output
|
||||||
@@ -252,6 +271,9 @@
|
|||||||
/endif
|
/endif
|
||||||
*
|
*
|
||||||
D gzeof PR 10i 0 extproc('gzeof')
|
D gzeof PR 10i 0 extproc('gzeof')
|
||||||
|
D file value like(gzFile) File pointer
|
||||||
|
*
|
||||||
|
D gzdirect PR 10i 0 extproc('gzdirect')
|
||||||
D file value like(gzFile) File pointer
|
D file value like(gzFile) File pointer
|
||||||
*
|
*
|
||||||
D gzclose_r PR 10i 0 extproc('gzclose_r')
|
D gzclose_r PR 10i 0 extproc('gzclose_r')
|
||||||
@@ -311,7 +333,7 @@
|
|||||||
D method 10I 0 value Compression method
|
D method 10I 0 value Compression method
|
||||||
D windowBits 10I 0 value log2(window size)
|
D windowBits 10I 0 value log2(window size)
|
||||||
D memLevel 10I 0 value Mem/cmpress tradeoff
|
D memLevel 10I 0 value Mem/cmpress tradeoff
|
||||||
D strategy 10I 0 value Compression stategy
|
D strategy 10I 0 value Compression strategy
|
||||||
D version * value options(*string) Version string
|
D version * value options(*string) Version string
|
||||||
D stream_size 10i 0 value Stream struct. size
|
D stream_size 10i 0 value Stream struct. size
|
||||||
*
|
*
|
||||||
@@ -331,7 +353,14 @@
|
|||||||
D deflateParams PR 10I 0 extproc('deflateParams') Change level & strat
|
D deflateParams PR 10I 0 extproc('deflateParams') Change level & strat
|
||||||
D strm like(z_stream) Compression stream
|
D strm like(z_stream) Compression stream
|
||||||
D level 10I 0 value Compression level
|
D level 10I 0 value Compression level
|
||||||
D strategy 10I 0 value Compression stategy
|
D strategy 10I 0 value Compression strategy
|
||||||
|
*
|
||||||
|
D deflateTune PR 10I 0 extproc('deflateTune')
|
||||||
|
D strm like(z_stream) Compression stream
|
||||||
|
D good 10I 0 value
|
||||||
|
D lazy 10I 0 value
|
||||||
|
D nice 10I 0 value
|
||||||
|
D chain 10I 0 value
|
||||||
*
|
*
|
||||||
D deflateBound PR 10U 0 extproc('deflateBound') Change level & strat
|
D deflateBound PR 10U 0 extproc('deflateBound') Change level & strat
|
||||||
D strm like(z_stream) Compression stream
|
D strm like(z_stream) Compression stream
|
||||||
@@ -363,6 +392,12 @@
|
|||||||
D PR 10I 0 extproc('inflateGetDictionary') Get dictionary
|
D PR 10I 0 extproc('inflateGetDictionary') Get dictionary
|
||||||
D strm like(z_stream) Expansion stream
|
D strm like(z_stream) Expansion stream
|
||||||
D dictionary 65535 options(*varsize) Dictionary bytes
|
D dictionary 65535 options(*varsize) Dictionary bytes
|
||||||
|
D dictLength 10U 0 Dictionary length
|
||||||
|
*
|
||||||
|
D deflateGetDictionary...
|
||||||
|
D PR 10I 0 extproc('deflateGetDictionary') Get dictionary
|
||||||
|
D strm like(z_stream) Expansion stream
|
||||||
|
D dictionary 65535 options(*varsize) Dictionary bytes
|
||||||
D dictLength 10U 0 Dictionary length
|
D dictLength 10U 0 Dictionary length
|
||||||
*
|
*
|
||||||
D inflateSync PR 10I 0 extproc('inflateSync') Sync. expansion
|
D inflateSync PR 10I 0 extproc('inflateSync') Sync. expansion
|
||||||
@@ -387,6 +422,25 @@
|
|||||||
D inflateMark PR 10I 0 extproc('inflateMark') Get inflate info
|
D inflateMark PR 10I 0 extproc('inflateMark') Get inflate info
|
||||||
D strm like(z_stream) Expansion stream
|
D strm like(z_stream) Expansion stream
|
||||||
*
|
*
|
||||||
|
D inflateCodesUsed...
|
||||||
|
PR 20U 0 extproc('inflateCodesUsed')
|
||||||
|
D strm like(z_stream) Expansion stream
|
||||||
|
*
|
||||||
|
D inflateValidate...
|
||||||
|
PR 20U 0 extproc('inflateValidate')
|
||||||
|
D strm like(z_stream) Expansion stream
|
||||||
|
D check 10I 0 value
|
||||||
|
*
|
||||||
|
D inflateGetHeader...
|
||||||
|
PR 10U 0 extproc('inflateGetHeader')
|
||||||
|
D strm like(z_stream) Expansion stream
|
||||||
|
D head like(gz_headerp)
|
||||||
|
*
|
||||||
|
D deflateSetHeader...
|
||||||
|
PR 10U 0 extproc('deflateSetHeader')
|
||||||
|
D strm like(z_stream) Expansion stream
|
||||||
|
D head like(gz_headerp)
|
||||||
|
*
|
||||||
D inflateBackInit...
|
D inflateBackInit...
|
||||||
D PR 10I 0 extproc('inflateBackInit_')
|
D PR 10I 0 extproc('inflateBackInit_')
|
||||||
D strm like(z_stream) Expansion stream
|
D strm like(z_stream) Expansion stream
|
||||||
@@ -417,11 +471,33 @@
|
|||||||
D buf 65535 const options(*varsize) Bytes to accumulate
|
D buf 65535 const options(*varsize) Bytes to accumulate
|
||||||
D len 10U 0 value Buffer length
|
D len 10U 0 value Buffer length
|
||||||
*
|
*
|
||||||
|
D adler32_combine...
|
||||||
|
PR 10U 0 extproc('adler32_combine') New checksum
|
||||||
|
D adler1 10U 0 value Old checksum
|
||||||
|
D adler2 10U 0 value Old checksum
|
||||||
|
D len2 20U 0 value Buffer length
|
||||||
|
*
|
||||||
|
D adler32_z PR 10U 0 extproc('adler32_z') New checksum
|
||||||
|
D adler 10U 0 value Old checksum
|
||||||
|
D buf 65535 const options(*varsize) Bytes to accumulate
|
||||||
|
D len 20U 0 value Buffer length
|
||||||
|
*
|
||||||
D crc32 PR 10U 0 extproc('crc32') New checksum
|
D crc32 PR 10U 0 extproc('crc32') New checksum
|
||||||
D crc 10U 0 value Old checksum
|
D crc 10U 0 value Old checksum
|
||||||
D buf 65535 const options(*varsize) Bytes to accumulate
|
D buf 65535 const options(*varsize) Bytes to accumulate
|
||||||
D len 10U 0 value Buffer length
|
D len 10U 0 value Buffer length
|
||||||
*
|
*
|
||||||
|
D crc32_combine...
|
||||||
|
PR 10U 0 extproc('crc32_combine') New checksum
|
||||||
|
D crc1 10U 0 value Old checksum
|
||||||
|
D crc2 10U 0 value Old checksum
|
||||||
|
D len2 20U 0 value Buffer length
|
||||||
|
*
|
||||||
|
D crc32_z PR 10U 0 extproc('crc32_z') New checksum
|
||||||
|
D crc 10U 0 value Old checksum
|
||||||
|
D buf 65535 const options(*varsize) Bytes to accumulate
|
||||||
|
D len 20U 0 value Buffer length
|
||||||
|
*
|
||||||
**************************************************************************
|
**************************************************************************
|
||||||
* Miscellaneous function prototypes
|
* Miscellaneous function prototypes
|
||||||
**************************************************************************
|
**************************************************************************
|
||||||
@@ -25,10 +25,10 @@
|
|||||||
<QPG:Files>
|
<QPG:Files>
|
||||||
<QPG:Add file="../zconf.h" install="/opt/include/" user="root:sys" permission="644"/>
|
<QPG:Add file="../zconf.h" install="/opt/include/" user="root:sys" permission="644"/>
|
||||||
<QPG:Add file="../zlib.h" install="/opt/include/" user="root:sys" permission="644"/>
|
<QPG:Add file="../zlib.h" install="/opt/include/" user="root:sys" permission="644"/>
|
||||||
<QPG:Add file="../libz.so.1.2.8" install="/opt/lib/" user="root:bin" permission="644"/>
|
<QPG:Add file="../libz.so.1.2.11" install="/opt/lib/" user="root:bin" permission="644"/>
|
||||||
<QPG:Add file="libz.so" install="/opt/lib/" component="dev" filetype="symlink" linkto="libz.so.1.2.8"/>
|
<QPG:Add file="libz.so" install="/opt/lib/" component="dev" filetype="symlink" linkto="libz.so.1.2.11"/>
|
||||||
<QPG:Add file="libz.so.1" install="/opt/lib/" filetype="symlink" linkto="libz.so.1.2.8"/>
|
<QPG:Add file="libz.so.1" install="/opt/lib/" filetype="symlink" linkto="libz.so.1.2.11"/>
|
||||||
<QPG:Add file="../libz.so.1.2.8" install="/opt/lib/" component="slib"/>
|
<QPG:Add file="../libz.so.1.2.11" install="/opt/lib/" component="slib"/>
|
||||||
</QPG:Files>
|
</QPG:Files>
|
||||||
|
|
||||||
<QPG:PackageFilter>
|
<QPG:PackageFilter>
|
||||||
@@ -63,7 +63,7 @@
|
|||||||
</QPM:ProductDescription>
|
</QPM:ProductDescription>
|
||||||
|
|
||||||
<QPM:ReleaseDescription>
|
<QPM:ReleaseDescription>
|
||||||
<QPM:ReleaseVersion>1.2.8</QPM:ReleaseVersion>
|
<QPM:ReleaseVersion>1.2.11</QPM:ReleaseVersion>
|
||||||
<QPM:ReleaseUrgency>Medium</QPM:ReleaseUrgency>
|
<QPM:ReleaseUrgency>Medium</QPM:ReleaseUrgency>
|
||||||
<QPM:ReleaseStability>Stable</QPM:ReleaseStability>
|
<QPM:ReleaseStability>Stable</QPM:ReleaseStability>
|
||||||
<QPM:ReleaseNoteMinor></QPM:ReleaseNoteMinor>
|
<QPM:ReleaseNoteMinor></QPM:ReleaseNoteMinor>
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* example.c -- usage example of the zlib compression library
|
/* example.c -- usage example of the zlib compression library
|
||||||
* Copyright (C) 1995-2006, 2011 Jean-loup Gailly.
|
* Copyright (C) 1995-2006, 2011, 2016 Jean-loup Gailly
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -26,13 +26,13 @@
|
|||||||
} \
|
} \
|
||||||
}
|
}
|
||||||
|
|
||||||
z_const char hello[] = "hello, hello!";
|
static z_const char hello[] = "hello, hello!";
|
||||||
/* "hello world" would be more standard, but the repeated "hello"
|
/* "hello world" would be more standard, but the repeated "hello"
|
||||||
* stresses the compression code better, sorry...
|
* stresses the compression code better, sorry...
|
||||||
*/
|
*/
|
||||||
|
|
||||||
const char dictionary[] = "hello";
|
static const char dictionary[] = "hello";
|
||||||
uLong dictId; /* Adler32 value of the dictionary */
|
static uLong dictId; /* Adler32 value of the dictionary */
|
||||||
|
|
||||||
void test_deflate OF((Byte *compr, uLong comprLen));
|
void test_deflate OF((Byte *compr, uLong comprLen));
|
||||||
void test_inflate OF((Byte *compr, uLong comprLen,
|
void test_inflate OF((Byte *compr, uLong comprLen,
|
||||||
@@ -59,13 +59,13 @@ void *myalloc(q, n, m)
|
|||||||
void *q;
|
void *q;
|
||||||
unsigned n, m;
|
unsigned n, m;
|
||||||
{
|
{
|
||||||
q = Z_NULL;
|
(void)q;
|
||||||
return calloc(n, m);
|
return calloc(n, m);
|
||||||
}
|
}
|
||||||
|
|
||||||
void myfree(void *q, void *p)
|
void myfree(void *q, void *p)
|
||||||
{
|
{
|
||||||
q = Z_NULL;
|
(void)q;
|
||||||
free(p);
|
free(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -432,7 +432,7 @@ void test_sync(compr, comprLen, uncompr, uncomprLen)
|
|||||||
d_stream.next_out = uncompr;
|
d_stream.next_out = uncompr;
|
||||||
d_stream.avail_out = (uInt)uncomprLen;
|
d_stream.avail_out = (uInt)uncomprLen;
|
||||||
|
|
||||||
inflate(&d_stream, Z_NO_FLUSH);
|
err = inflate(&d_stream, Z_NO_FLUSH);
|
||||||
CHECK_ERR(err, "inflate");
|
CHECK_ERR(err, "inflate");
|
||||||
|
|
||||||
d_stream.avail_in = (uInt)comprLen-2; /* read all compressed data */
|
d_stream.avail_in = (uInt)comprLen-2; /* read all compressed data */
|
||||||
@@ -573,7 +573,8 @@ int main(argc, argv)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef Z_SOLO
|
#ifdef Z_SOLO
|
||||||
argc = strlen(argv[0]);
|
(void)argc;
|
||||||
|
(void)argv;
|
||||||
#else
|
#else
|
||||||
test_compress(compr, comprLen, uncompr, uncomprLen);
|
test_compress(compr, comprLen, uncompr, uncomprLen);
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* infcover.c -- test zlib's inflate routines with full code coverage
|
/* infcover.c -- test zlib's inflate routines with full code coverage
|
||||||
* Copyright (C) 2011 Mark Adler
|
* Copyright (C) 2011, 2016 Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -237,14 +237,14 @@ local void mem_done(z_stream *strm, char *prefix)
|
|||||||
|
|
||||||
/* Decode a hexadecimal string, set *len to length, in[] to the bytes. This
|
/* Decode a hexadecimal string, set *len to length, in[] to the bytes. This
|
||||||
decodes liberally, in that hex digits can be adjacent, in which case two in
|
decodes liberally, in that hex digits can be adjacent, in which case two in
|
||||||
a row writes a byte. Or they can delimited by any non-hex character, where
|
a row writes a byte. Or they can be delimited by any non-hex character,
|
||||||
the delimiters are ignored except when a single hex digit is followed by a
|
where the delimiters are ignored except when a single hex digit is followed
|
||||||
delimiter in which case that single digit writes a byte. The returned
|
by a delimiter, where that single digit writes a byte. The returned data is
|
||||||
data is allocated and must eventually be freed. NULL is returned if out of
|
allocated and must eventually be freed. NULL is returned if out of memory.
|
||||||
memory. If the length is not needed, then len can be NULL. */
|
If the length is not needed, then len can be NULL. */
|
||||||
local unsigned char *h2b(const char *hex, unsigned *len)
|
local unsigned char *h2b(const char *hex, unsigned *len)
|
||||||
{
|
{
|
||||||
unsigned char *in;
|
unsigned char *in, *re;
|
||||||
unsigned next, val;
|
unsigned next, val;
|
||||||
|
|
||||||
in = malloc((strlen(hex) + 1) >> 1);
|
in = malloc((strlen(hex) + 1) >> 1);
|
||||||
@@ -268,8 +268,8 @@ local unsigned char *h2b(const char *hex, unsigned *len)
|
|||||||
} while (*hex++); /* go through the loop with the terminating null */
|
} while (*hex++); /* go through the loop with the terminating null */
|
||||||
if (len != NULL)
|
if (len != NULL)
|
||||||
*len = next;
|
*len = next;
|
||||||
in = reallocf(in, next);
|
re = realloc(in, next);
|
||||||
return in;
|
return re == NULL ? in : re;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* generic inflate() run, where hex is the hexadecimal input data, what is the
|
/* generic inflate() run, where hex is the hexadecimal input data, what is the
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* minigzip.c -- simulate gzip using the zlib compression library
|
/* minigzip.c -- simulate gzip using the zlib compression library
|
||||||
* Copyright (C) 1995-2006, 2010, 2011 Jean-loup Gailly.
|
* Copyright (C) 1995-2006, 2010, 2011, 2016 Jean-loup Gailly
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -40,7 +40,7 @@
|
|||||||
# define SET_BINARY_MODE(file)
|
# define SET_BINARY_MODE(file)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef _MSC_VER
|
#if defined(_MSC_VER) && _MSC_VER < 1900
|
||||||
# define snprintf _snprintf
|
# define snprintf _snprintf
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -156,14 +156,14 @@ void *myalloc(q, n, m)
|
|||||||
void *q;
|
void *q;
|
||||||
unsigned n, m;
|
unsigned n, m;
|
||||||
{
|
{
|
||||||
q = Z_NULL;
|
(void)q;
|
||||||
return calloc(n, m);
|
return calloc(n, m);
|
||||||
}
|
}
|
||||||
|
|
||||||
void myfree(q, p)
|
void myfree(q, p)
|
||||||
void *q, *p;
|
void *q, *p;
|
||||||
{
|
{
|
||||||
q = Z_NULL;
|
(void)q;
|
||||||
free(p);
|
free(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -333,7 +333,7 @@ const char *gzerror(gz, err)
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
char *prog;
|
static char *prog;
|
||||||
|
|
||||||
void error OF((const char *msg));
|
void error OF((const char *msg));
|
||||||
void gz_compress OF((FILE *in, gzFile out));
|
void gz_compress OF((FILE *in, gzFile out));
|
||||||
@@ -500,7 +500,7 @@ void file_uncompress(file)
|
|||||||
char *infile, *outfile;
|
char *infile, *outfile;
|
||||||
FILE *out;
|
FILE *out;
|
||||||
gzFile in;
|
gzFile in;
|
||||||
size_t len = strlen(file);
|
unsigned len = strlen(file);
|
||||||
|
|
||||||
if (len + strlen(GZ_SUFFIX) >= sizeof(buf)) {
|
if (len + strlen(GZ_SUFFIX) >= sizeof(buf)) {
|
||||||
fprintf(stderr, "%s: filename too long\n", prog);
|
fprintf(stderr, "%s: filename too long\n", prog);
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" ?>
|
<?xml version="1.0" ?>
|
||||||
<package name="zlib" version="1.2.8">
|
<package name="zlib" version="1.2.11">
|
||||||
<library name="zlib" dlversion="1.2.8" dlname="z">
|
<library name="zlib" dlversion="1.2.11" dlname="z">
|
||||||
<property name="description"> zip compression library </property>
|
<property name="description"> zip compression library </property>
|
||||||
<property name="include-target-dir" value="$(@PACKAGE/install-includedir)" />
|
<property name="include-target-dir" value="$(@PACKAGE/install-includedir)" />
|
||||||
|
|
||||||
@@ -101,7 +101,7 @@
|
|||||||
<!--
|
<!--
|
||||||
CFLAGS=-O
|
CFLAGS=-O
|
||||||
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
|
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
|
||||||
#CFLAGS=-g -DDEBUG
|
#CFLAGS=-g -DZLIB_DEBUG
|
||||||
#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
|
#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
|
||||||
# -Wstrict-prototypes -Wmissing-prototypes
|
# -Wstrict-prototypes -Wmissing-prototypes
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* trees.c -- output deflated data using Huffman coding
|
/* trees.c -- output deflated data using Huffman coding
|
||||||
* Copyright (C) 1995-2012 Jean-loup Gailly
|
* Copyright (C) 1995-2017 Jean-loup Gailly
|
||||||
* detect_data_type() function provided freely by Cosmin Truta, 2006
|
* detect_data_type() function provided freely by Cosmin Truta, 2006
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
@@ -36,7 +36,7 @@
|
|||||||
|
|
||||||
#include "deflate.h"
|
#include "deflate.h"
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef ZLIB_DEBUG
|
||||||
# include <ctype.h>
|
# include <ctype.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -122,13 +122,13 @@ struct static_tree_desc_s {
|
|||||||
int max_length; /* max bit length for the codes */
|
int max_length; /* max bit length for the codes */
|
||||||
};
|
};
|
||||||
|
|
||||||
local static_tree_desc static_l_desc =
|
local const static_tree_desc static_l_desc =
|
||||||
{static_ltree, extra_lbits, LITERALS+1, L_CODES, MAX_BITS};
|
{static_ltree, extra_lbits, LITERALS+1, L_CODES, MAX_BITS};
|
||||||
|
|
||||||
local static_tree_desc static_d_desc =
|
local const static_tree_desc static_d_desc =
|
||||||
{static_dtree, extra_dbits, 0, D_CODES, MAX_BITS};
|
{static_dtree, extra_dbits, 0, D_CODES, MAX_BITS};
|
||||||
|
|
||||||
local static_tree_desc static_bl_desc =
|
local const static_tree_desc static_bl_desc =
|
||||||
{(const ct_data *)0, extra_blbits, 0, BL_CODES, MAX_BL_BITS};
|
{(const ct_data *)0, extra_blbits, 0, BL_CODES, MAX_BL_BITS};
|
||||||
|
|
||||||
/* ===========================================================================
|
/* ===========================================================================
|
||||||
@@ -152,18 +152,16 @@ local int detect_data_type OF((deflate_state *s));
|
|||||||
local unsigned bi_reverse OF((unsigned value, int length));
|
local unsigned bi_reverse OF((unsigned value, int length));
|
||||||
local void bi_windup OF((deflate_state *s));
|
local void bi_windup OF((deflate_state *s));
|
||||||
local void bi_flush OF((deflate_state *s));
|
local void bi_flush OF((deflate_state *s));
|
||||||
local void copy_block OF((deflate_state *s, charf *buf, unsigned len,
|
|
||||||
int header));
|
|
||||||
|
|
||||||
#ifdef GEN_TREES_H
|
#ifdef GEN_TREES_H
|
||||||
local void gen_trees_header OF((void));
|
local void gen_trees_header OF((void));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef DEBUG
|
#ifndef ZLIB_DEBUG
|
||||||
# define send_code(s, c, tree) send_bits(s, tree[c].Code, tree[c].Len)
|
# define send_code(s, c, tree) send_bits(s, tree[c].Code, tree[c].Len)
|
||||||
/* Send a code of the given tree. c and tree must not have side effects */
|
/* Send a code of the given tree. c and tree must not have side effects */
|
||||||
|
|
||||||
#else /* DEBUG */
|
#else /* !ZLIB_DEBUG */
|
||||||
# define send_code(s, c, tree) \
|
# define send_code(s, c, tree) \
|
||||||
{ if (z_verbose>2) fprintf(stderr,"\ncd %3d ",(c)); \
|
{ if (z_verbose>2) fprintf(stderr,"\ncd %3d ",(c)); \
|
||||||
send_bits(s, tree[c].Code, tree[c].Len); }
|
send_bits(s, tree[c].Code, tree[c].Len); }
|
||||||
@@ -182,7 +180,7 @@ local void gen_trees_header OF((void));
|
|||||||
* Send a value on a given number of bits.
|
* Send a value on a given number of bits.
|
||||||
* IN assertion: length <= 16 and value fits in length bits.
|
* IN assertion: length <= 16 and value fits in length bits.
|
||||||
*/
|
*/
|
||||||
#ifdef DEBUG
|
#ifdef ZLIB_DEBUG
|
||||||
local void send_bits OF((deflate_state *s, int value, int length));
|
local void send_bits OF((deflate_state *s, int value, int length));
|
||||||
|
|
||||||
local void send_bits(s, value, length)
|
local void send_bits(s, value, length)
|
||||||
@@ -208,12 +206,12 @@ local void send_bits(s, value, length)
|
|||||||
s->bi_valid += length;
|
s->bi_valid += length;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#else /* !DEBUG */
|
#else /* !ZLIB_DEBUG */
|
||||||
|
|
||||||
#define send_bits(s, value, length) \
|
#define send_bits(s, value, length) \
|
||||||
{ int len = length;\
|
{ int len = length;\
|
||||||
if (s->bi_valid > (int)Buf_size - len) {\
|
if (s->bi_valid > (int)Buf_size - len) {\
|
||||||
int val = value;\
|
int val = (int)value;\
|
||||||
s->bi_buf |= (ush)val << s->bi_valid;\
|
s->bi_buf |= (ush)val << s->bi_valid;\
|
||||||
put_short(s, s->bi_buf);\
|
put_short(s, s->bi_buf);\
|
||||||
s->bi_buf = (ush)val >> (Buf_size - s->bi_valid);\
|
s->bi_buf = (ush)val >> (Buf_size - s->bi_valid);\
|
||||||
@@ -223,7 +221,7 @@ local void send_bits(s, value, length)
|
|||||||
s->bi_valid += len;\
|
s->bi_valid += len;\
|
||||||
}\
|
}\
|
||||||
}
|
}
|
||||||
#endif /* DEBUG */
|
#endif /* ZLIB_DEBUG */
|
||||||
|
|
||||||
|
|
||||||
/* the arguments must not have side effects */
|
/* the arguments must not have side effects */
|
||||||
@@ -317,7 +315,7 @@ local void tr_static_init()
|
|||||||
* Genererate the file trees.h describing the static trees.
|
* Genererate the file trees.h describing the static trees.
|
||||||
*/
|
*/
|
||||||
#ifdef GEN_TREES_H
|
#ifdef GEN_TREES_H
|
||||||
# ifndef DEBUG
|
# ifndef ZLIB_DEBUG
|
||||||
# include <stdio.h>
|
# include <stdio.h>
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
@@ -394,7 +392,7 @@ void ZLIB_INTERNAL _tr_init(s)
|
|||||||
|
|
||||||
s->bi_buf = 0;
|
s->bi_buf = 0;
|
||||||
s->bi_valid = 0;
|
s->bi_valid = 0;
|
||||||
#ifdef DEBUG
|
#ifdef ZLIB_DEBUG
|
||||||
s->compressed_len = 0L;
|
s->compressed_len = 0L;
|
||||||
s->bits_sent = 0L;
|
s->bits_sent = 0L;
|
||||||
#endif
|
#endif
|
||||||
@@ -522,12 +520,12 @@ local void gen_bitlen(s, desc)
|
|||||||
xbits = 0;
|
xbits = 0;
|
||||||
if (n >= base) xbits = extra[n-base];
|
if (n >= base) xbits = extra[n-base];
|
||||||
f = tree[n].Freq;
|
f = tree[n].Freq;
|
||||||
s->opt_len += (ulg)f * (bits + xbits);
|
s->opt_len += (ulg)f * (unsigned)(bits + xbits);
|
||||||
if (stree) s->static_len += (ulg)f * (stree[n].Len + xbits);
|
if (stree) s->static_len += (ulg)f * (unsigned)(stree[n].Len + xbits);
|
||||||
}
|
}
|
||||||
if (overflow == 0) return;
|
if (overflow == 0) return;
|
||||||
|
|
||||||
Trace((stderr,"\nbit length overflow\n"));
|
Tracev((stderr,"\nbit length overflow\n"));
|
||||||
/* This happens for example on obj2 and pic of the Calgary corpus */
|
/* This happens for example on obj2 and pic of the Calgary corpus */
|
||||||
|
|
||||||
/* Find the first bit length which could increase: */
|
/* Find the first bit length which could increase: */
|
||||||
@@ -554,9 +552,8 @@ local void gen_bitlen(s, desc)
|
|||||||
m = s->heap[--h];
|
m = s->heap[--h];
|
||||||
if (m > max_code) continue;
|
if (m > max_code) continue;
|
||||||
if ((unsigned) tree[m].Len != (unsigned) bits) {
|
if ((unsigned) tree[m].Len != (unsigned) bits) {
|
||||||
Trace((stderr,"code %d bits %d->%d\n", m, tree[m].Len, bits));
|
Tracev((stderr,"code %d bits %d->%d\n", m, tree[m].Len, bits));
|
||||||
s->opt_len += ((long)bits - (long)tree[m].Len)
|
s->opt_len += ((ulg)bits - tree[m].Len) * tree[m].Freq;
|
||||||
*(long)tree[m].Freq;
|
|
||||||
tree[m].Len = (ush)bits;
|
tree[m].Len = (ush)bits;
|
||||||
}
|
}
|
||||||
n--;
|
n--;
|
||||||
@@ -578,7 +575,7 @@ local void gen_codes (tree, max_code, bl_count)
|
|||||||
ushf *bl_count; /* number of codes at each bit length */
|
ushf *bl_count; /* number of codes at each bit length */
|
||||||
{
|
{
|
||||||
ush next_code[MAX_BITS+1]; /* next code value for each bit length */
|
ush next_code[MAX_BITS+1]; /* next code value for each bit length */
|
||||||
ush code = 0; /* running code value */
|
unsigned code = 0; /* running code value */
|
||||||
int bits; /* bit index */
|
int bits; /* bit index */
|
||||||
int n; /* code index */
|
int n; /* code index */
|
||||||
|
|
||||||
@@ -586,7 +583,8 @@ local void gen_codes (tree, max_code, bl_count)
|
|||||||
* without bit reversal.
|
* without bit reversal.
|
||||||
*/
|
*/
|
||||||
for (bits = 1; bits <= MAX_BITS; bits++) {
|
for (bits = 1; bits <= MAX_BITS; bits++) {
|
||||||
next_code[bits] = code = (code + bl_count[bits-1]) << 1;
|
code = (code + bl_count[bits-1]) << 1;
|
||||||
|
next_code[bits] = (ush)code;
|
||||||
}
|
}
|
||||||
/* Check that the bit counts in bl_count are consistent. The last code
|
/* Check that the bit counts in bl_count are consistent. The last code
|
||||||
* must be all ones.
|
* must be all ones.
|
||||||
@@ -599,7 +597,7 @@ local void gen_codes (tree, max_code, bl_count)
|
|||||||
int len = tree[n].Len;
|
int len = tree[n].Len;
|
||||||
if (len == 0) continue;
|
if (len == 0) continue;
|
||||||
/* Now reverse the bits */
|
/* Now reverse the bits */
|
||||||
tree[n].Code = bi_reverse(next_code[len]++, len);
|
tree[n].Code = (ush)bi_reverse(next_code[len]++, len);
|
||||||
|
|
||||||
Tracecv(tree != static_ltree, (stderr,"\nn %3d %c l %2d c %4x (%x) ",
|
Tracecv(tree != static_ltree, (stderr,"\nn %3d %c l %2d c %4x (%x) ",
|
||||||
n, (isgraph(n) ? n : ' '), len, tree[n].Code, next_code[len]-1));
|
n, (isgraph(n) ? n : ' '), len, tree[n].Code, next_code[len]-1));
|
||||||
@@ -821,7 +819,7 @@ local int build_bl_tree(s)
|
|||||||
if (s->bl_tree[bl_order[max_blindex]].Len != 0) break;
|
if (s->bl_tree[bl_order[max_blindex]].Len != 0) break;
|
||||||
}
|
}
|
||||||
/* Update opt_len to include the bit length tree and counts */
|
/* Update opt_len to include the bit length tree and counts */
|
||||||
s->opt_len += 3*(max_blindex+1) + 5+5+4;
|
s->opt_len += 3*((ulg)max_blindex+1) + 5+5+4;
|
||||||
Tracev((stderr, "\ndyn trees: dyn %ld, stat %ld",
|
Tracev((stderr, "\ndyn trees: dyn %ld, stat %ld",
|
||||||
s->opt_len, s->static_len));
|
s->opt_len, s->static_len));
|
||||||
|
|
||||||
@@ -869,11 +867,17 @@ void ZLIB_INTERNAL _tr_stored_block(s, buf, stored_len, last)
|
|||||||
int last; /* one if this is the last block for a file */
|
int last; /* one if this is the last block for a file */
|
||||||
{
|
{
|
||||||
send_bits(s, (STORED_BLOCK<<1)+last, 3); /* send block type */
|
send_bits(s, (STORED_BLOCK<<1)+last, 3); /* send block type */
|
||||||
#ifdef DEBUG
|
bi_windup(s); /* align on byte boundary */
|
||||||
|
put_short(s, (ush)stored_len);
|
||||||
|
put_short(s, (ush)~stored_len);
|
||||||
|
zmemcpy(s->pending_buf + s->pending, (Bytef *)buf, stored_len);
|
||||||
|
s->pending += stored_len;
|
||||||
|
#ifdef ZLIB_DEBUG
|
||||||
s->compressed_len = (s->compressed_len + 3 + 7) & (ulg)~7L;
|
s->compressed_len = (s->compressed_len + 3 + 7) & (ulg)~7L;
|
||||||
s->compressed_len += (stored_len + 4) << 3;
|
s->compressed_len += (stored_len + 4) << 3;
|
||||||
|
s->bits_sent += 2*16;
|
||||||
|
s->bits_sent += stored_len<<3;
|
||||||
#endif
|
#endif
|
||||||
copy_block(s, buf, (unsigned)stored_len, 1); /* with header */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ===========================================================================
|
/* ===========================================================================
|
||||||
@@ -894,7 +898,7 @@ void ZLIB_INTERNAL _tr_align(s)
|
|||||||
{
|
{
|
||||||
send_bits(s, STATIC_TREES<<1, 3);
|
send_bits(s, STATIC_TREES<<1, 3);
|
||||||
send_code(s, END_BLOCK, static_ltree);
|
send_code(s, END_BLOCK, static_ltree);
|
||||||
#ifdef DEBUG
|
#ifdef ZLIB_DEBUG
|
||||||
s->compressed_len += 10L; /* 3 for block type, 7 for EOB */
|
s->compressed_len += 10L; /* 3 for block type, 7 for EOB */
|
||||||
#endif
|
#endif
|
||||||
bi_flush(s);
|
bi_flush(s);
|
||||||
@@ -902,7 +906,7 @@ void ZLIB_INTERNAL _tr_align(s)
|
|||||||
|
|
||||||
/* ===========================================================================
|
/* ===========================================================================
|
||||||
* Determine the best encoding for the current block: dynamic trees, static
|
* Determine the best encoding for the current block: dynamic trees, static
|
||||||
* trees or store, and output the encoded block to the zip file.
|
* trees or store, and write out the encoded block.
|
||||||
*/
|
*/
|
||||||
void ZLIB_INTERNAL _tr_flush_block(s, buf, stored_len, last)
|
void ZLIB_INTERNAL _tr_flush_block(s, buf, stored_len, last)
|
||||||
deflate_state *s;
|
deflate_state *s;
|
||||||
@@ -974,7 +978,7 @@ void ZLIB_INTERNAL _tr_flush_block(s, buf, stored_len, last)
|
|||||||
send_bits(s, (STATIC_TREES<<1)+last, 3);
|
send_bits(s, (STATIC_TREES<<1)+last, 3);
|
||||||
compress_block(s, (const ct_data *)static_ltree,
|
compress_block(s, (const ct_data *)static_ltree,
|
||||||
(const ct_data *)static_dtree);
|
(const ct_data *)static_dtree);
|
||||||
#ifdef DEBUG
|
#ifdef ZLIB_DEBUG
|
||||||
s->compressed_len += 3 + s->static_len;
|
s->compressed_len += 3 + s->static_len;
|
||||||
#endif
|
#endif
|
||||||
} else {
|
} else {
|
||||||
@@ -983,7 +987,7 @@ void ZLIB_INTERNAL _tr_flush_block(s, buf, stored_len, last)
|
|||||||
max_blindex+1);
|
max_blindex+1);
|
||||||
compress_block(s, (const ct_data *)s->dyn_ltree,
|
compress_block(s, (const ct_data *)s->dyn_ltree,
|
||||||
(const ct_data *)s->dyn_dtree);
|
(const ct_data *)s->dyn_dtree);
|
||||||
#ifdef DEBUG
|
#ifdef ZLIB_DEBUG
|
||||||
s->compressed_len += 3 + s->opt_len;
|
s->compressed_len += 3 + s->opt_len;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@@ -995,7 +999,7 @@ void ZLIB_INTERNAL _tr_flush_block(s, buf, stored_len, last)
|
|||||||
|
|
||||||
if (last) {
|
if (last) {
|
||||||
bi_windup(s);
|
bi_windup(s);
|
||||||
#ifdef DEBUG
|
#ifdef ZLIB_DEBUG
|
||||||
s->compressed_len += 7; /* align on byte boundary */
|
s->compressed_len += 7; /* align on byte boundary */
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@@ -1090,7 +1094,7 @@ local void compress_block(s, ltree, dtree)
|
|||||||
send_code(s, code, dtree); /* send the distance code */
|
send_code(s, code, dtree); /* send the distance code */
|
||||||
extra = extra_dbits[code];
|
extra = extra_dbits[code];
|
||||||
if (extra != 0) {
|
if (extra != 0) {
|
||||||
dist -= base_dist[code];
|
dist -= (unsigned)base_dist[code];
|
||||||
send_bits(s, dist, extra); /* send the extra distance bits */
|
send_bits(s, dist, extra); /* send the extra distance bits */
|
||||||
}
|
}
|
||||||
} /* literal or match pair ? */
|
} /* literal or match pair ? */
|
||||||
@@ -1193,34 +1197,7 @@ local void bi_windup(s)
|
|||||||
}
|
}
|
||||||
s->bi_buf = 0;
|
s->bi_buf = 0;
|
||||||
s->bi_valid = 0;
|
s->bi_valid = 0;
|
||||||
#ifdef DEBUG
|
#ifdef ZLIB_DEBUG
|
||||||
s->bits_sent = (s->bits_sent+7) & ~7;
|
s->bits_sent = (s->bits_sent+7) & ~7;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ===========================================================================
|
|
||||||
* Copy a stored block, storing first the length and its
|
|
||||||
* one's complement if requested.
|
|
||||||
*/
|
|
||||||
local void copy_block(s, buf, len, header)
|
|
||||||
deflate_state *s;
|
|
||||||
charf *buf; /* the input data */
|
|
||||||
unsigned len; /* its length */
|
|
||||||
int header; /* true if block header must be written */
|
|
||||||
{
|
|
||||||
bi_windup(s); /* align on byte boundary */
|
|
||||||
|
|
||||||
if (header) {
|
|
||||||
put_short(s, (ush)len);
|
|
||||||
put_short(s, (ush)~len);
|
|
||||||
#ifdef DEBUG
|
|
||||||
s->bits_sent += 2*16;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
#ifdef DEBUG
|
|
||||||
s->bits_sent += (ulg)len<<3;
|
|
||||||
#endif
|
|
||||||
while (len--) {
|
|
||||||
put_byte(s, *buf++);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* uncompr.c -- decompress a memory buffer
|
/* uncompr.c -- decompress a memory buffer
|
||||||
* Copyright (C) 1995-2003, 2010 Jean-loup Gailly.
|
* Copyright (C) 1995-2003, 2010, 2014, 2016 Jean-loup Gailly, Mark Adler
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -9,51 +9,85 @@
|
|||||||
#include "zlib.h"
|
#include "zlib.h"
|
||||||
|
|
||||||
/* ===========================================================================
|
/* ===========================================================================
|
||||||
Decompresses the source buffer into the destination buffer. sourceLen is
|
Decompresses the source buffer into the destination buffer. *sourceLen is
|
||||||
the byte length of the source buffer. Upon entry, destLen is the total
|
the byte length of the source buffer. Upon entry, *destLen is the total size
|
||||||
size of the destination buffer, which must be large enough to hold the
|
of the destination buffer, which must be large enough to hold the entire
|
||||||
entire uncompressed data. (The size of the uncompressed data must have
|
uncompressed data. (The size of the uncompressed data must have been saved
|
||||||
been saved previously by the compressor and transmitted to the decompressor
|
previously by the compressor and transmitted to the decompressor by some
|
||||||
by some mechanism outside the scope of this compression library.)
|
mechanism outside the scope of this compression library.) Upon exit,
|
||||||
Upon exit, destLen is the actual size of the compressed buffer.
|
*destLen is the size of the decompressed data and *sourceLen is the number
|
||||||
|
of source bytes consumed. Upon return, source + *sourceLen points to the
|
||||||
|
first unused input byte.
|
||||||
|
|
||||||
uncompress returns Z_OK if success, Z_MEM_ERROR if there was not
|
uncompress returns Z_OK if success, Z_MEM_ERROR if there was not enough
|
||||||
enough memory, Z_BUF_ERROR if there was not enough room in the output
|
memory, Z_BUF_ERROR if there was not enough room in the output buffer, or
|
||||||
buffer, or Z_DATA_ERROR if the input data was corrupted.
|
Z_DATA_ERROR if the input data was corrupted, including if the input data is
|
||||||
|
an incomplete zlib stream.
|
||||||
*/
|
*/
|
||||||
|
int ZEXPORT uncompress2 (dest, destLen, source, sourceLen)
|
||||||
|
Bytef *dest;
|
||||||
|
uLongf *destLen;
|
||||||
|
const Bytef *source;
|
||||||
|
uLong *sourceLen;
|
||||||
|
{
|
||||||
|
z_stream stream;
|
||||||
|
int err;
|
||||||
|
const uInt max = (uInt)-1;
|
||||||
|
uLong len, left;
|
||||||
|
Byte buf[1]; /* for detection of incomplete stream when *destLen == 0 */
|
||||||
|
|
||||||
|
len = *sourceLen;
|
||||||
|
if (*destLen) {
|
||||||
|
left = *destLen;
|
||||||
|
*destLen = 0;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
left = 1;
|
||||||
|
dest = buf;
|
||||||
|
}
|
||||||
|
|
||||||
|
stream.next_in = (z_const Bytef *)source;
|
||||||
|
stream.avail_in = 0;
|
||||||
|
stream.zalloc = (alloc_func)0;
|
||||||
|
stream.zfree = (free_func)0;
|
||||||
|
stream.opaque = (voidpf)0;
|
||||||
|
|
||||||
|
err = inflateInit(&stream);
|
||||||
|
if (err != Z_OK) return err;
|
||||||
|
|
||||||
|
stream.next_out = dest;
|
||||||
|
stream.avail_out = 0;
|
||||||
|
|
||||||
|
do {
|
||||||
|
if (stream.avail_out == 0) {
|
||||||
|
stream.avail_out = left > (uLong)max ? max : (uInt)left;
|
||||||
|
left -= stream.avail_out;
|
||||||
|
}
|
||||||
|
if (stream.avail_in == 0) {
|
||||||
|
stream.avail_in = len > (uLong)max ? max : (uInt)len;
|
||||||
|
len -= stream.avail_in;
|
||||||
|
}
|
||||||
|
err = inflate(&stream, Z_NO_FLUSH);
|
||||||
|
} while (err == Z_OK);
|
||||||
|
|
||||||
|
*sourceLen -= len + stream.avail_in;
|
||||||
|
if (dest != buf)
|
||||||
|
*destLen = stream.total_out;
|
||||||
|
else if (stream.total_out && err == Z_BUF_ERROR)
|
||||||
|
left = 1;
|
||||||
|
|
||||||
|
inflateEnd(&stream);
|
||||||
|
return err == Z_STREAM_END ? Z_OK :
|
||||||
|
err == Z_NEED_DICT ? Z_DATA_ERROR :
|
||||||
|
err == Z_BUF_ERROR && left + stream.avail_out ? Z_DATA_ERROR :
|
||||||
|
err;
|
||||||
|
}
|
||||||
|
|
||||||
int ZEXPORT uncompress (dest, destLen, source, sourceLen)
|
int ZEXPORT uncompress (dest, destLen, source, sourceLen)
|
||||||
Bytef *dest;
|
Bytef *dest;
|
||||||
uLongf *destLen;
|
uLongf *destLen;
|
||||||
const Bytef *source;
|
const Bytef *source;
|
||||||
uLong sourceLen;
|
uLong sourceLen;
|
||||||
{
|
{
|
||||||
z_stream stream;
|
return uncompress2(dest, destLen, source, &sourceLen);
|
||||||
int err;
|
|
||||||
|
|
||||||
stream.next_in = (z_const Bytef *)source;
|
|
||||||
stream.avail_in = (uInt)sourceLen;
|
|
||||||
/* Check for source > 64K on 16-bit machine: */
|
|
||||||
if ((uLong)stream.avail_in != sourceLen) return Z_BUF_ERROR;
|
|
||||||
|
|
||||||
stream.next_out = dest;
|
|
||||||
stream.avail_out = (uInt)*destLen;
|
|
||||||
if ((uLong)stream.avail_out != *destLen) return Z_BUF_ERROR;
|
|
||||||
|
|
||||||
stream.zalloc = (alloc_func)0;
|
|
||||||
stream.zfree = (free_func)0;
|
|
||||||
|
|
||||||
err = inflateInit(&stream);
|
|
||||||
if (err != Z_OK) return err;
|
|
||||||
|
|
||||||
err = inflate(&stream, Z_FINISH);
|
|
||||||
if (err != Z_STREAM_END) {
|
|
||||||
inflateEnd(&stream);
|
|
||||||
if (err == Z_NEED_DICT || (err == Z_BUF_ERROR && stream.avail_in == 0))
|
|
||||||
return Z_DATA_ERROR;
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
*destLen = stream.total_out;
|
|
||||||
|
|
||||||
err = inflateEnd(&stream);
|
|
||||||
return err;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ IMPLIB = libz.dll.a
|
|||||||
SHARED_MODE=0
|
SHARED_MODE=0
|
||||||
|
|
||||||
#LOC = -DASMV
|
#LOC = -DASMV
|
||||||
#LOC = -DDEBUG -g
|
#LOC = -DZLIB_DEBUG -g
|
||||||
|
|
||||||
PREFIX =
|
PREFIX =
|
||||||
CC = $(PREFIX)gcc
|
CC = $(PREFIX)gcc
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
# Makefile for zlib using Microsoft (Visual) C
|
# Makefile for zlib using Microsoft (Visual) C
|
||||||
# zlib is copyright (C) 1995-2006 Jean-loup Gailly and Mark Adler
|
# zlib is copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler
|
||||||
#
|
#
|
||||||
# Usage:
|
# Usage:
|
||||||
# nmake -f win32/Makefile.msc (standard build)
|
# nmake -f win32/Makefile.msc (standard build)
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
ZLIB DATA COMPRESSION LIBRARY
|
ZLIB DATA COMPRESSION LIBRARY
|
||||||
|
|
||||||
zlib 1.2.8 is a general purpose data compression library. All the code is
|
zlib 1.2.11 is a general purpose data compression library. All the code is
|
||||||
thread safe. The data format used by the zlib library is described by RFCs
|
thread safe. The data format used by the zlib library is described by RFCs
|
||||||
(Request for Comments) 1950 to 1952 in the files
|
(Request for Comments) 1950 to 1952 in the files
|
||||||
http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate format)
|
http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate format)
|
||||||
@@ -22,7 +22,7 @@ before asking for help.
|
|||||||
|
|
||||||
Manifest:
|
Manifest:
|
||||||
|
|
||||||
The package zlib-1.2.8-win32-x86.zip will contain the following files:
|
The package zlib-1.2.11-win32-x86.zip will contain the following files:
|
||||||
|
|
||||||
README-WIN32.txt This document
|
README-WIN32.txt This document
|
||||||
ChangeLog Changes since previous zlib packages
|
ChangeLog Changes since previous zlib packages
|
||||||
@@ -72,7 +72,7 @@ are too numerous to cite here.
|
|||||||
|
|
||||||
Copyright notice:
|
Copyright notice:
|
||||||
|
|
||||||
(C) 1995-2012 Jean-loup Gailly and Mark Adler
|
(C) 1995-2017 Jean-loup Gailly and Mark Adler
|
||||||
|
|
||||||
This software is provided 'as-is', without any express or implied
|
This software is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the authors be held liable for any damages
|
warranty. In no event will the authors be held liable for any damages
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ What's here
|
|||||||
|
|
||||||
Source
|
Source
|
||||||
======
|
======
|
||||||
zlib version 1.2.8
|
zlib version 1.2.11
|
||||||
available at http://www.gzip.org/zlib/
|
available at http://www.gzip.org/zlib/
|
||||||
|
|
||||||
|
|
||||||
@@ -25,9 +25,9 @@ Build info
|
|||||||
Contributed by Jan Nijtmans.
|
Contributed by Jan Nijtmans.
|
||||||
|
|
||||||
Compiler:
|
Compiler:
|
||||||
i686-w64-mingw32-gcc (GCC) 4.5.3
|
i686-w64-mingw32-gcc (GCC) 5.4.0
|
||||||
Library:
|
Library:
|
||||||
mingw64-i686-runtime/headers: 3.0b_svn5747-1
|
mingw64-i686-runtime/headers: 5.0.0
|
||||||
Build commands:
|
Build commands:
|
||||||
i686-w64-mingw32-gcc -c -DASMV contrib/asm686/match.S
|
i686-w64-mingw32-gcc -c -DASMV contrib/asm686/match.S
|
||||||
i686-w64-mingw32-gcc -c -DASMINF -I. -O3 contrib/inflate86/inffas86.c
|
i686-w64-mingw32-gcc -c -DASMINF -I. -O3 contrib/inflate86/inffas86.c
|
||||||
@@ -37,7 +37,7 @@ Build info
|
|||||||
|
|
||||||
Copyright notice
|
Copyright notice
|
||||||
================
|
================
|
||||||
Copyright (C) 1995-2010 Jean-loup Gailly and Mark Adler
|
Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler
|
||||||
|
|
||||||
This software is provided 'as-is', without any express or implied
|
This software is provided 'as-is', without any express or implied
|
||||||
warranty. In no event will the authors be held liable for any damages
|
warranty. In no event will the authors be held liable for any damages
|
||||||
|
|||||||
@@ -2,6 +2,9 @@
|
|||||||
Installing ZLIB1.DLL
|
Installing ZLIB1.DLL
|
||||||
====================
|
====================
|
||||||
Copy ZLIB1.DLL to the SYSTEM or the SYSTEM32 directory.
|
Copy ZLIB1.DLL to the SYSTEM or the SYSTEM32 directory.
|
||||||
|
|
||||||
|
If you want to install the 32-bit dll on a 64-bit
|
||||||
|
machine, use the SysWOW64 directory instead.
|
||||||
|
|
||||||
|
|
||||||
Using ZLIB1.DLL with Microsoft Visual C++
|
Using ZLIB1.DLL with Microsoft Visual C++
|
||||||
@@ -20,12 +23,17 @@ Using ZLIB1.DLL with gcc/MinGW
|
|||||||
1. Install the supplied header files "zlib.h" and "zconf.h"
|
1. Install the supplied header files "zlib.h" and "zconf.h"
|
||||||
into the INCLUDE directory.
|
into the INCLUDE directory.
|
||||||
|
|
||||||
2. Copy the supplied library file "zdll.lib" to "libzdll.a":
|
2. (32-bit): Copy the supplied library file "zdll.lib" to "libzdll.a":
|
||||||
cp lib/zdll.lib lib/libzdll.a
|
cp lib/zdll.lib lib/libzdll.a
|
||||||
|
|
||||||
OR
|
OR
|
||||||
|
|
||||||
2' Build the import library from the supplied "zlib.def":
|
2'. (64-bit): Copy the supplied library file "libz.dll.a" to "libzdll.a":
|
||||||
|
cp lib/libz.dll.a lib/libzdll.a
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
2'' Build the import library from the supplied "zlib.def":
|
||||||
dlltool -D zlib1.dll -d lib/zlib.def -l lib/libzdll.a
|
dlltool -D zlib1.dll -d lib/zlib.def -l lib/libzdll.a
|
||||||
|
|
||||||
3. Install "libzdll.a" into the LIB directory.
|
3. Install "libzdll.a" into the LIB directory.
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
|
|
||||||
To build zlib using the Microsoft Visual C++ environment,
|
To build zlib using the Microsoft Visual C++ environment,
|
||||||
use the appropriate project from the projects/ directory.
|
use the appropriate project from the contrib/vstudio/ directory.
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user