From 65797ee4f157a893d9dd23525e87cc4ef2fc6ce0 Mon Sep 17 00:00:00 2001 From: Přemysl Eric Janouch Date: Mon, 26 Oct 2020 13:52:55 +0100 Subject: Bump minimum CMake version to 3.0 A nice, round number. This allows us to remove some boilerplate. --- CMakeLists.txt | 31 ++++++++++--------------------- README.adoc | 2 +- termo-config.h.in | 4 ++-- 3 files changed, 13 insertions(+), 24 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 4da6692..40f8ec7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,5 @@ -project (termo C) -cmake_minimum_required (VERSION 2.8.5) +cmake_minimum_required (VERSION 3.0) +project (termo VERSION 0.1.0 LANGUAGES C) if ("${CMAKE_C_COMPILER_ID}" MATCHES "GNU" OR CMAKE_COMPILER_IS_GNUCC) set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99") @@ -7,15 +7,7 @@ if ("${CMAKE_C_COMPILER_ID}" MATCHES "GNU" OR CMAKE_COMPILER_IS_GNUCC) endif ("${CMAKE_C_COMPILER_ID}" MATCHES "GNU" OR CMAKE_COMPILER_IS_GNUCC) # Version -set (project_VERSION_MAJOR 0) -set (project_VERSION_MINOR 1) -set (project_VERSION_PATCH 0) - -set (project_VERSION ${project_VERSION_MAJOR}) -set (project_VERSION ${project_VERSION}.${project_VERSION_MINOR}) -set (project_VERSION ${project_VERSION}.${project_VERSION_PATCH}) - -set (project_API_VERSION ${project_VERSION_MAJOR}) +set (project_API_VERSION ${PROJECT_VERSION_MAJOR}) # Names set (project_LIB_NAME "termo-${project_API_VERSION}") @@ -73,14 +65,14 @@ add_library (termo SHARED ${lib_sources} ${lib_headers}) target_link_libraries (termo ${lib_libraries}) set_target_properties (termo PROPERTIES OUTPUT_NAME ${project_LIB_NAME} - VERSION ${project_VERSION} + VERSION ${PROJECT_VERSION} SOVERSION ${project_API_VERSION}) add_library (termo-static STATIC ${lib_sources} ${lib_headers}) target_link_libraries (termo-static ${lib_libraries}) set_target_properties (termo-static PROPERTIES OUTPUT_NAME ${project_LIB_NAME} - VERSION ${project_VERSION} + VERSION ${PROJECT_VERSION} SOVERSION ${project_API_VERSION}) # A fix for: relocation R_X86_64_32 against `a local symbol' can not be @@ -127,7 +119,7 @@ configure_file (config-version.cmake.in install (FILES ${PROJECT_BINARY_DIR}/${PROJECT_NAME}-config.cmake ${PROJECT_BINARY_DIR}/${PROJECT_NAME}-config-version.cmake - DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}-${project_VERSION}) + DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}-${PROJECT_VERSION}) # Do some unit tests option (BUILD_TESTING "Build tests" OFF) @@ -165,7 +157,7 @@ endif (BUILD_TESTING) file (WRITE "${PROJECT_BINARY_DIR}/${PROJECT_NAME}.pc" "Name: ${PROJECT_NAME}\n" "Description: Terminal key input library\n" - "Version: ${project_VERSION}\n" + "Version: ${PROJECT_VERSION}\n" "Libs: -L${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR} -l${project_LIB_NAME}\n" "Libs.private: ${lib_libraries}\n" "Cflags: -I${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}/${project_INCLUDE_NAME}\n") @@ -177,15 +169,12 @@ set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "Terminal key input library") set (CPACK_PACKAGE_VENDOR "Premysl Eric Janouch") set (CPACK_PACKAGE_CONTACT "Přemysl Eric Janouch ") set (CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE") -set (CPACK_PACKAGE_VERSION_MAJOR ${project_VERSION_MAJOR}) -set (CPACK_PACKAGE_VERSION_MINOR ${project_VERSION_MINOR}) -set (CPACK_PACKAGE_VERSION_PATCH ${project_VERSION_PATCH}) set (CPACK_GENERATOR "TGZ;ZIP") set (CPACK_PACKAGE_FILE_NAME - "${CMAKE_PROJECT_NAME}-${project_VERSION}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}") -set (CPACK_PACKAGE_INSTALL_DIRECTORY "${CMAKE_PROJECT_NAME}-${project_VERSION}") + "${CMAKE_PROJECT_NAME}-${PROJECT_VERSION}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}") +set (CPACK_PACKAGE_INSTALL_DIRECTORY "${CMAKE_PROJECT_NAME}-${PROJECT_VERSION}") set (CPACK_SOURCE_GENERATOR "TGZ;ZIP") set (CPACK_SOURCE_IGNORE_FILES "/\\\\.git;/build;/CMakeLists.txt.user") -set (CPACK_SOURCE_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${project_VERSION}") +set (CPACK_SOURCE_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${PROJECT_VERSION}") include (CPack) diff --git a/README.adoc b/README.adoc index be13d26..83bbcad 100644 --- a/README.adoc +++ b/README.adoc @@ -15,7 +15,7 @@ The API isn't stable yet. Tell me what needs to be done so I can fix it first. Building and Installing ----------------------- -Build dependencies: cmake >= 2.8.5, pkg-config + +Build dependencies: cmake >= 3.0, pkg-config + Optional dependencies: Unibilium (alternative for curses), GLib (for the demos) $ git clone https://git.janouch.name/p/termo.git diff --git a/termo-config.h.in b/termo-config.h.in index 780927a..568c0b6 100644 --- a/termo-config.h.in +++ b/termo-config.h.in @@ -1,8 +1,8 @@ #ifndef TERMO_CONFIG_H #define TERMO_CONFIG_H -#define TERMO_VERSION_MAJOR @project_VERSION_MAJOR@ -#define TERMO_VERSION_MINOR @project_VERSION_MINOR@ +#define TERMO_VERSION_MAJOR @PROJECT_VERSION_MAJOR@ +#define TERMO_VERSION_MINOR @PROJECT_VERSION_MINOR@ #endif // ! TERMO_CONFIG_H -- cgit v1.2.3-70-g09d2