-
Notifications
You must be signed in to change notification settings - Fork 2
/
CMakeLists.txt
61 lines (48 loc) · 1.76 KB
/
CMakeLists.txt
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
# CMakeList.txt : Main CMake file for CracklingPlusPlus
cmake_minimum_required (VERSION 3.8)
# Project name, version and description
project ("CracklingPlusPlus" LANGUAGES CXX C VERSION 1.0.0 DESCRIPTION "C++ version of Crackling" )
# Set CXX Standard for project
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# Optimisation flags
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g")
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3")
# Add library subdirectory
add_subdirectory (${CMAKE_SOURCE_DIR}/lib)
# Boost
find_package(Boost REQUIRED COMPONENTS regex iostreams)
# Add source to this project's executable.
add_executable (${PROJECT_NAME} ${CMAKE_SOURCE_DIR}/src/CracklingPlusPlus.cpp)
# Link Libraries to main executable
target_link_libraries (
${PROJECT_NAME}
PRIVATE Boost::dynamic_linking
PRIVATE Boost::boost
PRIVATE Boost::regex
PRIVATE Boost::iostreams
PRIVATE Logger
PRIVATE configParserModule
PRIVATE cas9InputModule
PRIVATE chopchopModule
PRIVATE mm10dbModule
PRIVATE sgrnascorer2Module
PRIVATE bowtie2Module
PRIVATE ISSLScoringModule
PRIVATE ISSLScoringModuleMMF
PRIVATE outputModule
)
# Added ISSLCreateIndex subdirectory
add_subdirectory (${CMAKE_SOURCE_DIR}/ISSLCreateIndex)
# Added ISSLScoreOfftargets subdirectory
add_subdirectory (${CMAKE_SOURCE_DIR}/ISSLScoreOfftargets)
# Added ISSLScoreOfftargetsMMF subdirectory
add_subdirectory (${CMAKE_SOURCE_DIR}/ISSLScoreOfftargetsMMF)
# Added ExtractOffTargets subdirectory
add_subdirectory (${CMAKE_SOURCE_DIR}/ExtractOfftargets)
# Add tests subdirectory
# add_subdirectory (${CMAKE_SOURCE_DIR}/tests)
# TODO: Sort out testing data in single location
# Copy testing data
file(COPY ${CMAKE_SOURCE_DIR}/tests/data/ DESTINATION data/)