benson@ksr.UUCP (Benson Margulies) (12/27/87)
I have seen two advanced replacements for make -- mk and nmake, both from AT&T. Both are incompatible with 4.3 and SysVr3 make. Both offer partial conversion tools, in the forward direction only. Thus, neither is a solution that allows a user to bring an application from a machine with a 'vanilla' make to a multiprocessor and type make and get the benefit of the parallel processor. The user must make some conversion investment. In the case of mk, the syntax is close to that of make, and so one might imagine implementing make as a filter that processed the makefile and passed it along to mk. In the case of nmake, this is out of the question. Has anyone else gotten embroiled in this? Has anyone a compatible parallel make, for licence of free? --benson -- Benson I. Margulies Kendall Square Research Corp. harvard!ksr!benson ksr!benson@harvard.harvard.edu
benson@phantom.ksr.com (Benson Margulies) (12/31/87)
I made a mistake in my posting. It should have said "for licence OR free," not for licence OF free. Benson I. Margulies Kendall Square Research Corp. harvard!ksr!benson ksr!benson@harvard.harvard.edu
gsf@ulysses.homer.nj.att.com (Glenn Fowler[eww]) (01/05/88)
In article <206@ksr.UUCP>, benson@ksr.UUCP (Benson Margulies) writes: > I have seen two advanced replacements for make -- mk and nmake, both > from AT&T. Both are incompatible with 4.3 and SysVr3 make. Both offer > partial conversion tools, in the forward direction only. nmake is distributed with conversion tools in both directions, but neither provides 100% accuracy: mkcv: convert old makefile to nmake makefile mkold: generate old makefile given nmake makefile The output from both programs definitely looks mechanically generated. Some constructs do not easily convert. Most problems involve the property that old make actions are executed one line at a time by separate shells whereas each nmake action is executed as a block by a single shell. mk actions are also executed as blocks, although variable (macro) expansions are left up to the shell. For parallel execution of actions any variant of make must provide hooks for mutual exclusion; there is no standard way to specify this. For the group I work with it is almost always a win to convert foreign makefiles to nmake before hacking. Our 3b2 sVr3 makefiles went from ~20 files, ~5000 lines down to 1 file, 280 lines. Glenn Fowler AT&T Bell Laboratories, Murray Hill {ihnp4,allegra}!ulysses!gsf (201)-582-2195 -- Glenn Fowler AT&T Bell Laboratories, Murray Hill {ihnp4,allegra}!ulysses!gsf (201)-582-2195