if(NOT DEFINED CMAKE_MINIMUM_REQUIRED_VERSION) cmake_minimum_required(VERSION 2.8.7) endif() if(NOT GETOPT_NAMESPACE) set(GETOPT_NAMESPACE "GETOPT") set(GETOPT_STANDALONE 1) endif() # In all cases: string(TOLOWER ${GETOPT_NAMESPACE} GETOPT_LIBRARY_NAME) project(${GETOPT_NAMESPACE} C) #set(BUILD_SHARED_LIBS OFF) set(GETOPT_SRCS getopt.c getopt_long.c ) if(WIN32) if (BUILD_SHARED_LIBS) add_definitions(-DGETOPT_DLL) endif () endif() #include_directories(BEFORE # ${CMAKE_CURRENT_SOURCE_DIR} # ) set(GETOPT_MAJOR_VERSION 1) set(GETOPT_MINOR_VERSION 0) set(GETOPT_BUILD_VERSION 0) set(GETOPT_VERSION "${GETOPT_MAJOR_VERSION}.${GETOPT_MINOR_VERSION}.${GETOPT_BUILD_VERSION}") set(GETOPT_LIBRARY_PROPERTIES ${GETOPT_LIBRARY_PROPERTIES} VERSION "${GETOPT_VERSION}" SOVERSION "${GETOPT_MAJOR_VERSION}.${GETOPT_MINOR_VERSION}" ) # Only build this lib static. On most unix system # we will be using the standart getopt # so this lib will be for the poor Win32 user (those # guys really need help) add_library(${GETOPT_LIBRARY_NAME} ${GETOPT_SRCS}) set_target_properties(${GETOPT_LIBRARY_NAME} PROPERTIES ${GETOPT_LIBRARY_PROPERTIES}) if(CMAKE_COMPILER_IS_GNUCXX AND MINGW) # For some reason mingw fails to export the optind which is clearly marked as exported (using extern symbol) # ... for now use this flag : set_target_properties(${GETOPT_LIBRARY_NAME} PROPERTIES LINK_FLAGS "-Wl,--export-all-symbols") endif() #if(BUILD_EXAMPLES) #if(GDCM_BUILD_TESTING) #add_executable(ex_getopt ex_getopt.c) #target_link_libraries(ex_getopt ${GETOPT_LIBRARY_NAME}) #if(NOT GETOPT_INSTALL_NO_LIBRARIES) # install(TARGETS ex_getopt # RUNTIME DESTINATION ${GETOPT_INSTALL_BIN_DIR} COMPONENT Applications # LIBRARY DESTINATION ${GETOPT_INSTALL_LIB_DIR} COMPONENT Libraries # ARCHIVE DESTINATION ${GETOPT_INSTALL_LIB_DIR} COMPONENT DebugDevel # ${CPACK_NAMELINK_TYPE} # ) #endif() #endif() #endif() if(NOT GETOPT_INSTALL_NO_LIBRARIES) install(TARGETS ${GETOPT_LIBRARY_NAME} EXPORT ${GDCM_TARGETS_NAME} RUNTIME DESTINATION ${GETOPT_INSTALL_BIN_DIR} COMPONENT Applications LIBRARY DESTINATION ${GETOPT_INSTALL_LIB_DIR} COMPONENT Libraries #${NAMELINK_SKIP} ARCHIVE DESTINATION ${GETOPT_INSTALL_LIB_DIR} COMPONENT DebugDevel ) #if(NAMELINK_ONLY) # install(TARGETS ${GETOPT_LIBRARY_NAME} # LIBRARY DESTINATION ${GETOPT_INSTALL_LIB_DIR} COMPONENT DebugDevel ${NAMELINK_ONLY} # ) #endif() endif()