From c0c5b32a610e187dd46c9561d1f0e56881b9d4be Mon Sep 17 00:00:00 2001 From: Holden Date: Sat, 22 Feb 2025 05:01:48 -0500 Subject: [PATCH] CMake: Simplify VideoManager Linking --- src/API/CMakeLists.txt | 3 --- src/CMakeLists.txt | 1 - src/Settings/CMakeLists.txt | 3 --- src/VideoManager/CMakeLists.txt | 3 --- src/VideoManager/VideoReceiver/CMakeLists.txt | 6 +++--- .../VideoReceiver/GStreamer/CMakeLists.txt | 15 +++++++-------- .../VideoReceiver/QtMultimedia/CMakeLists.txt | 15 ++++++--------- 7 files changed, 16 insertions(+), 30 deletions(-) diff --git a/src/API/CMakeLists.txt b/src/API/CMakeLists.txt index 210aed12e7fd..80f8275e7843 100644 --- a/src/API/CMakeLists.txt +++ b/src/API/CMakeLists.txt @@ -14,14 +14,11 @@ target_link_libraries(API Qt6::Qml AnalyzeView FactSystem - GStreamerReceiver Joystick MAVLink - QtMultimediaReceiver Settings Utilities VideoManager - VideoReceiver PUBLIC Qt6::Core Qt6::Gui diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 75fda8a40872..176c51e30486 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -66,7 +66,6 @@ target_link_libraries(QGC FollowMe Gimbal GPS - GStreamerReceiver Joystick MAVLink MissionManager diff --git a/src/Settings/CMakeLists.txt b/src/Settings/CMakeLists.txt index 1194906b691d..7881691be7ec 100644 --- a/src/Settings/CMakeLists.txt +++ b/src/Settings/CMakeLists.txt @@ -51,13 +51,10 @@ target_link_libraries(Settings PRIVATE Qt6::Multimedia API - GStreamerReceiver QGC QmlControls - QtMultimediaReceiver Vehicle VideoManager - VideoReceiver PUBLIC Qt6::Core Qt6::Qml diff --git a/src/VideoManager/CMakeLists.txt b/src/VideoManager/CMakeLists.txt index 0411a40dd7c8..da771cae8e36 100644 --- a/src/VideoManager/CMakeLists.txt +++ b/src/VideoManager/CMakeLists.txt @@ -14,13 +14,10 @@ target_link_libraries(VideoManager API Camera FactSystem - GStreamerReceiver QmlControls - QtMultimediaReceiver Settings Utilities Vehicle - VideoReceiver PUBLIC Qt6::Core Qt6::QmlIntegration diff --git a/src/VideoManager/VideoReceiver/CMakeLists.txt b/src/VideoManager/VideoReceiver/CMakeLists.txt index 6a4c13547718..452de99d11c6 100644 --- a/src/VideoManager/VideoReceiver/CMakeLists.txt +++ b/src/VideoManager/VideoReceiver/CMakeLists.txt @@ -1,10 +1,10 @@ find_package(Qt6 REQUIRED COMPONENTS Core) -qt_add_library(VideoReceiver STATIC VideoReceiver.h) +target_sources(VideoManager PRIVATE VideoReceiver.h) -target_link_libraries(VideoReceiver PUBLIC Qt6::Core) +target_link_libraries(VideoManager PUBLIC Qt6::Core) -target_include_directories(VideoReceiver PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) +target_include_directories(VideoManager PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) add_subdirectory(GStreamer) add_subdirectory(QtMultimedia) diff --git a/src/VideoManager/VideoReceiver/GStreamer/CMakeLists.txt b/src/VideoManager/VideoReceiver/GStreamer/CMakeLists.txt index bb0f43a83ed6..1751084f4457 100644 --- a/src/VideoManager/VideoReceiver/GStreamer/CMakeLists.txt +++ b/src/VideoManager/VideoReceiver/GStreamer/CMakeLists.txt @@ -1,10 +1,10 @@ find_package(Qt6 REQUIRED COMPONENTS Core Quick) -qt_add_library(GStreamerReceiver STATIC GLVideoItemStub.h) +target_sources(VideoManager PRIVATE GLVideoItemStub.h) -target_link_libraries(GStreamerReceiver PUBLIC Qt6::Quick) +target_link_libraries(VideoManager PUBLIC Qt6::Quick) -target_include_directories(GStreamerReceiver PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) +target_include_directories(VideoManager PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) if(NOT QGC_ENABLE_GST_VIDEOSTREAMING) return() @@ -16,7 +16,7 @@ if(NOT TARGET gstqml6gl) return() endif() -target_sources(GStreamerReceiver +target_sources(VideoManager PRIVATE gstqgc.cc gstqgcelement.cc @@ -30,21 +30,20 @@ target_sources(GStreamerReceiver ) if(IOS) - target_sources(GStreamerReceiver + target_sources(VideoManager PRIVATE gst_ios_init.m gst_ios_init.h ) endif() -target_link_libraries(GStreamerReceiver +target_link_libraries(VideoManager PRIVATE gstqml6gl Settings Utilities - VideoReceiver PUBLIC Qt6::Core ) -target_compile_definitions(GStreamerReceiver PUBLIC QGC_GST_STREAMING) +target_compile_definitions(VideoManager PUBLIC QGC_GST_STREAMING) diff --git a/src/VideoManager/VideoReceiver/QtMultimedia/CMakeLists.txt b/src/VideoManager/VideoReceiver/QtMultimedia/CMakeLists.txt index c9f6a9d42997..0d836dd17574 100644 --- a/src/VideoManager/VideoReceiver/QtMultimedia/CMakeLists.txt +++ b/src/VideoManager/VideoReceiver/QtMultimedia/CMakeLists.txt @@ -1,20 +1,18 @@ find_package(Qt6 REQUIRED COMPONENTS Core) -qt_add_library(QtMultimediaReceiver STATIC) - if(NOT QGC_ENABLE_QT_VIDEOSTREAMING) return() endif() find_package(Qt6 REQUIRED COMPONENTS Multimedia MultimediaQuickPrivate Quick) -target_sources(QtMultimediaReceiver +target_sources(VideoManager PRIVATE QtMultimediaReceiver.cc QtMultimediaReceiver.h ) -target_link_libraries(QtMultimediaReceiver +target_link_libraries(VideoManager PRIVATE Qt6::MultimediaQuickPrivate Qt6::Quick @@ -23,19 +21,18 @@ target_link_libraries(QtMultimediaReceiver PUBLIC Qt6::Core Qt6::Multimedia - VideoReceiver ) -target_include_directories(QtMultimediaReceiver PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) +target_include_directories(VideoManager PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) -target_compile_definitions(QtMultimediaReceiver PUBLIC QGC_QT_STREAMING) +target_compile_definitions(VideoManager PUBLIC QGC_QT_STREAMING) if(NOT QGC_ENABLE_UVC) - target_compile_definitions(QtMultimediaReceiver PUBLIC QGC_DISABLE_UVC) + target_compile_definitions(VideoManager PUBLIC QGC_DISABLE_UVC) return() endif() -target_sources(QtMultimediaReceiver +target_sources(VideoManager PRIVATE UVCReceiver.cc UVCReceiver.h