-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
40 lines (31 loc) · 1.58 KB
/
CMakeLists.txt
File metadata and controls
40 lines (31 loc) · 1.58 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
cmake_minimum_required(VERSION 4.0)
set(CMAKE_BUILD_TYPE Release)
set(CMAKE_CXX_STANDARD 23)
set(CMAKE_CUDA_COMPILER_FORCED On)
set(CMAKE_CUDA_ARCHITECTURES all-major)
project(AdventOfCode2025 CXX CUDA)
add_executable(day04 day04.cpp)
target_compile_options(day04 PRIVATE -acc -gpu:mem:separate)
target_link_options(day04 PRIVATE -acc -gpu:mem:separate)
add_executable(day07 day07.cpp)
target_compile_options(day07 PRIVATE -stdpar=gpu -gpu:mem:separate)
target_link_options(day07 PRIVATE -stdpar=gpu -gpu:mem:separate)
add_executable(day08 day08.cpp)
set_source_files_properties(day08.cpp PROPERTIES LANGUAGE CUDA)
set_target_properties(day08 PROPERTIES CUDA_SEPARABLE_COMPILATION On)
target_compile_options(day08 PRIVATE --extended-lambda)
target_link_options(day08 PRIVATE -L/opt/cuda/lib64)
add_executable(day09 day09.cpp)
target_compile_options(day09 PRIVATE -mp=gpu -gpu:mem:separate)
target_link_options(day09 PRIVATE -mp=gpu -gpu:mem:separate)
add_executable(day10 day10.cpp)
set_source_files_properties(day10.cpp PROPERTIES LANGUAGE CUDA)
set_target_properties(day10 PROPERTIES CUDA_SEPARABLE_COMPILATION On)
target_compile_options(day10 PRIVATE --extended-lambda -g)
target_link_options(day10 PRIVATE -L/opt/cuda/lib64)
add_executable(day11 day11.cpp)
target_compile_options(day11 PRIVATE --experimental-stdpar -stdpar=gpu -gpu:mem:separate)
target_link_options(day11 PRIVATE --experimental-stdpar -stdpar=gpu -gpu:mem:separate)
add_executable(day12 day12.cpp)
target_compile_options(day12 PRIVATE -stdpar=gpu -acc -gpu:mem:separate)
target_link_options(day12 PRIVATE -stdpar=gpu -acc -gpu:mem:separate)