summaryrefslogtreecommitdiff
path: root/Build/source/libs/zziplib
diff options
context:
space:
mode:
authorAkira Kakuto <kakuto@fuk.kindai.ac.jp>2017-06-20 00:49:02 +0000
committerAkira Kakuto <kakuto@fuk.kindai.ac.jp>2017-06-20 00:49:02 +0000
commit64cebcd2742bed53c840feebf5b2f33981ba803d (patch)
tree9480befcce98ca0f5fd4797abc9898af5d1d0b26 /Build/source/libs/zziplib
parentb4e9c60b697e1dfc02443ed3baed2aededdf4572 (diff)
zziplib 0.13.66
git-svn-id: svn://tug.org/texlive/trunk@44647 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/zziplib')
-rw-r--r--Build/source/libs/zziplib/ChangeLog5
-rw-r--r--Build/source/libs/zziplib/Makefile.am3
-rw-r--r--Build/source/libs/zziplib/Makefile.in15
-rw-r--r--Build/source/libs/zziplib/README6
-rw-r--r--Build/source/libs/zziplib/TLpatches/ChangeLog5
-rw-r--r--Build/source/libs/zziplib/TLpatches/TL-Changes10
-rw-r--r--Build/source/libs/zziplib/TLpatches/patch-01-binary218
-rw-r--r--Build/source/libs/zziplib/TLpatches/patch-02-bugfix34
-rw-r--r--Build/source/libs/zziplib/TLpatches/patch-03-w64-ptr9
-rwxr-xr-xBuild/source/libs/zziplib/configure20
-rw-r--r--Build/source/libs/zziplib/version.ac2
-rw-r--r--Build/source/libs/zziplib/zziplib-src/ChangeLog20
-rw-r--r--Build/source/libs/zziplib/zziplib-src/Makefile.am2
-rw-r--r--Build/source/libs/zziplib/zziplib-src/Makefile.in394
-rw-r--r--Build/source/libs/zziplib/zziplib-src/SDL/Makefile.in249
-rw-r--r--Build/source/libs/zziplib/zziplib-src/SDL/SDL_rwops_zzip.c62
-rw-r--r--Build/source/libs/zziplib/zziplib-src/SDL/zzip-sdl-config.pc10
-rw-r--r--Build/source/libs/zziplib/zziplib-src/SDL/zzip-sdl-rwops.pc8
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/Makefile.am22
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/Makefile.in418
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/unzip-mem.c2
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/unzzip.c116
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/unzzip.h11
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-big.c168
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-mem.c82
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-mix.c155
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-zip.c145
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/unzzipcat.c128
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-big.c73
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-mem.c44
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-mix.c90
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-zip.c91
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/unzzipdir.c104
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/unzzipshow.c (renamed from Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-seeko.c)2
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/zzip.c6
-rw-r--r--Build/source/libs/zziplib/zziplib-src/bins/zziptest.c8
-rw-r--r--Build/source/libs/zziplib/zziplib-src/config.h.in5
-rwxr-xr-xBuild/source/libs/zziplib/zziplib-src/configure660
-rw-r--r--Build/source/libs/zziplib/zziplib-src/configure.ac2
-rw-r--r--Build/source/libs/zziplib/zziplib-src/docs/Makefile.in118
-rw-r--r--Build/source/libs/zziplib/zziplib-src/docs/cpp2markdown-1.py249
-rw-r--r--Build/source/libs/zziplib/zziplib-src/docs/cpp2markdown.py195
-rw-r--r--Build/source/libs/zziplib/zziplib-src/docs/dir-zzip-192.pngbin0 -> 10624 bytes
-rw-r--r--Build/source/libs/zziplib/zziplib-src/docs/dir-zzip-64.pngbin0 -> 3539 bytes
-rw-r--r--Build/source/libs/zziplib/zziplib-src/docs/site.htm68
-rw-r--r--Build/source/libs/zziplib/zziplib-src/docs/zzipfseeko.html176
-rw-r--r--Build/source/libs/zziplib/zziplib-src/docs/zziplib-manpages.tarbin174080 -> 0 bytes
-rw-r--r--Build/source/libs/zziplib/zziplib-src/docs/zziplib.html1713
-rw-r--r--Build/source/libs/zziplib/zziplib-src/docs/zzipmmapped.html222
-rw-r--r--Build/source/libs/zziplib/zziplib-src/m4/ax_enable_builddir.m4248
-rw-r--r--Build/source/libs/zziplib/zziplib-src/msvc7/README.TXT31
-rwxr-xr-xBuild/source/libs/zziplib/zziplib-src/msvc7/zip.exebin0 -> 135168 bytes
-rw-r--r--Build/source/libs/zziplib/zziplib-src/ports/symbian-S60/zziplib-symbian.zipbin0 -> 3154 bytes
-rw-r--r--Build/source/libs/zziplib/zziplib-src/test/Makefile.am215
-rw-r--r--Build/source/libs/zziplib/zziplib-src/test/Makefile.in450
-rw-r--r--Build/source/libs/zziplib/zziplib-src/test/test.zipbin1311 -> 1293 bytes
-rw-r--r--Build/source/libs/zziplib/zziplib-src/test/zziptests.py1000
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/Makefile.in305
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/__dirent.h7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/__mmap.h8
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/conf.h7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/dir.c9
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/err.c7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/fetch.c7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/fetch.h2
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/file.c7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/file.h7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/format.h9
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/fseeko.c323
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/fseeko.h7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/info.c7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/info.h7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/lib.h7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/memdisk.c110
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/memdisk.h11
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/mmapped.c283
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/mmapped.h7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/plugin.c7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/plugin.h11
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/stat.c7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/types.h7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/write.c7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/write.h9
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/zip.c7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/zzip-zlib-config.pc8
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/zzip.h9
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/zzip32.h7
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/zzipfseeko.pc18
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/zziplib.pc18
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzip/zzipmmapped.pc18
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zziplib.spec4
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzipwrap/Makefile.in306
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzipwrap/wrap.h2
-rw-r--r--Build/source/libs/zziplib/zziplib-src/zzipwrap/zzipwrap.pc2
94 files changed, 6624 insertions, 3049 deletions
diff --git a/Build/source/libs/zziplib/ChangeLog b/Build/source/libs/zziplib/ChangeLog
index 1f9f138c48a..9da2623a86a 100644
--- a/Build/source/libs/zziplib/ChangeLog
+++ b/Build/source/libs/zziplib/ChangeLog
@@ -1,3 +1,8 @@
+2017-06-20 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
+
+ * Import zziplib 0.13.66.
+ version.ac, Makefile.am: Adapted.
+
2017-03-27 Karl Berry <karl@freefriends.org>
* Makefile.am (AM_TESTS_ENVIRONMENT): use instead of TESTS_ENVIRONMENT.
diff --git a/Build/source/libs/zziplib/Makefile.am b/Build/source/libs/zziplib/Makefile.am
index e655816c109..35b264b475e 100644
--- a/Build/source/libs/zziplib/Makefile.am
+++ b/Build/source/libs/zziplib/Makefile.am
@@ -52,7 +52,8 @@ zziplib.log: unzzip$(EXEEXT)
distclean-local:
rm -rf test
-nodist_unzzip_SOURCES = @ZZIPLIB_TREE@/bins/unzzip.c
+nodist_unzzip_SOURCES = @ZZIPLIB_TREE@/bins/unzzip.c \
+@ZZIPLIB_TREE@/bins/unzzipcat-zip.c @ZZIPLIB_TREE@/bins/unzzipdir-zip.c
unzzip_LDADD = libzzip.a $(ZLIB_LIBS)
## Rebuild zlib
diff --git a/Build/source/libs/zziplib/Makefile.in b/Build/source/libs/zziplib/Makefile.in
index 503a305fb77..75731c78363 100644
--- a/Build/source/libs/zziplib/Makefile.in
+++ b/Build/source/libs/zziplib/Makefile.in
@@ -130,7 +130,9 @@ nodist_libzzip_a_OBJECTS = @ZZIPLIB_TREE@/zzip/dir.$(OBJEXT) \
@ZZIPLIB_TREE@/zzip/write.$(OBJEXT) \
@ZZIPLIB_TREE@/zzip/zip.$(OBJEXT)
libzzip_a_OBJECTS = $(nodist_libzzip_a_OBJECTS)
-nodist_unzzip_OBJECTS = @ZZIPLIB_TREE@/bins/unzzip.$(OBJEXT)
+nodist_unzzip_OBJECTS = @ZZIPLIB_TREE@/bins/unzzip.$(OBJEXT) \
+@ZZIPLIB_TREE@/bins/unzzipcat-zip.$(OBJEXT) \
+@ZZIPLIB_TREE@/bins/unzzipdir-zip.$(OBJEXT)
unzzip_OBJECTS = $(nodist_unzzip_OBJECTS)
am__DEPENDENCIES_1 =
unzzip_DEPENDENCIES = libzzip.a $(am__DEPENDENCIES_1)
@@ -599,7 +601,8 @@ DISTCLEANFILES = include/_msvc.in _configs.sed config.force
AM_TESTS_ENVIRONMENT = ZZIPLIB_TREE=$(ZZIPLIB_TREE); export ZZIPLIB_TREE;
@build_TRUE@TESTS = zziplib.test
@build_TRUE@dist_check_SCRIPTS = zziplib.test
-nodist_unzzip_SOURCES = @ZZIPLIB_TREE@/bins/unzzip.c
+nodist_unzzip_SOURCES = @ZZIPLIB_TREE@/bins/unzzip.c \
+@ZZIPLIB_TREE@/bins/unzzipcat-zip.c @ZZIPLIB_TREE@/bins/unzzipdir-zip.c
unzzip_LDADD = libzzip.a $(ZLIB_LIBS)
# Reconfig
@@ -716,6 +719,12 @@ clean-checkPROGRAMS:
@ZZIPLIB_TREE@/bins/unzzip.$(OBJEXT): \
@ZZIPLIB_TREE@/bins/$(am__dirstamp) \
@ZZIPLIB_TREE@/bins/$(DEPDIR)/$(am__dirstamp)
+@ZZIPLIB_TREE@/bins/unzzipcat-zip.$(OBJEXT): \
+ @ZZIPLIB_TREE@/bins/$(am__dirstamp) \
+ @ZZIPLIB_TREE@/bins/$(DEPDIR)/$(am__dirstamp)
+@ZZIPLIB_TREE@/bins/unzzipdir-zip.$(OBJEXT): \
+ @ZZIPLIB_TREE@/bins/$(am__dirstamp) \
+ @ZZIPLIB_TREE@/bins/$(DEPDIR)/$(am__dirstamp)
unzzip$(EXEEXT): $(unzzip_OBJECTS) $(unzzip_DEPENDENCIES) $(EXTRA_unzzip_DEPENDENCIES)
@rm -f unzzip$(EXEEXT)
@@ -730,6 +739,8 @@ distclean-compile:
-rm -f *.tab.c
@AMDEP_TRUE@@am__include@ @am__quote@@ZZIPLIB_TREE@/bins/$(DEPDIR)/unzzip.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@@ZZIPLIB_TREE@/bins/$(DEPDIR)/unzzipcat-zip.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@@ZZIPLIB_TREE@/bins/$(DEPDIR)/unzzipdir-zip.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@@ZZIPLIB_TREE@/zzip/$(DEPDIR)/dir.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@@ZZIPLIB_TREE@/zzip/$(DEPDIR)/err.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@@ZZIPLIB_TREE@/zzip/$(DEPDIR)/fetch.Po@am__quote@
diff --git a/Build/source/libs/zziplib/README b/Build/source/libs/zziplib/README
index 7e9dd83707a..3f9f5f84261 100644
--- a/Build/source/libs/zziplib/README
+++ b/Build/source/libs/zziplib/README
@@ -1,11 +1,11 @@
- Building zziplib-0.13.62 as part of the TL tree
+ Building zziplib-0.13.66 as part of the TL tree
===============================================
This directory libs/zziplib/ uses a proxy Makefile.am to build the zziplib
library from the unmodified (*) source tree in libs/zziplib/zziplib-src/,
bypassing the original build system.
-(*) The directory zziplib-PATCHES contains patches (if any) applied to
+(*) The directory TLpatches contains patches (if any) applied to
the original source tree.
As far as applicable, the tests in libs/zziplib-src/configure.ac have been
@@ -14,4 +14,4 @@ copied to libs/zziplib/configure.ac.
=============================
2010-01-30 Peter Breitenlohner <peb@mppmu.mpg.de>
-2016-02-22 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
+2017-??-?? Akira Kakuto <kakuto@fuk.kindai.ac.jp>
diff --git a/Build/source/libs/zziplib/TLpatches/ChangeLog b/Build/source/libs/zziplib/TLpatches/ChangeLog
index 98ecda061fc..26fb88d57a4 100644
--- a/Build/source/libs/zziplib/TLpatches/ChangeLog
+++ b/Build/source/libs/zziplib/TLpatches/ChangeLog
@@ -1,3 +1,8 @@
+2017-06-20 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
+
+ * Import zziplib-0.13.66.
+ * patch-01-binary, patch-02-bugfix, patch-03-w64-ptr: Adapted.
+
2015-03-29 Peter Breitenlohner <peb@mppmu.mpg.de>
* patch-02-bugfix: More fix mmap for WIN32/WIN64, from Akira.
diff --git a/Build/source/libs/zziplib/TLpatches/TL-Changes b/Build/source/libs/zziplib/TLpatches/TL-Changes
index 72c4023aac6..0fd56e3ab7b 100644
--- a/Build/source/libs/zziplib/TLpatches/TL-Changes
+++ b/Build/source/libs/zziplib/TLpatches/TL-Changes
@@ -1,4 +1,4 @@
-Changes applied to the zziplib-0.13.62/ tree as obtained from:
+Changes applied to the zziplib-0.13.66/ tree as obtained from:
http://zziplib.sourceforge.net/
Copied:
@@ -6,9 +6,12 @@ Copied:
m4/ac_sys_largefile_sensitive.m4 -> ../m4/
Removed:
+ .cdtproject
+ .gitignore
+ .pydevproject
aclocal.m4
+ msvc/
uses/
- zzip/_config.h
zzip/_msvc.h
Converted Dos/Win line ends to native:
@@ -20,7 +23,4 @@ Converted Dos/Win line ends to native:
msvc7/*.vcproj
msvc8/*.sln
msvc8/*.vcproj
- zzip/file.h
- zzip/stdint.h
zzip/zziplib.wpj
-
diff --git a/Build/source/libs/zziplib/TLpatches/patch-01-binary b/Build/source/libs/zziplib/TLpatches/patch-01-binary
index 4d528511791..518657f6493 100644
--- a/Build/source/libs/zziplib/TLpatches/patch-01-binary
+++ b/Build/source/libs/zziplib/TLpatches/patch-01-binary
@@ -1,15 +1,205 @@
-diff -ur zziplib-0.13.62.orig/bins/unzzip.c zziplib-0.13.62/bins/unzzip.c
---- zziplib-0.13.62.orig/bins/unzzip.c 2009-08-23 13:38:22.000000000 +0200
-+++ zziplib-0.13.62/bins/unzzip.c 2014-07-11 09:50:50.000000000 +0200
-@@ -72,7 +72,11 @@
- continue;
- }
-
-+#ifdef _WIN32
-+ output = _open (d.d_name, _O_CREAT | _O_BINARY | _O_RDWR);
-+#else
- output = creat (d.d_name, 0664);
-+#endif
- if (output == -1)
+diff -ur zziplib-0.13.66.orig/bins/unzip-mem.c zziplib-0.13.66/bins/unzip-mem.c
+--- zziplib-0.13.66.orig/bins/unzip-mem.c Mon Apr 24 08:46:28 2017
++++ zziplib-0.13.66/bins/unzip-mem.c Wed May 24 21:13:24 2017
+@@ -100,7 +100,7 @@
+ static void zzip_mem_entry_make(ZZIP_MEM_DISK* disk,
+ ZZIP_MEM_ENTRY* entry)
+ {
+- FILE* file = fopen (entry->zz_name, "w");
++ FILE* file = fopen (entry->zz_name, "wb");
+ if (file) { zzip_mem_entry_pipe (disk, entry, file); fclose (file); }
+ perror (entry->zz_name);
+ if (status < EXIT_WARNINGS) status = EXIT_WARNINGS;
+diff -ur zziplib-0.13.66.orig/bins/unzzipcat-big.c zziplib-0.13.66/bins/unzzipcat-big.c
+--- zziplib-0.13.66.orig/bins/unzzipcat-big.c Mon Apr 24 08:46:28 2017
++++ zziplib-0.13.66/bins/unzzipcat-big.c Wed May 24 21:13:24 2017
+@@ -62,6 +62,21 @@
+ }
+ }
+
++#if !defined(HAVE_STRNDUP)
++static char *
++strndup(char *p, size_t maxlen)
++{
++ char *r;
++ if (!p)
++ return 0;
++ r = malloc(maxlen + 1);
++ if (!r)
++ return r;
++ strncpy(r, p, maxlen);
++ r[maxlen] = '\0';
++ return r;
++}
++#endif
+
+ static FILE* create_fopen(char* name, char* mode, int subdirs)
+ {
+@@ -83,7 +98,7 @@
+ int argn;
+ FILE* disk;
+
+- disk = fopen (argv[1], "r");
++ disk = fopen (argv[1], "rb");
+ if (! disk) {
+ perror(argv[1]);
+ return -1;
+@@ -96,7 +111,7 @@
+ {
+ char* name = zzip_entry_strdup_name (entry);
+ FILE* out = stdout;
+- if (extract) out = create_fopen(name, "w", 1);
++ if (extract) out = create_fopen(name, "wb", 1);
+ unzzip_cat_file (disk, name, out);
+ if (extract) fclose(out);
+ free (name);
+@@ -125,7 +140,7 @@
+ FNM_NOESCAPE|FNM_PATHNAME|FNM_PERIOD))
+ {
+ FILE* out = stdout;
+- if (extract) out = create_fopen(name, "w", 1);
++ if (extract) out = create_fopen(name, "wb", 1);
+ unzzip_cat_file (disk, name, out);
+ if (extract) fclose(out);
+ break; /* match loop */
+diff -ur zziplib-0.13.66.orig/bins/unzzipcat-mem.c zziplib-0.13.66/bins/unzzipcat-mem.c
+--- zziplib-0.13.66.orig/bins/unzzipcat-mem.c Mon Apr 24 08:46:28 2017
++++ zziplib-0.13.66/bins/unzzipcat-mem.c Wed May 24 21:13:24 2017
+@@ -57,6 +57,22 @@
+ }
+ }
+
++#if !defined(HAVE_STRNDUP)
++static char *
++strndup(char *p, size_t maxlen)
++{
++ char *r;
++ if (!p)
++ return 0;
++ r = malloc(maxlen + 1);
++ if (!r)
++ return r;
++ strncpy(r, p, maxlen);
++ r[maxlen] = '\0';
++ return r;
++}
++#endif
++
+ static FILE* create_fopen(char* name, char* mode, int subdirs)
+ {
+ if (subdirs)
+@@ -97,7 +113,7 @@
+ {
+ char* name = zzip_mem_entry_to_name (entry);
+ FILE* out = stdout;
+- if (extract) out = create_fopen(name, "w", 1);
++ if (extract) out = create_fopen(name, "wb", 1);
+ unzzip_mem_disk_cat_file (disk, name, out);
+ if (extract) fclose(out);
+ }
+@@ -125,7 +141,7 @@
+ FNM_NOESCAPE|FNM_PATHNAME|FNM_PERIOD))
{
- fprintf (stderr, "|output file %s: \n", d.d_name);
+ FILE* out = stdout;
+- if (extract) out = create_fopen(name, "w", 1);
++ if (extract) out = create_fopen(name, "wb", 1);
+ unzzip_mem_disk_cat_file (disk, name, out);
+ if (extract) fclose(out);
+ break; /* match loop */
+diff -ur zziplib-0.13.66.orig/bins/unzzipcat-mix.c zziplib-0.13.66/bins/unzzipcat-mix.c
+--- zziplib-0.13.66.orig/bins/unzzipcat-mix.c Mon Apr 24 08:46:28 2017
++++ zziplib-0.13.66/bins/unzzipcat-mix.c Wed May 24 21:13:24 2017
+@@ -30,7 +30,7 @@
+
+ static void unzzip_cat_file(ZZIP_DIR* disk, char* name, FILE* out)
+ {
+- ZZIP_FILE* file = zzip_fopen(name, "r");
++ ZZIP_FILE* file = zzip_fopen(name, "rb");
+ if (file)
+ {
+ char buffer[1024]; int len;
+@@ -43,6 +43,22 @@
+ }
+ }
+
++#if !defined(HAVE_STRNDUP)
++static char *
++strndup(char *p, size_t maxlen)
++{
++ char *r;
++ if (!p)
++ return 0;
++ r = malloc(maxlen + 1);
++ if (!r)
++ return r;
++ strncpy(r, p, maxlen);
++ r[maxlen] = '\0';
++ return r;
++}
++#endif
++
+ static FILE* create_fopen(char* name, char* mode, int subdirs)
+ {
+ if (subdirs)
+@@ -82,7 +98,7 @@
+ {
+ char* name = entry->d_name;
+ FILE* out = stdout;
+- if (extract) out = create_fopen(name, "w", 1);
++ if (extract) out = create_fopen(name, "wb", 1);
+ unzzip_cat_file (disk, name, out);
+ if (extract) fclose(out);
+ }
+@@ -108,7 +124,7 @@
+ memcpy(mix_name, zip_name, zip_name_len);
+ mix_name[zip_name_len] = '/';
+ strcpy(mix_name + zip_name_len + 1, name);
+- if (extract) out = create_fopen(name, "w", 1);
++ if (extract) out = create_fopen(name, "wb", 1);
+ fprintf(stderr, "%s %s -> %s\n", zip_name, name, mix_name);
+ /* 'test1.zip' 'README' -> 'test1/README' */
+ unzzip_cat_file (disk, mix_name, out);
+diff -ur zziplib-0.13.66.orig/bins/unzzipcat-zip.c zziplib-0.13.66/bins/unzzipcat-zip.c
+--- zziplib-0.13.66.orig/bins/unzzipcat-zip.c Mon Apr 24 08:46:28 2017
++++ zziplib-0.13.66/bins/unzzipcat-zip.c Wed May 24 21:13:24 2017
+@@ -43,6 +43,22 @@
+ }
+ }
+
++#if !defined(HAVE_STRNDUP)
++static char *
++strndup(char *p, size_t maxlen)
++{
++ char *r;
++ if (!p)
++ return 0;
++ r = malloc(maxlen + 1);
++ if (!r)
++ return r;
++ strncpy(r, p, maxlen);
++ r[maxlen] = '\0';
++ return r;
++}
++#endif
++
+ static FILE* create_fopen(char* name, char* mode, int subdirs)
+ {
+ if (subdirs)
+@@ -83,7 +99,7 @@
+ {
+ char* name = entry.d_name;
+ FILE* out = stdout;
+- if (extract) out = create_fopen(name, "w", 1);
++ if (extract) out = create_fopen(name, "wb", 1);
+ unzzip_cat_file (disk, name, out);
+ if (extract) fclose(out);
+ }
+@@ -100,7 +116,7 @@
+ FNM_NOESCAPE|FNM_PATHNAME|FNM_PERIOD))
+ {
+ FILE* out = stdout;
+- if (extract) out = create_fopen(name, "w", 1);
++ if (extract) out = create_fopen(name, "wb", 1);
+ unzzip_cat_file (disk, name, out);
+ if (extract) fclose(out);
+ break; /* match loop */
diff --git a/Build/source/libs/zziplib/TLpatches/patch-02-bugfix b/Build/source/libs/zziplib/TLpatches/patch-02-bugfix
index 3cdb42a64c4..35830145acf 100644
--- a/Build/source/libs/zziplib/TLpatches/patch-02-bugfix
+++ b/Build/source/libs/zziplib/TLpatches/patch-02-bugfix
@@ -1,7 +1,7 @@
-diff -ur zziplib-0.13.62.orig/zzip/__mmap.h zziplib-0.13.62/zzip/__mmap.h
---- zziplib-0.13.62.orig/zzip/__mmap.h 2009-08-23 13:38:22.000000000 +0200
-+++ zziplib-0.13.62/zzip/__mmap.h 2015-03-29 12:44:43.000000000 +0200
-@@ -50,43 +50,60 @@
+diff -ur zziplib-0.13.66.orig/zzip/__mmap.h zziplib-0.13.66/zzip/__mmap.h
+--- zziplib-0.13.66.orig/zzip/__mmap.h Mon Apr 24 08:46:28 2017
++++ zziplib-0.13.66/zzip/__mmap.h Wed May 24 21:14:48 2017
+@@ -45,43 +45,61 @@
#define MAP_FAILED 0
#endif
/* we (ab)use the "*user" variable to store the FileMapping handle */
@@ -50,7 +50,7 @@ diff -ur zziplib-0.13.62.orig/zzip/__mmap.h zziplib-0.13.62/zzip/__mmap.h
UnmapViewOfFile (fd_map);
CloseHandle (*(HANDLE*)user); *user = 1;
}
--
+
+#ifdef _WIN64
+#define _zzip_mmap(user, fd, offs, len) \
+ win32_mmap ((__int64*) &(user), fd, offs, len)
@@ -67,10 +67,10 @@ diff -ur zziplib-0.13.62.orig/zzip/__mmap.h zziplib-0.13.62/zzip/__mmap.h
#else /* disable */
#define USE_MMAP 0
/* USE_MAP is intentional: we expect the compiler to do some "code removal"
-diff -ur zziplib-0.13.62.orig/zzip/mmapped.h zziplib-0.13.62/zzip/mmapped.h
---- zziplib-0.13.62.orig/zzip/mmapped.h 2009-08-23 13:38:22.000000000 +0200
-+++ zziplib-0.13.62/zzip/mmapped.h 2014-07-14 11:25:47.000000000 +0200
-@@ -42,7 +42,11 @@
+diff -ur zziplib-0.13.66.orig/zzip/mmapped.h zziplib-0.13.66/zzip/mmapped.h
+--- zziplib-0.13.66.orig/zzip/mmapped.h Mon Apr 24 08:46:28 2017
++++ zziplib-0.13.66/zzip/mmapped.h Wed May 24 21:14:48 2017
+@@ -37,7 +37,11 @@
void* reserved; /* - for later extensions (might be renamed) */
void* user; /* - free for applications (use this!) */
long flags; /* bit 0: findfile searches case-insensitive */
@@ -82,10 +82,10 @@ diff -ur zziplib-0.13.62.orig/zzip/mmapped.h zziplib-0.13.62/zzip/mmapped.h
long unused; /* - for later extensions (might be renamed) */
long code; /* - free for applications (use this!) */
};
-diff -ur zziplib-0.13.62.orig/zzip/plugin.c zziplib-0.13.62/zzip/plugin.c
---- zziplib-0.13.62.orig/zzip/plugin.c 2010-12-27 02:14:27.000000000 +0100
-+++ zziplib-0.13.62/zzip/plugin.c 2014-07-14 11:23:23.000000000 +0200
-@@ -43,7 +43,7 @@
+diff -ur zziplib-0.13.66.orig/zzip/plugin.c zziplib-0.13.66/zzip/plugin.c
+--- zziplib-0.13.66.orig/zzip/plugin.c Mon Apr 24 08:46:28 2017
++++ zziplib-0.13.66/zzip/plugin.c Wed May 24 21:14:48 2017
+@@ -38,7 +38,7 @@
return st.st_size;
}
@@ -94,10 +94,10 @@ diff -ur zziplib-0.13.62.orig/zzip/plugin.c zziplib-0.13.62/zzip/plugin.c
&open,
&close,
&_zzip_read,
-diff -ur zziplib-0.13.62.orig/zzip/plugin.h zziplib-0.13.62/zzip/plugin.h
---- zziplib-0.13.62.orig/zzip/plugin.h 2010-12-27 02:12:54.000000000 +0100
-+++ zziplib-0.13.62/zzip/plugin.h 2014-07-14 11:23:23.000000000 +0200
-@@ -47,7 +47,11 @@
+diff -ur zziplib-0.13.66.orig/zzip/plugin.h zziplib-0.13.66/zzip/plugin.h
+--- zziplib-0.13.66.orig/zzip/plugin.h Mon Apr 24 08:46:28 2017
++++ zziplib-0.13.66/zzip/plugin.h Wed May 24 21:14:48 2017
+@@ -42,7 +42,11 @@
zzip_ssize_t (*read)(int fd, void* buf, zzip_size_t len);
zzip_off_t (*seeks)(int fd, zzip_off_t offset, int whence);
zzip_off_t (*filesize)(int fd);
diff --git a/Build/source/libs/zziplib/TLpatches/patch-03-w64-ptr b/Build/source/libs/zziplib/TLpatches/patch-03-w64-ptr
index f11ec7e4819..3ea18dd71e4 100644
--- a/Build/source/libs/zziplib/TLpatches/patch-03-w64-ptr
+++ b/Build/source/libs/zziplib/TLpatches/patch-03-w64-ptr
@@ -1,7 +1,7 @@
-diff -ur zziplib-0.13.62.orig/zzip/zip.c zziplib-0.13.62/zzip/zip.c
---- zziplib-0.13.62.orig/zzip/zip.c 2010-12-29 17:22:29.000000000 +0100
-+++ zziplib-0.13.62/zzip/zip.c 2014-07-14 17:05:48.000000000 +0200
-@@ -374,15 +374,19 @@
+diff -ur zziplib-0.13.66.orig/zzip/zip.c zziplib-0.13.66/zzip/zip.c
+--- zziplib-0.13.66.orig/zzip/zip.c Mon Apr 24 08:46:28 2017
++++ zziplib-0.13.66/zzip/zip.c Wed May 24 21:14:48 2017
+@@ -369,15 +369,19 @@
* making pointer alignments to values that can be handled as structures
* is tricky. We assume here that an align(4) is sufficient even for
* 64 bit machines. Note that binary operations are not usually allowed
@@ -24,4 +24,3 @@ diff -ur zziplib-0.13.62.orig/zzip/zip.c zziplib-0.13.62/zzip/zip.c
+#endif
return p;
}
-
diff --git a/Build/source/libs/zziplib/configure b/Build/source/libs/zziplib/configure
index 289ab6d6e87..5e7a3aad795 100755
--- a/Build/source/libs/zziplib/configure
+++ b/Build/source/libs/zziplib/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for zziplib (TeX Live) 0.13.62.
+# Generated by GNU Autoconf 2.69 for zziplib (TeX Live) 0.13.66.
#
# Report bugs to <tex-k@tug.org>.
#
@@ -580,8 +580,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='zziplib (TeX Live)'
PACKAGE_TARNAME='zziplib--tex-live-'
-PACKAGE_VERSION='0.13.62'
-PACKAGE_STRING='zziplib (TeX Live) 0.13.62'
+PACKAGE_VERSION='0.13.66'
+PACKAGE_STRING='zziplib (TeX Live) 0.13.66'
PACKAGE_BUGREPORT='tex-k@tug.org'
PACKAGE_URL=''
@@ -1295,7 +1295,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures zziplib (TeX Live) 0.13.62 to adapt to many kinds of systems.
+\`configure' configures zziplib (TeX Live) 0.13.66 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1366,7 +1366,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of zziplib (TeX Live) 0.13.62:";;
+ short | recursive ) echo "Configuration of zziplib (TeX Live) 0.13.66:";;
esac
cat <<\_ACEOF
@@ -1472,7 +1472,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-zziplib (TeX Live) configure 0.13.62
+zziplib (TeX Live) configure 0.13.66
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2078,7 +2078,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by zziplib (TeX Live) $as_me 0.13.62, which was
+It was created by zziplib (TeX Live) $as_me 0.13.66, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -4001,7 +4001,7 @@ fi
# Define the identity of the package.
PACKAGE='zziplib--tex-live-'
- VERSION='0.13.62'
+ VERSION='0.13.66'
cat >>confdefs.h <<_ACEOF
@@ -7365,7 +7365,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by zziplib (TeX Live) $as_me 0.13.62, which was
+This file was extended by zziplib (TeX Live) $as_me 0.13.66, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -7431,7 +7431,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-zziplib (TeX Live) config.status 0.13.62
+zziplib (TeX Live) config.status 0.13.66
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff --git a/Build/source/libs/zziplib/version.ac b/Build/source/libs/zziplib/version.ac
index 50f7bdd7549..e584f359599 100644
--- a/Build/source/libs/zziplib/version.ac
+++ b/Build/source/libs/zziplib/version.ac
@@ -8,4 +8,4 @@ dnl
dnl --------------------------------------------------------
dnl
dnl m4-include this file to define the current zziplib version
-m4_define([zziplib_version], [0.13.62])
+m4_define([zziplib_version], [0.13.66])
diff --git a/Build/source/libs/zziplib/zziplib-src/ChangeLog b/Build/source/libs/zziplib/zziplib-src/ChangeLog
index 12b5813132f..bb4ec6af079 100644
--- a/Build/source/libs/zziplib/zziplib-src/ChangeLog
+++ b/Build/source/libs/zziplib/zziplib-src/ChangeLog
@@ -1,3 +1,23 @@
+
+2017-04-24 guidod <guidod@gmx.de>
+ * common frontend 'unzzip.c' for example code in unzzip*-xx.c
+ * expand testcases to cover all of big/mem/mix/zap variants
+ * release v0.13.66
+
+2017-04-23 guidod <guidod@gmx.de>
+ * turn the testsuite from makefile into python unittest format
+ * extend 'make check' testsuite to cover non-libzzip extensions
+ * fix unzzipcat-seeko and unzzipcat-mem to match the testsuite
+ * release v0.13.65
+
+2017-04-20 guidod <guidod@gmx.de>
+ * check patches in opensuse builds, mostly for some CVE reports
+
+2012-09-15 guidod <guidod@gmx.de>
+ * zzip.h, plugin.h: "};" at end of extern-C produces build errors with
+ the default --pedantic-errors on newer CMake. Thanks to Keith Thompson
+ recognizing it - see http://stackoverflow.com/questions/12384280/
+
2012-03-11 guidod <guidod@gmx.de>
* configure.ac: fallback to libtool -export-dynamic unless being sure to
diff --git a/Build/source/libs/zziplib/zziplib-src/Makefile.am b/Build/source/libs/zziplib/zziplib-src/Makefile.am
index 6396e3ebb9b..d77f5f812ca 100644
--- a/Build/source/libs/zziplib/zziplib-src/Makefile.am
+++ b/Build/source/libs/zziplib/zziplib-src/Makefile.am
@@ -74,7 +74,7 @@ sdl testsdl test-sdl install-sdl :
check-test0 check-test1 check-zzdir check-zzcat \
check-zzxor check-zzxordir check-zzxorcat \
-check-sfx check-readme : \
+check-sfx check-readme check-tests tests:
(cd test && $(MAKE) `basename $@`)
MSVC8 = msvc8/README.TXT msvc8/zip.exe msvc8/test1.zip msvc8/test.zip \
diff --git a/Build/source/libs/zziplib/zziplib-src/Makefile.in b/Build/source/libs/zziplib/zziplib-src/Makefile.in
index a3bdedc32a0..cd3632a355b 100644
--- a/Build/source/libs/zziplib/zziplib-src/Makefile.in
+++ b/Build/source/libs/zziplib/zziplib-src/Makefile.in
@@ -1,9 +1,8 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -15,6 +14,51 @@
@SET_MAKE@
VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -35,11 +79,15 @@ build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
subdir = .
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(srcdir)/config.h.in \
- $(top_srcdir)/configure COPYING.LIB ChangeLog TODO \
- uses/config.guess uses/config.sub uses/depcomp uses/install-sh \
- uses/ltmain.sh uses/missing uses/mkinstalldirs
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/configure $(am__configure_deps) \
+ $(srcdir)/config.h.in $(top_srcdir)/uses/mkinstalldirs \
+ COPYING.LIB ChangeLog README TODO uses/config.guess \
+ uses/config.sub uses/depcomp uses/install-sh uses/missing \
+ uses/mkinstalldirs uses/ltmain.sh \
+ $(top_srcdir)/uses/config.guess $(top_srcdir)/uses/config.sub \
+ $(top_srcdir)/uses/install-sh $(top_srcdir)/uses/ltmain.sh \
+ $(top_srcdir)/uses/missing
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/ac_compile_check_sizeof.m4 \
$(top_srcdir)/m4/ac_set_default_paths_system.m4 \
@@ -52,7 +100,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ac_compile_check_sizeof.m4 \
$(top_srcdir)/m4/ax_check_aligned_access_required.m4 \
$(top_srcdir)/m4/ax_configure_args.m4 \
$(top_srcdir)/m4/ax_create_pkgconfig_info.m4 \
- $(top_srcdir)/m4/ax_enable_builddir_uname.m4 \
+ $(top_srcdir)/m4/ax_enable_builddir.m4 \
$(top_srcdir)/m4/ax_expand_prefix.m4 \
$(top_srcdir)/m4/ax_maintainer_mode_auto_silent.m4 \
$(top_srcdir)/m4/ax_not_enable_frame_pointer.m4 \
@@ -78,29 +126,72 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/uses/mkinstalldirs
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+am__v_GEN_1 =
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 =
SOURCES =
DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
- html-recursive info-recursive install-data-recursive \
- install-dvi-recursive install-exec-recursive \
- install-html-recursive install-info-recursive \
- install-pdf-recursive install-ps-recursive install-recursive \
- installcheck-recursive installdirs-recursive pdf-recursive \
- ps-recursive uninstall-recursive
+RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
+ ctags-recursive dvi-recursive html-recursive info-recursive \
+ install-data-recursive install-dvi-recursive \
+ install-exec-recursive install-html-recursive \
+ install-info-recursive install-pdf-recursive \
+ install-ps-recursive install-recursive installcheck-recursive \
+ installdirs-recursive pdf-recursive ps-recursive \
+ tags-recursive uninstall-recursive
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
- $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
- distdir dist dist-all distcheck
+am__recursive_targets = \
+ $(RECURSIVE_TARGETS) \
+ $(RECURSIVE_CLEAN_TARGETS) \
+ $(am__extra_recursive_targets)
+AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
+ cscope distdir dist dist-all distcheck
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
+ $(LISP)config.h.in
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
+CSCOPE = cscope
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
am__remove_distdir = \
- { test ! -d "$(distdir)" \
- || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -fr "$(distdir)"; }; }
+ if test -d "$(distdir)"; then \
+ find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
+ && rm -rf "$(distdir)" \
+ || { sleep 5 && rm -rf "$(distdir)"; }; \
+ else :; fi
+am__post_remove_distdir = $(am__remove_distdir)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
@@ -128,10 +219,14 @@ am__relativize = \
reldir="$$dir2"
DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2
GZIP_ENV = --best
+DIST_TARGETS = dist-bzip2 dist-gzip
distuninstallcheck_listfiles = find . -type f -print
+am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
+ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AS = @AS@
AUTOCONF = @AUTOCONF@
@@ -331,7 +426,7 @@ all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
.SUFFIXES:
-am--refresh:
+am--refresh: Makefile
@:
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
@@ -367,10 +462,8 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
$(am__aclocal_m4_deps):
config.h: stamp-h1
- @if test ! -f $@; then \
- rm -f stamp-h1; \
- $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
- else :; fi
+ @if test ! -f $@; then rm -f stamp-h1; else :; fi
+ @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi
stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
@rm -f stamp-h1
@@ -393,22 +486,25 @@ distclean-libtool:
-rm -f libtool config.lt
# This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-# (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
+# into them and run 'make' without going through this Makefile.
+# To change the values of 'make' variables: instead of editing Makefiles,
+# (1) if the variable is set in 'config.status', edit 'config.status'
+# (which will cause the Makefiles to be regenerated when you run 'make');
+# (2) otherwise, pass the desired values on the 'make' command line.
+$(am__recursive_targets):
+ @fail=; \
+ if $(am__make_keepgoing); then \
+ failcom='fail=yes'; \
+ else \
+ failcom='exit 1'; \
+ fi; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
@@ -423,57 +519,12 @@ $(RECURSIVE_TARGETS):
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
-$(RECURSIVE_CLEAN_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
- dot_seen=no; \
- case "$@" in \
- distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- *) list='$(SUBDIRS)' ;; \
- esac; \
- rev=''; for subdir in $$list; do \
- if test "$$subdir" = "."; then :; else \
- rev="$$subdir $$rev"; \
- fi; \
- done; \
- rev="$$rev ."; \
- target=`echo $@ | sed s/-recursive//`; \
- for subdir in $$rev; do \
- echo "Making $$target in $$subdir"; \
- if test "$$subdir" = "."; then \
- local_target="$$target-am"; \
- else \
- local_target="$$target"; \
- fi; \
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
- done && test -z "$$fail"
-tags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
- done
-ctags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
- done
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-recursive
+TAGS: tags
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
@@ -489,12 +540,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
- list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -506,15 +552,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-recursive
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -523,9 +565,31 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscope: cscope.files
+ test ! -s cscope.files \
+ || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
+clean-cscope:
+ -rm -f cscope.files
+cscope.files: clean-cscope cscopelist
+cscopelist: cscopelist-recursive
+
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+ -rm -f cscope.out cscope.in.out cscope.po.out cscope.files
distdir: $(DISTFILES)
$(am__remove_distdir)
@@ -561,13 +625,10 @@ distdir: $(DISTFILES)
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
- || $(MKDIR_P) "$(distdir)/$$subdir" \
- || exit 1; \
- fi; \
- done
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
+ $(am__make_dryrun) \
+ || test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
@@ -596,36 +657,35 @@ distdir: $(DISTFILES)
|| chmod -R a+r "$(distdir)"
dist-gzip: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
+ $(am__post_remove_distdir)
dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
- $(am__remove_distdir)
+ tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
+ $(am__post_remove_distdir)
-dist-lzma: distdir
- tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
- $(am__remove_distdir)
+dist-lzip: distdir
+ tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
+ $(am__post_remove_distdir)
dist-xz: distdir
- tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
- $(am__remove_distdir)
+ tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
+ $(am__post_remove_distdir)
dist-tarZ: distdir
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__remove_distdir)
+ $(am__post_remove_distdir)
dist-shar: distdir
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__remove_distdir)
+ $(am__post_remove_distdir)
dist-zip: distdir
-rm -f $(distdir).zip
zip -rq $(distdir).zip $(distdir)
- $(am__remove_distdir)
+ $(am__post_remove_distdir)
-dist dist-all: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
- $(am__remove_distdir)
+dist dist-all:
+ $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
+ $(am__post_remove_distdir)
# This target untars the dist file and tries a VPATH configuration. Then
# it guarantees that the distribution is self-contained by making another
@@ -636,8 +696,8 @@ distcheck: dist
GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.lzma*) \
- lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
+ *.tar.lz*) \
+ lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
*.tar.xz*) \
xz -dc $(distdir).tar.xz | $(am__untar) ;;\
*.tar.Z*) \
@@ -647,9 +707,9 @@ distcheck: dist
*.zip*) \
unzip $(distdir).zip ;;\
esac
- chmod -R a-w $(distdir); chmod a+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
+ chmod -R a-w $(distdir)
+ chmod u+w $(distdir)
+ mkdir $(distdir)/_build $(distdir)/_inst
chmod a-w $(distdir)
test -d $(distdir)/_build || exit 0; \
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
@@ -657,6 +717,7 @@ distcheck: dist
&& am__cwd=`pwd` \
&& $(am__cd) $(distdir)/_build \
&& ../configure --srcdir=.. --prefix="$$dc_install_base" \
+ $(AM_DISTCHECK_CONFIGURE_FLAGS) \
$(DISTCHECK_CONFIGURE_FLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
@@ -680,13 +741,21 @@ distcheck: dist
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
&& cd "$$am__cwd" \
|| exit 1
- $(am__remove_distdir)
+ $(am__post_remove_distdir)
@(echo "$(distdir) archives ready for distribution: "; \
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
distuninstallcheck:
- @$(am__cd) '$(distuninstallcheck_dir)' \
- && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
+ @test -n '$(distuninstallcheck_dir)' || { \
+ echo 'ERROR: trying to run $@ with an empty' \
+ '$$(distuninstallcheck_dir)' >&2; \
+ exit 1; \
+ }; \
+ $(am__cd) '$(distuninstallcheck_dir)' || { \
+ echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
+ exit 1; \
+ }; \
+ test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
|| { echo "ERROR: files left after uninstall:" ; \
if test -n "$(DESTDIR)"; then \
echo " (check DESTDIR support)"; \
@@ -717,10 +786,15 @@ install-am: all-am
installcheck: installcheck-recursive
install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
mostlyclean-generic:
clean-generic:
@@ -802,24 +876,24 @@ ps-am:
uninstall-am:
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \
- ctags-recursive install-am install-strip tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
- all all-am am--refresh check check-am clean clean-generic \
- clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
- dist-gzip dist-lzma dist-shar dist-tarZ dist-xz dist-zip \
- distcheck distclean distclean-generic distclean-hdr \
- distclean-libtool distclean-tags distcleancheck distdir \
- distuninstallcheck dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- installdirs-am maintainer-clean maintainer-clean-generic \
- mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
- ps ps-am tags tags-recursive uninstall uninstall-am
+.MAKE: $(am__recursive_targets) all install-am install-strip
+
+.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
+ am--refresh check check-am clean clean-cscope clean-generic \
+ clean-libtool cscope cscopelist-am ctags ctags-am dist \
+ dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \
+ dist-xz dist-zip distcheck distclean distclean-generic \
+ distclean-hdr distclean-libtool distclean-tags distcleancheck \
+ distdir distuninstallcheck dvi dvi-am html html-am info \
+ info-am install install-am install-data install-data-am \
+ install-dvi install-dvi-am install-exec install-exec-am \
+ install-html install-html-am install-info install-info-am \
+ install-man install-pdf install-pdf-am install-ps \
+ install-ps-am install-strip installcheck installcheck-am \
+ installdirs installdirs-am maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
+ uninstall-am
rpm: dist-bzip2 $(PACKAGE).spec
@@ -875,7 +949,7 @@ sdl testsdl test-sdl install-sdl :
check-test0 check-test1 check-zzdir check-zzcat \
check-zzxor check-zzxordir check-zzxorcat \
-check-sfx check-readme : \
+check-sfx check-readme check-tests tests:
(cd test && $(MAKE) `basename $@`)
# ------------------------------------------------------------------------
diff --git a/Build/source/libs/zziplib/zziplib-src/SDL/Makefile.in b/Build/source/libs/zziplib/zziplib-src/SDL/Makefile.in
index 8239e31db4f..d2145f9b945 100644
--- a/Build/source/libs/zziplib/zziplib-src/SDL/Makefile.in
+++ b/Build/source/libs/zziplib/zziplib-src/SDL/Makefile.in
@@ -1,9 +1,8 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -17,6 +16,51 @@
VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -38,8 +82,9 @@ host_triplet = @host@
target_triplet = @target@
check_PROGRAMS = zzcatsdl$(EXEEXT)
subdir = SDL
-DIST_COMMON = $(pkgconfig_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/uses/mkinstalldirs $(top_srcdir)/uses/depcomp \
+ $(pkgconfig_HEADERS)
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/ac_compile_check_sizeof.m4 \
$(top_srcdir)/m4/ac_set_default_paths_system.m4 \
@@ -52,7 +97,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ac_compile_check_sizeof.m4 \
$(top_srcdir)/m4/ax_check_aligned_access_required.m4 \
$(top_srcdir)/m4/ax_configure_args.m4 \
$(top_srcdir)/m4/ax_create_pkgconfig_info.m4 \
- $(top_srcdir)/m4/ax_enable_builddir_uname.m4 \
+ $(top_srcdir)/m4/ax_enable_builddir.m4 \
$(top_srcdir)/m4/ax_expand_prefix.m4 \
$(top_srcdir)/m4/ax_maintainer_mode_auto_silent.m4 \
$(top_srcdir)/m4/ax_not_enable_frame_pointer.m4 \
@@ -80,21 +125,51 @@ am_zzcatsdl_OBJECTS = SDL_rwops_zzcat.$(OBJEXT) \
SDL_rwops_zzip.$(OBJEXT)
zzcatsdl_OBJECTS = $(am_zzcatsdl_OBJECTS)
zzcatsdl_LDADD = $(LDADD)
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+am__v_GEN_1 =
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/uses/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo " CC " $@;
+am__v_CC_1 =
CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo " CCLD " $@;
+am__v_CCLD_1 =
SOURCES = $(zzcatsdl_SOURCES)
DIST_SOURCES = $(zzcatsdl_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
@@ -116,15 +191,39 @@ am__nobase_list = $(am__nobase_strip_setup); \
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+ test -z "$$files" \
+ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+ $(am__cd) "$$dir" && rm -f $$files; }; \
+ }
am__installdirs = "$(DESTDIR)$(zzipsdldir)" \
"$(DESTDIR)$(pkgconfigdir)"
DATA = $(zzipsdl_DATA)
HEADERS = $(pkgconfig_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AS = @AS@
AUTOCONF = @AUTOCONF@
@@ -328,9 +427,10 @@ clean-checkPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
-zzcatsdl$(EXEEXT): $(zzcatsdl_OBJECTS) $(zzcatsdl_DEPENDENCIES)
+
+zzcatsdl$(EXEEXT): $(zzcatsdl_OBJECTS) $(zzcatsdl_DEPENDENCIES) $(EXTRA_zzcatsdl_DEPENDENCIES)
@rm -f zzcatsdl$(EXEEXT)
- $(LINK) $(zzcatsdl_OBJECTS) $(zzcatsdl_LDADD) $(LIBS)
+ $(AM_V_CCLD)$(LINK) $(zzcatsdl_OBJECTS) $(zzcatsdl_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
@@ -342,25 +442,25 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SDL_rwops_zzip.Po@am__quote@
.c.o:
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
.c.obj:
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
.c.lo:
-@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
mostlyclean-libtool:
-rm -f *.lo
@@ -369,8 +469,11 @@ clean-libtool:
-rm -rf .libs _libs
install-zzipsdlDATA: $(zzipsdl_DATA)
@$(NORMAL_INSTALL)
- test -z "$(zzipsdldir)" || $(MKDIR_P) "$(DESTDIR)$(zzipsdldir)"
@list='$(zzipsdl_DATA)'; test -n "$(zzipsdldir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(zzipsdldir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(zzipsdldir)" || exit 1; \
+ fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
@@ -384,13 +487,14 @@ uninstall-zzipsdlDATA:
@$(NORMAL_UNINSTALL)
@list='$(zzipsdl_DATA)'; test -n "$(zzipsdldir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- test -n "$$files" || exit 0; \
- echo " ( cd '$(DESTDIR)$(zzipsdldir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(zzipsdldir)" && rm -f $$files
+ dir='$(DESTDIR)$(zzipsdldir)'; $(am__uninstall_files_from_dir)
install-pkgconfigHEADERS: $(pkgconfig_HEADERS)
@$(NORMAL_INSTALL)
- test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)"
@list='$(pkgconfig_HEADERS)'; test -n "$(pkgconfigdir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(pkgconfigdir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" || exit 1; \
+ fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
@@ -404,30 +508,17 @@ uninstall-pkgconfigHEADERS:
@$(NORMAL_UNINSTALL)
@list='$(pkgconfig_HEADERS)'; test -n "$(pkgconfigdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- test -n "$$files" || exit 0; \
- echo " ( cd '$(DESTDIR)$(pkgconfigdir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(pkgconfigdir)" && rm -f $$files
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ dir='$(DESTDIR)$(pkgconfigdir)'; $(am__uninstall_files_from_dir)
+
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -439,15 +530,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -456,6 +543,21 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -508,10 +610,15 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
mostlyclean-generic:
clean-generic:
@@ -597,9 +704,9 @@ uninstall-am: uninstall-pkgconfigHEADERS uninstall-zzipsdlDATA
.MAKE: check-am install-am install-strip
-.PHONY: CTAGS GTAGS all all-am check check-am clean \
- clean-checkPROGRAMS clean-generic clean-libtool ctags \
- distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \
+ clean-checkPROGRAMS clean-generic clean-libtool cscopelist-am \
+ ctags ctags-am distclean distclean-compile distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-dvi install-dvi-am install-exec \
@@ -609,7 +716,7 @@ uninstall-am: uninstall-pkgconfigHEADERS uninstall-zzipsdlDATA
install-strip install-zzipsdlDATA installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
uninstall-am uninstall-pkgconfigHEADERS uninstall-zzipsdlDATA
diff --git a/Build/source/libs/zziplib/zziplib-src/SDL/SDL_rwops_zzip.c b/Build/source/libs/zziplib/zziplib-src/SDL/SDL_rwops_zzip.c
deleted file mode 100644
index b273a811470..00000000000
--- a/Build/source/libs/zziplib/zziplib-src/SDL/SDL_rwops_zzip.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (c) 2001 Guido Draheim <guidod@gmx.de>
- * Use freely under the restrictions of the ZLIB License
- *
- * (this example uses errno which might not be multithreaded everywhere)
- */
-
-#include <SDL_rwops_zzip.h>
-#include <zzip/zzip.h>
-#include <string.h> /* strchr */
-
-/* MSVC can not take a casted variable as an lvalue ! */
-#define SDL_RWOPS_ZZIP_DATA(_context) \
- ((_context)->hidden.unknown.data1)
-#define SDL_RWOPS_ZZIP_FILE(_context) (ZZIP_FILE*) \
- ((_context)->hidden.unknown.data1)
-
-static int _zzip_seek(SDL_RWops *context, int offset, int whence)
-{
- return zzip_seek(SDL_RWOPS_ZZIP_FILE(context), offset, whence);
-}
-
-static int _zzip_read(SDL_RWops *context, void *ptr, int size, int maxnum)
-{
- return zzip_read(SDL_RWOPS_ZZIP_FILE(context), ptr, size*maxnum) / size;
-}
-
-static int _zzip_write(SDL_RWops *context, const void *ptr, int size, int num)
-{
- return 0; /* ignored */
-}
-
-static int _zzip_close(SDL_RWops *context)
-{
- if (! context) return 0; /* may be SDL_RWclose is called by atexit */
-
- zzip_close (SDL_RWOPS_ZZIP_FILE(context));
- SDL_FreeRW (context);
- return 0;
-}
-
-SDL_RWops *SDL_RWFromZZIP(const char* file, const char* mode)
-{
- register SDL_RWops* rwops;
- register ZZIP_FILE* zzip_file;
-
- if (! strchr (mode, 'r'))
- return SDL_RWFromFile(file, mode);
-
- zzip_file = zzip_fopen (file, mode);
- if (! zzip_file) return 0;
-
- rwops = SDL_AllocRW ();
- if (! rwops) { errno=ENOMEM; zzip_close (zzip_file); return 0; }
-
- SDL_RWOPS_ZZIP_DATA(rwops) = zzip_file;
- rwops->read = _zzip_read;
- rwops->write = _zzip_write;
- rwops->seek = _zzip_seek;
- rwops->close = _zzip_close;
- return rwops;
-}
diff --git a/Build/source/libs/zziplib/zziplib-src/SDL/zzip-sdl-config.pc b/Build/source/libs/zziplib/zziplib-src/SDL/zzip-sdl-config.pc
new file mode 100644
index 00000000000..46a06a97c58
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/SDL/zzip-sdl-config.pc
@@ -0,0 +1,10 @@
+prefix=/usr
+sdl_static_libs=-L/usr/lib -lSDL -lpthread -lm -ldl -lasound -laudio -lXt -L/usr/X11R6/lib -lX11 -lXext
+sdl_libs=-L/usr/lib -lSDL -lpthread
+sdl_cflags=-I/usr/include/SDL -D_REENTRANT
+
+Name: zzip-sdl-config
+Version: 1.2.5
+Description: SDL Config (for ZZipLib)
+Libs: ${sdl_libs}
+Cflags: ${sdl_cflags}
diff --git a/Build/source/libs/zziplib/zziplib-src/SDL/zzip-sdl-rwops.pc b/Build/source/libs/zziplib/zziplib-src/SDL/zzip-sdl-rwops.pc
new file mode 100644
index 00000000000..6a4b1d04377
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/SDL/zzip-sdl-rwops.pc
@@ -0,0 +1,8 @@
+zzipdatadir=/usr/local/share/zziplib
+zzipsdlrwops=${zzipdatadir}/SDL
+
+Name: zzip-sdl-rwops
+Version: 0.13.24
+Description: SDL_rwops for ZZipLib
+Requires: zzip-sdl-config, zziplib
+Cflags: -I${zzipsdlrwops}
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/Makefile.am b/Build/source/libs/zziplib/zziplib-src/bins/Makefile.am
index a65b939f0ca..f88c52b4269 100644
--- a/Build/source/libs/zziplib/zziplib-src/bins/Makefile.am
+++ b/Build/source/libs/zziplib/zziplib-src/bins/Makefile.am
@@ -4,8 +4,7 @@ DEFAULT_INCLUDES = # nothing - no default of -I. -I$(srcdir)
DEFS = @DEFS@ -I$(top_builddir) -I$(top_srcdir) # also for automake 1.4
bin_PROGRAMS = zzcat zzdir zzxorcat zzxordir zzxorcopy \
- unzzip unzzipdir unzzipcat unzzipcat-seeko \
- unzzipdir-mem unzzipcat-mem unzip-mem
+ unzzip unzzip-mix unzzip-mem unzzip-big unzip-mem
noinst_PROGRAMS = zziptest zzobfuscated zzip
aclocaldir = $(datadir)/aclocal
aclocal_DATA = zziplib.m4
@@ -17,10 +16,9 @@ THREAD_SAFE=@THREAD_SAFE@
WCC10_CLEAN = *.obj *.lk1 *.mk1 *.mk *.sym *.tgt
-EXTRA_DIST = $(aclocal_DATA)
+EXTRA_DIST = $(aclocal_DATA) unzzip.h
CLEANFILES = $(WCC10_CLEAN)
-unzzip_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
zzip_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
zziptest_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
zzcat_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
@@ -29,14 +27,16 @@ zzxorcat_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
zzxordir_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
zzobfuscated_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
-# these use the simplified mmapped disk version
-unzzipdir_LDADD = ../zzip/libzzipmmapped.la @RESOLVES@ -lz
-unzzipcat_LDADD = ../zzip/libzzipmmapped.la @RESOLVES@ -lz
-unzzipdir_mem_LDADD = ../zzip/libzzipmmapped.la @RESOLVES@ -lz
-unzzipcat_mem_LDADD = ../zzip/libzzipmmapped.la @RESOLVES@ -lz
+unzzip_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
+unzzip_SOURCES = unzzip.c unzzipcat-zip.c unzzipdir-zip.c
+unzzip_mix_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
+unzzip_mix_SOURCES = unzzip.c unzzipcat-mix.c unzzipdir-mix.c
+unzzip_mem_LDADD = ../zzip/libzzipmmapped.la @RESOLVES@ -lz
+unzzip_mem_SOURCES = unzzip.c unzzipcat-mem.c unzzipdir-mem.c
+unzzip_big_LDADD = ../zzip/libzzipfseeko.la @RESOLVES@ -lz
+unzzip_big_SOURCES = unzzip.c unzzipcat-big.c unzzipdir-big.c
+
unzip_mem_LDADD = ../zzip/libzzipmmapped.la @RESOLVES@ -lz
-# and this uses the simplified fseeko stdio version
-unzzipcat_seeko_LDADD = ../zzip/libzzipfseeko.la @RESOLVES@ -lz
../zzip/libzzip.la : @top_srcdir@/zzip/*.c
(cd ../zzip && $(MAKE) `basename $@`)
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/Makefile.in b/Build/source/libs/zziplib/zziplib-src/bins/Makefile.in
index 8c17c16ea41..a2ce8069dce 100644
--- a/Build/source/libs/zziplib/zziplib-src/bins/Makefile.in
+++ b/Build/source/libs/zziplib/zziplib-src/bins/Makefile.in
@@ -1,9 +1,8 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -17,6 +16,51 @@
VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -38,13 +82,13 @@ host_triplet = @host@
target_triplet = @target@
bin_PROGRAMS = zzcat$(EXEEXT) zzdir$(EXEEXT) zzxorcat$(EXEEXT) \
zzxordir$(EXEEXT) zzxorcopy$(EXEEXT) unzzip$(EXEEXT) \
- unzzipdir$(EXEEXT) unzzipcat$(EXEEXT) unzzipcat-seeko$(EXEEXT) \
- unzzipdir-mem$(EXEEXT) unzzipcat-mem$(EXEEXT) \
+ unzzip-mix$(EXEEXT) unzzip-mem$(EXEEXT) unzzip-big$(EXEEXT) \
unzip-mem$(EXEEXT)
noinst_PROGRAMS = zziptest$(EXEEXT) zzobfuscated$(EXEEXT) \
zzip$(EXEEXT)
subdir = bins
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/uses/mkinstalldirs $(top_srcdir)/uses/depcomp
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/ac_compile_check_sizeof.m4 \
$(top_srcdir)/m4/ac_set_default_paths_system.m4 \
@@ -57,7 +101,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ac_compile_check_sizeof.m4 \
$(top_srcdir)/m4/ax_check_aligned_access_required.m4 \
$(top_srcdir)/m4/ax_configure_args.m4 \
$(top_srcdir)/m4/ax_create_pkgconfig_info.m4 \
- $(top_srcdir)/m4/ax_enable_builddir_uname.m4 \
+ $(top_srcdir)/m4/ax_enable_builddir.m4 \
$(top_srcdir)/m4/ax_expand_prefix.m4 \
$(top_srcdir)/m4/ax_maintainer_mode_auto_silent.m4 \
$(top_srcdir)/m4/ax_not_enable_frame_pointer.m4 \
@@ -86,24 +130,26 @@ PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS)
unzip_mem_SOURCES = unzip-mem.c
unzip_mem_OBJECTS = unzip-mem.$(OBJEXT)
unzip_mem_DEPENDENCIES = ../zzip/libzzipmmapped.la
-unzzip_SOURCES = unzzip.c
-unzzip_OBJECTS = unzzip.$(OBJEXT)
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
+am_unzzip_OBJECTS = unzzip.$(OBJEXT) unzzipcat-zip.$(OBJEXT) \
+ unzzipdir-zip.$(OBJEXT)
+unzzip_OBJECTS = $(am_unzzip_OBJECTS)
unzzip_DEPENDENCIES = ../zzip/libzzip.la
-unzzipcat_SOURCES = unzzipcat.c
-unzzipcat_OBJECTS = unzzipcat.$(OBJEXT)
-unzzipcat_DEPENDENCIES = ../zzip/libzzipmmapped.la
-unzzipcat_mem_SOURCES = unzzipcat-mem.c
-unzzipcat_mem_OBJECTS = unzzipcat-mem.$(OBJEXT)
-unzzipcat_mem_DEPENDENCIES = ../zzip/libzzipmmapped.la
-unzzipcat_seeko_SOURCES = unzzipcat-seeko.c
-unzzipcat_seeko_OBJECTS = unzzipcat-seeko.$(OBJEXT)
-unzzipcat_seeko_DEPENDENCIES = ../zzip/libzzipfseeko.la
-unzzipdir_SOURCES = unzzipdir.c
-unzzipdir_OBJECTS = unzzipdir.$(OBJEXT)
-unzzipdir_DEPENDENCIES = ../zzip/libzzipmmapped.la
-unzzipdir_mem_SOURCES = unzzipdir-mem.c
-unzzipdir_mem_OBJECTS = unzzipdir-mem.$(OBJEXT)
-unzzipdir_mem_DEPENDENCIES = ../zzip/libzzipmmapped.la
+am_unzzip_big_OBJECTS = unzzip.$(OBJEXT) unzzipcat-big.$(OBJEXT) \
+ unzzipdir-big.$(OBJEXT)
+unzzip_big_OBJECTS = $(am_unzzip_big_OBJECTS)
+unzzip_big_DEPENDENCIES = ../zzip/libzzipfseeko.la
+am_unzzip_mem_OBJECTS = unzzip.$(OBJEXT) unzzipcat-mem.$(OBJEXT) \
+ unzzipdir-mem.$(OBJEXT)
+unzzip_mem_OBJECTS = $(am_unzzip_mem_OBJECTS)
+unzzip_mem_DEPENDENCIES = ../zzip/libzzipmmapped.la
+am_unzzip_mix_OBJECTS = unzzip.$(OBJEXT) unzzipcat-mix.$(OBJEXT) \
+ unzzipdir-mix.$(OBJEXT)
+unzzip_mix_OBJECTS = $(am_unzzip_mix_OBJECTS)
+unzzip_mix_DEPENDENCIES = ../zzip/libzzip.la
zzcat_SOURCES = zzcat.c
zzcat_OBJECTS = zzcat.$(OBJEXT)
zzcat_DEPENDENCIES = ../zzip/libzzip.la
@@ -128,26 +174,52 @@ zzxorcopy_LDADD = $(LDADD)
zzxordir_SOURCES = zzxordir.c
zzxordir_OBJECTS = zzxordir.$(OBJEXT)
zzxordir_DEPENDENCIES = ../zzip/libzzip.la
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+am__v_GEN_1 =
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 =
depcomp = $(SHELL) $(top_srcdir)/uses/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo " CC " $@;
+am__v_CC_1 =
CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
-SOURCES = unzip-mem.c unzzip.c unzzipcat.c unzzipcat-mem.c \
- unzzipcat-seeko.c unzzipdir.c unzzipdir-mem.c zzcat.c zzdir.c \
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo " CCLD " $@;
+am__v_CCLD_1 =
+SOURCES = unzip-mem.c $(unzzip_SOURCES) $(unzzip_big_SOURCES) \
+ $(unzzip_mem_SOURCES) $(unzzip_mix_SOURCES) zzcat.c zzdir.c \
zzip.c zziptest.c zzobfuscated.c zzxorcat.c zzxorcopy.c \
zzxordir.c
-DIST_SOURCES = unzip-mem.c unzzip.c unzzipcat.c unzzipcat-mem.c \
- unzzipcat-seeko.c unzzipdir.c unzzipdir-mem.c zzcat.c zzdir.c \
+DIST_SOURCES = unzip-mem.c $(unzzip_SOURCES) $(unzzip_big_SOURCES) \
+ $(unzzip_mem_SOURCES) $(unzzip_mix_SOURCES) zzcat.c zzdir.c \
zzip.c zziptest.c zzobfuscated.c zzxorcat.c zzxorcopy.c \
zzxordir.c
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
@@ -169,12 +241,36 @@ am__nobase_list = $(am__nobase_strip_setup); \
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+ test -z "$$files" \
+ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+ $(am__cd) "$$dir" && rm -f $$files; }; \
+ }
DATA = $(aclocal_DATA)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AS = @AS@
AUTOCONF = @AUTOCONF@
@@ -327,9 +423,8 @@ DEFAULT_INCLUDES = # nothing - no default of -I. -I$(srcdir)
aclocal_DATA = zziplib.m4
#
WCC10_CLEAN = *.obj *.lk1 *.mk1 *.mk *.sym *.tgt
-EXTRA_DIST = $(aclocal_DATA)
+EXTRA_DIST = $(aclocal_DATA) unzzip.h
CLEANFILES = $(WCC10_CLEAN)
-unzzip_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
zzip_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
zziptest_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
zzcat_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
@@ -337,15 +432,15 @@ zzdir_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
zzxorcat_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
zzxordir_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
zzobfuscated_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
-
-# these use the simplified mmapped disk version
-unzzipdir_LDADD = ../zzip/libzzipmmapped.la @RESOLVES@ -lz
-unzzipcat_LDADD = ../zzip/libzzipmmapped.la @RESOLVES@ -lz
-unzzipdir_mem_LDADD = ../zzip/libzzipmmapped.la @RESOLVES@ -lz
-unzzipcat_mem_LDADD = ../zzip/libzzipmmapped.la @RESOLVES@ -lz
+unzzip_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
+unzzip_SOURCES = unzzip.c unzzipcat-zip.c unzzipdir-zip.c
+unzzip_mix_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
+unzzip_mix_SOURCES = unzzip.c unzzipcat-mix.c unzzipdir-mix.c
+unzzip_mem_LDADD = ../zzip/libzzipmmapped.la @RESOLVES@ -lz
+unzzip_mem_SOURCES = unzzip.c unzzipcat-mem.c unzzipdir-mem.c
+unzzip_big_LDADD = ../zzip/libzzipfseeko.la @RESOLVES@ -lz
+unzzip_big_SOURCES = unzzip.c unzzipcat-big.c unzzipdir-big.c
unzip_mem_LDADD = ../zzip/libzzipmmapped.la @RESOLVES@ -lz
-# and this uses the simplified fseeko stdio version
-unzzipcat_seeko_LDADD = ../zzip/libzzipfseeko.la @RESOLVES@ -lz
all: all-am
.SUFFIXES:
@@ -382,14 +477,19 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+ fi; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
- while read p p1; do if test -f $$p || test -f $$p1; \
- then echo "$$p"; echo "$$p"; else :; fi; \
+ while read p p1; do if test -f $$p \
+ || test -f $$p1 \
+ ; then echo "$$p"; echo "$$p"; else :; fi; \
done | \
- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+ sed -e 'p;s,.*/,,;n;h' \
+ -e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -410,7 +510,8 @@ uninstall-binPROGRAMS:
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
- -e 's/$$/$(EXEEXT)/' `; \
+ -e 's/$$/$(EXEEXT)/' \
+ `; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -432,51 +533,58 @@ clean-noinstPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
-unzip-mem$(EXEEXT): $(unzip_mem_OBJECTS) $(unzip_mem_DEPENDENCIES)
+
+unzip-mem$(EXEEXT): $(unzip_mem_OBJECTS) $(unzip_mem_DEPENDENCIES) $(EXTRA_unzip_mem_DEPENDENCIES)
@rm -f unzip-mem$(EXEEXT)
- $(LINK) $(unzip_mem_OBJECTS) $(unzip_mem_LDADD) $(LIBS)
-unzzip$(EXEEXT): $(unzzip_OBJECTS) $(unzzip_DEPENDENCIES)
+ $(AM_V_CCLD)$(LINK) $(unzip_mem_OBJECTS) $(unzip_mem_LDADD) $(LIBS)
+
+unzzip$(EXEEXT): $(unzzip_OBJECTS) $(unzzip_DEPENDENCIES) $(EXTRA_unzzip_DEPENDENCIES)
@rm -f unzzip$(EXEEXT)
- $(LINK) $(unzzip_OBJECTS) $(unzzip_LDADD) $(LIBS)
-unzzipcat$(EXEEXT): $(unzzipcat_OBJECTS) $(unzzipcat_DEPENDENCIES)
- @rm -f unzzipcat$(EXEEXT)
- $(LINK) $(unzzipcat_OBJECTS) $(unzzipcat_LDADD) $(LIBS)
-unzzipcat-mem$(EXEEXT): $(unzzipcat_mem_OBJECTS) $(unzzipcat_mem_DEPENDENCIES)
- @rm -f unzzipcat-mem$(EXEEXT)
- $(LINK) $(unzzipcat_mem_OBJECTS) $(unzzipcat_mem_LDADD) $(LIBS)
-unzzipcat-seeko$(EXEEXT): $(unzzipcat_seeko_OBJECTS) $(unzzipcat_seeko_DEPENDENCIES)
- @rm -f unzzipcat-seeko$(EXEEXT)
- $(LINK) $(unzzipcat_seeko_OBJECTS) $(unzzipcat_seeko_LDADD) $(LIBS)
-unzzipdir$(EXEEXT): $(unzzipdir_OBJECTS) $(unzzipdir_DEPENDENCIES)
- @rm -f unzzipdir$(EXEEXT)
- $(LINK) $(unzzipdir_OBJECTS) $(unzzipdir_LDADD) $(LIBS)
-unzzipdir-mem$(EXEEXT): $(unzzipdir_mem_OBJECTS) $(unzzipdir_mem_DEPENDENCIES)
- @rm -f unzzipdir-mem$(EXEEXT)
- $(LINK) $(unzzipdir_mem_OBJECTS) $(unzzipdir_mem_LDADD) $(LIBS)
-zzcat$(EXEEXT): $(zzcat_OBJECTS) $(zzcat_DEPENDENCIES)
+ $(AM_V_CCLD)$(LINK) $(unzzip_OBJECTS) $(unzzip_LDADD) $(LIBS)
+
+unzzip-big$(EXEEXT): $(unzzip_big_OBJECTS) $(unzzip_big_DEPENDENCIES) $(EXTRA_unzzip_big_DEPENDENCIES)
+ @rm -f unzzip-big$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(unzzip_big_OBJECTS) $(unzzip_big_LDADD) $(LIBS)
+
+unzzip-mem$(EXEEXT): $(unzzip_mem_OBJECTS) $(unzzip_mem_DEPENDENCIES) $(EXTRA_unzzip_mem_DEPENDENCIES)
+ @rm -f unzzip-mem$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(unzzip_mem_OBJECTS) $(unzzip_mem_LDADD) $(LIBS)
+
+unzzip-mix$(EXEEXT): $(unzzip_mix_OBJECTS) $(unzzip_mix_DEPENDENCIES) $(EXTRA_unzzip_mix_DEPENDENCIES)
+ @rm -f unzzip-mix$(EXEEXT)
+ $(AM_V_CCLD)$(LINK) $(unzzip_mix_OBJECTS) $(unzzip_mix_LDADD) $(LIBS)
+
+zzcat$(EXEEXT): $(zzcat_OBJECTS) $(zzcat_DEPENDENCIES) $(EXTRA_zzcat_DEPENDENCIES)
@rm -f zzcat$(EXEEXT)
- $(LINK) $(zzcat_OBJECTS) $(zzcat_LDADD) $(LIBS)
-zzdir$(EXEEXT): $(zzdir_OBJECTS) $(zzdir_DEPENDENCIES)
+ $(AM_V_CCLD)$(LINK) $(zzcat_OBJECTS) $(zzcat_LDADD) $(LIBS)
+
+zzdir$(EXEEXT): $(zzdir_OBJECTS) $(zzdir_DEPENDENCIES) $(EXTRA_zzdir_DEPENDENCIES)
@rm -f zzdir$(EXEEXT)
- $(LINK) $(zzdir_OBJECTS) $(zzdir_LDADD) $(LIBS)
-zzip$(EXEEXT): $(zzip_OBJECTS) $(zzip_DEPENDENCIES)
+ $(AM_V_CCLD)$(LINK) $(zzdir_OBJECTS) $(zzdir_LDADD) $(LIBS)
+
+zzip$(EXEEXT): $(zzip_OBJECTS) $(zzip_DEPENDENCIES) $(EXTRA_zzip_DEPENDENCIES)
@rm -f zzip$(EXEEXT)
- $(LINK) $(zzip_OBJECTS) $(zzip_LDADD) $(LIBS)
-zziptest$(EXEEXT): $(zziptest_OBJECTS) $(zziptest_DEPENDENCIES)
+ $(AM_V_CCLD)$(LINK) $(zzip_OBJECTS) $(zzip_LDADD) $(LIBS)
+
+zziptest$(EXEEXT): $(zziptest_OBJECTS) $(zziptest_DEPENDENCIES) $(EXTRA_zziptest_DEPENDENCIES)
@rm -f zziptest$(EXEEXT)
- $(LINK) $(zziptest_OBJECTS) $(zziptest_LDADD) $(LIBS)
-zzobfuscated$(EXEEXT): $(zzobfuscated_OBJECTS) $(zzobfuscated_DEPENDENCIES)
+ $(AM_V_CCLD)$(LINK) $(zziptest_OBJECTS) $(zziptest_LDADD) $(LIBS)
+
+zzobfuscated$(EXEEXT): $(zzobfuscated_OBJECTS) $(zzobfuscated_DEPENDENCIES) $(EXTRA_zzobfuscated_DEPENDENCIES)
@rm -f zzobfuscated$(EXEEXT)
- $(LINK) $(zzobfuscated_OBJECTS) $(zzobfuscated_LDADD) $(LIBS)
-zzxorcat$(EXEEXT): $(zzxorcat_OBJECTS) $(zzxorcat_DEPENDENCIES)
+ $(AM_V_CCLD)$(LINK) $(zzobfuscated_OBJECTS) $(zzobfuscated_LDADD) $(LIBS)
+
+zzxorcat$(EXEEXT): $(zzxorcat_OBJECTS) $(zzxorcat_DEPENDENCIES) $(EXTRA_zzxorcat_DEPENDENCIES)
@rm -f zzxorcat$(EXEEXT)
- $(LINK) $(zzxorcat_OBJECTS) $(zzxorcat_LDADD) $(LIBS)
-zzxorcopy$(EXEEXT): $(zzxorcopy_OBJECTS) $(zzxorcopy_DEPENDENCIES)
+ $(AM_V_CCLD)$(LINK) $(zzxorcat_OBJECTS) $(zzxorcat_LDADD) $(LIBS)
+
+zzxorcopy$(EXEEXT): $(zzxorcopy_OBJECTS) $(zzxorcopy_DEPENDENCIES) $(EXTRA_zzxorcopy_DEPENDENCIES)
@rm -f zzxorcopy$(EXEEXT)
- $(LINK) $(zzxorcopy_OBJECTS) $(zzxorcopy_LDADD) $(LIBS)
-zzxordir$(EXEEXT): $(zzxordir_OBJECTS) $(zzxordir_DEPENDENCIES)
+ $(AM_V_CCLD)$(LINK) $(zzxorcopy_OBJECTS) $(zzxorcopy_LDADD) $(LIBS)
+
+zzxordir$(EXEEXT): $(zzxordir_OBJECTS) $(zzxordir_DEPENDENCIES) $(EXTRA_zzxordir_DEPENDENCIES)
@rm -f zzxordir$(EXEEXT)
- $(LINK) $(zzxordir_OBJECTS) $(zzxordir_LDADD) $(LIBS)
+ $(AM_V_CCLD)$(LINK) $(zzxordir_OBJECTS) $(zzxordir_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
@@ -486,11 +594,14 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unzip-mem.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unzzip.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unzzipcat-big.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unzzipcat-mem.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unzzipcat-seeko.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unzzipcat.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unzzipcat-mix.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unzzipcat-zip.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unzzipdir-big.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unzzipdir-mem.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unzzipdir.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unzzipdir-mix.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unzzipdir-zip.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zzcat.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zzdir.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zzip.Po@am__quote@
@@ -501,25 +612,25 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zzxordir.Po@am__quote@
.c.o:
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
.c.obj:
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
.c.lo:
-@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
mostlyclean-libtool:
-rm -f *.lo
@@ -528,8 +639,11 @@ clean-libtool:
-rm -rf .libs _libs
install-aclocalDATA: $(aclocal_DATA)
@$(NORMAL_INSTALL)
- test -z "$(aclocaldir)" || $(MKDIR_P) "$(DESTDIR)$(aclocaldir)"
@list='$(aclocal_DATA)'; test -n "$(aclocaldir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(aclocaldir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(aclocaldir)" || exit 1; \
+ fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
@@ -543,30 +657,17 @@ uninstall-aclocalDATA:
@$(NORMAL_UNINSTALL)
@list='$(aclocal_DATA)'; test -n "$(aclocaldir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- test -n "$$files" || exit 0; \
- echo " ( cd '$(DESTDIR)$(aclocaldir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(aclocaldir)" && rm -f $$files
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ dir='$(DESTDIR)$(aclocaldir)'; $(am__uninstall_files_from_dir)
+
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -578,15 +679,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -595,6 +692,21 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -646,10 +758,15 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
mostlyclean-generic:
clean-generic:
@@ -735,20 +852,21 @@ uninstall-am: uninstall-aclocalDATA uninstall-binPROGRAMS
.MAKE: install-am install-strip
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic clean-libtool clean-noinstPROGRAMS ctags \
- distclean distclean-compile distclean-generic \
- distclean-libtool distclean-tags distdir dvi dvi-am html \
- html-am info info-am install install-aclocalDATA install-am \
- install-binPROGRAMS install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
- pdf pdf-am ps ps-am tags uninstall uninstall-aclocalDATA \
- uninstall-am uninstall-binPROGRAMS
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \
+ clean-binPROGRAMS clean-generic clean-libtool \
+ clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \
+ distclean-compile distclean-generic distclean-libtool \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-aclocalDATA install-am install-binPROGRAMS \
+ install-data install-data-am install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ tags tags-am uninstall uninstall-aclocalDATA uninstall-am \
+ uninstall-binPROGRAMS
../zzip/libzzip.la : @top_srcdir@/zzip/*.c
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/unzip-mem.c b/Build/source/libs/zziplib/zziplib-src/bins/unzip-mem.c
index 3f7d7f0631e..2660d3d6f95 100644
--- a/Build/source/libs/zziplib/zziplib-src/bins/unzip-mem.c
+++ b/Build/source/libs/zziplib/zziplib-src/bins/unzip-mem.c
@@ -100,7 +100,7 @@ static void zzip_mem_entry_pipe(ZZIP_MEM_DISK* disk,
static void zzip_mem_entry_make(ZZIP_MEM_DISK* disk,
ZZIP_MEM_ENTRY* entry)
{
- FILE* file = fopen (entry->zz_name, "w");
+ FILE* file = fopen (entry->zz_name, "wb");
if (file) { zzip_mem_entry_pipe (disk, entry, file); fclose (file); }
perror (entry->zz_name);
if (status < EXIT_WARNINGS) status = EXIT_WARNINGS;
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/unzzip.c b/Build/source/libs/zziplib/zziplib-src/bins/unzzip.c
index 94a38f9ebec..90c2f9314dc 100644
--- a/Build/source/libs/zziplib/zziplib-src/bins/unzzip.c
+++ b/Build/source/libs/zziplib/zziplib-src/bins/unzzip.c
@@ -8,24 +8,32 @@
#include <zzip/zzip.h>
#include <stdio.h>
#include <string.h>
+#include "unzzip.h"
-#ifdef ZZIP_HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef ZZIP_HAVE_IO_H
-#include <io.h>
-#endif
-
-#ifndef O_BINARY
-#define O_BINARY 0
-#endif
+extern int unzzip_list(int argc, char** argv);
+extern int unzzip_print(int argc, char** argv);
+extern int unzzip_extract(int argc, char** argv);
static const char usage[] =
{
"unzzip <dir>.. \n"
" - unzzip the files contained in a zip archive.\n"
+ " -p print content of files to pipe\n"
+ " -l list names in archive (short format)\n"
};
+static int unzzip_version(void)
+{
+ printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION"\n");
+ return 0;
+}
+
+static int unzzip_help(void)
+{
+ printf (usage);
+ return 0;
+}
+
int
main (int argc, char ** argv)
{
@@ -35,77 +43,37 @@ main (int argc, char ** argv)
if (argc <= 1 || ! strcmp (argv[1], "--help"))
{
- printf (usage);
- return 0;
+ return unzzip_help();
}
if (! strcmp (argv[1], "--version"))
{
- printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION"\n");
- return 0;
+ return unzzip_version();
}
-
- for (argn=1; argn < argc; argn++)
+ if (! strcmp (argv[1], "-l") || ! strcmp(argv[1], "--list"))
{
- ZZIP_DIR * dir;
- ZZIP_DIRENT d;
-
- dir = zzip_dir_open(argv[argn], &error);
- if (! dir)
- {
- fprintf (stderr, "did not open %s: \n", argv[argn]);
- fprintf (stderr, "%s: %s\n", argv[argn], zzip_strerror(error));
- exitcode++;
- continue;
- }
-
- if (argc > 2) printf ("%s: \n", argv[argn]);
-
- /* read each dir entry and show one line of info per file */
- while (zzip_dir_read (dir, &d))
- {
- int output;
- ZZIP_FILE* input = zzip_file_open (dir, d.d_name, O_RDONLY);
- if (! input)
- {
- fprintf (stderr, "|did not open %s: \n", d.d_name);
- fprintf (stderr, "|%s: %s\n", d.d_name, zzip_strerror_of(dir));
- continue;
- }
-
-#ifdef _WIN32
- output = _open (d.d_name, _O_CREAT | _O_BINARY | _O_RDWR);
-#else
- output = creat (d.d_name, 0664);
-#endif
- if (output == -1)
- {
- fprintf (stderr, "|output file %s: \n", d.d_name);
- perror(d.d_name);
- zzip_file_close (input);
- continue;
- }
-
- printf("%s\n", d.d_name);
-
- {
- char buf[17]; zzip_ssize_t n;
- /* read chunks of 16 bytes into buf */
- while (0 < (n = zzip_read (input, buf, 16)))
- {
- write (output, buf, n);
- }
-
- if (n == -1)
- perror (d.d_name);
- }
- close (output);
- zzip_file_close (input);
- }
+ argc -= 1; argv += 1;
+ return unzzip_list(argc, argv);
+ }
+ if (! strcmp (argv[1], "-v") || ! strcmp(argv[1], "--versions"))
+ {
+ if (argc == 2)
+ return unzzip_version(); /* compatible with info-zip */
+ argc -= 1; argv += 1;
+ return unzzip_list(argc, argv); /* short format here */
+ }
+ if (! strcmp (argv[1], "-p") || ! strcmp(argv[1], "--pipe"))
+ {
+ argc -= 1; argv += 1;
+ return unzzip_print(argc, argv);
+ }
- zzip_dir_close(dir);
+ if (! strcmp (argv[1], "-"))
+ {
+ fprintf(stderr, "unknown option %s", argv[1]);
+ return -1;
}
-
- return exitcode;
+
+ return unzzip_extract(argc, argv);
}
/*
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/unzzip.h b/Build/source/libs/zziplib/zziplib-src/bins/unzzip.h
new file mode 100644
index 00000000000..7f0aec1c267
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/bins/unzzip.h
@@ -0,0 +1,11 @@
+/*
+ * Copyright (c) 2003 Guido Draheim <guidod@gmx.de>
+ * Use freely under the restrictions of the ZLIB license.
+ *
+ * This file is used as an example to clarify zzip api usage.
+ */
+
+extern int unzzip_list(int argc, char** argv);
+extern int unzzip_print(int argc, char** argv);
+extern int unzzip_extract(int argc, char** argv);
+
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-big.c b/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-big.c
new file mode 100644
index 00000000000..c644bc48cfd
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-big.c
@@ -0,0 +1,168 @@
+/*
+ * Copyright (c) 2003 Guido Draheim <guidod@gmx.de>
+ * Use freely under the restrictions of the ZLIB license.
+ *
+ * This file is used as an example to clarify zzipfseeko api usage.
+ */
+
+#include <zzip/fseeko.h>
+#include <stdlib.h>
+#include <string.h>
+#include "unzzip.h"
+
+#ifdef ZZIP_HAVE_FNMATCH_H
+#include <fnmatch.h>
+#else
+#define fnmatch(x,y,z) strcmp(x,y)
+#endif
+
+#ifndef O_BINARY
+#define O_BINARY 0
+#endif
+
+#ifdef DEBUG
+#define debug1(msg) do { fprintf(stderr, "%s : " msg "\n", __func__); } while(0)
+#define debug2(msg, arg1) do { fprintf(stderr, "%s : " msg "\n", __func__, arg1); } while(0)
+#define debug3(msg, arg1, arg2) do { fprintf(stderr, "%s : " msg "\n", __func__, arg1, arg2); } while(0)
+#else
+#define debug1(msg)
+#define debug2(msg, arg1)
+#define debug3(msg, arg1, arg2)
+#endif
+
+static void unzzip_big_entry_fprint(ZZIP_ENTRY* entry, FILE* out)
+{
+ ZZIP_ENTRY_FILE* file = zzip_entry_fopen (entry, 0);
+ if (file)
+ {
+ char buffer[1024]; int len;
+ while ((len = zzip_entry_fread (buffer, 1024, 1, file)))
+ {
+ debug2("entry read %i", len);
+ fwrite (buffer, len, 1, out);
+ }
+ debug2("entry done %s", strerror(errno));
+ zzip_entry_fclose (file);
+ } else
+ {
+ debug2("could not open entry: %s", strerror(errno));
+ }
+}
+
+static void unzzip_cat_file(FILE* disk, char* name, FILE* out)
+{
+ ZZIP_ENTRY_FILE* file = zzip_entry_ffile (disk, name);
+ if (file)
+ {
+ char buffer[1024]; int len;
+ while ((len = zzip_entry_fread (buffer, 1024, 1, file)))
+ fwrite (buffer, len, 1, out);
+
+ zzip_entry_fclose (file);
+ }
+}
+
+#if !defined(HAVE_STRNDUP)
+static char *
+strndup(char *p, size_t maxlen)
+{
+ char *r;
+ if (!p)
+ return 0;
+ r = malloc(maxlen + 1);
+ if (!r)
+ return r;
+ strncpy(r, p, maxlen);
+ r[maxlen] = '\0';
+ return r;
+}
+#endif
+
+static FILE* create_fopen(char* name, char* mode, int subdirs)
+{
+ if (subdirs)
+ {
+ char* p = strrchr(name, '/');
+ if (p) {
+ char* dir_name = strndup(name, p-name);
+ // makedirs(dir_name); // TODO
+ free (dir_name);
+ }
+ }
+ return fopen(name, mode);
+}
+
+
+static int unzzip_cat (int argc, char ** argv, int extract)
+{
+ int argn;
+ FILE* disk;
+
+ disk = fopen (argv[1], "rb");
+ if (! disk) {
+ perror(argv[1]);
+ return -1;
+ }
+
+ if (argc == 2)
+ { /* print directory list */
+ ZZIP_ENTRY* entry = zzip_entry_findfirst(disk);
+ for (; entry ; entry = zzip_entry_findnext(entry))
+ {
+ char* name = zzip_entry_strdup_name (entry);
+ FILE* out = stdout;
+ if (extract) out = create_fopen(name, "wb", 1);
+ unzzip_cat_file (disk, name, out);
+ if (extract) fclose(out);
+ free (name);
+ }
+ return 0;
+ }
+
+ if (argc == 3 && !extract)
+ { /* list from one spec */
+ ZZIP_ENTRY* entry = 0;
+ while ((entry = zzip_entry_findmatch(disk, argv[2], entry, 0, 0)))
+ {
+ unzzip_big_entry_fprint (entry, stdout);
+ }
+ return 0;
+ }
+
+ for (argn=1; argn < argc; argn++)
+ { /* list only the matching entries - each in order of commandline */
+ ZZIP_ENTRY* entry = zzip_entry_findfirst(disk);
+ for (; entry ; entry = zzip_entry_findnext(entry))
+ {
+ char* name = zzip_entry_strdup_name (entry);
+ debug3(".. check '%s' to zip '%s'", argv[argn], name);
+ if (! fnmatch (argv[argn], name,
+ FNM_NOESCAPE|FNM_PATHNAME|FNM_PERIOD))
+ {
+ FILE* out = stdout;
+ if (extract) out = create_fopen(name, "wb", 1);
+ unzzip_cat_file (disk, name, out);
+ if (extract) fclose(out);
+ break; /* match loop */
+ }
+ free (name);
+ }
+ }
+ return 0;
+}
+
+int unzzip_print (int argc, char ** argv)
+{
+ return unzzip_cat(argc, argv, 0);
+}
+
+int unzzip_extract (int argc, char ** argv)
+{
+ return unzzip_cat(argc, argv, 1);
+}
+
+/*
+ * Local variables:
+ * c-file-style: "stroustrup"
+ * End:
+ */
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-mem.c b/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-mem.c
index 7474854187e..152c3d58de5 100644
--- a/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-mem.c
+++ b/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-mem.c
@@ -9,6 +9,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include "unzzip.h"
#ifdef ZZIP_HAVE_UNISTD_H
#include <unistd.h>
@@ -27,13 +28,7 @@
#define O_BINARY 0
#endif
-static const char usage[] =
-{
- "unzzipdir-mem <zip> [names].. \n"
- " - unzzip data content of files contained in a zip archive.\n"
-};
-
-static void zzip_mem_entry_fprint(ZZIP_MEM_DISK* disk,
+static void unzzip_mem_entry_fprint(ZZIP_MEM_DISK* disk,
ZZIP_MEM_ENTRY* entry, FILE* out)
{
ZZIP_DISK_FILE* file = zzip_mem_entry_fopen (disk, entry);
@@ -47,7 +42,7 @@ static void zzip_mem_entry_fprint(ZZIP_MEM_DISK* disk,
}
}
-static void zzip_mem_disk_cat_file(ZZIP_MEM_DISK* disk, char* name, FILE* out)
+static void unzzip_mem_disk_cat_file(ZZIP_MEM_DISK* disk, char* name, FILE* out)
{
ZZIP_DISK_FILE* file = zzip_mem_disk_fopen (disk, name);
if (file)
@@ -62,21 +57,46 @@ static void zzip_mem_disk_cat_file(ZZIP_MEM_DISK* disk, char* name, FILE* out)
}
}
-int
-main (int argc, char ** argv)
+#if !defined(HAVE_STRNDUP)
+static char *
+strndup(char *p, size_t maxlen)
+{
+ char *r;
+ if (!p)
+ return 0;
+ r = malloc(maxlen + 1);
+ if (!r)
+ return r;
+ strncpy(r, p, maxlen);
+ r[maxlen] = '\0';
+ return r;
+}
+#endif
+
+static FILE* create_fopen(char* name, char* mode, int subdirs)
+{
+ if (subdirs)
+ {
+ char* p = strrchr(name, '/');
+ if (p) {
+ char* dir_name = strndup(name, p-name);
+ // makedirs(dir_name); // TODO
+ free (dir_name);
+ }
+ }
+ return fopen(name, mode);
+}
+
+
+static int unzzip_cat (int argc, char ** argv, int extract)
{
int argn;
ZZIP_MEM_DISK* disk;
- if (argc <= 1 || ! strcmp (argv[1], "--help"))
- {
- printf (usage);
- return 0;
- }
- if (! strcmp (argv[1], "--version"))
+ if (argc == 1)
{
printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION"\n");
- return 0;
+ return -1; /* better provide an archive argument */
}
disk = zzip_mem_disk_open (argv[1]);
@@ -88,20 +108,24 @@ main (int argc, char ** argv)
if (argc == 2)
{ /* print directory list */
ZZIP_MEM_ENTRY* entry = zzip_mem_disk_findfirst(disk);
+ fprintf(stderr, "..%p\n", entry);
for (; entry ; entry = zzip_mem_disk_findnext(disk, entry))
{
char* name = zzip_mem_entry_to_name (entry);
- printf ("%s\n", name);
+ FILE* out = stdout;
+ if (extract) out = create_fopen(name, "wb", 1);
+ unzzip_mem_disk_cat_file (disk, name, out);
+ if (extract) fclose(out);
}
return 0;
}
- if (argc == 3)
+ if (argc == 3 && !extract)
{ /* list from one spec */
ZZIP_MEM_ENTRY* entry = 0;
while ((entry = zzip_mem_disk_findmatch(disk, argv[2], entry, 0, 0)))
{
- zzip_mem_entry_fprint (disk, entry, stdout);
+ unzzip_mem_entry_fprint (disk, entry, stdout);
}
return 0;
@@ -115,12 +139,28 @@ main (int argc, char ** argv)
char* name = zzip_mem_entry_to_name (entry);
if (! fnmatch (argv[argn], name,
FNM_NOESCAPE|FNM_PATHNAME|FNM_PERIOD))
- zzip_mem_disk_cat_file (disk, name, stdout);
+ {
+ FILE* out = stdout;
+ if (extract) out = create_fopen(name, "wb", 1);
+ unzzip_mem_disk_cat_file (disk, name, out);
+ if (extract) fclose(out);
+ break; /* match loop */
+ }
}
}
return 0;
}
+int unzzip_print (int argc, char ** argv)
+{
+ return unzzip_cat(argc, argv, 0);
+}
+
+int unzzip_extract (int argc, char ** argv)
+{
+ return unzzip_cat(argc, argv, 1);
+}
+
/*
* Local variables:
* c-file-style: "stroustrup"
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-mix.c b/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-mix.c
new file mode 100644
index 00000000000..2aa4459d2c2
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-mix.c
@@ -0,0 +1,155 @@
+/*
+ * Copyright (c) 2003 Guido Draheim <guidod@gmx.de>
+ * Use freely under the restrictions of the ZLIB license.
+ *
+ * This file is used as an example to clarify zzip api usage.
+ */
+
+#include <zzip/lib.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include "unzzip.h"
+
+#ifdef ZZIP_HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#ifdef ZZIP_HAVE_IO_H
+#include <io.h>
+#endif
+
+#ifdef ZZIP_HAVE_FNMATCH_H
+#include <fnmatch.h>
+#else
+#define fnmatch(x,y,z) strcmp(x,y)
+#endif
+
+#ifndef O_BINARY
+#define O_BINARY 0
+#endif
+
+static void unzzip_cat_file(ZZIP_DIR* disk, char* name, FILE* out)
+{
+ ZZIP_FILE* file = zzip_fopen(name, "rb");
+ if (file)
+ {
+ char buffer[1024]; int len;
+ while ((len = zzip_fread (buffer, 1, 1024, file)))
+ {
+ fwrite (buffer, 1, len, out);
+ }
+
+ zzip_fclose (file);
+ }
+}
+
+#if !defined(HAVE_STRNDUP)
+static char *
+strndup(char *p, size_t maxlen)
+{
+ char *r;
+ if (!p)
+ return 0;
+ r = malloc(maxlen + 1);
+ if (!r)
+ return r;
+ strncpy(r, p, maxlen);
+ r[maxlen] = '\0';
+ return r;
+}
+#endif
+
+static FILE* create_fopen(char* name, char* mode, int subdirs)
+{
+ if (subdirs)
+ {
+ char* p = strrchr(name, '/');
+ if (p) {
+ char* dir_name = strndup(name, p-name);
+ // makedirs(dir_name); // TODO
+ free (dir_name);
+ }
+ }
+ return fopen(name, mode);
+}
+
+
+static int unzzip_cat (int argc, char ** argv, int extract)
+{
+ int argn;
+ ZZIP_DIR* disk;
+
+ if (argc == 1)
+ {
+ printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION"\n");
+ return -1; /* better provide an archive argument */
+ }
+
+ disk = zzip_opendir (argv[1]);
+ if (! disk) {
+ perror(argv[1]);
+ return -1;
+ }
+
+ if (argc == 2)
+ { /* list all */
+ ZZIP_DIRENT* entry = 0;
+ while((entry = zzip_readdir(disk)))
+ {
+ char* name = entry->d_name;
+ FILE* out = stdout;
+ if (extract) out = create_fopen(name, "wb", 1);
+ unzzip_cat_file (disk, name, out);
+ if (extract) fclose(out);
+ }
+ }
+ else
+ { /* list only the matching entries - in order of zip directory */
+ ZZIP_DIRENT* entry = 0;
+ while((entry = zzip_readdir(disk)))
+ {
+ char* name = entry->d_name;
+ for (argn=1; argn < argc; argn++)
+ {
+ if (! fnmatch (argv[argn], name,
+ FNM_NOESCAPE|FNM_PATHNAME|FNM_PERIOD))
+ {
+ FILE* out = stdout;
+ char* zip_name = argv[1];
+ int zip_name_len = strlen(zip_name);
+ int name_len = strlen(name);
+ char* mix_name = malloc(zip_name_len + 2 + name_len);
+ if (zip_name_len > 4 && !strcmp(zip_name+zip_name_len-4, ".zip"))
+ zip_name_len -= 4;
+ memcpy(mix_name, zip_name, zip_name_len);
+ mix_name[zip_name_len] = '/';
+ strcpy(mix_name + zip_name_len + 1, name);
+ if (extract) out = create_fopen(name, "wb", 1);
+ fprintf(stderr, "%s %s -> %s\n", zip_name, name, mix_name);
+ /* 'test1.zip' 'README' -> 'test1/README' */
+ unzzip_cat_file (disk, mix_name, out);
+ if (extract) fclose(out);
+ break; /* match loop */
+ }
+ }
+ }
+ }
+ zzip_closedir(disk);
+ return 0;
+}
+
+int unzzip_print (int argc, char ** argv)
+{
+ return unzzip_cat(argc, argv, 0);
+}
+
+int unzzip_extract (int argc, char ** argv)
+{
+ return unzzip_cat(argc, argv, 1);
+}
+
+/*
+ * Local variables:
+ * c-file-style: "stroustrup"
+ * End:
+ */
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-zip.c b/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-zip.c
new file mode 100644
index 00000000000..c0d465e4e82
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-zip.c
@@ -0,0 +1,145 @@
+/*
+ * Copyright (c) 2003 Guido Draheim <guidod@gmx.de>
+ * Use freely under the restrictions of the ZLIB license.
+ *
+ * This file is used as an example to clarify zzip api usage.
+ */
+
+#include <zzip/lib.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include "unzzip.h"
+
+#ifdef ZZIP_HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#ifdef ZZIP_HAVE_IO_H
+#include <io.h>
+#endif
+
+#ifdef ZZIP_HAVE_FNMATCH_H
+#include <fnmatch.h>
+#else
+#define fnmatch(x,y,z) strcmp(x,y)
+#endif
+
+#ifndef O_BINARY
+#define O_BINARY 0
+#endif
+
+static void unzzip_cat_file(ZZIP_DIR* disk, char* name, FILE* out)
+{
+ ZZIP_FILE* file = zzip_file_open (disk, name, 0);
+ if (file)
+ {
+ char buffer[1024]; int len;
+ while ((len = zzip_file_read (file, buffer, 1024)))
+ {
+ fwrite (buffer, 1, len, out);
+ }
+
+ zzip_file_close (file);
+ }
+}
+
+#if !defined(HAVE_STRNDUP)
+static char *
+strndup(char *p, size_t maxlen)
+{
+ char *r;
+ if (!p)
+ return 0;
+ r = malloc(maxlen + 1);
+ if (!r)
+ return r;
+ strncpy(r, p, maxlen);
+ r[maxlen] = '\0';
+ return r;
+}
+#endif
+
+static FILE* create_fopen(char* name, char* mode, int subdirs)
+{
+ if (subdirs)
+ {
+ char* p = strrchr(name, '/');
+ if (p) {
+ char* dir_name = strndup(name, p-name);
+ // makedirs(dir_name); // TODO
+ free (dir_name);
+ }
+ }
+ return fopen(name, mode);
+}
+
+
+static int unzzip_cat (int argc, char ** argv, int extract)
+{
+ int argn;
+ ZZIP_DIR* disk;
+ zzip_error_t error;
+
+ if (argc == 1)
+ {
+ printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION"\n");
+ return -1; /* better provide an archive argument */
+ }
+
+ disk = zzip_dir_open (argv[1], &error);
+ if (! disk) {
+ perror(argv[1]);
+ return -1;
+ }
+
+ if (argc == 2)
+ { /* list all */
+ ZZIP_DIRENT entry;
+ while(zzip_dir_read(disk, &entry))
+ {
+ char* name = entry.d_name;
+ FILE* out = stdout;
+ if (extract) out = create_fopen(name, "wb", 1);
+ unzzip_cat_file (disk, name, out);
+ if (extract) fclose(out);
+ }
+ }
+ else
+ { /* list only the matching entries - in order of zip directory */
+ ZZIP_DIRENT entry;
+ while(zzip_dir_read(disk, &entry))
+ {
+ char* name = entry.d_name;
+ for (argn=1; argn < argc; argn++)
+ {
+ if (! fnmatch (argv[argn], name,
+ FNM_NOESCAPE|FNM_PATHNAME|FNM_PERIOD))
+ {
+ FILE* out = stdout;
+ if (extract) out = create_fopen(name, "wb", 1);
+ unzzip_cat_file (disk, name, out);
+ if (extract) fclose(out);
+ break; /* match loop */
+ }
+ }
+ }
+ }
+ zzip_dir_close(disk);
+ return 0;
+}
+
+int unzzip_print (int argc, char ** argv)
+{
+ return unzzip_cat(argc, argv, 0);
+}
+
+int unzzip_extract (int argc, char ** argv)
+{
+ return unzzip_cat(argc, argv, 1);
+}
+
+/*
+ * Local variables:
+ * c-file-style: "stroustrup"
+ * End:
+ */
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat.c b/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat.c
deleted file mode 100644
index 4282cb36be9..00000000000
--- a/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat.c
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Copyright (c) 2003 Guido Draheim <guidod@gmx.de>
- * Use freely under the restrictions of the ZLIB license.
- *
- * This file is used as an example to clarify zzipmmap api usage.
- */
-
-#include <zzip/mmapped.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#ifdef ZZIP_HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef ZZIP_HAVE_IO_H
-#include <io.h>
-#endif
-
-#ifdef ZZIP_HAVE_FNMATCH_H
-#include <fnmatch.h>
-#else
-#define fnmatch(x,y,z) strcmp(x,y)
-#endif
-
-#ifndef O_BINARY
-#define O_BINARY 0
-#endif
-
-static const char usage[] =
-{
- "unzzipdir <zip> [names].. \n"
- " - unzzip data content of files contained in a zip archive.\n"
-};
-
-static void zzip_disk_entry_fprint(ZZIP_DISK* disk,
- ZZIP_DISK_ENTRY* entry, FILE* out)
-{
- ZZIP_DISK_FILE* file = zzip_disk_entry_fopen (disk, entry);
- if (file)
- {
- char buffer[1024]; int len;
- while ((len = zzip_disk_fread (buffer, 1024, 1, file)))
- fwrite (buffer, len, 1, out);
-
- zzip_disk_fclose (file);
- }
-}
-
-static void zzip_disk_cat_file(ZZIP_DISK* disk, char* name, FILE* out)
-{
- ZZIP_DISK_FILE* file = zzip_disk_fopen (disk, name);
- if (file)
- {
- char buffer[1024]; int len;
- while ((len = zzip_disk_fread (buffer, 1, 1024, file)))
- {
- fwrite (buffer, 1, len, out);
- }
-
- zzip_disk_fclose (file);
- }
-}
-
-int
-main (int argc, char ** argv)
-{
- int argn;
- ZZIP_DISK* disk;
-
- if (argc <= 1 || ! strcmp (argv[1], "--help"))
- {
- printf (usage);
- return 0;
- }
- if (! strcmp (argv[1], "--version"))
- {
- printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION"\n");
- return 0;
- }
-
- disk = zzip_disk_open (argv[1]);
- if (! disk) {
- perror(argv[1]);
- return -1;
- }
-
- if (argc == 2)
- { /* print directory list */
- ZZIP_DISK_ENTRY* entry = zzip_disk_findfirst(disk);
- for (; entry ; entry = zzip_disk_findnext(disk, entry))
- {
- char* name = zzip_disk_entry_strdup_name (disk, entry);
- printf ("%s\n", name);
- free (name);
- }
- return 0;
- }
-
- if (argc == 3)
- { /* list from one spec */
- ZZIP_DISK_ENTRY* entry = 0;
- while ((entry = zzip_disk_findmatch(disk, argv[2], entry, 0, 0)))
- zzip_disk_entry_fprint (disk, entry, stdout);
-
- return 0;
- }
-
- for (argn=1; argn < argc; argn++)
- { /* list only the matching entries - each in order of commandline */
- ZZIP_DISK_ENTRY* entry = zzip_disk_findfirst(disk);
- for (; entry ; entry = zzip_disk_findnext(disk, entry))
- {
- char* name = zzip_disk_entry_strdup_name (disk, entry);
- if (! fnmatch (argv[argn], name,
- FNM_NOESCAPE|FNM_PATHNAME|FNM_PERIOD))
- zzip_disk_cat_file (disk, name, stdout);
- free (name);
- }
- }
- return 0;
-}
-
-/*
- * Local variables:
- * c-file-style: "stroustrup"
- * End:
- */
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-big.c b/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-big.c
new file mode 100644
index 00000000000..ceec003ffb6
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-big.c
@@ -0,0 +1,73 @@
+/*
+ * Copyright (c) 2003 Guido Draheim <guidod@gmx.de>
+ * Use freely under the restrictions of the ZLIB license.
+ *
+ * This file is used as an example to clarify zzipfseeko api usage.
+ */
+
+#include <zzip/fseeko.h>
+#include <stdlib.h>
+#include <string.h>
+#include "unzzip.h"
+
+#ifdef ZZIP_HAVE_FNMATCH_H
+#include <fnmatch.h>
+#else
+#define fnmatch(x,y,z) strcmp(x,y)
+#endif
+
+#ifndef O_BINARY
+#define O_BINARY 0
+#endif
+
+#ifdef DEBUG
+#define debug1(msg) do { fprintf(stderr, "%s : " msg "\n", __func__); } while(0)
+#define debug2(msg, arg1) do { fprintf(stderr, "%s : " msg "\n", __func__, arg1); } while(0)
+#define debug3(msg, arg1, arg2) do { fprintf(stderr, "%s : " msg "\n", __func__, arg1, arg2); } while(0)
+#else
+#define debug1(msg)
+#define debug2(msg, arg1)
+#define debug3(msg, arg1, arg2)
+#endif
+
+int unzzip_list (int argc, char ** argv)
+{
+ int argn;
+ FILE* disk;
+
+ disk = fopen (argv[1], "r");
+ if (! disk) {
+ perror(argv[1]);
+ return -1;
+ }
+
+ if (argc == 2)
+ { /* print directory list */
+ ZZIP_ENTRY* entry = zzip_entry_findfirst(disk);
+ for (; entry ; entry = zzip_entry_findnext(entry))
+ {
+ char* name = zzip_entry_strdup_name (entry);
+ printf (" %s \n", name);
+ free (name);
+ }
+ return 0;
+ }
+
+ for (argn=1; argn < argc; argn++)
+ { /* list only the matching entries - each in order of commandline */
+ ZZIP_ENTRY* entry = zzip_entry_findfirst(disk);
+ for (; entry ; entry = zzip_entry_findnext(entry))
+ {
+ char* name = zzip_entry_strdup_name (entry);
+ printf (" %s \n", name);
+ free (name);
+ }
+ }
+ return 0;
+}
+
+/*
+ * Local variables:
+ * c-file-style: "stroustrup"
+ * End:
+ */
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-mem.c b/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-mem.c
index dc020772309..bb060794217 100644
--- a/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-mem.c
+++ b/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-mem.c
@@ -9,6 +9,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include "unzzip.h"
#ifdef ZZIP_HAVE_UNISTD_H
#include <unistd.h>
@@ -27,29 +28,19 @@
#define O_BINARY 0
#endif
-static const char usage[] =
-{
- "unzzipdir <zip> [names].. \n"
- " - unzzip a listing of files contained in a zip archive.\n"
-};
int
-main (int argc, char ** argv)
+unzzip_list (int argc, char ** argv)
{
int argn;
ZZIP_MEM_DISK* disk;
-
- if (argc <= 1 || ! strcmp (argv[1], "--help"))
- {
- printf (usage);
- return 0;
- }
- if (! strcmp (argv[1], "--version"))
+
+ if (argc == 1)
{
- printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION"\n");
- return 0;
+ printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION"\n");
+ return -1; /* better provide an archive argument */
}
-
+
disk = zzip_mem_disk_open (argv[1]);
if (! disk) {
perror(argv[1]);
@@ -62,7 +53,11 @@ main (int argc, char ** argv)
for (; entry ; entry = zzip_mem_disk_findnext(disk, entry))
{
char* name = zzip_mem_entry_to_name (entry);
- printf ("%s\n", name);
+ int compr = entry->zz_compr;
+ long long usize = entry->zz_usize;
+ long long csize = entry->zz_csize;
+ char* defl = compr ? "deflated" : "stored";
+ printf ("%lli/%lli %s %s \n", csize, usize, defl, name);
}
return 0;
}
@@ -73,7 +68,11 @@ main (int argc, char ** argv)
while ((entry = zzip_mem_disk_findmatch(disk, argv[2], entry, 0, 0)))
{
char* name = zzip_mem_entry_to_name (entry);
- printf ("%s\n", name);
+ int compr = entry->zz_compr;
+ long long usize = entry->zz_usize;
+ long long csize = entry->zz_csize;
+ char* defl = compr ? "deflated" : "stored";
+ printf ("%lli/%lli %s %s \n", csize, usize, defl, name);
}
return 0;
}
@@ -87,7 +86,14 @@ main (int argc, char ** argv)
{
if (! fnmatch (argv[argn], name,
FNM_NOESCAPE|FNM_PATHNAME|FNM_PERIOD))
- printf ("%s\n", name);
+ {
+ int compr = entry->zz_compr;
+ long long usize = entry->zz_usize;
+ long long csize = entry->zz_csize;
+ char* defl = compr ? "deflated" : "stored";
+ printf ("%lli/%lli %s %s \n", csize, usize, defl, name);
+ break; /* match loop */
+ }
}
}
return 0;
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-mix.c b/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-mix.c
new file mode 100644
index 00000000000..5fdc98e3827
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-mix.c
@@ -0,0 +1,90 @@
+/*
+ * Copyright (c) 2003 Guido Draheim <guidod@gmx.de>
+ * Use freely under the restrictions of the ZLIB license.
+ *
+ * This file is used as an example to clarify zzip api usage.
+ */
+
+#include <zzip/lib.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include "unzzip.h"
+
+#ifdef ZZIP_HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#ifdef ZZIP_HAVE_IO_H
+#include <io.h>
+#endif
+
+#ifdef ZZIP_HAVE_FNMATCH_H
+#include <fnmatch.h>
+#else
+#define fnmatch(x,y,z) strcmp(x,y)
+#endif
+
+#ifndef O_BINARY
+#define O_BINARY 0
+#endif
+
+
+int
+unzzip_list (int argc, char ** argv)
+{
+ int argn;
+ ZZIP_DIR* disk;
+
+ if (argc == 1)
+ {
+ printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION"\n");
+ return -1; /* better provide an archive argument */
+ }
+
+ disk = zzip_opendir (argv[1]);
+ if (! disk) {
+ perror(argv[1]);
+ return -1;
+ }
+
+ if (argc == 2)
+ { /* list all */
+ ZZIP_DIRENT* entry = 0;
+ while((entry = zzip_readdir(disk)))
+ {
+ char* name = entry->d_name;
+ long long csize = entry->d_csize;
+ long long usize = entry->st_size;
+ char* defl = entry->d_compr ? "deflated" : "stored";
+ printf ("%lli/%lli %s %s \n", usize, csize, defl, name);
+ }
+ }
+ else
+ { /* list only the matching entries - in order of zip directory */
+ ZZIP_DIRENT* entry = 0;
+ while((entry = zzip_readdir(disk)))
+ {
+ char* name = entry->d_name;
+ for (argn=1; argn < argc; argn++)
+ {
+ if (! fnmatch (argv[argn], name,
+ FNM_NOESCAPE|FNM_PATHNAME|FNM_PERIOD))
+ {
+ long long csize = entry->d_csize;
+ long long usize = entry->st_size;
+ char* defl = entry->d_compr ? "deflated" : "stored";
+ printf ("%lli/%lli %s %s \n", usize, csize, defl, name);
+ break; /* match loop */
+ }
+ }
+ }
+ }
+ zzip_closedir(disk);
+ return 0;
+}
+
+/*
+ * Local variables:
+ * c-file-style: "stroustrup"
+ * End:
+ */
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-zip.c b/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-zip.c
new file mode 100644
index 00000000000..c8751f25dbf
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir-zip.c
@@ -0,0 +1,91 @@
+/*
+ * Copyright (c) 2003 Guido Draheim <guidod@gmx.de>
+ * Use freely under the restrictions of the ZLIB license.
+ *
+ * This file is used as an example to clarify zzip api usage.
+ */
+
+#include <zzip/lib.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include "unzzip.h"
+
+#ifdef ZZIP_HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+#ifdef ZZIP_HAVE_IO_H
+#include <io.h>
+#endif
+
+#ifdef ZZIP_HAVE_FNMATCH_H
+#include <fnmatch.h>
+#else
+#define fnmatch(x,y,z) strcmp(x,y)
+#endif
+
+#ifndef O_BINARY
+#define O_BINARY 0
+#endif
+
+
+int
+unzzip_list (int argc, char ** argv)
+{
+ int argn;
+ ZZIP_DIR* disk;
+ zzip_error_t error;
+
+ if (argc == 1)
+ {
+ printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION"\n");
+ return -1; /* better provide an archive argument */
+ }
+
+ disk = zzip_dir_open (argv[1], &error);
+ if (! disk) {
+ perror(argv[1]);
+ return -1;
+ }
+
+ if (argc == 2)
+ { /* list all */
+ ZZIP_DIRENT entry;
+ while(zzip_dir_read(disk, &entry))
+ {
+ char* name = entry.d_name;
+ long long csize = entry.d_csize;
+ long long usize = entry.st_size;
+ char* defl = entry.d_compr ? "deflated" : "stored";
+ printf ("%lli/%lli %s %s \n", usize, csize, defl, name);
+ }
+ }
+ else
+ { /* list only the matching entries - in order of zip directory */
+ ZZIP_DIRENT entry;
+ while(zzip_dir_read(disk, &entry))
+ {
+ char* name = entry.d_name;
+ for (argn=1; argn < argc; argn++)
+ {
+ if (! fnmatch (argv[argn], name,
+ FNM_NOESCAPE|FNM_PATHNAME|FNM_PERIOD))
+ {
+ long long csize = entry.d_csize;
+ long long usize = entry.st_size;
+ char* defl = entry.d_compr ? "deflated" : "stored";
+ printf ("%lli/%lli %s %s \n", usize, csize, defl, name);
+ break; /* match loop */
+ }
+ }
+ }
+ }
+ zzip_dir_close(disk);
+ return 0;
+}
+
+/*
+ * Local variables:
+ * c-file-style: "stroustrup"
+ * End:
+ */
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir.c b/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir.c
deleted file mode 100644
index 3c570c5548f..00000000000
--- a/Build/source/libs/zziplib/zziplib-src/bins/unzzipdir.c
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * Copyright (c) 2003 Guido Draheim <guidod@gmx.de>
- * Use freely under the restrictions of the ZLIB license.
- *
- * This file is used as an example to clarify zzipmmap api usage.
- */
-
-#include <zzip/mmapped.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#ifdef ZZIP_HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef ZZIP_HAVE_IO_H
-#include <io.h>
-#endif
-
-#ifdef ZZIP_HAVE_FNMATCH_H
-#include <fnmatch.h>
-#else
-#define fnmatch(x,y,z) strcmp(x,y)
-#endif
-
-#ifndef O_BINARY
-#define O_BINARY 0
-#endif
-
-static const char usage[] =
-{
- "unzzipdir <zip> [names].. \n"
- " - unzzip a listing of files contained in a zip archive.\n"
-};
-
-int
-main (int argc, char ** argv)
-{
- int argn;
- ZZIP_DISK* disk;
-
- if (argc <= 1 || ! strcmp (argv[1], "--help"))
- {
- printf (usage);
- return 0;
- }
- if (! strcmp (argv[1], "--version"))
- {
- printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION"\n");
- return 0;
- }
-
- disk = zzip_disk_open (argv[1]);
- if (! disk) {
- perror(argv[1]);
- return -1;
- }
-
- if (argc == 2)
- { /* list all */
- ZZIP_DISK_ENTRY* entry = zzip_disk_findfirst(disk);
- for (; entry ; entry = zzip_disk_findnext(disk, entry))
- {
- char* name = zzip_disk_entry_strdup_name (disk, entry);
- printf ("%s\n", name);
- free (name);
- }
- return 0;
- }
-
- if (argc == 3)
- { /* list from one spec */
- ZZIP_DISK_ENTRY* entry = 0;
- while ((entry = zzip_disk_findmatch(disk, argv[2], entry, 0, 0)))
- {
- char* name = zzip_disk_entry_strdup_name (disk, entry);
- printf ("%s\n", name);
- free (name);
- }
- return 0;
- }
-
- { /* list only the matching entries - in order of zip directory */
- ZZIP_DISK_ENTRY* entry = zzip_disk_findfirst(disk);
- for (; entry ; entry = zzip_disk_findnext(disk, entry))
- {
- char* name = zzip_disk_entry_strdup_name (disk, entry);
- for (argn=1; argn < argc; argn++)
- {
- if (! fnmatch (argv[argn], name,
- FNM_NOESCAPE|FNM_PATHNAME|FNM_PERIOD))
- printf ("%s\n", name);
- }
- free (name);
- }
- return 0;
- }
-}
-
-/*
- * Local variables:
- * c-file-style: "stroustrup"
- * End:
- */
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-seeko.c b/Build/source/libs/zziplib/zziplib-src/bins/unzzipshow.c
index f16f0b96566..7ba2d407a6f 100644
--- a/Build/source/libs/zziplib/zziplib-src/bins/unzzipcat-seeko.c
+++ b/Build/source/libs/zziplib/zziplib-src/bins/unzzipshow.c
@@ -21,7 +21,7 @@
static const char usage[] =
{
- "unzzipcat-seeko <zip> [names].. \n"
+ "unzzipshow <zip> [names].. \n"
" - unzzip data content of files contained in a zip archive.\n"
};
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/zzip.c b/Build/source/libs/zziplib/zziplib-src/bins/zzip.c
index a1e990c3907..2869a36a611 100644
--- a/Build/source/libs/zziplib/zziplib-src/bins/zzip.c
+++ b/Build/source/libs/zziplib/zziplib-src/bins/zzip.c
@@ -43,7 +43,11 @@ main (int argc, char ** argv)
}
if (! strcmp (argv[1], "--version"))
{
- printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION"\n");
+# if defined _ZZIP_ENABLE_WRITE
+ printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION" - W/ -D_ZZIP_ENABLE_WRITE\n");
+# else
+ printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION" - NO -D_ZZIP_ENABLE_WRITE\n");
+# endif
return 0;
}
diff --git a/Build/source/libs/zziplib/zziplib-src/bins/zziptest.c b/Build/source/libs/zziplib/zziplib-src/bins/zziptest.c
index 2fde5d27bcf..e9ee3f23b9d 100644
--- a/Build/source/libs/zziplib/zziplib-src/bins/zziptest.c
+++ b/Build/source/libs/zziplib/zziplib-src/bins/zziptest.c
@@ -46,6 +46,7 @@ int main(int argc, char ** argv)
const char * name = "test.zip";
zzip_error_t rv;
int i;
+ int quick = 0;
if (argc > 1 && argv[1] != NULL)
{
@@ -55,6 +56,11 @@ int main(int argc, char ** argv)
}else if (! strcmp (argv[1], "--version")) {
printf (__FILE__" version "ZZIP_PACKAGE" "ZZIP_VERSION"\n");
return 0;
+ }else if (! strcmp (argv[1], "--quick")) {
+ quick = 1;
+ name = argv[2];
+ argv++; argc--;
+ argv++; argc--;
}else{
name = argv[1];
argv++; argc--;
@@ -93,7 +99,7 @@ int main(int argc, char ** argv)
if (hdr->d_reclen == 0) break;
I_(char *, hdr, += hdr->d_reclen);
- sleep(1);
+ if (! quick) sleep(1);
}
}
} printf ("\n}\n");
diff --git a/Build/source/libs/zziplib/zziplib-src/config.h.in b/Build/source/libs/zziplib/zziplib-src/config.h.in
index 1b66813f2d8..cb350a78ec4 100644
--- a/Build/source/libs/zziplib/zziplib-src/config.h.in
+++ b/Build/source/libs/zziplib/zziplib-src/config.h.in
@@ -146,6 +146,11 @@
# endif
#endif
+/* Enable large inode numbers on Mac OS X 10.5. */
+#ifndef _DARWIN_USE_64_BIT_INODE
+# define _DARWIN_USE_64_BIT_INODE 1
+#endif
+
/* Number of bits in a file offset, on hosts where this is settable. */
#undef _FILE_OFFSET_BITS
diff --git a/Build/source/libs/zziplib/zziplib-src/configure b/Build/source/libs/zziplib/zziplib-src/configure
index 1d46bb2d448..72a5b6c76d6 100755
--- a/Build/source/libs/zziplib/zziplib-src/configure
+++ b/Build/source/libs/zziplib/zziplib-src/configure
@@ -1,12 +1,10 @@
#! /bin/sh
# From configure.ac Revision: 1.15 .
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68.
+# Generated by GNU Autoconf 2.69.
#
#
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-# Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
#
#
# This configure script is free software; the Free Software Foundation
@@ -137,6 +135,31 @@ export LANGUAGE
# CDPATH.
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+# Use a proper internal environment variable to ensure we don't fall
+ # into an infinite loop, continuously re-executing ourselves.
+ if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
+ _as_can_reexec=no; export _as_can_reexec;
+ # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+ *v*x* | *x*v* ) as_opts=-vx ;;
+ *v* ) as_opts=-v ;;
+ *x* ) as_opts=-x ;;
+ * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+as_fn_exit 255
+ fi
+ # We don't want this to propagate to other subprocesses.
+ { _as_can_reexec=; unset _as_can_reexec;}
if test "x$CONFIG_SHELL" = x; then
as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
@@ -170,7 +193,8 @@ if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
else
exitcode=1; echo positional parameters were not saved.
fi
-test x\$exitcode = x0 || exit 1"
+test x\$exitcode = x0 || exit 1
+test -x / || exit 1"
as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
@@ -215,21 +239,25 @@ IFS=$as_save_IFS
if test "x$CONFIG_SHELL" != x; then :
- # We cannot yet assume a decent shell, so we have to provide a
- # neutralization value for shells without unset; and this also
- # works around shells that cannot unset nonexistent variables.
- # Preserve -v and -x to the replacement shell.
- BASH_ENV=/dev/null
- ENV=/dev/null
- (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
- export CONFIG_SHELL
- case $- in # ((((
- *v*x* | *x*v* ) as_opts=-vx ;;
- *v* ) as_opts=-v ;;
- *x* ) as_opts=-x ;;
- * ) as_opts= ;;
- esac
- exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
+ export CONFIG_SHELL
+ # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+ *v*x* | *x*v* ) as_opts=-vx ;;
+ *v* ) as_opts=-v ;;
+ *x* ) as_opts=-x ;;
+ * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
fi
if test x$as_have_required = xno; then :
@@ -331,6 +359,14 @@ $as_echo X"$as_dir" |
} # as_fn_mkdir_p
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+ test -f "$1" && test -x "$1"
+} # as_fn_executable_p
# as_fn_append VAR VALUE
# ----------------------
# Append the text in VALUE to the end of the definition contained in VAR. Take
@@ -452,6 +488,10 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
chmod +x "$as_me.lineno" ||
{ $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
+ # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
+ # already done that, so ensure we don't try to do so again and fall
+ # in an infinite loop. This has already happened in practice.
+ _as_can_reexec=no; export _as_can_reexec
# Don't try to exec as it changes $[0], causing all sort of problems
# (the dirname of $[0] is not the place where we might find the
# original and so on. Autoconf is especially sensitive to this).
@@ -486,16 +526,16 @@ if (echo >conf$$.file) 2>/dev/null; then
# ... but there are two gotchas:
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
+ # In both cases, we have to default to `cp -pR'.
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
elif ln conf$$.file conf$$ 2>/dev/null; then
as_ln_s=ln
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
@@ -507,28 +547,8 @@ else
as_mkdir_p=false
fi
-if test -x / >/dev/null 2>&1; then
- as_test_x='test -x'
-else
- if ls -dL / >/dev/null 2>&1; then
- as_ls_L_option=L
- else
- as_ls_L_option=
- fi
- as_test_x='
- eval sh -c '\''
- if test -d "$1"; then
- test -d "$1/.";
- else
- case $1 in #(
- -*)set "./$1";;
- esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
- ???[sx]*):;;*)false;;esac;fi
- '\'' sh
- '
-fi
-as_executable_p=$as_test_x
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -808,6 +828,7 @@ AS
am__fastdepCC_FALSE
am__fastdepCC_TRUE
CCDEPMODE
+am__nodep
AMDEPBACKSLASH
AMDEP_FALSE
AMDEP_TRUE
@@ -821,6 +842,10 @@ CPPFLAGS
LDFLAGS
CFLAGS
CC
+AM_BACKSLASH
+AM_DEFAULT_VERBOSITY
+AM_DEFAULT_V
+AM_V
am__untar
am__tar
AMTAR
@@ -904,6 +929,7 @@ enable_option_checking
enable_builddir
enable_thread_safe
with_zlib
+enable_silent_rules
enable_dependency_tracking
enable_shared
enable_static
@@ -1388,8 +1414,6 @@ target=$target_alias
if test "x$host_alias" != x; then
if test "x$build_alias" = x; then
cross_compiling=maybe
- $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
- If a cross compiler is detected then cross compile mode will be used" >&2
elif test "x$build_alias" != "x$host_alias"; then
cross_compiling=yes
fi
@@ -1556,15 +1580,20 @@ Optional Features:
--disable-thread-safe disable thread-safe libtool option
- --disable-dependency-tracking speeds up one-time build
- --enable-dependency-tracking do not reject slow dependency extractors
+ --enable-silent-rules less verbose build output (undo: "make V=1")
+ --disable-silent-rules verbose build output (undo: "make V=0")
+ --enable-dependency-tracking
+ do not reject slow dependency extractors
+ --disable-dependency-tracking
+ speeds up one-time build
--enable-shared[=PKGS] build shared libraries [default=yes]
--enable-static[=PKGS] build static libraries [default=yes]
--enable-fast-install[=PKGS]
optimize for fast installation [default=yes]
--disable-libtool-lock avoid locking (might break parallel builds)
- --enable-maintainer-mode enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer
+ --enable-maintainer-mode
+ enable make rules and dependencies not useful (and
+ sometimes confusing) to the casual installer
--disable-largefile omit support for large files
--disable-mmap disable mmap usage
@@ -1669,9 +1698,9 @@ test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
configure
-generated by GNU Autoconf 2.68
+generated by GNU Autoconf 2.69
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
@@ -1749,7 +1778,7 @@ $as_echo "$ac_try_echo"; } >&5
test ! -s conftest.err
} && test -s conftest$ac_exeext && {
test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
+ test -x conftest$ac_exeext
}; then :
ac_retval=0
else
@@ -2090,7 +2119,7 @@ This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by $as_me, which was
-generated by GNU Autoconf 2.68. Invocation command line was
+generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -2608,8 +2637,8 @@ $as_echo "$as_me: toplevel srcdir already configured... skipping subdir build" >
else
test ".$ax_enable_builddir" = "." && ax_enable_builddir="."
test ".$ax_enable_builddir" = ".no" && ax_enable_builddir="."
- test ".$BUILD" = "." && BUILD=`uname -msr | tr " /" "__"`.d
- test ".$ax_enable_builddir" = ".yes" && ax_enable_builddir="$BUILD"
+ test ".$TARGET" = "." && TARGET="$target"
+ test ".$ax_enable_builddir" = ".yes" && ax_enable_builddir="$TARGET"
if test ".$ax_enable_builddir" != ".." ; then # we know where to go and
as_dir=$ax_enable_builddir; as_fn_mkdir_p
echo __.$ax_enable_builddir.__ > $ax_enable_builddir/conftest.tmp
@@ -2628,8 +2657,8 @@ $as_echo "continue configure in default builddir \"./$ax_enable_builddir\"" >&6;
test -f $srcdir/confdefs.h && mv $srcdir/confdefs.h .
test -f $srcdir/conftest.log && mv $srcdir/conftest.log .
test -f $srcdir/$cache_file && mv $srcdir/$cache_file .
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ....exec $SHELL \"$srcdir/$0\" \"--srcdir=$srcdir\" \"--enable-builddir=$ax_enable_builddir\" $ac_configure_args" >&5
-$as_echo "....exec $SHELL \"$srcdir/$0\" \"--srcdir=$srcdir\" \"--enable-builddir=$ax_enable_builddir\" $ac_configure_args" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ....exec $SHELL $srcdir/$0 \"--srcdir=$srcdir\" \"--enable-builddir=$ax_enable_builddir\" ${1+\"$@\"}" >&5
+$as_echo "....exec $SHELL $srcdir/$0 \"--srcdir=$srcdir\" \"--enable-builddir=$ax_enable_builddir\" ${1+\"$@\"}" >&6; }
case "$0" in # restart
/\\*) eval $SHELL "'$0'" "'--srcdir=$srcdir'" "'--enable-builddir=$ax_enable_builddir'" $ac_configure_args ;;
*) eval $SHELL "'$srcdir/$0'" "'--srcdir=$srcdir'" "'--enable-builddir=$ax_enable_builddir'" $ac_configure_args ;;
@@ -2655,7 +2684,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_ax_enable_builddir_sed="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -2678,6 +2707,10 @@ $as_echo "no" >&6; }
fi
+ax_enable_builddir_auxdir="$ac_aux_dir"
+ax_enable_builddir_auxdir=`echo "$ax_enable_builddir_auxdir" | $ax_enable_builddir_sed -e "s|$ac_top_srcdir|.|"`
+test ".$ax_enable_builddir_auxdir" = "." && ax_enable_builddir_auxdir="$ac_aux_dir"
+test ".$ax_enable_builddir_auxdir" = "." && ax_enable_builddir_auxdir="."
ac_config_commands="$ac_config_commands buildir"
# --------------------------------------------
@@ -3142,7 +3175,7 @@ $as_echo_n "checking for spec icon... " >&6; }
$as_echo "$PACKAGE_ICON $k" >&6; }
-am__api_version='1.11'
+am__api_version='1.13'
# Find a good install program. We prefer a C program (faster),
# so one script is as good as another. But avoid the broken or
@@ -3181,7 +3214,7 @@ case $as_dir/ in #((
# by default.
for ac_prog in ginstall scoinst install; do
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
if test $ac_prog = install &&
grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
# AIX install. It has an incompatible calling convention.
@@ -3239,9 +3272,6 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
$as_echo_n "checking whether build environment is sane... " >&6; }
-# Just in case
-sleep 1
-echo timestamp > conftest.file
# Reject unsafe characters in $srcdir or the absolute working directory
# name. Accept space and tab only in the latter.
am_lf='
@@ -3252,32 +3282,40 @@ case `pwd` in
esac
case $srcdir in
*[\\\"\#\$\&\'\`$am_lf\ \ ]*)
- as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;;
+ as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;;
esac
-# Do `set' in a subshell so we don't clobber the current shell's
+# Do 'set' in a subshell so we don't clobber the current shell's
# arguments. Must try -L first in case configure is actually a
# symlink; some systems play weird games with the mod time of symlinks
# (eg FreeBSD returns the mod time of the symlink's containing
# directory).
if (
- set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
- if test "$*" = "X"; then
- # -L didn't work.
- set X `ls -t "$srcdir/configure" conftest.file`
- fi
- rm -f conftest.file
- if test "$*" != "X $srcdir/configure conftest.file" \
- && test "$*" != "X conftest.file $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- as_fn_error $? "ls -t appears to fail. Make sure there is not a broken
-alias in your environment" "$LINENO" 5
- fi
-
+ am_has_slept=no
+ for am_try in 1 2; do
+ echo "timestamp, slept: $am_has_slept" > conftest.file
+ set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
+ if test "$*" = "X"; then
+ # -L didn't work.
+ set X `ls -t "$srcdir/configure" conftest.file`
+ fi
+ if test "$*" != "X $srcdir/configure conftest.file" \
+ && test "$*" != "X conftest.file $srcdir/configure"; then
+
+ # If neither matched, then we have a broken ls. This can happen
+ # if, for instance, CONFIG_SHELL is bash and it inherits a
+ # broken ls alias from the environment. This has actually
+ # happened. Such a system could not be considered "sane".
+ as_fn_error $? "ls -t appears to fail. Make sure there is not a broken
+ alias in your environment" "$LINENO" 5
+ fi
+ if test "$2" = conftest.file || test $am_try -eq 2; then
+ break
+ fi
+ # Just in case.
+ sleep 1
+ am_has_slept=yes
+ done
test "$2" = conftest.file
)
then
@@ -3289,6 +3327,16 @@ Check your system clock" "$LINENO" 5
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
+# If we didn't sleep, we still need to ensure time stamps of config.status and
+# generated files are strictly newer.
+am_sleep_pid=
+if grep 'slept: no' conftest.file >/dev/null 2>&1; then
+ ( sleep 1 ) &
+ am_sleep_pid=$!
+fi
+
+rm -f conftest.file
+
test "$program_prefix" != NONE &&
program_transform_name="s&^&$program_prefix&;$program_transform_name"
# Use a double $ so make ignores it.
@@ -3299,8 +3347,8 @@ test "$program_suffix" != NONE &&
ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
+# Expand $ac_aux_dir to an absolute path.
+am_aux_dir=`cd "$ac_aux_dir" && pwd`
if test x"${MISSING+set}" != xset; then
case $am_aux_dir in
@@ -3311,12 +3359,12 @@ if test x"${MISSING+set}" != xset; then
esac
fi
# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
- am_missing_run="$MISSING --run "
+if eval "$MISSING --is-lightweight"; then
+ am_missing_run="$MISSING "
else
am_missing_run=
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
+$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
fi
if test x"${install_sh}" != xset; then
@@ -3328,10 +3376,10 @@ if test x"${install_sh}" != xset; then
esac
fi
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'. However `strip' might not be the right
+# Installed binaries are usually stripped using 'strip' when the user
+# run "make install-strip". However 'strip' might not be the right
# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
+# will honor the 'STRIP' environment variable to overrule this program.
if test "$cross_compiling" != no; then
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
@@ -3350,7 +3398,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_STRIP="${ac_tool_prefix}strip"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3390,7 +3438,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_STRIP="strip"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3441,7 +3489,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_prog in mkdir gmkdir; do
for ac_exec_ext in '' $ac_executable_extensions; do
- { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
+ as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
'mkdir (GNU coreutils) '* | \
'mkdir (coreutils) '* | \
@@ -3470,12 +3518,6 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
$as_echo "$MKDIR_P" >&6; }
-mkdir_p="$MKDIR_P"
-case $mkdir_p in
- [\\/$]* | ?:[\\/]*) ;;
- */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-
for ac_prog in gawk mawk nawk awk
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
@@ -3494,7 +3536,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_AWK="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3558,6 +3600,45 @@ else
fi
rmdir .tst 2>/dev/null
+# Check whether --enable-silent-rules was given.
+if test "${enable_silent_rules+set}" = set; then :
+ enableval=$enable_silent_rules;
+fi
+
+case $enable_silent_rules in # (((
+ yes) AM_DEFAULT_VERBOSITY=0;;
+ no) AM_DEFAULT_VERBOSITY=1;;
+ *) AM_DEFAULT_VERBOSITY=1;;
+esac
+am_make=${MAKE-make}
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
+$as_echo_n "checking whether $am_make supports nested variables... " >&6; }
+if ${am_cv_make_support_nested_variables+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if $as_echo 'TRUE=$(BAR$(V))
+BAR0=false
+BAR1=true
+V=1
+am__doit:
+ @$(TRUE)
+.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then
+ am_cv_make_support_nested_variables=yes
+else
+ am_cv_make_support_nested_variables=no
+fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
+$as_echo "$am_cv_make_support_nested_variables" >&6; }
+if test $am_cv_make_support_nested_variables = yes; then
+ AM_V='$(V)'
+ AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
+else
+ AM_V=$AM_DEFAULT_VERBOSITY
+ AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
+fi
+AM_BACKSLASH='\'
+
if test "`cd $srcdir && pwd`" != "`pwd`"; then
# Use -I$(srcdir) only when $(srcdir) != ., so that make's output
# is not polluted with repeated "-I."
@@ -3579,6 +3660,7 @@ fi
# Define the identity of the package.
+
PACKAGE=$PACKAGE
VERSION=$VERSION
@@ -3608,13 +3690,24 @@ AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
+# For better backward compatibility. To be removed once Automake 1.9.x
+# dies out for good. For more background, see:
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
+mkdir_p='$(MKDIR_P)'
+
# We need awk for the "check" target. The system "awk" is bad on
# some platforms.
-# Always define AMTAR for backward compatibility.
+# Always define AMTAR for backward compatibility. Yes, it's still used
+# in the wild :-( We should find a proper way to deprecate it ...
+AMTAR='$${TAR-tar}'
+
-AMTAR=${AMTAR-"${am_missing_run}tar"}
+# We'll loop over all known methods to create a tar archive until one works.
+_am_tools='gnutar pax cpio none'
+
+am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
-am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
@@ -3642,7 +3735,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="${ac_tool_prefix}gcc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3682,7 +3775,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CC="gcc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3735,7 +3828,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="${ac_tool_prefix}cc"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3776,7 +3869,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
ac_prog_rejected=yes
continue
@@ -3834,7 +3927,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -3878,7 +3971,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_CC="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4324,8 +4417,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdarg.h>
#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
+struct stat;
/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
struct buf { int x; };
FILE * (*rcsopen) (struct buf *, struct stat *, int);
@@ -4428,7 +4520,7 @@ am__quote=
_am_result=none
# First try GNU make style include.
echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
+# Ignore all kinds of additional output from 'make'.
case `$am_make -s -f confmf 2> /dev/null` in #(
*the\ am__doit\ target*)
am__include=include
@@ -4461,6 +4553,7 @@ fi
if test "x$enable_dependency_tracking" != xno; then
am_depcomp="$ac_aux_dir/depcomp"
AMDEPBACKSLASH='\'
+ am__nodep='_no'
fi
if test "x$enable_dependency_tracking" != xno; then
AMDEP_TRUE=
@@ -4483,8 +4576,9 @@ else
# We make a subdir and do the tests there. Otherwise we can end up
# making bogus files that we don't know about and never remove. For
# instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
+ # making a dummy file named 'D' -- because '-MD' means "put the output
+ # in D".
+ rm -rf conftest.dir
mkdir conftest.dir
# Copy depcomp to subdir because otherwise we won't find it if we're
# using a relative directory.
@@ -4518,16 +4612,16 @@ else
: > sub/conftest.c
for i in 1 2 3 4 5 6; do
echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
+ # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
+ # Solaris 10 /bin/sh.
+ echo '/* dummy */' > sub/conftst$i.h
done
echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # We check with '-c' and '-o' for the sake of the "dashmstdout"
# mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
+ # handle '-M -o', and we need to detect this. Also, some Intel
+ # versions had trouble with output in subdirs.
am__obj=sub/conftest.${OBJEXT-o}
am__minus_obj="-o $am__obj"
case $depmode in
@@ -4536,16 +4630,16 @@ else
test "$am__universal" = false || continue
;;
nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
+ # After this tag, mechanisms are not by side-effect, so they'll
+ # only be used when explicitly requested.
if test "x$enable_dependency_tracking" = xyes; then
continue
else
break
fi
;;
- msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
+ msvc7 | msvc7msys | msvisualcpp | msvcmsys)
+ # This compiler won't grok '-c -o', but also, the minuso test has
# not run yet. These depmodes are late enough in the game, and
# so weak that their functioning should not be impacted.
am__obj=conftest.${OBJEXT-o}
@@ -4621,7 +4715,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_AS="${ac_tool_prefix}as"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4661,7 +4755,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_AS="as"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4713,7 +4807,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4753,7 +4847,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_DLLTOOL="dlltool"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4805,7 +4899,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4845,7 +4939,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_OBJDUMP="objdump"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -4950,7 +5044,7 @@ do
for ac_prog in sed gsed; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_SED" && $as_test_x "$ac_path_SED"; } || continue
+ as_fn_executable_p "$ac_path_SED" || continue
# Check for GNU ac_path_SED and select it if it is found.
# Check for GNU $ac_path_SED
case `"$ac_path_SED" --version 2>&1` in
@@ -5026,7 +5120,7 @@ do
for ac_prog in grep ggrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+ as_fn_executable_p "$ac_path_GREP" || continue
# Check for GNU ac_path_GREP and select it if it is found.
# Check for GNU $ac_path_GREP
case `"$ac_path_GREP" --version 2>&1` in
@@ -5092,7 +5186,7 @@ do
for ac_prog in egrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+ as_fn_executable_p "$ac_path_EGREP" || continue
# Check for GNU ac_path_EGREP and select it if it is found.
# Check for GNU $ac_path_EGREP
case `"$ac_path_EGREP" --version 2>&1` in
@@ -5159,7 +5253,7 @@ do
for ac_prog in fgrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
- { test -f "$ac_path_FGREP" && $as_test_x "$ac_path_FGREP"; } || continue
+ as_fn_executable_p "$ac_path_FGREP" || continue
# Check for GNU ac_path_FGREP and select it if it is found.
# Check for GNU $ac_path_FGREP
case `"$ac_path_FGREP" --version 2>&1` in
@@ -5412,7 +5506,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -5456,7 +5550,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -5512,13 +5606,13 @@ if ${lt_cv_nm_interface+:} false; then :
else
lt_cv_nm_interface="BSD nm"
echo "int some_variable = 0;" > conftest.$ac_ext
- (eval echo "\"\$as_me:5515: $ac_compile\"" >&5)
+ (eval echo "\"\$as_me:5609: $ac_compile\"" >&5)
(eval "$ac_compile" 2>conftest.err)
cat conftest.err >&5
- (eval echo "\"\$as_me:5518: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
+ (eval echo "\"\$as_me:5612: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
(eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
cat conftest.err >&5
- (eval echo "\"\$as_me:5521: output\"" >&5)
+ (eval echo "\"\$as_me:5615: output\"" >&5)
cat conftest.out >&5
if $GREP 'External.*some_variable' conftest.out > /dev/null; then
lt_cv_nm_interface="MS dumpbin"
@@ -5782,7 +5876,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -5822,7 +5916,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_OBJDUMP="objdump"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -6094,7 +6188,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_AR="${ac_tool_prefix}ar"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -6134,7 +6228,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_AR="ar"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -6199,7 +6293,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_STRIP="${ac_tool_prefix}strip"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -6239,7 +6333,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_STRIP="strip"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -6298,7 +6392,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -6338,7 +6432,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_RANLIB="ranlib"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -6721,7 +6815,7 @@ ia64-*-hpux*)
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 6724 "configure"' > conftest.$ac_ext
+ echo '#line 6818 "configure"' > conftest.$ac_ext
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -6903,7 +6997,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -6943,7 +7037,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -6995,7 +7089,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -7035,7 +7129,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_NMEDIT="nmedit"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -7087,7 +7181,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -7127,7 +7221,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_LIPO="lipo"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -7179,7 +7273,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -7219,7 +7313,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_OTOOL="otool"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -7271,7 +7365,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -7311,7 +7405,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_ac_ct_OTOOL64="otool64"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -8248,11 +8342,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8251: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8345: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:8255: \$? = $ac_status" >&5
+ echo "$as_me:8349: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -8587,11 +8681,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8590: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8684: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:8594: \$? = $ac_status" >&5
+ echo "$as_me:8688: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -8692,11 +8786,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8695: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8789: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:8699: \$? = $ac_status" >&5
+ echo "$as_me:8793: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -8747,11 +8841,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8750: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8844: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:8754: \$? = $ac_status" >&5
+ echo "$as_me:8848: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -11114,7 +11208,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11117 "configure"
+#line 11211 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -11210,7 +11304,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11213 "configure"
+#line 11307 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -11701,7 +11795,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_PAX="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -11745,7 +11839,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_GNUTAR="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -11789,7 +11883,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_GTAR="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -11833,7 +11927,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_TAR="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -11926,7 +12020,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_PAX="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -11970,7 +12064,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_GNUTAR="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -12014,7 +12108,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_GTAR="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -12058,7 +12152,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_TAR="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -12150,7 +12244,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -12196,7 +12290,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -12242,7 +12336,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_MKZIP="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -12288,7 +12382,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_XMLTO="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -12368,11 +12462,11 @@ else
int
main ()
{
-/* FIXME: Include the comments suggested by Paul. */
+
#ifndef __cplusplus
- /* Ultrix mips cc rejects this. */
+ /* Ultrix mips cc rejects this sort of thing. */
typedef int charset[2];
- const charset cs;
+ const charset cs = { 0, 0 };
/* SunOS 4.1.1 cc rejects this. */
char const *const *pcpcc;
char **ppc;
@@ -12389,8 +12483,9 @@ main ()
++pcpcc;
ppc = (char**) pcpcc;
pcpcc = (char const *const *) ppc;
- { /* SCO 3.2v4 cc rejects this. */
- char *t;
+ { /* SCO 3.2v4 cc rejects this sort of thing. */
+ char tx;
+ char *t = &tx;
char const *s = 0 ? (char *) 0 : (char const *) 0;
*t++ = 0;
@@ -12406,10 +12501,10 @@ main ()
iptr p = 0;
++p;
}
- { /* AIX XL C 1.02.0.0 rejects this saying
+ { /* AIX XL C 1.02.0.0 rejects this sort of thing, saying
"k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
- struct s { int j; const int *ap[3]; };
- struct s *b; b->j = 5;
+ struct s { int j; const int *ap[3]; } bx;
+ struct s *b = &bx; b->j = 5;
}
{ /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
const int foo = 10;
@@ -13476,6 +13571,8 @@ _ACEOF
esac
rm -rf conftest*
fi
+
+
fi
# we know about some internals of ac_sys_largefile here...
@@ -14540,7 +14637,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -14646,7 +14743,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -14794,7 +14891,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_ACLOCAL="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -14846,7 +14943,7 @@ do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_path_ACLOCAL="$as_dir/$ac_word$ac_exec_ext"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
@@ -15029,6 +15126,14 @@ LIBOBJS=$ac_libobjs
LTLIBOBJS=$ac_ltlibobjs
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
+$as_echo_n "checking that generated files are newer than configure... " >&6; }
+ if test -n "$am_sleep_pid"; then
+ # Hide warnings about reused PIDs.
+ wait $am_sleep_pid 2>/dev/null
+ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
+$as_echo "done" >&6; }
if test -n "$EXEEXT"; then
am__EXEEXT_TRUE=
am__EXEEXT_FALSE='#'
@@ -15348,16 +15453,16 @@ if (echo >conf$$.file) 2>/dev/null; then
# ... but there are two gotchas:
# 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
# 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -p'.
+ # In both cases, we have to default to `cp -pR'.
ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
elif ln conf$$.file conf$$ 2>/dev/null; then
as_ln_s=ln
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
else
- as_ln_s='cp -p'
+ as_ln_s='cp -pR'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
@@ -15417,28 +15522,16 @@ else
as_mkdir_p=false
fi
-if test -x / >/dev/null 2>&1; then
- as_test_x='test -x'
-else
- if ls -dL / >/dev/null 2>&1; then
- as_ls_L_option=L
- else
- as_ls_L_option=
- fi
- as_test_x='
- eval sh -c '\''
- if test -d "$1"; then
- test -d "$1/.";
- else
- case $1 in #(
- -*)set "./$1";;
- esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
- ???[sx]*):;;*)false;;esac;fi
- '\'' sh
- '
-fi
-as_executable_p=$as_test_x
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+ test -f "$1" && test -x "$1"
+} # as_fn_executable_p
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -15460,7 +15553,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# values after options handling.
ac_log="
This file was extended by $as_me, which was
-generated by GNU Autoconf 2.68. Invocation command line was
+generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
@@ -15526,10 +15619,10 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
config.status
-configured by $0, generated by GNU Autoconf 2.68,
+configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
@@ -15620,7 +15713,7 @@ fi
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
if \$ac_cs_recheck; then
- set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+ set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
shift
\$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
CONFIG_SHELL='$SHELL'
@@ -15648,6 +15741,7 @@ ax_enable_builddir_srcdir="$srcdir" # $srcdir
ax_enable_builddir_host="$HOST" # $HOST / $host
ax_enable_builddir_version="$VERSION" # $VERSION
ax_enable_builddir_package="$PACKAGE" # $PACKAGE
+ax_enable_builddir_auxdir="$ax_enable_builddir_auxdir" # $AUX
ax_enable_builddir_sed="$ax_enable_builddir_sed" # $SED
ax_enable_builddir="$ax_enable_builddir" # $SUB
@@ -16560,9 +16654,22 @@ $as_echo "$as_me: skipping top_srcdir/Makefile - left untouched" >&6;}
$as_echo "$as_me: skipping top_srcdir/Makefile - not created" >&6;}
fi
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: create top_srcdir/Makefile guessed from local Makefile" >&5
+ if test -f "$ac_top_srcdir/Makefile" ; then
+ a=`grep "^VERSION " "$ac_top_srcdir/Makefile"` ; b=`grep "^VERSION " Makefile`
+ test "$a" != "$b" && rm "$ac_top_srcdir/Makefile"
+ fi
+ if test -f "$ac_top_srcdir/Makefile" ; then
+ echo "$ac_top_srcdir/Makefile : $ac_top_srcdir/Makefile.in" > $tmp/conftemp.mk
+ echo " @ echo 'REMOVED,,,' >\$@" >> $tmp/conftemp.mk
+ eval "${MAKE-make} -f $tmp/conftemp.mk 2>/dev/null >/dev/null"
+ if grep '^REMOVED,,,' "$ac_top_srcdir/Makefile" >/dev/null
+ then rm $ac_top_srcdir/Makefile ; fi
+ cp $tmp/conftemp.mk $ac_top_srcdir/makefiles.mk~ ## DEBUGGING
+ fi
+ if test ! -f "$ac_top_srcdir/Makefile" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: create top_srcdir/Makefile guessed from local Makefile" >&5
$as_echo "$as_me: create top_srcdir/Makefile guessed from local Makefile" >&6;}
- x='`' ; cat >$tmp/conftemp.sed <<_EOF
+ x='`' ; cat >$tmp/conftemp.sed <<_EOF
/^\$/n
x
/^\$/bS
@@ -16585,26 +16692,87 @@ s/^top_srcdir *=.*/top_srcdir = ./
/^\\./d
s/:.*/:/
/:\$/s/ / /g
+/:\$/s/ \\([a-z][a-z-]*[a-z]\\) / \\1 \\1-all /g
+/:\$/s/^\\([a-z][a-z-]*[a-z]\\)\\([ :]\\)/\\1 \\1-all\\2/
/:\$/s/ / /g
-/^.*[=]/!s%\$% ; (cd \$(BUILD) \\&\\& \$(ISNOTSRCDIR) \\&\\& \$(MAKE) "\$\@") || exit ; \$(MAKE) done "RULE=\$\@"%
+/^all all-all[ :]/i\\
+all-configured : all-all
+/-all-all/d
+/^.*[=]/!a\\
+ @ HOST="\$(HOST)\" \\\\\\
+ ; test ".\$\$HOST" = "." && HOST=$x sh $ax_enable_builddir_auxdir/config.guess $x \\\\\\
+ ; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\
+ ; use=$x basename "\$\@" -all $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\
+ ; echo "MAKE \$\$HOST : \$\$n * \$\@"; if test "\$\$n" = "0" ; then : \\\\\\
+ ; BUILD=$x grep "^####.*|" Makefile |tail -1| sed -e 's/.*|//' $x ; fi \\\\\\
+ ; test ".\$\$BUILD" = "." && BUILD="." \\\\\\
+ ; test "\$\$use" = "\$\@" && BUILD=$x echo "\$\$BUILD" | tail -1 $x \\\\\\
+ ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
+ ; (cd "\$\$i" && test ! -f configure && \$(MAKE) \$\$use) || exit; done
+/dist-all *:/a\\
+ @ HOST="\$(HOST)\" \\\\\\
+ ; test ".\$\$HOST" = "." && HOST=$x sh $ax_enable_builddir_auxdir/config.guess $x \\\\\\
+ ; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\
+ ; found=$x echo \$\$BUILD | wc -w $x \\\\\\
+ ; echo "MAKE \$\$HOST : \$\$found \$(PACKAGE)-\$(VERSION).tar.*" \\\\\\
+ ; if test "\$\$found" = "0" ; then : \\\\\\
+ ; BUILD=$x grep "^#### .*|" Makefile |tail -1| sed -e 's/.*|//' $x \\\\\\
+ ; fi ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
+ ; for f in \$\$i/\$(PACKAGE)-\$(VERSION).tar.* \\\\\\
+ ; do test -f "\$\$f" && mv "\$\$f" \$(PUB). ; done ; break ; done
+/distclean-all *:/a\\
+ @ HOST="\$(HOST)\" \\\\\\
+ ; test ".\$\$HOST" = "." && HOST=$x sh $ax_enable_builddir_auxdir/config.guess $x \\\\\\
+ ; BUILD=$x grep "^#### .*| *\\./" Makefile | sed -e 's/.*|//' $x \\\\\\
+ ; use=$x basename "\$\@" -all $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\
+ ; echo "MAKE \$\$HOST : \$\$n * \$\@ (all local builds)" \\\\\\
+ ; test ".\$\$BUILD" = "." && BUILD="." \\\\\\
+ ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
+ ; echo "# rm -r \$\$i"; done ; echo "# (sleep 3)" ; sleep 3 \\\\\\
+ ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
+ ; echo "rm -r \$\$i"; (rm -r "\$\$i") ; done ; rm Makefile
_EOF
- test ".$USE_MAINTAINER_MODE" = ".no" || \
- cp "$tmp/conftemp.sed" "$ac_top_srcdir/makefile.sed~" ## DEBUGGING
- echo 'BUILD=`uname -msr | tr " /" "__"`.d' >$ac_top_srcdir/Makefile
- echo 'ISNOTSRCDIR=test ! -f configure' >>$ac_top_srcdir/Makefile
- $ax_enable_builddir_sed -f $tmp/conftemp.sed Makefile >>$ac_top_srcdir/Makefile
- echo 'done: ;@ if grep "$(RULE)-done .*:" Makefile > /dev/null; then echo $(MAKE) $(RULE)-done ; $(MAKE) $(RULE)-done ; else true ; fi' >> $ac_top_srcdir/Makefile
- if test -f "$ac_top_srcdir/Makefile.mk" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: extend top_srcdir/Makefile with top_srcdir/Makefile.mk" >&5
+ cp "$tmp/conftemp.sed" "$ac_top_srcdir/makefile.sed~" ## DEBUGGING
+ $ax_enable_builddir_sed -f $tmp/conftemp.sed Makefile >$ac_top_srcdir/Makefile
+ if test -f "$ac_top_srcdir/Makefile.mk" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: extend top_srcdir/Makefile with top_srcdir/Makefile.mk" >&5
$as_echo "$as_me: extend top_srcdir/Makefile with top_srcdir/Makefile.mk" >&6;}
- cat $ac_top_srcdir/Makefile.mk >>$ac_top_srcdir/Makefile
+ cat $ac_top_srcdir/Makefile.mk >>$ac_top_srcdir/Makefile
+ fi ; xxxx="####"
+ echo "$xxxx CONFIGURATIONS FOR TOPLEVEL MAKEFILE: " >>$ac_top_srcdir/Makefile
+ # sanity check
+ if grep '^; echo "MAKE ' $ac_top_srcdir/Makefile >/dev/null ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: buggy sed found - it deletes tab in \"a\" text parts" >&5
+$as_echo "$as_me: buggy sed found - it deletes tab in \"a\" text parts" >&6;}
+ $ax_enable_builddir_sed -e '/^@ HOST=/s/^/ /' -e '/^; /s/^/ /' $ac_top_srcdir/Makefile \
+ >$ac_top_srcdir/Makefile~
+ (test -s $ac_top_srcdir/Makefile~ && mv $ac_top_srcdir/Makefile~ $ac_top_srcdir/Makefile) 2>/dev/null
+ fi
+ else
+ xxxx="\\#\\#\\#\\#"
+ # echo "/^$xxxx *$ax_enable_builddir_host /d" >$tmp/conftemp.sed
+ echo "s!^$xxxx [^|]* | *$ax_enable_builddir *\$!$xxxx ...... $ax_enable_builddir!" >$tmp/conftemp.sed
+ $ax_enable_builddir_sed -f "$tmp/conftemp.sed" "$ac_top_srcdir/Makefile" >$tmp/mkfile.tmp
+ cp "$tmp/conftemp.sed" "$ac_top_srcdir/makefiles.sed~" ## DEBUGGING
+ cp "$tmp/mkfile.tmp" "$ac_top_srcdir/makefiles.out~" ## DEBUGGING
+ if cmp -s "$ac_top_srcdir/Makefile" "$tmp/mkfile.tmp" 2>/dev/null ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: keeping top_srcdir/Makefile from earlier configure" >&5
+$as_echo "$as_me: keeping top_srcdir/Makefile from earlier configure" >&6;}
+ rm "$tmp/mkfile.tmp"
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: reusing top_srcdir/Makefile from earlier configure" >&5
+$as_echo "$as_me: reusing top_srcdir/Makefile from earlier configure" >&6;}
+ mv "$tmp/mkfile.tmp" "$ac_top_srcdir/Makefile"
+ fi
fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: make uses BUILD=$ax_enable_builddir (on $ax_enable_builddir_host:)" >&5
-$as_echo "$as_me: make uses BUILD=$ax_enable_builddir (on $ax_enable_builddir_host:)" >&6;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: build in $ax_enable_builddir (HOST=$ax_enable_builddir_host)" >&5
+$as_echo "$as_me: build in $ax_enable_builddir (HOST=$ax_enable_builddir_host)" >&6;}
+ xxxx="####"
+ echo "$xxxx" "$ax_enable_builddir_host" "|$ax_enable_builddir" >>$ac_top_srcdir/Makefile
fi
;;
"depfiles":C) test x"$AMDEP_TRUE" != x"" || {
- # Autoconf 2.62 quotes --file arguments for eval, but not when files
+ # Older Autoconf quotes --file arguments for eval, but not when files
# are listed without --file. Let's play safe and only enable the eval
# if we detect the quoting.
case $CONFIG_FILES in
@@ -16617,7 +16785,7 @@ $as_echo "$as_me: make uses BUILD=$ax_enable_builddir (on $ax_enable_builddir_ho
# Strip MF so we end up with the name of the file.
mf=`echo "$mf" | sed -e 's/:.*$//'`
# Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named `Makefile.in', but
+ # We used to match only the files named 'Makefile.in', but
# some people rename them; so instead we look at the file content.
# Grep'ing the first line is not enough: some people post-process
# each Makefile.in and add a new line on top of each file to say so.
@@ -16651,21 +16819,19 @@ $as_echo X"$mf" |
continue
fi
# Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running `make'.
+ # from the Makefile without running 'make'.
DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
test -z "$DEPDIR" && continue
am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
+ test -z "$am__include" && continue
am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
- U=`sed -n 's/^U = //p' < "$mf"`
# Find all dependency output files, they are included files with
# $(DEPDIR) in their names. We invoke sed twice because it is the
# simplest approach to changing $(DEPDIR) to its actual value in the
# expansion.
for file in `sed -n "
s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
# Make sure the directory exists.
test -f "$dirpart/$file" && continue
fdir=`$as_dirname -- "$file" ||
diff --git a/Build/source/libs/zziplib/zziplib-src/configure.ac b/Build/source/libs/zziplib/zziplib-src/configure.ac
index 88129d18abb..4708f8d2761 100644
--- a/Build/source/libs/zziplib/zziplib-src/configure.ac
+++ b/Build/source/libs/zziplib/zziplib-src/configure.ac
@@ -7,7 +7,7 @@ AC_CONFIG_MACRO_DIR([m4])
# =======================================================================
AC_CANONICAL_SYSTEM
dnl AM_ENABLE_MULTILIB([Makefile],[$host])
-AX_ENABLE_BUILDDIR_UNAME
+AX_ENABLE_BUILDDIR
AC_SET_DEFAULT_PATHS_SYSTEM
# -----------------------------------------------------------------------
AC_ARG_ENABLE([thread-safe],
diff --git a/Build/source/libs/zziplib/zziplib-src/docs/Makefile.in b/Build/source/libs/zziplib/zziplib-src/docs/Makefile.in
index 03ab81a5738..b6a6ea453dd 100644
--- a/Build/source/libs/zziplib/zziplib-src/docs/Makefile.in
+++ b/Build/source/libs/zziplib/zziplib-src/docs/Makefile.in
@@ -1,9 +1,8 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -15,6 +14,51 @@
@SET_MAKE@
VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -35,7 +79,8 @@ build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
subdir = docs
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in COPYING.LIB
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/uses/mkinstalldirs COPYING.LIB
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/ac_compile_check_sizeof.m4 \
$(top_srcdir)/m4/ac_set_default_paths_system.m4 \
@@ -48,7 +93,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ac_compile_check_sizeof.m4 \
$(top_srcdir)/m4/ax_check_aligned_access_required.m4 \
$(top_srcdir)/m4/ax_configure_args.m4 \
$(top_srcdir)/m4/ax_create_pkgconfig_info.m4 \
- $(top_srcdir)/m4/ax_enable_builddir_uname.m4 \
+ $(top_srcdir)/m4/ax_enable_builddir.m4 \
$(top_srcdir)/m4/ax_expand_prefix.m4 \
$(top_srcdir)/m4/ax_maintainer_mode_auto_silent.m4 \
$(top_srcdir)/m4/ax_not_enable_frame_pointer.m4 \
@@ -72,11 +117,30 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/uses/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+am__v_GEN_1 =
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 =
SOURCES =
DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AS = @AS@
AUTOCONF = @AUTOCONF@
@@ -324,11 +388,11 @@ mostlyclean-libtool:
clean-libtool:
-rm -rf .libs _libs
-tags: TAGS
-TAGS:
+tags TAGS:
+
+ctags CTAGS:
-ctags: CTAGS
-CTAGS:
+cscope cscopelist:
distdir: $(DISTFILES)
@@ -375,10 +439,15 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
mostlyclean-generic:
clean-generic:
@@ -461,16 +530,17 @@ uninstall-am:
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic clean-libtool \
- distclean distclean-generic distclean-libtool distdir dvi \
- dvi-am html html-am info info-am install install-am \
- install-data install-data-am install-data-local install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- uninstall uninstall-am
+ cscopelist-am ctags-am distclean distclean-generic \
+ distclean-libtool distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am \
+ install-data-local install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \
+ uninstall-am
all : all-am default
diff --git a/Build/source/libs/zziplib/zziplib-src/docs/cpp2markdown-1.py b/Build/source/libs/zziplib/zziplib-src/docs/cpp2markdown-1.py
new file mode 100644
index 00000000000..60d28c4a0f4
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/docs/cpp2markdown-1.py
@@ -0,0 +1,249 @@
+#! /usr/bin/env python
+import pygments.lexers.compiled as lexer
+import optparse
+import re
+from pygments.token import Token
+import logging
+
+logg = logging.getLogger(__name__)
+
+FileComment = "FileComment"
+FileInclude = "FileInclude"
+FunctionComment = "FunctionComment"
+FunctionPrototype = "FunctionPrototype"
+
+# use the markdown lexer to identify elements
+# then filter only those we want. The returned
+# token list is more global flagging the role
+# of each token for the manual generation.
+class CppToMarkdown:
+ def __init__(self):
+ self.alldefinitions = 0
+ self.internaldefs = ["static"]
+ self.filecomment_done = ""
+ self.fileinclude_done = ""
+ self.filecomment_text = ""
+ self.fileinclude_text = ""
+ self.comment_text = ""
+ self.function_text = ""
+ self.nesting = 0
+ def split_copyright(self, text):
+ # there are two modes - the copyright starts in the first line
+ # and the source description follows or the other way round.
+ lines = text.split("\n")
+ if len(lines) <= 2:
+ return "", text
+ introtext = [lines[0]]
+ copyright = [lines[0]]
+ check1 = re.compile(r"^\s[*]\s+[(][c][C][)]")
+ check2 = re.compile(r"^\s[*]\s+\b[Cc]opyright\b")
+ empty1 = re.compile(r"^\s[*]\s*$")
+ state = "intro"
+ for i in xrange(1,len(lines)-1):
+ line = lines[i]
+ if state == "intro":
+ if empty1.match(line):
+ introtext += [ line ]
+ continue
+ if check1.match(line) or check2.match(line):
+ state = "copyrightfirst"
+ copyright += [ line ]
+ else:
+ state = "introtextfirst"
+ introtext += [ line ]
+ elif state == "copyrightfirst":
+ if empty1.match(line):
+ state = "introtextlast"
+ introtext += [ line ]
+ else:
+ copyright += [ line ]
+ elif state == "introtextfirst":
+ if check1.match(line) or check2.match(line):
+ state = "copyrightlast"
+ copyright += [ line ]
+ else:
+ introtext += [ line ]
+ elif state == "copyrightlast":
+ copyright += [ line ]
+ elif state == "introtextlast":
+ introtext += [ line ]
+ else:
+ logg.fatal("UNKNOWN STATE %s", state)
+ introtext += [lines[-1]]
+ copyright += [lines[-1]]
+ logg.debug("@ COPYRIGHT\n %s", copyright)
+ logg.debug("@ INTROTEXT\n %s", introtext)
+ return "\n".join(copyright), "\n".join(introtext)
+ def commentblock(self, text):
+ prefix = re.compile(r"(?s)^\s*[/][*]+([^\n]*)(?=\n)")
+ suffix = re.compile(r"(?s)\n [*][/]\s*")
+ empty = re.compile(r"(?s)\n [*][ \t]*(?=\n)")
+ lines1 = re.compile(r"(?s)\n [*][ ][\t]")
+ lines2 = re.compile(r"(?s)\n [*][ ]")
+ lines3 = re.compile(r"(?s)\n [*][\t][\t]")
+ lines4 = re.compile(r"(?s)\n [*][\t]")
+ text = suffix.sub("\n", text)
+ text = prefix.sub("> \\1\n", text)
+ text = empty.sub("\n", text)
+ text = lines1.sub("\n ", text)
+ text = lines2.sub("\n", text)
+ text = lines3.sub("\n ", text)
+ text = lines4.sub("\n ", text)
+ return text
+ def functionblock(self, text):
+ empty = re.compile(r"(?s)\n[ \t]*(?=\n)")
+ text = " " + text.replace("\n", "\n ")
+ text = empty.sub("", text)
+ return text
+ def functionname(self, text):
+ check1 = re.compile(r"^[^()=]*(\b\w+)\s*[(=]")
+ found = check1.match(text)
+ if found:
+ return found.group(1)
+ check2 = re.compile(r"^[^()=]*(\b\w+)\s*$")
+ found = check2.match(text)
+ if found:
+ return found.group(1)
+ return ""
+ def run(self, filename):
+ filetext = open(filename).read()
+ for line in self.process(filetext, filename):
+ print line
+ def process(self, filetext, filename=""):
+ section_ruler = "-----------------------------------------"
+ copyright = ""
+ for token, text in self.parse(filetext):
+ if token == FileInclude:
+ yield "## SOURCE " + filename.replace("../", "")
+ yield " #" + text.replace("\n", "\n ")
+ elif token == FileComment:
+ yield "### INTRODUCTION"
+ copyright, introduction = self.split_copyright(text)
+ yield self.commentblock(introduction)
+ elif token == FunctionPrototype:
+ name = self.functionname(text)
+ yield section_ruler
+ yield "### " + name
+ # yield '<a id="%s"></a>' % name
+ yield "#### NAME"
+ yield " " + name
+ yield "#### SYNOPSIS"
+ yield self.functionblock(text)
+ elif token == FunctionComment:
+ if text:
+ yield "#### DESCRIPTION"
+ yield self.commentblock(text)
+ else:
+ if text:
+ yield "#### NOTES"
+ print token, text.replace("\n", "\n ")
+ if copyright:
+ yield section_ruler
+ yield "### COPYRIGHT"
+ yield self.commentblock(copyright)
+ def isexported_function(self):
+ function = self.function_text.strip().replace("\n"," ")
+ logg.debug("@ --------------------------------------")
+ logg.debug("@ ALLDEFINITIONS %s", self.alldefinitions)
+ if function.startswith("static ") and self.alldefinitions < 3:
+ logg.debug("@ ONLY INTERNAL %s", function)
+ return False
+ if not self.comment_text:
+ if not self.alldefinitions:
+ logg.info("@ NO COMMENT ON %s", function)
+ return False
+ else:
+ logg.warn("@ NO COMMENT ON %s", function)
+ text = self.comment_text
+ if text.startswith("/**"): return True
+ if text.startswith("/*!"): return True
+ if text.startswith("///"): return True
+ if text.startswith("//!"): return True
+ if self.alldefinitions >= 1:
+ if text.startswith("/*"): return True
+ if text.startswith("//"): return True
+ if self.alldefinitions >= 2:
+ return True
+ logg.debug("@ NO ** COMMENT %s", self.function_text.strip())
+ defs = self.function_text
+ return False
+ def parse(self, filetext):
+ c = lexer.CLexer()
+ for token, text in c.get_tokens(filetext):
+ logg.debug("|| %s %s", token, text.replace("\n", "\n |"))
+ # completion
+ if token != Token.Comment.Preproc and self.fileinclude_done == "no":
+ yield FileInclude, self.fileinclude_text
+ if self.filecomment_text:
+ yield FileComment, self.filecomment_text
+ self.fileinclude_done = "done"
+ # parsing
+ if token == Token.Comment.Multiline:
+ if not self.filecomment_done:
+ self.filecomment_done = "done"
+ self.filecomment_text = text
+ # wait until we know it is not a function documentation
+ self.comment_text = text
+ else:
+ self.comment_text = text
+ elif token == Token.Comment.Preproc and "include" in text:
+ if not self.fileinclude_done:
+ self.fileinclude_done = "no"
+ self.fileinclude_text += text
+ self.comment_text = ""
+ elif token == Token.Comment.Preproc and self.fileinclude_done == "no":
+ if not "\n" in self.fileinclude_text:
+ self.fileinclude_text += text
+ self.comment_text = ""
+ elif token == Token.Comment.Preproc:
+ self.comment_text = ""
+ self.function_text = ""
+ elif token == Token.Operator and text == "=":
+ if not self.nesting and self.function_text.strip():
+ if self.isexported_function():
+ yield FunctionPrototype, self.function_text
+ yield FunctionComment, self.comment_text
+ self.comment_text = ""
+ self.function_text = ""
+ elif token == Token.Punctuation and text == ";":
+ self.comment_text = ""
+ self.function_text = ""
+ elif token == Token.Punctuation and text == "{":
+ if not self.nesting and self.function_text.strip():
+ if self.isexported_function():
+ yield FunctionPrototype, self.function_text
+ yield FunctionComment, self.comment_text
+ self.comment_text = ""
+ self.function_text = ""
+ self.nesting += 1
+ elif token == Token.Punctuation and text == "}":
+ self.nesting -= 1
+ self.comment_text = ""
+ self.function_text = ""
+ else:
+ if not self.nesting:
+ self.function_text += text
+ else:
+ pass # yield "|",text
+
+
+if __name__ == "__main__":
+ _o = optparse.OptionParser()
+ _o.add_option("-v", "--verbose", action="count", default=0)
+ _o.add_option("-a", "--all", action="count", default=0,
+ help="include all definitions in the output (not only /**)")
+ opt, args = _o.parse_args()
+
+ logg.addHandler(logging.StreamHandler())
+ if opt.verbose:
+ logg.setLevel(logging.WARN - 10 * opt.verbose)
+
+ c = CppToMarkdown()
+ if opt.all:
+ c.alldefinitions = opt.all
+ for arg in args:
+ c.run(arg)
+
+
+
+
diff --git a/Build/source/libs/zziplib/zziplib-src/docs/cpp2markdown.py b/Build/source/libs/zziplib/zziplib-src/docs/cpp2markdown.py
new file mode 100644
index 00000000000..710bbdc2437
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/docs/cpp2markdown.py
@@ -0,0 +1,195 @@
+import pygments.lexers.compiled as lexer
+import optparse
+import re
+from pygments.token import Token
+import logging
+
+logg = logging.getLogger(__name__)
+
+FileComment = "FileComment"
+FileInclude = "FileInclude"
+FunctionComment = "FunctionComment"
+FunctionPrototype = "FunctionPrototype"
+
+# use the markdown lexer to identify elements
+# then filter only those we want. The returned
+# token list is more global flagging the role
+# of each token for the manual generation.
+class CppToMarkdown:
+ def __init__(self):
+ self.alldefinitions = 0
+ self.internaldefs = ["static"]
+ self.filecomment_done = ""
+ self.fileinclude_done = ""
+ self.filecomment_text = ""
+ self.fileinclude_text = ""
+ self.comment_text = ""
+ self.function_text = ""
+ self.nesting = 0
+ def commentblock(self, text):
+ emptyprefix = re.compile(r"(?s)^\s*[/][*]+[ \t]*(?=\n)")
+ prefix = re.compile(r"(?s)^\s*[/][*]+([^\n]*)(?=\n)")
+ suffix = re.compile(r"(?s)\n [*][/]\s*")
+ empty = re.compile(r"(?s)\n [*][ \t]*(?=\n)")
+ lines1 = re.compile(r"(?s)\n [*][ ][\t]")
+ lines2 = re.compile(r"(?s)\n [*][ ]")
+ lines3 = re.compile(r"(?s)\n [*][\t][\t]")
+ lines4 = re.compile(r"(?s)\n [*][\t]")
+ text = suffix.sub("\n", text)
+ text = emptyprefix.sub("", text)
+ text = prefix.sub("> \\1\n", text)
+ text = empty.sub("\n", text)
+ text = lines1.sub("\n ", text)
+ text = lines2.sub("\n", text)
+ text = lines3.sub("\n ", text)
+ text = lines4.sub("\n ", text)
+ return text
+ def functionblock(self, text):
+ empty = re.compile(r"(?s)\n[ \t]*(?=\n)")
+ text = " " + text.replace("\n", "\n ")
+ text = empty.sub("", text)
+ return text
+ def functionname(self, text):
+ check1 = re.compile(r"^[^()=]*(\b\w+)\s*[(=]")
+ found = check1.match(text)
+ if found:
+ return found.group(1)
+ check2 = re.compile(r"^[^()=]*(\b\w+)\s*$")
+ found = check2.match(text)
+ if found:
+ return found.group(1)
+ return ""
+ def run(self, filename):
+ filetext = open(filename).read()
+ for line in self.process(filetext, filename):
+ print line
+ def process(self, filetext, filename=""):
+ for token, text in self.parse(filetext):
+ if token == FileInclude:
+ yield "## SOURCE " + filename.replace("../", "")
+ yield " #" + text.replace("\n", "\n ")
+ elif token == FileComment:
+ yield "## INTRODUCTION"
+ yield self.commentblock(text)
+ elif token == FunctionPrototype:
+ name = self.functionname(text)
+ yield "-----------------------------------------"
+ yield "### " + name
+ yield "#### NAME"
+ yield " " + name
+ yield "#### SYNOPSIS"
+ yield self.functionblock(text)
+ elif token == FunctionComment:
+ if text:
+ yield "#### DESCRIPTION"
+ yield self.commentblock(text)
+ else:
+ if text:
+ yield "#### NOTES"
+ print token, text.replace("\n", "\n ")
+ def isexported_function(self):
+ function = self.function_text.strip().replace("\n"," ")
+ logg.debug("@ --------------------------------------")
+ logg.debug("@ ALLDEFINITIONS %s", self.alldefinitions)
+ if function.startswith("static ") and self.alldefinitions < 3:
+ logg.debug("@ ONLY INTERNAL %s", function)
+ return False
+ if not self.comment_text:
+ if not self.alldefinitions:
+ logg.info("@ NO COMMENT ON %s", function)
+ return False
+ else:
+ logg.warn("@ NO COMMENT ON %s", function)
+ text = self.comment_text
+ if text.startswith("/**"): return True
+ if text.startswith("/*!"): return True
+ if text.startswith("///"): return True
+ if text.startswith("//!"): return True
+ if self.alldefinitions >= 1:
+ if text.startswith("/*"): return True
+ if text.startswith("//"): return True
+ if self.alldefinitions >= 2:
+ return True
+ logg.debug("@ NO ** COMMENT %s", self.function_text.strip())
+ defs = self.function_text
+ return False
+ def parse(self, filetext):
+ c = lexer.CLexer()
+ for token, text in c.get_tokens(filetext):
+ logg.debug("|| %s %s", token, text.replace("\n", "\n |"))
+ # completion
+ if token != Token.Comment.Preproc and self.fileinclude_done == "no":
+ yield FileInclude, self.fileinclude_text
+ if self.filecomment_text:
+ yield FileComment, self.filecomment_text
+ self.fileinclude_done = "done"
+ # parsing
+ if token == Token.Comment.Multiline:
+ if not self.filecomment_done:
+ self.filecomment_done = "done"
+ self.filecomment_text = text
+ # wait until we know it is not a function documentation
+ self.comment_text = text
+ else:
+ self.comment_text = text
+ elif token == Token.Comment.Preproc and "include" in text:
+ if not self.fileinclude_done:
+ self.fileinclude_done = "no"
+ self.fileinclude_text += text
+ self.comment_text = ""
+ elif token == Token.Comment.Preproc and self.fileinclude_done == "no":
+ if not "\n" in self.fileinclude_text:
+ self.fileinclude_text += text
+ self.comment_text = ""
+ elif token == Token.Comment.Preproc:
+ self.comment_text = ""
+ self.function_text = ""
+ elif token == Token.Operator and text == "=":
+ if not self.nesting and self.function_text.strip():
+ if self.isexported_function():
+ yield FunctionPrototype, self.function_text
+ yield FunctionComment, self.comment_text
+ self.comment_text = ""
+ self.function_text = ""
+ elif token == Token.Punctuation and text == ";":
+ self.comment_text = ""
+ self.function_text = ""
+ elif token == Token.Punctuation and text == "{":
+ if not self.nesting and self.function_text.strip():
+ if self.isexported_function():
+ yield FunctionPrototype, self.function_text
+ yield FunctionComment, self.comment_text
+ self.comment_text = ""
+ self.function_text = ""
+ self.nesting += 1
+ elif token == Token.Punctuation and text == "}":
+ self.nesting -= 1
+ self.comment_text = ""
+ self.function_text = ""
+ else:
+ if not self.nesting:
+ self.function_text += text
+ else:
+ pass # yield "|",text
+
+
+if __name__ == "__main__":
+ _o = optparse.OptionParser()
+ _o.add_option("-v", "--verbose", action="count", default=0)
+ _o.add_option("-a", "--all", action="count", default=0,
+ help="include all definitions in the output (not only /**)")
+ opt, args = _o.parse_args()
+
+ logg.addHandler(logging.StreamHandler())
+ if opt.verbose:
+ logg.setLevel(logging.WARN - 10 * opt.verbose)
+
+ c = CppToMarkdown()
+ if opt.all:
+ c.alldefinitions = opt.all
+ for arg in args:
+ c.run(arg)
+
+
+
+
diff --git a/Build/source/libs/zziplib/zziplib-src/docs/dir-zzip-192.png b/Build/source/libs/zziplib/zziplib-src/docs/dir-zzip-192.png
new file mode 100644
index 00000000000..2207e825182
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/docs/dir-zzip-192.png
Binary files differ
diff --git a/Build/source/libs/zziplib/zziplib-src/docs/dir-zzip-64.png b/Build/source/libs/zziplib/zziplib-src/docs/dir-zzip-64.png
new file mode 100644
index 00000000000..c98b192c11e
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/docs/dir-zzip-64.png
Binary files differ
diff --git a/Build/source/libs/zziplib/zziplib-src/docs/site.htm b/Build/source/libs/zziplib/zziplib-src/docs/site.htm
new file mode 100644
index 00000000000..6f4e4e65066
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/docs/site.htm
@@ -0,0 +1,68 @@
+<html><head><title>zziplib</title>
+ <style>
+ a:link { text-decoration : none ; color : #000080 ; }
+ a:visited { text-decoration : none ; color : #200060 ; }
+ .justify { text-align : justify ; }
+ </style>
+</head><body>
+
+<table width="100%"><tr valign="top"><td bgcolor="#F0F0F0" width="145">
+<center>
+ <big><big><big><b>
+ <font color="#800080"><sup>Z</sup>ZIP<sub>lib</sub></font>
+ </b></big></big></big>
+<br><big><b> <!--VERSION--> </b></big>
+</center>
+<hr> <a href="zzip-index.html">Library</a>
+<br>-<a href="zzip-zip.html">ZIP Access</a>
+<br>-<a href="zzip-file.html">Transparently</a>
+<br>-<a href="zzip-sdl-rwops.html">SDLrwops Example</a>
+<br>-<a href="zzip-extio.html">ext/io Customization</a>
+<br>-<a href="zzip-xor.html">xor/io Obfuscation</a>
+<br>-<a href="zzip-api.html">Library API</a>
+<br>-<a href="zzip-parse.html">Parsing ZIPs</a>
+<br>-<a href="64on32.html">64on32 extras</a>
+<br>-<a href="future.html">Next To Come</a>
+<br>-<a href="configs.html">Config Helpers</a>
+<br>-<a href="sfx-make.html">Making a zip/exe</a>
+<br>-<a href="history.html">Hints And Links</a>
+<br>-<a href="referentials.html">Referentials</a>
+<br> -<a href="zziplib.html">Functions List #</a>
+<!--START-->
+<br> -<a href="man/index.html">The Manual Pages #</a>
+<!--ENDS-->
+
+<br>&nbsp&nbsp&nbsp <small>(#&nbsp;autogenerated)</small>
+
+<br>&nbsp;<hr>
+
+<br><b><a alt="Tarballs, RPM-archive and windll-ZIPs can be downloaded from"
+ href="http://sourceforge.net/project/showfiles.php?group_id=6389">
+ Download Area *</a></b>
+<br><a alt="Sourceforge Project CVS web access"
+ href="http://zziplib.svn.sourceforge.net/viewvc/zziplib/">Sourceforge SVN</a>
+<br><a alt="Sourceforge Project Index Page"
+ href="http://sourceforge.net/projects/zziplib">Sourceforge Project</a>
+<br><a alt="the zziplib webpage at sourceforge"
+ href="http://zziplib.sourceforge.net">zziplib.sf.net
+ <small><i>Home</i></small></a>
+
+<br><small><a alt="zziplib - license details"
+ href="copying.html">LGPL/MPL license</a></small>
+<br>&nbsp;
+<hr>
+<center><!--START-->
+ <a href="http://sourceforge.net/project/?group_id=6389">
+ <img src="http://sourceforge.net/sflogo.php?group_id=6389&type=2"
+ border="0" alt="sourceforge.net" width="125" height="37">
+ </a>
+</center><!--ENDS-->
+
+<p align="right"><small>
+generated <!--DATE-->
+</small>
+<br> <small>(C)</small> Guido Draheim
+<br><i> guidod<small>@</small>gmx.de</i>
+</p>
+
+</td><td>
diff --git a/Build/source/libs/zziplib/zziplib-src/docs/zzipfseeko.html b/Build/source/libs/zziplib/zziplib-src/docs/zzipfseeko.html
deleted file mode 100644
index c9d4c4cf02f..00000000000
--- a/Build/source/libs/zziplib/zziplib-src/docs/zzipfseeko.html
+++ /dev/null
@@ -1,176 +0,0 @@
-<html><head><title>zziplib Library Functions</title>
-</head><body>
-<h2>zziplib Library Functions</h2><p>Version 0.13.62</p><p><big><b><code>#include &lt;zzip/fseeko.h&gt;</code></b></big></p><table width="100%"><tr><td valign="top"><code><b><code><a href="#zzip_entry_fopen">zzip_entry_fopen</a></code></b>(ZZIP_ENTRY * entry, int takeover)
- : zzip__new__ ZZIP_ENTRY_FILE *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_entry_ffile">zzip_entry_ffile</a></code></b>(FILE * disk, char *filename)
- : zzip__new__ ZZIP_ENTRY_FILE *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_entry_fread">zzip_entry_fread</a></code></b>(void *ptr, zzip_size_t sized, zzip_size_t nmemb,
- ZZIP_ENTRY_FILE * file)
- : zzip_size_t
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_entry_fclose">zzip_entry_fclose</a></code></b>(ZZIP_ENTRY_FILE * file)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_entry_feof">zzip_entry_feof</a></code></b>(ZZIP_ENTRY_FILE * file)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_entry_data_offset">zzip_entry_data_offset</a></code></b>(ZZIP_ENTRY * entry)
- : zzip_off_t
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_entry_fread_file_header">zzip_entry_fread_file_header</a></code></b>(ZZIP_ENTRY * entry,
- struct zzip_file_header *file_header)
- : static zzip_off_t
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_entry_strdup_name">zzip_entry_strdup_name</a></code></b>(ZZIP_ENTRY * entry)
- : zzip__new__ char *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_entry_findfile">zzip_entry_findfile</a></code></b>(FILE * disk, char *filename,
- ZZIP_ENTRY * _zzip_restrict entry, zzip_strcmp_fn_t compare)
- : zzip__new__ ZZIP_ENTRY *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_entry_findfirst">zzip_entry_findfirst</a></code></b>(FILE * disk)
- : zzip__new__ ZZIP_ENTRY *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_entry_findnext">zzip_entry_findnext</a></code></b>(ZZIP_ENTRY * _zzip_restrict entry)
- : zzip__new__ ZZIP_ENTRY *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_entry_free">zzip_entry_free</a></code></b>(ZZIP_ENTRY * entry)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_entry_findmatch">zzip_entry_findmatch</a></code></b>(FILE * disk, char *filespec,
- ZZIP_ENTRY * _zzip_restrict entry,
- zzip_fnmatch_fn_t compare, int flags)
- : zzip__new__ ZZIP_ENTRY *
-</code></td></tr></table><h3>Documentation</h3><dl><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_entry_fopen">zzip_entry_fopen</a></b>(ZZIP_ENTRY * entry, int takeover)
- : zzip__new__ ZZIP_ENTRY_FILE *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_entry_ffile">zzip_entry_ffile</a></b>(FILE * disk, char *filename)
- : zzip__new__ ZZIP_ENTRY_FILE *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_entry_fread">zzip_entry_fread</a></b>(void *ptr, zzip_size_t sized, zzip_size_t nmemb,
- ZZIP_ENTRY_FILE * file)
- : zzip_size_t
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_entry_fclose">zzip_entry_fclose</a></b>(ZZIP_ENTRY_FILE * file)
- : int
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_entry_feof">zzip_entry_feof</a></b>(ZZIP_ENTRY_FILE * file)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em> open a file within a zip disk for reading</em> </td><td align="right"> <em><small>zzip/fseeko.c</small></em></td></table><p>
- The <code>zzip_entry_fopen</code> function does take an "entry" argument and copies it (or just takes
- it over as owner) to a new ZZIP_ENTRY_FILE handle structure. That
- structure contains also a zlib buffer for decoding. The <code>zzip_entry_fopen</code> function does
- seek to the file_header of the given "entry" and validates it for the
- data buffer following it. We do also prefetch some data from the data
- buffer thereby trying to match the disk pagesize for faster access later.
- The <code><a href="#zzip_entry_fread">zzip_entry_fread</a></code> will then read in chunks of pagesizes which is
- the size of the internal readahead buffer. If an error occurs then null
- is returned.
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_entry_ffile</code> function opens a file found by name, so it does a search into
- the zip central directory with <code><a href="#zzip_entry_findfile">zzip_entry_findfile</a></code> and whatever
- is found first is given to <code><a href="#zzip_entry_fopen">zzip_entry_fopen</a></code>
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_entry_fread</code> function reads more bytes into the output buffer specified as
- arguments. The return value is null on eof or error, the stdio-like
- interface can not distinguish between these so you need to check
- with <code><a href="#zzip_entry_feof">zzip_entry_feof</a></code> for the difference.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_entry_fclose</code> function releases any zlib decoder info needed for decompression
- and dumps the ZZIP_ENTRY_FILE struct then.
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_entry_feof</code> function allows to distinguish an error from an eof condition.
- Actually, if we found an error but we did already reach eof then we
- just keep on saying that it was an eof, so the app can just continue.
-</p>
-</td></tr></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_entry_data_offset">zzip_entry_data_offset</a></b>(ZZIP_ENTRY * entry)
- : zzip_off_t
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_entry_fread_file_header">zzip_entry_fread_file_header</a></b>(ZZIP_ENTRY * entry,
- struct zzip_file_header *file_header)
- : static zzip_off_t
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_entry_strdup_name">zzip_entry_strdup_name</a></b>(ZZIP_ENTRY * entry)
- : zzip__new__ char *
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em> helper functions for (fseeko) zip access api</em> </td><td align="right"> <em><small>zzip/fseeko.c</small></em></td></table><p>
- The <code>zzip_entry_data_offset</code> functions returns the seekval offset of the data portion of the
- file referenced by the given zzip_entry. It requires an intermediate
- check of the file_header structure (i.e. it reads it from disk). After
- this call, the contained diskfile readposition is already set to the
- data_offset returned here. On error -1 is returned.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_entry_fread_file_header</code> functions read the correspoding struct zzip_file_header from
- the zip disk of the given "entry". The returned off_t points to the
- end of the file_header where the current fseek pointer has stopped.
- This is used to immediatly parse out any filename/extras block following
- the file_header. The return value is null on error.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_entry_strdup_name</code> function is a big helper despite its little name: in a zip file the
- encoded filenames are usually NOT zero-terminated but for common usage
- with libc we need it that way. Secondly, the filename SHOULD be present
- in the zip central directory but if not then we fallback to the filename
- given in the file_header of each compressed data portion.
-</p>
-</td></tr></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_entry_findfile">zzip_entry_findfile</a></b>(FILE * disk, char *filename,
- ZZIP_ENTRY * _zzip_restrict entry, zzip_strcmp_fn_t compare)
- : zzip__new__ ZZIP_ENTRY *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_entry_findfirst">zzip_entry_findfirst</a></b>(FILE * disk)
- : zzip__new__ ZZIP_ENTRY *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_entry_findnext">zzip_entry_findnext</a></b>(ZZIP_ENTRY * _zzip_restrict entry)
- : zzip__new__ ZZIP_ENTRY *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_entry_free">zzip_entry_free</a></b>(ZZIP_ENTRY * entry)
- : int
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_entry_findmatch">zzip_entry_findmatch</a></b>(FILE * disk, char *filespec,
- ZZIP_ENTRY * _zzip_restrict entry,
- zzip_fnmatch_fn_t compare, int flags)
- : zzip__new__ ZZIP_ENTRY *
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em> search for files in the (fseeko) zip central directory</em> </td><td align="right"> <em><small>zzip/fseeko.c</small></em></td></table><p>
- The <code>zzip_entry_findfile</code> function is given a filename as an additional argument, to find the
- disk_entry matching a given filename. The compare-function is usually
- strcmp or strcasecmp or perhaps strcoll, if null then strcmp is used.
- - use null as argument for "old"-entry when searching the first
- matching entry, otherwise the last returned value if you look for other
- entries with a special "compare" function (if null then a doubled search
- is rather useless with this variant of _findfile). If no further entry is
- found then null is returned and any "old"-entry gets already free()d.
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_entry_findfirst</code> function is the first call of all the zip access functions here.
- It contains the code to find the first entry of the zip central directory.
- Here we require the stdio handle to represent a real zip file where the
- disk_trailer is _last_ in the file area, so that its position would be at
- a fixed offset from the end of the file area if not for the comment field
- allowed to be of variable length (which needs us to do a little search
- for the disk_tailer). However, in this simple implementation we disregard
- any disk_trailer info telling about multidisk archives, so we just return
- a pointer to the first entry in the zip central directory of that file.
-</p><p>
- For an actual means, we are going to search backwards from the end
- of the mmaped block looking for the PK-magic signature of a
- disk_trailer. If we see one then we check the rootseek value to
- find the first disk_entry of the root central directory. If we find
- the correct PK-magic signature of a disk_entry over there then we
- assume we are done and we are going to return a pointer to that label.
-</p><p>
- The return value is a pointer to the first zzip_disk_entry being checked
- to be within the bounds of the file area specified by the arguments. If
- no disk_trailer was found then null is returned, and likewise we only
- accept a disk_trailer with a seekvalue that points to a disk_entry and
- both parts have valid PK-magic parts. Beyond some sanity check we try to
- catch a common brokeness with zip archives that still allows us to find
- the start of the zip central directory.
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_entry_findnext</code> function takes an existing "entry" in the central root directory
- (e.g. from zzip_entry_findfirst) and moves it to point to the next entry.
- On error it returns 0, otherwise the old entry. If no further match is
- found then null is returned and the entry already free()d. If you want
- to stop searching for matches before that case then please call
- <code><a href="#zzip_entry_free">zzip_entry_free</a></code> on the cursor struct ZZIP_ENTRY.
-</p>
-</td></tr><tr><td valign="top"><p> the <code>zzip_entry_free</code> function releases the malloc()ed areas needed for zzip_entry, the
- pointer is invalid afterwards. The <code>zzip_entry_free</code> function has #define synonyms of
- zzip_entry_findlast(), zzip_entry_findlastfile(), zzip_entry_findlastmatch()
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_entry_findmatch</code> function uses a compare-function with an additional argument
- and it is called just like fnmatch(3) from POSIX.2 AD:1993), i.e.
- the argument filespec first and the ziplocal filename second with
- the integer-flags put in as third to the indirect call. If the
- platform has fnmatch available then null-compare will use that one
- and otherwise we fall back to mere strcmp, so if you need fnmatch
- searching then please provide an implementation somewhere else.
- - use null as argument for "after"-entry when searching the first
- matching entry, or the last disk_entry return-value to find the
- next entry matching the given filespec. If no further entry is
- found then null is returned and any "old"-entry gets already free()d.
-</p>
-</td></tr></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd></dl>
-</body></html>
diff --git a/Build/source/libs/zziplib/zziplib-src/docs/zziplib-manpages.tar b/Build/source/libs/zziplib/zziplib-src/docs/zziplib-manpages.tar
deleted file mode 100644
index a47ab36a2b3..00000000000
--- a/Build/source/libs/zziplib/zziplib-src/docs/zziplib-manpages.tar
+++ /dev/null
Binary files differ
diff --git a/Build/source/libs/zziplib/zziplib-src/docs/zziplib.html b/Build/source/libs/zziplib/zziplib-src/docs/zziplib.html
index b053930ec8e..a73f26f7942 100644
--- a/Build/source/libs/zziplib/zziplib-src/docs/zziplib.html
+++ b/Build/source/libs/zziplib/zziplib-src/docs/zziplib.html
@@ -1,464 +1,1255 @@
-<html><head><title>zziplib Library Functions</title>
+<html><head><title>zziplib - </title>
+ <style>
+ a:link { text-decoration : none ; color : #000080 ; }
+ a:visited { text-decoration : none ; color : #200060 ; }
+ .justify { text-align : justify ; }
+ </style>
</head><body>
-<h2>zziplib Library Functions</h2><p>Version 0.13.62</p><p><big><b><code>#include &lt;zzip/lib.h&gt;</code></b></big></p><table width="100%"><tr><td valign="top"><code><b><code><a href="#zzip_error">zzip_error</a></code></b>(ZZIP_DIR * dir)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_seterror">zzip_seterror</a></code></b>(ZZIP_DIR * dir, int errcode) : void
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_open">zzip_open</a></code></b>(zzip_char_t * filename, int o_flags)
- : ZZIP_FILE *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_open_ext_io">zzip_open_ext_io</a></code></b>(zzip_char_t * filename, int o_flags, int o_modes,
- zzip_strings_t * ext, zzip_plugin_io_t io)
- : ZZIP_FILE *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_open_shared_io">zzip_open_shared_io</a></code></b>(ZZIP_FILE * stream,
- zzip_char_t * filename, int o_flags, int o_modes,
- zzip_strings_t * ext, zzip_plugin_io_t io)
- : ZZIP_FILE *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_opendir">zzip_opendir</a></code></b>(zzip_char_t * filename)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_opendir_ext_io">zzip_opendir_ext_io</a></code></b>(zzip_char_t * filename, int o_modes,
- zzip_strings_t * ext, zzip_plugin_io_t io)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_file_real">zzip_file_real</a></code></b>(ZZIP_FILE * fp)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_dir_real">zzip_dir_real</a></code></b>(ZZIP_DIR * dir)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_realdir">zzip_realdir</a></code></b>(ZZIP_DIR * dir)
- : void *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_realfd">zzip_realfd</a></code></b>(ZZIP_FILE * fp)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_tell">zzip_tell</a></code></b>(ZZIP_FILE * fp)
- : zzip_off_t
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_tell32">zzip_tell32</a></code></b>(ZZIP_FILE * fp)
- : long
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_dir_stat">zzip_dir_stat</a></code></b>(ZZIP_DIR * dir, zzip_char_t * name, ZZIP_STAT * zs, int flags)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_file_stat">zzip_file_stat</a></code></b>(ZZIP_FILE * file, ZZIP_STAT * zs)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_fstat">zzip_fstat</a></code></b>(ZZIP_FILE * file, ZZIP_STAT * zs)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_strerror">zzip_strerror</a></code></b>(int errcode)
- : zzip_char_t *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_strerror_of">zzip_strerror_of</a></code></b>(ZZIP_DIR * dir)
- : zzip_char_t *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_dir_open">zzip_dir_open</a></code></b>(zzip_char_t * filename, zzip_error_t * e)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_dir_open_ext_io">zzip_dir_open_ext_io</a></code></b>(zzip_char_t * filename, zzip_error_t * e,
- zzip_strings_t * ext, zzip_plugin_io_t io)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_dir_read">zzip_dir_read</a></code></b>(ZZIP_DIR * dir, ZZIP_DIRENT * d)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_init_io">zzip_init_io</a></code></b>(zzip_plugin_io_handlers_t io, int flags)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_get_default_io">zzip_get_default_io</a></code></b>(void)
- : zzip_plugin_io_t
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_rewinddir">zzip_rewinddir</a></code></b>(ZZIP_DIR * dir)
- : void
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_telldir">zzip_telldir</a></code></b>(ZZIP_DIR * dir)
- : zzip_off_t
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_seekdir">zzip_seekdir</a></code></b>(ZZIP_DIR * dir, zzip_off_t offset)
- : void
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_telldir32">zzip_telldir32</a></code></b>(ZZIP_DIR * dir)
- : long
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_seekdir32">zzip_seekdir32</a></code></b>(ZZIP_DIR * dir, long offset)
- : void
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_fopen">zzip_fopen</a></code></b>(zzip_char_t * filename, zzip_char_t * mode)
- : ZZIP_FILE *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_freopen">zzip_freopen</a></code></b>(zzip_char_t * filename, zzip_char_t * mode, ZZIP_FILE * stream)
- : ZZIP_FILE *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_dirhandle">zzip_dirhandle</a></code></b>(ZZIP_FILE * fp)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_dirfd">zzip_dirfd</a></code></b>(ZZIP_DIR * dir)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_seek">zzip_seek</a></code></b>(ZZIP_FILE * fp, zzip_off_t offset, int whence)
- : zzip_off_t
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_seek32">zzip_seek32</a></code></b>(ZZIP_FILE * fp, long offset, int whence)
- : long
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_read">zzip_read</a></code></b>(ZZIP_FILE * fp, void *buf, zzip_size_t len)
- : zzip_ssize_t
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_fread">zzip_fread</a></code></b>(void *ptr, zzip_size_t size, zzip_size_t nmemb, ZZIP_FILE * file)
- : zzip_size_t
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_dir_free">zzip_dir_free</a></code></b>(ZZIP_DIR * dir)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_dir_close">zzip_dir_close</a></code></b>(ZZIP_DIR * dir)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_fclose">zzip_fclose</a></code></b>(ZZIP_FILE * fp)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_close">zzip_close</a></code></b>(ZZIP_FILE * fp)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_dir_fdopen">zzip_dir_fdopen</a></code></b>(int fd, zzip_error_t * errcode_p)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_dir_fdopen_ext_io">zzip_dir_fdopen_ext_io</a></code></b>(int fd, zzip_error_t * errcode_p,
- zzip_strings_t * ext, const zzip_plugin_io_t io)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_dir_alloc_ext_io">zzip_dir_alloc_ext_io</a></code></b>(zzip_strings_t * ext, const zzip_plugin_io_t io)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_dir_alloc">zzip_dir_alloc</a></code></b>(zzip_strings_t * fileext)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_readdir">zzip_readdir</a></code></b>(ZZIP_DIR * dir)
- : ZZIP_DIRENT *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_closedir">zzip_closedir</a></code></b>(ZZIP_DIR * dir)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_errno">zzip_errno</a></code></b>(int errcode)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_file_close">zzip_file_close</a></code></b>(ZZIP_FILE * fp)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_file_open">zzip_file_open</a></code></b>(ZZIP_DIR * dir, zzip_char_t * name, int o_mode)
- : ZZIP_FILE *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_inflate_init">zzip_inflate_init</a></code></b>(ZZIP_FILE * fp, struct zzip_dir_hdr *hdr)
- : static int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_file_read">zzip_file_read</a></code></b>(ZZIP_FILE * fp, void *buf, zzip_size_t len)
- : zzip_ssize_t
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_rewind">zzip_rewind</a></code></b>(ZZIP_FILE * fp)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_compr_str">zzip_compr_str</a></code></b>(int compr)
- : zzip_char_t *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#__zzip_fetch_disk_trailer">__zzip_fetch_disk_trailer</a></code></b>(int fd, zzip_off_t filesize,
- struct _disk_trailer *_zzip_restrict trailer,
- zzip_plugin_io_t io)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#__zzip_parse_root_directory">__zzip_parse_root_directory</a></code></b>(int fd,
- struct _disk_trailer *trailer,
- struct zzip_dir_hdr **hdr_return,
- zzip_plugin_io_t io)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#__zzip_try_open">__zzip_try_open</a></code></b>(zzip_char_t * filename, int filemode,
- zzip_strings_t * ext, zzip_plugin_io_t io)
- : int
-</code></td></tr></table><h3>Documentation</h3><dl><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_error">zzip_error</a></b>(ZZIP_DIR * dir)
- : int
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_seterror">zzip_seterror</a></b>(ZZIP_DIR * dir, int errcode) : void
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/info.c</small></em></td></table>
-</td></tr><tr><td valign="top"><p> The <code>zzip_seterror</code> function just does dir->errcode = errcode
+
+<table width="100%"><tr valign="top"><td bgcolor="#F0F0F0" width="145">
+<center>
+ <big><big><big><b>
+ <font color="#800080"><sup>Z</sup>ZIP<sub>lib</sub></font>
+ </b></big></big></big>
+<br><big><b> 0.13.24 </b></big>
+</center>
+<hr>
+
+<br> <a alt="zzip-index - Overview"
+ href="zzip-index.html">Library</a>
+<br>-<a alt="zzip-zip - Accessing Zip Archives with ZLib Decompression"
+ href="zzip-zip.html">ZIP Access</a>
+<br>-<a alt="zzip-file - Using Zipped Files Transparently"
+ href="zzip-file.html">Transparently</a>
+<br>-<a alt="zzip-sdl-rwops - Example to make an SDL_rwops Inteface"
+ href="zzip-sdl-rwops.html">SDLrwops Example</a>
+<br>-<a alt="zzip-extio - Customizing the file access"
+ href="zzip-extio.html">ext/io Customization</a>
+<br>-<a alt="zzip-xor - Using obfuscations like xor"
+ href="zzip-xor.html">xor/io Obfuscation</a>
+<br>-<a alt="zzip-api - The complete API description"
+ href="zzip-api.html">Library API</a>
+<br>-<a alt="zzip-parse - About zip parsing internals"
+ href="zzip-parse.html">Parsing ZIPs</a>
+<br>-<a alt="64on32 - About largefile problems"
+ href="64on32.html">64on32 extras</a>
+<br>-<a alt="future - What next to come"
+ href="future.html">Next To Come</a>
+<br>-<a alt="configs - To Configure Your zziplib-based software"
+ href="configs.html">Config Helpers</a>
+<br>-<a alt="sfx-make - to combine an EXE with a ZIP archive"
+ href="sfx-make.html">Making a zip/exe</a>
+<br>-<a alt="history - Hints And Links"
+ href="history.html">Hints And Links</a>
+<br>-<a alt="referentials - Where it is used"
+ href="referentials.html">Referentials</a>
+<br>-<a alt="zziplib - The Functions List (autogenerated)"
+ href="zziplib.html">Functions List #</a>
+<!--START-->
+<br>-<a alt="zzip/man - The Manual Pages (autogenerated)"
+ href="man/index.html">The Manual Pages #</a>
+<!--ENDS-->
+
+<br>&nbsp&nbsp&nbsp <small>(#&nbsp;autogenerated)</small>
+
+<br>&nbsp;<hr>
+
+<br><b><a alt="Tarballs, RPM-archive and windll-ZIPs can be downloaded from"
+ href="http://sourceforge.net/project/showfiles.php?group_id=6389">
+ Download Area *</a></b>
+<br><a alt="Sourceforge Project Index Page"
+ href="http://sourceforge.net/projects/zziplib">Sourceforge Project</a>
+<br><a alt="the zziplib webpage at sourceforge"
+ href="http://zziplib.sourceforge.net">zziplib.sf.net
+ <small><i>Home</i></small></a>
+
+<br><small><a alt="zziplib - license details"
+ href="copying.html">LGPL/MPL license</a></small>
+<br>&nbsp;
+<hr>
+<center><!--START-->
+ <a href="http://sourceforge.net/project/?group_id=6389">
+ <img src="http://sourceforge.net/sflogo.php?group_id=6389&type=2"
+ border="0" alt="sourceforge.net" width="125" height="37">
+ </a>
+</center><!--ENDS-->
+
+<p align="right"><small>
+generated 2003-12-12
+</small>
+<br> <small>(C)</small> Guido Draheim
+<br><i> guidod<small>@</small>gmx.de</i>
</p>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_open">zzip_open</a></b>(zzip_char_t * filename, int o_flags)
- : ZZIP_FILE *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_open_ext_io">zzip_open_ext_io</a></b>(zzip_char_t * filename, int o_flags, int o_modes,
- zzip_strings_t * ext, zzip_plugin_io_t io)
- : ZZIP_FILE *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_open_shared_io">zzip_open_shared_io</a></b>(ZZIP_FILE * stream,
- zzip_char_t * filename, int o_flags, int o_modes,
- zzip_strings_t * ext, zzip_plugin_io_t io)
- : ZZIP_FILE *
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/file.c</small></em></td></table>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_open_ext_io</code> function uses explicit ext and io instead of the internal
- defaults, setting them to zero is equivalent to <code><a href="#zzip_open">zzip_open</a></code>
-</p><p>
- note that the two flag types have been split into an o_flags
- (for fcntl-like openflags) and o_modes where the latter shall
- carry the zzip_flags and possibly accessmodes for unix filesystems.
- Since this version of zziplib can not write zipfiles, it is not
- yet used for anything else than zzip-specific modeflags.
-</p><p>
- The <code>zzip_open_ext_io</code> function returns a new zzip-handle (use <code><a href="#zzip_close">zzip_close</a></code> to return
- it). On error the <code>zzip_open_ext_io</code> function will return null setting <a href="http://www.opengroup.org/onlinepubs/000095399/functions/errno.html"><code>errno(3)</code></a>.
-</p><p>
- If any ext_io handlers were used then the referenced structure
- should be static as the allocated ZZIP_FILE does not copy them.
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_open_shared_io</code> function takes an extra stream argument - if a handle has been
- then ext/io can be left null and the new stream handle will pick up
- the ext/io. This should be used only in specific environment however
- since <code><a href="#zzip_file_real">zzip_file_real</a></code> does not store any ext-sequence.
-</p><p>
- The benefit for the <code>zzip_open_shared_io</code> function comes in when the old file handle
- was openened from a file within a zip archive. When the new file
- is in the same zip archive then the internal zzip_dir structures
- will be shared. It is even quicker, as no check needs to be done
- anymore trying to guess the zip archive place in the filesystem,
- here we just check whether the zip archive's filepath is a prefix
- part of the filename to be opened.
-</p><p>
- Note that the <code>zzip_open_shared_io</code> function is also used by <code><a href="#zzip_freopen">zzip_freopen</a></code> that
- will unshare the old handle, thereby possibly closing the handle.
-</p><p>
- The <code>zzip_open_shared_io</code> function returns a new zzip-handle (use <code><a href="#zzip_close">zzip_close</a></code> to return
- it). On error the <code>zzip_open_shared_io</code> function will return null setting <a href="http://www.opengroup.org/onlinepubs/000095399/functions/errno.html"><code>errno(3)</code></a>.
-</p>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_opendir">zzip_opendir</a></b>(zzip_char_t * filename)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_opendir_ext_io">zzip_opendir_ext_io</a></b>(zzip_char_t * filename, int o_modes,
- zzip_strings_t * ext, zzip_plugin_io_t io)
- : ZZIP_DIR *
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/dir.c</small></em></td></table>
-</td></tr><tr><td valign="top"><p> The <code>zzip_opendir_ext_io</code> function uses explicit ext and io instead of the internal
- defaults, setting them to zero is equivalent to <code><a href="#zzip_opendir">zzip_opendir</a></code>
-</p>
-</td></tr></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_file_real">zzip_file_real</a></b>(ZZIP_FILE * fp)
- : int
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_dir_real">zzip_dir_real</a></b>(ZZIP_DIR * dir)
- : int
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_realdir">zzip_realdir</a></b>(ZZIP_DIR * dir)
- : void *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_realfd">zzip_realfd</a></b>(ZZIP_FILE * fp)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/info.c</small></em></td></table>
-</td></tr><tr><td valign="top"><p> The <code>zzip_dir_real</code> function checks if the ZZIP_DIR-handle is wrapping
- a real directory or a zip-archive.
- Returns 1 for a stat'able directory, and 0 for a handle to zip-archive.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_realdir</code> function returns the posix DIR* handle (if one exists).
- Check before with <code><a href="#zzip_dir_real">zzip_dir_real</a></code> if the
- the ZZIP_DIR points to a real directory.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_realfd</code> function returns the posix file descriptor (if one exists).
- Check before with <code><a href="#zzip_file_real">zzip_file_real</a></code> if the
- the ZZIP_FILE points to a real file.
-</p>
-</td></tr></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_tell">zzip_tell</a></b>(ZZIP_FILE * fp)
- : zzip_off_t
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_tell32">zzip_tell32</a></b>(ZZIP_FILE * fp)
- : long
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/file.c</small></em></td></table>
-</td></tr><tr><td valign="top"><p> The <code>zzip_tell32</code> function is provided for users who can not use any largefile-mode.
-</p>
-</td></tr></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_dir_stat">zzip_dir_stat</a></b>(ZZIP_DIR * dir, zzip_char_t * name, ZZIP_STAT * zs, int flags)
- : int
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_file_stat">zzip_file_stat</a></b>(ZZIP_FILE * file, ZZIP_STAT * zs)
- : int
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_fstat">zzip_fstat</a></b>(ZZIP_FILE * file, ZZIP_STAT * zs)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/stat.c</small></em></td></table>
-</td></tr><tr><td valign="top"><p> The <code>zzip_file_stat</code> function will obtain information about a opened file _within_ a
- zip-archive. The file is supposed to be open (otherwise -1 is returned).
- The st_size stat-member contains the uncompressed size. The optional
- d_name is never set here.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_fstat</code> function will obtain information about a opened file which may be
- either real/zipped. The file is supposed to be open (otherwise -1 is
- returned). The st_size stat-member contains the uncompressed size.
- The optional d_name is never set here. For a real file, we do set the
- d_csize := st_size and d_compr := 0 for meaningful defaults.
-</p>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_strerror">zzip_strerror</a></b>(int errcode)
- : zzip_char_t *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_strerror_of">zzip_strerror_of</a></b>(ZZIP_DIR * dir)
- : zzip_char_t *
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/err.c</small></em></td></table>
-</td></tr><tr><td valign="top"><p> The <code>zzip_strerror_of</code> function fetches the errorcode from the <code>DIR-handle</code> and
- runs it through <code><a href="#zzip_strerror">zzip_strerror</a></code> to obtain the static string
- describing the error.
-</p>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_dir_open">zzip_dir_open</a></b>(zzip_char_t * filename, zzip_error_t * e)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_dir_open_ext_io">zzip_dir_open_ext_io</a></b>(zzip_char_t * filename, zzip_error_t * e,
- zzip_strings_t * ext, zzip_plugin_io_t io)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_dir_read">zzip_dir_read</a></b>(ZZIP_DIR * dir, ZZIP_DIRENT * d)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/zip.c</small></em></td></table>
-</td></tr><tr><td valign="top"><p> the <code>zzip_dir_open_ext_io</code> function uses explicit ext and io instead of the internal
- defaults. Setting these to zero is equivalent to <code><a href="#zzip_dir_open">zzip_dir_open</a></code>
- Note that the referenced ext_io plugin handlers structure must be
- static as it is not copied to the returned ZZIP_DIR structure.
-</p>
-</td></tr><tr><td valign="top"><p> fills the dirent-argument with the values and
- increments the read-pointer of the dir-argument.
-</p><p>
- returns 0 if there no entry (anymore).
-</p>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_init_io">zzip_init_io</a></b>(zzip_plugin_io_handlers_t io, int flags)
- : int
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_get_default_io">zzip_get_default_io</a></b>(void)
- : zzip_plugin_io_t
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/plugin.c</small></em></td></table>
-</td></tr><tr><td valign="top"><p> The <code>zzip_get_default_io</code> function returns a zzip_plugin_io_t handle to static defaults
- wrapping the posix io file functions for actual file access. The
- returned structure is shared by all threads in the system.
-</p>
-</td></tr></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_rewinddir">zzip_rewinddir</a></b>(ZZIP_DIR * dir)
- : void
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_telldir">zzip_telldir</a></b>(ZZIP_DIR * dir)
- : zzip_off_t
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_seekdir">zzip_seekdir</a></b>(ZZIP_DIR * dir, zzip_off_t offset)
- : void
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_telldir32">zzip_telldir32</a></b>(ZZIP_DIR * dir)
- : long
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_seekdir32">zzip_seekdir32</a></b>(ZZIP_DIR * dir, long offset)
- : void
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em> </em> </td><td align="right"> <em><small>zzip/dir.c</small></em></td></table><p> The <code>zzip_rewinddir</code> function is the equivalent of a <a href="http://www.opengroup.org/onlinepubs/000095399/functions/rewinddir.html"><code>rewinddir(2)</code></a> for a realdir or
- the zipfile in place of a directory. The ZZIP_DIR handle returned from
- <code><a href="#zzip_opendir">zzip_opendir</a></code> has a flag saying realdir or zipfile. As for a zipfile,
- the filenames will include the filesubpath, so take care.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_telldir</code> function is the equivalent of <a href="http://www.opengroup.org/onlinepubs/000095399/functions/telldir.html"><code>telldir(2)</code></a> for a realdir or zipfile.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_seekdir</code> function is the equivalent of <a href="http://www.opengroup.org/onlinepubs/000095399/functions/seekdir.html"><code>seekdir(2)</code></a> for a realdir or zipfile.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_telldir32</code> function is provided for users who can not use any largefile-mode.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_seekdir32</code> function is provided for users who can not use any largefile-mode.
-</p>
-</td></tr></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_fopen">zzip_fopen</a></b>(zzip_char_t * filename, zzip_char_t * mode)
- : ZZIP_FILE *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_freopen">zzip_freopen</a></b>(zzip_char_t * filename, zzip_char_t * mode, ZZIP_FILE * stream)
- : ZZIP_FILE *
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em> </em> </td><td align="right"> <em><small>zzip/file.c</small></em></td></table><p> The <code>zzip_fopen</code> function will <a href="http://www.opengroup.org/onlinepubs/000095399/functions/fopen.html"><code>fopen(3)</code></a> a real/zipped file.
-</p><p>
- It has some magic functionality builtin - it will first try to open
- the given <em>filename</em> as a normal file. If it does not
- exist, the given path to the filename (if any) is split into
- its directory-part and the file-part. A ".zip" extension is
- then added to the directory-part to create the name of a
- zip-archive. That zip-archive (if it exists) is being searched
- for the file-part, and if found a zzip-handle is returned.
-</p><p>
- Note that if the file is found in the normal fs-directory the
- returned structure is mostly empty and the <code><a href="#zzip_read">zzip_read</a></code> call will
- use the libc <a href="http://www.opengroup.org/onlinepubs/000095399/functions/read.html"><code>read(2)</code></a> to obtain data. Otherwise a <code><a href="#zzip_file_open">zzip_file_open</a></code>
- is performed and any error mapped to <a href="http://www.opengroup.org/onlinepubs/000095399/functions/errno.html"><code>errno(3)</code></a>.
-</p><p>
- unlike the posix-wrapper <code><a href="#zzip_open">zzip_open</a></code> the mode-argument is
- a string which allows for more freedom to support the extra
- zzip modes called ZZIP_CASEINSENSITIVE and ZZIP_IGNOREPATH.
- Currently, this <code><a href="#zzip_fopen">zzip_fopen</a></code> call will convert the following
- characters in the mode-string into their corrsponding mode-bits:
-</p><ul><li><p> <code> "r" : O_RDONLY : </code> read-only </p></li>
-<li><p> <code> "b" : O_BINARY : </code> binary (win32 specific) </p></li>
-<li><p> <code> "f" : O_NOCTTY : </code> no char device (unix) </p></li>
-<li><p> <code> "i" : ZZIP_CASELESS : </code> inside zip file </p></li>
-<li><p> <code> "*" : ZZIP_NOPATHS : </code> inside zip file only </p></li>
-</ul><p> all other modes will be ignored for zip-contained entries
- but they are transferred for compatibility and portability,
- including these extra sugar bits:
-</p><ul><li><p> <code> "x" : O_EXCL :</code> fail if file did exist </p></li>
-<li><p> <code> "s" : O_SYNC :</code> synchronized access </p></li>
-<li><p> <code> "n" : O_NONBLOCK :</code> nonblocking access </p></li>
-<li><p> <code> "z#" : compression level :</code> for zlib </p></li>
-<li><p> <code> "g#" : group access :</code> unix access bits </p></li>
-<li><p> <code> "u#" : owner access :</code> unix access bits </p></li>
-<li><p> <code> "o#" : world access :</code> unix access bits </p></li>
-</ul><p> ... the access bits are in traditional unix bit format
- with 7 = read/write/execute, 6 = read/write, 4 = read-only.
-</p><p>
- The default access mode is 0664, and the compression level
- is ignored since the lib can not yet write zip files, otherwise
- it would be the initialisation value for the zlib deflateInit
- where 0 = no-compression, 1 = best-speed, 9 = best-compression.
-</p><p>
- The <code>zzip_fopen</code> function returns a new zzip-handle (use <code><a href="#zzip_close">zzip_close</a></code> to return
- it). On error the <code>zzip_fopen</code> function will return null setting <a href="http://www.opengroup.org/onlinepubs/000095399/functions/errno.html"><code>errno(3)</code></a>.
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_freopen</code> function receives an additional argument pointing to
- a ZZIP_FILE* being already in use. If this extra argument is
- null then the <code>zzip_freopen</code> function is identical with calling <code><a href="#zzip_fopen">zzip_fopen</a></code>
-</p><p>
- Per default, the old file stream is closed and only the internal
- structures associated with it are kept. These internal structures
- may be reused for the return value, and this is a lot quicker when
- the filename matches a zipped file that is incidently in the very
- same zip arch as the old filename wrapped in the stream struct.
-</p><p>
- That's simply because the zip arch's central directory does not
- need to be read again. As an extension for the <code>zzip_freopen</code> function, if the
- mode-string contains a "q" then the old stream is not closed but
- left untouched, instead it is only given as a hint that a new
- file handle may share/copy the zip arch structures of the old file
- handle if that is possible, i.e when they are in the same zip arch.
-</p><p>
- The <code>zzip_freopen</code> function returns a new zzip-handle (use <code><a href="#zzip_close">zzip_close</a></code> to return
- it). On error the <code>zzip_freopen</code> function will return null setting <a href="http://www.opengroup.org/onlinepubs/000095399/functions/errno.html"><code>errno(3)</code></a>.
-</p>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_dirhandle">zzip_dirhandle</a></b>(ZZIP_FILE * fp)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_dirfd">zzip_dirfd</a></b>(ZZIP_DIR * dir)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/info.c</small></em></td></table>
-</td></tr><tr><td valign="top"><p> The <code>zzip_dirfd</code> function will just return dir->fd
-</p><p>
- If a ZZIP_DIR does point to a zipfile then the file-descriptor of that
- zipfile is returned, otherwise a NULL is returned and the ZZIP_DIR wraps
- a real directory DIR (if you have dirent on your system).
-</p>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_seek">zzip_seek</a></b>(ZZIP_FILE * fp, zzip_off_t offset, int whence)
- : zzip_off_t
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_seek32">zzip_seek32</a></b>(ZZIP_FILE * fp, long offset, int whence)
- : long
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/file.c</small></em></td></table>
-</td></tr><tr><td valign="top"><p> The <code>zzip_seek32</code> function is provided for users who can not use any largefile-mode.
-</p>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_read">zzip_read</a></b>(ZZIP_FILE * fp, void *buf, zzip_size_t len)
- : zzip_ssize_t
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_fread">zzip_fread</a></b>(void *ptr, zzip_size_t size, zzip_size_t nmemb, ZZIP_FILE * file)
- : zzip_size_t
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/file.c</small></em></td></table>
-</td></tr><tr><td valign="top">
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_dir_free">zzip_dir_free</a></b>(ZZIP_DIR * dir)
- : int
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_dir_close">zzip_dir_close</a></b>(ZZIP_DIR * dir)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/zip.c</small></em></td></table>
-</td></tr><tr><td valign="top"><p> It will also <a href="http://www.opengroup.org/onlinepubs/000095399/functions/free.html"><code>free(2)</code></a> the <code>ZZIP_DIR-handle</code> given.
- the counterpart for <code><a href="#zzip_dir_open">zzip_dir_open</a></code>
- see also <code><a href="#zzip_dir_free">zzip_dir_free</a></code>
-</p>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_fclose">zzip_fclose</a></b>(ZZIP_FILE * fp)
- : int
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_close">zzip_close</a></b>(ZZIP_FILE * fp)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/file.c</small></em></td></table>
-</td></tr><tr><td valign="top">
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_dir_fdopen">zzip_dir_fdopen</a></b>(int fd, zzip_error_t * errcode_p)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_dir_fdopen_ext_io">zzip_dir_fdopen_ext_io</a></b>(int fd, zzip_error_t * errcode_p,
- zzip_strings_t * ext, const zzip_plugin_io_t io)
- : ZZIP_DIR *
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/zip.c</small></em></td></table>
-</td></tr><tr><td valign="top"><p> the <code>zzip_dir_fdopen_ext_io</code> function uses explicit ext and io instead of the internal
- defaults, setting these to zero is equivalent to <code><a href="#zzip_dir_fdopen">zzip_dir_fdopen</a></code>
-</p>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_dir_alloc_ext_io">zzip_dir_alloc_ext_io</a></b>(zzip_strings_t * ext, const zzip_plugin_io_t io)
- : ZZIP_DIR *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_dir_alloc">zzip_dir_alloc</a></b>(zzip_strings_t * fileext)
- : ZZIP_DIR *
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/zip.c</small></em></td></table>
-</td></tr><tr><td valign="top"><p> the <code>zzip_dir_alloc</code> function is obsolete - it was generally used for implementation
- and exported to let other code build on it. It is now advised to
- use <code><a href="#zzip_dir_alloc_ext_io">zzip_dir_alloc_ext_io</a></code> now on explicitly, just set that second
- argument to zero to achieve the same functionality as the old style.
-</p>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_readdir">zzip_readdir</a></b>(ZZIP_DIR * dir)
- : ZZIP_DIRENT *
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/dir.c</small></em></td></table>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_closedir">zzip_closedir</a></b>(ZZIP_DIR * dir)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/dir.c</small></em></td></table>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_errno">zzip_errno</a></b>(int errcode)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/err.c</small></em></td></table>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_file_close">zzip_file_close</a></b>(ZZIP_FILE * fp)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/file.c</small></em></td></table>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_file_open">zzip_file_open</a></b>(ZZIP_DIR * dir, zzip_char_t * name, int o_mode)
- : ZZIP_FILE *
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/file.c</small></em></td></table>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_inflate_init">zzip_inflate_init</a></b>(ZZIP_FILE * fp, struct zzip_dir_hdr *hdr)
- : static int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/file.c</small></em></td></table>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_file_read">zzip_file_read</a></b>(ZZIP_FILE * fp, void *buf, zzip_size_t len)
- : zzip_ssize_t
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/file.c</small></em></td></table>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_rewind">zzip_rewind</a></b>(ZZIP_FILE * fp)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/file.c</small></em></td></table>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_compr_str">zzip_compr_str</a></b>(int compr)
- : zzip_char_t *
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/info.c</small></em></td></table>
-</td></tr></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="__zzip_fetch_disk_trailer">__zzip_fetch_disk_trailer</a></b>(int fd, zzip_off_t filesize,
- struct _disk_trailer *_zzip_restrict trailer,
- zzip_plugin_io_t io)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/zip.c</small></em></td></table>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="__zzip_parse_root_directory">__zzip_parse_root_directory</a></b>(int fd,
- struct _disk_trailer *trailer,
- struct zzip_dir_hdr **hdr_return,
- zzip_plugin_io_t io)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/zip.c</small></em></td></table>
-</td></tr></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="__zzip_try_open">__zzip_try_open</a></b>(zzip_char_t * filename, int filemode,
- zzip_strings_t * ext, zzip_plugin_io_t io)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em>...</em> </td><td align="right"> <em><small>zzip/zip.c</small></em></td></table>
-</td></tr></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd></dl>
+
+</td><td>
+<html><head><title> zziplib autodoc documentation </title></head>
+<body>
+
+<h1>zziplib <small><small><i>-0.10.82.pre2</i></small></small></h1>
+<table border=0 cellspacing=2 cellpadding=0><tr valign="top">
+<td valign="top"><code>void
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_rewinddir">
+ <code>zzip_rewinddir</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">1000
+ <code>(<nobr>ZZIP_DIR * dir</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_DIRENT*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_readdir">
+ <code>zzip_readdir</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">1000
+ <code>(<nobr>ZZIP_DIR * dir</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>zzip_off_t
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_telldir">
+ <code>zzip_telldir</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_telldir
+ <code>(<nobr>ZZIP_DIR* dir</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>void
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_seekdir">
+ <code>zzip_seekdir</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_seekdir
+ <code>(<nobr>ZZIP_DIR* dir</nobr>,
+<nobr>zzip_off_t offset</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_DIR*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_opendir">
+ <code>zzip_opendir</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_opendir
+ <code>(<nobr>zzip_char_t* filename</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_DIR*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_opendir_ext_io">
+ <code>zzip_opendir_ext_io</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_opendir_ext_io
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>int o_modes</nobr>,
+<nobr>zzip_strings_t* ext</nobr>,
+<nobr>zzip_plugin_io_t io</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_closedir">
+ <code>zzip_closedir</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_closedir
+ <code>(<nobr>ZZIP_DIR* dir</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>zzip_char_t*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_strerror">
+ <code>zzip_strerror</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_strerror
+ <code>(<nobr>int errcode</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>zzip_char_t*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_strerror_of">
+ <code>zzip_strerror_of</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_strerror_of
+ <code>(<nobr>ZZIP_DIR* dir</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_errno">
+ <code>zzip_errno</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_errno
+ <code>(<nobr>int errcode</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_file_close">
+ <code>zzip_file_close</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_file_close
+ <code>(<nobr>ZZIP_FILE * fp</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_FILE *
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_file_open">
+ <code>zzip_file_open</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_file_open
+ <code>(<nobr>ZZIP_DIR * dir</nobr>,
+<nobr>zzip_char_t* name</nobr>,
+<nobr>int o_mode</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>static int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_inflate_init">
+ <code>zzip_inflate_init</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_inflate_init
+ <code>(<nobr>ZZIP_FILE * fp</nobr>,
+<nobr>struct zzip_dir_hdr* hdr</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_fclose">
+ <code>zzip_fclose</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_fclose
+ <code>(<nobr>ZZIP_FILE * fp</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_close">
+ <code>zzip_close</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_close
+ <code>(<nobr>ZZIP_FILE* fp</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>zzip_ssize_t
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_file_read">
+ <code>zzip_file_read</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_file_read
+ <code>(<nobr>ZZIP_FILE * fp</nobr>,
+<nobr>char * buf</nobr>,
+<nobr>zzip_size_t len</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>zzip_ssize_t
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_read">
+ <code>zzip_read</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_read
+ <code>(<nobr>ZZIP_FILE * fp</nobr>,
+<nobr>char * buf</nobr>,
+<nobr>zzip_size_t len</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>zzip_size_t
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_fread">
+ <code>zzip_fread</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_fread
+ <code>(<nobr>void *ptr</nobr>,
+<nobr>zzip_size_t size</nobr>,
+<nobr>zzip_size_t nmemb</nobr>,
+<nobr>ZZIP_FILE *file</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_FILE*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_fopen">
+ <code>zzip_fopen</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_fopen
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>zzip_char_t* mode</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_FILE*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_freopen">
+ <code>zzip_freopen</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_freopen
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>zzip_char_t* mode</nobr>,
+<nobr>ZZIP_FILE* stream</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_FILE*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_open">
+ <code>zzip_open</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_open
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>int o_flags</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_FILE*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_open_ext_io">
+ <code>zzip_open_ext_io</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_open_ext_io
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>int o_flags</nobr>,
+<nobr>int o_modes</nobr>,
+<nobr>zzip_strings_t* ext</nobr>,
+<nobr>zzip_plugin_io_t io</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_FILE*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_open_shared_io">
+ <code>zzip_open_shared_io</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_open_shared_io
+ <code>(<nobr>ZZIP_FILE* stream</nobr>,
+<nobr>zzip_char_t* filename</nobr>,
+<nobr>int o_flags</nobr>,
+<nobr>int o_modes</nobr>,
+<nobr>zzip_strings_t* ext</nobr>,
+<nobr>zzip_plugin_io_t io</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_rewind">
+ <code>zzip_rewind</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_rewind
+ <code>(<nobr>ZZIP_FILE *fp</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>zzip_off_t
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_seek">
+ <code>zzip_seek</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_seek
+ <code>(<nobr>ZZIP_FILE * fp</nobr>,
+<nobr>zzip_off_t offset</nobr>,
+<nobr>int whence</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>zzip_off_t
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_tell">
+ <code>zzip_tell</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_tell
+ <code>(<nobr>ZZIP_FILE * fp</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_error">
+ <code>zzip_error</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_error
+ <code>(<nobr>ZZIP_DIR * dir</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>void
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_seterror">
+ <code>zzip_seterror</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_seterror
+ <code>(<nobr>ZZIP_DIR * dir</nobr>,
+<nobr>int errcode</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_DIR *
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_dirhandle">
+ <code>zzip_dirhandle</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_dirhandle
+ <code>(<nobr>ZZIP_FILE * fp</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_dirfd">
+ <code>zzip_dirfd</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_dirfd
+ <code>(<nobr>ZZIP_DIR* dir</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>zzip_char_t*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_compr_str">
+ <code>zzip_compr_str</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_compr_str
+ <code>(<nobr>int compr</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_dir_real">
+ <code>zzip_dir_real</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_dir_real
+ <code>(<nobr>ZZIP_DIR* dir</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_file_real">
+ <code>zzip_file_real</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_file_real
+ <code>(<nobr>ZZIP_FILE* fp</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>void*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_realdir">
+ <code>zzip_realdir</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_realdir
+ <code>(<nobr>ZZIP_DIR* dir</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_realfd">
+ <code>zzip_realfd</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_realfd
+ <code>(<nobr>ZZIP_FILE* fp</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>zzip_plugin_io_t
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_get_default_io">
+ <code>zzip_get_default_io</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_get_default_io
+ <code>(<nobr></nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int </code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_init_io">
+ <code>zzip_init_io</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_init_io
+ <code>(<nobr>struct zzip_plugin_io* io</nobr>,
+<nobr>int flags</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_dir_stat">
+ <code>zzip_dir_stat</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_dir_stat
+ <code>(<nobr>ZZIP_DIR * dir</nobr>,
+<nobr>zzip_char_t* name</nobr>,
+<nobr>ZZIP_STAT * zs</nobr>,
+<nobr>int flags</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>uint32_t </code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#__zzip_get32">
+ <code>__zzip_get32</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">__zzip_get32
+ <code>(<nobr>unsigned char * s</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>uint16_t </code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#__zzip_get16">
+ <code>__zzip_get16</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">__zzip_get16
+ <code>(<nobr>unsigned char * s</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#__zzip_find_disk_trailer">
+ <code>__zzip_find_disk_trailer</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">__zzip_find_disk_trailer
+ <code>(<nobr>int fd</nobr>,
+<nobr>zzip_off_t filesize</nobr>,
+<nobr>struct zzip_disk_trailer * trailer</nobr>,
+<nobr>zzip_plugin_io_t io</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#__zzip_parse_root_directory">
+ <code>__zzip_parse_root_directory</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">__zzip_parse_root_directory
+ <code>(<nobr>int fd</nobr>,
+<nobr>struct zzip_disk_trailer * trailer</nobr>,
+<nobr>struct zzip_dir_hdr ** hdr_return</nobr>,
+<nobr>zzip_plugin_io_t io</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_DIR*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_dir_alloc_ext_io">
+ <code>zzip_dir_alloc_ext_io</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_dir_alloc_ext_io
+ <code>(<nobr>zzip_strings_t* ext</nobr>,
+<nobr>const zzip_plugin_io_t io</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_DIR*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_dir_alloc">
+ <code>zzip_dir_alloc</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_dir_alloc
+ <code>(<nobr>zzip_strings_t* fileext</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_dir_free">
+ <code>zzip_dir_free</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_dir_free
+ <code>(<nobr>ZZIP_DIR * dir</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_dir_close">
+ <code>zzip_dir_close</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_dir_close
+ <code>(<nobr>ZZIP_DIR * dir</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_DIR *
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_dir_fdopen">
+ <code>zzip_dir_fdopen</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_dir_fdopen
+ <code>(<nobr>int fd</nobr>,
+<nobr>zzip_error_t * errcode_p</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_DIR *
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_dir_fdopen_ext_io">
+ <code>zzip_dir_fdopen_ext_io</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_dir_fdopen_ext_io
+ <code>(<nobr>int fd</nobr>,
+<nobr>zzip_error_t * errcode_p</nobr>,
+<nobr>zzip_strings_t* ext</nobr>,
+<nobr>const zzip_plugin_io_t io</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#__zzip_try_open">
+ <code>__zzip_try_open</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">__zzip_try_open
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>int filemode</nobr>,
+<nobr>zzip_strings_t* ext</nobr>,
+<nobr>zzip_plugin_io_t io</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_DIR*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_dir_open">
+ <code>zzip_dir_open</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_dir_open
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>zzip_error_t* e</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>ZZIP_DIR*
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_dir_open_ext_io">
+ <code>zzip_dir_open_ext_io</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_dir_open_ext_io
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>zzip_error_t* e</nobr>,
+<nobr>zzip_strings_t* ext</nobr>,
+<nobr>zzip_plugin_io_t io</nobr>)</code>
+
+</td></tr><tr valign="top">
+<td valign="top"><code>int
+</code></td><td valign="top">&nbsp;&nbsp;</td><td valign="top"><a href="#zzip_dir_read">
+ <code>zzip_dir_read</code>
+</a></td><td valign="top">&nbsp;&nbsp;</td><td valign="top">zzip_dir_read
+ <code>(<nobr>ZZIP_DIR * dir</nobr>,
+<nobr>ZZIP_DIRENT * d</nobr> )</code>
+
+</td></tr>
+</table>
+<h3>Documentation</h3>
+
+<dl>
+<dt><a name="zzip_rewinddir" /><a name="zzip_telldir" /><a name="zzip_seekdir" /><code><code>void
+</code>
+ <br /><b><code>zzip_rewinddir</code></b>
+ &nbsp; <code>1000
+ <code>(<nobr>ZZIP_DIR * dir</nobr>)</code>
+
+</code></code><br />
+<code><code>zzip_off_t
+</code>
+ <br /><b><code>zzip_telldir</code></b>
+ &nbsp; <code>zzip_telldir
+ <code>(<nobr>ZZIP_DIR* dir</nobr>)</code>
+
+</code></code><br />
+<code><code>void
+</code>
+ <br /><b><code>zzip_seekdir</code></b>
+ &nbsp; <code>zzip_seekdir
+ <code>(<nobr>ZZIP_DIR* dir</nobr>,
+<nobr>zzip_off_t offset</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/dir.c)
+<p> This function is the equivalent of a <code>rewinddir(2)</code> for a realdir or
+ <br /> the zipfile in place of a directory. The ZZIP_DIR handle returned from
+ <br /> <a href="#zzip_opendir"><code>zzip_opendir</code></a> has a flag saying realdir or zipfile. As for a zipfile,
+ <br /> the filenames will include the filesubpath, so take care.
+
+<p align="right"><small>(../zzip/dir.c)</small></p></dd>
+<dt><a name="zzip_readdir" /><code><code>ZZIP_DIRENT*
+</code>
+ <br /><b><code>zzip_readdir</code></b>
+ &nbsp; <code>1000
+ <code>(<nobr>ZZIP_DIR * dir</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/dir.c)
+<p> This function is the equivalent of a <code>readdir(2)</code> for a realdir
+ <br /> or a zipfile referenced by the ZZIP_DIR returned from <a href="#zzip_opendir"><code>zzip_opendir</code></a>.
+ <p>
+ The ZZIP_DIR handle (as returned by <a href="#zzip_opendir"><code>zzip_opendir)</code></a> contains a few more
+ <br /> entries than being copied into the ZZIP_DIRENT. The only valid fields in
+ <br /> a ZZIP_DIRENT are d_name (the file name), d_compr (compression), d_csize
+ <br /> (compressed size), st_size (uncompressed size).
+
+<p align="right"><small>(../zzip/dir.c)</small></p></dd>
+<dt><a name="zzip_opendir" /><a name="zzip_opendir_ext_io" /><code><code>ZZIP_DIR*
+</code>
+ <br /><b><code>zzip_opendir</code></b>
+ &nbsp; <code>zzip_opendir
+ <code>(<nobr>zzip_char_t* filename</nobr>)</code>
+
+</code></code><br />
+<code><code>ZZIP_DIR*
+</code>
+ <br /><b><code>zzip_opendir_ext_io</code></b>
+ &nbsp; <code>zzip_opendir_ext_io
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>int o_modes</nobr>,
+<nobr>zzip_strings_t* ext</nobr>,
+<nobr>zzip_plugin_io_t io</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/dir.c)
+<p> This function is the equivalent of <code>opendir(3)</code> for a realdir or zipfile.
+ <br /> <p>
+ This function has some magic - if the given argument-path
+ <br /> is a directory, it will wrap a real <code>opendir(3)</code> into the ZZIP_DIR
+ <br /> structure. Otherwise it will divert to <a href="#zzip_dir_open"><code>zzip_dir_open</code></a> which
+ <br /> can also attach a ".zip" extension if needed to find the archive.
+ <br /> <p>
+ the error-code is mapped to <code>errno(3)</code>.
+
+<p align="right"><small>(../zzip/dir.c)</small></p></dd>
+<dt><a name="zzip_closedir" /><code><code>int
+</code>
+ <br /><b><code>zzip_closedir</code></b>
+ &nbsp; <code>zzip_closedir
+ <code>(<nobr>ZZIP_DIR* dir</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/dir.c)
+<p> This function is the equivalent of <code>closedir(3)</code> for a realdir or zipfile.
+ <br /> <p>
+ This function is magic - if the given arg-ZZIP_DIR
+ <br /> is a real directory, it will call the real <code>closedir(3)</code> and then
+ <br /> free the wrapping ZZIP_DIR structure. Otherwise it will divert
+ <br /> to <a href="#zzip_dir_close"><code>zzip_dir_close</code></a> which will free the ZZIP_DIR structure.
+
+<p align="right"><small>(../zzip/dir.c)</small></p></dd>
+<dt><a name="zzip_strerror" /><a name="zzip_strerror_of" /><code><code>zzip_char_t*
+</code>
+ <br /><b><code>zzip_strerror</code></b>
+ &nbsp; <code>zzip_strerror
+ <code>(<nobr>int errcode</nobr>)</code>
+
+</code></code><br />
+<code><code>zzip_char_t*
+</code>
+ <br /><b><code>zzip_strerror_of</code></b>
+ &nbsp; <code>zzip_strerror_of
+ <code>(<nobr>ZZIP_DIR* dir</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/err.c)
+<p> returns the static string for the given error code. The
+
+ <br /> error code can be either a normal system error (a
+
+ <br /> positive error code will flag this), it can be <code>libz</code>
+
+ <br /> error code (a small negative error code will flag this)
+
+ <br /> or it can be an error code from <code>libzzip</code>, which is an
+
+ <br /> negative value lower than <code>ZZIP_ERROR</code>
+
+
+<p align="right"><small>(../zzip/err.c)</small></p></dd>
+<dt><a name="zzip_errno" /><code><code>int
+</code>
+ <br /><b><code>zzip_errno</code></b>
+ &nbsp; <code>zzip_errno
+ <code>(<nobr>int errcode</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/err.c)
+<p> map the error code to a system error code. This is used
+
+ <br /> for the drop-in replacement functions to return a value
+
+ <br /> that can be interpreted correctly by code sections that
+
+ <br /> are unaware of the fact they their <code>open(2)</code> call had been
+
+ <br /> diverted to a file inside a zip-archive.
+
+
+<p align="right"><small>(../zzip/err.c)</small></p></dd>
+<dt><a name="zzip_file_close" /><code><code>int
+</code>
+ <br /><b><code>zzip_file_close</code></b>
+ &nbsp; <code>zzip_file_close
+ <code>(<nobr>ZZIP_FILE * fp</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/file.c)
+<p> the direct function of <a href="#zzip_close"><code>zzip_close(fp)</code></a>. it will cleanup the
+ <br /> inflate-portion of <code>zlib</code> and free the structure given.
+ <p>
+ it is called quite from the error-cleanup parts
+ <br /> of the various <code>_open</code> functions.
+ <p>
+ the .refcount is decreased and if zero the fp<small>-&gt;</small>dir is closed just as well.
+
+<p align="right"><small>(../zzip/file.c)</small></p></dd>
+<dt><a name="zzip_file_open" /><code><code>ZZIP_FILE *
+</code>
+ <br /><b><code>zzip_file_open</code></b>
+ &nbsp; <code>zzip_file_open
+ <code>(<nobr>ZZIP_DIR * dir</nobr>,
+<nobr>zzip_char_t* name</nobr>,
+<nobr>int o_mode</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/file.c)
+<p> open an <code>ZZIP_FILE</code> from an already open <code>ZZIP_DIR</code> handle. Since
+ <br /> we have a chance to reuse a cached <code>buf32k</code> and <code>ZZIP_FILE</code> memchunk
+ <br /> this is the best choice to unpack multiple files.
+ <p>
+ Note: the zlib supports 2..15 bit windowsize, hence we provide a 32k
+ <br /> memchunk here... just to be safe.
+
+<p align="right"><small>(../zzip/file.c)</small></p></dd>
+<dt><a name="zzip_inflate_init" /><code><code>static int
+</code>
+ <br /><b><code>zzip_inflate_init</code></b>
+ &nbsp; <code>zzip_inflate_init
+ <code>(<nobr>ZZIP_FILE * fp</nobr>,
+<nobr>struct zzip_dir_hdr* hdr</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/file.c)
+<p> call <code>inflateInit</code> and setup fp's iterator variables,
+ <br /> used by lowlevel <code>_open</code> functions.
+
+<p align="right"><small>(../zzip/file.c)</small></p></dd>
+<dt><a name="zzip_fclose" /><a name="zzip_close" /><code><code>int
+</code>
+ <br /><b><code>zzip_fclose</code></b>
+ &nbsp; <code>zzip_fclose
+ <code>(<nobr>ZZIP_FILE * fp</nobr>)</code>
+
+</code></code><br />
+<code><code>int
+</code>
+ <br /><b><code>zzip_close</code></b>
+ &nbsp; <code>zzip_close
+ <code>(<nobr>ZZIP_FILE* fp</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/file.c)
+<p> This function closes the given ZZIP_FILE handle.
+ <p>
+ If the ZZIP_FILE wraps a normal stat'fd then it is just that int'fd
+ <br /> that is being closed and the otherwise empty ZZIP_FILE gets freed.
+
+<p align="right"><small>(../zzip/file.c)</small></p></dd>
+<dt><a name="zzip_file_read" /><code><code>zzip_ssize_t
+</code>
+ <br /><b><code>zzip_file_read</code></b>
+ &nbsp; <code>zzip_file_read
+ <code>(<nobr>ZZIP_FILE * fp</nobr>,
+<nobr>char * buf</nobr>,
+<nobr>zzip_size_t len</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/file.c)
+<p> This functions read data from zip-contained file.
+ <p>
+ It works like <code>read(2)</code> and will fill the given buffer with bytes from
+ <br /> the opened file. It will return the number of bytes read, so if the <code>EOF</code>
+ <br /> is encountered you will be prompted with the number of bytes actually read.
+ <p>
+ This is the routines that needs the <code>buf32k</code> buffer, and it would have
+ <br /> need for much more polishing but it does already work quite well.
+ <p>
+ Note: the 32K buffer is rather big. The original inflate-algorithm
+ <br /> required just that but the latest zlib would work just fine with
+ <br /> a smaller buffer.
+
+<p align="right"><small>(../zzip/file.c)</small></p></dd>
+<dt><a name="zzip_read" /><a name="zzip_fread" /><code><code>zzip_ssize_t
+</code>
+ <br /><b><code>zzip_read</code></b>
+ &nbsp; <code>zzip_read
+ <code>(<nobr>ZZIP_FILE * fp</nobr>,
+<nobr>char * buf</nobr>,
+<nobr>zzip_size_t len</nobr>)</code>
+
+</code></code><br />
+<code><code>zzip_size_t
+</code>
+ <br /><b><code>zzip_fread</code></b>
+ &nbsp; <code>zzip_fread
+ <code>(<nobr>void *ptr</nobr>,
+<nobr>zzip_size_t size</nobr>,
+<nobr>zzip_size_t nmemb</nobr>,
+<nobr>ZZIP_FILE *file</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/file.c)
+<p> This function will read(2) data from a real/zipped file.
+ <p>
+ the replacement for <code>read(2)</code> will fill the given buffer with bytes from
+ <br /> the opened file. It will return the number of bytes read, so if the EOF
+ <br /> is encountered you will be prompted with the number of bytes actually read.
+ <p>
+ If the file-handle is wrapping a stat'able file then it will actually just
+ <br /> perform a normal <code>read(2)</code>-call, otherwise <a href="#zzip_file_read"><code>zzip_file_read</code></a> is called
+ <br /> to decompress the data stream and any error is mapped to <code>errno(3)</code>.
+
+<p align="right"><small>(../zzip/file.c)</small></p></dd>
+<dt><a name="zzip_fopen" /><a name="zzip_freopen" /><code><code>ZZIP_FILE*
+</code>
+ <br /><b><code>zzip_fopen</code></b>
+ &nbsp; <code>zzip_fopen
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>zzip_char_t* mode</nobr>)</code>
+
+</code></code><br />
+<code><code>ZZIP_FILE*
+</code>
+ <br /><b><code>zzip_freopen</code></b>
+ &nbsp; <code>zzip_freopen
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>zzip_char_t* mode</nobr>,
+<nobr>ZZIP_FILE* stream</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/file.c)
+<p> This function will <code>fopen(3)</code> a real/zipped file.
+ <p>
+ It has some magic functionality builtin - it will first try to open
+ <br /> the given <em>filename</em> as a normal file. If it does not
+ <br /> exist, the given path to the filename (if any) is split into
+ <br /> its directory-part and the file-part. A ".zip" extension is
+ <br /> then added to the directory-part to create the name of a
+ <br /> zip-archive. That zip-archive (if it exists) is being searched
+ <br /> for the file-part, and if found a zzip-handle is returned.
+ <p>
+ Note that if the file is found in the normal fs-directory the
+ <br /> returned structure is mostly empty and the <a href="#zzip_read"><code>zzip_read</code></a> call will
+ <br /> use the libc <code>read</code> to obtain data. Otherwise a <a href="#zzip_file_open"><code>zzip_file_open</code></a>
+ <br /> is performed and any error mapped to <code>errno(3)</code>.
+ <p>
+ unlike the posix-wrapper <a href="#zzip_open"><code>zzip_open</code></a> the mode-argument is
+ <br /> a string which allows for more freedom to support the extra
+ <br /> zzip modes called ZZIP_CASEINSENSITIVE and ZZIP_IGNOREPATH.
+ <br /> Currently, this <a href="#zzip_fopen"><code>zzip_fopen</code></a> call will convert the following
+ <br /> characters in the mode-string into their corrsponding mode-bits:
+ <br /> <ul><li><code> "r" : O_RDONLY : </code> read-only
+ <br /> </li><li><code> "b" : O_BINARY : </code> binary (win32 specific)
+ <br /> </li><li><code> "f" : O_NOCTTY : </code> no char device (unix)
+ <br /> </li><li><code> "i" : ZZIP_CASELESS : </code> inside zip file
+ <br /> </li><li><code> "*" : ZZIP_NOPATHS : </code> inside zip file only
+ <br /> </ul> all other modes will be ignored for zip-contained entries
+ <br /> but they are transferred for compatibility and portability,
+ <br /> including these extra sugar bits:
+ <br /> <ul><li><code> "x" : O_EXCL :</code> fail if file did exist
+ <br /> </li><li><code> "s" : O_SYNC :</code> synchronized access
+ <br /> </li><li><code> "n" : O_NONBLOCK :</code> nonblocking access
+ <br /> </li><li><code> "z#" : compression level :</code> for zlib
+ <br /> </li><li><code> "g#" : group access :</code> unix access bits
+ <br /> </li><li><code> "u#" : owner access :</code> unix access bits
+ <br /> </li><li><code> "o#" : world access :</code> unix access bits
+ <br /> </ul>... the access bits are in traditional unix bit format
+ <br /> with 7 = read/write/execute, 6 = read/write, 4 = read-only.
+ <p>
+ The default access mode is 0664, and the compression level
+ <br /> is ignored since the lib can not yet write zip files, otherwise
+ <br /> it would be the initialisation value for the zlib deflateInit
+ <br /> where 0 = no-compression, 1 = best-speed, 9 = best-compression.
+
+<p align="right"><small>(../zzip/file.c)</small></p></dd>
+<dt><a name="zzip_open" /><a name="zzip_open_ext_io" /><a name="zzip_open_shared_io" /><code><code>ZZIP_FILE*
+</code>
+ <br /><b><code>zzip_open</code></b>
+ &nbsp; <code>zzip_open
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>int o_flags</nobr>)</code>
+
+</code></code><br />
+<code><code>ZZIP_FILE*
+</code>
+ <br /><b><code>zzip_open_ext_io</code></b>
+ &nbsp; <code>zzip_open_ext_io
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>int o_flags</nobr>,
+<nobr>int o_modes</nobr>,
+<nobr>zzip_strings_t* ext</nobr>,
+<nobr>zzip_plugin_io_t io</nobr>)</code>
+
+</code></code><br />
+<code><code>ZZIP_FILE*
+</code>
+ <br /><b><code>zzip_open_shared_io</code></b>
+ &nbsp; <code>zzip_open_shared_io
+ <code>(<nobr>ZZIP_FILE* stream</nobr>,
+<nobr>zzip_char_t* filename</nobr>,
+<nobr>int o_flags</nobr>,
+<nobr>int o_modes</nobr>,
+<nobr>zzip_strings_t* ext</nobr>,
+<nobr>zzip_plugin_io_t io</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/file.c)
+<p> This function will <code>open(2)</code> a real/zipped file
+ <p>
+ It has some magic functionality builtin - it will first try to open
+ <br /> the given <em>filename</em> as a normal file. If it does not
+ <br /> exist, the given path to the filename (if any) is split into
+ <br /> its directory-part and the file-part. A ".zip" extension is
+ <br /> then added to the directory-part to create the name of a
+ <br /> zip-archive. That zip-archive (if it exists) is being searched
+ <br /> for the file-part, and if found a zzip-handle is returned.
+ <p>
+ Note that if the file is found in the normal fs-directory the
+ <br /> returned structure is mostly empty and the <a href="#zzip_read"><code>zzip_read</code></a> call will
+ <br /> use the libc <code>read</code> to obtain data. Otherwise a <a href="#zzip_file_open"><code>zzip_file_open</code></a>
+ <br /> is performed and any error mapped to <code>errno(3)</code>.
+ <p>
+ There was a possibility to transfer zziplib-specific openmodes
+ <br /> through o_flags but you should please not use them anymore and
+ <br /> look into <a href="#zzip_open_ext_io"><code>zzip_open_ext_io</code></a> to submit them down. This function
+ <br /> is shallow in that it just extracts the zzipflags and calls <ul><li><code>
+ <br /> zzip_open_ext_io(filename, o_flags, zzipflags|0664, 0, 0) </code></li></ul>
+ <br /> you must stop using this extra functionality (not well known
+ <br /> anyway) since zzip_open might be later usable to open files
+ <br /> for writing in which case the _EXTRAFLAGS will get in conflict.
+ <p>
+ compare with <code>open(2)</code> and <a href="#zzip_fopen"><code>zzip_fopen</code></a>
+
+<p align="right"><small>(../zzip/file.c)</small></p></dd>
+<dt><a name="zzip_rewind" /><code><code>int
+</code>
+ <br /><b><code>zzip_rewind</code></b>
+ &nbsp; <code>zzip_rewind
+ <code>(<nobr>ZZIP_FILE *fp</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/file.c)
+<p> This function will rewind a real/zipped file.
+ <p>
+ It seeks to the beginning of this file's data in the zip,
+ <br /> or the beginning of the file for a stat'fd.
+
+<p align="right"><small>(../zzip/file.c)</small></p></dd>
+<dt><a name="zzip_seek" /><code><code>zzip_off_t
+</code>
+ <br /><b><code>zzip_seek</code></b>
+ &nbsp; <code>zzip_seek
+ <code>(<nobr>ZZIP_FILE * fp</nobr>,
+<nobr>zzip_off_t offset</nobr>,
+<nobr>int whence</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/file.c)
+<p> This function will perform a <code>lseek(2)</code> operation on a real/zipped file
+ <p>
+ It will try to seek to the offset specified by offset, relative to whence,
+ <br /> which is one of SEEK_SET, SEEK_CUR or SEEK_END.
+ <p>
+ If the file-handle is wrapping a stat'able file then it will actually just
+ <br /> perform a normal <code>lseek(2)</code>-call. Otherwise the relative offset
+ <br /> is calculated, negative offsets are transformed into positive ones
+ <br /> by rewinding the file, and then data is read until the offset is
+ <br /> reached. This can make the function terribly slow, but this is
+ <br /> how gzio implements it, so I'm not sure there is a better way
+ <br /> without using the internals of the algorithm.
+
+<p align="right"><small>(../zzip/file.c)</small></p></dd>
+<dt><a name="zzip_tell" /><code><code>zzip_off_t
+</code>
+ <br /><b><code>zzip_tell</code></b>
+ &nbsp; <code>zzip_tell
+ <code>(<nobr>ZZIP_FILE * fp</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/file.c)
+<p> This function will <code>tell(2)</code> the current position in a real/zipped file
+ <p>
+ It will return the current offset within the real/zipped file,
+ <br /> measured in uncompressed bytes for the zipped-file case.
+ <p>
+ If the file-handle is wrapping a stat'able file then it will actually just
+ <br /> perform a normal <code>tell(2)</code>-call, otherwise the offset is
+ <br /> calculated from the amount of data left and the total uncompressed
+ <br /> size;
+
+<p align="right"><small>(../zzip/file.c)</small></p></dd>
+<dt><a name="zzip_error" /><a name="zzip_seterror" /><code><code>int
+</code>
+ <br /><b><code>zzip_error</code></b>
+ &nbsp; <code>zzip_error
+ <code>(<nobr>ZZIP_DIR * dir</nobr>)</code>
+
+</code></code><br />
+<code><code>void
+</code>
+ <br /><b><code>zzip_seterror</code></b>
+ &nbsp; <code>zzip_seterror
+ <code>(<nobr>ZZIP_DIR * dir</nobr>,
+<nobr>int errcode</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/info.c)
+<p> just returns dir<small>-&gt;</small>errcode of the ZZIP_DIR handle
+ <br /> see: <a href="#zzip_dir_open"><code>zzip_dir_open</code></a>, <code>zzip_diropen</code>, <a href="#zzip_readdir"><code>zzip_readdir</code></a>, <a href="#zzip_dir_read"><code>zzip_dir_read</code></a>
+
+<p align="right"><small>(../zzip/info.c)</small></p></dd>
+<dt><a name="zzip_dirhandle" /><a name="zzip_dirfd" /><code><code>ZZIP_DIR *
+</code>
+ <br /><b><code>zzip_dirhandle</code></b>
+ &nbsp; <code>zzip_dirhandle
+ <code>(<nobr>ZZIP_FILE * fp</nobr>)</code>
+
+</code></code><br />
+<code><code>int
+</code>
+ <br /><b><code>zzip_dirfd</code></b>
+ &nbsp; <code>zzip_dirfd
+ <code>(<nobr>ZZIP_DIR* dir</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/info.c)
+<p> This function will just return fp<small>-&gt;</small>dir
+ <p>
+ If a ZZIP_FILE is contained within a zip-file that one will be a valid
+ <br /> pointer, otherwise a NULL is returned and the ZZIP_FILE wraps a real file.
+
+<p align="right"><small>(../zzip/info.c)</small></p></dd>
+<dt><a name="zzip_compr_str" /><code><code>zzip_char_t*
+</code>
+ <br /><b><code>zzip_compr_str</code></b>
+ &nbsp; <code>zzip_compr_str
+ <code>(<nobr>int compr</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/info.c)
+<p> return static const string of the known compression methods,
+ <br /> otherwise just "zipped" is returned
+
+<p align="right"><small>(../zzip/info.c)</small></p></dd>
+<dt><a name="zzip_file_real" /><a name="zzip_dir_real" /><a name="zzip_realdir" /><a name="zzip_realfd" /><code><code>int
+</code>
+ <br /><b><code>zzip_file_real</code></b>
+ &nbsp; <code>zzip_file_real
+ <code>(<nobr>ZZIP_FILE* fp</nobr>)</code>
+
+</code></code><br />
+<code><code>int
+</code>
+ <br /><b><code>zzip_dir_real</code></b>
+ &nbsp; <code>zzip_dir_real
+ <code>(<nobr>ZZIP_DIR* dir</nobr>)</code>
+
+</code></code><br />
+<code><code>void*
+</code>
+ <br /><b><code>zzip_realdir</code></b>
+ &nbsp; <code>zzip_realdir
+ <code>(<nobr>ZZIP_DIR* dir</nobr>)</code>
+
+</code></code><br />
+<code><code>int
+</code>
+ <br /><b><code>zzip_realfd</code></b>
+ &nbsp; <code>zzip_realfd
+ <code>(<nobr>ZZIP_FILE* fp</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/info.c)
+<p> This function checks if the ZZIP_FILE-handle is wrapping
+ <br /> a real file or a zip-contained file.
+ <br /> Returns 1 for a stat'able file, and 0 for a file inside a zip-archive.
+
+<p align="right"><small>(../zzip/info.c)</small></p></dd>
+<dt><a name="zzip_init_io" /><a name="zzip_get_default_io" /><code><code>int </code>
+ <br /><b><code>zzip_init_io</code></b>
+ &nbsp; <code>zzip_init_io
+ <code>(<nobr>struct zzip_plugin_io* io</nobr>,
+<nobr>int flags</nobr>)</code>
+
+</code></code><br />
+<code><code>zzip_plugin_io_t
+</code>
+ <br /><b><code>zzip_get_default_io</code></b>
+ &nbsp; <code>zzip_get_default_io
+ <code>(<nobr></nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/plugin.c)
+<p> This function initializes the users handler struct to default values
+ <br /> being the posix io functions in default configured environments.
+
+<p align="right"><small>(../zzip/plugin.c)</small></p></dd>
+<dt><a name="zzip_dir_stat" /><code><code>int
+</code>
+ <br /><b><code>zzip_dir_stat</code></b>
+ &nbsp; <code>zzip_dir_stat
+ <code>(<nobr>ZZIP_DIR * dir</nobr>,
+<nobr>zzip_char_t* name</nobr>,
+<nobr>ZZIP_STAT * zs</nobr>,
+<nobr>int flags</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/stat.c)
+<p> obtain information about a filename in an opened zip-archive without
+ <br /> opening that file first. Mostly used to obtain the uncompressed
+ <br /> size of a file inside a zip-archive. see <a href="#zzip_dir_open"><code>zzip_dir_open</code></a>.
+
+<p align="right"><small>(../zzip/stat.c)</small></p></dd>
+<dt><a name="__zzip_get32" /><code><code>uint32_t </code>
+ <br /><b><code>__zzip_get32</code></b>
+ &nbsp; <code>__zzip_get32
+ <code>(<nobr>unsigned char * s</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/zip.c)
+<p> Make 32 bit value in host byteorder from little-endian mapped octet-data
+ <br /> (works also on machines which SIGBUS on misaligned data access (eg. 68000))
+
+<p align="right"><small>(../zzip/zip.c)</small></p></dd>
+<dt><a name="__zzip_find_disk_trailer" /><code><code>int
+</code>
+ <br /><b><code>__zzip_find_disk_trailer</code></b>
+ &nbsp; <code>__zzip_find_disk_trailer
+ <code>(<nobr>int fd</nobr>,
+<nobr>zzip_off_t filesize</nobr>,
+<nobr>struct zzip_disk_trailer * trailer</nobr>,
+<nobr>zzip_plugin_io_t io</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/zip.c)
+<p> This function is used by <a href="#zzip_file_open"><code>zzip_file_open</code></a>. It tries to find
+ <br /> the zip's central directory info that is usually a few
+ <br /> bytes off the end of the file.
+
+<p align="right"><small>(../zzip/zip.c)</small></p></dd>
+<dt><a name="__zzip_parse_root_directory" /><code><code>int
+</code>
+ <br /><b><code>__zzip_parse_root_directory</code></b>
+ &nbsp; <code>__zzip_parse_root_directory
+ <code>(<nobr>int fd</nobr>,
+<nobr>struct zzip_disk_trailer * trailer</nobr>,
+<nobr>struct zzip_dir_hdr ** hdr_return</nobr>,
+<nobr>zzip_plugin_io_t io</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/zip.c)
+<p> This function is used by <a href="#zzip_file_open"><code>zzip_file_open</code></a>, it is usually called after
+ <br /> <a href="#__zzip_find_disk_trailer"><code>__zzip_find_disk_trailer</code></a>. It will parse the zip's central directory
+ <br /> information and create a zziplib private directory table in
+ <br /> memory.
+
+<p align="right"><small>(../zzip/zip.c)</small></p></dd>
+<dt><a name="zzip_dir_alloc_ext_io" /><a name="zzip_dir_alloc" /><code><code>ZZIP_DIR*
+</code>
+ <br /><b><code>zzip_dir_alloc_ext_io</code></b>
+ &nbsp; <code>zzip_dir_alloc_ext_io
+ <code>(<nobr>zzip_strings_t* ext</nobr>,
+<nobr>const zzip_plugin_io_t io</nobr>)</code>
+
+</code></code><br />
+<code><code>ZZIP_DIR*
+</code>
+ <br /><b><code>zzip_dir_alloc</code></b>
+ &nbsp; <code>zzip_dir_alloc
+ <code>(<nobr>zzip_strings_t* fileext</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/zip.c)
+<p> allocate a new ZZIP_DIR handle and do basic
+ <br /> initializations before usage by <a href="#zzip_dir_fdopen"><code>zzip_dir_fdopen</code></a>
+ <br /> <a href="#zzip_dir_open"><code>zzip_dir_open</code></a> <a href="#zzip_file_open"><code>zzip_file_open</code></a> or through
+ <br /> <a href="#zzip_open"><code>zzip_open</code></a>
+ <br /> (ext==null flags uses { ".zip" , ".ZIP" } )
+ <br /> (io ==null flags use of posix io defaults)
+
+<p align="right"><small>(../zzip/zip.c)</small></p></dd>
+<dt><a name="zzip_dir_free" /><code><code>int
+</code>
+ <br /><b><code>zzip_dir_free</code></b>
+ &nbsp; <code>zzip_dir_free
+ <code>(<nobr>ZZIP_DIR * dir</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/zip.c)
+<p> will free the zzip_dir handle unless there are still
+ <br /> zzip_files attached (that may use its cache buffer).
+ <br /> This is the inverse of <a href="#zzip_dir_alloc"><code>zzip_dir_alloc</code></a> , and both
+ <br /> are helper functions used implicitly in other zzipcalls
+ <br /> e.g. <a href="#zzip_dir_close"><code>zzip_dir_close</code></a> = zzip_close
+ <p>
+ returns zero on sucess
+ <br /> returns the refcount when files are attached.
+
+<p align="right"><small>(../zzip/zip.c)</small></p></dd>
+<dt><a name="zzip_dir_close" /><code><code>int
+</code>
+ <br /><b><code>zzip_dir_close</code></b>
+ &nbsp; <code>zzip_dir_close
+ <code>(<nobr>ZZIP_DIR * dir</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/zip.c)
+<p> It will also <code>free(2)</code> the <code>ZZIP_DIR</code>-handle given.
+ <br /> the counterpart for <a href="#zzip_dir_open"><code>zzip_dir_open</code></a>
+ <br /> see also <a href="#zzip_dir_free"><code>zzip_dir_free</code></a>
+
+<p align="right"><small>(../zzip/zip.c)</small></p></dd>
+<dt><a name="zzip_dir_fdopen" /><a name="zzip_dir_fdopen_ext_io" /><code><code>ZZIP_DIR *
+</code>
+ <br /><b><code>zzip_dir_fdopen</code></b>
+ &nbsp; <code>zzip_dir_fdopen
+ <code>(<nobr>int fd</nobr>,
+<nobr>zzip_error_t * errcode_p</nobr>)</code>
+
+</code></code><br />
+<code><code>ZZIP_DIR *
+</code>
+ <br /><b><code>zzip_dir_fdopen_ext_io</code></b>
+ &nbsp; <code>zzip_dir_fdopen_ext_io
+ <code>(<nobr>int fd</nobr>,
+<nobr>zzip_error_t * errcode_p</nobr>,
+<nobr>zzip_strings_t* ext</nobr>,
+<nobr>const zzip_plugin_io_t io</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/zip.c)
+<p> used by the <a href="#zzip_dir_open"><code>zzip_dir_open</code></a> and zzip_opendir(2) call. Opens the
+ <br /> zip-archive as specified with the fd which points to an
+ <br /> already openend file. This function then search and parse
+ <br /> the zip's central directory.
+ <br /> <p>
+ NOTE: refcount is zero, so an _open/_close pair will also delete
+ <br /> this _dirhandle
+
+<p align="right"><small>(../zzip/zip.c)</small></p></dd>
+<dt><a name="__zzip_try_open" /><code><code>int
+</code>
+ <br /><b><code>__zzip_try_open</code></b>
+ &nbsp; <code>__zzip_try_open
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>int filemode</nobr>,
+<nobr>zzip_strings_t* ext</nobr>,
+<nobr>zzip_plugin_io_t io</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/zip.c)
+<p> will attach a .zip extension and tries to open it
+ <br /> the with <code>open(2)</code>. This is a helper function for
+ <br /> <a href="#zzip_dir_open"><code>zzip_dir_open</code></a>, <a href="#zzip_opendir"><code>zzip_opendir</code></a> and <a href="#zzip_open"><code>zzip_open</code></a>.
+
+<p align="right"><small>(../zzip/zip.c)</small></p></dd>
+<dt><a name="zzip_dir_open" /><a name="zzip_dir_open_ext_io" /><code><code>ZZIP_DIR*
+</code>
+ <br /><b><code>zzip_dir_open</code></b>
+ &nbsp; <code>zzip_dir_open
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>zzip_error_t* e</nobr>)</code>
+
+</code></code><br />
+<code><code>ZZIP_DIR*
+</code>
+ <br /><b><code>zzip_dir_open_ext_io</code></b>
+ &nbsp; <code>zzip_dir_open_ext_io
+ <code>(<nobr>zzip_char_t* filename</nobr>,
+<nobr>zzip_error_t* e</nobr>,
+<nobr>zzip_strings_t* ext</nobr>,
+<nobr>zzip_plugin_io_t io</nobr>)</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/zip.c)
+<p> Opens the zip-archive (if available).
+ <br /> the two ext_io arguments will default to use posix io and
+ <br /> a set of default fileext that can atleast add .zip ext itself.
+
+<p align="right"><small>(../zzip/zip.c)</small></p></dd>
+<dt><a name="zzip_dir_read" /><code><code>int
+</code>
+ <br /><b><code>zzip_dir_read</code></b>
+ &nbsp; <code>zzip_dir_read
+ <code>(<nobr>ZZIP_DIR * dir</nobr>,
+<nobr>ZZIP_DIRENT * d</nobr> )</code>
+
+</code></code><dt>
+<dd><p> &nbsp;(../zzip/zip.c)
+<p> fills the dirent-argument with the values and
+ <br /> increments the read-pointer of the dir-argument.
+ <br /> <p>
+ returns 0 if there no entry (anymore).
+
+<p align="right"><small>(../zzip/zip.c)</small></p></dd>
+</dl>
</body></html>
+</td></tr></table></body></html>
diff --git a/Build/source/libs/zziplib/zziplib-src/docs/zzipmmapped.html b/Build/source/libs/zziplib/zziplib-src/docs/zzipmmapped.html
deleted file mode 100644
index 041070435d9..00000000000
--- a/Build/source/libs/zziplib/zziplib-src/docs/zzipmmapped.html
+++ /dev/null
@@ -1,222 +0,0 @@
-<html><head><title>zziplib Library Functions</title>
-</head><body>
-<h2>zziplib Library Functions</h2><p>Version 0.13.62</p><p><big><b><code>#include &lt;zzip/mmapped.h&gt;</code></b></big></p><table width="100%"><tr><td valign="top"><code><b><code><a href="#zzip_disk_entry_to_data">zzip_disk_entry_to_data</a></code></b>(ZZIP_DISK * disk, struct zzip_disk_entry * entry)
- : zzip_byte_t *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_entry_to_file_header">zzip_disk_entry_to_file_header</a></code></b>(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
- : struct zzip_file_header *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_entry_strdup_name">zzip_disk_entry_strdup_name</a></code></b>(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
- : zzip__new__ char *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_entry_strdup_comment">zzip_disk_entry_strdup_comment</a></code></b>(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
- : zzip__new__ char *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_findfile">zzip_disk_findfile</a></code></b>(ZZIP_DISK * disk, char *filename,
- struct zzip_disk_entry *after, zzip_strcmp_fn_t compare)
- : struct zzip_disk_entry *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_findfirst">zzip_disk_findfirst</a></code></b>(ZZIP_DISK * disk)
- : struct zzip_disk_entry *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_findnext">zzip_disk_findnext</a></code></b>(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
- : struct zzip_disk_entry *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_findmatch">zzip_disk_findmatch</a></code></b>(ZZIP_DISK * disk, char *filespec,
- struct zzip_disk_entry *after,
- zzip_fnmatch_fn_t compare, int flags)
- : struct zzip_disk_entry *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_fopen">zzip_disk_fopen</a></code></b>(ZZIP_DISK * disk, char *filename)
- : zzip__new__ ZZIP_DISK_FILE *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_entry_fopen">zzip_disk_entry_fopen</a></code></b>(ZZIP_DISK * disk, ZZIP_DISK_ENTRY * entry)
- : zzip__new__ ZZIP_DISK_FILE *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_fread">zzip_disk_fread</a></code></b>(void *ptr, zzip_size_t sized, zzip_size_t nmemb,
- ZZIP_DISK_FILE * file)
- : zzip_size_t
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_fclose">zzip_disk_fclose</a></code></b>(ZZIP_DISK_FILE * file)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_feof">zzip_disk_feof</a></code></b>(ZZIP_DISK_FILE * file)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_mmap">zzip_disk_mmap</a></code></b>(int fd)
- : zzip__new__ ZZIP_DISK *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_init">zzip_disk_init</a></code></b>(ZZIP_DISK * disk, void *buffer, zzip_size_t buflen)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_new">zzip_disk_new</a></code></b>(void)
- : zzip__new__ ZZIP_DISK *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_munmap">zzip_disk_munmap</a></code></b>(ZZIP_DISK * disk)
- : int
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_open">zzip_disk_open</a></code></b>(char *filename)
- : zzip__new__ ZZIP_DISK *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_buffer">zzip_disk_buffer</a></code></b>(void *buffer, size_t buflen) : zzip__new__ ZZIP_DISK *
-</code></td></tr><tr><td valign="top"><code><b><code><a href="#zzip_disk_close">zzip_disk_close</a></code></b>(ZZIP_DISK * disk)
- : int
-</code></td></tr></table><h3>Documentation</h3><dl><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_disk_entry_to_data">zzip_disk_entry_to_data</a></b>(ZZIP_DISK * disk, struct zzip_disk_entry * entry)
- : zzip_byte_t *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_entry_to_file_header">zzip_disk_entry_to_file_header</a></b>(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
- : struct zzip_file_header *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_entry_strdup_name">zzip_disk_entry_strdup_name</a></b>(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
- : zzip__new__ char *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_entry_strdup_comment">zzip_disk_entry_strdup_comment</a></b>(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
- : zzip__new__ char *
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em> helper functions for (mmapped) zip access api</em> </td><td align="right"> <em><small>zzip/mmapped.c</small></em></td></table><p>
- The <code>zzip_disk_entry_to_data</code> function augments the other zzip_disk_entry_* helpers: here we move
- a disk_entry pointer (as returned by _find* functions) into a pointer to
- the data block right after the file_header. Only disk->buffer would be
- needed to perform the seek but we check the mmapped range end as well.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_disk_entry_to_file_header</code> function does half the job of <code><a href="#zzip_disk_entry_to_data">zzip_disk_entry_to_data</a></code> where it
- can augment with <code><u>zzip_file_header_to_data</u></code> helper from format/fetch.h
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_disk_entry_strdup_name</code> function is a big helper despite its little name: in a zip file the
- encoded filenames are usually NOT zero-terminated but for common usage
- with libc we need it that way. Secondly, the filename SHOULD be present
- in the zip central directory but if not then we fallback to the filename
- given in the file_header of each compressed data portion.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_disk_entry_strdup_comment</code> function is similar creating a reference to a zero terminated
- string but it can only exist in the zip central directory entry.
-</p>
-</td></tr></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_disk_findfile">zzip_disk_findfile</a></b>(ZZIP_DISK * disk, char *filename,
- struct zzip_disk_entry *after, zzip_strcmp_fn_t compare)
- : struct zzip_disk_entry *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_findfirst">zzip_disk_findfirst</a></b>(ZZIP_DISK * disk)
- : struct zzip_disk_entry *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_findnext">zzip_disk_findnext</a></b>(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
- : struct zzip_disk_entry *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_findmatch">zzip_disk_findmatch</a></b>(ZZIP_DISK * disk, char *filespec,
- struct zzip_disk_entry *after,
- zzip_fnmatch_fn_t compare, int flags)
- : struct zzip_disk_entry *
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em> search for files in the (mmapped) zip central directory</em> </td><td align="right"> <em><small>zzip/mmapped.c</small></em></td></table><p>
- The <code>zzip_disk_findfile</code> function is given a filename as an additional argument, to find the
- disk_entry matching a given filename. The compare-function is usually
- strcmp or strcasecmp or perhaps strcoll, if null then strcmp is used.
- - use null as argument for "after"-entry when searching the first
- matching entry, otherwise the last returned value if you look for other
- entries with a special "compare" function (if null then a doubled search
- is rather useless with this variant of _findfile).
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_disk_findfirst</code> function is the first call of all the zip access functions here.
- It contains the code to find the first entry of the zip central directory.
- Here we require the mmapped block to represent a real zip file where the
- disk_trailer is _last_ in the file area, so that its position would be at
- a fixed offset from the end of the file area if not for the comment field
- allowed to be of variable length (which needs us to do a little search
- for the disk_tailer). However, in this simple implementation we disregard
- any disk_trailer info telling about multidisk archives, so we just return
- a pointer to the zip central directory.
-</p><p>
- For an actual means, we are going to search backwards from the end
- of the mmaped block looking for the PK-magic signature of a
- disk_trailer. If we see one then we check the rootseek value to
- find the first disk_entry of the root central directory. If we find
- the correct PK-magic signature of a disk_entry over there then we
- assume we are done and we are going to return a pointer to that label.
-</p><p>
- The return value is a pointer to the first zzip_disk_entry being checked
- to be within the bounds of the file area specified by the arguments. If
- no disk_trailer was found then null is returned, and likewise we only
- accept a disk_trailer with a seekvalue that points to a disk_entry and
- both parts have valid PK-magic parts. Beyond some sanity check we try to
- catch a common brokeness with zip archives that still allows us to find
- the start of the zip central directory.
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_disk_findnext</code> function takes an existing disk_entry in the central root directory
- (e.g. from zzip_disk_findfirst) and returns the next entry within in
- the given bounds of the mmapped file area.
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_disk_findmatch</code> function uses a compare-function with an additional argument
- and it is called just like fnmatch(3) from POSIX.2 AD:1993), i.e.
- the argument filespec first and the ziplocal filename second with
- the integer-flags put in as third to the indirect call. If the
- platform has fnmatch available then null-compare will use that one
- and otherwise we fall back to mere strcmp, so if you need fnmatch
- searching then please provide an implementation somewhere else.
- - use null as argument for "after"-entry when searching the first
- matching entry, or the last disk_entry return-value to find the
- next entry matching the given filespec.
-</p>
-</td></tr></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_disk_fopen">zzip_disk_fopen</a></b>(ZZIP_DISK * disk, char *filename)
- : zzip__new__ ZZIP_DISK_FILE *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_entry_fopen">zzip_disk_entry_fopen</a></b>(ZZIP_DISK * disk, ZZIP_DISK_ENTRY * entry)
- : zzip__new__ ZZIP_DISK_FILE *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_fread">zzip_disk_fread</a></b>(void *ptr, zzip_size_t sized, zzip_size_t nmemb,
- ZZIP_DISK_FILE * file)
- : zzip_size_t
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_fclose">zzip_disk_fclose</a></b>(ZZIP_DISK_FILE * file)
- : int
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_feof">zzip_disk_feof</a></b>(ZZIP_DISK_FILE * file)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em> openening a file part wrapped within a (mmapped) zip archive</em> </td><td align="right"> <em><small>zzip/mmapped.c</small></em></td></table><p>
- The <code>zzip_disk_fopen</code> function opens a file found by name, so it does a search into
- the zip central directory with <code><a href="#zzip_disk_findfile">zzip_disk_findfile</a></code> and whatever
- is found first is given to <code><a href="#zzip_disk_entry_fopen">zzip_disk_entry_fopen</a></code>
-</p>
-</td></tr><tr><td valign="top"><p>
- the ZZIP_DISK_FILE* is rather simple in just encapsulating the
- arguments given to the <code>zzip_disk_entry_fopen</code> function plus a zlib deflate buffer.
- Note that the ZZIP_DISK pointer does already contain the full
- mmapped file area of a zip disk, so open()ing a file part within
- that area happens to be a lookup of its bounds and encoding. That
- information is memorized on the ZZIP_DISK_FILE so that subsequent
- _read() operations will be able to get the next data portion or
- return an eof condition for that file part wrapped in the zip archive.
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_disk_fread</code> function reads more bytes into the output buffer specified as
- arguments. The return value is null on eof or error, the stdio-like
- interface can not distinguish between these so you need to check
- with <code><a href="#zzip_disk_feof">zzip_disk_feof</a></code> for the difference.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_disk_fclose</code> function releases any zlib decoder info needed for decompression
- and dumps the ZZIP_DISK_FILE* then.
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_disk_feof</code> function allows to distinguish an error from an eof condition.
- Actually, if we found an error but we did already reach eof then we
- just keep on saying that it was an eof, so the app can just continue.
-</p>
-</td></tr></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"><tr><td valign="top"><code><b><a name="zzip_disk_mmap">zzip_disk_mmap</a></b>(int fd)
- : zzip__new__ ZZIP_DISK *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_init">zzip_disk_init</a></b>(ZZIP_DISK * disk, void *buffer, zzip_size_t buflen)
- : int
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_new">zzip_disk_new</a></b>(void)
- : zzip__new__ ZZIP_DISK *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_munmap">zzip_disk_munmap</a></b>(ZZIP_DISK * disk)
- : int
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_open">zzip_disk_open</a></b>(char *filename)
- : zzip__new__ ZZIP_DISK *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_buffer">zzip_disk_buffer</a></b>(void *buffer, size_t buflen) : zzip__new__ ZZIP_DISK *
-</code></td></tr><tr><td valign="top"><code><b><a name="zzip_disk_close">zzip_disk_close</a></b>(ZZIP_DISK * disk)
- : int
-</code></td></tr></table></dt><dd><table width="100%"><tr><td valign="top"><table border="0" width="100%" cellpadding="0" cellspacing="0"><td> &nbsp;<em> turn a filehandle into a mmapped zip disk archive handle</em> </td><td align="right"> <em><small>zzip/mmapped.c</small></em></td></table><p>
- The <code>zzip_disk_mmap</code> function uses the given file-descriptor to detect the length of the
- file and calls the system <a href="http://www.opengroup.org/onlinepubs/000095399/functions/mmap.html"><code>mmap(2)</code></a> to put it in main memory. If it is
- successful then a newly allocated ZZIP_DISK* is returned with
- disk->buffer pointing to the mapview of the zipdisk content.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_disk_init</code> function does primary initialization of a disk-buffer struct.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_disk_new</code> function allocates a new disk-buffer with <a href="http://www.opengroup.org/onlinepubs/000095399/functions/malloc.html"><code>malloc(3)</code></a>
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_disk_munmap</code> function is the inverse of <code><a href="#zzip_disk_mmap">zzip_disk_mmap</a></code> and using the system
- munmap(2) on the buffer area and <a href="http://www.opengroup.org/onlinepubs/000095399/functions/free.html"><code>free(3)</code></a> on the ZZIP_DISK structure.
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_disk_open</code> function opens the given archive by name and turn the filehandle
- to <code><a href="#zzip_disk_mmap">zzip_disk_mmap</a></code> for bringing it to main memory. If it can not
- be <a href="http://www.opengroup.org/onlinepubs/000095399/functions/mmap.html"><code>mmap(2)</code></a>'ed then we slurp the whole file into a newly <a href="http://www.opengroup.org/onlinepubs/000095399/functions/malloc.html"><code>malloc(2)</code></a>'ed
- memory block. Only if that fails too then we return null. Since handling
- of disk->buffer is ambigous it should not be snatched away please.
-</p>
-</td></tr><tr><td valign="top"><p> The <code>zzip_disk_buffer</code> function will attach a buffer with a zip image
- that was acquired from another source than a file.
- Note that if zzip_disk_mmap fails then zzip_disk_open
- will fall back and try to read the full file to memory
- wrapping a ZZIP_DISK around the memory buffer just as
- the <code>zzip_disk_buffer</code> function will do. Note that the <code>zzip_disk_buffer</code> function will not
- own the buffer, it will neither be written nor free()d.
-</p>
-</td></tr><tr><td valign="top"><p>
- The <code>zzip_disk_close</code> function will release all data needed to access a (mmapped)
- zip archive, including any malloc()ed blocks, sharedmem mappings
- and it dumps the handle struct as well.
-</p>
-</td></tr></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd><dt><table width="100%"></table></dt><dd><table width="100%"></table></dd></dl>
-</body></html>
diff --git a/Build/source/libs/zziplib/zziplib-src/m4/ax_enable_builddir.m4 b/Build/source/libs/zziplib/zziplib-src/m4/ax_enable_builddir.m4
new file mode 100644
index 00000000000..81ec64b8539
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/m4/ax_enable_builddir.m4
@@ -0,0 +1,248 @@
+dnl @synopsis AX_ENABLE_BUILDDIR [(dirstring-or-command [,Makefile.mk [,-all]])]
+dnl
+dnl if the current configure was run within the srcdir then we move all
+dnl configure-files into a subdir and let the configure steps continue
+dnl there. We provide an option --disable-builddir to suppress the move
+dnl into a separate builddir.
+dnl
+dnl Defaults:
+dnl
+dnl $1 = $host (overridden with $HOST)
+dnl $2 = Makefile.mk
+dnl $3 = -all
+dnl
+dnl This macro must be called before AM_INIT_AUTOMAKE.
+dnl
+dnl it creates a default toplevel srcdir Makefile from the information
+dnl found in the created toplevel builddir Makefile. It just copies the
+dnl variables and rule-targets, each extended with a default
+dnl rule-execution that recurses into the build directory of the
+dnl current "HOST". You can override the auto-dection through
+dnl `config.guess` and build-time of course, as in
+dnl
+dnl make HOST=i386-mingw-cross
+dnl
+dnl which can of course set at configure time as well using
+dnl
+dnl configure --host=i386-mingw-cross
+dnl
+dnl After the default has been created, additional rules can be
+dnl appended that will not just recurse into the subdirectories and
+dnl only ever exist in the srcdir toplevel makefile - these parts are
+dnl read from the $2 = Makefile.mk file
+dnl
+dnl The automatic rules are usually scanning the toplevel Makefile for
+dnl lines like '#### $host |$builddir' to recognize the place where to
+dnl recurse into. Usually, the last one is the only one used. However,
+dnl almost all targets have an additional "*-all" rule which makes the
+dnl script to recurse into _all_ variants of the current HOST (!!)
+dnl setting. The "-all" suffix can be overriden for the macro as well.
+dnl
+dnl a special rule is only given for things like "dist" that will copy
+dnl the tarball from the builddir to the sourcedir (or $(PUB)) for
+dnl reason of convenience.
+dnl
+dnl @category Misc
+dnl @author Guido Draheim
+dnl @version 2007-02-01
+dnl @license GPLWithACException
+
+AC_DEFUN([AX_ENABLE_BUILDDIR],[
+AC_REQUIRE([AC_CANONICAL_HOST])[]dnl
+AC_REQUIRE([AX_CONFIGURE_ARGS])[]dnl
+AC_BEFORE([$0],[AM_INIT_AUTOMAKE])dnl
+AS_VAR_PUSHDEF([SUB],[ax_enable_builddir])dnl
+AS_VAR_PUSHDEF([AUX],[ax_enable_builddir_auxdir])dnl
+AS_VAR_PUSHDEF([SED],[ax_enable_builddir_sed])dnl
+SUB="."
+AC_ARG_ENABLE([builddir], AC_HELP_STRING(
+ [--disable-builddir],[disable automatic build in subdir of sources])
+ ,[SUB="$enableval"], [SUB="yes"])
+if test ".$ac_srcdir_defaulted" != ".no" ; then
+if test ".$srcdir" = ".." ; then
+ if test -f config.status ; then
+ AC_MSG_NOTICE(toplevel srcdir already configured... skipping subdir build)
+ else
+ test ".$SUB" = "." && SUB="."
+ test ".$SUB" = ".no" && SUB="."
+ test ".$TARGET" = "." && TARGET="$target"
+ test ".$SUB" = ".yes" && SUB="m4_ifval([$1], [$1],[$TARGET])"
+ if test ".$SUB" != ".." ; then # we know where to go and
+ AS_MKDIR_P([$SUB])
+ echo __.$SUB.__ > $SUB/conftest.tmp
+ cd $SUB
+ if grep __.$SUB.__ conftest.tmp >/dev/null 2>/dev/null ; then
+ rm conftest.tmp
+ AC_MSG_RESULT([continue configure in default builddir "./$SUB"])
+ else
+ AC_MSG_ERROR([could not change to default builddir "./$SUB"])
+ fi
+ srcdir=`echo "$SUB" |
+ sed -e 's,^\./,,;s,[[^/]]$,&/,;s,[[^/]]*/,../,g;s,[[/]]$,,;'`
+ # going to restart from subdirectory location
+ test -f $srcdir/config.log && mv $srcdir/config.log .
+ test -f $srcdir/confdefs.h && mv $srcdir/confdefs.h .
+ test -f $srcdir/conftest.log && mv $srcdir/conftest.log .
+ test -f $srcdir/$cache_file && mv $srcdir/$cache_file .
+ AC_MSG_RESULT(....exec $SHELL $srcdir/[$]0 "--srcdir=$srcdir" "--enable-builddir=$SUB" ${1+"[$]@"})
+ case "[$]0" in # restart
+ [/\\]*) eval $SHELL "'[$]0'" "'--srcdir=$srcdir'" "'--enable-builddir=$SUB'" $ac_configure_args ;;
+ *) eval $SHELL "'$srcdir/[$]0'" "'--srcdir=$srcdir'" "'--enable-builddir=$SUB'" $ac_configure_args ;;
+ esac ; exit $?
+ fi
+ fi
+fi fi
+dnl ac_path_prog uses "set dummy" to override $@ which would defeat the "exec"
+AC_PATH_PROG(SED,gsed sed, sed)
+AUX="$ac_aux_dir"
+AUX=`echo "$AUX" | $SED -e "s|$ac_top_srcdir|.|"`
+test ".$AUX" = "." && AUX="$ac_aux_dir"
+test ".$AUX" = "." && AUX="."
+AS_VAR_POPDEF([SED])dnl
+AS_VAR_POPDEF([AUX])dnl
+AS_VAR_POPDEF([SUB])dnl
+AC_CONFIG_COMMANDS([buildir],[dnl .............. config.status ..............
+AS_VAR_PUSHDEF([SUB],[ax_enable_builddir])dnl
+AS_VAR_PUSHDEF([TOP],[top_srcdir])dnl
+AS_VAR_PUSHDEF([SRC],[ac_top_srcdir])dnl
+AS_VAR_PUSHDEF([AUX],[ax_enable_builddir_auxdir])dnl
+AS_VAR_PUSHDEF([SED],[ax_enable_builddir_sed])dnl
+pushdef([END],[Makefile.mk])dnl
+pushdef([_ALL],[ifelse([$3],,[-all],[$3])])dnl
+ SRC="$ax_enable_builddir_srcdir"
+ if test ".$SUB" = "." ; then
+ if test -f "$TOP/Makefile" ; then
+ AC_MSG_NOTICE([skipping TOP/Makefile - left untouched])
+ else
+ AC_MSG_NOTICE([skipping TOP/Makefile - not created])
+ fi
+ else
+ if test -f "$SRC/Makefile" ; then
+ a=`grep "^VERSION " "$SRC/Makefile"` ; b=`grep "^VERSION " Makefile`
+ test "$a" != "$b" && rm "$SRC/Makefile"
+ fi
+ if test -f "$SRC/Makefile" ; then
+ echo "$SRC/Makefile : $SRC/Makefile.in" > $tmp/conftemp.mk
+ echo " []@ echo 'REMOVED,,,' >\$[]@" >> $tmp/conftemp.mk
+ eval "${MAKE-make} -f $tmp/conftemp.mk 2>/dev/null >/dev/null"
+ if grep '^REMOVED,,,' "$SRC/Makefile" >/dev/null
+ then rm $SRC/Makefile ; fi
+ cp $tmp/conftemp.mk $SRC/makefiles.mk~ ## DEBUGGING
+ fi
+ if test ! -f "$SRC/Makefile" ; then
+ AC_MSG_NOTICE([create TOP/Makefile guessed from local Makefile])
+ x='`' ; cat >$tmp/conftemp.sed <<_EOF
+/^\$/n
+x
+/^\$/bS
+x
+/\\\\\$/{H;d;}
+{H;s/.*//;x;}
+bM
+:S
+x
+/\\\\\$/{h;d;}
+{h;s/.*//;x;}
+:M
+s/\\(\\n\\) /\\1 /g
+/^ /d
+/^[[ ]]*[[\\#]]/d
+/^VPATH *=/d
+s/^srcdir *=.*/srcdir = ./
+s/^top_srcdir *=.*/top_srcdir = ./
+/[[:=]]/!d
+/^\\./d
+s/:.*/:/
+/:\$/s/ / /g
+/:\$/s/ \\([[a-z]][[a-z-]]*[[a-z]]\\) / \\1 \\1[]_ALL /g
+/:\$/s/^\\([[a-z]][[a-z-]]*[[a-z]]\\)\\([[ :]]\\)/\\1 \\1[]_ALL\\2/
+/:\$/s/ / /g
+/^all all[]_ALL[[ :]]/i\\
+all-configured : all[]_ALL
+dnl dist-all exists... and would make for dist-all-all
+/[]_ALL[]_ALL/d
+/^.*[[=]]/!a\\
+ @ HOST="\$(HOST)\" \\\\\\
+ ; test ".\$\$HOST" = "." && HOST=$x sh $AUX/config.guess $x \\\\\\
+ ; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\
+ ; use=$x basename "\$\@" _ALL $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\
+ ; echo "MAKE \$\$HOST : \$\$n * \$\@"; if test "\$\$n" = "0" ; then : \\\\\\
+ ; BUILD=$x grep "^####.*|" Makefile |tail -1| sed -e 's/.*|//' $x ; fi \\\\\\
+ ; test ".\$\$BUILD" = "." && BUILD="." \\\\\\
+ ; test "\$\$use" = "\$\@" && BUILD=$x echo "\$\$BUILD" | tail -1 $x \\\\\\
+ ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
+ ; (cd "\$\$i" && test ! -f configure && \$(MAKE) \$\$use) || exit; done
+dnl special rule add-on: "dist" copies the tarball to $(PUB). (source tree)
+/dist[]_ALL *:/a\\
+ @ HOST="\$(HOST)\" \\\\\\
+ ; test ".\$\$HOST" = "." && HOST=$x sh $AUX/config.guess $x \\\\\\
+ ; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\
+ ; found=$x echo \$\$BUILD | wc -w $x \\\\\\
+ ; echo "MAKE \$\$HOST : \$\$found \$(PACKAGE)-\$(VERSION).tar.*" \\\\\\
+ ; if test "\$\$found" = "0" ; then : \\\\\\
+ ; BUILD=$x grep "^#### .*|" Makefile |tail -1| sed -e 's/.*|//' $x \\\\\\
+ ; fi ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
+ ; for f in \$\$i/\$(PACKAGE)-\$(VERSION).tar.* \\\\\\
+ ; do test -f "\$\$f" && mv "\$\$f" \$(PUB). ; done ; break ; done
+dnl special rule add-on: "distclean" removes all local builddirs completely
+/distclean[]_ALL *:/a\\
+ @ HOST="\$(HOST)\" \\\\\\
+ ; test ".\$\$HOST" = "." && HOST=$x sh $AUX/config.guess $x \\\\\\
+ ; BUILD=$x grep "^#### .*| *\\./" Makefile | sed -e 's/.*|//' $x \\\\\\
+ ; use=$x basename "\$\@" _ALL $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\
+ ; echo "MAKE \$\$HOST : \$\$n * \$\@ (all local builds)" \\\\\\
+ ; test ".\$\$BUILD" = "." && BUILD="." \\\\\\
+ ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
+ ; echo "# rm -r \$\$i"; done ; echo "# (sleep 3)" ; sleep 3 \\\\\\
+ ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
+ ; echo "rm -r \$\$i"; (rm -r "\$\$i") ; done ; rm Makefile
+_EOF
+ cp "$tmp/conftemp.sed" "$SRC/makefile.sed~" ## DEBUGGING
+ $SED -f $tmp/conftemp.sed Makefile >$SRC/Makefile
+ if test -f "$SRC/m4_ifval([$2],[$2],[END])" ; then
+ AC_MSG_NOTICE([extend TOP/Makefile with TOP/m4_ifval([$2],[$2],[END])])
+ cat $SRC/END >>$SRC/Makefile
+ fi ; xxxx="####"
+ echo "$xxxx CONFIGURATIONS FOR TOPLEVEL MAKEFILE: " >>$SRC/Makefile
+ # sanity check
+ if grep '^; echo "MAKE ' $SRC/Makefile >/dev/null ; then
+ AC_MSG_NOTICE([buggy sed found - it deletes tab in "a" text parts])
+ $SED -e '/^@ HOST=/s/^/ /' -e '/^; /s/^/ /' $SRC/Makefile \
+ >$SRC/Makefile~
+ (test -s $SRC/Makefile~ && mv $SRC/Makefile~ $SRC/Makefile) 2>/dev/null
+ fi
+ else
+ xxxx="\\#\\#\\#\\#"
+ # echo "/^$xxxx *$ax_enable_builddir_host /d" >$tmp/conftemp.sed
+ echo "s!^$xxxx [[^|]]* | *$SUB *\$!$xxxx ...... $SUB!" >$tmp/conftemp.sed
+ $SED -f "$tmp/conftemp.sed" "$SRC/Makefile" >$tmp/mkfile.tmp
+ cp "$tmp/conftemp.sed" "$SRC/makefiles.sed~" ## DEBUGGING
+ cp "$tmp/mkfile.tmp" "$SRC/makefiles.out~" ## DEBUGGING
+ if cmp -s "$SRC/Makefile" "$tmp/mkfile.tmp" 2>/dev/null ; then
+ AC_MSG_NOTICE([keeping TOP/Makefile from earlier configure])
+ rm "$tmp/mkfile.tmp"
+ else
+ AC_MSG_NOTICE([reusing TOP/Makefile from earlier configure])
+ mv "$tmp/mkfile.tmp" "$SRC/Makefile"
+ fi
+ fi
+ AC_MSG_NOTICE([build in $SUB (HOST=$ax_enable_builddir_host)])
+ xxxx="####"
+ echo "$xxxx" "$ax_enable_builddir_host" "|$SUB" >>$SRC/Makefile
+ fi
+popdef([END])dnl
+AS_VAR_POPDEF([SED])dnl
+AS_VAR_POPDEF([AUX])dnl
+AS_VAR_POPDEF([SRC])dnl
+AS_VAR_POPDEF([TOP])dnl
+AS_VAR_POPDEF([SUB])dnl
+],[dnl
+ax_enable_builddir_srcdir="$srcdir" # $srcdir
+ax_enable_builddir_host="$HOST" # $HOST / $host
+ax_enable_builddir_version="$VERSION" # $VERSION
+ax_enable_builddir_package="$PACKAGE" # $PACKAGE
+ax_enable_builddir_auxdir="$ax_enable_builddir_auxdir" # $AUX
+ax_enable_builddir_sed="$ax_enable_builddir_sed" # $SED
+ax_enable_builddir="$ax_enable_builddir" # $SUB
+])dnl
+])
diff --git a/Build/source/libs/zziplib/zziplib-src/msvc7/README.TXT b/Build/source/libs/zziplib/zziplib-src/msvc7/README.TXT
new file mode 100644
index 00000000000..dbbd5febabf
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/msvc7/README.TXT
@@ -0,0 +1,31 @@
+These project files were tested with the
+free Microsoft Visual C++ 2005 Express Edition.
+
+Visual C++ Express does NOT include the Win32 SDK Headers.
+They must be downloaded separately as documented in the
+installation instructions at Microsoft - consequently that
+extra installation must be referenced via a system variable:
+Set MSSdk=C:\Program Files\Microsoft Platform SDK
+
+In order to compile you need a valid Zlib SDK - you can
+download it from zlib.org in the archive zlib123-dll.zip -
+I had unpacked them to $(zziplibdir)/zlib inside the
+toplevel of the zziplib source tree. That SDK does ship
+with a "zlib1.dll" runtime and "zdll.lib" import library.
+
+The new Visual Studio has depracated most of the Win32 API
+just as well as most of the Posix API. That provokes a lot
+of warning message in surplus of the many warning message
+that occur on every implicit conversion between signed and
+unsigned types. Other compilers are more clever about
+detecting real conversion issues, therefore they are not
+going to be "patched away" with an explicit conversion in
+the source files (I expect Microsoft to get it right somewhen).
+
+== Download Places ==
+download.microsoft.com/download/a/5/f/a5f0d781-e201-4ab6-8c6a-9bb4efed1e1a/
+PSDK-x86.exe = Win32 SDK - online installer
+download.microsoft.com/download/A/9/1/A91D6B2B-A798-47DF-9C7E-A97854B7DD18/
+VC.iso = Visual C++ Express CD-image
+download.microsoft.com/download/C/6/F/C6F4733B-67C7-4C15-9F21-61F7A3167505/
+VCS.iso = Visual C# Express CD-image
diff --git a/Build/source/libs/zziplib/zziplib-src/msvc7/zip.exe b/Build/source/libs/zziplib/zziplib-src/msvc7/zip.exe
new file mode 100755
index 00000000000..2c5b268b47d
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/msvc7/zip.exe
Binary files differ
diff --git a/Build/source/libs/zziplib/zziplib-src/ports/symbian-S60/zziplib-symbian.zip b/Build/source/libs/zziplib/zziplib-src/ports/symbian-S60/zziplib-symbian.zip
new file mode 100644
index 00000000000..cb8f83b4df8
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/ports/symbian-S60/zziplib-symbian.zip
Binary files differ
diff --git a/Build/source/libs/zziplib/zziplib-src/test/Makefile.am b/Build/source/libs/zziplib/zziplib-src/test/Makefile.am
index 418e0178e22..9b3c08a76bf 100644
--- a/Build/source/libs/zziplib/zziplib-src/test/Makefile.am
+++ b/Build/source/libs/zziplib/zziplib-src/test/Makefile.am
@@ -3,7 +3,7 @@ AUTOTOOL_VERSION=autoconf-2.52 automake-1.5 libtool-1.4.2
DEFAULT_INCLUDES = # nothing - no default of -I. -I$(srcdir)
DEFS = @DEFS@ -I$(top_builddir) -I$(top_srcdir) # also for automake 1.4
-EXTRA_DIST = test.zip test1.zip
+EXTRA_DIST = test.zip test1.zip zziptests.py
DISTCLEANFILES = test*.dat test2.zip test3.zip
zzcat = ../bins/zzcat$(EXEEXT)
@@ -28,80 +28,18 @@ test.zip tmp/../test.zip : $(README)
- test -d tmp || mkdir tmp
- $(MAKE) test0.zip && mv test0.zip $@
- test -s $@ || cp $(srcdir)/test.zip $@
-test0.zip : $(README)
- test -f README || ln -s $(README) .
- - $(MKZIP) test_.zip README
- @ if test -s test_.zip ;then echo mv test_.zip $@ ; mv test_.zip $@ ;fi
- @ test -d $(testdatadir) || mkdir $(testdatadir); if test -s $@ \
- ; then echo cp $@ $(testdatadir)/ ; cp $@ $(testdatadir)/ \
- ; else echo cp $(testdatadir)/$@ .; cp $(testdatadir)/$@ . \
- ; fi ; echo test -s $@ ; test -s $@
-
-test1.zip :
- @ echo $(MKZIP) $@ ... "(10 files)" \
- ; mkdir test.tmp \
- ; for i in 1 2 3 4 5 6 8 9 \
- ; do echo "file-$i" >test.tmp/file.$$i ; done \
- ; echo " a plain text file here" >test.tmp/README \
- ; (cd test.tmp && $(MKZIP) ../$@ file.* >$(NULL)) \
- ; rm -rf test.tmp
- @ test -d $(testdatadir) || mkdir $(testdatadir); if test -s $@ \
- ; then echo cp $@ $(testdatadir)/ ; cp $@ $(testdatadir)/ \
- ; else echo cp $(testdatadir)/$@ .; cp $(testdatadir)/$@ . \
- ; fi ; echo test -s $@ ; test -s $@
-
-test2.zip : # will not be shipped in source tarball
- @ echo $(MKZIP) $@ ... "(100 files)" \
- ; mkdir test.tmp \
- ; for i in 1 2 3 4 5 6 8 9 ; do for j in 1 2 3 4 5 6 7 8 9 \
- ; do echo "file-$i" >test.tmp/file.$$j$$i ; done done \
- ; (cd test.tmp && $(MKZIP) ../$@ file.* >$(NULL)) \
- ; rm -rf test.tmp
- @ test -d $(testdatadir) || mkdir $(testdatadir); if test -s $@ \
- ; then echo cp $@ $(testdatadir)/ ; cp $@ $(testdatadir)/ \
- ; else echo cp $(testdatadir)/$@ .; cp $(testdatadir)/$@ . \
- ; fi ; echo test -s $@ ; test -s $@
-
-test3.zip : # will not be shipped in source tarball
- @ echo $(MKZIP) $@ ... "(1000 files)" \
- ; mkdir test.tmp ; for h in 1 2 3 4 5 6 7 8 9 ; do : \
- ; for i in 1 2 3 4 5 6 8 9 ; do for j in 1 2 3 4 5 6 7 8 9 \
- ; do echo "file-$i" >test.tmp/file.$$h$$j$$i ; done done done \
- ; (cd test.tmp && $(MKZIP) ../$@ file.* >$(NULL)) \
- ; rm -rf test.tmp
- @ test -d $(testdatadir) || mkdir $(testdatadir); if test -s $@ \
- ; then echo cp $@ $(testdatadir)/ ; cp $@ $(testdatadir)/ \
- ; else echo cp $(testdatadir)/$@ .; cp $(testdatadir)/$@ . \
- ; fi ; echo test -s $@ ; test -s $@
-
-test4.zip : # will not be shipped in source tarball
- @ echo $(MKZIP) $@ ... "(1000 files)" \
- ; mkdir test.tmp ; for h in 1 2 3 4 5 6 7 8 9 ; do : \
- ; for i in 1 2 3 4 5 6 8 9 ; do for j in 1 2 3 4 5 6 7 8 9 \
- ; do echo "file-$i" >test.tmp/file.$$h$$j$$i ; done done done \
- ; (cd test.tmp && $(MKZIP) -n : ../$@ file.* >$(NULL)) \
- ; rm -rf test.tmp
- @ test -d $(testdatadir) || mkdir $(testdatadir); if test -s $@ \
- ; then echo cp $@ $(testdatadir)/ ; cp $@ $(testdatadir)/ \
- ; else echo cp $(testdatadir)/$@ .; cp $(testdatadir)/$@ . \
- ; fi ; echo test -s $@ ; test -s $@
-
-test.dat : test.zip
- $(zzxorcopy) $? $@
-test1.dat : test1.zip
- $(zzxorcopy) $? $@
-test2.dat : test2.zip
- $(zzxorcopy) $? $@
-test3.dat : test3.zip
- $(zzxorcopy) $? $@
# -------------------------------------------------------------------
-stdtests = @ZIPTESTS@ check-test0 check-test1 check-zzdir check-zzcat
-xortests = @ZIPTESTS@ check-zzxor check-zzxordir check-zzxorcat
sfxtests = @ZIPTESTS@ check-sfx
+newtests = @ZIPTESTS@ check-tests
-check-local: check-readme $(stdtests) $(xortests) $(sfxtests)
+check-local: check-readme $(sfxtests) $(newtests)
+
+check-tests: tests
+tests:
+ @ test -f zziptests.py || cp -s -v $(srcdir)/zziptests.py .
+ python zziptests.py -v
check-readme : $(zzcat) test.zip
@ test -f test.zip || $(MAKE) tmp/../test.zip
@@ -112,143 +50,6 @@ check-readme : $(zzcat) test.zip
; then rm test.out ; echo check OK ; true \
; else rm test.out ; echo check FAIL ; false ; fi
-check-zzxor : $(zzxorcat) test.dat
- @ echo :$@: checking $(zzxorcat) test.dat/README
- @ $(zzxorcat) test.dat/README >test.out
- @ if diff test.out $(README) >$(NULL) \
- ; then rm test.out ; echo check OK ; true \
- ; else rm test.out ; echo check FAIL ; false ; fi
-
-test: test0 test1 test2 test3
-test0: $(zziptest)
- $(zziptest) test.zip
-test1: $(zziptest)
- $(zziptest) test1.zip
-test2: $(zzcat)
- $(zzcat) test/README
-test3: $(zzdir)
- $(zzdir) test1.zip
-test4: $(zzdir) test4.zip
- $(zzcat) test4/file.113
-
-check-test0 : $(zziptest)
- @ echo :$@: quick selftest
- $(zziptest) test.zip >test.out
- rm test.out
-check-test1 : $(zziptest)
- @ test -f test1.zip || ln -s $(srcdir)/test1.zip test1.zip
- @ echo :$@: longer selftest "(about ten seconds)"
- $(zziptest) test1.zip >test.out
- rm test.out
-
-check-zzdir : test1.zip test2.zip test3.zip $(zzdir)
- @ echo :$@: zip directory access
- ./$(zzdir) test1 > test.out
- @ X="$(zzdir) test1 "\
- ; if grep file.1 test.out >$(NULL) ; then : \
- ; if grep file.9 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- ./$(zzdir) test2 > test.out
- @ X="$(zzdir) test2 "\
- ; if grep file.11 test.out >$(NULL) ; then : \
- ; if grep file.99 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- ./$(zzdir) test3 > test.out
- @ X="$(zzdir) test3 "\
- ; if grep file.111 test.out >$(NULL) ; then : \
- ; if grep file.999 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- @ X="$(zzdir) test000" ; echo ./$$X "(negative test)" \
- ; if ./$(zzdir) test000 >test.out ; then : \
- ; echo ..$$X.. FAIL ; false ; else echo ..$$X.. OK ; true ; fi
- rm test.out
-
-check-zzcat : test1.zip test2.zip test3.zip $(zzcat)
- @ echo ___ $@ ___
- ./$(zzcat) test1/file.1 test1/file.9 > test.out
- @ X="$(zzcat) test1/file.1 test1/file.9 "\
- ; if grep file-1 test.out >$(NULL) ; then : \
- ; if grep file-9 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- ./$(zzcat) test2/file.11 test2/file.99 > test.out
- @ X="$(zzcat) test2/file.10 test2/file.99 "\
- ; if grep file-10 test.out >$(NULL) ; then : \
- ; if grep file-99 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- ./$(zzcat) test3/file.111 test3/file.999 > test.out
- @ X="$(zzcat) test3/file.111 test3/file.999 "\
- ; if grep file-100 test.out >$(NULL) ; then : \
- ; if grep file-999 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- @ X="$(zzcat) test1/file.999" ; echo ./$$X "(negative test)" \
- ; if ./$(zzdir) test1/file.999 >test.out ; then : \
- ; echo ..$$X.. FAIL ; false ; else echo ..$$X.. OK ; true ; fi
- rm test.out
-
-check-zzxordir : test1.dat test2.dat $(zzxordir)
- @ echo ___ $@ ___
- ./$(zzxordir) test1 > test.out
- @ X="$(zzxordir) test1 "\
- ; if grep file.1 test.out >$(NULL) ; then : \
- ; if grep file.9 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- ./$(zzxordir) test2.dat > test.out
- @ X="$(zzxordir) test2.dat "\
- ; if grep file.11 test.out >$(NULL) ; then : \
- ; if grep file.99 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- rm test.out
-
-check-zzxorcat : test1.dat test2.dat $(zzxorcat)
- @ echo ___ $@ ___
- ./$(zzxorcat) test1/file.1 test1/file.9 > test.out
- @ X="$(zzxorcat) test1/file.1 test1/file.9 "\
- ; if grep file-1 test.out >$(NULL) ; then : \
- ; if grep file-9 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- ./$(zzxorcat) test2.dat/file.11 test2/file.99 > test.out
- @ X="$(zzxorcat) test2.dat/file.10 test2/file.99 "\
- ; if grep file-10 test.out >$(NULL) ; then : \
- ; if grep file-99 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- rm test.out
-
-# -------------------------------------------------------------------
-ECHON = echo -n
-BRUTE = 0 # default is less than a thousand tests
-brute : # which is still a brute force selftest
- @ echo $(MKZIP) $@: \
- ; for u in 1 2 3 4 5 6 8 9 ; do for v in 1 2 3 4 5 6 7 8 9 ; do : \
- ; for w in 1 2 3 4 5 6 8 9 ; do for x in $(BRUTE) ; do : \
- ; $(ECHON) $$u$$v$$w$$x: \
- ; rm -rf test.tmp ; mkdir test.tmp \
- ; for i in 1 2 3 4 5 6 8 9 ; do for j in 1 2 3 4 5 6 7 8 9 ; do : \
- ; for m in 1 2 3 4 5 6 8 9 ; do for n in $(BRUTE) ; do : \
- ; echo "file-$$i$$j$$m$$n" >test.tmp/file$$i$$j$$m$$n.txt \
- ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; test -f test.tmp/file$$i$$j$$m$$n.txt || exit 2 \
- ; (cd test.tmp && $(MKZIP) ../test$$u$$v$$w$$x.zip file*.* >$(NULL)) \
- ; rm -rf test.tmp \
- ; for i in 1 2 3 4 5 6 8 9 ; do for j in 1 2 3 4 5 6 7 8 9 ; do : \
- ; for m in 1 2 3 4 5 6 8 9 ; do for n in $(BRUTE) ; do : \
- ; ./$(zzcat) test$$u$$v$$w$$x/file$$i$$j$$m$$n.txt >test.out \
- ; if grep file-$$i$$j$$m$$n test.out >$(NULL) ; then rm test.out \
- ; else echo ERROR file-$$i$$j$$m$$n diff in test$$u$$v$$w$$x \
- ; exit 1 ; fi \
- ; ./$(zzdir) test$$u$$v$$w$$x >test.out \
- ; if grep file$$i$$j$$m$$n.txt test.out >$(NULL) ; then rm test.out \
- ; else echo ERROR file$$i$$j$$m$$n.txt not in test$$u$$v$$w$$x \
- ; exit 1 ; fi \
- ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; rm test$$u$$v$$w$$x.zip \
- ; done ; done ; done ; done ; true
-
# -------------------------------------------------------------------
noinst_PROGRAMS = zzipself zzipsetstub
diff --git a/Build/source/libs/zziplib/zziplib-src/test/Makefile.in b/Build/source/libs/zziplib/zziplib-src/test/Makefile.in
index 5bd4eb40b26..7b6c8ffda8f 100644
--- a/Build/source/libs/zziplib/zziplib-src/test/Makefile.in
+++ b/Build/source/libs/zziplib/zziplib-src/test/Makefile.in
@@ -1,9 +1,8 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -16,6 +15,51 @@
@SET_MAKE@
VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -37,7 +81,9 @@ host_triplet = @host@
target_triplet = @target@
noinst_PROGRAMS = zzipself$(EXEEXT) zzipsetstub$(EXEEXT)
subdir = test
-DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/uses/mkinstalldirs $(top_srcdir)/uses/depcomp \
+ README
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/ac_compile_check_sizeof.m4 \
$(top_srcdir)/m4/ac_set_default_paths_system.m4 \
@@ -50,7 +96,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ac_compile_check_sizeof.m4 \
$(top_srcdir)/m4/ax_check_aligned_access_required.m4 \
$(top_srcdir)/m4/ax_configure_args.m4 \
$(top_srcdir)/m4/ax_create_pkgconfig_info.m4 \
- $(top_srcdir)/m4/ax_enable_builddir_uname.m4 \
+ $(top_srcdir)/m4/ax_enable_builddir.m4 \
$(top_srcdir)/m4/ax_expand_prefix.m4 \
$(top_srcdir)/m4/ax_maintainer_mode_auto_silent.m4 \
$(top_srcdir)/m4/ax_not_enable_frame_pointer.m4 \
@@ -78,31 +124,79 @@ PROGRAMS = $(noinst_PROGRAMS)
zzipself_SOURCES = zzipself.c
zzipself_OBJECTS = zzipself.$(OBJEXT)
zzipself_DEPENDENCIES = ../zzip/libzzip.la
-zzipself_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(zzipself_LDFLAGS) \
- $(LDFLAGS) -o $@
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
+zzipself_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(zzipself_LDFLAGS) $(LDFLAGS) -o $@
zzipsetstub_SOURCES = zzipsetstub.c
zzipsetstub_OBJECTS = zzipsetstub.$(OBJEXT)
zzipsetstub_LDADD = $(LDADD)
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+am__v_GEN_1 =
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 =
depcomp = $(SHELL) $(top_srcdir)/uses/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo " CC " $@;
+am__v_CC_1 =
CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo " CCLD " $@;
+am__v_CCLD_1 =
SOURCES = zzipself.c zzipsetstub.c
DIST_SOURCES = zzipself.c zzipsetstub.c
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AS = @AS@
AUTOCONF = @AUTOCONF@
@@ -251,7 +345,7 @@ top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = 1.4 foreign
AUTOTOOL_VERSION = autoconf-2.52 automake-1.5 libtool-1.4.2
DEFAULT_INCLUDES = # nothing - no default of -I. -I$(srcdir)
-EXTRA_DIST = test.zip test1.zip
+EXTRA_DIST = test.zip test1.zip zziptests.py
DISTCLEANFILES = test*.dat test2.zip test3.zip
zzcat = ../bins/zzcat$(EXEEXT)
zzdir = ../bins/zzdir$(EXEEXT)
@@ -266,13 +360,8 @@ README = $(top_srcdir)/README
testdatadir = $(top_builddir)/testdata.d
# -------------------------------------------------------------------
-stdtests = @ZIPTESTS@ check-test0 check-test1 check-zzdir check-zzcat
-xortests = @ZIPTESTS@ check-zzxor check-zzxordir check-zzxorcat
sfxtests = @ZIPTESTS@ check-sfx
-
-# -------------------------------------------------------------------
-ECHON = echo -n
-BRUTE = 0 # default is less than a thousand tests
+newtests = @ZIPTESTS@ check-tests
zzipself_LDFLAGS = @ZZIPLIB_LDFLAGS@
zzipself_LDADD = ../zzip/libzzip.la @RESOLVES@ -lz
all: all-am
@@ -318,12 +407,14 @@ clean-noinstPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
-zzipself$(EXEEXT): $(zzipself_OBJECTS) $(zzipself_DEPENDENCIES)
+
+zzipself$(EXEEXT): $(zzipself_OBJECTS) $(zzipself_DEPENDENCIES) $(EXTRA_zzipself_DEPENDENCIES)
@rm -f zzipself$(EXEEXT)
- $(zzipself_LINK) $(zzipself_OBJECTS) $(zzipself_LDADD) $(LIBS)
-zzipsetstub$(EXEEXT): $(zzipsetstub_OBJECTS) $(zzipsetstub_DEPENDENCIES)
+ $(AM_V_CCLD)$(zzipself_LINK) $(zzipself_OBJECTS) $(zzipself_LDADD) $(LIBS)
+
+zzipsetstub$(EXEEXT): $(zzipsetstub_OBJECTS) $(zzipsetstub_DEPENDENCIES) $(EXTRA_zzipsetstub_DEPENDENCIES)
@rm -f zzipsetstub$(EXEEXT)
- $(LINK) $(zzipsetstub_OBJECTS) $(zzipsetstub_LDADD) $(LIBS)
+ $(AM_V_CCLD)$(LINK) $(zzipsetstub_OBJECTS) $(zzipsetstub_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
@@ -335,25 +426,25 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zzipsetstub.Po@am__quote@
.c.o:
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
.c.obj:
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
.c.lo:
-@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
mostlyclean-libtool:
-rm -f *.lo
@@ -361,26 +452,15 @@ mostlyclean-libtool:
clean-libtool:
-rm -rf .libs _libs
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -392,15 +472,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -409,6 +485,21 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -458,10 +549,15 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
mostlyclean-generic:
clean-generic:
@@ -547,9 +643,9 @@ uninstall-am:
.MAKE: check-am install-am install-strip
-.PHONY: CTAGS GTAGS all all-am check check-am check-local clean \
- clean-generic clean-libtool clean-noinstPROGRAMS ctags \
- distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am check-local clean \
+ clean-generic clean-libtool clean-noinstPROGRAMS cscopelist-am \
+ ctags ctags-am distclean distclean-compile distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-dvi install-dvi-am install-exec \
@@ -559,7 +655,7 @@ uninstall-am:
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-compile \
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags uninstall uninstall-am
+ tags tags-am uninstall uninstall-am
$(zzcat) $(zzdir) $(zziptest) $(zzxorcat) $(zzxordir) $(xorcopy) : \
@@ -572,74 +668,13 @@ test.zip tmp/../test.zip : $(README)
- test -d tmp || mkdir tmp
- $(MAKE) test0.zip && mv test0.zip $@
- test -s $@ || cp $(srcdir)/test.zip $@
-test0.zip : $(README)
- test -f README || ln -s $(README) .
- - $(MKZIP) test_.zip README
- @ if test -s test_.zip ;then echo mv test_.zip $@ ; mv test_.zip $@ ;fi
- @ test -d $(testdatadir) || mkdir $(testdatadir); if test -s $@ \
- ; then echo cp $@ $(testdatadir)/ ; cp $@ $(testdatadir)/ \
- ; else echo cp $(testdatadir)/$@ .; cp $(testdatadir)/$@ . \
- ; fi ; echo test -s $@ ; test -s $@
-
-test1.zip :
- @ echo $(MKZIP) $@ ... "(10 files)" \
- ; mkdir test.tmp \
- ; for i in 1 2 3 4 5 6 8 9 \
- ; do echo "file-$i" >test.tmp/file.$$i ; done \
- ; echo " a plain text file here" >test.tmp/README \
- ; (cd test.tmp && $(MKZIP) ../$@ file.* >$(NULL)) \
- ; rm -rf test.tmp
- @ test -d $(testdatadir) || mkdir $(testdatadir); if test -s $@ \
- ; then echo cp $@ $(testdatadir)/ ; cp $@ $(testdatadir)/ \
- ; else echo cp $(testdatadir)/$@ .; cp $(testdatadir)/$@ . \
- ; fi ; echo test -s $@ ; test -s $@
-
-test2.zip : # will not be shipped in source tarball
- @ echo $(MKZIP) $@ ... "(100 files)" \
- ; mkdir test.tmp \
- ; for i in 1 2 3 4 5 6 8 9 ; do for j in 1 2 3 4 5 6 7 8 9 \
- ; do echo "file-$i" >test.tmp/file.$$j$$i ; done done \
- ; (cd test.tmp && $(MKZIP) ../$@ file.* >$(NULL)) \
- ; rm -rf test.tmp
- @ test -d $(testdatadir) || mkdir $(testdatadir); if test -s $@ \
- ; then echo cp $@ $(testdatadir)/ ; cp $@ $(testdatadir)/ \
- ; else echo cp $(testdatadir)/$@ .; cp $(testdatadir)/$@ . \
- ; fi ; echo test -s $@ ; test -s $@
-
-test3.zip : # will not be shipped in source tarball
- @ echo $(MKZIP) $@ ... "(1000 files)" \
- ; mkdir test.tmp ; for h in 1 2 3 4 5 6 7 8 9 ; do : \
- ; for i in 1 2 3 4 5 6 8 9 ; do for j in 1 2 3 4 5 6 7 8 9 \
- ; do echo "file-$i" >test.tmp/file.$$h$$j$$i ; done done done \
- ; (cd test.tmp && $(MKZIP) ../$@ file.* >$(NULL)) \
- ; rm -rf test.tmp
- @ test -d $(testdatadir) || mkdir $(testdatadir); if test -s $@ \
- ; then echo cp $@ $(testdatadir)/ ; cp $@ $(testdatadir)/ \
- ; else echo cp $(testdatadir)/$@ .; cp $(testdatadir)/$@ . \
- ; fi ; echo test -s $@ ; test -s $@
-
-test4.zip : # will not be shipped in source tarball
- @ echo $(MKZIP) $@ ... "(1000 files)" \
- ; mkdir test.tmp ; for h in 1 2 3 4 5 6 7 8 9 ; do : \
- ; for i in 1 2 3 4 5 6 8 9 ; do for j in 1 2 3 4 5 6 7 8 9 \
- ; do echo "file-$i" >test.tmp/file.$$h$$j$$i ; done done done \
- ; (cd test.tmp && $(MKZIP) -n : ../$@ file.* >$(NULL)) \
- ; rm -rf test.tmp
- @ test -d $(testdatadir) || mkdir $(testdatadir); if test -s $@ \
- ; then echo cp $@ $(testdatadir)/ ; cp $@ $(testdatadir)/ \
- ; else echo cp $(testdatadir)/$@ .; cp $(testdatadir)/$@ . \
- ; fi ; echo test -s $@ ; test -s $@
-
-test.dat : test.zip
- $(zzxorcopy) $? $@
-test1.dat : test1.zip
- $(zzxorcopy) $? $@
-test2.dat : test2.zip
- $(zzxorcopy) $? $@
-test3.dat : test3.zip
- $(zzxorcopy) $? $@
-
-check-local: check-readme $(stdtests) $(xortests) $(sfxtests)
+
+check-local: check-readme $(sfxtests) $(newtests)
+
+check-tests: tests
+tests:
+ @ test -f zziptests.py || cp -s -v $(srcdir)/zziptests.py .
+ python zziptests.py -v
check-readme : $(zzcat) test.zip
@ test -f test.zip || $(MAKE) tmp/../test.zip
@@ -650,139 +685,6 @@ check-readme : $(zzcat) test.zip
; then rm test.out ; echo check OK ; true \
; else rm test.out ; echo check FAIL ; false ; fi
-check-zzxor : $(zzxorcat) test.dat
- @ echo :$@: checking $(zzxorcat) test.dat/README
- @ $(zzxorcat) test.dat/README >test.out
- @ if diff test.out $(README) >$(NULL) \
- ; then rm test.out ; echo check OK ; true \
- ; else rm test.out ; echo check FAIL ; false ; fi
-
-test: test0 test1 test2 test3
-test0: $(zziptest)
- $(zziptest) test.zip
-test1: $(zziptest)
- $(zziptest) test1.zip
-test2: $(zzcat)
- $(zzcat) test/README
-test3: $(zzdir)
- $(zzdir) test1.zip
-test4: $(zzdir) test4.zip
- $(zzcat) test4/file.113
-
-check-test0 : $(zziptest)
- @ echo :$@: quick selftest
- $(zziptest) test.zip >test.out
- rm test.out
-check-test1 : $(zziptest)
- @ test -f test1.zip || ln -s $(srcdir)/test1.zip test1.zip
- @ echo :$@: longer selftest "(about ten seconds)"
- $(zziptest) test1.zip >test.out
- rm test.out
-
-check-zzdir : test1.zip test2.zip test3.zip $(zzdir)
- @ echo :$@: zip directory access
- ./$(zzdir) test1 > test.out
- @ X="$(zzdir) test1 "\
- ; if grep file.1 test.out >$(NULL) ; then : \
- ; if grep file.9 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- ./$(zzdir) test2 > test.out
- @ X="$(zzdir) test2 "\
- ; if grep file.11 test.out >$(NULL) ; then : \
- ; if grep file.99 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- ./$(zzdir) test3 > test.out
- @ X="$(zzdir) test3 "\
- ; if grep file.111 test.out >$(NULL) ; then : \
- ; if grep file.999 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- @ X="$(zzdir) test000" ; echo ./$$X "(negative test)" \
- ; if ./$(zzdir) test000 >test.out ; then : \
- ; echo ..$$X.. FAIL ; false ; else echo ..$$X.. OK ; true ; fi
- rm test.out
-
-check-zzcat : test1.zip test2.zip test3.zip $(zzcat)
- @ echo ___ $@ ___
- ./$(zzcat) test1/file.1 test1/file.9 > test.out
- @ X="$(zzcat) test1/file.1 test1/file.9 "\
- ; if grep file-1 test.out >$(NULL) ; then : \
- ; if grep file-9 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- ./$(zzcat) test2/file.11 test2/file.99 > test.out
- @ X="$(zzcat) test2/file.10 test2/file.99 "\
- ; if grep file-10 test.out >$(NULL) ; then : \
- ; if grep file-99 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- ./$(zzcat) test3/file.111 test3/file.999 > test.out
- @ X="$(zzcat) test3/file.111 test3/file.999 "\
- ; if grep file-100 test.out >$(NULL) ; then : \
- ; if grep file-999 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- @ X="$(zzcat) test1/file.999" ; echo ./$$X "(negative test)" \
- ; if ./$(zzdir) test1/file.999 >test.out ; then : \
- ; echo ..$$X.. FAIL ; false ; else echo ..$$X.. OK ; true ; fi
- rm test.out
-
-check-zzxordir : test1.dat test2.dat $(zzxordir)
- @ echo ___ $@ ___
- ./$(zzxordir) test1 > test.out
- @ X="$(zzxordir) test1 "\
- ; if grep file.1 test.out >$(NULL) ; then : \
- ; if grep file.9 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- ./$(zzxordir) test2.dat > test.out
- @ X="$(zzxordir) test2.dat "\
- ; if grep file.11 test.out >$(NULL) ; then : \
- ; if grep file.99 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- rm test.out
-
-check-zzxorcat : test1.dat test2.dat $(zzxorcat)
- @ echo ___ $@ ___
- ./$(zzxorcat) test1/file.1 test1/file.9 > test.out
- @ X="$(zzxorcat) test1/file.1 test1/file.9 "\
- ; if grep file-1 test.out >$(NULL) ; then : \
- ; if grep file-9 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- ./$(zzxorcat) test2.dat/file.11 test2/file.99 > test.out
- @ X="$(zzxorcat) test2.dat/file.10 test2/file.99 "\
- ; if grep file-10 test.out >$(NULL) ; then : \
- ; if grep file-99 test.out >$(NULL) ; then : \
- ; echo ..$$X.. OK ; true ; else echo ..$$X.. FAIL ; false ; fi fi
- rm test.out
-brute : # which is still a brute force selftest
- @ echo $(MKZIP) $@: \
- ; for u in 1 2 3 4 5 6 8 9 ; do for v in 1 2 3 4 5 6 7 8 9 ; do : \
- ; for w in 1 2 3 4 5 6 8 9 ; do for x in $(BRUTE) ; do : \
- ; $(ECHON) $$u$$v$$w$$x: \
- ; rm -rf test.tmp ; mkdir test.tmp \
- ; for i in 1 2 3 4 5 6 8 9 ; do for j in 1 2 3 4 5 6 7 8 9 ; do : \
- ; for m in 1 2 3 4 5 6 8 9 ; do for n in $(BRUTE) ; do : \
- ; echo "file-$$i$$j$$m$$n" >test.tmp/file$$i$$j$$m$$n.txt \
- ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; test -f test.tmp/file$$i$$j$$m$$n.txt || exit 2 \
- ; (cd test.tmp && $(MKZIP) ../test$$u$$v$$w$$x.zip file*.* >$(NULL)) \
- ; rm -rf test.tmp \
- ; for i in 1 2 3 4 5 6 8 9 ; do for j in 1 2 3 4 5 6 7 8 9 ; do : \
- ; for m in 1 2 3 4 5 6 8 9 ; do for n in $(BRUTE) ; do : \
- ; ./$(zzcat) test$$u$$v$$w$$x/file$$i$$j$$m$$n.txt >test.out \
- ; if grep file-$$i$$j$$m$$n test.out >$(NULL) ; then rm test.out \
- ; else echo ERROR file-$$i$$j$$m$$n diff in test$$u$$v$$w$$x \
- ; exit 1 ; fi \
- ; ./$(zzdir) test$$u$$v$$w$$x >test.out \
- ; if grep file$$i$$j$$m$$n.txt test.out >$(NULL) ; then rm test.out \
- ; else echo ERROR file$$i$$j$$m$$n.txt not in test$$u$$v$$w$$x \
- ; exit 1 ; fi \
- ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; test "$$i$$j$$m$$n" = "$$u$$v$$w$$x" && break \
- ; done ; rm test$$u$$v$$w$$x.zip \
- ; done ; done ; done ; done ; true
-
../zzip/libzzip.la : @top_srcdir@/zzip/*.c
(cd ../zzip && $(MAKE) `basename $@`)
diff --git a/Build/source/libs/zziplib/zziplib-src/test/test.zip b/Build/source/libs/zziplib/zziplib-src/test/test.zip
index c8cd6843197..8923726372b 100644
--- a/Build/source/libs/zziplib/zziplib-src/test/test.zip
+++ b/Build/source/libs/zziplib/zziplib-src/test/test.zip
Binary files differ
diff --git a/Build/source/libs/zziplib/zziplib-src/test/zziptests.py b/Build/source/libs/zziplib/zziplib-src/test/zziptests.py
new file mode 100644
index 00000000000..1ad56367ef2
--- /dev/null
+++ b/Build/source/libs/zziplib/zziplib-src/test/zziptests.py
@@ -0,0 +1,1000 @@
+import unittest
+import subprocess
+import logging
+import os
+import collections
+from fnmatch import fnmatchcase as matches
+
+logg = logging.getLogger("test")
+
+topsrcdir = "../.."
+testdatadir = "testdata.d"
+readme = "README"
+mkzip = "zip"
+unzip = "unzip"
+exeext = ""
+
+def shell_string(command):
+ return " ".join(["'%s'" % arg.replace("'","\\'") for arg in command])
+
+def shell(command, shell=True, calls=False, cwd=None, env=None, lang=None, returncodes=None):
+ returncodes = returncodes or [ None, 0 ]
+ Shell = collections.namedtuple("Shell",["returncode", "output", "errors", "shell"])
+ if isinstance(command, basestring):
+ sh_command = command
+ command = [ command ]
+ else:
+ sh_command = shell_string(command)
+ if lang:
+ if not env: env = os.environ.copy()
+ for name, value in env.items():
+ if name.startswith("LC_"):
+ env[name] = lang
+ env["LANG"] = lang # defines message format
+ env["LC_ALL"] = lang # other locale formats
+ try:
+ output, errors = "", ""
+ if calls:
+ logg.debug("result from %s: %s", cwd and cwd+"/" or "shell", sh_command)
+ run = subprocess.Popen(command, shell=shell, cwd=cwd, env=env)
+ if run.returncode:
+ logg.warning("EXIT %s: %s", run.returncode, command)
+ run.wait()
+ else:
+ logg.debug("output from %s: %s", cwd and cwd+"/" or "shell", sh_command)
+ run = subprocess.Popen(command, shell=shell, cwd=cwd,
+ stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=None, env=env)
+ if run.returncode:
+ logg.warning("EXIT %s: %s", run.returncode, command)
+ output, errors = run.communicate() # run.wait()
+ except:
+ logg.error("*E*: %s", sh_command)
+ for line in output.split("\n"):
+ if line:
+ logg.error("OUT: %s", line)
+ for line in errors.split("\n"):
+ if line:
+ logg.error("ERR: %s", line)
+ raise
+ if run.returncode not in returncodes:
+ logg.warning("*%02i: %s", run.returncode, sh_command)
+ for line in output.split("\n"):
+ if line:
+ logg.warning("OUT: %s", line)
+ for line in errors.split("\n"):
+ if line:
+ logg.warning("ERR: %s", line)
+ else:
+ for line in output.split("\n"):
+ if line:
+ logg.debug("OUT: %s", line)
+ for line in errors.split("\n"):
+ if line:
+ logg.debug("ERR: %s", line)
+ return Shell(run.returncode, output, errors, sh_command)
+
+
+class ZZipTest(unittest.TestCase):
+ @property
+ def t(self):
+ if not os.path.isdir(testdatadir):
+ os.makedirs(testdatadir)
+ return testdatdir
+ @property
+ def s(self):
+ return topsrcdir
+ def src(self, name):
+ return os.path.join(self.s, name)
+ def readme(self):
+ f = open(self.src(readme))
+ text = f.read()
+ f.close()
+ return text
+ def mkfile(self, name, content):
+ b = os.path.dirname(name)
+ if not os.path.isdir(b):
+ os.makedirs(b)
+ f = open(name, "w")
+ f.write(content)
+ f.close()
+ def bins(self, name):
+ exe = os.path.join("..", "bins", name)
+ if exeext: exe += exeext
+ return exe
+ def test_100_make_test0_zip(self):
+ """ create a test.zip for later tests using standard 'zip'
+ It will fall back to a variant in the source code if 'zip'
+ is not installed on the build host. The content is just
+ the README file that we can check for equality later on. """
+ zipfile="test0.zip"
+ tmpdir="test0.tmp"
+ exe=mkzip
+ filename = os.path.join(tmpdir,"README")
+ filetext = self.readme()
+ self.mkfile(filename, filetext)
+ shell("{exe} ../{zipfile} README".format(**locals()), cwd=tmpdir)
+ self.assertGreater(os.path.getsize(zipfile), 10)
+ def test_101_make_test1_zip(self):
+ """ create a test1.zip for later tests using standard 'zip'
+ It will fall back to a variant in the source code if 'zip'
+ is not installed on the build host. The archive has 10
+ generic files that we can check for their content later. """
+ zipfile="test1.zip"
+ tmpdir="test1.tmp"
+ exe=mkzip
+ for i in [1,2,3,4,5,6,7,8,9]:
+ filename = os.path.join(tmpdir,"file.%i" % i)
+ filetext = "file-%i\n" % i
+ self.mkfile(filename, filetext)
+ filename = os.path.join(tmpdir,"README")
+ filetext = self.readme()
+ self.mkfile(filename, filetext)
+ shell("{exe} ../{zipfile} ??*.* README".format(**locals()), cwd=tmpdir)
+ self.assertGreater(os.path.getsize(zipfile), 10)
+ def test_102_make_test2_zip(self):
+ """ create a test2.zip for later tests using standard 'zip'
+ It will NOT fall back to a variant in the source code.
+ The archive has 100 generic files with known content. """
+ zipfile="test2.zip"
+ tmpdir="test2.tmp"
+ exe=mkzip
+ for i in xrange(100):
+ filename = os.path.join(tmpdir,"file.%02i" % i)
+ filetext = "file-%02i\n" % i
+ self.mkfile(filename, filetext)
+ filename = os.path.join(tmpdir,"README")
+ filetext = self.readme()
+ self.mkfile(filename, filetext)
+ shell("{exe} ../{zipfile} ??*.* README".format(**locals()), cwd=tmpdir)
+ self.assertGreater(os.path.getsize(zipfile), 10)
+ def test_103_make_test3_zip(self):
+ """ create a test3.zip for later tests using standard 'zip'
+ It will NOT fall back to a variant in the source code.
+ The archive has 1000 generic files with known content. """
+ zipfile="test3.zip"
+ tmpdir="test3.tmp"
+ exe=mkzip
+ for i in xrange(1000):
+ filename = os.path.join(tmpdir,"file.%03i" % i)
+ filetext = "file-%03i\n" % i
+ self.mkfile(filename, filetext)
+ filename = os.path.join(tmpdir,"README")
+ filetext = self.readme()
+ self.mkfile(filename, filetext)
+ shell("{exe} ../{zipfile} ??*.* README".format(**locals()), cwd=tmpdir)
+ self.assertGreater(os.path.getsize(zipfile), 10)
+ def test_104_make_test4_zip(self):
+ """ create a test4.zip for later tests using standard 'zip'
+ It will NOT fall back to a variant in the source code.
+ The archive has 1000 generic files with known content
+ and they are NOT stored compressed in the archive. """
+ zipfile="test4.zip"
+ tmpdir="test4.tmp"
+ exe=mkzip
+ for i in xrange(1000):
+ filename = os.path.join(tmpdir,"file.%03i" % i)
+ filetext = "file-%03i\n" % i
+ self.mkfile(filename, filetext)
+ filename = os.path.join(tmpdir,"README")
+ filetext = self.readme()
+ self.mkfile(filename, filetext)
+ shell("{exe} -n README ../{zipfile} ??*.* README".format(**locals()), cwd=tmpdir)
+ self.assertGreater(os.path.getsize(zipfile), 10)
+ def test_110_make_test0_dat(self):
+ """ create test.dat from test.zip with xorcopy """
+ zipfile = "test0.zip"
+ datfile = "test0x.dat"
+ exe = self.bins("zzxorcopy")
+ shell("{exe} {zipfile} {datfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(datfile), 10)
+ self.assertEqual(os.path.getsize(datfile), os.path.getsize(zipfile))
+ def test_111_make_test1_dat(self):
+ """ create test.dat from test.zip with xorcopy """
+ zipfile = "test1.zip"
+ datfile = "test1x.dat"
+ exe = self.bins("zzxorcopy")
+ shell("{exe} {zipfile} {datfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(datfile), 10)
+ self.assertEqual(os.path.getsize(datfile), os.path.getsize(zipfile))
+ def test_112_make_test2_dat(self):
+ """ create test.dat from test.zip with xorcopy """
+ zipfile = "test2.zip"
+ datfile = "test2x.dat"
+ exe = self.bins("zzxorcopy")
+ shell("{exe} {zipfile} {datfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(datfile), 10)
+ self.assertEqual(os.path.getsize(datfile), os.path.getsize(zipfile))
+ def test_113_make_test3_dat(self):
+ """ create test.dat from test.zip with xorcopy """
+ zipfile = "test3.zip"
+ datfile = "test3x.dat"
+ exe = self.bins("zzxorcopy")
+ shell("{exe} {zipfile} {datfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(datfile), 10)
+ self.assertEqual(os.path.getsize(datfile), os.path.getsize(zipfile))
+ def test_114_make_test4_dat(self):
+ """ create test.dat from test.zip with xorcopy """
+ zipfile = "test4.zip"
+ datfile = "test4x.dat"
+ exe = self.bins("zzxorcopy")
+ shell("{exe} {zipfile} {datfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(datfile), 10)
+ self.assertEqual(os.path.getsize(datfile), os.path.getsize(zipfile))
+ def test_200_zziptest_test0_zip(self):
+ """ run zziptest on test.zip """
+ zipfile = "test0.zip"
+ logfile = "test0.log"
+ exe = self.bins("zziptest")
+ shell("{exe} --quick {zipfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ def test_201_zziptest_test1_zip(self):
+ """ run zziptest on test.zip """
+ zipfile = "test1.zip"
+ logfile = "test1.log"
+ exe = self.bins("zziptest")
+ shell("{exe} --quick {zipfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ def test_202_zziptest_test2_zip(self):
+ """ run zziptest on test.zip """
+ zipfile = "test2.zip"
+ logfile = "test2.log"
+ exe = self.bins("zziptest")
+ shell("{exe} --quick {zipfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ def test_203_zziptest_test3_zip(self):
+ """ run zziptest on test.zip """
+ zipfile = "test3.zip"
+ logfile = "test3.log"
+ exe = self.bins("zziptest")
+ shell("{exe} --quick {zipfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ def test_204_zziptest_test4_zip(self):
+ """ run zziptest on test.zip """
+ zipfile = "test4.zip"
+ logfile = "test4.log"
+ exe = self.bins("zziptest")
+ shell("{exe} --quick {zipfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ def test_210_zzcat_test0_zip(self):
+ """ run zzcat on test.zip using just test/README """
+ zipfile = "test0.zip"
+ getfile = "test0/README"
+ logfile = "test0.readme.txt"
+ exe = self.bins("zzcat")
+ run = shell("{exe} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ def test_211_zzcat_test1_zip(self):
+ """ run zzcat on test.zip using just test/README """
+ zipfile = "test1.zip"
+ getfile = "test1/README"
+ logfile = "test1.readme.txt"
+ exe = self.bins("zzcat")
+ run = shell("{exe} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "test1/file.1"
+ run = shell("{exe} {getfile}".format(**locals()))
+ self.assertEqual("file-1\n", run.output)
+ def test_212_zzcat_test2_zip(self):
+ """ run zzcat on test.zip using just test/README """
+ zipfile = "test2.zip"
+ getfile = "test2/README"
+ logfile = "test2.readme.txt"
+ exe = self.bins("zzcat")
+ run = shell("{exe} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "test2/file.22"
+ run = shell("{exe} {getfile}".format(**locals()))
+ self.assertEqual("file-22\n", run.output)
+ def test_213_zzcat_test3_zip(self):
+ """ run zzcat on test.zip using just test/README """
+ zipfile = "test3.zip"
+ getfile = "test3/README"
+ logfile = "test3.readme.txt"
+ exe = self.bins("zzcat")
+ run = shell("{exe} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "test3/file.999"
+ run = shell("{exe} {getfile}".format(**locals()))
+ self.assertEqual("file-999\n", run.output)
+ def test_214_zzcat_test4_zip(self):
+ """ run zzcat on test.zip using just test/README """
+ zipfile = "test4.zip"
+ getfile = "test4/README"
+ logfile = "test4.readme.txt"
+ exe = self.bins("zzcat")
+ run = shell("{exe} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "test4/file.999"
+ run = shell("{exe} {getfile}".format(**locals()))
+ self.assertEqual("file-999\n", run.output)
+ def test_220_zzdir_test0_zip(self):
+ """ run zzdir on test0.zip using just 'test0' """
+ zipfile = "test0.zip"
+ getfile = "test0"
+ exe = self.bins("zzdir")
+ run = shell("{exe} {getfile} ".format(**locals()))
+ self.assertIn(' README ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertLess(len(run.output), 30)
+ def test_221_zzdir_test1_zip(self):
+ """ run zzdir on test1.zip using just 'test1' """
+ zipfile = "test1.zip"
+ getfile = "test1"
+ exe = self.bins("zzdir")
+ run = shell("{exe} {getfile} ".format(**locals()))
+ self.assertIn(' file.1 ', run.output)
+ self.assertIn(' file.2 ', run.output)
+ self.assertIn(' file.9 ', run.output)
+ self.assertIn(' README ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_222_zzdir_test2_zip(self):
+ """ run zzdir on test2.zip using just 'test2' """
+ zipfile = "test2.zip"
+ getfile = "test2"
+ exe = self.bins("zzdir")
+ run = shell("{exe} {getfile} ".format(**locals()))
+ self.assertIn(' file.01 ', run.output)
+ self.assertIn(' file.22 ', run.output)
+ self.assertIn(' file.99 ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_223_zzdir_test3_zip(self):
+ """ run zzdir on test3.zip using just 'test3' """
+ zipfile = "test3.zip"
+ getfile = "test3"
+ exe = self.bins("zzdir")
+ run = shell("{exe} {getfile} ".format(**locals()))
+ self.assertIn(' file.001 ', run.output)
+ self.assertIn(' file.222 ', run.output)
+ self.assertIn(' file.999 ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_224_zzdir_test4_zip(self):
+ """ run zzdir on test4.zip using just 'test4' """
+ zipfile = "test4.zip"
+ getfile = "test4"
+ exe = self.bins("zzdir")
+ run = shell("{exe} {getfile} ".format(**locals()))
+ self.assertIn(' file.001 ', run.output)
+ self.assertIn(' file.222 ', run.output)
+ self.assertIn(' file.999 ', run.output)
+ self.assertNotIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_320_zzxordir_test0_dat(self):
+ """ run zzxordir on test0x.dat """
+ zipfile = "test0x.dat"
+ getfile = "test0x.dat"
+ exe = self.bins("zzdir")
+ run = shell("{exe} {getfile} ".format(**locals()), returncodes = [0,1])
+ self.assertEqual(run.returncode, 1)
+ self.assertEqual("", run.output)
+ self.assertIn("did not open test", run.errors)
+ exe = self.bins("zzxordir")
+ run = shell("{exe} {getfile} ".format(**locals()))
+ self.assertIn(' README ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertLess(len(run.output), 30)
+ def test_321_zzxordir_test1_dat(self):
+ """ run zzxordir on test1x.dat using just 'test1x' """
+ zipfile = "test1x.dat"
+ getfile = "test1x.dat"
+ exe = self.bins("zzdir")
+ run = shell("{exe} {getfile} ".format(**locals()), returncodes = [0,1])
+ self.assertEqual(run.returncode, 1)
+ self.assertEqual("", run.output)
+ self.assertIn("did not open test", run.errors)
+ exe = self.bins("zzxordir")
+ run = shell("{exe} {getfile} ".format(**locals()))
+ self.assertIn(' file.1 ', run.output)
+ self.assertIn(' file.2 ', run.output)
+ self.assertIn(' file.9 ', run.output)
+ self.assertIn(' README ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_322_zzxordir_test2_dat(self):
+ """ run zzxordir on test2x.dat using just 'test2x' """
+ zipfile = "test2x.dat"
+ getfile = "test2x"
+ exe = self.bins("zzdir")
+ run = shell("{exe} {getfile} ".format(**locals()), returncodes = [0,1])
+ self.assertEqual(run.returncode, 1)
+ self.assertEqual("", run.output)
+ self.assertIn("did not open test", run.errors)
+ exe = self.bins("zzxordir")
+ run = shell("{exe} {getfile} ".format(**locals()))
+ self.assertIn(' file.01 ', run.output)
+ self.assertIn(' file.22 ', run.output)
+ self.assertIn(' file.99 ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_323_zzxordir_test3_dat(self):
+ """ run zzxordir on test3x.dat using just 'test3x' """
+ zipfile = "test3x.dat"
+ getfile = "test3x"
+ exe = self.bins("zzdir")
+ run = shell("{exe} {getfile} ".format(**locals()), returncodes = [0,1])
+ self.assertEqual(run.returncode, 1)
+ self.assertEqual("", run.output)
+ self.assertIn("did not open test", run.errors)
+ exe = self.bins("zzxordir")
+ run = shell("{exe} {getfile} ".format(**locals()))
+ self.assertIn(' file.001 ', run.output)
+ self.assertIn(' file.222 ', run.output)
+ self.assertIn(' file.999 ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_324_zzxordir_test4_zip(self):
+ """ run zzxordir on test4x.dat using just 'test4x' """
+ zipfile = "test4x.dat"
+ getfile = "test4x"
+ exe = self.bins("zzdir")
+ run = shell("{exe} {getfile} ".format(**locals()), returncodes = [0,1])
+ self.assertEqual(run.returncode, 1)
+ self.assertEqual("", run.output)
+ self.assertIn("did not open test", run.errors)
+ exe = self.bins("zzxordir")
+ run = shell("{exe} {getfile} ".format(**locals()))
+ self.assertIn(' file.001 ', run.output)
+ self.assertIn(' file.222 ', run.output)
+ self.assertIn(' file.999 ', run.output)
+ self.assertNotIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_340_zzxorcat_test0_zip(self):
+ """ run zzxorcat on testx.zip using just testx/README """
+ getfile = "test0x/README"
+ logfile = "test0x.readme.txt"
+ exe = self.bins("zzcat")
+ run = shell("{exe} {getfile} ".format(**locals()), lang="C")
+ self.assertEqual("", run.output)
+ self.assertIn("No such file or directory", run.errors)
+ exe = self.bins("zzxorcat")
+ run = shell("{exe} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ def test_341_zzxorcat_test1_zip(self):
+ """ run zzxorcat on testx.zip using just testx/README """
+ getfile = "test1x/README"
+ logfile = "test1x.readme.txt"
+ exe = self.bins("zzcat")
+ run = shell("{exe} {getfile} ".format(**locals()), lang="C")
+ self.assertEqual("", run.output)
+ self.assertIn("No such file or directory", run.errors)
+ exe = self.bins("zzxorcat")
+ run = shell("{exe} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "test1x/file.1"
+ run = shell("{exe} {getfile}".format(**locals()))
+ self.assertEqual("file-1\n", run.output)
+ def test_342_zzxorcat_test2_zip(self):
+ """ run zzxorcat on testx.zip using just testx/README """
+ getfile = "test2x/README"
+ logfile = "test2x.readme.txt"
+ exe = self.bins("zzcat")
+ run = shell("{exe} {getfile} ".format(**locals()), lang="C")
+ self.assertEqual("", run.output)
+ self.assertIn("No such file or directory", run.errors)
+ exe = self.bins("zzxorcat")
+ run = shell("{exe} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "test2x/file.22"
+ run = shell("{exe} {getfile}".format(**locals()))
+ self.assertEqual("file-22\n", run.output)
+ def test_343_zzxorcat_test3_zip(self):
+ """ run zzxorcat on testx.zip using just testx/README """
+ getfile = "test3x/README"
+ logfile = "test3x.readme.txt"
+ exe = self.bins("zzcat")
+ run = shell("{exe} {getfile} ".format(**locals()), lang="C")
+ self.assertEqual("", run.output)
+ self.assertIn("No such file or directory", run.errors)
+ exe = self.bins("zzxorcat")
+ run = shell("{exe} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "test3x/file.999"
+ run = shell("{exe} {getfile}".format(**locals()))
+ self.assertEqual("file-999\n", run.output)
+ def test_344_zzxorcat_test4_zip(self):
+ """ run zzxorcat on testx.zip using just testx/README """
+ getfile = "test4x/README"
+ logfile = "test4x.readme.txt"
+ exe = self.bins("zzxorcat")
+ run = shell("{exe} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "test4x/file.999"
+ run = shell("{exe} {getfile}".format(**locals()))
+ self.assertEqual("file-999\n", run.output)
+
+ def test_400_zzcat_big_test0_zip(self):
+ """ run zzcat-big on test.zip using just archive README """
+ zipfile = "test0.zip"
+ getfile = "README"
+ logfile = "test0.readme.big.txt"
+ exe = self.bins("unzzip-big")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ def test_401_zzcat_big_test1_zip(self):
+ """ run zzcat-big on test.zip using just archive README """
+ zipfile = "test1.zip"
+ getfile = "README"
+ logfile = "test1.readme.big.txt"
+ exe = self.bins("unzzip-big")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "file.1"
+ run = shell("{exe} -p {zipfile} {getfile}".format(**locals()))
+ self.assertEqual("file-1\n", run.output)
+ def test_402_zzcat_big_test2_zip(self):
+ """ run zzcat-seeke on test.zip using just archive README """
+ zipfile = "test2.zip"
+ getfile = "README"
+ logfile = "test2.readme.big.txt"
+ exe = self.bins("unzzip-big")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "file.22"
+ run = shell("{exe} -p {zipfile} {getfile}".format(**locals()))
+ self.assertEqual("file-22\n", run.output)
+ def test_410_zzcat_mem_test0_zip(self):
+ """ run zzcat-mem on test.zip using just archive README """
+ zipfile = "test0.zip"
+ getfile = "README"
+ logfile = "test0.readme.mem.txt"
+ exe = self.bins("unzzip-mem")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ def test_411_zzcat_mem_test1_zip(self):
+ """ run zzcat-mem on test.zip using archive README """
+ zipfile = "test1.zip"
+ getfile = "README"
+ logfile = "test1.readme.mem.txt"
+ exe = self.bins("unzzip-mem")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "file.1"
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertEqual("file-1\n", run.output)
+ def test_412_zzcat_mem_test2_zip(self):
+ """ run zzcat-mem on test.zip using archive README """
+ zipfile = "test2.zip"
+ getfile = "README"
+ logfile = "test2.readme.mem.txt"
+ exe = self.bins("unzzip-mem")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "file.22"
+ run = shell("{exe} -p {zipfile} {getfile}".format(**locals()))
+ self.assertEqual("file-22\n", run.output)
+ def test_413_zzcat_mem_test3_zip(self):
+ """ run zzcat-mem on test.zip using archive README """
+ zipfile = "test3.zip"
+ getfile = "README"
+ logfile = "test3.readme.mem.txt"
+ exe = self.bins("unzzip-mem")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "file.999"
+ run = shell("{exe} -p {zipfile} {getfile}".format(**locals()))
+ self.assertEqual("file-999\n", run.output)
+ def test_414_zzcat_mem_test4_zip(self):
+ """ run zzcat-mem on test.zip using archive README """
+ zipfile = "test4.zip"
+ getfile = "README"
+ logfile = "test4.readme.mem.txt"
+ exe = self.bins("unzzip-mem")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "file.999"
+ run = shell("{exe} -p {zipfile} {getfile}".format(**locals()))
+ self.assertEqual("file-999\n", run.output)
+ def test_420_zzcat_mix_test0_zip(self):
+ """ run zzcat-mix on test.zip using just archive README """
+ zipfile = "test0.zip"
+ getfile = "README"
+ logfile = "test0.readme.mix.txt"
+ exe = self.bins("unzzip-mix")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ def test_421_zzcat_mix_test1_zip(self):
+ """ run zzcat-mix on test.zip using archive README """
+ zipfile = "test1.zip"
+ getfile = "README"
+ logfile = "test1.readme.mix.txt"
+ exe = self.bins("unzzip-mix")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "file.1"
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertEqual("file-1\n", run.output)
+ def test_422_zzcat_mix_test2_zip(self):
+ """ run zzcat-mix on test.zip using archive README """
+ zipfile = "test2.zip"
+ getfile = "README"
+ logfile = "test2.readme.mix.txt"
+ exe = self.bins("unzzip-mix")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "file.22"
+ run = shell("{exe} -p {zipfile} {getfile}".format(**locals()))
+ self.assertEqual("file-22\n", run.output)
+ def test_423_zzcat_mix_test3_zip(self):
+ """ run zzcat-mix on test.zip using archive README """
+ zipfile = "test3.zip"
+ getfile = "README"
+ logfile = "test3.readme.mix.txt"
+ exe = self.bins("unzzip-mix")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "file.999"
+ run = shell("{exe} -p {zipfile} {getfile}".format(**locals()))
+ self.assertEqual("file-999\n", run.output)
+ def test_424_zzcat_mix_test4_zip(self):
+ """ run zzcat-mix on test.zip using archive README """
+ zipfile = "test4.zip"
+ getfile = "README"
+ logfile = "test4.readme.mix.txt"
+ exe = self.bins("unzzip-mix")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "file.999"
+ run = shell("{exe} -p {zipfile} {getfile}".format(**locals()))
+ self.assertEqual("file-999\n", run.output)
+ def test_440_zzcat_zap_test0_zip(self):
+ """ run zzcat-zap on test.zip using just archive README """
+ zipfile = "test0.zip"
+ getfile = "README"
+ logfile = "test0.readme.txt"
+ exe = self.bins("unzzip")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ def test_441_zzcat_zap_test1_zip(self):
+ """ run zzcat-zap on test.zip using archive README """
+ zipfile = "test1.zip"
+ getfile = "README"
+ logfile = "test1.readme.zap.txt"
+ exe = self.bins("unzzip")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "file.1"
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertEqual("file-1\n", run.output)
+ def test_442_zzcat_zap_test2_zip(self):
+ """ run zzcat-zap on test.zip using archive README """
+ zipfile = "test2.zip"
+ getfile = "README"
+ logfile = "test2.readme.zap.txt"
+ exe = self.bins("unzzip")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "file.22"
+ run = shell("{exe} -p {zipfile} {getfile}".format(**locals()))
+ self.assertEqual("file-22\n", run.output)
+ def test_443_zzcat_zap_test3_zip(self):
+ """ run zzcat-zap on test.zip using archive README """
+ zipfile = "test3.zip"
+ getfile = "README"
+ logfile = "test3.readme.zap.txt"
+ exe = self.bins("unzzip")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "file.999"
+ run = shell("{exe} -p {zipfile} {getfile}".format(**locals()))
+ self.assertEqual("file-999\n", run.output)
+ def test_444_zzcat_zap_test4_zip(self):
+ """ run zzcat-zap on test.zip using archive README """
+ zipfile = "test4.zip"
+ getfile = "README"
+ logfile = "test4.readme.zap.txt"
+ exe = self.bins("unzzip")
+ run = shell("{exe} -p {zipfile} {getfile} | tee {logfile}".format(**locals()))
+ self.assertGreater(os.path.getsize(logfile), 10)
+ self.assertEqual(run.output.split("\n"), self.readme().split("\n"))
+ getfile = "file.999"
+ run = shell("{exe} -p {zipfile} {getfile}".format(**locals()))
+ self.assertEqual("file-999\n", run.output)
+
+ def test_500_zzdir_big_test0_zip(self):
+ """ run zzdir-big on test0.zip """
+ zipfile = "test0.zip"
+ getfile = "test0.zip"
+ exe = self.bins("unzzip-big")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' README ', run.output)
+ self.assertLess(len(run.output), 30)
+ def test_501_zzdir_big_test1_zip(self):
+ """ run zzdir-big on test1.zip """
+ zipfile = "test1.zip"
+ getfile = "test1.zip"
+ exe = self.bins("unzzip-big")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.1 ', run.output)
+ self.assertIn(' file.2 ', run.output)
+ self.assertIn(' file.9 ', run.output)
+ self.assertIn(' README ', run.output)
+ def test_502_zzdir_big_test2_zip(self):
+ """ run zzdir-big on test2.zip """
+ zipfile = "test2.zip"
+ getfile = "test2.zip"
+ exe = self.bins("unzzip-big")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.01 ', run.output)
+ self.assertIn(' file.22 ', run.output)
+ self.assertIn(' file.99 ', run.output)
+ def test_503_zzdir_big_test3_zip(self):
+ """ run zzdir-big on test3.zip """
+ zipfile = "test3.zip"
+ getfile = "test3.zip"
+ exe = self.bins("unzzip-big")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.001 ', run.output)
+ self.assertIn(' file.222 ', run.output)
+ self.assertIn(' file.999 ', run.output)
+ def test_504_zzdir_big_test4_zip(self):
+ """ run zzdir-big on test4.zip """
+ zipfile = "test4.zip"
+ getfile = "test4.zip"
+ exe = self.bins("unzzip-big")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.001 ', run.output)
+ self.assertIn(' file.222 ', run.output)
+ self.assertIn(' file.999 ', run.output)
+ def test_510_zzdir_mem_test0_zip(self):
+ """ run zzdir-mem on test0.zip """
+ zipfile = "test0.zip"
+ getfile = "test0.zip"
+ exe = self.bins("unzzip-mem")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' README ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertLess(len(run.output), 30)
+ def test_511_zzdir_mem_test1_zip(self):
+ """ run zzdir-mem on test1.zip """
+ zipfile = "test1.zip"
+ getfile = "test1.zip"
+ exe = self.bins("unzzip-mem")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.1 ', run.output)
+ self.assertIn(' file.2 ', run.output)
+ self.assertIn(' file.9 ', run.output)
+ self.assertIn(' README ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_512_zzdir_mem_test2_zip(self):
+ """ run zzdir-mem on test2.zip """
+ zipfile = "test2.zip"
+ getfile = "test2.zip"
+ exe = self.bins("unzzip-mem")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.01 ', run.output)
+ self.assertIn(' file.22 ', run.output)
+ self.assertIn(' file.99 ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_513_zzdir_mem_test3_zip(self):
+ """ run zzdir-mem on test3.zip """
+ zipfile = "test3.zip"
+ getfile = "test3.zip"
+ exe = self.bins("unzzip-mem")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.001 ', run.output)
+ self.assertIn(' file.222 ', run.output)
+ self.assertIn(' file.999 ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_514_zzdir_mem_test4_zip(self):
+ """ run zzdir-mem on test4.zip """
+ zipfile = "test4.zip"
+ getfile = "test4.zip"
+ exe = self.bins("unzzip-mem")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.001 ', run.output)
+ self.assertIn(' file.222 ', run.output)
+ self.assertIn(' file.999 ', run.output)
+ self.assertNotIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_520_zzdir_mix_test0_zip(self):
+ """ run zzdir-mix on test0.zip """
+ # self.skipTest("todo")
+ zipfile = "test0.zip"
+ getfile = "test0.zip"
+ exe = self.bins("unzzip-mix")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' README ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertLess(len(run.output), 30)
+ def test_521_zzdir_mix_test1_zip(self):
+ """ run zzdir-mix on test1.zip """
+ zipfile = "test1.zip"
+ getfile = "test1.zip"
+ exe = self.bins("unzzip-mix")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.1 ', run.output)
+ self.assertIn(' file.2 ', run.output)
+ self.assertIn(' file.9 ', run.output)
+ self.assertIn(' README ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_522_zzdir_mix_test2_zip(self):
+ """ run zzdir-mix on test2.zip """
+ zipfile = "test2.zip"
+ getfile = "test2.zip"
+ exe = self.bins("unzzip-mix")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.01 ', run.output)
+ self.assertIn(' file.22 ', run.output)
+ self.assertIn(' file.99 ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_523_zzdir_mix_test3_zip(self):
+ """ run zzdir-mix on test3.zip """
+ zipfile = "test3.zip"
+ getfile = "test3.zip"
+ exe = self.bins("unzzip-mix")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.001 ', run.output)
+ self.assertIn(' file.222 ', run.output)
+ self.assertIn(' file.999 ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_524_zzdir_mix_test4_zip(self):
+ """ run zzdir-mix on test4.zip """
+ zipfile = "test4.zip"
+ getfile = "test4.zip"
+ exe = self.bins("unzzip-mix")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.001 ', run.output)
+ self.assertIn(' file.222 ', run.output)
+ self.assertIn(' file.999 ', run.output)
+ self.assertNotIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_540_zzdir_zap_test0_zip(self):
+ """ run zzdir-zap on test0.zip """
+ zipfile = "test0.zip"
+ getfile = "test0.zip"
+ exe = self.bins("unzzip")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' README ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertLess(len(run.output), 30)
+ def test_541_zzdir_zap_test1_zip(self):
+ """ run zzdir-zap on test1.zip """
+ zipfile = "test1.zip"
+ getfile = "test1.zip"
+ exe = self.bins("unzzip")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.1 ', run.output)
+ self.assertIn(' file.2 ', run.output)
+ self.assertIn(' file.9 ', run.output)
+ self.assertIn(' README ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_542_zzdir_zap_test2_zip(self):
+ """ run zzdir-zap on test2.zip """
+ zipfile = "test2.zip"
+ getfile = "test2.zip"
+ exe = self.bins("unzzip")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.01 ', run.output)
+ self.assertIn(' file.22 ', run.output)
+ self.assertIn(' file.99 ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_543_zzdir_zap_test3_zip(self):
+ """ run zzdir-zap on test3.zip """
+ zipfile = "test3.zip"
+ getfile = "test3.zip"
+ exe = self.bins("unzzip")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.001 ', run.output)
+ self.assertIn(' file.222 ', run.output)
+ self.assertIn(' file.999 ', run.output)
+ self.assertIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+ def test_544_zzdir_zap_test4_zip(self):
+ """ run zzdir-zap on test4.zip """
+ zipfile = "test4.zip"
+ getfile = "test4.zip"
+ exe = self.bins("unzzip")
+ run = shell("{exe} -l {getfile} ".format(**locals()))
+ self.assertIn(' file.001 ', run.output)
+ self.assertIn(' file.222 ', run.output)
+ self.assertIn(' file.999 ', run.output)
+ self.assertNotIn(' deflated ', run.output)
+ self.assertIn(' stored ', run.output)
+
+ def test_900_make_test1w_zip(self):
+ """ create a test1w.zip using zzip/write functions. """
+ exe=self.bins("zzip")
+ run = shell("{exe} --version".format(**locals()))
+ if "- NO -" in run.output:
+ self.skipTest("- NO -D_ZZIP_ENABLE_WRITE")
+ return
+ zipfile="test1w.zip"
+ tmpdir="test1w.tmp"
+ exe=self.bins("zzip")
+ for i in [1,2,3,4,5,6,7,8,9]:
+ filename = os.path.join(tmpdir,"file.%i" % i)
+ filetext = "file-%i\n" % i
+ self.mkfile(filename, filetext)
+ filename = os.path.join(tmpdir,"README")
+ filetext = self.readme()
+ self.mkfile(filename, filetext)
+ try: os.remove(zipfile)
+ except: pass
+ shell("../{exe} ../{zipfile} ??*.* README".format(**locals()), cwd=tmpdir)
+ self.assertGreater(os.path.getsize(zipfile), 10)
+
+
+
+
+if __name__ == "__main__":
+ import optparse
+ _o = optparse.OptionParser("%prog [options] test_xxx")
+ _o.add_option("-b", "--topsrcdir", metavar="DIR", default=topsrcdir,
+ help="path to the top srcdir / unpack directory [%default]")
+ _o.add_option("-t", "--testdatadir", metavar="DIR", default=testdatadir,
+ help="path where temporary testdata is created [%default]")
+ _o.add_option("-Z", "--mkzip", metavar="EXE", default=mkzip,
+ help="name or path to zip.exe for *.zip creation [%default]")
+ _o.add_option("-U", "--unzip", metavar="EXE", default=unzip,
+ help="name or path to unzip.exe to unpack *.zip [%default]")
+ _o.add_option("-E", "--exeext", metavar="EXT", default=exeext,
+ help="the executable extension (automake $(EXEEXT)) [%default]")
+ _o.add_option("--xmlresults", action="store_true", default=False,
+ help="print output in junit xml testresult format [%default]")
+ _o.add_option("-v", "--verbose", action="count", default=0,
+ help="increase logging output [%default]")
+ opt, args = _o.parse_args()
+ logging.basicConfig(level = logging.WARNING - 10 * opt.verbose)
+ topsrcdir = opt.topsrcdir
+ testdatdir = opt.testdatadir
+ mkzip = opt.mkzip
+ unzip = opt.unzip
+ exeext = opt.exeext
+ if not args: args += [ "test_" ]
+ suite = unittest.TestSuite()
+ for arg in args:
+ for classname in sorted(list(globals())):
+ if not classname.endswith("Test"):
+ continue
+ testclass = globals()[classname]
+ for method in sorted(dir(testclass)):
+ if "*" not in arg: arg += "*"
+ if arg.startswith("_"): arg = arg[1:]
+ if matches(method, arg):
+ suite.addTest(testclass(method))
+ # TextTestRunner(verbosity=opt.verbose).run(suite)
+ if opt.xmlresults:
+ import xmlrunner
+ Runner = xmlrunner.XMLTestRunner
+ Runner(xmlresults).run(suite)
+ else:
+ Runner = unittest.TextTestRunner
+ Runner(verbosity=opt.verbose).run(suite)
+
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/Makefile.in b/Build/source/libs/zziplib/zziplib-src/zzip/Makefile.in
index 2d45a2b3684..03ee59755cf 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/Makefile.in
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/Makefile.in
@@ -1,9 +1,8 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -17,6 +16,51 @@
VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -37,8 +81,9 @@ build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
subdir = zzip
-DIST_COMMON = $(noinst_HEADERS) $(pkgconfig_HEADERS) \
- $(srcdir)/Makefile.am $(srcdir)/Makefile.in $(zzip_HEADERS)
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/uses/mkinstalldirs $(top_srcdir)/uses/depcomp \
+ $(noinst_HEADERS) $(pkgconfig_HEADERS) $(zzip_HEADERS)
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/ac_compile_check_sizeof.m4 \
$(top_srcdir)/m4/ac_set_default_paths_system.m4 \
@@ -51,7 +96,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ac_compile_check_sizeof.m4 \
$(top_srcdir)/m4/ax_check_aligned_access_required.m4 \
$(top_srcdir)/m4/ax_configure_args.m4 \
$(top_srcdir)/m4/ax_create_pkgconfig_info.m4 \
- $(top_srcdir)/m4/ax_enable_builddir_uname.m4 \
+ $(top_srcdir)/m4/ax_enable_builddir.m4 \
$(top_srcdir)/m4/ax_expand_prefix.m4 \
$(top_srcdir)/m4/ax_maintainer_mode_auto_silent.m4 \
$(top_srcdir)/m4/ax_not_enable_frame_pointer.m4 \
@@ -95,6 +140,12 @@ am__nobase_list = $(am__nobase_strip_setup); \
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+ test -z "$$files" \
+ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+ $(am__cd) "$$dir" && rm -f $$files; }; \
+ }
am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkgconfigdir)" \
"$(DESTDIR)$(zzipdir)"
LTLIBRARIES = $(lib_LTLIBRARIES)
@@ -102,43 +153,93 @@ libzzip_la_DEPENDENCIES =
am_libzzip_la_OBJECTS = zip.lo file.lo dir.lo stat.lo info.lo err.lo \
plugin.lo write.lo fetch.lo
libzzip_la_OBJECTS = $(am_libzzip_la_OBJECTS)
-libzzip_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
+libzzip_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(libzzip_la_LDFLAGS) $(LDFLAGS) -o $@
libzzipfseeko_la_DEPENDENCIES =
am_libzzipfseeko_la_OBJECTS = fseeko.lo fetch.lo
libzzipfseeko_la_OBJECTS = $(am_libzzipfseeko_la_OBJECTS)
-libzzipfseeko_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
- $(libzzipfseeko_la_LDFLAGS) $(LDFLAGS) -o $@
+libzzipfseeko_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+ $(AM_CFLAGS) $(CFLAGS) $(libzzipfseeko_la_LDFLAGS) $(LDFLAGS) \
+ -o $@
libzzipmmapped_la_DEPENDENCIES =
am_libzzipmmapped_la_OBJECTS = mmapped.lo memdisk.lo fetch.lo
libzzipmmapped_la_OBJECTS = $(am_libzzipmmapped_la_OBJECTS)
-libzzipmmapped_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
- $(libzzipmmapped_la_LDFLAGS) $(LDFLAGS) -o $@
+libzzipmmapped_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+ $(AM_CFLAGS) $(CFLAGS) $(libzzipmmapped_la_LDFLAGS) $(LDFLAGS) \
+ -o $@
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+am__v_GEN_1 =
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 =
depcomp = $(SHELL) $(top_srcdir)/uses/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo " CC " $@;
+am__v_CC_1 =
CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo " CCLD " $@;
+am__v_CCLD_1 =
SOURCES = $(libzzip_la_SOURCES) $(libzzipfseeko_la_SOURCES) \
$(libzzipmmapped_la_SOURCES)
DIST_SOURCES = $(libzzip_la_SOURCES) $(libzzipfseeko_la_SOURCES) \
$(libzzipmmapped_la_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
HEADERS = $(noinst_HEADERS) $(pkgconfig_HEADERS) $(zzip_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AS = @AS@
AUTOCONF = @AUTOCONF@
@@ -424,9 +525,9 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
+
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
@$(NORMAL_INSTALL)
- test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
@list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
list2=; for p in $$list; do \
if test -f $$p; then \
@@ -434,6 +535,8 @@ install-libLTLIBRARIES: $(lib_LTLIBRARIES)
else :; fi; \
done; \
test -z "$$list2" || { \
+ echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
}
@@ -449,18 +552,23 @@ uninstall-libLTLIBRARIES:
clean-libLTLIBRARIES:
-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
- @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
- dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
- test "$$dir" != "$$p" || dir=.; \
- echo "rm -f \"$${dir}/so_locations\""; \
- rm -f "$${dir}/so_locations"; \
- done
-libzzip.la: $(libzzip_la_OBJECTS) $(libzzip_la_DEPENDENCIES)
- $(libzzip_la_LINK) -rpath $(libdir) $(libzzip_la_OBJECTS) $(libzzip_la_LIBADD) $(LIBS)
-libzzipfseeko.la: $(libzzipfseeko_la_OBJECTS) $(libzzipfseeko_la_DEPENDENCIES)
- $(libzzipfseeko_la_LINK) -rpath $(libdir) $(libzzipfseeko_la_OBJECTS) $(libzzipfseeko_la_LIBADD) $(LIBS)
-libzzipmmapped.la: $(libzzipmmapped_la_OBJECTS) $(libzzipmmapped_la_DEPENDENCIES)
- $(libzzipmmapped_la_LINK) -rpath $(libdir) $(libzzipmmapped_la_OBJECTS) $(libzzipmmapped_la_LIBADD) $(LIBS)
+ @list='$(lib_LTLIBRARIES)'; \
+ locs=`for p in $$list; do echo $$p; done | \
+ sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
+ sort -u`; \
+ test -z "$$locs" || { \
+ echo rm -f $${locs}; \
+ rm -f $${locs}; \
+ }
+
+libzzip.la: $(libzzip_la_OBJECTS) $(libzzip_la_DEPENDENCIES) $(EXTRA_libzzip_la_DEPENDENCIES)
+ $(AM_V_CCLD)$(libzzip_la_LINK) -rpath $(libdir) $(libzzip_la_OBJECTS) $(libzzip_la_LIBADD) $(LIBS)
+
+libzzipfseeko.la: $(libzzipfseeko_la_OBJECTS) $(libzzipfseeko_la_DEPENDENCIES) $(EXTRA_libzzipfseeko_la_DEPENDENCIES)
+ $(AM_V_CCLD)$(libzzipfseeko_la_LINK) -rpath $(libdir) $(libzzipfseeko_la_OBJECTS) $(libzzipfseeko_la_LIBADD) $(LIBS)
+
+libzzipmmapped.la: $(libzzipmmapped_la_OBJECTS) $(libzzipmmapped_la_DEPENDENCIES) $(EXTRA_libzzipmmapped_la_DEPENDENCIES)
+ $(AM_V_CCLD)$(libzzipmmapped_la_LINK) -rpath $(libdir) $(libzzipmmapped_la_OBJECTS) $(libzzipmmapped_la_LIBADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
@@ -482,25 +590,25 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zip.Plo@am__quote@
.c.o:
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
.c.obj:
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
.c.lo:
-@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
mostlyclean-libtool:
-rm -f *.lo
@@ -509,8 +617,11 @@ clean-libtool:
-rm -rf .libs _libs
install-pkgconfigHEADERS: $(pkgconfig_HEADERS)
@$(NORMAL_INSTALL)
- test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)"
@list='$(pkgconfig_HEADERS)'; test -n "$(pkgconfigdir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(pkgconfigdir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" || exit 1; \
+ fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
@@ -524,13 +635,14 @@ uninstall-pkgconfigHEADERS:
@$(NORMAL_UNINSTALL)
@list='$(pkgconfig_HEADERS)'; test -n "$(pkgconfigdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- test -n "$$files" || exit 0; \
- echo " ( cd '$(DESTDIR)$(pkgconfigdir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(pkgconfigdir)" && rm -f $$files
+ dir='$(DESTDIR)$(pkgconfigdir)'; $(am__uninstall_files_from_dir)
install-zzipHEADERS: $(zzip_HEADERS)
@$(NORMAL_INSTALL)
- test -z "$(zzipdir)" || $(MKDIR_P) "$(DESTDIR)$(zzipdir)"
@list='$(zzip_HEADERS)'; test -n "$(zzipdir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(zzipdir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(zzipdir)" || exit 1; \
+ fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
@@ -544,30 +656,17 @@ uninstall-zzipHEADERS:
@$(NORMAL_UNINSTALL)
@list='$(zzip_HEADERS)'; test -n "$(zzipdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- test -n "$$files" || exit 0; \
- echo " ( cd '$(DESTDIR)$(zzipdir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(zzipdir)" && rm -f $$files
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ dir='$(DESTDIR)$(zzipdir)'; $(am__uninstall_files_from_dir)
+
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -579,15 +678,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -596,6 +691,21 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -647,10 +757,15 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
mostlyclean-generic:
clean-generic:
@@ -740,20 +855,20 @@ uninstall-am: uninstall-libLTLIBRARIES uninstall-local \
.MAKE: install-am install-data-am install-exec-am install-strip
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libLTLIBRARIES clean-libtool ctags distclean \
- distclean-compile distclean-generic distclean-libtool \
- distclean-tags distdir dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am \
- install-data-hook install-dvi install-dvi-am install-exec \
- install-exec-am install-exec-hook install-html install-html-am \
- install-info install-info-am install-libLTLIBRARIES \
- install-man install-pdf install-pdf-am \
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+ clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \
+ ctags-am distclean distclean-compile distclean-generic \
+ distclean-libtool distclean-tags distdir dvi dvi-am html \
+ html-am info info-am install install-am install-data \
+ install-data-am install-data-hook install-dvi install-dvi-am \
+ install-exec install-exec-am install-exec-hook install-html \
+ install-html-am install-info install-info-am \
+ install-libLTLIBRARIES install-man install-pdf install-pdf-am \
install-pkgconfigHEADERS install-ps install-ps-am \
install-strip install-zzipHEADERS installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
uninstall-am uninstall-libLTLIBRARIES uninstall-local \
uninstall-pkgconfigHEADERS uninstall-zzipHEADERS
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/__dirent.h b/Build/source/libs/zziplib/zziplib-src/zzip/__dirent.h
index fc3e08f03d1..bda47557c49 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/__dirent.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/__dirent.h
@@ -9,12 +9,7 @@
* functions (or just static members) and a few defines, simply to be
* able to reuse these across - and have everything in a specific place.
*
- * Copyright (c) 2002,2003 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#ifdef ZZIP_HAVE_DIRENT_H
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/__mmap.h b/Build/source/libs/zziplib/zziplib-src/zzip/__mmap.h
index 5dfc45dcda2..7786b4897cf 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/__mmap.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/__mmap.h
@@ -9,12 +9,7 @@
* functions (or just static members) and a few defines, simply to be
* able to reuse these across - and have everything in a specific place.
*
- * Copyright (c) 2002,2003 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#ifdef _USE_MMAP
@@ -92,6 +87,7 @@ static void win32_munmap (long* user, char* fd_map, size_t len)
UnmapViewOfFile (fd_map);
CloseHandle (*(HANDLE*)user); *user = 1;
}
+
#ifdef _WIN64
#define _zzip_mmap(user, fd, offs, len) \
win32_mmap ((__int64*) &(user), fd, offs, len)
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/conf.h b/Build/source/libs/zziplib/zziplib-src/zzip/conf.h
index 52b33e287ce..34fc6a85f4b 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/conf.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/conf.h
@@ -10,12 +10,7 @@
* Author:
* Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 2001,2002,2003,2004 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright: (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#ifndef _ZZIP_CONF_H
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/dir.c b/Build/source/libs/zziplib/zziplib-src/zzip/dir.c
index 2df1bbc0fda..845bd5c7dea 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/dir.c
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/dir.c
@@ -1,14 +1,9 @@
/*
* Author:
- * Guido Draheim <guidod@gmx.de>
+ * Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 1999,2000,2001,2002,2003 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#include <zzip/lib.h> /* exported... */
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/err.c b/Build/source/libs/zziplib/zziplib-src/zzip/err.c
index 1ba869bd9af..653395b6973 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/err.c
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/err.c
@@ -4,12 +4,7 @@
* Guido Draheim <guidod@gmx.de>
* Tomi Ollila <Tomi.Ollila@iki.fi>
*
- * Copyright (c) 1999,2000,2001,2002,2003 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#include <zzip/lib.h> /* exported... */
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/fetch.c b/Build/source/libs/zziplib/zziplib-src/zzip/fetch.c
index bd1958483ff..91a5e5921d9 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/fetch.c
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/fetch.c
@@ -7,12 +7,7 @@
* Author:
* Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 2004,2005,2006 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#include <zzip/fetch.h>
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/fetch.h b/Build/source/libs/zziplib/zziplib-src/zzip/fetch.h
index ca51a8026d9..9186ccb95fa 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/fetch.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/fetch.h
@@ -45,6 +45,7 @@ extern void __zzip_set64(zzip_byte_t * s, uint64_t v);
# ifndef ZZIP_HAVE_ALIGNED_ACCESS_REQUIRED
# if defined __i386__ || defined __x86_64__ || defined _M_X86 || defined _M_X64
# define _ZZIP_USE_DEREF
+# endif
# endif
#endif
@@ -70,7 +71,6 @@ extern void __zzip_set64(zzip_byte_t * s, uint64_t v);
#define ZZIP_SET32(__p,__x) (__zzip_set32((__p),(__x)))
#define ZZIP_SET16(__p,__x) (__zzip_set16((__p),(__x)))
#endif
-#endif
/* ..................... bitcorrect physical access .................... */
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/file.c b/Build/source/libs/zziplib/zziplib-src/zzip/file.c
index 5cda62e72ce..f7c5fa89725 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/file.c
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/file.c
@@ -4,12 +4,7 @@
* Guido Draheim <guidod@gmx.de>
* Tomi Ollila <Tomi.Ollila@iki.fi>
*
- * Copyright (c) 1999,2000,2001,2002,2003 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#include <zzip/lib.h> /* exported... */
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/file.h b/Build/source/libs/zziplib/zziplib-src/zzip/file.h
index fcff276bb23..e9f978b0844 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/file.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/file.h
@@ -12,12 +12,7 @@
* Guido Draheim <guidod@gmx.de>
* Tomi Ollila <Tomi.Ollila@tfi.net>
*
- * Copyright (c) 1999,2000,2001,2002 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#ifndef _ZZIP_FILE_H /* zzip-file.h */
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/format.h b/Build/source/libs/zziplib/zziplib-src/zzip/format.h
index 0881479c167..e30c576b66b 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/format.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/format.h
@@ -1,13 +1,8 @@
/*
* Author:
- * Guido Draheim <guidod@gmx.de>
+ * Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 2000,2001,2002,2003 Guido Draheim
- * All rights reserved
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*
* The information was taken from appnote-981119-iz.zip
* at http://www.freesoftware.com/pub/infozip/doc/
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/fseeko.c b/Build/source/libs/zziplib/zziplib-src/zzip/fseeko.c
index d99067a0b4f..ba19b436fb0 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/fseeko.c
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/fseeko.c
@@ -24,12 +24,7 @@
* Author:
* Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 2003,2004 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#define _LARGEFILE_SOURCE 1
@@ -41,7 +36,6 @@
#include <zzip/__mmap.h>
#include <zzip/__fnmatch.h>
-#include <assert.h>
#include <stdlib.h>
#include <sys/stat.h>
@@ -83,6 +77,18 @@
* the sys/mmap interface we have to guess a good value here: */
#define PAGESIZE 8192
+#ifdef DEBUG
+#define debug1(msg) do { fprintf(stderr, "%s : " msg "\n", __func__); } while(0)
+#define debug2(msg, arg1) do { fprintf(stderr, "%s : " msg "\n", __func__, arg1); } while(0)
+#define debug3(msg, arg1, arg2) do { fprintf(stderr, "%s : " msg "\n", __func__, arg1, arg2); } while(0)
+#define debug4(msg, arg1, arg2, arg3) do { fprintf(stderr, "%s : " msg "\n", __func__, arg1, arg2, arg3); } while(0)
+#else
+#define debug1(msg)
+#define debug2(msg, arg1)
+#define debug3(msg, arg1, arg2)
+#define debug4(msg, arg1, arg2, arg3)
+#endif
+
/* ====================================================================== */
/* helper functions */
@@ -92,21 +98,42 @@
* the zip disk of the given "entry". The returned off_t points to the
* end of the file_header where the current fseek pointer has stopped.
* This is used to immediatly parse out any filename/extras block following
- * the file_header. The return value is null on error.
+ * the file_header.
+ *
+ * Returns zero on error. (errno = EINVAL|EBADMSG|EBADF|EIO)
*/
static zzip_off_t
zzip_entry_fread_file_header(ZZIP_ENTRY * entry,
struct zzip_file_header *file_header)
{
if (! entry || ! file_header)
+ {
+ errno = EINVAL;
return 0;
+ }
___ zzip_off_t offset = zzip_disk_entry_fileoffset(disk_(entry));
if (0 > offset || offset >= entry->disksize)
+ {
+ errno = EBADMSG;
return 0;
+ }
- if (fseeko(entry->diskfile, offset, SEEK_SET) == -1) return 0;
- return (fread(file_header, sizeof(*file_header), 1, entry->diskfile)
- ? offset + sizeof(*file_header) : 0);
+ if (fseeko(entry->diskfile, offset, SEEK_SET) == -1)
+ {
+ debug2("fseeko failed: %s", strerror(errno));
+ return 0; /* EBADF */
+ }
+
+ ___ zzip_size_t n = fread(file_header, 1, sizeof(*file_header), entry->diskfile);
+ if (n < sizeof(*file_header))
+ {
+ debug4("fread failed: at offset %llu got %i instead of %i",
+ (long long) offset, n, sizeof(*file_header));
+ errno = ferror(entry->diskfile) ? EBADF : EIO;
+ return 0;
+ }
+ ____;
+ return offset + sizeof(*file_header);
____;
}
@@ -116,20 +143,29 @@ zzip_entry_fread_file_header(ZZIP_ENTRY * entry,
* file referenced by the given zzip_entry. It requires an intermediate
* check of the file_header structure (i.e. it reads it from disk). After
* this call, the contained diskfile readposition is already set to the
- * data_offset returned here. On error -1 is returned.
+ * data_offset returned here.
+ *
+ * Returns -1 on error. (errno = EINVAL|EBADMSG)
*/
zzip_off_t
zzip_entry_data_offset(ZZIP_ENTRY * entry)
{
struct zzip_file_header file_header;
if (! entry)
+ {
+ errno = EINVAL;
return -1;
+ }
___ zzip_off_t offset = zzip_entry_fread_file_header(entry, &file_header);
if (! offset)
- return -1;
+ {
+ return -1; /* EBADMSG */
+ }
offset += zzip_file_header_sizeof_tails(&file_header);
if (fseeko(entry->diskfile, offset, SEEK_SET) == -1)
- return -1;
+ {
+ return -1; /* EBADF */
+ }
return offset;
____;
}
@@ -140,19 +176,26 @@ zzip_entry_data_offset(ZZIP_ENTRY * entry)
* with libc we need it that way. Secondly, the filename SHOULD be present
* in the zip central directory but if not then we fallback to the filename
* given in the file_header of each compressed data portion.
+ *
+ * returns: new string buffer, null on error (errno = EINVAL|ENOMEM|EBADMSG)
*/
zzip__new__ char *
zzip_entry_strdup_name(ZZIP_ENTRY * entry)
{
if (! entry)
+ {
+ errno = EINVAL;
return 0;
+ }
___ zzip_size_t len;
if ((len = zzip_disk_entry_namlen(disk_(entry))))
{
char *name = malloc(len + 1);
if (! name)
- return 0;
+ {
+ return 0; /* ENOMEM */
+ }
memcpy(name, entry->tail, len);
name[len] = '\0';
return name;
@@ -163,17 +206,20 @@ zzip_entry_strdup_name(ZZIP_ENTRY * entry)
{
char *name = malloc(len + 1);
if (! name) {
+ return 0; /* ENOMEM */
+ }
+ ___ zzip_size_t n = fread(name, 1, len, entry->diskfile);
+ if (n < len)
+ {
+ errno = ferror(entry->diskfile) ? EBADF : EIO;
+ free (name);
return 0;
- } else {
- zzip_size_t n = fread(name, 1, len, entry->diskfile);
- if (n != len) {
- free (name);
- return 0;
- }
- name[n] = '\0';
- return name;
}
+ name[n] = '\0';
+ return name;
+ ____;
}
+ errno = EBADMSG;
return 0;
____;
____;
@@ -182,7 +228,8 @@ zzip_entry_strdup_name(ZZIP_ENTRY * entry)
static int
prescan_entry(ZZIP_ENTRY * entry)
{
- assert(entry);
+ if (! entry)
+ return EINVAL;
___ zzip_off_t tailsize = zzip_disk_entry_sizeof_tails(disk_(entry));
if (tailsize + 1 > entry->tailalloc)
{
@@ -193,11 +240,16 @@ prescan_entry(ZZIP_ENTRY * entry)
entry->tailalloc = tailsize + 1;
}
# ifdef SIZE_MAX /* from stdint.h */
- if (tailsize > (zzip_off_t)(SIZE_MAX)) { return EFBIG; }
+ if ((unsigned long long)(tailsize) > (unsigned long long)(SIZE_MAX))
+ {
+ debug3("tailsize %llu bigger than sizemax %llu", (long long)(tailsize), (long long)(SIZE_MAX));
+ return EFBIG;
+ }
# endif
___ zzip_size_t readsize = fread(entry->tail, 1, tailsize, entry->diskfile);
/* name + comment + extras */
if ((zzip_off_t)readsize != tailsize) {
+ debug1("read to data");
return errno;
} else {
return 0;
@@ -207,7 +259,8 @@ prescan_entry(ZZIP_ENTRY * entry)
static void
prescan_clear(ZZIP_ENTRY * entry)
{
- assert(entry);
+ if (! entry)
+ return;
if (entry->tail)
free(entry->tail);
entry->tail = 0;
@@ -242,27 +295,42 @@ prescan_clear(ZZIP_ENTRY * entry)
* both parts have valid PK-magic parts. Beyond some sanity check we try to
* catch a common brokeness with zip archives that still allows us to find
* the start of the zip central directory.
+ *
+ * Returns null on error (errno = EINVAL|ENOMEM|EBADMSG|EBADF|ENOENT)
*/
zzip__new__ ZZIP_ENTRY *
zzip_entry_findfirst(FILE * disk)
{
if (! disk)
+ {
+ errno = EINVAL;
return 0;
+ }
if (fseeko(disk, 0, SEEK_END) == -1)
- return 0;
+ {
+ printf("fseeko failed: %s", strerror(errno));
+ return 0; /* EBADF */
+ }
___ zzip_off_t disksize = ftello(disk);
if (disksize < (zzip_off_t) sizeof(struct zzip_disk_trailer))
+ {
+ errno = EBADMSG;
return 0;
+ }
/* we read out chunks of 8 KiB in the hope to match disk granularity */
___ zzip_off_t pagesize = PAGESIZE; /* getpagesize() */
___ ZZIP_ENTRY *entry = malloc(sizeof(*entry));
if (! entry)
- return 0;
+ goto error0; /* ENOMEM */
___ unsigned char *buffer = malloc(pagesize);
if (! buffer)
- goto nomem;
+ goto error1; /* ENOMEM */
- assert(pagesize / 2 > (zzip_off_t) sizeof(struct zzip_disk_trailer));
+ if (pagesize / 2 <= (zzip_off_t) sizeof(struct zzip_disk_trailer))
+ {
+ errno = EBADMSG;
+ goto error2;
+ }
/* at each step, we will fread a pagesize block which overlaps with the
* previous read by means of pagesize/2 step at the end of the while(1) */
___ zzip_off_t mapoffs = disksize & ~(pagesize - 1);
@@ -272,13 +340,21 @@ zzip_entry_findfirst(FILE * disk)
mapoffs -= pagesize / 2;
mapsize += pagesize / 2;
}
- assert(mapsize < 3*8192);
+ if (mapsize >= 3*8192)
+ {
+ errno = EBADMSG;
+ goto error2;
+ }
while (1)
{
if (fseeko(disk, mapoffs, SEEK_SET) == -1)
- goto error;
- if (fread(buffer, 1, mapsize, disk) != (zzip_size_t)mapsize)
- goto error;
+ goto error2; /* EBADF */
+ if (fread(buffer, 1, mapsize, disk) < (zzip_size_t)mapsize)
+ {
+ errno = ferror(disk) ? EBADF : EIO;
+ debug1("in fread");
+ goto error2;
+ }
___ unsigned char *p =
buffer + mapsize - sizeof(struct zzip_disk_trailer);
for (; p >= buffer; p--)
@@ -305,39 +381,74 @@ zzip_entry_findfirst(FILE * disk)
struct zzip_disk64_trailer *trailer =
(struct zzip_disk64_trailer *) p;
if (sizeof(zzip_off_t) < 8)
- return 0;
+ {
+ debug1("disk64 trailer on non-large compile");
+ errno = EFBIG;
+ goto error2;
+ }
+ if ((void*)(trailer + 1) > (buffer + mapsize))
+ {
+ debug1("disk64 trailer is not complete");
+ errno = EBADMSG;
+ goto error2;
+ }
root = zzip_disk64_trailer_rootseek(trailer);
} else
continue;
- assert(0 <= root && root < mapsize);
+ if (!(0 <= root && root < disksize))
+ {
+ debug3("bogus rootseek value %lli (disksize %lli)", (long long)root, (long long)disksize);
+ errno = EBADMSG;
+ goto error2;
+ }
if (fseeko(disk, root, SEEK_SET) == -1)
- goto error;
+ {
+ debug2("next seeko %s", strerror(errno));
+ goto error2; /* EBADF */
+ }
if (fread(disk_(entry), 1, sizeof(*disk_(entry)), disk)
- != sizeof(*disk_(entry))) goto error;
+ != sizeof(*disk_(entry)))
+ {
+ debug2("next freed %s", strerror(errno));
+ errno = ferror(disk) ? EBADF : EIO;
+ goto error2;
+ }
if (zzip_disk_entry_check_magic(entry))
{
free(buffer);
entry->headseek = root;
entry->diskfile = disk;
entry->disksize = disksize;
- if (prescan_entry(entry))
- goto nomem;
+ ___ int err = prescan_entry(entry);
+ if (err)
+ {
+ debug2("prescan %s", strerror(err));
+ errno = err;
+ goto error2;
+ }
return entry;
+ ____;
}
}
____;
if (! mapoffs)
break;
- assert(mapsize >= pagesize / 2);
+ if (mapsize < pagesize / 2)
+ {
+ debug1("bad mapsize should not be possible");
+ errno = EBADMSG;
+ goto error2;
+ }
mapoffs -= pagesize / 2; /* mapsize += pagesize/2; */
mapsize = pagesize; /* if (mapsize > pagesize) ... */
if (disksize - mapoffs > 64 * 1024)
break;
}
- error:
+ errno = ENOENT; /* not found */
+ error2:
free(buffer);
- nomem:
+ error1:
free(entry);
____;
____;
@@ -345,6 +456,8 @@ zzip_entry_findfirst(FILE * disk)
____;
____;
____;
+ error0:
+ debug1("error..");
return 0;
}
@@ -361,25 +474,39 @@ zzip__new__ ZZIP_ENTRY *
zzip_entry_findnext(ZZIP_ENTRY * _zzip_restrict entry)
{
if (! entry)
+ {
+ errno = EINVAL;
return entry;
+ }
if (! zzip_disk_entry_check_magic(entry))
- goto err;
+ goto error_EBADMSG;
___ zzip_off_t seek =
entry->headseek + zzip_disk_entry_sizeto_end(disk_(entry));
if (seek + (zzip_off_t) sizeof(*disk_(entry)) > entry->disksize)
- goto err;
+ goto error_EBADMSG;
if (fseeko(entry->diskfile, seek, SEEK_SET) == -1)
- goto err;
+ goto error; /* EBADF */
if (fread(disk_(entry), 1, sizeof(*disk_(entry)), entry->diskfile)
- != sizeof(*disk_(entry))) goto err;
+ < sizeof(*disk_(entry)))
+ {
+ errno = ferror(entry->diskfile) ? EBADF : EIO;
+ goto error;
+ }
entry->headseek = seek;
if (! zzip_disk_entry_check_magic(entry))
- goto err;
- if (prescan_entry(entry))
- goto err;
+ goto error_EBADMSG;
+ ___ int err = prescan_entry(entry);
+ if (err)
+ {
+ errno = err;
+ goto error;
+ }
return entry;
- err:
+ ____;
+ error_EBADMSG:
+ errno = EBADMSG;
+ error:
zzip_entry_free(entry);
return 0;
____;
@@ -394,7 +521,10 @@ int
zzip_entry_free(ZZIP_ENTRY * entry)
{
if (! entry)
+ {
+ errno = EINVAL;
return 0;
+ }
prescan_clear(entry);
free(entry);
return 1;
@@ -416,7 +546,10 @@ zzip_entry_findfile(FILE * disk, char *filename,
ZZIP_ENTRY * _zzip_restrict entry, zzip_strcmp_fn_t compare)
{
if (! filename || ! disk)
+ {
+ errno = EINVAL;
return 0;
+ }
if (! entry)
entry = zzip_entry_findfirst(disk);
else
@@ -430,7 +563,9 @@ zzip_entry_findfile(FILE * disk, char *filename,
/* filenames within zip files are often not null-terminated! */
char *realname = zzip_entry_strdup_name(entry);
if (! realname)
- continue;
+ {
+ return 0; /* ENOMEM|EBADMSG */
+ }
if (! compare(filename, realname))
{
free(realname);
@@ -441,6 +576,7 @@ zzip_entry_findfile(FILE * disk, char *filename,
continue;
}
}
+ errno = ENOENT;
return 0;
}
@@ -464,7 +600,10 @@ zzip_entry_findmatch(FILE * disk, char *filespec,
zzip_fnmatch_fn_t compare, int flags)
{
if (! filespec || ! disk)
+ {
+ errno = EINVAL;
return 0;
+ }
if (! entry)
entry = zzip_entry_findfirst(disk);
else
@@ -478,17 +617,22 @@ zzip_entry_findmatch(FILE * disk, char *filespec,
/* filenames within zip files are often not null-terminated! */
char *realname = zzip_entry_strdup_name(entry);
if (! realname)
- continue;
+ {
+ return 0; /* ENOMEM|EBADMSG */
+ }
if (! compare(filespec, realname, flags))
{
+ debug3("compare '%s' equal with zip '%s'", filespec, realname);
free(realname);
return entry;
} else
{
+ debug3("compare '%s' not like zip '%s'", filespec, realname);
free(realname);
continue;
}
}
+ errno = ENOENT;
return 0;
}
@@ -525,25 +669,36 @@ zzip__new__ ZZIP_ENTRY_FILE *
zzip_entry_fopen(ZZIP_ENTRY * entry, int takeover)
{
if (! entry)
+ {
+ errno = EINVAL;
return 0;
+ }
if (! takeover)
{
ZZIP_ENTRY *found = malloc(sizeof(*entry));
if (! found)
- return 0;
+ {
+ return 0; /* ENOMEM */
+ }
memcpy(found, entry, sizeof(*entry)); /* prescan_copy */
found->tail = malloc(found->tailalloc);
- if (! found->tail)
- { free (found); return 0; }
+ if (! found->tail)
+ {
+ free (found);
+ return 0; /* ENOMEM */
+ }
memcpy(found->tail, entry->tail, entry->tailalloc);
entry = found;
}
___ ZZIP_ENTRY_FILE *file = malloc(sizeof(*file));
if (! file)
- goto fail1;
+ goto error1; /* ENOMEM */
file->entry = entry;
if (! zzip_entry_fread_file_header(entry, &file->header))
- goto fail2;
+ {
+ debug2("file header: %s", strerror(errno));
+ goto error2; /* EIO|EBADMSG */
+ }
file->avail = zzip_file_header_usize(&file->header);
file->data = zzip_entry_data_offset(entry);
file->dataoff = 0;
@@ -556,26 +711,32 @@ zzip_entry_fopen(ZZIP_ENTRY * entry, int takeover)
file->zlib.zalloc = Z_NULL;
file->zlib.zfree = Z_NULL;
- ___ zzip_off_t seek = file->data;
- seek += sizeof(file->buffer);
- seek -= seek & (sizeof(file->buffer) - 1);
- assert(file->data < seek); /* pre-read to next PAGESIZE boundary... */
+ ___ zzip_off_t size = file->avail;
+ if (size > sizeof(file->buffer))
+ size = sizeof(file->buffer);
if (fseeko(file->entry->diskfile, file->data + file->dataoff, SEEK_SET) == -1)
- goto fail2;
+ {
+ debug2("file seek failed: %s", strerror(errno));
+ goto error2; /* EBADF */
+ }
file->zlib.next_in = file->buffer;
- file->zlib.avail_in = fread(file->buffer, 1, seek - file->data,
+ file->zlib.avail_in = fread(file->buffer, 1, size,
file->entry->diskfile);
file->dataoff += file->zlib.avail_in;
____;
if (! zzip_file_header_data_deflated(&file->header)
|| inflateInit2(&file->zlib, -MAX_WBITS) != Z_OK)
- goto fail2;
+ {
+ debug1("decompress failed");
+ errno = EBADMSG;
+ goto error2;
+ }
return file;
- fail2:
+ error2:
free(file);
- fail1:
+ error1:
zzip_entry_free(entry);
return 0;
____;
@@ -592,7 +753,9 @@ zzip_entry_ffile(FILE * disk, char *filename)
{
ZZIP_ENTRY *entry = zzip_entry_findfile(disk, filename, 0, 0);
if (! entry)
- return 0;
+ {
+ return 0; /* EBADMSG */
+ }
return zzip_entry_fopen(entry, 1);
}
@@ -609,13 +772,21 @@ zzip_entry_fread(void *ptr, zzip_size_t sized, zzip_size_t nmemb,
ZZIP_ENTRY_FILE * file)
{
if (! file)
+ {
+ errno = EINVAL;
return 0;
+ }
___ zzip_size_t size = sized * nmemb;
if (! file->compressed)
{
if (size > file->avail)
size = file->avail;
- if (fread(ptr, 1, size, file->entry->diskfile) != size) return 0;
+ if (fread(ptr, 1, size, file->entry->diskfile) != size)
+ {
+ errno = ferror(file->entry->diskfile) ? EBADF : EIO;
+ debug2("uncompressed fread incomplete: %s", strerror(errno));
+ return 0;
+ }
file->dataoff += size;
file->avail -= size;
return size;
@@ -629,6 +800,7 @@ zzip_entry_fread(void *ptr, zzip_size_t sized, zzip_size_t nmemb,
if (! file->zlib.avail_in)
{
size = file->compressed - file->dataoff;
+ debug2("remaining compressed bytes: %lli", (long long)size);
if (size > sizeof(file->buffer))
size = sizeof(file->buffer);
/* fseek (file->data + file->dataoff, file->entry->diskfile); */
@@ -636,9 +808,13 @@ zzip_entry_fread(void *ptr, zzip_size_t sized, zzip_size_t nmemb,
file->entry->diskfile);
file->zlib.next_in = file->buffer;
file->dataoff += file->zlib.avail_in;
+ debug2("remaing compressed fread %lli", (long long) file->zlib.avail_in);
}
if (! file->zlib.avail_in)
+ {
+ errno = EIO;
return 0;
+ }
___ int err = inflate(&file->zlib, Z_NO_FLUSH);
if (err == Z_STREAM_END)
@@ -646,7 +822,11 @@ zzip_entry_fread(void *ptr, zzip_size_t sized, zzip_size_t nmemb,
else if (err == Z_OK)
file->avail -= file->zlib.total_out - total_old;
else
+ {
+ debug1("zlib decode incomplete");
+ errno = EBADMSG;
return 0;
+ }
____;
if (file->zlib.avail_out && ! file->zlib.avail_in)
continue;
@@ -664,7 +844,10 @@ int
zzip_entry_fclose(ZZIP_ENTRY_FILE * file)
{
if (! file)
- return 0;
+ {
+ errno = EINVAL;
+ return EOF;
+ }
if (file->compressed)
inflateEnd(&file->zlib);
zzip_entry_free(file->entry);
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/fseeko.h b/Build/source/libs/zziplib/zziplib-src/zzip/fseeko.h
index 9abade7452c..c790cf6a3af 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/fseeko.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/fseeko.h
@@ -8,12 +8,7 @@
* Author:
* Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 2003,2004 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/info.c b/Build/source/libs/zziplib/zziplib-src/zzip/info.c
index 0c50600ff24..70d393deff8 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/info.c
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/info.c
@@ -3,12 +3,7 @@
* Author:
* Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 2000,2001,2002,2003 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#include <zzip/lib.h> /* exported... */
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/info.h b/Build/source/libs/zziplib/zziplib-src/zzip/info.h
index 0ab6edab561..bfdf8718ade 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/info.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/info.h
@@ -2,12 +2,7 @@
* Author:
* Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 2000,2001,2002,2003 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#ifdef ZZIP_USE_INTERNAL
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/lib.h b/Build/source/libs/zziplib/zziplib-src/zzip/lib.h
index 28b5311d655..2d83f239b87 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/lib.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/lib.h
@@ -3,12 +3,7 @@
* Guido Draheim <guidod@gmx.de>
* Tomi Ollila <Tomi.Ollila@iki.fi>
*
- * Copyright (c) 1999,2000,2001,2002,2003 Guido Draheim
- * All rights reserved
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*
* This is the private header containing definitions that are not
* use by a libzzip user application. Writing an extension lib that
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/memdisk.c b/Build/source/libs/zziplib/zziplib-src/zzip/memdisk.c
index dc00ea86508..0b07da7db55 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/memdisk.c
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/memdisk.c
@@ -16,12 +16,7 @@
* Author:
* Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 1999,2000,2001,2002,2003 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#define _ZZIP_DISK_FILE_STRUCT 1
@@ -42,6 +37,19 @@
#define ___ {
#define ____ }
+#define DEBUG 1
+#ifdef DEBUG
+#define debug1(msg) do { fprintf(stderr, "%s : " msg "\n", __func__); } while(0)
+#define debug2(msg, arg1) do { fprintf(stderr, "%s : " msg "\n", __func__, arg1); } while(0)
+#define debug3(msg, arg1, arg2) do { fprintf(stderr, "%s : " msg "\n", __func__, arg1, arg2); } while(0)
+#define debug4(msg, arg1, arg2, arg3) do { fprintf(stderr, "%s : " msg "\n", __func__, arg1, arg2, arg3); } while(0)
+#else
+#define debug1(msg)
+#define debug2(msg, arg1)
+#define debug3(msg, arg1, arg2)
+#define debug4(msg, arg1, arg2, arg3)
+#endif
+
static const char *error[] = {
"Ok",
# define _zzip_mem_disk_open_fail 1
@@ -86,7 +94,10 @@ zzip_mem_disk_open(char *filename)
if (! disk)
{ perror(error[_zzip_mem_disk_open_fail]); return 0; }
___ ZZIP_MEM_DISK *dir = zzip_mem_disk_new();
- zzip_mem_disk_load(dir, disk);
+ if (zzip_mem_disk_load(dir, disk) == -1)
+ {
+ debug2("unable to load disk %s", filename);
+ }
return dir;
____;
}
@@ -136,7 +147,10 @@ zzip_mem_disk_load(ZZIP_MEM_DISK * dir, ZZIP_DISK * disk)
{
ZZIP_MEM_ENTRY *item = zzip_mem_entry_new(disk, entry);
if (! item)
+ {
+ debug1("unable to load entry");
goto error;
+ }
if (dir->last)
{
dir->last->zz_next = item; /* chain last */
@@ -161,7 +175,7 @@ zzip_mem_disk_load(ZZIP_MEM_DISK * dir, ZZIP_DISK * disk)
* in the zip archive. This is a good place to extend functionality if
* you have a project with extra requirements as you can push more bits
* right into the diskdir_entry for later usage in higher layers.
- * returns: new item, or null on error (setting errno)
+ * returns: new item, or null on error (setting errno = ENOMEM|EBADMSG)
*/
zzip__new__ ZZIP_MEM_ENTRY *
zzip_mem_entry_new(ZZIP_DISK * disk, ZZIP_DISK_ENTRY * entry)
@@ -173,6 +187,12 @@ zzip_mem_entry_new(ZZIP_DISK * disk, ZZIP_DISK_ENTRY * entry)
return 0; /* errno=ENOMEM; */
___ struct zzip_file_header *header =
zzip_disk_entry_to_file_header(disk, entry);
+ if (! header)
+ {
+ debug1("no header in entry");
+ free (item);
+ return 0; /* errno=EBADMSG; */
+ }
/* there is a number of duplicated information in the file header
* or the disk entry block. Theoretically some part may be missing
* that exists in the other, ... but we will prefer the disk entry.
@@ -189,27 +209,40 @@ zzip_mem_entry_new(ZZIP_DISK * disk, ZZIP_DISK_ENTRY * entry)
item->zz_diskstart = zzip_disk_entry_get_diskstart(entry);
item->zz_filetype = zzip_disk_entry_get_filetype(entry);
- { /* copy the extra blocks to memory as well */
- int /* */ ext1 = zzip_disk_entry_get_extras(entry);
- char *_zzip_restrict ptr1 = zzip_disk_entry_to_extras(entry);
- int /* */ ext2 = zzip_file_header_get_extras(header);
- char *_zzip_restrict ptr2 = zzip_file_header_to_extras(header);
+ /* zz_comment and zz_name are empty strings if not present on disk */
+ if (! item->zz_comment || ! item->zz_name)
+ {
+ goto error; /* errno=ENOMEM */
+ }
+
+ { /* copy the extra blocks to memory as well (maximum 64K each) */
+ zzip_size_t /* */ ext1_len = zzip_disk_entry_get_extras(entry);
+ char *_zzip_restrict ext1_ptr = zzip_disk_entry_to_extras(entry);
+ zzip_size_t /* */ ext2_len = zzip_file_header_get_extras(header);
+ char *_zzip_restrict ext2_ptr = zzip_file_header_to_extras(header);
- if (ext1)
+ if (ext1_ptr + ext1_len >= disk->endbuf ||
+ ext2_ptr + ext2_len >= disk->endbuf)
{
- void *mem = malloc(ext1 + 2);
+ errno = EBADMSG; /* format error CVE-2017-5978 */
+ goto error; /* zzip_mem_entry_free(item); return 0; */
+ }
+
+ if (ext1_len)
+ {
+ void *mem = malloc(ext1_len);
+ if (! mem) goto error; /* errno = ENOMEM */
item->zz_ext[1] = mem;
- memcpy(mem, ptr1, ext1);
- ((char *) (mem))[ext1 + 0] = 0;
- ((char *) (mem))[ext1 + 1] = 0;
+ item->zz_extlen[1] = ext1_len;
+ memcpy(mem, ext1_ptr, ext1_len);
}
- if (ext2)
+ if (ext2_len)
{
- void *mem = malloc(ext2 + 2);
+ void *mem = malloc(ext2_len);
+ if (! mem) goto error; /* errno = ENOMEM */
item->zz_ext[2] = mem;
- memcpy(mem, ptr2, ext2);
- ((char *) (mem))[ext2 + 0] = 0;
- ((char *) (mem))[ext2 + 1] = 0;
+ item->zz_extlen[2] = ext2_len;
+ memcpy(mem, ext2_ptr, ext2_len);
}
}
{
@@ -218,10 +251,10 @@ zzip_mem_entry_new(ZZIP_DISK * disk, ZZIP_DISK_ENTRY * entry)
zzip_mem_entry_extra_block(item, ZZIP_EXTRA_zip64);
if (block)
{
- item->zz_usize = __zzip_get64(block->z_usize);
- item->zz_csize = __zzip_get64(block->z_csize);
- item->zz_offset = __zzip_get64(block->z_offset);
- item->zz_diskstart = __zzip_get32(block->z_diskstart);
+ item->zz_usize = ZZIP_GET64(block->z_usize);
+ item->zz_csize = ZZIP_GET64(block->z_csize);
+ item->zz_offset = ZZIP_GET64(block->z_offset);
+ item->zz_diskstart = ZZIP_GET32(block->z_diskstart);
}
}
/* NOTE:
@@ -230,11 +263,15 @@ zzip_mem_entry_new(ZZIP_DISK * disk, ZZIP_DISK_ENTRY * entry)
*/
return item;
____;
+error:
+ zzip_mem_entry_free(item);
+ return 0;
____;
}
/* find an extra block for the given datatype code.
- * We assume that the central directory has been preparsed to memory.
+ * The returned EXTRA_BLOCK is still in disk-encoding but
+ * already a pointer into an allocated heap space block.
*/
ZZIP_EXTRA_BLOCK *
zzip_mem_entry_extra_block(ZZIP_MEM_ENTRY * entry, short datatype)
@@ -242,19 +279,20 @@ zzip_mem_entry_extra_block(ZZIP_MEM_ENTRY * entry, short datatype)
int i = 2;
while (1)
{
- ZZIP_EXTRA_BLOCK *ext = entry->zz_ext[i];
+ char* ext = (char*)( entry->zz_ext[i] );
+ char* ext_end = ext + entry->zz_extlen[i];
if (ext)
{
- while (*(short *) (ext->z_datatype))
+ while (ext + zzip_extra_block_headerlength <= ext_end)
{
if (datatype == zzip_extra_block_get_datatype(ext))
{
- return ext;
+ return ((ZZIP_EXTRA_BLOCK*) ext);
}
- ___ char *e = (char *) ext;
- e += zzip_extra_block_headerlength;
- e += zzip_extra_block_get_datasize(ext);
- ext = (void *) e;
+ /* skip to start of next extra_block */
+ ___ zzip_size_t datasize = zzip_extra_block_get_datasize(ext);
+ ext += zzip_extra_block_headerlength;
+ ext += datasize;
____;
}
}
@@ -310,6 +348,7 @@ zzip_mem_disk_close(ZZIP_MEM_DISK * _zzip_restrict dir)
static void
foo(short zz_datatype)
{
+ /* Header IDs of 0 thru 31 are reserved for use by PKWARE.(APPNOTE.TXT) */
switch (zz_datatype)
{
/* *INDENT-OFF* */
@@ -328,6 +367,7 @@ foo(short zz_datatype)
case 0x0017: /* Strong Encryption Header */
case 0x0018: /* Record Management Controls */
case 0x0019: /* PKCS#7 Encryption Recipient Certificate List */
+ /* ......................................................... */
case 0x0065: /* IBM S/390, AS/400 attributes - uncompressed */
case 0x0066: /* Reserved for IBM S/390, AS/400 attr - compressed */
case 0x07c8: /* Macintosh */
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/memdisk.h b/Build/source/libs/zziplib/zziplib-src/zzip/memdisk.h
index 2411f642c5e..850d7ed4de7 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/memdisk.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/memdisk.h
@@ -1,7 +1,11 @@
#ifndef __ZZIP_MEMDISK_H
#define __ZZIP_MEMDISK_H
-/* NOTE: this is part of libzzipmmapped (i.e. it is not libzzip). */
+/*
+ * NOTE: this is part of libzzipmmapped (i.e. it is not libzzip).
+ *
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
+ */
#include <zzip/types.h>
#include <zzip/mmapped.h>
@@ -65,8 +69,9 @@ struct _zzip_mem_entry {
int zz_diskstart; /* (from "z_diskstart") rridden by zip64 */
int zz_filetype; /* (from "z_filetype") */
char* zz_comment; /* zero-terminated (from "comment") */
- ZZIP_EXTRA_BLOCK* zz_ext[3]; /* terminated by null in z_datatype */
-}; /* the extra blocks are NOT converted */
+ ZZIP_EXTRA_BLOCK* zz_ext[3]; /* terminated by null in z_datatype */
+ zzip_size_t zz_extlen[3]; /* the extra blocks are NOT converted */
+};
#define _zzip_mem_disk_findfirst(_d_) ((_d_)->list)
#define _zzip_mem_disk_findnext(_d_,_e_) (!(_e_)?(_d_)->list:(_e_)->zz_next)
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/mmapped.c b/Build/source/libs/zziplib/zziplib-src/zzip/mmapped.c
index 6fafc1163a6..67f293fb0d1 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/mmapped.c
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/mmapped.c
@@ -18,12 +18,7 @@
* Author:
* Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 2003,2004,2006 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c)Guido Draheim, use under copyleft (LGPL,MPL)
*/
#define _ZZIP_DISK_FILE_STRUCT 1
@@ -62,8 +57,22 @@
#define ____ }
#endif
+#ifdef DEBUG
+#define debug1(msg) do { fprintf(stderr, "%s : " msg "\n", __func__); } while(0)
+#define debug2(msg, arg1) do { fprintf(stderr, "%s : " msg "\n", __func__, arg1); } while(0)
+#define debug3(msg, arg1, arg2) do { fprintf(stderr, "%s : " msg "\n", __func__, arg1, arg2); } while(0)
+#define debug4(msg, arg1, arg2, arg3) do { fprintf(stderr, "%s : " msg "\n", __func__, arg1, arg2, arg3); } while(0)
+#else
+#define debug1(msg)
+#define debug2(msg, arg1)
+#define debug3(msg, arg1, arg2)
+#define debug4(msg, arg1, arg2, arg3)
+#endif
+
/** => zzip_disk_mmap
* This function does primary initialization of a disk-buffer struct.
+ *
+ * This function always returns 0 as success.
*/
int
zzip_disk_init(ZZIP_DISK * disk, void *buffer, zzip_size_t buflen)
@@ -80,13 +89,15 @@ zzip_disk_init(ZZIP_DISK * disk, void *buffer, zzip_size_t buflen)
/** => zzip_disk_mmap
* This function allocates a new disk-buffer with => malloc(3)
+ *
+ * This function may return null on errors (errno).
*/
zzip__new__ ZZIP_DISK *
zzip_disk_new(void)
{
ZZIP_DISK *disk = malloc(sizeof(ZZIP_DISK));
if (! disk)
- return disk;
+ return disk; /* ENOMEM */
zzip_disk_init(disk, 0, 0);
return disk;
}
@@ -97,19 +108,24 @@ zzip_disk_new(void)
* file and calls the system => mmap(2) to put it in main memory. If it is
* successful then a newly allocated ZZIP_DISK* is returned with
* disk->buffer pointing to the mapview of the zipdisk content.
+ *
+ * This function may return null on errors (errno).
*/
zzip__new__ ZZIP_DISK *
zzip_disk_mmap(int fd)
{
struct stat st;
if (fstat(fd, &st) || ! st.st_size)
- return 0;
+ return 0; /* EACCESS */
___ ZZIP_DISK *disk = zzip_disk_new();
if (! disk)
- return 0;
+ return 0; /* ENOMEM */
disk->buffer = _zzip_mmap(disk->mapped, fd, 0, st.st_size);
if (disk->buffer == MAP_FAILED)
- { free (disk); return 0; }
+ {
+ free (disk);
+ return 0; /* EFAULT */
+ }
disk->endbuf = disk->buffer + st.st_size;
return disk;
____;
@@ -136,6 +152,8 @@ zzip_disk_munmap(ZZIP_DISK * disk)
* be => mmap(2)'ed then we slurp the whole file into a newly => malloc(2)'ed
* memory block. Only if that fails too then we return null. Since handling
* of disk->buffer is ambigous it should not be snatched away please.
+ *
+ * This function may return null on errors (errno).
*/
zzip__new__ ZZIP_DISK *
zzip_disk_open(char *filename)
@@ -145,26 +163,33 @@ zzip_disk_open(char *filename)
# endif
struct stat st;
if (stat(filename, &st) || ! st.st_size)
- return 0;
+ return 0; /* ENOENT */
___ int fd = open(filename, O_RDONLY | O_BINARY);
if (fd <= 0)
- return 0;
+ return 0; /* EACCESS */
___ ZZIP_DISK *disk = zzip_disk_mmap(fd);
if (disk)
return disk;
___ zzip_byte_t *buffer = malloc(st.st_size);
if (! buffer)
- return 0;
- if ((st.st_size == read(fd, buffer, st.st_size)) &&
- (disk = zzip_disk_new()))
{
- disk->buffer = buffer;
- disk->endbuf = buffer + st.st_size;
- disk->mapped = -1;
- disk->flags |= ZZIP_DISK_FLAGS_OWNED_BUFFER;
- } else {
- free(buffer);
+ return 0; /* ENOMEM */
+ }
+ if ((st.st_size < read(fd, buffer, st.st_size)))
+ {
+ free (buffer);
+ return 0; /* EIO */
}
+ disk = zzip_disk_new();
+ if (! disk)
+ {
+ free (buffer);
+ return 0; /* ENOMEM */
+ }
+ disk->buffer = buffer;
+ disk->endbuf = buffer + st.st_size;
+ disk->mapped = -1;
+ disk->flags |= ZZIP_DISK_FLAGS_OWNED_BUFFER;
return disk;
____;
____;
@@ -179,6 +204,8 @@ zzip_disk_open(char *filename)
* wrapping a ZZIP_DISK around the memory buffer just as
* this function will do. Note that this function will not
* own the buffer, it will neither be written nor free()d.
+ *
+ * This function may return null (errno).
*/
zzip__new__ ZZIP_DISK *
zzip_disk_buffer(void *buffer, size_t buflen) {
@@ -197,6 +224,8 @@ zzip_disk_buffer(void *buffer, size_t buflen) {
* This function will release all data needed to access a (mmapped)
* zip archive, including any malloc()ed blocks, sharedmem mappings
* and it dumps the handle struct as well.
+ *
+ * This function returns 0 on sucess (or whatever => munmap says).
*/
int
zzip_disk_close(ZZIP_DISK * disk)
@@ -268,28 +297,41 @@ _zzip_strcasecmp(char *__zzip_restrict a, char *_zzip_restrict b)
* a disk_entry pointer (as returned by _find* functions) into a pointer to
* the data block right after the file_header. Only disk->buffer would be
* needed to perform the seek but we check the mmapped range end as well.
+ *
+ * This function returns a pointer into disk->buffer or 0 on error (errno).
*/
zzip_byte_t *
zzip_disk_entry_to_data(ZZIP_DISK * disk, struct zzip_disk_entry * entry)
{
struct zzip_file_header *file = zzip_disk_entry_to_file_header(disk, entry);
- if (file)
- return zzip_file_header_to_data(file);
- return 0;
+ if (! file)
+ return 0; /* EBADMSG */
+ return zzip_file_header_to_data(file);
}
/** => zzip_disk_entry_to_data
* This function does half the job of => zzip_disk_entry_to_data where it
* can augment with => zzip_file_header_to_data helper from format/fetch.h
+ *
+ * This function returns a pointer into disk->buffer or 0 on error (errno).
*/
struct zzip_file_header *
zzip_disk_entry_to_file_header(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
{
- zzip_byte_t *file_header = /* (struct zzip_file_header*) */
- (disk->buffer + zzip_disk_entry_fileoffset(entry));
- if (disk->buffer > file_header || file_header >= disk->endbuf)
+ zzip_byte_t *const ptr = disk->buffer + zzip_disk_entry_fileoffset(entry);
+ if (disk->buffer > ptr || ptr >= disk->endbuf)
+ {
+ errno = EBADMSG;
+ return 0;
+ }
+ ___ struct zzip_file_header *file_header = (void *) ptr;
+ if (zzip_file_header_get_magic(file_header) != ZZIP_FILE_HEADER_MAGIC)
+ {
+ errno = EBADMSG;
return 0;
- return (struct zzip_file_header *) file_header;
+ }
+ return file_header;
+ ____;
}
/** => zzip_disk_entry_to_data
@@ -298,54 +340,83 @@ zzip_disk_entry_to_file_header(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
* with libc we need it that way. Secondly, the filename SHOULD be present
* in the zip central directory but if not then we fallback to the filename
* given in the file_header of each compressed data portion.
+ *
+ * This function returns a new string buffer, or null on error.
+ * If no name can be found then an empty string is returned.
*/
zzip__new__ char *
zzip_disk_entry_strdup_name(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
{
if (! disk || ! entry)
+ {
+ errno=EINVAL;
return 0;
+ }
- ___ char *name;
- zzip_size_t len;
- struct zzip_file_header *file;
- if ((len = zzip_disk_entry_namlen(entry)))
+ ___ char *name = 0;
+ zzip_size_t len = len = zzip_disk_entry_namlen(entry);
+ if (len)
+ {
name = zzip_disk_entry_to_filename(entry);
- else if ((file = zzip_disk_entry_to_file_header(disk, entry)) &&
- (len = zzip_file_header_namlen(file)))
- name = zzip_file_header_to_filename(file);
+ }
else
- return 0;
+ {
+ struct zzip_file_header *file = zzip_disk_entry_to_file_header(disk, entry);
+ if (! file)
+ return 0; /* EBADMSG */
+
+ len = zzip_file_header_namlen(file);
+ if (! len)
+ {
+ /* neither a name in disk_entry nor in file_header */
+ return strdup(""); /* ENOMEM */
+ }
+ name = zzip_file_header_to_filename(file);
+ }
if ((zzip_byte_t *) name < disk->buffer ||
(zzip_byte_t *) name + len > disk->endbuf)
+ {
+ errno=EBADMSG;
return 0;
+ }
- return _zzip_strndup(name, len);
+ return _zzip_strndup(name, len); /* ENOMEM */
____;
}
/** => zzip_disk_entry_to_data
* This function is similar creating a reference to a zero terminated
* string but it can only exist in the zip central directory entry.
+ *
+ * This function returns a new string buffer, or null on error (errno).
+ * If no name can be found then an empty string is returned.
*/
zzip__new__ char *
zzip_disk_entry_strdup_comment(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
{
if (! disk || ! entry)
+ {
+ errno = EINVAL;
return 0;
+ }
- ___ char *text;
- zzip_size_t len;
- if ((len = zzip_disk_entry_comment(entry)))
- text = zzip_disk_entry_to_comment(entry);
- else
- return 0;
+ ___ zzip_size_t len = zzip_disk_entry_comment(entry);
+ if (! len)
+ {
+ return strdup(""); /* ENOMEM */
+ }
+ ___ char *text = zzip_disk_entry_to_comment(entry);
if ((zzip_byte_t *) text < disk->buffer ||
- (zzip_byte_t *) text + len > disk->endbuf)
+ (zzip_byte_t *) text + len > disk->endbuf)
+ {
+ errno = EBADMSG;
return 0;
+ }
- return _zzip_strndup(text, len);
+ return _zzip_strndup(text, len); /* ENOMEM */
+ ____;
____;
}
@@ -376,13 +447,25 @@ zzip_disk_entry_strdup_comment(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
* accept a disk_trailer with a seekvalue that points to a disk_entry and
* both parts have valid PK-magic parts. Beyond some sanity check we try to
* catch a common brokeness with zip archives that still allows us to find
- * the start of the zip central directory.
+ * the start of the zip central directory.So this function may return null
+ * and sets errno.
*/
struct zzip_disk_entry *
zzip_disk_findfirst(ZZIP_DISK * disk)
{
+ debug1("findfirst");
+ if (! disk)
+ {
+ debug1("non arg");
+ errno = EINVAL;
+ return 0;
+ }
if (disk->buffer > disk->endbuf - sizeof(struct zzip_disk_trailer))
+ {
+ debug1("not enough data for a disk trailer");
+ errno = EBADMSG;
return 0;
+ }
___ zzip_byte_t *p = disk->endbuf - sizeof(struct zzip_disk_trailer);
for (; p >= disk->buffer; p--)
{
@@ -390,11 +473,14 @@ zzip_disk_findfirst(ZZIP_DISK * disk)
if (zzip_disk_trailer_check_magic(p))
{
struct zzip_disk_trailer *trailer = (struct zzip_disk_trailer *) p;
- root = disk->buffer + zzip_disk_trailer_get_rootseek(trailer);
+ zzip_size_t rootseek = zzip_disk_trailer_get_rootseek(trailer);
+ root = disk->buffer + rootseek;
+ debug2("disk rootseek at %lli", (long long)rootseek);
if (root > p)
{
/* the first disk_entry is after the disk_trailer? can't be! */
zzip_size_t rootsize = zzip_disk_trailer_get_rootsize(trailer);
+ debug2("have rootsize at %lli", (long long)rootsize);
if (disk->buffer + rootsize > p)
continue;
/* a common brokeness that can be fixed: we just assume the
@@ -406,8 +492,14 @@ zzip_disk_findfirst(ZZIP_DISK * disk)
struct zzip_disk64_trailer *trailer =
(struct zzip_disk64_trailer *) p;
if (sizeof(void *) < 8)
- return 0; /* EOVERFLOW */
- root = disk->buffer + zzip_disk64_trailer_get_rootseek(trailer);
+ {
+ debug1("disk64 trailer in non-largefile part");
+ errno = EFBIG;
+ return 0;
+ }
+ zzip_size_t rootseek = zzip_disk64_trailer_get_rootseek(trailer);
+ debug2("disk64 rootseek at %lli", (long long)rootseek);
+ root = disk->buffer + rootseek;
if (root > p)
continue;
} else
@@ -415,11 +507,21 @@ zzip_disk_findfirst(ZZIP_DISK * disk)
continue;
}
+ debug4("buffer %p root %p endbuf %p", disk->buffer, root, disk->endbuf);
if (root < disk->buffer)
- continue;
+ {
+ debug1("root before buffer should be impossible");
+ errno = EBADMSG;
+ return 0;
+ }
if (zzip_disk_entry_check_magic(root))
+ {
+ debug1("found the disk root");
return (struct zzip_disk_entry *) root;
+ }
} ____;
+ /* not found */
+ errno = ENOENT;
return 0;
}
@@ -428,23 +530,36 @@ zzip_disk_findfirst(ZZIP_DISK * disk)
* This function takes an existing disk_entry in the central root directory
* (e.g. from zzip_disk_findfirst) and returns the next entry within in
* the given bounds of the mmapped file area.
+ *
+ * This function returns null if no next entry can be found.
+ * This function may return null on errors. (errno = ENOENT|EINVAL|EBADMSG)
*/
struct zzip_disk_entry *
zzip_disk_findnext(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
{
+ if (! disk || ! entry)
+ {
+ errno = EINVAL;
+ return 0;
+ }
if ((zzip_byte_t *) entry < disk->buffer ||
(zzip_byte_t *) entry > disk->endbuf - sizeof(entry) ||
! zzip_disk_entry_check_magic(entry) ||
zzip_disk_entry_sizeto_end(entry) > 64 * 1024)
+ {
+ errno = EBADMSG;
return 0;
+ }
entry = zzip_disk_entry_to_next_entry(entry);
if ((zzip_byte_t *) entry > disk->endbuf - sizeof(entry) ||
! zzip_disk_entry_check_magic(entry) ||
zzip_disk_entry_sizeto_end(entry) > 64 * 1024 ||
zzip_disk_entry_skipto_end(entry) + sizeof(entry) > disk->endbuf)
+ {
+ errno = ENOENT;
return 0;
- else
- return entry;
+ }
+ return entry;
}
/** search for files in the (mmapped) zip central directory
@@ -456,6 +571,9 @@ zzip_disk_findnext(ZZIP_DISK * disk, struct zzip_disk_entry *entry)
* matching entry, otherwise the last returned value if you look for other
* entries with a special "compare" function (if null then a doubled search
* is rather useless with this variant of _findfile).
+ *
+ * This functionreturns the entry pointer.
+ * This function may return null on error. (errno = ENOMEM|EBADMSG|ENOENT)
*/
struct zzip_disk_entry *
zzip_disk_findfile(ZZIP_DISK * disk, char *filename,
@@ -470,13 +588,18 @@ zzip_disk_findfile(ZZIP_DISK * disk, char *filename,
{
/* filenames within zip files are often not null-terminated! */
char *realname = zzip_disk_entry_strdup_name(disk, entry);
- if (realname && ! compare(filename, realname))
+ if (! realname)
+ {
+ return 0; /* ENOMEM | EBADMSG */
+ }
+ if (! compare(filename, realname))
{
free(realname);
- return entry;
+ return entry; /* found */
}
free(realname);
}
+ errno = ENOENT;
return 0;
}
@@ -492,6 +615,9 @@ zzip_disk_findfile(ZZIP_DISK * disk, char *filename,
* - use null as argument for "after"-entry when searching the first
* matching entry, or the last disk_entry return-value to find the
* next entry matching the given filespec.
+ *
+ * This function will return the matching entry pointer.
+ * This function may return null on error. (errno = ENOMEM|EBADMSG|ENOENT)
*/
struct zzip_disk_entry *
zzip_disk_findmatch(ZZIP_DISK * disk, char *filespec,
@@ -510,13 +636,18 @@ zzip_disk_findmatch(ZZIP_DISK * disk, char *filespec,
{
/* filenames within zip files are often not null-terminated! */
char *realname = zzip_disk_entry_strdup_name(disk, entry);
- if (realname && ! compare(filespec, realname, flags))
+ if (! realname)
+ {
+ return 0; /* ENOMEM | EBADMSG */
+ }
+ if (compare(filespec, realname, flags))
{
free(realname);
- return entry;
+ return entry; /* found */
}
free(realname);
}
+ errno = ENOENT;
return 0;
}
@@ -532,6 +663,8 @@ zzip_disk_findmatch(ZZIP_DISK * disk, char *filespec,
* information is memorized on the ZZIP_DISK_FILE so that subsequent
* _read() operations will be able to get the next data portion or
* return an eof condition for that file part wrapped in the zip archive.
+ *
+ * This function may return null on errors (errno = ENOMEM|EBADMSG).
*/
zzip__new__ ZZIP_DISK_FILE *
zzip_disk_entry_fopen(ZZIP_DISK * disk, ZZIP_DISK_ENTRY * entry)
@@ -540,10 +673,10 @@ zzip_disk_entry_fopen(ZZIP_DISK * disk, ZZIP_DISK_ENTRY * entry)
struct zzip_file_header *header =
zzip_disk_entry_to_file_header(disk, entry);
if (! header)
- return 0;
+ return 0; /* EBADMSG */
___ ZZIP_DISK_FILE *file = malloc(sizeof(ZZIP_DISK_FILE));
if (! file)
- return file;
+ return 0; /* ENOMEM */
file->buffer = disk->buffer;
file->endbuf = disk->endbuf;
file->avail = zzip_file_header_usize(header);
@@ -560,7 +693,11 @@ zzip_disk_entry_fopen(ZZIP_DISK * disk, ZZIP_DISK_ENTRY * entry)
if (! zzip_file_header_data_deflated(header) ||
inflateInit2(&file->zlib, -MAX_WBITS) != Z_OK)
- { free (file); return 0; }
+ {
+ free (file);
+ errno = EBADMSG;
+ return 0;
+ }
return file;
____;
@@ -571,18 +708,18 @@ zzip_disk_entry_fopen(ZZIP_DISK * disk, ZZIP_DISK_ENTRY * entry)
* This function opens a file found by name, so it does a search into
* the zip central directory with => zzip_disk_findfile and whatever
* is found first is given to => zzip_disk_entry_fopen
+ *
+ * This function may return null on errors (errno).
*/
zzip__new__ ZZIP_DISK_FILE *
zzip_disk_fopen(ZZIP_DISK * disk, char *filename)
{
ZZIP_DISK_ENTRY *entry = zzip_disk_findfile(disk, filename, 0, 0);
if (! entry)
- return 0;
- else
- return zzip_disk_entry_fopen(disk, entry);
+ return 0; /* EBADMSG */
+ return zzip_disk_entry_fopen(disk, entry);
}
-
/** => zzip_disk_fopen
*
* This function reads more bytes into the output buffer specified as
@@ -595,6 +732,8 @@ zzip_disk_fread(void *ptr, zzip_size_t sized, zzip_size_t nmemb,
ZZIP_DISK_FILE * file)
{
zzip_size_t size = sized * nmemb;
+ if (! ptr || ! sized || ! file)
+ return 0;
if (size > file->avail)
size = file->avail;
if (file->stored)
@@ -623,13 +762,18 @@ zzip_disk_fread(void *ptr, zzip_size_t sized, zzip_size_t nmemb,
/** => zzip_disk_fopen
* This function releases any zlib decoder info needed for decompression
* and dumps the ZZIP_DISK_FILE* then.
+ *
+ * This function always returns 0.
*/
int
zzip_disk_fclose(ZZIP_DISK_FILE * file)
{
- if (! file->stored)
- inflateEnd(&file->zlib);
- free(file);
+ if (file)
+ {
+ if (! file->stored)
+ inflateEnd(&file->zlib);
+ free(file);
+ }
return 0;
}
@@ -638,9 +782,14 @@ zzip_disk_fclose(ZZIP_DISK_FILE * file)
* This function allows to distinguish an error from an eof condition.
* Actually, if we found an error but we did already reach eof then we
* just keep on saying that it was an eof, so the app can just continue.
+ *
+ * This function returns EOF in case and 0 when not at the end
+ * of file.
*/
int
zzip_disk_feof(ZZIP_DISK_FILE * file)
{
- return ! file || ! file->avail;
+ if (! file || ! file->avail)
+ return EOF;
+ return 0;
}
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/mmapped.h b/Build/source/libs/zziplib/zziplib-src/zzip/mmapped.h
index 18fbabadb40..00e6c5537e7 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/mmapped.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/mmapped.h
@@ -8,12 +8,7 @@
* Author:
* Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 2003,2004 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/plugin.c b/Build/source/libs/zziplib/zziplib-src/zzip/plugin.c
index 2909df86687..17285d8dbd0 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/plugin.c
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/plugin.c
@@ -4,12 +4,7 @@
* Guido Draheim <guidod@gmx.de>
* Mike Nordell <tamlin-@-algonet-se>
*
- * Copyright (c) 2002,2003 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#include <zzip/lib.h>
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/plugin.h b/Build/source/libs/zziplib/zziplib-src/zzip/plugin.h
index db563d2dcec..db81ff4fafd 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/plugin.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/plugin.h
@@ -1,13 +1,8 @@
/*
* Author:
- * Guido Draheim <guidod@gmx.de>
+ * Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 2002,2003 Guido Draheim
- * All rights reserved
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft
*
* the interfaces for the plugin_io system
*
@@ -97,7 +92,7 @@ int zzip_init_io(zzip_plugin_io_handlers_t io, int flags);
# define ZZIP_IO_USE_MMAP 1
#ifdef __cplusplus
-};
+}
#endif
#endif
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/stat.c b/Build/source/libs/zziplib/zziplib-src/zzip/stat.c
index d77c025f82f..deec99671ac 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/stat.c
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/stat.c
@@ -4,12 +4,7 @@
* Guido Draheim <guidod@gmx.de>
* Tomi Ollila <Tomi.Ollila@iki.fi>
*
- * Copyright (c) 1999,2000,2001,2002 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*
* Description:
* although this file is defining a function called zzip_stat it
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/types.h b/Build/source/libs/zziplib/zziplib-src/zzip/types.h
index 6f9c6e6f983..ff234bc1031 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/types.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/types.h
@@ -5,12 +5,7 @@
* Author:
* Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 2003,2004 Guido Draheim
- * All rights reserved,
- * usage allowed under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*
* This file is usually the first to define some real symbols. If you do
* see some errors here then it is most likely the includepath is wrong
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/write.c b/Build/source/libs/zziplib/zziplib-src/zzip/write.c
index 7521e204bee..cc09c5b9e81 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/write.c
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/write.c
@@ -17,12 +17,7 @@
* Author:
* Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 2003 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#define _ZZIP_WRITE_SOURCE
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/write.h b/Build/source/libs/zziplib/zziplib-src/zzip/write.h
index 6db6b09eed2..cd4fea57651 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/write.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/write.h
@@ -1,12 +1,13 @@
#ifndef _ZZIP_WRITE_H
#define _ZZIP_WRITE_H
+/*
+ * Example code. write support is not yet implemented.
+ *
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
+ */
#include <zzip/lib.h>
-/* ........................................................................
- * write support is not yet implemented
- * zzip/write.c
- */
#define ZZIP_NO_CREAT 1
ZZIP_DIR* zzip_dir_creat_ext_io(zzip_char_t* name, int o_mode,
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/zip.c b/Build/source/libs/zziplib/zziplib-src/zzip/zip.c
index a4b06b47189..fbca9951d17 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/zip.c
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/zip.c
@@ -4,12 +4,7 @@
* Guido Draheim <guidod@gmx.de>
* Tomi Ollila <too@iki.fi>
*
- * Copyright (c) 1999,2000,2001,2002,2003 Guido Draheim
- * All rights reserved,
- * use under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*/
#include <zzip/lib.h> /* archive handling */
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/zzip-zlib-config.pc b/Build/source/libs/zziplib/zziplib-src/zzip/zzip-zlib-config.pc
deleted file mode 100644
index 6df55361c43..00000000000
--- a/Build/source/libs/zziplib/zziplib-src/zzip/zzip-zlib-config.pc
+++ /dev/null
@@ -1,8 +0,0 @@
-zlib_libs= -lz
-zlib_cflags=
-
-Name: zzip-zlib-config
-Version: 1.2.5
-Description: ZLib Config (for ZZipLib)
-Libs: ${zlib_libs}
-Cflags: ${zlib_cflags}
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/zzip.h b/Build/source/libs/zziplib/zziplib-src/zzip/zzip.h
index 6f2c5169080..6f6788f7113 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/zzip.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/zzip.h
@@ -3,12 +3,7 @@
* Guido Draheim <guidod@gmx.de>
* Tomi Ollila <Tomi.Ollila@iki.fi>
*
- * Copyright (c) 1999,2000,2001,2002,2003,2004 Guido Draheim
- * All rights reserved,
- * usage allowed under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LPGL,MPL)
*
* if you see "unknown symbol" errors, check first that `-I ..` is part of
* your compiler options - a special hint to VC/IDE users who tend to make up
@@ -256,7 +251,7 @@ ZZIP_DIR * zzip_dir_open_ext_io(zzip_char_t* filename,
/* zzip_file_open_ext_io => zzip_dir_open_ext_io + zzip_file_open */
#ifdef __cplusplus
-};
+}
#endif
#endif /* _ZZIPLIB_H */
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/zzip32.h b/Build/source/libs/zziplib/zziplib-src/zzip/zzip32.h
index 04802507c17..e3461a95e5d 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzip/zzip32.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzip/zzip32.h
@@ -2,12 +2,7 @@
* Author:
* Guido Draheim <guidod@gmx.de>
*
- * Copyright (c) 2010 Guido Draheim
- * All rights reserved,
- * usage allowed under the restrictions of the
- * Lesser GNU General Public License
- * or alternatively the restrictions
- * of the Mozilla Public License 1.1
+ * Copyright (c) Guido Draheim, use under copyleft (LGPL,MPL)
*
* The compat32 headers is targeted towards those poor souls who can
* not compile their application or library with _LARGEFILE_SOURCE but
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/zzipfseeko.pc b/Build/source/libs/zziplib/zziplib-src/zzip/zzipfseeko.pc
deleted file mode 100644
index 72aa07f104f..00000000000
--- a/Build/source/libs/zziplib/zziplib-src/zzip/zzipfseeko.pc
+++ /dev/null
@@ -1,18 +0,0 @@
-# generated by configure / remove this line to disable regeneration
-prefix=/usr/local
-exec_prefix=${prefix}
-bindir=${exec_prefix}/bin
-libdir=${exec_prefix}/lib
-datarootdir=${prefix}/share
-datadir=${datarootdir}
-sysconfdir=${prefix}/etc
-includedir=${prefix}/include
-package=zzipfseeko
-suffix=
-
-Name: zzipfseeko
-Description: ZZipLib - libZ-based ZIP-access Library with an Easy-to-Use API
-Version: 0.13.62
-Requires: zzip-zlib-config
-Libs: -L${libdir} -lzzipfseeko
-Cflags: -I${includedir}
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/zziplib.pc b/Build/source/libs/zziplib/zziplib-src/zzip/zziplib.pc
deleted file mode 100644
index 44f8abbda00..00000000000
--- a/Build/source/libs/zziplib/zziplib-src/zzip/zziplib.pc
+++ /dev/null
@@ -1,18 +0,0 @@
-# generated by configure / remove this line to disable regeneration
-prefix=/usr/local
-exec_prefix=${prefix}
-bindir=${exec_prefix}/bin
-libdir=${exec_prefix}/lib
-datarootdir=${prefix}/share
-datadir=${datarootdir}
-sysconfdir=${prefix}/etc
-includedir=${prefix}/include
-package=zziplib
-suffix=
-
-Name: zziplib
-Description: ZZipLib - libZ-based ZIP-access Library with an Easy-to-Use API
-Version: 0.13.62
-Requires: zzip-zlib-config
-Libs: -L${libdir} -lzzip
-Cflags: -I${includedir}
diff --git a/Build/source/libs/zziplib/zziplib-src/zzip/zzipmmapped.pc b/Build/source/libs/zziplib/zziplib-src/zzip/zzipmmapped.pc
deleted file mode 100644
index 5e0dcc4cade..00000000000
--- a/Build/source/libs/zziplib/zziplib-src/zzip/zzipmmapped.pc
+++ /dev/null
@@ -1,18 +0,0 @@
-# generated by configure / remove this line to disable regeneration
-prefix=/usr/local
-exec_prefix=${prefix}
-bindir=${exec_prefix}/bin
-libdir=${exec_prefix}/lib
-datarootdir=${prefix}/share
-datadir=${datarootdir}
-sysconfdir=${prefix}/etc
-includedir=${prefix}/include
-package=zzipmmapped
-suffix=
-
-Name: zzipmmapped
-Description: ZZipLib - libZ-based ZIP-access Library with an Easy-to-Use API
-Version: 0.13.62
-Requires: zzip-zlib-config
-Libs: -L${libdir} -lzzipmmapped
-Cflags: -I${includedir}
diff --git a/Build/source/libs/zziplib/zziplib-src/zziplib.spec b/Build/source/libs/zziplib/zziplib-src/zziplib.spec
index 8c12e802473..e40f2c56ef0 100644
--- a/Build/source/libs/zziplib/zziplib-src/zziplib.spec
+++ b/Build/source/libs/zziplib/zziplib-src/zziplib.spec
@@ -1,13 +1,13 @@
# norootforbuild
Summary: ZZipLib - libZ-based ZIP-access Library with an Easy-to-Use API
Name: zziplib
-Version: 0.13.62
+Version: 0.13.65
Release: 1
License: LGPLv2.1+
Group: System/Libraries
URL: http://zziplib.sf.net
Vendor: Guido Draheim <guidod@gmx.de>
-Source0: http://prdownloads.sf.net/%{name}/%{name}-%{version}.tar.bz2
+Source0: https://github.com/gdraheim/zziplib/archive/v%{version}.tar.gz
BuildRoot: /var/tmp/%{name}-%{version}-%{release}
Distribution: Original
diff --git a/Build/source/libs/zziplib/zziplib-src/zzipwrap/Makefile.in b/Build/source/libs/zziplib/zziplib-src/zzipwrap/Makefile.in
index b8ac59c862f..a145635c828 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzipwrap/Makefile.in
+++ b/Build/source/libs/zziplib/zziplib-src/zzipwrap/Makefile.in
@@ -1,9 +1,8 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -18,6 +17,51 @@
VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@@ -39,8 +83,9 @@ host_triplet = @host@
target_triplet = @target@
noinst_PROGRAMS = zzipwrap$(EXEEXT)
subdir = zzipwrap
-DIST_COMMON = $(pkgconfig_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(zzip_HEADERS)
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/uses/mkinstalldirs $(top_srcdir)/uses/depcomp \
+ $(pkgconfig_HEADERS) $(zzip_HEADERS)
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/ac_compile_check_sizeof.m4 \
$(top_srcdir)/m4/ac_set_default_paths_system.m4 \
@@ -53,7 +98,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ac_compile_check_sizeof.m4 \
$(top_srcdir)/m4/ax_check_aligned_access_required.m4 \
$(top_srcdir)/m4/ax_configure_args.m4 \
$(top_srcdir)/m4/ax_create_pkgconfig_info.m4 \
- $(top_srcdir)/m4/ax_enable_builddir_uname.m4 \
+ $(top_srcdir)/m4/ax_enable_builddir.m4 \
$(top_srcdir)/m4/ax_expand_prefix.m4 \
$(top_srcdir)/m4/ax_maintainer_mode_auto_silent.m4 \
$(top_srcdir)/m4/ax_not_enable_frame_pointer.m4 \
@@ -98,42 +143,97 @@ am__nobase_list = $(am__nobase_strip_setup); \
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+ test -z "$$files" \
+ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+ $(am__cd) "$$dir" && rm -f $$files; }; \
+ }
am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkgconfigdir)" \
"$(DESTDIR)$(zzipdir)"
LTLIBRARIES = $(lib_LTLIBRARIES)
libzzipwrap_la_DEPENDENCIES = ../zzip/libzzip.la
am_libzzipwrap_la_OBJECTS = wrap.lo
libzzipwrap_la_OBJECTS = $(am_libzzipwrap_la_OBJECTS)
-libzzipwrap_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
- $(libzzipwrap_la_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_lt = $(am__v_lt_@AM_V@)
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
+libzzipwrap_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
+ $(AM_CFLAGS) $(CFLAGS) $(libzzipwrap_la_LDFLAGS) $(LDFLAGS) -o \
+ $@
PROGRAMS = $(noinst_PROGRAMS)
zzipwrap_SOURCES = zzipwrap.c
zzipwrap_OBJECTS = zzipwrap.$(OBJEXT)
zzipwrap_DEPENDENCIES = libzzipwrap.la ../zzip/libzzip.la
-zzipwrap_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(zzipwrap_LDFLAGS) \
- $(LDFLAGS) -o $@
+zzipwrap_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(zzipwrap_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+am__v_GEN_1 =
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 =
depcomp = $(SHELL) $(top_srcdir)/uses/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo " CC " $@;
+am__v_CC_1 =
CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo " CCLD " $@;
+am__v_CCLD_1 =
SOURCES = $(libzzipwrap_la_SOURCES) zzipwrap.c
DIST_SOURCES = $(libzzipwrap_la_SOURCES) zzipwrap.c
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
HEADERS = $(pkgconfig_HEADERS) $(zzip_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates. Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+ BEGIN { nonempty = 0; } \
+ { items[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique. This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+ list='$(am__tagged_files)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AS = @AS@
AUTOCONF = @AUTOCONF@
@@ -339,9 +439,9 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
+
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
@$(NORMAL_INSTALL)
- test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
@list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
list2=; for p in $$list; do \
if test -f $$p; then \
@@ -349,6 +449,8 @@ install-libLTLIBRARIES: $(lib_LTLIBRARIES)
else :; fi; \
done; \
test -z "$$list2" || { \
+ echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
}
@@ -364,14 +466,17 @@ uninstall-libLTLIBRARIES:
clean-libLTLIBRARIES:
-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
- @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
- dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
- test "$$dir" != "$$p" || dir=.; \
- echo "rm -f \"$${dir}/so_locations\""; \
- rm -f "$${dir}/so_locations"; \
- done
-libzzipwrap.la: $(libzzipwrap_la_OBJECTS) $(libzzipwrap_la_DEPENDENCIES)
- $(libzzipwrap_la_LINK) -rpath $(libdir) $(libzzipwrap_la_OBJECTS) $(libzzipwrap_la_LIBADD) $(LIBS)
+ @list='$(lib_LTLIBRARIES)'; \
+ locs=`for p in $$list; do echo $$p; done | \
+ sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
+ sort -u`; \
+ test -z "$$locs" || { \
+ echo rm -f $${locs}; \
+ rm -f $${locs}; \
+ }
+
+libzzipwrap.la: $(libzzipwrap_la_OBJECTS) $(libzzipwrap_la_DEPENDENCIES) $(EXTRA_libzzipwrap_la_DEPENDENCIES)
+ $(AM_V_CCLD)$(libzzipwrap_la_LINK) -rpath $(libdir) $(libzzipwrap_la_OBJECTS) $(libzzipwrap_la_LIBADD) $(LIBS)
clean-noinstPROGRAMS:
@list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
@@ -381,9 +486,10 @@ clean-noinstPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
-zzipwrap$(EXEEXT): $(zzipwrap_OBJECTS) $(zzipwrap_DEPENDENCIES)
+
+zzipwrap$(EXEEXT): $(zzipwrap_OBJECTS) $(zzipwrap_DEPENDENCIES) $(EXTRA_zzipwrap_DEPENDENCIES)
@rm -f zzipwrap$(EXEEXT)
- $(zzipwrap_LINK) $(zzipwrap_OBJECTS) $(zzipwrap_LDADD) $(LIBS)
+ $(AM_V_CCLD)$(zzipwrap_LINK) $(zzipwrap_OBJECTS) $(zzipwrap_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
@@ -395,25 +501,25 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/zzipwrap.Po@am__quote@
.c.o:
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
.c.obj:
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
.c.lo:
-@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
mostlyclean-libtool:
-rm -f *.lo
@@ -422,8 +528,11 @@ clean-libtool:
-rm -rf .libs _libs
install-pkgconfigHEADERS: $(pkgconfig_HEADERS)
@$(NORMAL_INSTALL)
- test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)"
@list='$(pkgconfig_HEADERS)'; test -n "$(pkgconfigdir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(pkgconfigdir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" || exit 1; \
+ fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
@@ -437,13 +546,14 @@ uninstall-pkgconfigHEADERS:
@$(NORMAL_UNINSTALL)
@list='$(pkgconfig_HEADERS)'; test -n "$(pkgconfigdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- test -n "$$files" || exit 0; \
- echo " ( cd '$(DESTDIR)$(pkgconfigdir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(pkgconfigdir)" && rm -f $$files
+ dir='$(DESTDIR)$(pkgconfigdir)'; $(am__uninstall_files_from_dir)
install-zzipHEADERS: $(zzip_HEADERS)
@$(NORMAL_INSTALL)
- test -z "$(zzipdir)" || $(MKDIR_P) "$(DESTDIR)$(zzipdir)"
@list='$(zzip_HEADERS)'; test -n "$(zzipdir)" || list=; \
+ if test -n "$$list"; then \
+ echo " $(MKDIR_P) '$(DESTDIR)$(zzipdir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(zzipdir)" || exit 1; \
+ fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
@@ -457,30 +567,17 @@ uninstall-zzipHEADERS:
@$(NORMAL_UNINSTALL)
@list='$(zzip_HEADERS)'; test -n "$(zzipdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- test -n "$$files" || exit 0; \
- echo " ( cd '$(DESTDIR)$(zzipdir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(zzipdir)" && rm -f $$files
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
+ dir='$(DESTDIR)$(zzipdir)'; $(am__uninstall_files_from_dir)
+
+ID: $(am__tagged_files)
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ $(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@@ -492,15 +589,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$$unique; \
fi; \
fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+ $(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@@ -509,6 +602,21 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+ list='$(am__tagged_files)'; \
+ case "$(srcdir)" in \
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+ *) sdir=$(subdir)/$(srcdir) ;; \
+ esac; \
+ for i in $$list; do \
+ if test -f "$$i"; then \
+ echo "$(subdir)/$$i"; \
+ else \
+ echo "$$sdir/$$i"; \
+ fi; \
+ done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -560,10 +668,15 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
mostlyclean-generic:
clean-generic:
@@ -650,20 +763,21 @@ uninstall-am: uninstall-libLTLIBRARIES uninstall-pkgconfigHEADERS \
.MAKE: install-am install-strip
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libLTLIBRARIES clean-libtool clean-noinstPROGRAMS ctags \
- distclean distclean-compile distclean-generic \
- distclean-libtool distclean-tags distdir dvi dvi-am html \
- html-am info info-am install install-am install-data \
- install-data-am install-dvi install-dvi-am install-exec \
- install-exec-am install-html install-html-am install-info \
- install-info-am install-libLTLIBRARIES install-man install-pdf \
- install-pdf-am install-pkgconfigHEADERS install-ps \
- install-ps-am install-strip install-zzipHEADERS installcheck \
- installcheck-am installdirs maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags uninstall uninstall-am uninstall-libLTLIBRARIES \
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+ clean-libLTLIBRARIES clean-libtool clean-noinstPROGRAMS \
+ cscopelist-am ctags ctags-am distclean distclean-compile \
+ distclean-generic distclean-libtool distclean-tags distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-libLTLIBRARIES \
+ install-man install-pdf install-pdf-am \
+ install-pkgconfigHEADERS install-ps install-ps-am \
+ install-strip install-zzipHEADERS installcheck installcheck-am \
+ installdirs maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
+ uninstall-am uninstall-libLTLIBRARIES \
uninstall-pkgconfigHEADERS uninstall-zzipHEADERS
diff --git a/Build/source/libs/zziplib/zziplib-src/zzipwrap/wrap.h b/Build/source/libs/zziplib/zziplib-src/zzipwrap/wrap.h
index e4f4f5b7efc..e8f5c8e5c5c 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzipwrap/wrap.h
+++ b/Build/source/libs/zziplib/zziplib-src/zzipwrap/wrap.h
@@ -29,7 +29,7 @@ zzipwrap_use_memory_io(int blocksize, zzipwrap_pfn_t callback, void *callbackdat
#ifdef __cplusplus
-};
+}
#endif
#endif /* _ZZIPWRAP_H */
diff --git a/Build/source/libs/zziplib/zziplib-src/zzipwrap/zzipwrap.pc b/Build/source/libs/zziplib/zziplib-src/zzipwrap/zzipwrap.pc
index 252359b6ab8..281188693de 100644
--- a/Build/source/libs/zziplib/zziplib-src/zzipwrap/zzipwrap.pc
+++ b/Build/source/libs/zziplib/zziplib-src/zzipwrap/zzipwrap.pc
@@ -3,7 +3,7 @@ libdir=/usr/local/lib
includedir=/usr/local/include
Name: zzipwrap
-Version: 0.13.62
+Version: 0.13.24
Description: Callback Wrappers for ZZipLib
Requires: zziplib
Libs: -L${libdir} -lzzipwrap