https://issues.dlang.org/show_bug.cgi?id=17054
Issue ID: 17054 Summary: Better Support Building on Windows. Product: D Version: D2 Hardware: x86 OS: Windows Status: NEW Severity: normal Priority: P1 Component: dmd Assignee: nob...@puremagic.com Reporter: sprink.nore...@gmail.com Windows support is severely lacking for the build system and organized very poorly compared to posix. The top level make file as a start, win32 vs posix. https://github.com/dlang/dmd/blob/v2.072.2/win32.mak https://github.com/dlang/dmd/blob/v2.072.2/posix.mak For some reason HOST_DC is left to be an environment variable (guess it made someone's life easier to have as an env variable) with no error checking to see if the variable actually exists. Leaving for some difficult error messages, for everyone else that doesn't expect it. https://github.com/dlang/dmd/blob/v2.072.2/src/win32.mak#L81 Compiled object files are just dumped in with the source files, there's no management to them. As a result it's no surprise "clean" doesn't actually clean everything. Druntime and Phobos aren't as bad but phobos still just dumps files in the root directory. Windows SDK and Visual Studio directories have to be manually set. For Visual Studio it could probably detect the installation. For Windows 10 the directories are slightly different and don't work well with the way the directories are currently setup. As a more extreme solution, possibly switching build systems to something like CMake. Could solve some of these problems and make maintenance a bit easier. Including not needing to maintain Visual Studio project files in "vcbuild". --