[illumos-Developer] illumos make
Joerg Schilling
Joerg.Schilling at fokus.fraunhofer.de
Wed Nov 17 03:25:16 PST 2010
Alexander Eremin <alexander.r.eremin at gmail.com> wrote:
> Hi all,
> I back to the question of whether there should be Illumos get its own Make.
> It's well known that Sun's Make can't read the GNU Makefiles but
> it's suitable for building NIS maps, etc.
> Here for example another differences between Dmake and Gmake:
> http://www.opensolaris.org/jive/message.jspa?messageID=33951#33951
> FreeBSD has its own Make in base, why not Illumos?
Background information: There are nearly 7000 Makefiles in ONNV and rewriting
them as a result from chosing a different make will take more than a year.
In addition, GNUmake is problematic as it has many deviatons from the POSIX
standard and the maintenance is not sufficient (bug reports take forever to get
a fix). The internal code structure makes it hard to maintain the code.
GNUmake also only has a very basic support for parallel execution, the output
from parallel command is mixed, making it hard to read and understand the
messages.
FreeBSD uses a make that was derived from the UNIX make but it has some serious
deviations that are probably not going to be removed as they fear that it could
affect the compilation os FreeBSD.
Sun make was originally based on UNIX make when it has been written in 1986. It
added a lot of features that partially made it into other implementations (e.g.
GNU make). There are still unique features that are used in ONNV.
As mentioned before, my smake is close enough to the complete set of features
in Sun's make. It is highly portable and correctly runs on many more platforms
than GNU make. Smake mainly misses target groups and conditional macro
assignements, as well as support for the hidden auto-dependency stuff from the
SUn compiler and linker. I planned to enhance smake for OpenSolaris in 2005
already when Sun did not allow binary redistribution of the Sun make program.
BTW: smake consumes aprox. 10x less user CPU time than Sun make and is
noticable faster in case that a target is up to date.
SchilliX will in future provide a drop in replacement for Sun dmake based on
smake.
Jörg
--
EMail:joerg at schily.isdn.cs.tu-berlin.de (home) Jörg Schilling D-13353 Berlin
js at cs.tu-berlin.de (uni)
joerg.schilling at fokus.fraunhofer.de (work) Blog: http://schily.blogspot.com/
URL: http://cdrecord.berlios.de/private/ ftp://ftp.berlios.de/pub/schily
More information about the Developer
mailing list