I am a happy camper today ... Brad King [mailto:[email protected]] wrote: > [email protected] wrote: > > The command-line-and-templates alternative (as implemented in the VS 6 > > generator) had at least three major benefits. > > That design has been a PITA for years.
Oops. I didn't realize it caused so much grief. And certainly it would be even harder to do something like that in the later versions. I'll forget that idea. > I've been tempted to go back and > re-implement the generator to drop use of templates. If it weren't for > all the embedded systems compilers that only exist as plugins to VS 6 > then we may have already dropped support for the generator. No kidding! My customer with all the questions about builds finally ditched VC6 this year, and I'm overjoyed about that. I'd been rehearsing the upgrade with my CMake scripts since VS 7.1. > The VS 10 generator finally solved this. All the flag -> option mapping > is automatically generated from xml files describing the options that > come with the compiler. That should make a lot of things easier for me. > (1) AFAIK the <target>.idb file can be anywhere so long as it is in > the same place every time the linker runs. Correct? Therefore we > can hide it away in the <target>.dir/ directory in the build tree. Sounds good. That's where the .obj files go, right? It's where I would expect to find the .idb. > (2) Introduce a new setting similar to the runtime output directory: > > CMAKE_SYMBOL_OUTPUT_DIRECTORY[_<CONFIG>] > ^^^^^^ as in "debug symbol"; suggestions for name? > > If set then it controls where .pdb files go and is ignored on other > platforms. It will need to be implemented for Makefiles (for NMake) > and also for the VS IDE generators. ... And so, yet another one-off environment variable. Sorry about that! But it sounds like it would work. (Just out of curiosity: wouldn't the '/PDB' option control this? Did it go away in VS10? Or is there something else I don't know about it?) I'll take a look at cmTarget. I appreciate the hints about how the patch ought to be done, so that I don't have to guess (probably badly) on my own. Thanks! David _______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake
