1
1
cmake_minimum_required (VERSION 3.15 )
2
- include ("${CMAKE_CURRENT_SOURCE_DIR} /../cxx/quickjs.cmake" )
3
2
4
3
set (PROJECT_NAME "flutter_js" )
5
4
project (${PROJECT_NAME} LANGUAGES CXX )
@@ -11,18 +10,31 @@ set(PLUGIN_NAME "flutter_js_plugin")
11
10
12
11
add_library (${PLUGIN_NAME} SHARED
13
12
"flutter_js_plugin.cpp"
14
- "${CXX_LIB_DIR} /libfastdev_quickjs_runtime.cpp"
15
13
)
16
14
apply_standard_settings (${PLUGIN_NAME} )
17
15
set_target_properties (${PLUGIN_NAME} PROPERTIES
18
16
CXX_VISIBILITY_PRESET hidden )
19
17
target_compile_definitions (${PLUGIN_NAME} PRIVATE FLUTTER_PLUGIN_IMPL )
20
18
target_include_directories (${PLUGIN_NAME} INTERFACE
21
19
"${CMAKE_CURRENT_SOURCE_DIR} /include" )
22
- target_link_libraries (${PLUGIN_NAME} PRIVATE flutter flutter_wrapper_plugin quickjs )
20
+ target_link_libraries (${PLUGIN_NAME} PRIVATE flutter flutter_wrapper_plugin )
23
21
24
22
# List of absolute paths to libraries that should be bundled with the plugin
25
23
set (flutter_js_bundled_libraries
26
24
""
27
25
PARENT_SCOPE
28
26
)
27
+
28
+
29
+ set (BUILD_BUNDLE_DIR "$<TARGET_FILE_DIR:${BINARY_NAME} >" )
30
+ # Make the "install" step default, as it's required to run.
31
+ set (CMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD 1 )
32
+ if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT )
33
+ set (CMAKE_INSTALL_PREFIX "${BUILD_BUNDLE_DIR} " CACHE PATH "..." FORCE )
34
+ endif ()
35
+
36
+ set (INSTALL_BUNDLE_LIB_DIR "${CMAKE_INSTALL_PREFIX} " )
37
+ set (QUICKJSC_BRIDGE "quickjs_c_bridge.dll" )
38
+ set (QUICKJSC_BRIDGE_PATH "${CMAKE_CURRENT_SOURCE_DIR} /shared/${QUICKJSC_BRIDGE} " )
39
+ install (CODE "file(REMOVE_RECURSE \" ${INSTALL_BUNDLE_LIB_DIR} /${QUICKJSC_BRIDGE} \" )" COMPONENT Runtime )
40
+ install (FILES "${QUICKJSC_BRIDGE_PATH} " DESTINATION "${INSTALL_BUNDLE_LIB_DIR} " COMPONENT Runtime )
0 commit comments