Thread overview | ||||||
---|---|---|---|---|---|---|
|
October 30, 2019 [Issue 20338] dmd, phobos, and druntime build systems should be updated | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=20338 Alan.W.Irwin1234@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@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. -- |
October 30, 2019 [Issue 20338] dmd, phobos, and druntime build systems should be updated | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=20338 --- Comment #2 from Alan.W.Irwin1234@gmail.com --- I forgot to mention another issue with your present build and test system is the dmd test target cannot be built with the GNU make parallel build (-jN) option. So my script drops that possibility for dmd and phobos on the assumption that the phobos build/test system has the same issue. CMake provides a powerful environment (for example, dependencies between tests) to solve such parallel build issues. Also, to expand on my remarks about different build systems for Posix (where you currently use a Makefile approach) and Windows (where you currently appear to have a build system that works for Visual Studio), CMake has different generators which allow it, for example, to configure Posix Makefiles, a Visual Studio project, and many other possibilities (such as nmake Makefiles). However, I don't want to over-advocate CMake so I also want to emphasize this parallel test issue, and all the other Posix build-system issues I have mentioned could be addressed at the Makefile level and assuming the same or similar issues exist for your Visual Studio build could also be addressed for that build system. Or maybe [Digger](https://github.com/CyberShadow/Digger) (which I have not tried) is the answer. But the fundamental point is all these current build-system issues I have mentioned need to be addressed whatever build system you decide to adopt. -- |
December 17, 2022 [Issue 20338] dmd, phobos, and druntime build systems should be updated | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=20338 Iain Buclaw <ibuclaw@gdcproject.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P1 |P4 -- |
December 15 [Issue 20338] dmd, phobos, and druntime build systems should be updated | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=20338 --- Comment #3 from dlangBugzillaToGithub <robert.schadek@posteo.de> --- THIS ISSUE HAS BEEN MOVED TO GITHUB https://github.com/dlang/dlang.org/issues/4098 DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB -- |
Copyright © 1999-2021 by the D Language Foundation