2023-12-01 01:20:50 +02:00
|
|
|
cmake_minimum_required(VERSION 3.26)
|
|
|
|
|
|
|
|
project(aoc2023 CXX)
|
|
|
|
|
|
|
|
set(AOC2023_PROJECTS
|
|
|
|
day1
|
2023-12-03 17:07:09 +02:00
|
|
|
day2
|
|
|
|
day3
|
2023-12-04 17:51:27 +02:00
|
|
|
day4
|
2023-12-05 09:13:13 +02:00
|
|
|
day5
|
2023-12-06 07:27:25 +02:00
|
|
|
day6
|
2023-12-07 07:56:56 +02:00
|
|
|
day7
|
2023-12-08 17:13:20 +02:00
|
|
|
day8
|
2023-12-09 16:22:43 +02:00
|
|
|
day9
|
2023-12-10 18:28:04 +02:00
|
|
|
day10
|
2023-12-11 14:34:31 +02:00
|
|
|
day11
|
2023-12-14 10:51:48 +02:00
|
|
|
day12
|
2023-12-19 01:25:23 +02:00
|
|
|
day13
|
2023-12-19 02:49:10 +02:00
|
|
|
day14
|
2023-12-19 11:27:28 +02:00
|
|
|
day15
|
2023-12-19 22:22:16 +02:00
|
|
|
day16
|
2023-12-23 18:46:43 +02:00
|
|
|
day17
|
2023-12-23 18:47:21 +02:00
|
|
|
day18
|
2023-12-23 18:47:44 +02:00
|
|
|
day19
|
2023-12-24 13:39:26 +02:00
|
|
|
day20
|
2023-12-24 14:58:21 +02:00
|
|
|
day21
|
2023-12-26 00:56:35 +02:00
|
|
|
day23
|
2023-12-26 14:10:49 +02:00
|
|
|
day24
|
2023-12-26 20:04:42 +02:00
|
|
|
day25
|
2023-12-23 18:45:40 +02:00
|
|
|
full
|
2023-12-01 01:20:50 +02:00
|
|
|
)
|
|
|
|
|
2023-12-01 12:37:09 +02:00
|
|
|
set(BANAN_AOC2023_BIN ${BANAN_BIN}/aoc2023)
|
|
|
|
set(BANAN_AOC2023_INPUT ${BANAN_SHARE}/aoc2023)
|
2023-12-01 01:20:50 +02:00
|
|
|
|
|
|
|
add_custom_target(aoc2023)
|
2023-12-01 12:37:09 +02:00
|
|
|
add_custom_target(aoc2023_always
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${BANAN_AOC2023_BIN}
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${BANAN_AOC2023_INPUT}
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/input/* ${BANAN_AOC2023_INPUT}/
|
|
|
|
)
|
|
|
|
add_custom_target(aoc2023-install DEPENDS aoc2023 aoc2023_always)
|
2023-12-01 01:20:50 +02:00
|
|
|
|
|
|
|
foreach(AOC2023_PROJECT ${AOC2023_PROJECTS})
|
2023-12-01 12:37:09 +02:00
|
|
|
add_subdirectory(${AOC2023_PROJECT})
|
2023-12-01 01:20:50 +02:00
|
|
|
endforeach()
|
|
|
|
|
|
|
|
add_dependencies(userspace aoc2023)
|
|
|
|
add_dependencies(userspace-install aoc2023-install)
|