On 06/01/2015 01:43 PM, Atila Neves wrote:
I'm fairly certain the ONLY real thing still preventing all that above
from actually working is that dub currently provides no (practical)
way to retrieve the necessary compiler/linker args in order to
actually use your dependencies (again, try using vibe.d in, say, an
rdmd-based project). I say no "practical" way here because "dub
describe -> parse the JSON -> extract the needed info -> convert the
needed info to compiler flags" is NOT exactly practical or reasonable
to expect people to do *just* to use RDMD or otherwise opt-out of
dub's build-system.)

My build system already uses the output from `dub describe` to produce,
well, a build system from it. I designed it with multiple backends in
mind, right now the ones that I implemented are ninja and make.

If not for `dub describe` bugs (I'm working on that), you'd be able to
point it at any dub project and get make/ninja files for it. Or
integrate whatever you want with the existing files to compile that dub
already knows about.

In fact, for any dub project that doesn't use configurations (that's the
bug), you can do that _right now_.

Atila

That's certainly cool. I *do* think "dub describe"'s json is an awesome thing to have, exactly for those sorts of purposes.

But I do maintain that an ability to easily opt-out of dub's buildsystem *needs* to be built-in and should not *require* external tools (though external tools should certainly still be possible). And this is even more crucial if dub's to be bundled with dmd and rdmd (the latter of which dub currently does not play nicely with).

Reply via email to