diff --git a/CMakeLists.txt b/CMakeLists.txt index 7b313a6..fa57217 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,116 +1,116 @@ project(AtCore) # 3.0 is needed to support CMAKE_AUTOUIC cmake_minimum_required(VERSION 3.0) find_package(ECM REQUIRED NO_MODULE) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH}) include(KDECompilerSettings NO_POLICY_SCOPE) include(KDEInstallDirs) include(KDECMakeSettings) include(ECMInstallIcons) include(FeatureSummary) include(GenerateExportHeader) include(ECMSetupVersion) include(CMakePackageConfigHelpers) include(ECMGenerateHeaders) option(BUILD_GUI "Build the Test Gui") option(BUILD_DOCS "Build and Install Documents (Requires Doxygen)") option(BUILD_TESTS "Build and Run Unittests") set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra modules and scripts for CMake" URL "git://anongit.kde.org/extra-cmake-modules") set(PROJECT_VERSION "1.0.70") set(KF5_DEP_VERSION "5.24.0") # handled by release scripts set(REQUIRED_QT_VERSION 5.4.0) IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.git) FIND_PACKAGE(Git) IF(GIT_FOUND) EXECUTE_PROCESS( COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" OUTPUT_VARIABLE "GIT_VERSION" ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) MESSAGE( STATUS "Git Commit: ${GIT_VERSION}" ) add_definitions( -DGIT_REVISION="${GIT_VERSION}") ENDIF(GIT_FOUND) ENDIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.git) add_definitions(-DQT_NO_CAST_FROM_ASCII -DQT_NO_URL_CAST_FROM_STRING) find_package(Qt5 REQUIRED COMPONENTS Core SerialPort ) include(ECMPoQmTools) ecm_setup_version(${PROJECT_VERSION} VARIABLE_PREFIX ATCORE VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/atcore_version.h" PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/AtCoreConfigVersion.cmake" SOVERSION ${PROJECT_VERSION_MAJOR} ) if (IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/po") ecm_install_po_files_as_qm(po) endif() if(APPLE) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++ -std=c++11") endif() if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUXX) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 ") endif() include_directories(${CMAKE_CURRENT_BINARY_DIR}) set(CMAKE_AUTOMOC ON) add_subdirectory(src) #optional Parts. if(BUILD_GUI) add_subdirectory(testclient) endif() if (BUILD_TESTS) add_subdirectory(unittests) endif() if (BUILD_DOCS) add_subdirectory(doc) endif() set(CMAKECONFIG_INSTALL_DIR "${CMAKECONFIG_INSTALL_PREFIX}/AtCore") configure_package_config_file("${CMAKE_CURRENT_SOURCE_DIR}/AtCoreConfig.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/AtCoreConfig.cmake" INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR} ) install(FILES "${CMAKE_CURRENT_BINARY_DIR}/AtCoreConfig.cmake" "${CMAKE_CURRENT_BINARY_DIR}/AtCoreConfigVersion.cmake" DESTINATION "${CMAKECONFIG_INSTALL_DIR}" COMPONENT Devel ) install(EXPORT AtCoreTargets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" FILE AtCoreTargets.cmake NAMESPACE AtCore:: COMPONENT Devel ) install(FILES "${CMAKE_CURRENT_BINARY_DIR}/atcore_version.h" - DESTINATION "${CMAKE_INSTALL_PREFIX}/include/AtCore/AtCore" + DESTINATION "${CMAKE_INSTALL_PREFIX}/include/AtCore/" COMPONENT Devel ) feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES) diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt index c5e83dc..ce7dbcc 100644 --- a/doc/CMakeLists.txt +++ b/doc/CMakeLists.txt @@ -1,14 +1,14 @@ find_package(Doxygen REQUIRED) set(DOXYGEN_PROJECT_NUMBER "${PROJECT_VERSION}") set(DOXYGEN_IN ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in) set(DOXYGEN_OUT ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile) configure_file(${DOXYGEN_IN} ${DOXYGEN_OUT} @ONLY) add_custom_target(doc ALL COMMAND ${DOXYGEN_EXECUTABLE} "${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile" WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} COMMENT "Building user's documentation into doxyDoc build dir..." ) -install (DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/doc/html" DESTINATION share/doc/atcore ) +install (DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/doc/html" DESTINATION share/doc/AtCore ) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 4f2bc46..510d82e 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,63 +1,62 @@ add_subdirectory(plugins) configure_file( atcore_default_folders.h.in ${CMAKE_CURRENT_BINARY_DIR}/atcore_default_folders.h ) set(AtCoreLib_SRCS atcore.cpp seriallayer.cpp gcodecommands.cpp ifirmware.cpp temperature.cpp printthread.cpp ) add_library(AtCore SHARED ${AtCoreLib_SRCS}) target_link_libraries(AtCore Qt5::Core Qt5::SerialPort) generate_export_header(AtCore BASE_NAME atcore) add_library(AtCore::AtCore ALIAS AtCore) target_include_directories(AtCore INTERFACE "$") set_target_properties(AtCore PROPERTIES VERSION ${ATCORE_VERSION_STRING} SOVERSION ${ATCORE_SOVERSION} EXPORT_NAME AtCore ) ecm_generate_headers(ATCORE_CamelCase_HEADERS HEADER_NAMES AtCore GCodeCommands IFirmware SerialLayer Temperature - PREFIX AtCore REQUIRED_HEADERS ATCORE_HEADERS ) ecm_create_qm_loader(AtCoreLib_SRCS atcore_qt) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/atcore_export.h - DESTINATION ${KDE_INSTALL_INCLUDEDIR}/AtCore/AtCore COMPONENT Devel + DESTINATION ${KDE_INSTALL_INCLUDEDIR}/AtCore COMPONENT Devel ) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/atcore_default_folders.h ${ATCORE_HEADERS} - DESTINATION ${KDE_INSTALL_INCLUDEDIR}/AtCore/atcore COMPONENT Devel + DESTINATION ${KDE_INSTALL_INCLUDEDIR}/AtCore COMPONENT Devel ) install(FILES ${ATCORE_CamelCase_HEADERS} - DESTINATION ${KDE_INSTALL_INCLUDEDIR}/AtCore/AtCore + DESTINATION ${KDE_INSTALL_INCLUDEDIR}/AtCore ) install(TARGETS AtCore EXPORT AtCoreTargets ${KF5_INSTALL_TARGETS_DEFAULT_ARGS}) include(ECMGeneratePriFile) ecm_generate_pri_file(BASE_NAME AtCore LIB_NAME AtCore DEPS "Qt5Core Qt5SerialPort" FILENAME_VAR PRI_FILENAME INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/include/AtCore) install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR})