Skip to content

Commit 27fb1bb

Browse files
committed
Working build of QMultimedia plugin
1 parent a836f7e commit 27fb1bb

File tree

14 files changed

+732
-584
lines changed

14 files changed

+732
-584
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
node_modules
22
build
3-
dist
3+
dist
4+
.vscode

CMakeLists.txt

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@ execute_process(COMMAND node -p "require('@nodegui/nodegui/plugin').CMAKE_HELPER
66
)
77
string(REPLACE "\n" "" NODEGUI_PLUGIN_CMAKE_HELPER ${NODEGUI_PLUGIN_CMAKE_HELPER})
88
string(REPLACE "\"" "" NODEGUI_PLUGIN_CMAKE_HELPER ${NODEGUI_PLUGIN_CMAKE_HELPER})
9-
include("${NODEGUI_PLUGIN_CMAKE_HELPER}")
9+
10+
include(${NODEGUI_PLUGIN_CMAKE_HELPER})
11+
include(./config/multimedia.cmake)
1012

1113
# -------------- User Config ---------------
1214
set(PLUGIN_ADDON_NAME "nodegui_plugin_qtmultimedia")
@@ -16,26 +18,21 @@ project(${PLUGIN_ADDON_NAME})
1618
add_library(${PLUGIN_ADDON_NAME} SHARED
1719
"${CMAKE_JS_SRC}"
1820
"${PROJECT_SOURCE_DIR}/src/cpp/main.cpp"
19-
"${PROJECT_SOURCE_DIR}/src/cpp/QStatusBar/qstatusbar_wrap.cpp"
20-
"${PROJECT_SOURCE_DIR}/src/cpp/QStatusBar/nstatusbar.hpp"
2121
"${PROJECT_SOURCE_DIR}/src/cpp/QMediaContent/qmediacontent_wrap.cpp"
22-
"${PROJECT_SOURCE_DIR}/src/cpp/QMediaContent/nmediacontent.hpp"
2322
)
2423

2524
AddPluginConfig(${PLUGIN_ADDON_NAME})
26-
27-
#execute_process(COMMAND node -p "require('@nodegui/qode').qtHome"
28-
# WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
29-
# OUTPUT_VARIABLE QT_HOME_DIR
30-
# )
25+
AddQtMultimediaSupport(${PLUGIN_ADDON_NAME})
3126

3227
target_include_directories(${PLUGIN_ADDON_NAME} PRIVATE
3328
"${CMAKE_JS_INC}"
3429
"${PROJECT_SOURCE_DIR}"
3530
)
3631
target_link_libraries(${PLUGIN_ADDON_NAME} PRIVATE
3732
"${CMAKE_JS_LIB}"
38-
"/usr/lib/libQt5Multimedia.so"
39-
"/usr/lib/libQt5MultimediaWidgets.so"
33+
Qt5::Multimedia
34+
Qt5::Core
35+
Qt5::Widgets
36+
Qt5::Gui
4037
)
4138

config/multimedia.cmake

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
macro(AddQtMultimediaSupport addonName)
2+
3+
execute_process(COMMAND node -p "require('@nodegui/nodegui/config/qtConfig.js').qtCmakeDir"
4+
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
5+
OUTPUT_VARIABLE QT_CMAKE_HOME_DIR
6+
)
7+
8+
string(REPLACE "\n" "" QT_CMAKE_HOME_DIR "${QT_CMAKE_HOME_DIR}")
9+
string(REPLACE "\"" "" QT_CMAKE_HOME_DIR "${QT_CMAKE_HOME_DIR}")
10+
11+
message(STATUS "Using QT installation for ${addonName} QT_CMAKE_HOME_DIR:${QT_CMAKE_HOME_DIR}")
12+
13+
set(Qt5_DIR ${QT_CMAKE_HOME_DIR})
14+
find_package(Qt5 REQUIRED COMPONENTS Multimedia)
15+
16+
endmacro(AddQtMultimediaSupport addonName)

0 commit comments

Comments
 (0)