[CMake] Small nitpick...
Sylvain Benner
benner at virtools.com
Mon May 29 04:07:46 EDT 2006
Hi Phillip,
Moreover the compilation time is bigger when it prints all this "compiling..." lines.
In our custom generator we don't specify any Object File and it works great. Here is the replacement we made in our cmLocalVisualStudio7Generator :
//if(objectName.size())
// {
// fout << "\t\t\t\t\tObjectFile=\"$(IntDir)/"
// << objectName.c_str() << "\"\n";
// }
fout << "\t\t\t\t\tObjectFile=\"$(IntDir)/\"\n";
I don't know about conflicting names but I guess that VS.net has his own way to name the object files and so can perform some optimization during compilation time.
I did the test several times and without object file names specified we save up to 20 seconds per full compilation process on only one project. It's huge. It would be good that someone else tests this to be sure I'm not going mad.
Anyway I guess that for VS.net projects it's not necessary to name the object files, when you open a .vcproj generated by a wizard, it never specify any object file name (most of the time there is even no FileConfiguration element). Conflicting filenames should never occur if you let VS.net handles the naming.
Sylvain
----- Original Message -----
From: Phillip Hellewell
To: cmake at cmake.org
Sent: Friday, May 26, 2006 6:23 PM
Subject: [CMake] Small nitpick...
Hi,
Recently a bug fix was made to VS.Net 2003 generator to allow source files with the same.
The fix was to specify an ObjectFile for each and every source file, so that they would be guaranteed to be unique.
Unfortunately, even with CMAKE_VERBOSE_MAKEFILE set to FALSE, what you end up with now is the following:
Compiling...
stringutils_test.cpp
Compiling...
operations_test.cpp
Compiling...
path_test.cpp
Compiling...
main.cpp
Compiling...
convert.cpp
Visual studio is so dumb that it just has to print out "Compiling..." before each and every file that has an ObjectFile specified. It really gets in the way and makes it harder to see what is currently being compiled.
I know it is just a nitpick, but I really wish I knew how to get rid of those "Compiling..." lines.
One solution would be to alter cmake to only specify ObjectFile for source files that actually have conflicting name. But that may be harder to implement.
I would much rather just find a way to make VS.Net stop printing them out. It seems like VS.Net is the one being dumb. Any ideas...?
Phillip
------------------------------------------------------------------------------
_______________________________________________
CMake mailing list
CMake at cmake.org
http://www.cmake.org/mailman/listinfo/cmake
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://public.kitware.com/pipermail/cmake/attachments/20060529/3d79a748/attachment.html
More information about the CMake
mailing list