From: Marcus L. <ma...@ya...> - 2008-12-14 20:55:24
|
Gerrit Voss wrote: > Hi, > > On Sun, 2008-12-14 at 14:42 +0800, Gerrit Voss wrote: > >> Hi, >> >> On Tue, 2008-11-04 at 10:09 -0300, Thiago Bastos wrote >> Switching to include <> might be a solution, but I'm not sure how to >> handle the OpenSG subdir part of #include<OpenSG/XX> >> > I'm thinking about doing this, e.g. switching all OSGXXX.{h|inl} > includes to OpenSG/OSGXXX.{h|inl}. > > For Unix this is straight forward and should work out of the box with > scons or cmake. Basically I have n big include dirs where I collect > everything as links back into the source tree. With cmake I can actually > separate them by lib. > > Now the question for the windows gurus, how do I handle this on > Windows ? Any good idea which does not involve copying files which > the debugger might catch instead of the real header file ? > Hm. I've never done this combine-includes into one directory stuff (mostly just because it messes with the debugger, as you say). I've always used the full subdir path in my setups, for simplicity (but adding an extra libname-dir in my source folder(s), so I can still partition different sublibs correctly and refer directly to the sources when including) but since OSG2 uses a lot of subdirs (understandably, since one fc-class requires ~8 files), it might be a bit to nightmarish for users to find the right path to the include file. Hardlinks might be the only way. I don't think we need to bother about non-ntfs filesystems on windows. (it's a pretty fair requirement). And we could always fallback to copy, but most serious developers on windows will not develop on fat32-disks. :) Symbolic links are supported on Vista only, but is a bit of a pain due since the mklink cmd requires admin rights to create symlinks by default . (Hardlinks are ok though. Wish I knew why...) Cheers /Marcus |