|
1 | | -cmake_minimum_required (VERSION 3.1) |
| 1 | +cmake_minimum_required(VERSION 3.9) |
| 2 | + |
| 3 | +if(DEFINED ENV{CC}) |
| 4 | + set(CC $ENV{CC}) |
| 5 | +else() |
| 6 | + set(CC gcc) |
| 7 | +endif() |
| 8 | +message("CC: ${CC}") |
| 9 | + |
| 10 | +set(CC_VERSION "") |
| 11 | +if(${CC} MATCHES ^gcc-) |
| 12 | + string(REGEX REPLACE "gcc-" "" CC_VERSION ${CC}) |
| 13 | +endif() |
| 14 | +message("CC version: ${CC_VERSION}") |
2 | 15 |
|
3 | 16 | enable_testing() |
4 | 17 |
|
5 | 18 | project (RapMap) |
6 | 19 |
|
7 | | -set(CPACK_PACKAGE_VERSION "0.6.0") |
8 | | -SET(CPACK_PACKAGE_VERSION_MAJOR "0") |
9 | | -set(CPACK_PACKAGE_VERSION_MINOR "6") |
10 | | -set(CPACK_PACKAGE_VERSION_PATCH "0") |
| 20 | +# auto-populate version: |
| 21 | +# from https://stackoverflow.com/questions/47066115/cmake-get-version-from-multi-line-text-file |
| 22 | +file(READ "current_version.txt" ver) |
| 23 | + |
| 24 | +string(REGEX MATCH "VERSION_MAJOR ([0-9]*)" _ ${ver}) |
| 25 | +set(ver_major ${CMAKE_MATCH_1}) |
| 26 | + |
| 27 | +string(REGEX MATCH "VERSION_MINOR ([0-9]*)" _ ${ver}) |
| 28 | +set(ver_minor ${CMAKE_MATCH_1}) |
| 29 | + |
| 30 | +string(REGEX MATCH "VERSION_PATCH ([0-9]*)" _ ${ver}) |
| 31 | +set(ver_patch ${CMAKE_MATCH_1}) |
| 32 | + |
| 33 | +set(CPACK_PACKAGE_VERSION_MAJOR ${ver_major}) |
| 34 | +set(CPACK_PACKAGE_VERSION_MINOR ${ver_minor}) |
| 35 | +set(CPACK_PACKAGE_VERSION_PATCH ${ver_patch}) |
| 36 | + |
| 37 | +set(CPACK_PACKAGE_VERSION "${ver_major}.${ver_minor}.${ver_patch}") |
| 38 | +message("version: ${CPACK_PACKAGE_VERSION}") |
| 39 | + |
11 | 40 | set(PROJECT_VERSION ${CPACK_PACKAGE_VERSION}) |
12 | 41 | set(CPACK_GENERATOR "TGZ") |
13 | 42 | set(CPACK_SOURCE_GENERATOR "TGZ") |
14 | 43 | set(CPACK_PACKAGE_VENDOR "Stony Brook University") |
15 | | -set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "RapMap - Wicked-fast quasi-mapping") |
| 44 | +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "rapmap - fast transcriptome mapping") |
16 | 45 | set(CPACK_PACKAGE_NAME |
17 | 46 | "${CMAKE_PROJECT_NAME}-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}") |
18 | 47 | set(CPACK_SOURCE_PACKAGE_FILE_NAME |
19 | 48 | "${CMAKE_PROJECT_NAME}-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}-Source") |
20 | 49 |
|
21 | 50 | set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/") |
22 | | -#include(FindSSE) |
23 | | -#FindSSE () |
24 | | -#if(SSE4_2_FOUND) |
25 | | -# message("Enabling popcount") |
26 | | -# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse4.2 -DEMPHF_USE_POPCOUNT") |
27 | | -#endif(SSE4_2_FOUND) |
| 51 | + |
| 52 | +# Set a default build type if none was specified |
| 53 | +set(default_build_type "Release") |
| 54 | + |
| 55 | +if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) |
| 56 | + message(STATUS "Setting build type to '${default_build_type}' as none was specified.") |
| 57 | + set(CMAKE_BUILD_TYPE "${default_build_type}" CACHE |
| 58 | + STRING "Choose the type of build." FORCE) |
| 59 | + # Set the possible values of build type for cmake-gui |
| 60 | + set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS |
| 61 | + "Debug" "Release") |
| 62 | +endif() |
| 63 | + |
| 64 | +include(CheckIPOSupported) |
28 | 65 |
|
29 | 66 | if (APPLE) |
30 | 67 | set (WARNING_IGNORE_FLAGS "-Wno-deprecated-register -Wno-unknon-pragmas -Wreturn-type -Werror=return-type") |
|
0 commit comments