diff options
| author | Ionen Wolkens <ionen@gentoo.org> | 2024-02-07 00:22:11 -0500 |
|---|---|---|
| committer | Ionen Wolkens <ionen@gentoo.org> | 2024-02-14 07:20:52 -0500 |
| commit | 37bd373cd33c36f8dd44e71be25fa6ea24cf4588 (patch) | |
| tree | 35ea788841c26164868395c62bb1bb099e3f61f3 | |
| parent | 17813c8c6e4bdd94e8247c13955c4fc810a43e1f (diff) | |
| download | gentoo-37bd373cd33c36f8dd44e71be25fa6ea24cf4588.tar.gz gentoo-37bd373cd33c36f8dd44e71be25fa6ea24cf4588.tar.bz2 gentoo-37bd373cd33c36f8dd44e71be25fa6ea24cf4588.zip | |
dev-qt/qtquick3d: fix build with gcc14
Bug: https://bugs.gentoo.org/917407
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
| -rw-r--r-- | dev-qt/qtquick3d/files/qtquick3d-6.6.2-gcc14.patch | 23 | ||||
| -rw-r--r-- | dev-qt/qtquick3d/qtquick3d-6.6.9999.ebuild | 4 | ||||
| -rw-r--r-- | dev-qt/qtquick3d/qtquick3d-6.7.9999.ebuild | 4 | ||||
| -rw-r--r-- | dev-qt/qtquick3d/qtquick3d-6.9999.ebuild | 4 |
4 files changed, 35 insertions, 0 deletions
diff --git a/dev-qt/qtquick3d/files/qtquick3d-6.6.2-gcc14.patch b/dev-qt/qtquick3d/files/qtquick3d-6.6.2-gcc14.patch new file mode 100644 index 000000000000..f6362641a00c --- /dev/null +++ b/dev-qt/qtquick3d/files/qtquick3d-6.6.2-gcc14.patch @@ -0,0 +1,23 @@ +Qt undefs __AVX__ and others[1] to prevent bundled embree from using +AVX/SSE4.2 code paths and result in linking errors, but this appears +insufficient with gcc14[2]. + +Until Qt improves this, for simplicity pass -mno-* to bundled embree +as a workaround which lets the compiler disable these instead and +that includes other features which depend on these. + +(note that embree is only used on amd64 and aarch64) + +Ideal would be to unbundle this and let system embree use the full +feature set, but there is no machinery to easily allow it. + +[1] https://github.com/qt/qtquick3d/commit/7980cfd0 +[2] https://bugs.gentoo.org/917407 +--- a/src/3rdparty/embree/CMakeLists.txt ++++ b/src/3rdparty/embree/CMakeLists.txt +@@ -64,2 +64,5 @@ + # Use SSE2 only, ignore AVX/SSE4.2 for now ++if (TEST_architecture_arch STREQUAL x86_64) ++ qt_internal_extend_target(BundledEmbree COMPILE_OPTIONS -mno-avx -mno-sse4.2) ++endif() + qt_internal_extend_target(BundledEmbree DEFINES diff --git a/dev-qt/qtquick3d/qtquick3d-6.6.9999.ebuild b/dev-qt/qtquick3d/qtquick3d-6.6.9999.ebuild index d3388e178e73..f1ff25e4b555 100644 --- a/dev-qt/qtquick3d/qtquick3d-6.6.9999.ebuild +++ b/dev-qt/qtquick3d/qtquick3d-6.6.9999.ebuild @@ -29,6 +29,10 @@ DEPEND=" vulkan? ( dev-util/vulkan-headers ) " +PATCHES=( + "${FILESDIR}"/${PN}-6.6.2-gcc14.patch +) + CMAKE_SKIP_TESTS=( # collada support is disabled in system media-libs/assimp (bug #891787) tst_qquick3dassetimport diff --git a/dev-qt/qtquick3d/qtquick3d-6.7.9999.ebuild b/dev-qt/qtquick3d/qtquick3d-6.7.9999.ebuild index d3388e178e73..f1ff25e4b555 100644 --- a/dev-qt/qtquick3d/qtquick3d-6.7.9999.ebuild +++ b/dev-qt/qtquick3d/qtquick3d-6.7.9999.ebuild @@ -29,6 +29,10 @@ DEPEND=" vulkan? ( dev-util/vulkan-headers ) " +PATCHES=( + "${FILESDIR}"/${PN}-6.6.2-gcc14.patch +) + CMAKE_SKIP_TESTS=( # collada support is disabled in system media-libs/assimp (bug #891787) tst_qquick3dassetimport diff --git a/dev-qt/qtquick3d/qtquick3d-6.9999.ebuild b/dev-qt/qtquick3d/qtquick3d-6.9999.ebuild index d3388e178e73..f1ff25e4b555 100644 --- a/dev-qt/qtquick3d/qtquick3d-6.9999.ebuild +++ b/dev-qt/qtquick3d/qtquick3d-6.9999.ebuild @@ -29,6 +29,10 @@ DEPEND=" vulkan? ( dev-util/vulkan-headers ) " +PATCHES=( + "${FILESDIR}"/${PN}-6.6.2-gcc14.patch +) + CMAKE_SKIP_TESTS=( # collada support is disabled in system media-libs/assimp (bug #891787) tst_qquick3dassetimport |
