Exclude files from unity build to resolve Android's build

There are several duplicate symbols defined across android source files.
For now, excluding the conflicting files allows us to continue working
on bringing unity build to CI. I added some explanation and TODO's on
what I think can be done for resolving the conflict.

Pick-to: 6.5
Task-number: QTBUG-109394
Change-Id: Ic0b31c4ae845c69570ea5dd86316e5a795c166c4
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
bb10
Amir Masoud Abdol 2023-04-19 12:19:07 +02:00
parent 70f064f270
commit c2fd824160
2 changed files with 18 additions and 0 deletions

View File

@ -981,6 +981,12 @@ qt_internal_extend_target(Core CONDITION ANDROID
kernel/qjnihelpers.cpp kernel/qjnihelpers_p.h
platform/android/qandroidextras_p.h platform/android/qandroidextras.cpp
platform/android/qandroidnativeinterface.cpp
NO_UNITY_BUILD_SOURCES
platform/android/qandroidextras.cpp
# qtNativeClassName conflicts with similar symbols in android headers
# TODO: Resolve conflicts between various variables set as,
# `org/qtproject/qt/android/QtNative` QtAndroidPrivate might be a good
# place to put them.
)
qt_internal_extend_target(Core CONDITION WIN32

View File

@ -42,6 +42,18 @@ qt_internal_add_plugin(QAndroidIntegrationPlugin
qandroidplatformtheme.cpp qandroidplatformtheme.h
qandroidplatformwindow.cpp qandroidplatformwindow.h
qandroidsystemlocale.cpp qandroidsystemlocale.h
NO_UNITY_BUILD_SOURCES
# Conflicting symbols and macros with androidjnimain.cpp
# TODO: Unify the usage of FIND_AND_CHECK_CLASS, and similar
# macros. Q_JNI_FIND_AND_CHECK_CLASS in `qjnihelpers_p.h`
# seems to be doing most of the work already.
androidjnimenu.cpp
qandroidinputcontext.cpp
androidjniaccessibility.cpp
qandroidplatformdialoghelpers.cpp
# Conflicting JNI classes, and types
androidcontentfileengine.cpp
qandroidplatformintegration.cpp
DEFINES
QT_USE_QSTRINGBUILDER
INCLUDE_DIRECTORIES