This is a port of GNU gzip 1.6 to MSDOS/DJGPP.

1.:     DJGPP specific changes.
        =======================

      - This port is completely based on the previous port of gzip 1.3.12.
        This means, that all the DJGPP specific functionality provided by the
        previous one will also be available in this new port but nothing DJGPP
        specific new.
      - All the changes done to the original distribution are documented in the
        diffs file and located together with all the files needed to configure
        the package (config.bat, config.sed and config.site) in the djgpp subdir.

        This is a recompilation of all features available with this port:
      - Gzip fully supports long file names on those platforms where DJGPP
        can access them.  This means, for example, that compressing `foo.tar'
        on Windows 9X will produce `foo.tar.gz', not `foo.tgz'.
        For backward compatibility, Gzip knows about truncated DOS-style
        extensions of compressed files even when long file names are supported.
        For example, if you have `foo.tgz' and you type "gunzip foo.tar", Gzip
        will find the file even on Windows 9X.  Short variants of compressed
        extensions are checked *after* the long ones, so Gzip will try to find
        `foo.tar.gz' before `foo.tgz'.
        Long file name support is checked for each file submitted to Gzip, so
        it will treat each one of them in accordance with the properties of the
        file system where that file resides.  In other words, you can compress
        files that reside on DOS and Windows file systems within a single Gzip
        command.
      - Gzip will no longer appear to hang when its input comes from the console
        device. Previous ports would hang when the user typed "gzip -f [Enter]".
        This port allows you to either interrupt the program with Ctrl-C (if you
        typed that command by mistake), or type in the input and end it with a ^Z
        (if you really mean to compress the text you type from the keyboard).
        This is done by avoiding to switch the console device to binary mode,
        so any console reads are now done in text mode.
      - The default compressed file extension is now `.gz', not `z'.  This is
        so that compressed file names on Windows 9X would have the usual `.gz'
        extension, but it also means that `foo.cc' will now be compressed into
        `foo.cgz' when long file names are not supported.  Use the -N option
        to `gunzip' to restore the original name, if the original file name
        had more than one character in the extension.
      - When restoring original file names, `gunzip' now converts all characters
        that are not allowed in DOS/Windows file names to similar but valid
        characters, and changes the file name if it is reserved by a DOS device
        driver (like `aux.text' or `prn.tar') by prepending an underscore to it.
      - In previous ports, uncompressing files with certain names on Windows 9X
        when numeric tails are disabled would trigger false warnings about file
        name truncation. This is now fixed.
      - Truncation of long file names on plain DOS is somewhat smarter now:
        `gunzip' treats several additional characters (like `-' and `_') as
        part delimiters.
      - Shell scripts `zmore', `zdiff' and others now work on DOS and Windows,
        and are distributed with the binary distribution, as are all the man
        pages supplied with the official GNU sources.  `z[ef]grep' script do
        not work due to file descriptors redirection issues when a subprocess
        is started from a bash script.


2.:     Installing the binary package.
        ==============================

2.1.:   Copy the binary distribution into the top DJGPP installation directory
        and unzip it running *ONE* of the following commands:
          unzip32 gzp16b.zip      or
          djtarx gzp16b.zip       or
          pkunzip -d gzp16b.zip

2.2.:   If there is no entry for the gzip info docs in your dir file, located
        info directory, create one running the command:
          install-info --info-dir=/dev/env/DJDIR/info /dev/env/DJDIR/info/gzip.info

        For further information about GNU gzip please read the info docs,
        man pages and the README, NEWS and ChangeLog files.


3.:     Building the binaries from sources.
        ===================================

3.1.:   Create a temporary directory and copy the source package into the
        directory.  If you download the source distribution from one of the
        DJGPP sites, just unzip it preserving the directory structure
        running *ONE* of the following commands:
          unzip32 grep16s.zip      or
          djtarx grep16s.zip       or
          pkunzip -d grep16s.zip

3.2.:   To build the binaries you will need the following binary packages:
          djdev203.zip (patch level 2, see the djdev203.dsm)
          bsh205bbr3.zip  (or a later but NOT a prior version)
          gccNNNb.zip, gppNNN.zip, bnuNNNb.zip, makNNNb.zip, filNNNb.zip,
          shlNNNb.zip, txtNNNb.zip, txiNNNb.zip, grepNNNb.zip, sedNNNb.zip
          and mktmpNNNb.zip

        If you want to run the check you will need also:
          difNNNb.zip and mktmpNNNb.zip

        NNN represents the latest version number of the binary packages.  All
        this packages can be found in the /v2gnu directory of any
        ftp.delorie.com mirror.  Previous versions of those packages may do the
        job as well but I have not tested this.
        You will need bsh204br3.zip or later and *NOT* a prior version or
        the build will fail.  The same applies to djdev203.zip.

3.3.:   The package has been configured for both DJGPP 2.03 and DJGPP 2.04.
        There is a separate build directory for DJGPP 2.03 and for DJGPP 2.04
        under the top srcdir (aka gzip-1.6).  To build the binaries
        using the 2.03 version of DJGPP cd into _build.203; if you prefer to
        build the binaries using DJGPP 2.04 cd into _build.204.  If for some
        reason you want to reconfigure the package cd into the corresponding
        build directory and run the following commands:
          del config.cache
          make clean
          ..\djgpp\config ./..

        Please note that you *MUST* delete the config.cache file in the djgpp
        subdir or you will not really reconfigure the sources because the
        configuration informations will be read from the cache file instead
        of being newly computed.

        config.bat, among other things, will start the configure script passing
        to it a couple of arguments.  You can control these argument passing the
        following command line arguments to config.bat:
          nls or no-nls, default no-nls.  No NLS support.
          cache or no-cache, default cache.
          dep or no-dep, default no-dep.  No dependency tracking.
          silent or no-silent, default silent.  No verbose output during build
                                                process by make.
        All other configure specific options are not set by config.bat so their
        values are left as they are.  If no arguments are passed to config.bat
        then the default values are used.


        To build the programs in a directory other than where the sources are,
        you must add the parameter that specifies the source directory,
        e.g:
          x:\src\gnu\gzip-1.6\djgpp\config x:/src/gnu/gzip-1.6

        Lets assume you want to build the binaries in a directory placed on a
        different drive (z:\build in this case) from where the sources are,
        then you will run the following commands:
          z:
          md \build
          cd \build
          x:\src\gnu\gzip-1.6\djgpp\config x:/src/gnu/gzip-1.6

        The order of the options and the srcdir option does not matter.  You
        *MUST* use forward slashes to specify the source directory.

        The batch file will set same environment variables, make MSDOS specific
        modifications to the Makefile.in's and supply all other needed options
        to the configure script.

3.4.:   To compile the package run from the directory where you have configured
        the sources the command:
          make

3.5.:   Now you can run the tests if you like. From the directory where you have
        configured the sources run the command:
          make check

        3 tests will fail because certain kind of signal handling is not
        supported on DJGPP/DOS and because all "z[ef]grep" shell scripts
        do not due to file descriptor redirection issues that are still
        pending to be fixed.



        Send gzip specific bug reports to <bug-gzip@gnu.org>.
        Send suggestions and bug reports concerning the DJGPP port
        to comp.os.msdos.djgpp or <djgpp@delorie.com>.

Enjoy.

          Guerrero, Juan Manuel <juan.guerrero@gmx.de>
