summaryrefslogtreecommitdiffstats
path: root/src/multimedia/CMakeLists.txt
diff options
context:
space:
mode:
authorAmir Masoud Abdol <amir.abdol@qt.io>2023-04-14 12:13:41 +0200
committerAmir Masoud Abdol <amir.abdol@qt.io>2023-04-14 15:21:28 +0200
commitbaf7cdc0a14cdb73dfc73a6dd6c0ac6d91cce213 (patch)
tree6de47f10839ffd905a6585dd8bcb15f4cfa5dcb8 /src/multimedia/CMakeLists.txt
parent01caaf362a17d167cd9c0fb4501f35d0b15abb1e (diff)
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. Pick-to: 6.5 Task-number: QTBUG-109394 Change-Id: I8f59cdf39edc8ea5b0b55d9df2eff6778b72204d Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'src/multimedia/CMakeLists.txt')
-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