-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathCMakeLists.txt
29 lines (24 loc) · 1.23 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
cmake_minimum_required (VERSION 3.0)
project(CQOI VERSION 0.0.0.1)
set (CMAKE_CXX_STANDARD 17)
set (CMAKE_CXX_STANDARD_REQUIRED ON)
set (CMAKE_CXX_FLAGS "-g -O3")
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
set(LIB_DIR "lib64")
elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
set(LIB_DIR "lib")
else ()
message(FATAL_ERROR "Unsupported operating system: ${CMAKE_SYSTEM_NAME}")
endif ()
find_package(ADIOS2 REQUIRED HINTS "${CMAKE_CURRENT_SOURCE_DIR}/external/ADIOS2/adios2-install/${LIB_DIR}/cmake/adios2")
find_library(ZSTD_LIB zstd HINTS "${CMAKE_CURRENT_SOURCE_DIR}/external/SZ/install/${LIB_DIR}")
find_library(SZ3_LIB SZ3c HINTS "${CMAKE_CURRENT_SOURCE_DIR}/external/SZ3/install/lib")
set (ZSTD_INCLUDES "${CMAKE_CURRENT_SOURCE_DIR}/external/SZ3/tools/zstd")
set (SZ3_INCLUDES "${CMAKE_CURRENT_SOURCE_DIR}/external/SZ3/install/include")
set (MGARDx_INCLUDES "${CMAKE_CURRENT_SOURCE_DIR}/external/MGARDx/install/include")
add_library(${PROJECT_NAME} INTERFACE)
target_include_directories(${PROJECT_NAME} INTERFACE include ${SZ3_INCLUDES} ${ZSTD_INCLUDES})
target_link_libraries(${PROJECT_NAME} INTERFACE ${ZSTD_LIB} ${SZ3_LIB})
install(DIRECTORY ${PROJECT_SOURCE_DIR}/include/ DESTINATION include)
add_subdirectory(test)
add_subdirectory(app)