On Monday, 1 June 2015 at 12:34:47 UTC, extrawurst wrote:
dub is a good package manager, but it's not a good build system. For small projects that just want to list dependencies and have it build, it's sufficient. Any larger project will have needs that won't be easily solved by using dub. Which is why I wrote my own.

Atila

Hi Atila,

you are talking about cross language builds ?

That too.

Other than that limitation, what do you miss ?

Everything I could do (and have) in cmake. Here are two really simple examples:

1) Automatically run a script to generate the file containing "main" before doing the build, with proper dependency tracking
2) Concurrently building release and unittest builds

I've worked on complicated build systems before, I know the kind of thing I'd need.

I have a couple of rather sizable projects running with dub without problems and one could argue vibe.d is a pretty big project too which works fine.

I wouldn't consider vibe.d to be a large project.

The D community already suffered enough from not uniting workforces behind at least SOME standards (hint at tango), a plethora of options for newcomers to choose from for basics like building is also daunting IMHO.

I fully support dub being the default package manager and for most people/projects it is a good enough build system. That's why my build system builds on dub instead of wanting to replace it. It leaves the package dependency part to dub and focusses on build descriptions that can leverage dub's existing knowledge of the build.

Atila

Reply via email to