home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BURKS 2
/
BURKS_AUG97.ISO
/
BURKS
/
SOFTWARE
/
SOURCES
/
UNZIP52.ZIP
/
INSTALL
(
.txt
)
< prev
next >
Wrap
Text File
|
1996-04-24
|
22KB
|
405 lines
__________________________________________________________________________
This is the Info-ZIP file INSTALL (for UnZip), last updated 24 Apr 96.
__________________________________________________________________________
Yes, this is a rather long file, but don't be intimidated: much of its
length is due to coverage of multiple operating systems and of optional
customization features, large portions of which may be skipped. --GRR
__________________________________________________________________________
To compile UnZip, UnZipSFX and/or fUnZip (quick-start instructions):
=========================================
(1) Unpack everything into a work directory somewhere, and make sure you're
in the main UnZip directory (the one with this file in it).
(2) Copy the appropriate makefile into the current directory, except under
OS/2.
(3) Run your "make" utility on the makefile (e.g., "nmake -f makefile.msc").
(4) Try out your new UnZip the way you would any new utility: read the
docs first.
Ah ha ha ha!! Oh, that kills me. But seriously...for VMS, UnZip must
be installed as a "foreign symbol"; see the Install section below or
[.vms]readme.vms for details. (It basically involves adding a line
sort of like this to login.com: $ unzip == "$disk:[dir]unzip.exe")
For DOS and other OSes without explicit timezone support (i.e., every-
body but Unix), make sure the "TZ" environment variable is set to a
valid and reasonable value; see your compiler docs for details.
To compile UnZip, UnZipSFX and/or fUnZip (detailed instructions):
=========================================
(1) Unpack *.c and *.h (the actual source files), preserving the directory
structure (e.g., ./unix/unix.c). The sole exception is TOPS-20, where
tops20/* should be unpacked into the current directory, but TOPS-20
is no longer fully supported anyway.
If you wish to compile with decryption enabled, you must get the zcrypt
package (see the "Where" file). Unpack crypt.c and crypt.h from the
zcrypt archive, overwriting the dummy versions supplied with UnZip. If
you don't have any sort of unzipper available, you'll have to compile the
non-crypt version first and use that to unpack the full crypt sources,
then recompile. (The zipcloak.c file included in the zcrypt archive is
for use only with the Zip 2.x sources, so don't bother unpacking it.)
(2) Choose the appropriate makefile based on the description in the Con-
tents file for your OS (that is, there's only one for Unix or OS/2, but
MS-DOS and several other OSes have several, depending on the compiler).
Copy it into the current directory and rename if necessary or desired.
(Some makefiles can be invoked in place; see (5) below.)
Special point of confusion: some MS-DOS targets are in non-MSDOS
makefiles. In particular, for DOS emx+gcc use the gccdos target of
the OS/2 makefile (os2/makefile.os2), and for djgpp use the gcc_dos
target of the Unix makefile (unix/Makefile). In addition, OS/2 users
of MSC can cross-compile to MS-DOS with makefile.os2's mscdos target.
Extra special point of confusion: makefile.os2 expects to remain in
the os2 subdirectory. Invoke it as "nmake -f os2/makefile.os2 gcc",
for example.
(3) If you want a non-standard version of UnZip, define one or more of the
following optional macros, either by adding them to the LOCAL_UNZIP
environment variable or by editing your makefile as appropriate. The
syntax differs from compiler to compiler, but macros are often defined
via "-DMACRO_NAME" or similar (for one called MACRO_NAME). Note that
some of these may not be fully supported in future releases (or even
in the current release). Note also that very short command lines in
MS-DOS (128 characters) may place severe limits on how many of these
can be used; if need be, the definitions can be placed at the top of
unzip.h instead (it is included in all source files)--for example,
"#define MACRO_NAME".
DOSWILD (MS-DOS only)
Treat trailing "*.*" like Unix "*" (i.e., matches anything); treat
trailing "*." as match for files without a dot (i.e., matches any-
thing, as long as no dots in name). Special treatment only occurs
if patterns are at end of arguments; i.e., "a*.*" matches all files
starting with "a", but "*.*c" matches all files ending in "c" *only*
if they have a dot somewhere before the "c". Thus "*.*.*" could be
used (albeit awkwardly) to specify all filenames with at least one
dot in them, and "*." matches all filenames with no dots in them.
[The default method of specifying these would be "*.*" and "* -x *.*",
respectively, where the second example makes use of UnZip's exclude-
files option.] All other regular expressions (including "?" and
"[range_of_chars]") retain their Unix-like behavior.
VMSWILD (VMS only)
Use parentheses rather than brackets to delimit sets (ranges), and
use '%' instead of '?' as the single-character wildcard for internal
filename matching. (External matching of zipfile names always uses
the standard VMS wildcard facilities; character sets are disallowed.)
VMSCLI (VMS only)
Use VMS-style "slash options" (/FOOBAR) instead of the default Unix-
style hyphenated options (-f). This capability was added quite late
in the beta cycle and isn't fully tested, so some features may not
work as expected. Also, it doesn't affect options stored in environ-
ment variables (UNZIP_OPTS or ZIPINFO_OPTS); those use the Unix style
regardless.
CHECK_VERSIONS (VMS only)
UnZip "extra fields" are used to store VMS (RMS) filesystem info,
and the format of this information may differ in various versions
of VMS. Defining this option will enable UnZip warnings when the
stored extra-field VMS version(s) do(es) not match the version of
VMS currently being used. This is a common occurrence in zipfiles
received from other sites, but since the format of the filesystem
does not seem to have changed in years (including on Alpha and Open-
VMS systems), the warnings are not enabled by default.
RETURN_CODES (VMS only)
VMS interprets return codes according to a rigid set of guidelines,
which means it misinterprets normal UnZip return codes as all sorts
of really nasty errors. Therefore VMS UnZip returns an alternate set
of return codes; since these may be difficult to interpret, define
RETURN_CODES for human-readable explanations.
ASM_CRC (Amiga/Aztec C; many x86 systems: DOS, OS/2, Win32, Unix)
Use an assembler routine to calculate the CRC for each file (speed).
ASM_INFLATECODES (Amiga/Aztec C only, for now)
Use an assembler version of inflate_codes() for speed.
OLD_EXDIR
No longer supported.
SFX_EXDIR
Enable the "-d <extract_dir>" option for UnZipSFX. By default it is
disabled so as to generate the smallest possible executable stub, but
for use with automated installation scripts and the like it may be
useful to enable -d.
NO_ZIPINFO
Compile without ZipInfo mode (-Z) enabled; makes a smaller executable
because many text strings are left out. Automatically enabled for
some small-model compiles under MS-DOS and OS/2, so ordinarily there
is no need to specify this explicitly. (Note that even with this
defined, the resulting executable may still be too big to extract
some zipfiles correctly, if compiled with the small memory model.)
LZW_CLEAN
The "shrinking" algorithm from PKZIP 1.0 is an LZW variant. Unisys
patented the Lempel-Ziv-Welch algorithm in 1985 and has publicly
claimed that decompression is covered by it. (IBM also patented the
same thing in a filing 3 weeks prior to Unisys's.) Unisys has also
publ