Skip to content

Commit 0758da5

Browse files
authored
Merge pull request #637 from kaniteru/main
Add CMake option to control building of examples
2 parents 159bb03 + 8e9af7b commit 0758da5

File tree

1 file changed

+22
-17
lines changed

1 file changed

+22
-17
lines changed

CMakeLists.txt

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ if (WEBUI_USE_TLS)
2222
set(WEBUI_DEFAULT_OUT_LIB_NAME "webui-2-secure")
2323
endif()
2424

25+
# Option to build example projects
26+
option(WEBUI_BUILD_EXAMPLES "Build WebUI examples" ON)
27+
2528
if (NOT BUILD_SHARED_LIBS)
2629
set(WEBUI_DEFAULT_OUT_LIB_NAME "${WEBUI_DEFAULT_OUT_LIB_NAME}-static")
2730
endif()
@@ -92,25 +95,27 @@ install(EXPORT webui
9295
# Build examples
9396
#//////////////////////////
9497

95-
message(STATUS "Source directory is " ${CMAKE_SOURCE_DIR})
96-
message(STATUS "Build directory is " ${CMAKE_BINARY_DIR})
98+
if (WEBUI_BUILD_EXAMPLES)
99+
message(STATUS "WebUI Source directory is " ${CMAKE_CURRENT_SOURCE_DIR})
100+
message(STATUS "WebUI Build directory is " ${CMAKE_BINARY_DIR})
97101

98-
include_directories(${CMAKE_SOURCE_DIR}/include)
102+
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include)
99103

100-
add_executable(minimal ${CMAKE_SOURCE_DIR}/examples/C++/minimal/main.cpp)
101-
add_executable(call_js_from_cpp ${CMAKE_SOURCE_DIR}/examples/C++/call_js_from_cpp/main.cpp)
102-
add_executable(call_js_from_c ${CMAKE_SOURCE_DIR}/examples/C/call_js_from_c/main.c)
104+
add_executable(minimal ${CMAKE_CURRENT_SOURCE_DIR}/examples/C++/minimal/main.cpp)
105+
add_executable(call_js_from_cpp ${CMAKE_CURRENT_SOURCE_DIR}/examples/C++/call_js_from_cpp/main.cpp)
106+
add_executable(call_js_from_c ${CMAKE_CURRENT_SOURCE_DIR}/examples/C/call_js_from_c/main.c)
103107

104-
target_link_libraries(minimal webui)
105-
target_link_libraries(call_js_from_cpp webui)
106-
target_link_libraries(call_js_from_c webui)
108+
target_link_libraries(minimal webui)
109+
target_link_libraries(call_js_from_cpp webui)
110+
target_link_libraries(call_js_from_c webui)
107111

108-
if (MSVC)
109-
set_target_properties(minimal PROPERTIES LINK_FLAGS "/SubSystem:\"Windows\"" VS_DPI_AWARE "ON")
110-
set_target_properties(call_js_from_cpp PROPERTIES LINK_FLAGS "/SubSystem:\"Windows\"" VS_DPI_AWARE "ON")
111-
set_target_properties(call_js_from_c PROPERTIES LINK_FLAGS "/SubSystem:\"Windows\"" VS_DPI_AWARE "ON")
112-
endif()
112+
if (MSVC)
113+
set_target_properties(minimal PROPERTIES LINK_FLAGS "/SubSystem:\"Windows\"" VS_DPI_AWARE "ON")
114+
set_target_properties(call_js_from_cpp PROPERTIES LINK_FLAGS "/SubSystem:\"Windows\"" VS_DPI_AWARE "ON")
115+
set_target_properties(call_js_from_c PROPERTIES LINK_FLAGS "/SubSystem:\"Windows\"" VS_DPI_AWARE "ON")
116+
endif()
113117

114-
if (MSVC)
115-
set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT call_js_from_cpp)
116-
endif()
118+
if (MSVC)
119+
set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT call_js_from_cpp)
120+
endif()
121+
endif()

0 commit comments

Comments
 (0)