cmake_minimum_required(VERSION 3.14) set(PROJECT_NAME "webview_universal") project(${PROJECT_NAME} LANGUAGES CXX) # This value is used when generating builds using this plugin, so it must # not be changed set(PLUGIN_NAME "webview_universal_plugin") add_library(${PLUGIN_NAME} SHARED "webview_universal_plugin.cpp" "webview_window.h" "webview_window.cc" "strconv.h" "utils.h" "utils.cc" "flutter_view.h" "flutter_view.cc" "web_view.h" "web_view.cc" "message_channel_plugin.h" "message_channel_plugin.cc" "web_view_window_plugin.h" "web_view_window_plugin.cc" ) apply_standard_settings(${PLUGIN_NAME}) set_target_properties(${PLUGIN_NAME} PROPERTIES CXX_VISIBILITY_PRESET hidden) target_compile_definitions(${PLUGIN_NAME} PRIVATE FLUTTER_PLUGIN_IMPL) target_include_directories(${PLUGIN_NAME} INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/include") target_link_libraries(${PLUGIN_NAME} PRIVATE flutter flutter_wrapper_plugin flutter_wrapper_app) add_library(Webview2 SHARED IMPORTED GLOBAL) SET_PROPERTY(TARGET Webview2 PROPERTY IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/libs/x64/Webview2Loader.dll) SET_PROPERTY(TARGET Webview2 PROPERTY IMPORTED_IMPLIB ${CMAKE_CURRENT_SOURCE_DIR}/libs/x64/Webview2Loader.dll.lib) target_link_libraries(${PLUGIN_NAME} PRIVATE Webview2 uxtheme) # List of absolute paths to libraries that should be bundled with the plugin set(webview_universal_bundled_libraries "$" PARENT_SCOPE )