a6201725d7
While the VCL plugins are dynamically loaded and therefore just load their depending toolkit libraries, the GStreamer avmedia backend now links against Qt and GTK+. The GStreamer API itself is toolkit agnostic and the toolkit setup just uses a single GStreamer symbol to create the specific video sink. So the toolkit binding can simply be moved into the VCL plugin. At the point of the GStreamer toolkit setup call the GStreamer library is loaded by avmediagst, so the dlsym lookup should never fail. I also dropped the special GtkWidget handling. Using g_object_get will increase the refcount of the widget. A g_object_unref after adding it to the container seems to destroy it correctly. Change-Id: I693947e441bceb4b09bc38920e308e39142d0a35 Reviewed-on: https://gerrit.libreoffice.org/73849 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
132 lines
3.3 KiB
Makefile
132 lines
3.3 KiB
Makefile
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
|
|
#
|
|
# This file is part of the LibreOffice project.
|
|
#
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
#
|
|
# This file incorporates work covered by the following license notice:
|
|
#
|
|
# Licensed to the Apache Software Foundation (ASF) under one or more
|
|
# contributor license agreements. See the NOTICE file distributed
|
|
# with this work for additional information regarding copyright
|
|
# ownership. The ASF licenses this file to you under the Apache
|
|
# License, Version 2.0 (the "License"); you may not use this file
|
|
# except in compliance with the License. You may obtain a copy of
|
|
# the License at http://www.apache.org/licenses/LICENSE-2.0 .
|
|
#
|
|
|
|
$(eval $(call gb_Library_Library,vclplug_qt5))
|
|
|
|
$(eval $(call gb_Library_use_custom_headers,vclplug_qt5,vcl/qt5))
|
|
|
|
$(eval $(call gb_Library_set_include,vclplug_qt5,\
|
|
$$(INCLUDE) \
|
|
-I$(SRCDIR)/vcl/inc \
|
|
-I$(SRCDIR)/vcl/inc/qt5 \
|
|
$(GSTREAMER_1_0_CFLAGS) \
|
|
))
|
|
|
|
$(eval $(call gb_Library_add_defs,vclplug_qt5,\
|
|
-DVCLPLUG_QT5_IMPLEMENTATION \
|
|
))
|
|
|
|
$(eval $(call gb_Library_use_sdk_api,vclplug_qt5))
|
|
|
|
$(eval $(call gb_Library_use_libraries,vclplug_qt5,\
|
|
$(if $(USING_X11),vclplug_gen) \
|
|
vcl \
|
|
tl \
|
|
utl \
|
|
sot \
|
|
ucbhelper \
|
|
basegfx \
|
|
comphelper \
|
|
cppuhelper \
|
|
i18nlangtag \
|
|
i18nutil \
|
|
$(if $(ENABLE_JAVA), \
|
|
jvmaccess) \
|
|
cppu \
|
|
sal \
|
|
salhelper \
|
|
))
|
|
|
|
$(eval $(call gb_Library_use_externals,vclplug_qt5,\
|
|
boost_headers \
|
|
cairo \
|
|
epoxy \
|
|
graphite \
|
|
harfbuzz \
|
|
icu_headers \
|
|
icuuc \
|
|
qt5 \
|
|
))
|
|
|
|
$(eval $(call gb_Library_add_cxxflags,vclplug_qt5,\
|
|
$(QT5_CFLAGS) \
|
|
))
|
|
$(eval $(call gb_Library_add_libs,vclplug_qt5,\
|
|
$(QT5_LIBS) \
|
|
))
|
|
|
|
ifneq ($(QT5_HAVE_GOBJECT),)
|
|
$(eval $(call gb_Library_add_cxxflags,vclplug_qt5,\
|
|
$(QT5_GOBJECT_CFLAGS) \
|
|
))
|
|
$(eval $(call gb_Library_add_libs,vclplug_qt5,\
|
|
$(QT5_GOBJECT_LIBS) \
|
|
))
|
|
endif
|
|
|
|
$(eval $(call gb_Library_add_exception_objects,vclplug_qt5,\
|
|
vcl/qt5/Qt5AccessibleEventListener \
|
|
vcl/qt5/Qt5AccessibleWidget \
|
|
vcl/qt5/Qt5Bitmap \
|
|
vcl/qt5/Qt5Clipboard \
|
|
vcl/qt5/Qt5Data \
|
|
vcl/qt5/Qt5DragAndDrop \
|
|
vcl/qt5/Qt5FilePicker \
|
|
vcl/qt5/Qt5Font \
|
|
vcl/qt5/Qt5FontFace \
|
|
vcl/qt5/Qt5Frame \
|
|
vcl/qt5/Qt5Graphics \
|
|
vcl/qt5/Qt5Graphics_Controls \
|
|
vcl/qt5/Qt5Graphics_GDI \
|
|
vcl/qt5/Qt5Graphics_Text \
|
|
vcl/qt5/Qt5Instance \
|
|
vcl/qt5/Qt5Instance_Print \
|
|
vcl/qt5/Qt5MainWindow \
|
|
vcl/qt5/Qt5Menu \
|
|
vcl/qt5/Qt5Object \
|
|
vcl/qt5/Qt5OpenGLContext \
|
|
vcl/qt5/Qt5Painter \
|
|
vcl/qt5/Qt5Printer \
|
|
vcl/qt5/Qt5SvpGraphics \
|
|
vcl/qt5/Qt5SvpSurface \
|
|
vcl/qt5/Qt5System \
|
|
vcl/qt5/Qt5Timer \
|
|
vcl/qt5/Qt5Tools \
|
|
vcl/qt5/Qt5Transferable \
|
|
vcl/qt5/Qt5VirtualDevice \
|
|
vcl/qt5/Qt5Widget \
|
|
vcl/qt5/Qt5XAccessible \
|
|
))
|
|
|
|
ifeq ($(OS),LINUX)
|
|
$(eval $(call gb_Library_add_libs,vclplug_qt5,\
|
|
-lm \
|
|
-ldl \
|
|
))
|
|
endif
|
|
|
|
# Workaround for clang+icecream (clang's -frewrite-includes
|
|
# doesn't handle Qt5's QT_HAS_INCLUDE that Qt5 uses for <chrono>).
|
|
ifeq ($(COM_IS_CLANG),TRUE)
|
|
$(eval $(call gb_Library_add_cxxflags,vclplug_qt5, \
|
|
-include chrono \
|
|
))
|
|
endif
|
|
|
|
# vim: set noet sw=4 ts=4:
|