ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/rt/CMakeLists.txt
Revision: 1.18
Committed: Tue May 16 22:58:18 2023 UTC (11 months, 2 weeks ago) by greg
Content type: text/plain
Branch: MAIN
CVS Tags: rad5R4, HEAD
Changes since 1.17: +4 -4 lines
Log Message:
chore: Removed qt from macOS X and Linux builds as it was having issues

File Contents

# Content
1 set(VERSION_FILE "${radiance_BINARY_DIR}/src/rt/Version.c")
2 create_version_file("${VERSION_FILE}")
3
4 add_library(radiance
5 "${VERSION_FILE}"
6 ../common/paths.c
7 ../common/platform.h
8 ../common/random.h
9 ambcomp.c
10 ambient.c
11 ambio.c
12 aniso.c
13 ashikhmin.c
14 data.c
15 dielectric.c
16 fprism.c
17 freeobjmem.c
18 func.c
19 glass.c
20 initotypes.c
21 m_alias.c
22 m_brdf.c
23 m_bsdf.c
24 m_clip.c
25 m_direct.c
26 m_mirror.c
27 m_mist.c
28 mx_data.c
29 mx_func.c
30 noise3.c
31 normal.c
32 o_cone.c
33 o_face.c
34 o_instance.c
35 o_mesh.c
36 p_data.c
37 p_func.c
38 pmap.c
39 pmapamb.c
40 pmapbias.c
41 pmapcontrib.c
42 pmapdata.c
43 pmapdiag.c
44 pmapio.c
45 pmapmat.c
46 pmapopt.c
47 pmapparm.c
48 pmaprand.c
49 pmapray.c
50 pmapsrc.c
51 pmaptype.c
52 pmcontrib2.c
53 pmutil.c
54 preload.c
55 raytrace.c
56 renderopts.c
57 source.c
58 sphere.c
59 srcobstr.c
60 srcsamp.c
61 srcsupp.c
62 t_data.c
63 t_func.c
64 text.c
65 virtuals.c
66 )
67
68 if(WIN32)
69 set(rayp_SOURCES raypwin.c)
70 else()
71 set(rayp_SOURCES raypcalls.c)
72 endif()
73
74 add_library(raycalls raycalls.c ${rayp_SOURCES} rayfifo.c)
75
76 add_executable(rtrace rtmain.c rtrace.c duphead.c persist.c)
77 target_link_libraries(rtrace raycalls radiance rtrad)
78
79 add_executable(rpict rpmain.c rpict.c srcdraw.c duphead.c persist.c)
80 target_link_libraries(rpict radiance rtrad)
81
82 add_executable(lookamb lookamb.c ambio.c)
83 target_link_libraries(lookamb rtrad)
84
85 add_executable(rcontrib rcmain.c rcontrib.c rc2.c rc3.c)
86 target_link_libraries(rcontrib radiance rtrad)
87
88 add_executable(mkpmap mkpmap.c)
89 target_link_libraries(mkpmap radiance rtrad)
90 add_executable(pmapdump pmapdump.c pmaptype.c pmapparm.c)
91 target_link_libraries(pmapdump raycalls radiance rtrad)
92
93 set(targets_to_install
94 lookamb
95 mkpmap
96 pmapdump
97 radiance
98 raycalls
99 rcontrib
100 rpict
101 rtrace
102 )
103
104 if(X11_FOUND)
105 set(X11_SOURCES x11.c x11twind.c)
106 add_definitions(-DHAS_X11)
107 endif()
108 if(Qt5Widgets_FOUND AND BUILD_QT)
109 include_directories(${Qt5Widgets_INCLUDE_DIRS})
110 add_definitions(-DHAS_QT)
111 endif()
112 if(NOT BUILD_HEADLESS)
113 if(X11_FOUND OR BUILD_QT)
114 add_executable(rvu
115 colortab.c
116 devcomm.c
117 devtable.c
118 editline.c
119 rv2.c
120 rv3.c
121 rview.c
122 rvmain.c
123 ${X11_SOURCES}
124 )
125 target_link_libraries(rvu raycalls radiance rtrad ${X11_LIBRARIES})
126 list(APPEND targets_to_install rvu)
127
128 # only link to rvu-qt-lib if qt is found
129 if(BUILD_QT)
130 target_link_libraries(rvu qtrvu)
131 endif()
132 endif()
133 endif()
134
135 #add_test(rtrace_version "${EXECUTABLE_OUTPUT_PATH}/rtrace" -version)
136 #set_tests_properties(rtrace_version PROPERTIES
137 # PASS_REGULAR_EXPRESSION "RADIANCE"
138 #)
139
140 install(TARGETS ${targets_to_install}
141 RUNTIME DESTINATION "bin"
142 LIBRARY DESTINATION "bin"
143 ARCHIVE DESTINATION "bin"
144 )
145 file(COPY rayinit.cal
146 DESTINATION "${CMAKE_BINARY_DIR}/lib"
147 )
148
149 #install qt.conf & Qt plugins loaded by rvu at runtime. Ignore if we are building as headless
150 if(NOT BUILD_HEADLESS AND BUILD_QT)
151 get_target_property(GIF_PLUGIN Qt5::QGifPlugin LOCATION)
152 get_target_property(ICO_PLUGIN Qt5::QICOPlugin LOCATION)
153 get_target_property(JPEG_PLUGIN Qt5::QJpegPlugin LOCATION)
154 get_target_property(TIFF_PLUGIN Qt5::QTiffPlugin LOCATION)
155 install(PROGRAMS "${GIF_PLUGIN}" "${ICO_PLUGIN}" "${JPEG_PLUGIN}" "${TIFF_PLUGIN}"
156 DESTINATION "bin/plugins/imageformats"
157 )
158 install(FILES "${CMAKE_SOURCE_DIR}/InstallRules/qt.conf"
159 DESTINATION "bin"
160 )
161
162 if(WIN32)
163 get_target_property(QPA_PLUGIN Qt5::QWindowsIntegrationPlugin LOCATION)
164 elseif(APPLE)
165 get_target_property(QPA_PLUGIN Qt5::QCocoaIntegrationPlugin LOCATION)
166 elseif(UNIX)
167 get_target_property(QPA_PLUGIN Qt5::QXcbIntegrationPlugin LOCATION)
168 endif()
169
170 install(PROGRAMS "${QPA_PLUGIN}"
171 DESTINATION "bin/plugins/platforms"
172 )
173 endif()