If I had fred.cpp in both the foo and bar directories, then foo/Debug/fred.obj and bar/Debug/fred.obj are different files, and so that works fine.
Hmm ... you must be talking about support for the case where the intermediate directories are all off somewhere else? That's doesn't seem to be the default for CMake. -----Original Message----- From: Bill Hoffman [mailto:[EMAIL PROTECTED] Sent: Wednesday, May 09, 2007 10:04 AM To: Rob Mathews Cc: [email protected] Subject: Re: CMake 2.4.1/VC71 Why the wierd <project>.dir subdirs? Rob Mathews wrote: > CMake seems to be generating intermediate directories called > <project-name>.dir and placing the obj files under them. > > Ie, if my project is foo, then /foo/foo.dir/*.obj > > I look in the code and see that this derives from > cmLocalVisual7Generator.cxx, which reads as follows. (The "#if 0" is my > addition) > > std::string cmLocalVisualStudio7Generator > ::GetTargetDirectory(cmTarget& target) > { > #if 0 > why???? this replaces the old structure of <project>/Debug with > <project>/<project>.dir/Debug. What's the point????!!! > std::string dir; > dir += target.GetName(); > dir += ".dir"; > return dir; > #endif > return "."; > } > > > As I say, what's the point? > > > So, you can have two object files with the same name in two different directories. Each target's .obj files are isolated into a separate sub directory. -Bill _______________________________________________ CMake mailing list [email protected] http://www.cmake.org/mailman/listinfo/cmake
