summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmir Masoud Abdol <amir.abdol@qt.io>2023-04-14 12:13:41 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2023-04-14 13:46:26 +0000
commit4ab7633a704f1f7300f4eac5e0eef11f9f3f26ee (patch)
tree069a889aaf10c03358cfa74f7d4dfaa73018dcd5
parent50f73645f9c457904812e674cecf77fd031b2ed4 (diff)
downloadqtmultimedia-4ab7633a704f1f7300f4eac5e0eef11f9f3f26ee.tar.gz
Exclude multimedia/windows files from the Unity Build
The `ksmedia.h` shipped with LLVM/MINGW seems to also have symbols that are generally found in `strmif.h` and `ddraw.h`; and that results in double definition of them when doing unity build. Task-number: QTBUG-109394 Change-Id: I8f59cdf39edc8ea5b0b55d9df2eff6778b72204d Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit baf7cdc0a14cdb73dfc73a6dd6c0ac6d91cce213) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--src/multimedia/CMakeLists.txt16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/multimedia/CMakeLists.txt b/src/multimedia/CMakeLists.txt
index 1bb443d11..7a8a4d3d1 100644
--- a/src/multimedia/CMakeLists.txt
+++ b/src/multimedia/CMakeLists.txt
@@ -221,6 +221,22 @@ qt_internal_extend_target(Multimedia CONDITION QT_FEATURE_wmf
ksuser
)
+# Only on Windows' MinGW/LLVM build, symbols from `strmif.h` and `ddraw.h` conflicts
+# with symbols defined in `ksmedia.h`.
+qt_internal_extend_target(Multimedia CONDITION QT_FEATURE_wmf AND MINGW
+ NO_UNITY_BUILD_SOURCES
+ windows/qwindowsaudiodevice.cpp windows/qwindowsaudiodevice_p.h
+ windows/qwindowsaudiosource.cpp windows/qwindowsaudiosource_p.h
+ windows/qwindowsaudiosink.cpp windows/qwindowsaudiosink_p.h
+ windows/qwindowsaudioutils.cpp windows/qwindowsaudioutils_p.h
+ windows/qwindowsmediadevices.cpp windows/qwindowsmediadevices_p.h
+ windows/qwindowsmediafoundation.cpp windows/qwindowsmediafoundation_p.h
+ windows/qwindowsresampler.cpp windows/qwindowsresampler_p.h
+ windows/qwindowsmultimediautils.cpp windows/qwindowsmultimediautils_p.h
+ windows/qwindowsmfdefs.cpp windows/qwindowsmfdefs_p.h
+ windows/qwindowsiupointer_p.h
+)
+
qt_internal_extend_target(Multimedia CONDITION WASM
SOURCES
wasm/qwasmmediadevices.cpp wasm/qwasmmediadevices_p.h