1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
|
project(DiscoSNP++)
cmake_minimum_required(VERSION 2.6)
#add_compile_options(
# "-Wall" "-Wpedantic" "-Wextra" "-fexceptions"
# "$<$<CONFIG:DEBUG>:-O0;-g3;-ggdb>"
#)
################################################################################
# The version number.
################################################################################
SET (gatb-tool_VERSION_MAJOR 2)
SET (gatb-tool_VERSION_MINOR 6)
SET (gatb-tool_VERSION_PATCH 1)
IF (DEFINED MAJOR)
SET (gatb-tool_VERSION_MAJOR ${MAJOR})
ENDIF()
IF (DEFINED MINOR)
SET (gatb-tool_VERSION_MINOR ${MINOR})
ENDIF()
IF (DEFINED PATCH)
SET (gatb-tool_VERSION_PATCH ${PATCH})
ENDIF()
set (gatb-tool-version ${gatb-tool_VERSION_MAJOR}.${gatb-tool_VERSION_MINOR}.${gatb-tool_VERSION_PATCH})
# However, continuous integration has priority over local compilation
IF (DEFINED JENKINS_TAG)
SET (gatb-tool-version ${JENKINS_TAG})
ENDIF()
################################################################################
# Define cmake modules directory
################################################################################
include(GNUInstallDirs)
SET (CMAKE_MODULE_PATH /usr/${CMAKE_INSTALL_LIBDIR}/cmake)
################################################################################
# THIRD PARTIES
################################################################################
# We don't want to install some GATB-CORE artifacts
SET (GATB_CORE_EXCLUDE_TESTS 1)
SET (GATB_CORE_EXCLUDE_EXAMPLES 1)
################################################################################
# TOOLS GENERATION
################################################################################
SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/bin)
set(PROJECT_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/bin)
#set(PROJECT_BINARY_DIR bin)
ADD_SUBDIRECTORY(tools)
################################################################################
# PACKAGING
################################################################################
SET (CPACK_PACKAGE_DESCRIPTION_SUMMARY "gatb-tool ${PROJECT_NAME}")
SET (CPACK_PACKAGE_VENDOR "Genscale team (INRIA)")
SET (CPACK_PACKAGE_VERSION_MAJOR "${gatb-tool_VERSION_MAJOR}")
SET (CPACK_PACKAGE_VERSION_MINOR "${gatb-tool_VERSION_MINOR}")
SET (CPACK_PACKAGE_VERSION_PATCH "${gatb-tool_VERSION_PATCH}")
SET (CPACK_PACKAGE_VERSION "${gatb-tool-version}")
# We chose the kind of archive we want to generate
SET (CPACK_GENERATOR "TGZ")
SET (CPACK_SOURCE_GENERATOR "TGZ")
# We ignore unwanted files for the source archive
SET (CPACK_SOURCE_IGNORE_FILES
"^${PROJECT_SOURCE_DIR}/\\.git/" ;
"^${PROJECT_SOURCE_DIR}/\\.gitmodules" ;
"^${PROJECT_SOURCE_DIR}/\\.gitignore" ;
"^${PROJECT_SOURCE_DIR}/build/" ;
"^${GATB_CORE_HOME}/\\.cproject" ;
"^${GATB_CORE_HOME}/\\.git/" ;
"^${GATB_CORE_HOME}/\\.project" ;
"^${GATB_CORE_HOME}/\\.gitignore"
)
# For creating the BINARY package we include the files we want
#INSTALL (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/discoSnpRAD DESTINATION .)
#INSTALL (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/doc DESTINATION .)
#INSTALL (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/test DESTINATION .)
#INSTALL (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/scripts DESTINATION . FILES_MATCHING REGEX ".*\\.(py|sh)$" PATTERN "jenkins" EXCLUDE)
#INSTALL (FILES ${CMAKE_CURRENT_SOURCE_DIR}/run_discoSnp++.sh DESTINATION .)
#INSTALL (FILES ${CMAKE_CURRENT_SOURCE_DIR}/README.md DESTINATION .)
#INSTALL (FILES ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE DESTINATION .)
# We include the "bin" tag into binary archive file name
set (CPACK_PACKAGE_FILE_NAME ${PROJECT_NAME}-${CPACK_PACKAGE_VERSION}-bin-${CMAKE_SYSTEM_NAME})
# To be done at the end.
INCLUDE (CPack)
|