### CONFIGURE ################################################################## set(LIBCHOOSER_BIN_PATH "/var/opt/openslx/bin") set(LIBCHOOSER_ETC_BASE_PATH "/etc/vmchooser") set(LIBCHOOSER_VMPATH "/var/lib/virt") set(LIBCHOOSER_X_SESSIONS_PATH "/usr/share/xsessions") configure_file("Version.h.in" "Version.h") configure_file("libChooser.pc.in" "libChooser.pc") configure_file("Config.h.in" "Config.h") ### INCLUDES ################################################################### include_directories("/usr/include" "${CMAKE_CURRENT_BINARY_DIR}") set(QT_USE_QTXML TRUE) include(${QT_USE_FILE}) set(LCHOOSER_HEADERS "Session.h" "VSession.h" "VSessionHandler.h" "XSession.h" "XSessionHandler.h") set(LCHOOSER_SOURCES "VSession.cpp" "VSessionHandler.cpp" "XSession.cpp" "XSessionHandler.cpp") set(LCHOOSER_CONFIG_HEADERS "Version.h" "Config.h") ### BUILD ###################################################################### add_library (Chooser_static STATIC ${LCHOOSER_SOURCES} ${LCHOOSER_MOC_SOURCES} ${LCHOOSER_HEADERS} ${LCHOOSER_MOC_HEADERS} ${LCHOOSER_CONFIG_HEADERS}) set_target_properties (Chooser_static PROPERTIES OUTPUT_NAME Chooser) add_library (Chooser_shared SHARED ${LCHOOSER_SOURCES} ${LCHOOSER_MOC_SOURCES} ${LCHOOSER_HEADERS} ${LCHOOSER_MOC_HEADERS} ${LCHOOSER_CONFIG_HEADERS}) target_link_libraries(Chooser_shared ${QT_LIBRARIES}) set_target_properties (Chooser_shared PROPERTIES OUTPUT_NAME Chooser) ### INSTALL #################################################################### install(TARGETS Chooser_static Chooser_shared LIBRARY DESTINATION lib COMPONENT libs ARCHIVE DESTINATION lib COMPONENT libs ) install(FILES ${LCHOOSER_MOC_HEADERS} ${LCHOOSER_HEADERS} DESTINATION include/libChooser COMPONENT dev ) install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libChooser.pc" DESTINATION "share/pkgconfig" COMPONENT libs ) ### BUILD PACKAGE ############################################################## set(CPACK_COMPONENTS_ALL libs dev) set(CPACK_COMPONENT_LIBS_DISPLAY_NAME "libChooser") set(CPACK_COMPONENT_DEV_DISPLAY_NAME "libChooser-dev") set(CPACK_COMPONENT_LIBS_DESCRIPTION "libChooser") set(CPACK_COMPONENT_DEV_DESCRIPTION "libChooser development headers") set(CPACK_COMPONENT_LIBS_GROUP "core") set(CPACK_COMPONENT_DEV_GROUP "dev") set(CPACK_COMPONENT_DEV_DEPENDS libs) execute_process(COMMAND lsb_release -cs OUTPUT_VARIABLE distro_shortname OUTPUT_STRIP_TRAILING_WHITESPACE) execute_process(COMMAND dpkg --print-architecture OUTPUT_VARIABLE distro_arch OUTPUT_STRIP_TRAILING_WHITESPACE) set(CPACK_PACKAGING_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") set(CPACK_GENERATOR "DEB") set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Sebastian Schmelzer ") set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Library for vmchooser and emuchooser..") set(CPACK_PACKAGE_DESCRIPTION "Library for vmchooser and emuchooser..") set(CPACK_PACKAGE_VERSION "${libChooser_VERSION_MAJOR}.${libChooser_VERSION_MINOR}.${libChooser_VERSION_PATCH}") set(CPACK_DEBIAN_PACKAGE_DEPENDS "libqtcore4") set(CPACK_DEBIAN_PACKAGE_SECTION "misc") set(CPACK_DEBIAN_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION}") set(CPACK_PACKAGE_NAME "libChooser") set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "${distro_arch}") set(CPACK_PACKAGE_FILE_NAME "libChooser_${CPACK_PACKAGE_VERSION}_${distro_shortname}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}") set(CPACK_SOURCE_PACKAGE_FILE_NAME "libChooser_${CPACK_PACKAGE_VERSION}") INCLUDE(CPack) ################################################################################