From ff7360b5611ffe4fe03d34f650b10db56284df46 Mon Sep 17 00:00:00 2001 From: xantares Date: Sat, 10 May 2014 10:53:44 +0200 Subject: [PATCH] Parse configure.ac for lib version --- CMakeLists.txt | 34 ++++++++++++++++++++++++---------- 1 file changed, 24 insertions(+), 10 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6a29b59..49eabe4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -152,13 +152,27 @@ ENDIF(BUILD_SHARED_LIBS) INSTALL ( FILES ${NLOPT_HEADERS} DESTINATION include ) -ADD_LIBRARY (nlopt ${NLOPT_SOURCES} ) - -INSTALL ( TARGETS nlopt - RUNTIME DESTINATION bin - LIBRARY DESTINATION lib${LIB_SUFFIX} - ARCHIVE DESTINATION lib${LIB_SUFFIX} - ) - - - +ADD_LIBRARY (nlopt ${NLOPT_SOURCES} ) + +# parse configure.ac for lib version +STRING( REGEX MATCH "SHARED_VERSION_INFO=\"[0-9]+:[0-9]+:[0-9]+\"" NLOPT_VERSION_INFO_LINE "${CONFIG_AUTOMAKE}") +SET (NLOPT_INFO_SOVERSION 0) +IF (NLOPT_VERSION_INFO_LINE) + STRING( REGEX REPLACE "SHARED_VERSION_INFO=\"([0-9]+):([0-9]+):[0-9]+\"" "${NLOPT_INFO_SOVERSION}.\\1.\\2" NLOPT_INFO_VERSION "${NLOPT_VERSION_INFO_LINE}") +ENDIF () +SET_TARGET_PROPERTIES(nlopt PROPERTIES SOVERSION ${NLOPT_INFO_SOVERSION}) +IF (WIN32) + SET_TARGET_PROPERTIES(nlopt PROPERTIES SUFFIX -${NLOPT_INFO_SOVERSION}.dll) +ENDIF () +IF (NLOPT_INFO_VERSION) + SET_TARGET_PROPERTIES(nlopt PROPERTIES VERSION ${NLOPT_INFO_VERSION} ) +ENDIF () + +INSTALL ( TARGETS nlopt + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib${LIB_SUFFIX} + ARCHIVE DESTINATION lib${LIB_SUFFIX} + ) + + + -- 2.30.2