-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
27 lines (20 loc) · 755 Bytes
/
CMakeLists.txt
File metadata and controls
27 lines (20 loc) · 755 Bytes
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
cmake_minimum_required(VERSION 3.10)
project(rayout LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(OpenMP REQUIRED)
set(CMAKE_CXX_FLAGS_DEBUG "-g -O0 -Wall -Wextra")
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -march=native -DNDEBUG")
set(CMAKE_CXX_FLAGS_PROFILE "-O3 -g -pg -march=native")
set(CMAKE_EXE_LINKER_FLAGS_PROFILE "-pg")
add_executable(rayfloat src/main.cpp)
target_include_directories(rayfloat PRIVATE include)
if(OpenMP_CXX_FOUND)
target_link_libraries(rayfloat PUBLIC OpenMP::OpenMP_CXX)
endif()
add_custom_target(analyze
COMMAND ./rayfloat > /dev/null
COMMAND gprof ./rayfloat gmon.out > analysis.txt
DEPENDS rayfloat
COMMENT "Running rayfloat and generating gprof analysis..."
)