Skip to content

Commit 5da5141

Browse files
committed
[plugin] Updated Windows template
1 parent 78bd0ba commit 5da5141

File tree

4 files changed

+46
-1499
lines changed

4 files changed

+46
-1499
lines changed

linux/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# dart_vlc: A media playback library for Dart & Flutter. Based on libVLC & libVLC++.
22
#
3-
# Hitesh Kumar Saini, Domingo Montesdeoca Gonzalez & contributors.
3+
# Hitesh Kumar Saini
44
# https://github.com/alexmercerind
55
# alexmercerind@gmail.com
66
# GNU Lesser General Public License v2.1

windows/CMakeLists.txt

Lines changed: 43 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -5,29 +5,18 @@
55
# alexmercerind@gmail.com
66
# GNU Lesser General Public License v2.1
77
#
8-
98
cmake_minimum_required(VERSION 3.15)
10-
11-
set(PROJECT_NAME "dart_vlc")
12-
project(${PROJECT_NAME} LANGUAGES CXX)
13-
set(PLUGIN_NAME "dart_vlc_plugin")
9+
set(CMAKE_CXX_STANDARD 17)
1410

1511
set(LIBVLC_VERSION "3.0.9.2")
16-
17-
include_directories("${PLUGIN_NAME}" INTERFACE
18-
"${CMAKE_CURRENT_SOURCE_DIR}/include"
19-
)
20-
add_library("${PLUGIN_NAME}" SHARED
21-
"dart_vlc_plugin.cpp"
12+
set(PACKAGE "dart_vlc")
13+
add_library(${PACKAGE} SHARED
14+
"../ffi/native/dart_vlc.cpp"
2215
)
23-
24-
apply_standard_settings("${PLUGIN_NAME}")
25-
set_target_properties("${PLUGIN_NAME}" PROPERTIES
26-
CXX_VISIBILITY_PRESET hidden)
27-
target_compile_definitions("${PLUGIN_NAME}" PRIVATE FLUTTER_PLUGIN_IMPL)
28-
target_include_directories("${PLUGIN_NAME}" INTERFACE
29-
"${CMAKE_CURRENT_SOURCE_DIR}/include"
30-
"${CMAKE_CURRENT_SOURCE_DIR}/../dartvlc"
16+
target_include_directories(${PACKAGE} INTERFACE
17+
${CMAKE_CURRENT_SOURCE_DIR}/include
18+
${CMAKE_CURRENT_SOURCE_DIR}/../dartvlc
19+
${CMAKE_CURRENT_SOURCE_DIR}/../ffi/native
3120
)
3221

3322
set(LIBVLC_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/bin")
@@ -39,7 +28,6 @@ set(LIBVLCPP_ARCHIVE "${LIBVLC_BINARIES}/libvlcpp.zip")
3928
set(LIBVLC_SOURCE "${LIBVLC_BINARIES}/vlc-${LIBVLC_VERSION}")
4029
set(LIBVLCPP_SOURCE "${LIBVLC_BINARIES}/libvlcpp-master")
4130

42-
4331
if (NOT EXISTS "${LIBVLC_ARCHIVE}")
4432
file(DOWNLOAD "${LIBVLC_URL}" "${LIBVLC_ARCHIVE}")
4533
endif()
@@ -59,14 +47,47 @@ add_custom_command(
5947
DEPENDS "${LIBVLC_ARCHIVE}"
6048
)
6149
50+
target_link_libraries("${PACKAGE}" PRIVATE
51+
"${LIBVLC_SOURCE}/sdk/lib/libvlc.lib"
52+
"${LIBVLC_SOURCE}/sdk/lib/libvlccore.lib"
53+
)
54+
55+
56+
# Not used Flutter plugin template.
57+
58+
set(PROJECT_NAME "dart_vlc")
59+
set(PLUGIN_NAME "dart_vlc_plugin")
60+
project(${PROJECT_NAME} LANGUAGES CXX)
61+
set("${PACKAGE}" "dart_vlc_plugin")
62+
63+
64+
include_directories("${PLUGIN_NAME}" INTERFACE
65+
"${CMAKE_CURRENT_SOURCE_DIR}/include"
66+
)
67+
add_library("${PLUGIN_NAME}" SHARED
68+
"dart_vlc_plugin.cpp"
69+
)
70+
71+
apply_standard_settings("${PLUGIN_NAME}")
72+
set_target_properties("${PLUGIN_NAME}" PROPERTIES
73+
CXX_VISIBILITY_PRESET hidden)
74+
target_compile_definitions("${PLUGIN_NAME}" PRIVATE FLUTTER_PLUGIN_IMPL)
75+
target_include_directories("${PLUGIN_NAME}" INTERFACE
76+
"${CMAKE_CURRENT_SOURCE_DIR}/include"
77+
"${CMAKE_CURRENT_SOURCE_DIR}/../dartvlc"
78+
)
79+
6280
target_link_libraries("${PLUGIN_NAME}" PRIVATE
6381
flutter
6482
flutter_wrapper_plugin
65-
"${LIBVLC_SOURCE}/sdk/lib/libvlc.lib"
66-
"${LIBVLC_SOURCE}/sdk/lib/libvlccore.lib"
6783
)
84+
85+
# Add generated shared library & libVLC DLLs.
86+
6887
set(
6988
dart_vlc_bundled_libraries
89+
# TODO: Make build type dynamic.
90+
"plugins/dart_vlc/Debug/dart_vlc.dll"
7091
"${LIBVLC_SOURCE}/libvlc.dll"
7192
"${LIBVLC_SOURCE}/libvlccore.dll"
7293
"${LIBVLC_SOURCE}/plugins"

0 commit comments

Comments
 (0)