Hi Robert -- After reading the description, I'd say the change simply contains a bug. There is no mention of why the macro leaves ".lib" off the library name in the VS IDE build case. It looks like, possibly, a cut and paste error.
Logically, we want ".lib" on library names, regardless of the VS build environment, so we should change the CMake macros to ensure that this occurs. The real mystery here is why this _didn't_ strip ".lib" from IDE-built libraries when using CMake 2.4.x. Perhaps this was a bug in CMake that is now fixed. -Paul > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf > Of Robert Osfield > Sent: Friday, May 09, 2008 7:16 AM > To: OpenSceneGraph Users > Subject: Re: [osg-users] OSG 2.4,CMake 2.6 and Visual C++ > 2008: Missing .lib extension for internaldependencies causes > linker error > > Hi J-S, > > On Fri, May 9, 2008 at 1:59 PM, Jean-Sébastien Guay > <[EMAIL PROTECTED]> wrote: > > That's what I think we should do too. Asking on the list about why > > this was needed didn't elicit any response, so changing it might. > > <grin> > > Breaking a build for one user to fix a build another isn't > really getting us anywhere, so I'd suggest we get to the > bottom of why this script entries exists before making any > further changes. > > With the aim of tracking down the introduction of this > workaround I've gone through the svn logs for > OsgMacroUtils.cmake and it looks like the revision of > importance is 7865 - this just so happens to be the latest > update to OsgmacroUtils so is a pretty recent change: > > http://www.openscenegraph.org/projects/osg/browser/OpenSceneGr > aph/trunk/CMakeModules/OsgMacroUtils.cmake?rev=7865 > > Revision 7865 (checked in by robert, 3 months ago) > > >From Rene Molenaar, "Using commandline build system nmake on windows > does not work. > > > This is caused by the OSG_MSVC_VERSIONED_DLL hack. > there are hard-coded paths to place the dll's in the bin > /dir that normally would go > in the lib/config (release/debug) dirs. Nmake has > different locations for the files (no config dir). > > fix: change the macro's in OsgMacroUtils?.cmake for the IF(NOT > MSVC_IDE) situation. > Libs go in lib/, and DLLs and executables go in bin/ > To accopmplish this for MSVC_IDE the targets get a > "../../bin" prefix, > for nmake this should be "../bin" (because there are no > config folders). > > This fix mimics the behaviour of the MSCV_IDE (visual > studio) build system when building with nmake. > > Note: > A change in the main CMakeLists.txt creates the needed > plugin directory in the binary dir. > > see included files for the changes: > r7885fix-v2/CMakeModules/OsgMacroUtils.cmake > r7885fix-v2/osgWrappers/CMakeLists.txt > r7885fix-v2/CMakeLists.txt > > > The behaviour of visual studio projects (and other build > systems) remain unchanged. > Tested building and installing with nmake and visual > studio 8 debug and release. > " > > Robert. > _______________________________________________ > osg-users mailing list > [email protected] > http://lists.openscenegraph.org/listinfo.cgi/osg-users-opensce negraph.org _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

