From 5f160a3699d80d1736f691ad9ef774eb6aa28079 Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Mon, 14 Oct 2019 15:18:44 +0200 Subject: Fix static linking when bearer management plugins are built MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The bearer plugins include copies of moc generated code that results in duplicate symbols when static linking pulls in multiple bearer plugins. Instead of relying on toolchain defined behavior, this patch moves the code that is shared into the shared library as private API. This way it will exist only once in memory and once at link time, resulting no linking errors about duplicate symbols. Fixes: QTBUG-79211 Change-Id: Iafa45c234e7fdd998971fc9cb7116334d08907bc Reviewed-by: MÃ¥rten Nordheim --- src/plugins/bearer/android/src/qandroidbearerengine.cpp | 2 +- src/plugins/bearer/android/src/qandroidbearerengine.h | 2 +- src/plugins/bearer/android/src/src.pro | 7 ++----- 3 files changed, 4 insertions(+), 7 deletions(-) (limited to 'src/plugins/bearer/android') diff --git a/src/plugins/bearer/android/src/qandroidbearerengine.cpp b/src/plugins/bearer/android/src/qandroidbearerengine.cpp index a43ed69570..ad9895e0cf 100644 --- a/src/plugins/bearer/android/src/qandroidbearerengine.cpp +++ b/src/plugins/bearer/android/src/qandroidbearerengine.cpp @@ -38,7 +38,7 @@ ****************************************************************************/ #include "qandroidbearerengine.h" -#include "../../qnetworksession_impl.h" +#include #include "wrappers/androidconnectivitymanager.h" #ifndef QT_NO_BEARERMANAGEMENT diff --git a/src/plugins/bearer/android/src/qandroidbearerengine.h b/src/plugins/bearer/android/src/qandroidbearerengine.h index 837b02232d..867d04d886 100644 --- a/src/plugins/bearer/android/src/qandroidbearerengine.h +++ b/src/plugins/bearer/android/src/qandroidbearerengine.h @@ -40,7 +40,7 @@ #ifndef QANDROIDBEARERENGINE_H #define QANDROIDBEARERENGINE_H -#include "../../qbearerengine_impl.h" +#include #include #include diff --git a/src/plugins/bearer/android/src/src.pro b/src/plugins/bearer/android/src/src.pro index eb0738386c..fcd599dffe 100644 --- a/src/plugins/bearer/android/src/src.pro +++ b/src/plugins/bearer/android/src/src.pro @@ -2,13 +2,10 @@ TARGET = qandroidbearer QT = core-private network-private -HEADERS += qandroidbearerengine.h \ - ../../qnetworksession_impl.h \ - ../../qbearerengine_impl.h +HEADERS += qandroidbearerengine.h SOURCES += main.cpp \ - qandroidbearerengine.cpp \ - ../../qnetworksession_impl.cpp + qandroidbearerengine.cpp include(wrappers/wrappers.pri) -- cgit v1.2.3