@@ -29,7 +29,10 @@ macro(add_subdir_include_dirs arg1)
2929 list (APPEND LWS_LIB_BUILD_INC_PATHS ${_CMAKE_INC_LIST} )
3030endmacro ()
3131
32+
33+
3234set (LWS_LIB_INCLUDES "" )
35+ set (LWS_LIB_BUILD_INC_PATHS_TEMP "" )
3336
3437#
3538# Plat specific build items
@@ -135,34 +138,94 @@ configure_file(
135138 "${PROJECT_SOURCE_DIR} /cmake/lws_config_private.h.in"
136139 "${PROJECT_BINARY_DIR} /lws_config_private.h" )
137140
138- add_subdir_include_dirs (core )
139- add_subdir_include_dirs (misc )
140- add_subdir_include_dirs (system )
141+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /core)
142+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /misc)
143+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /system)
144+ add_subdirectory (core )
145+ add_subdirectory (misc )
146+ add_subdirectory (system )
141147
142148if (LWS_WITH_DRIVERS)
143- add_subdir_include_dirs (drivers )
149+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /drivers)
150+ add_subdirectory (drivers )
144151endif ()
145152
146153if (LWS_WITH_NETWORK)
147- add_subdir_include_dirs (core-net )
148- add_subdir_include_dirs (roles )
154+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /core-net)
155+ add_subdirectory (core-net )
156+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /roles)
157+ add_subdirectory (roles )
149158endif ()
150159
151160if (LWS_WITH_JOSE)
152- add_subdir_include_dirs (jose )
161+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /jose ${CMAKE_CURRENT_SOURCE_DIR} /jose/jwe)
162+ add_subdirectory (jose )
153163endif ()
154164
155165if (LWS_WITH_COSE)
156- add_subdir_include_dirs (cose )
166+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /cose)
167+ add_subdirectory (cose )
168+ endif ()
169+
170+ if (LWS_ROLE_MQTT)
171+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /roles/mqtt)
172+ endif ()
173+
174+ if (LWS_ROLE_DBUS AND NOT LWS_PLAT_FREERTOS)
175+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /roles/dbus)
176+ endif ()
177+
178+ if (LWS_ROLE_H1 OR LWS_ROLE_H2)
179+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /roles/http)
180+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /roles/http/compression)
181+ endif ()
182+
183+ if (LWS_ROLE_H1)
184+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /roles/h1)
185+ endif ()
186+
187+ if (LWS_ROLE_H2)
188+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /roles/h2)
189+ endif ()
190+
191+ if (LWS_ROLE_WS)
192+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /roles/ws)
157193endif ()
158194
195+ if (LWS_ROLE_RAW)
196+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /roles/raw-skt)
197+ endif ()
198+
199+ if (LWS_ROLE_RAW_FILE)
200+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /roles/raw-file)
201+ endif ()
202+
203+ if (LWS_WITH_CGI)
204+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /roles/cgi)
205+ endif ()
206+
207+ if (LWS_ROLE_RAW_PROXY)
208+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /roles/raw-proxy)
209+ endif ()
210+
211+ if (NOT LWS_WITHOUT_SERVER OR LWS_WITH_SECURE_STREAMS_PROCESS_API)
212+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /roles/listen)
213+ endif ()
214+
215+
159216include_directories (secure-streams )
217+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP "${CMAKE_CURRENT_SOURCE_DIR} /../core" )
218+
219+
160220add_subdir_include_dirs (event-libs )
161221
162222if (LWS_WITH_SECURE_STREAMS)
163- add_subdir_include_dirs (secure-streams )
223+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /secure-streams)
224+ add_subdirectory (secure-streams )
164225endif ()
165- add_subdir_include_dirs (secure-streams/serialized/client )
226+
227+ list (APPEND LWS_LIB_BUILD_INC_PATHS_TEMP ${CMAKE_CURRENT_SOURCE_DIR} /secure-streams/serialized/client)
228+ add_subdirectory (secure-streams/serialized/client )
166229
167230if (LWS_WITH_STATIC)
168231 if (LWS_STATIC_PIC)
@@ -177,7 +240,7 @@ if (LWS_WITH_STATIC)
177240 $<BUILD_INTERFACE :${CMAKE_CURRENT_SOURCE_DIR} /../include >
178241 $<BUILD_INTERFACE :${CMAKE_CURRENT_BINARY_DIR} /../include >
179242 )
180- target_include_directories (websockets PRIVATE ${LWS_LIB_BUILD_INC_PATHS} )
243+ target_include_directories (websockets PRIVATE ${LWS_LIB_BUILD_INC_PATHS} ${LWS_LIB_BUILD_INC_PATHS_TEMP} ${CMAKE_CURRENT_SOURCE_DIR} /../core )
181244 target_compile_definitions (websockets PRIVATE LWS_BUILDING_STATIC )
182245 target_include_directories (websockets PUBLIC ${LWS_PUBLIC_INCLUDES} )
183246 set (LWS_PUBLIC_INCLUDES ${LWS_PUBLIC_INCLUDES} PARENT_SCOPE )
@@ -205,7 +268,7 @@ if (LWS_WITH_SHARED)
205268 $<BUILD_INTERFACE :${CMAKE_CURRENT_SOURCE_DIR} /../include >
206269 $<BUILD_INTERFACE :${CMAKE_CURRENT_BINARY_DIR} /../include >
207270 )
208- target_include_directories (websockets_shared PRIVATE ${LWS_LIB_BUILD_INC_PATHS} )
271+ target_include_directories (websockets_shared PRIVATE ${LWS_LIB_BUILD_INC_PATHS} ${LWS_LIB_BUILD_INC_PATHS_TEMP} ${CMAKE_CURRENT_SOURCE_DIR} /../core )
209272 target_compile_definitions (websockets_shared PRIVATE LWS_BUILDING_SHARED )
210273 target_include_directories (websockets_shared PUBLIC ${LWS_PUBLIC_INCLUDES} )
211274 set (LWS_PUBLIC_INCLUDES ${LWS_PUBLIC_INCLUDES} PARENT_SCOPE )
0 commit comments