[phobos] Windows unit tests shouldn't be in one folder
Jonathan M Davis
jmdavisProg at gmx.com
Thu Jan 19 22:49:18 PST 2012
The unit tests on Linux maintain the module hierarchy when they're compiled.
For example, on 64-bit Linux, std.net.isemail's unit test object file and
binary go in generated/linux/debug/64/unittest/std/net/. However, on Windows,
they all go in the unittest folder.
That doesn't support having both debug and release builds. It doesn't support
architecture (though we don't have to deal with anything other than 32-bit on
Windows just yet). And most importantly for what I'm dealing with at the
moment, it doesn't support having multiple sub-modules with the same name.
In my case, I'm working on splitting std.datetime into sub-modules in
std.dtime, and it makes some sense to have a windows.d with some of the
windows-specific functions in it. However, there is already a
std/c/windows/windows.d. So, on Windows, they would both be trying to compile
to the same place in spite of the fact that they're in completely different
packages.
Would someone who's knowledgable enough about makefiles (and the Windows
makefile in particular) be able and willing to fix win32.mak so that the unit
tests get compiled within a hierarchy (possibly even in the exact same way
that Linux does - e.g. generate/windows/debug/32/unittest/std/net)?
- Jonathan M Davis
More information about the phobos
mailing list