-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
70 lines (55 loc) · 1.74 KB
/
CMakeLists.txt
File metadata and controls
70 lines (55 loc) · 1.74 KB
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
cmake_minimum_required (VERSION 3.9)
project(hyperbolic_codes)
set(CMAKE_BUILD_TYPE Debug)
set(CMAKE_BUILD_TYPE RelWithDebInfo)
set(CMAKE_CXX_FLAGS_DEBUG "-DDEBUG")
# ================ compiler
set(CMAKE_CXX_FLAGS "-std=c++11")
# ================ IMPORT THE AUTOTUNE LINK_LIBRARIES
# === IMPORTANT: AUTOTUNE MUST BE COMPLETELY COMPILED!!
# === CHANGE THE DIRECTORY VARIABLE TO THE AUTOTUNE FOLDER
set(AUTOTUNE_DIR "${PROJECT_SOURCE_DIR}/../autotune")
set(BLOSSOM_DIR "${PROJECT_SOURCE_DIR}/../autotune/blossomv")
# autotune include directory
include_directories(${AUTOTUNE_DIR}/libautotune/src/)
# add autotune link library
ADD_LIBRARY(autotune STATIC IMPORTED)
SET_TARGET_PROPERTIES(autotune PROPERTIES IMPORTED_LOCATION ${AUTOTUNE_DIR}/libautotune/lib/libautotune.a)
# add blossom object files
FILE(GLOB BLOSSOM_PM ${BLOSSOM_DIR}/PM*.o)
SET_SOURCE_FILES_PROPERTIES(
${BLOSSOM_PM}
PROPERTIES
EXTERNAL_OBJECT true
GENERATED true
)
FILE(GLOB BLOSSOM_MISC ${BLOSSOM_DIR}/misc.o)
SET_SOURCE_FILES_PROPERTIES(
${BLOSSOM_MISC}
PROPERTIES
EXTERNAL_OBJECT true
GENERATED true
)
FILE(GLOB BLOSSOM_MIN_COST ${BLOSSOM_DIR}/MinCost/MinCost.o)
SET_SOURCE_FILES_PROPERTIES(
${BLOSSOM_MIN_COST}
PROPERTIES
EXTERNAL_OBJECT true
GENERATED true
)
FILE(GLOB BLOSSOM_GEOM ${BLOSSOM_DIR}/GEOM/*.o)
SET_SOURCE_FILES_PROPERTIES(
${BLOSSOM_GEOM}
PROPERTIES
EXTERNAL_OBJECT true
GENERATED true
)
# define autotune error model folder (preprocessor variable)
add_definitions(-DEMS_DIR="${AUTOTUNE_DIR}/ex/ems/" )
# ================ include dirs
include_directories(include)
# ================ sub dirs
add_subdirectory(src)
# ================ testing
enable_testing()
add_subdirectory(Tests)