-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Bill Hoffman wrote: > Philip Lowman wrote: >> Does CMake do anything weird during it's configuration phase like write >> out temporary files? Laying aside the initial compile checks which may >> be occuring on the network drive (but if so, could be optimized to occur >> in temp space on the C: ) what other file writes does CMake do prior to >> generating the Makefiles? >> > Most files cmake writes out are copy if different. So, cmake writes a > file, then diff's it with the > file that was already there, and if they are different it gets rid of > the original and moves the new > file into place. This is to avoid too many reloads and other side > effects of changing all the > files all the time. It would be a lot of work, but I suppose you might > be able to build the whole > tree in some staging area, then move it later. But, that sounds very > difficult. It may just be > that running cmake over network drives on windows is slow....
Hmm.. so CMake writes out a temporary file and then diffs it against the existing file using the operating system and only moves it back into place if it's out-of-date? If I understand this correctly there's a simple optimization that could be used which might dramatically improve performance. Simply do the diffing within CMake between the "new" file (in memory) and the "old" file (already in memory because it's been read in). Then only write the file out if it's changed. - -- Philip Lowman Simulation Development Engineer, Modeling and Simulation Technology General Dynamics Land Systems http://www.gdls.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.3 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFGBDWke0tOktX6RKkRAvTWAJ9p90xLdXofMEK5xPqXzHmasbLZwQCgjhCD lFyslFPAAQMwRZjnNrRxrQI= =3/xg -----END PGP SIGNATURE----- _______________________________________________ CMake mailing list CMake@cmake.org http://www.cmake.org/mailman/listinfo/cmake