dear Michael,
I was expecting something like that but as I am not very familiar with
building libraries on windows, I was not sure wether I was right or
wrong. Thank you very much,
Best regards,
Julien
Michael Jackson a écrit :
Julien,
Funny. I wrote that wiki entry and it was a bit different when I first
wrote it but after some feedback I changed the code slightly and
looking back at the code I don't think it would work correctly for the
static case.
Like Werner I actually use a second definition in my code:
#if defined (_WIN32) && defined (BUILT_AS_DYNAMIC_LIB)
#if defined(MyLibrary_EXPORTS)
#define MYLIB_EXPORT __declspec(dllexport)
#else
#define MYLIB_EXPORT __declspec(dllimport)
#endif /* MyLibrary_EXPORTS */
#else /* defined (_WIN32) */
#define MYLIB_EXPORT
#endif
#endif /* _MyLibrary_DLLDEFINES_H_ */
Then in the cmake code you do something like:
# Allow the developer to select if Dynamic or Static libraries are built
OPTION (BUILD_SHARED_LIBS "Build Shared Libraries" OFF)
# Set the LIB_TYPE variable to STATIC
SET (LIB_TYPE STATIC)
IF (BUILD_SHARED_LIBS)
# User wants to build Dynamic Libraries, so change the LIB_TYPE
variable to CMake keyword 'SHARED'
ADD_DEFINITIONS(-DBUILD_AS_DYNAMIC_LIBRARY)
SET (LIB_TYPE SHARED)
ENDIF (BUILD_SHARED_LIBS)
Which should help take care of that case for you.
Mike
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Julien MICHEL - Ingénieur d'études - Traitement d'images
CS Systèmes d'Information - Division ESPACE
Département Information Géographique & Image
Téléphone : +33 561 17 64 27
Email : [EMAIL PROTECTED]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake