cmake_minimum_required(VERSION 3.20) project(WebTopRuntime LANGUAGES CXX) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS OFF) if(NOT CEF_ROOT) set(CEF_ROOT "${CMAKE_SOURCE_DIR}/../third_party/cef") endif() if(NOT EXISTS "${CEF_ROOT}/cmake/cef_variables.cmake") message(FATAL_ERROR "CEF not found at ${CEF_ROOT}. Download the CEF binary distribution " "(Windows 64-bit, Standard Distribution) and extract so that " "${CEF_ROOT}/cmake/cef_variables.cmake exists. See scripts/download_cef.ps1.") endif() set(CEF_ROOT "${CEF_ROOT}") include("${CEF_ROOT}/cmake/cef_variables.cmake") include("${CEF_ROOT}/cmake/cef_macros.cmake") add_executable(webtop_stub WIN32 src/main.cpp src/app.cpp src/client.cpp src/request_handler.cpp src/filter_parser.cpp src/self_config.cpp src/host_window.cpp ) target_include_directories(webtop_stub PRIVATE "${CEF_ROOT}" "${CEF_ROOT}/include" ) set_target_properties(webtop_stub PROPERTIES OUTPUT_NAME "webtop_stub" SUFFIX ".bin" ) target_compile_definitions(webtop_stub PRIVATE UNICODE _UNICODE NOMINMAX WIN32_LEAN_AND_MEAN PSAPI_VERSION=2 ) target_link_libraries(webtop_stub PRIVATE "${CEF_ROOT}/Release/libcef.lib" "${CEF_ROOT}/Release/libcef_dll_wrapper.lib" comctl32 shell32 shlwapi user32 gdi32 ole32 uuid ) set_target_properties(webtop_stub PROPERTIES LINK_FLAGS "/MANIFEST:NO /SUBSYSTEM:WINDOWS" ) install(TARGETS webtop_stub DESTINATION bin)