[Issue 20338] dmd, phobos, and druntime build systems should be updated

d-bugmail at puremagic.com d-bugmail at puremagic.com
Wed Oct 30 05:25:37 UTC 2019


https://issues.dlang.org/show_bug.cgi?id=20338

Alan.W.Irwin1234 at gmail.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|dmd, phobos, and druntime   |dmd, phobos, and druntime
                   |build systems should be     |build systems should be
                   |modernized                  |updated

--- Comment #1 from Alan.W.Irwin1234 at gmail.com ---
I have recently cleaned, rebuilt, reinstalled, and tested dmd, phobos, and the
druntime components needed by phobos with success for the Posix case.  However,
I believe the following issues in these interdependent build systems need
attention:

* The local repositories get contaminated with build files.  (This issue can be
addressed by implementing separate build trees for such file to receive such
files.)

* There are obscure interactions between the phobos build and druntime build,
clean, and install targets that violate the principle of least surprise.  For
example, the phobos build indirectly builds druntime, but the phobos clean and
install do not clean and install druntime.

* There appears to be a separate build procedure for Windows and Posix systems.

* The install tree has a hard-coded location which makes it difficult to
package dmd, phobos, and druntime for free software distributions.

All of these issues can be straightforwardly addressed by a "super-build" set
of modern CMake-based build systems for dmd, phobos, and druntime that would
coexist peacefully with your present build systems.  If some
dmd/phobos/druntime developer is keen on such an update I would be happy to
lend my decade+ experience with CMake to help get them started.

--


More information about the Digitalmars-d-bugs mailing list