DDT 0.11.0 released
Trent Forkert via Digitalmars-d-announce
digitalmars-d-announce at puremagic.com
Fri Mar 20 11:07:21 PDT 2015
On Friday, 20 March 2015 at 15:52:18 UTC, Dicebot wrote:
> It is _supposed_ to be the same, but not necessarily is. Bugs
> in CMake generators are not impossible.
Of course not, but I prefer a build system that works 99.99% of
the time regardless of where it is used over a build system that
can only be used on one machine or software stack.
> And I don't understand why it is not acceptable.
* Because it is not guaranteed to be there. For instance, I
don't have dub on my system
* Because anybody not using dub should not be required to use
dub. This is dlang, not dublang
* Because it is at odds with C/C++ integration, which is an H1
priority
* Because I just want to tell Eclipse about the project, there
is no need to involve dub
* Because the user said so
> dub is de-factor part of standard compiler toolchain for D.
No it isn't. Neither is rdmd. Nor is make part of the standard
compiler toolchain for C. When CDT uses make it does so *because
it was told to*. Same with ninja. VisualStudio project generation
doesn't use makefiles, because it is generating a VisualStudio
project.
And the fact that a whole bunch of abandoned single-module D
libraries use dub is irrelevant when people like me, Manu, etc
are working on larger, more complicated projects and say
(repeatedly!!) that dub doesn't meet our needs.
> It is developed as D-Programming-Language organization project
> and planned for eventual distribution with compiler.
rdmd is already distributed with dmd. Is it now a required part
of the build process for all projects?
VisualD is also developed under D-Programming-Language. Is it now
required as well? Why isn't DDT using a .visualdproj?
> Saying that is unacceptable as dependency is similar to saying
> that Phobos is unacceptable as dependency.
I'm not saying Phobos is unacceptable, but there are those that
do. However, phobos is a library, not a build tool. Apples,
oranges, etc.
>> Include directories are not language specific, at least not in
>> CMake.
>
> Sounds like design mistake to me. There is nothing similar
> between include directories in C and import paths in D.
It's a list of directories. Sure, the compilers might do
different things with the directories, but I've never encountered
any harm from there just being a single list of directories to
look for includes/imports in.
> Even within D -J paths and -I paths need to be treated
> differently.
My fork handles -J paths separately from -I paths:
include_directories(foo) # -Ifoo
include_directories(TEXT bar) # -Jbar
Similarly, CMake also handles regular vs system include paths for
C/C++ compilers:
include_directories(SYSTEM baz) # -isystem baz
However, D doesn't have a -isystem, so SYSTEM is effectively
ignored when producing the flags for a D compiler.
More information about the Digitalmars-d-announce
mailing list