perlin-shadows/CMakeLists.txt
Michael Bradley 39950b4677
Some checks failed
Build / Format (push) Successful in 19s
Build / Lint (push) Failing after 50s
Build / Build (push) Failing after 29s
Convert noise_math.h into C++20 module
2025-03-01 15:27:36 -05:00

42 lines
1 KiB
CMake

cmake_minimum_required(VERSION 3.28 FATAL_ERROR)
project(perlin-shadows)
set(CMAKE_CXX_STANDARD 23)
link_libraries(-lGL -lglut -lGLEW -lGLU)
add_executable(${CMAKE_PROJECT_NAME})
target_sources(${CMAKE_PROJECT_NAME}
PRIVATE
src/constants.h
src/final.cpp
src/geography.cpp
src/geography.h
src/grid.cpp
src/grid.h
src/renderer.cpp
src/renderer.h
src/camera.cpp
src/camera.h
src/shader.cpp
src/shader.h
src/point_light.cpp
src/point_light.h
src/renderable.cpp
src/renderable.h
PRIVATE
FILE_SET modules TYPE CXX_MODULES FILES
src/noise.cppm
)
file(READ src/shader/phong.vert PHONG_VERT)
file(READ src/shader/phong.frag PHONG_FRAG)
configure_file(src/renderer.in.cpp src/renderer.cpp @ONLY)
file(READ src/shader/shadow.vert SHADOW_VERT)
file(READ src/shader/shadow.frag SHADOW_FRAG)
file(READ src/shader/shadow.geom SHADOW_GEOM)
configure_file(src/point_light.in.h src/point_light.h @ONLY)
include_directories(src)
target_include_directories(perlin-shadows PUBLIC "${CMAKE_CURRENT_BINARY_DIR}/src")