forked from RayTracing/raytracing.github.io
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CMakeLists.txt
83 lines (74 loc) · 2.42 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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#---------------------------------------------------------------------------------------------------
# CMake Build Configuration for the Ray Tracing Weekend Series
#
# See README.md for guidance.
#---------------------------------------------------------------------------------------------------
cmake_minimum_required ( VERSION 3.1.0 )
project ( RTWeekend
VERSION 3.0.0
LANGUAGES CXX
)
# Set to c++11
set ( CMAKE_CXX_STANDARD 11 )
# Source
set ( COMMON_ALL
src/common/rtweekend.h
src/common/camera.h
src/common/ray.h
src/common/vec3.h
)
set ( SOURCE_ONE_WEEKEND
${COMMON_ALL}
src/InOneWeekend/hittable.h
src/InOneWeekend/hittable_list.h
src/InOneWeekend/material.h
src/InOneWeekend/sphere.h
src/InOneWeekend/main.cc
)
set ( SOURCE_NEXT_WEEK
${COMMON_ALL}
src/common/aabb.h
src/common/external/stb_image.h
src/common/perlin.h
src/common/rtw_stb_image.h
src/common/texture.h
src/TheNextWeek/aarect.h
src/TheNextWeek/box.h
src/TheNextWeek/bvh.h
src/TheNextWeek/constant_medium.h
src/TheNextWeek/hittable.h
src/TheNextWeek/hittable_list.h
src/TheNextWeek/material.h
src/TheNextWeek/moving_sphere.h
src/TheNextWeek/sphere.h
src/TheNextWeek/main.cc
)
set ( SOURCE_REST_OF_YOUR_LIFE
${COMMON_ALL}
src/common/aabb.h
src/common/external/stb_image.h
src/common/perlin.h
src/common/rtw_stb_image.h
src/common/texture.h
src/TheRestOfYourLife/aarect.h
src/TheRestOfYourLife/box.h
src/TheRestOfYourLife/bvh.h
src/TheRestOfYourLife/hittable.h
src/TheRestOfYourLife/hittable_list.h
src/TheRestOfYourLife/material.h
src/TheRestOfYourLife/onb.h
src/TheRestOfYourLife/pdf.h
src/TheRestOfYourLife/sphere.h
src/TheRestOfYourLife/main.cc
)
# Executables
add_executable(inOneWeekend ${SOURCE_ONE_WEEKEND})
add_executable(theNextWeek ${SOURCE_NEXT_WEEK})
add_executable(theRestOfYourLife ${SOURCE_REST_OF_YOUR_LIFE})
add_executable(cos_cubed src/TheRestOfYourLife/cos_cubed.cc ${COMMON_ALL})
add_executable(cos_density src/TheRestOfYourLife/cos_density.cc ${COMMON_ALL})
add_executable(integrate_x_sq src/TheRestOfYourLife/integrate_x_sq.cc ${COMMON_ALL})
add_executable(pi src/TheRestOfYourLife/pi.cc ${COMMON_ALL})
add_executable(sphere_importance src/TheRestOfYourLife/sphere_importance.cc ${COMMON_ALL})
add_executable(sphere_plot src/TheRestOfYourLife/sphere_plot.cc ${COMMON_ALL})
include_directories(src/common)