# Creates and installs a library # Uses CREA_MANAGE_SHARED_LIBRARY and CREA_INSTALL_LIBRARY # hence the variables to be set for these are needed # Additionnaly one needs to set : # ${LIBRARY_NAME}_HEADERS : the list of headers to install # ${LIBRARY_NAME}_SOURCES : the list of files to compile to build the lib # ${LIBRARY_NAME}_LINK_LIBRARIES : the list of libs to link with MACRO(CREA_ADD_LIBRARY LIBRARY_NAME) IF(CREA_VERBOSE_CMAKE) MESSAGE(STATUS "** Creating library ${LIBRARY_NAME}") MESSAGE(STATUS " Headers : ${${LIBRARY_NAME}_HEADERS}") MESSAGE(STATUS " Sources : ${${LIBRARY_NAME}_SOURCES}") MESSAGE(STATUS " Link libs: ${${LIBRARY_NAME}_LINK_LIBRARIES}") ENDIF(CREA_VERBOSE_CMAKE) # MANAGE SHARED LIB CREA_MANAGE_SHARED_LIBRARY(${LIBRARY_NAME}) # CREATE THE TARGET ADD_LIBRARY(${LIBRARY_NAME} ${${LIBRARY_NAME}_SHARED} ${${LIBRARY_NAME}_SOURCES}) # LINK TARGET_LINK_LIBRARIES(${LIBRARY_NAME} ${${LIBRARY_NAME}_LINK_LIBRARIES}) # INSTALLS LIBRARY FOR CMAKE CREA_INSTALL_LIBRARY_FOR_CMAKE(${LIBRARY_NAME}) # INSTALLS LIBRARY INSTALL( FILES ${${LIBRARY_NAME}_HEADERS} DESTINATION ${${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_INCLUDE_PATHS} ) INSTALL( TARGETS ${LIBRARY_NAME} DESTINATION bin) ENDMACRO(CREA_ADD_LIBRARY)