Build a D project is now easy
Lutger Blijdestijn
lutger.blijdestijn at gmail.com
Tue Nov 23 01:01:08 PST 2010
Leandro Lucarella wrote:
> Russel Winder, el 22 de noviembre a las 19:10 me escribiste:
>> On Mon, 2010-11-22 at 16:41 +0000, Manfred_Nowak wrote:
>> > 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.
>>
>> For really small systems compiled on a single platform, Make can still
>> "cut it". But being an external DSL, the separation of relationship
>> specification notation and action notation, and especially the platform
>> specific action notation lead to insurmountable problems. Go is trying
>> to persevere with Make but the cracks show readily. Also Make shows the
>> cracks for large projects, it doesn't really scale.
>
> False.
>
>> Autotools was a brave attempt to make Make make big projects for
>> Posix-compliant platforms. CMake is a bold attempt to ensure Make
>
> Automake is one of the biggest mistakes *ever*.
>
>> handles things in a more platform independent way. Autotools is, I
>> think also reaching the end of its useful life -- it was an immense bit
>> of m4 hackery, and deserves respect, just as Make does.
>
> There is no point of comparison between Make and Autotools, Autotools is
> a huge hack. Make is limited in scope, but it does what it's supposed to
> do extremely well.
>
>> The alternative to all this is to use an internal DSL, i.e. use a
>> programming language directly. SCons and Waf plough this furrow -- to
>> name but the main two in a C, C++, D, LaTeX context. SCons and Waf both
>> suffer some serious issues, but they are the current market leaders for
>> a more modern system.
>
> I tried quite a few build systems for a big project (cmake, waf, aap,
> scons, omake) and all had their own issues and specially limitations.
> Eventually I decided to learn Make seriously, wrote a good Makefile and
> never looked back...
>
> Make can be very hard to learn, specially because people tend to use it
> wrongly and there are very few good examples and tutorials/docs.
>
> PS: I'm really talking about GMake :)
>
Wow, GMake is almost a full blown programming language! If you have one of
those few good examples handy, would you mind sharing a link?
More information about the Digitalmars-d-announce
mailing list