This is a port of library JBIG 2.1 to MSDOS/DJGPP. 1.: DJGPP specific changes. ======================= The code of the utility programs has been changed in such a way that their stdin and stdout is always switched into binary mode. This is necessary to be able to process data that is piped to stdin from other programs or piped from stdout to other programs. It is clear that you will not be able to interrupt one of the utility programs by pressing Cntl-C, but this will make the testsuite pass flawlessly and will make work the programs if used in a pipe. If this program behaviour is not wanted, you will have to recompile those programs with the macro SET_STDIN_STDOUT_IN_BINARY_MODE set to 0 in the following four files: /pbmtools/jbgtopbm.c, /pbmtools/jbgtopbm85.c, /pbmtools/pbmtojbg.c and /pbmtools/pbmtojbg85.c. In that case you will get binaries that can be interrupted from the console but that will not be able to read or write files from stdin and stdout because they operate in text mode. Of course, the programs will always read and write in binary mode. The code of the libraries itself have not been modified. The package does not need any configuration. To compile the products simple use the provided makefiles. As usual the diffs file is stored in /djgpp. To avoid file name clashes in SFN systems I have renamed the programs jbgtopbm85.exe and pbmtojbg85.exe to 85jbgtopbm.exe and 85pbmtojbg.exe. The library libjbig85.a will have the truncated file name libjbig8.a on SFN systems. I have prefered not to change the library name in the hope that scripts and makefiles that relay on the original name continue working on SFN systems without modifications. Please *read* the docs to become familiar with the products. 2.: Installing the binary package. ============================== 2.1.: Copy the binary distribution into the top DJGPP installation directory, just unzip it preserving the directory structure running *ONE* of the following commands: unzip32 jbig21b.zip or djtarx jbig21b.zip or pkunzip -d jbig21b.zip 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 jbig21s.zip or djtarx jbig21s.zip or pkunzip -d jbig21s.zip 3.2.: To build the binaries you will need the following binary packages: djdev203.zip (or a later but NOT a prior version) bsh205b.zip (or a later but NOT a prior version) gccNNNb.zip, bnuNNNb.zip, makNNNb.zip, filNNNb.zip, shlNNNjb.zip, txtNNNb.zip, txiNNNb.zip, grepNNNb.zip and sedNNNb.zip. If you want to run the check you will need also: difNNNb.zip All this packages can be found in the v2gnu directory of any ftp.delorie.com mirror. NNN stands for the newest port versions available when this port was build but older may do the work as well but I have not tested this. 3.3.: To compile the package run from the top srcdir the command: make 3.4.: Now you can run the tests if you like. From the top srcdir run the command: make test No test should fail if the binaries have been compiled with STDIN and STDOUT switched to binary mode. Else all tests involving pipes and/or reading from stdin/stdout will fail. 3.5.: To install the binaries, header, library, catalogs, and man pages run the following command from the top srcdir: make install This will install the products into your DJGPP installation tree given by the default prefix "/dev/env/DJDIR". If you prefer to install them into some other directory you will have to set prefix to the appropiate value: make install prefix=z:/some/other/place Send library JBIG specific bug reports to . Send suggestions and bug reports concerning the DJGPP port to comp.os.msdos.djgpp or . Enjoy. Guerrero, Juan Manuel