[osg-users] Cygwin/Ming plugin names

Norman Vine nhv at cape.com
Tue Oct 2 06:36:39 PDT 2007


Robert Osfield writes:
> 
> Hi Cygwin/ming users,
> 
> One open end on the Cygwin/Mingw I haved yet seen explain with enough
> clarity is the situation with build and runtime load of plugins under
> Cygwin and Mingw.  Does this currently work under Cmake build?  If not
> what issues do you see?
> 
> Originally the old GNUmakefile build system used build cygwin plugins
> with a cyg prefix, and mingw with a lib prefix, and src/Registry.cpp
> reflected this.  This odditity was done by Cygwin/Mingw OSG
> contributors I believe to be more in keeping with the Cygwin/Mingw
> "way" of doing things.
> 
> With the present CMake build system I'm not away of any prefix hacks
> for Cygwin or Mingw, but having not seen either build first hand and
> only had somewhat imprecise emails over the months to go on I really
> don't know what is happening.
> 
> My guess is that its build plugins like on other platforms - that is
> without the lib or cyg prefix.  If this is the case then we need to
> modify Registry.cpp to reflect this.  I have done this and the change
> is attached.  Could Cygwin and Mingw users please do a build and see
> how you get on.

Hi Robert

I don't currently have a MingW or Cygwin environment setup but ..

Looking at cmake-2.4.6\Modules\Platform\CYGWIN.cmake

SET(CMAKE_SHARED_LIBRARY_PREFIX "cyg")
SET(CMAKE_SHARED_LIBRARY_SUFFIX ".dll")
SET(CMAKE_SHARED_MODULE_PREFIX "lib")
SET(CMAKE_SHARED_MODULE_SUFFIX ".dll")
SET(CMAKE_IMPORT_LIBRARY_PREFIX "lib")
SET(CMAKE_IMPORT_LIBRARY_SUFFIX ".dll.a")

And 
Looking at at cmake-2.4.6\Modules\Platform\Windows-gcc.cmake  < MSYS >

SET(CMAKE_STATIC_LIBRARY_PREFIX "lib")
SET(CMAKE_STATIC_LIBRARY_SUFFIX ".a")
SET(CMAKE_SHARED_LIBRARY_PREFIX "lib")          # lib
SET(CMAKE_SHARED_LIBRARY_SUFFIX ".dll")          # .so
SET(CMAKE_SHARED_MODULE_PREFIX "lib")          # lib
SET(CMAKE_SHARED_MODULE_SUFFIX ".dll")          # .so
SET(CMAKE_IMPORT_LIBRARY_PREFIX "lib")
SET(CMAKE_IMPORT_LIBRARY_SUFFIX ".dll.a")

It appears as if Cmake is using the same conventions as our previous method

Note it it the "CMAKE_SHARED_LIBRARY_PREFIX" that is in question

Would still be good to have someone confirm this :-)

Cheers

Norman




More information about the osg-users mailing list