Message-Id: <199704010232.VAA29116@delorie.com> Date: Mon, 31 Mar 1997 17:39:40 +0300 (IDT) From: Eli Zaretskii To: djgpp-announce AT delorie DOT com Subject: ANNOUNCE: GNU Hello 1.3 uploaded to SimTel.NET MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII This is to announce that a DJGPP port of GNU Hello program, version 1.3, has been uploaded to SimTel.NET mirrors: ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2gnu/hello13.zip This might seem ridiculous to some of you at first, but I think that playing with this package might actually prove educational. It is far from a simple one-liner: the package is a good example of a typical GNU software distribution, complete with a configuration script, Makefile and documentation. Please read the README.dos file (below) for more details. Note that unlike other DJGPP packages, there are no separate source and binary zip files; instead, everything is lumped together and will be unzipped into the gnu/hello-1.3 subdirectory (obviously, there's no point in distributing a binary hello.exe!). Have fun, Eli Zaretskii --------------------------- README.dos ------------------------------- This is a DJGPP port of GNU Hello 1.3 Since the purpose of this software is mostly educational: to show a working example of a GNU-style package, it is distributed as a single zip archive rather than the usual separate source and binary archives. The distribution includes both the sources and a pre-built executable program (both .exe and raw COFF image), both compiled with debugging symbols and unstripped. What can you do with this package? 1) Study the source: it's a good example of GNU programming standards. 2) Read the Info docs. I mean it, you won't be disappointed; even the Index is full of fun, for those who are patient enough to read the fine print. 3) Play with the program using its various options. 4) Rebuild the program from the sources. You can either (1) say "make", or (2) run the djgpp/config.bat batch file to see how the package is automatically configured for your system, and then run `make'. If you configure and build the program in a directory other than that where the sources reside, invoke config.bat like so: djgpp\config where is the pathname of the source directory. Note that the SECOND (the argument to CONFIG.BAT) needs to be typed with Unix-style FORWARD SLASHES, or else Make will fail. 5) Change the program sources to introduce a new feature, update the Texinfo sources of the docs, then rebuild the program and test your changes. As a minimum testing, run "make check". 6) No program is free of bugs, and `hello' is no exception. Can you find the bugs in the code? Use your favorite debugger to hunt them down and correct them. 7) Once you've found the bug(s), report them to the package maintainers as described in the docs. What tools will you need? To unpack the package: any unzip program. On Windows 9x, use a program which supports long filenames. To only run the program: this package and a DPMI host (get csdpmi3b.zip from the DJGPP site, if `hello.exe' says ``No DPMI''). To read the docs: all of the above, plus info.exe from Texinfo distribution (txiNNNb.zip). To read the docs, chdir to the directory where you unzip the distribution, then type this from the DOS prompt: info -d . -f hello.info To debug the pre-built binary: the debugger that you most fancy (the DJGPP FAQ lists them all). To compile using the `Makefile' and `config.h' files which came with the package: the basic DJGPP tools (djdevNNN.zip), Binutils (bnuNNNb.zip), gcc (gccNNNb.zip) and Make (makNNNb.zip, use version 3.75 or later). To test the program: all of the above, plus `diff' from Diffutils (difNNNb.zip) and `rm' from Fileutils (filNNNb.zip). To reconfigure the package by running djgpp/config.bat: all of the above, plus the following: - Bash (bshNNNb.zip); you will also need a ``symlink'' called sh.exe that runs bash - echo, pwd, test from Sh-utils (shlNNNb.zip) - Sed (sedNNNb.zip) - cp, rm, ginstall from Fileutils (filNNNb.zip) - egrep from Grep (grepNNb.zip) - cat and tr from Textutils (txtNNNb.zip) To generate info docs (after changing the Texinfo sources): `makeinfo' from Texinfo (txiNNNb.zip). If you want the printed docs (the file hello.dvi), you will have to install TeX or LaTeX. To report bugfixes: `diff' from Diffutils. Here's how you invoke `diff' to generate the patch that should be sent to maintainers: diff -c hello.bak hello.c > patches.txt This assumes that the original source is in the file `hello.bak'. Include the file `patches.txt' with your bug report.