[Cmake] Autological Makefiles (+ VTK new build is *slow*)

Bill Hoffman bill.hoffman at kitware.com
Tue Jun 5 10:42:14 EDT 2001


The old way did store the depends in the makefile, but they were not
always up-to-date.  The correct thing to do, is recompute them when
a .cxx or .h changes.   I don't think that this is the source of the extra
time.   

The overhead of /FD is small:

ls: vc60.idb: No such file or directory
bash-2.04$ time cl /nologo -I../../vtknew-vc -c -DVTKSTATIC vtkObject.cxx 
vtkObject.cxx
real    0m0.901s
user    0m0.020s
sys     0m0.010s
bash-2.04$ ls -l vc60.idb
ls: vc60.idb: No such file or directory
bash-2.04$ time cl /FD /nologo -I../../vtknew-vc -c -DVTKSTATIC vtkObject.cxx 
vtkObject.cxx
real    0m0.942s
user    0m0.020s
sys     0m0.010s
bash-2.04$ ls -l vc60.idb
-rw-r--r--   1 administ None        33792 Jun  5 10:40 vc60.idb
bash-2.04$ time cl /FD /nologo -I../../vtknew-vc -c -DVTKSTATIC vtkObject.cxx 
vtkObject.cxx
real    0m0.932s
user    0m0.010s
sys     0m0.020s




There is one more thing that you might want to try.  MSDEV has an option
to save makefiles from .dsp files.   You may be able to do this
from the command line with the /EX option that allows you to run macros.
You might be able to generate the makefile from the .dsp files, then add
a rule to the msdev generated makefile that builds the makefile if the .dsp
changes.

I think that 90% or more of the VTK users will be happier using the integrated
environment.   Since using the command line is foreign to most microsoft developers.

There may also be a way to turn off the class browsing feature.   That is the
cause of the slow loads into the ide when wrapping is on.   With wrapping,
msdev can see all the classes via the .h files.   If there is no wrapping,
it only parses the .cxx files.

-Bill
 

At 11:01 AM 6/5/2001 +0200, Sebastien BARRE wrote:

>Yes, you are right.
>But the old tree starts so fast when the deps are included in the nmakefile (I guess they were, werent' they). I must find why my new tree build is so slow :(
>
>>Note, that if I do not use the ALL_BUILD target things are much quicker.
>>Perhaps the trick to building from emacs, is to build the library you are changing.
>
>This is fun, because the organization of the tree was made to remove dependencies, make our lives easy, and speed-up things :) I'm just unlucky :))
>
>>If you modify a file in vtkCommon, then just build vtkCommon.
>
>Wow, I'll have to write a clever Emacs macro then :)
>
>>Do you have python, java and tcl perhaps?
>
>Python + Tcl. But see my timings above.
>
>>If not, do you have the most current service pack for visual studio?
>
>Ooops.
>I just realized yesterday that there was a SP2 for Win2K, and now you make me wonder... wow, there is a SP5 for VC++ too. I'm running SP4. I'll check that this evening. Thanks
>
>
>
>_______________________________________________
>Cmake mailing list
>Cmake at public.kitware.com
>http://public.kitware.com/mailman/listinfo/cmake





More information about the CMake mailing list