Build a D project is now easy

Leandro Lucarella luca at llucax.com.ar
Tue Nov 23 07:09:43 PST 2010


Nick Sabalausky, el 23 de noviembre a las 08:54 me escribiste:
> "Leandro Lucarella" <luca at llucax.com.ar> wrote in message 
> news:20101123050406.GJ8411 at llucax.com.ar...
> > Nick Sabalausky, el 22 de noviembre a las 12:54 me escribiste:
> >> "Manfred_Nowak" <svv1999 at hotmail.com> wrote in message
> >> news:Xns9E38B3AFCD756svv1999hotmailcom at 65.204.18.192...
> >> > Russel Winder wrote:
> >> >
> >> >> but it has come to the end of its useful life
> >> >
> >> > why. I ask because I just realized, that llvm still uses it.
> >> >
> >>
> >> Make's in the same boat as C++: Highly significant in the past, and still
> >> used because of intertia, but garbage by modern standards.
> >
> > !?
> >
> > Generally people that say that is people that don't understand Make.
> 
> See, that's a big part of the issue I have with make. I've spent an enormus 
> amout of time with it and with various documentation for it (including 
> O'Rielly books), and trying to use it still feels like complete voodoo. I 
> *don't* understand make despite my many attempts. That's the problem. Every 
> non-make-based alternative that I've tried, I've understood just fine.

I agree with a lot of that. I had several attempts at learning it and
failed a lot of times. I found Ask Mr. Make (and the GMake ML) very good
resources for learning:
http://www.cmcrossroads.com/ask-mr-make

Is really hard to learn, but when you get it, it makes sense. That
doesn't mean it doesn't have quite a few things that can be improved
(like detecting file changes using some hash instead of mtime). But
still I think is a pretty good tool, very flexible.

> > Make is not a build system, make is a unix tool, it does one thing and
> > it do it well, and that thing is rebuilding something based on
> > dependencies. Usually Make is a tool to use as a building block when you
> > need something more complex.
> >
> > Make is a great tool, just don't ask it to do things it doesn't suppose
> > to do.
> 
> In other words, it's great as long as you have limited requirements or like 
> to toss a pile of different programs, likely each with their own DSL, at a 
> single damn task (project building)...and if you actually understand it.

Yes, or you can use something done by somebody else (like dmake, cmake,
etc. :). I think of Make as some kind of C of build systems. You can
write C directly but is hard, you can provide a decently easy to use
C interface to do complex thing with a high level specification, or you
can directly build a tool that spits C to do the work. And I don't think
C is obsolete or going away in a near future.

My real problem with other build system was, they were not flexible
enough, or harder to use/maintain than a good makefile, and I looked
hard.

-- 
Leandro Lucarella (AKA luca)                     http://llucax.com.ar/
----------------------------------------------------------------------
GPG Key: 5F5A8D05 (F8CD F9A7 BF00 5431 4145  104C 949E BFB6 5F5A 8D05)
----------------------------------------------------------------------
Robar un alfajor es revolucionario, pues rompe con la idea de propiedad,
incluso más que si se tratara de dinero.
	-- publikazion anarkista mdp (hablando de los destrozos de la
	   Cumbre de las Americas en Mar del Plata, 2005)


More information about the Digitalmars-d-announce mailing list