On Tuesday, June 13, 2017 05:38:37 Sebastien Alaiwan via Digitalmars-d 
wrote:
> On Monday, 12 June 2017 at 07:00:46 UTC, Jonathan M Davis wrote:
> > On Monday, June 12, 2017 06:34:31 Sebastien Alaiwan via
> >
> > Digitalmars-d wrote:
> >> On Monday, 12 June 2017 at 06:30:16 UTC, ketmar wrote:
> >> > Jonathan M Davis wrote:
> >> >> It's certainly a pain to edit the makefiles though
> >> >
> >> > and don't forget those Great Copying Lists to copy modules.
> >> > forgetting to include module in one of the lists was
> >> > happened before, not once or twice...
> >>
> >> I don't get it, could you please show an example?
> >
> > posix.mak is a lot better than it used to be, but with
> > win{32,64}.mak, you have to list the modules all over the
> > place. So, adding or removing a module becomes a royal pain,
> > and it's very easy to screw up. Ideally, we'd just list the
> > modules once in one file that was then used across all of the
> > platforms rather than having to edit several files every time
> > we add or remove anything. And the fact that we're using make
> > for all of this makes that difficult if not impossible
> > (especially with the very limited make that we're using on
> > Windows).
>
> Are you implying that we are currently keeping compatibility with
> NMAKE (the 'make' from MS)?
>
> GNU make inclusion mechanism makes it possible and easy to share
> a list of modules between makefiles.
>
> Before switching to a fancy BS, we might benefit from learning to
> fully take advantage of the one we currently have!

As I understand it, the make that we use on Windows is one that comes with
dmc and is rather primitive in comparison to other versions of make, which
is why win32.mak and win64.mak suck so much in comparison to posix.mak.

Regardless, IMHO, make is a terrible build solution regardless of which
version of make you're using. It's better than using shell scripts, but in
this day and age, there are a plethora of solutions which are vastly
superior to make in terms of usability.

- Jonathan M Davis

Reply via email to