🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.os.msdos.programmer
Article #389

Summary: P.D. MAKE for msdos

#389
From: Glauber Ribeiro
Date: Tue, 11 Aug 1992 06:02
172 lines
7114 bytes
Flashback:

     A few weeks ago i started my quest for a "make" utility for 
MessyDos, in order to replace the one that comes with Clipper5 
(rmake, the kludgiest, klutziest make program ever made). My 
requirements:

- it must be on public domain
- it must accept unix makefile syntax
- it should hog as little memory as possible
- it must be self-contained (only the make.exe and the
     makefile, nothing more should be necessary for it to run)



Well,

     After writing and rewriting my makefiles dozens of times, 
every time when i thought i had found the perfect MessyDos Make, 
after going through mailserver hell (i don't have ftp), i found 
that there isn't a perfect make utility for MessyDos yet.

     Don't despair, though, you can get pretty close, if you have 
the guts. Here are my choices (with the locations in simtel20, 
which is the most accessible for me):


(1) My personal choice: GNUISH MAKE

     This is a port done by the legendary Thorsten Ohl, of GNU 
make 3.58 (beta version). It is public domain, fully unix- 
compatible, with some extra features, and is the best make utility 
for msdos. It has also the best memory management. When it swaps 
itself out to disk or to EMS, this make takes only about 6k of 
memory to run, which is pretty amazing (considering that almost 
all others take between 80k and 100k!).

     There are 2 catches. The first one is that for some weird 
reason, the GNUISH ports come without any documentation! You can 
use an unix man page, if you can get one, but you will be missing 
some extra features that can make your work easier. After hours 
and hours of searching, i finally found documentation for unix GNU 
make 3.62, in "textinfo" format. This documentation is in TAR.Z 
format (TAR-Z, in simtel), and the names are VERY msdos-hostile. 
Be warned. Either untar it on an unix machine or find a tar 
utility that does some fancy (repeat fancy) filename translation. 
Put the textinfo files together and you end up with about 130 
pages of documentation, which is probably more than you need, but 
what the heck?!

     Second catch is, there is an irritating inconsistency in 
dealing with the backslash. You normally have to use 2 backslashes 
instead of 1 (e.g,: c:\\dos\\edit instead of c:\dos\edit). UNLESS 
the backslash appears on a line that is an internal messydos 
command (e.g.: "dir c:\dos\*.*" is correct). Moreover, it doesn't 
recognize "cls" as a valid msdos command (use "command /c cls", 
instead). If you can live with these booboos, you will love this 
program.

Directory PD1:<MSDOS.GNUISH>
| Filename   Type Length   Date    Description
+---------------------------------------------
MAKE358.ARC   B  223462  901004  GNU Automated recompilation utility
                                 (This is the MSDOS executable)

Directory PD:<UNIX-C.GNU>
| Date      Length  Type   Where                          What
+----------------------------------------------------------------------
03/29/92     396048 binary PD:<UNIX-C.GNU>MAKE.TAR-Z      source (Unix)
03/29/92     252825 binary PD:<UNIX-C.GNU>MAKE-DOC.TAR-Z  documentation
                                  (This is the documentation, and
                                  the source for unix, not dos)


----------------------------------


(2) Tied in with GNU, as the other best msdos make: DMAKE

     This one is more solid than the current GNUISH version, and 
does pretty much the same tricks (but with different syntax). It 
swaps itself out, taking about 20k of memory. It is also public- 
domain. The documentation is very good, very through. The only 
reason i can't use this one is that it insists that you must leave 
a file with initialization parameters in a directory called 
"\etc"), and i needed a program that can function on its own. You 
should try this one, together with GNU, and decide for yourself.

Directory PD1:<MSDOS.C>
| Filename   Type Length   Date    Description
+---------------------------------------------
DMAKE37E.ZIP  B  145813  910512  'make' util for MS-DOS C programmers. EXE/doc
DMAKE37S.ZIP  B  514590  910512  C src: 'make' util for MS-DOS & Unix SysV/BSD


----------------------------------


(3) The best of the also-rans: MAKE-PD

     This one has been circulating on the net, on several 
mutations. It is 99% unix-compatible, it's pd, it comes with 
source, it uses about 80k of memory. The thing it doesn't do, the 
reason why it didn't serve me, is that it doesn't allow for 
redefinition of macros on the commandline. On other words, macros 
in the makefile override the ones on the commandline, and they 
shouldn't. Unfortunately, in the project i needed a make for, this 
was unacceptable. Still, it is a nice program, and may very well 
fit your bill. No documentation (get an unix man page, since this 
is basically "vanilla" unix make). The one in this archive
is optimized/compiled by Rahul Dhesi, which is always a good
point.

Directory PD1:<MSDOS.C>
| Filename   Type Length   Date    Description
+---------------------------------------------
MAKE-PD.ARC   B   42496  870222  Public domain MAKE


----------------------------------


(4) A good sharewhare make: NDMAKE

     If sharewhare is ok for you, look no further. Simple, unix- 
compatible with some specific msdos features, this is probably the 
easiest to use. It has good documentation also.


Directory PD1:<MSDOS.C>
| Filename   Type Length   Date    Description
+---------------------------------------------
NDMAKE45.ARC  B  119028  880129  Unix-like MAKE for DOS C programmers v4.5


----------------------------------


(5) The best of the non-compatibles: BORLAND MAKE


     If you own Turbo Pascal/C/Assembler, you probably have 
Borland's make as well. It is not unix-compatible, but it's fast, 
easy to use and efficient. Give it a try. The documentation is 
almost non-existent, except for pages 173-205 of Turbo Assembler 
Reference Guide. You need to read those pages, because it works a 
bit differently from unix make. One very good point is the
way it handles "response files" for the linker.


----------------------------------


That's all, folks! Thanks to all who helped, and good making!

Special thanks to (in no particular order):

		Bill Parquet,
		John R. Latala
		Gene McManis
		Frank Whaley

who walked the third mile to help me. Any questions about
this report, feel free to email me directly.

                                             Glauber


-- 
Glauber Ribeiro - Wheaton College, IL (USA)
  email: glauber@vpnet.chi.il.us
  big files and uuencoded stuff: gmribeir@david.wheaton.edu
Technical Details
Message-ID: <1992Aug11.060205.18285@vpnet.chi.il.us>
Path: arc1-ca.pugleaf.net!sparky!uunet!gatech!rpi!newsserver.pixel.kodak.com!laidbak!tellab5!vpnet!glauber

Show Full Headers
Complete Article Headers
Newsgroups: comp.os.msdos.programmer
Path: arc1-ca.pugleaf.net!sparky!uunet!gatech!rpi!newsserver.pixel.kodak.com!laidbak!tellab5!vpnet!glauber
From: glauber@vpnet.chi.il.us (Glauber Ribeiro)
Subject: Summary: P.D. MAKE for msdos
Message-ID: <1992Aug11.060205.18285@vpnet.chi.il.us>
Organization: Vpnet Public Access
Date: Tue, 11 Aug 1992 06:02:05 GMT
Lines: 172