I finished up some changes a few hours ago, however I'm trying to get =
something out of the (virtual) door in another project, so I won't be =
able to commit till tomorrow.
I've added "if" and "unless" attributes to <define> and <undefine> which =
appear in <defineset>. I haven't done it yet, but I expect to do the =
same for <compilerarg>.
WindowsNamingScheme was case-sensitive, it would not recognize a *.LIB =
as a library file. I rewrote AbstractNamingSchema in terms of virtual =
endsWith and startsWith functions that WindowsNamingScheme overloads =
with case-insensitive implementations.
When <FileSet> appears as a child of <LibrarySet>, the dir attribute is =
optional (unlike other usages of FileSet). When omitted, the patterns =
are checked against all directories appearing in the library path =
environment variable (compiler specific, currently only implemented for =
MSVC which uses the LIB environment variable), all matching filenames =
are added and duplicate filenames are discarded. This allows constructs =
<Include name=3D"ADVAPI32.LIB" if=3D"windows"/>
<Include name=3D"KERNEL32.LIB" if=3D"windows"/>
The compile task appears to be creating a process for each source file =
compiled. I believe may result in a pretty substantial performance hit =
compared to compiling multiple files per process creation. Or at least =
that used to be the case.
I've gotten further in my Xerces-C compile. With these fixes, I can =
build xerces-c.dll on Windows using MSVC and will expand the build to =
GCC (Cygwin and Linux) and BCC before looking at performance issues