summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-qt/qtquick3d')
-rw-r--r--dev-qt/qtquick3d/Manifest2
-rw-r--r--dev-qt/qtquick3d/files/qtquick3d-6.6.2-gcc14.patch23
-rw-r--r--dev-qt/qtquick3d/files/qtquick3d-6.6.2-x32abi.patch12
-rw-r--r--dev-qt/qtquick3d/metadata.xml18
-rw-r--r--dev-qt/qtquick3d/qtquick3d-6.7.0.ebuild48
-rw-r--r--dev-qt/qtquick3d/qtquick3d-6.7.1.ebuild48
-rw-r--r--dev-qt/qtquick3d/qtquick3d-6.7.9999.ebuild48
-rw-r--r--dev-qt/qtquick3d/qtquick3d-6.9999.ebuild48
8 files changed, 247 insertions, 0 deletions
diff --git a/dev-qt/qtquick3d/Manifest b/dev-qt/qtquick3d/Manifest
new file mode 100644
index 000000000000..05308ef6fc4d
--- /dev/null
+++ b/dev-qt/qtquick3d/Manifest
@@ -0,0 +1,2 @@
+DIST qtquick3d-everywhere-src-6.7.0.tar.xz 66175916 BLAKE2B 6e351845fd1056a1ee3cbb1f66a715c6a23b3eb2e09812e9cf262930404b3d0a6aaf52e619ac9bff502f3f07df2c54716baf262d6ffbe4cb77658d6090cd1765 SHA512 1262fccbbf7bd31aa122837998f3a903c191e70a270a2a678842e6f8209336b39f5523582e7b4ab88f0db98e357993c34f857ae2a34c7e7ac29597377459576b
+DIST qtquick3d-everywhere-src-6.7.1.tar.xz 66184636 BLAKE2B c0ae24f0a1b635c0b71e1223e5cfd2d74184b68239d4a89ebf60c9563e1577d856cc3003bf365ee6d2e4a0550eb71a851c6f96c9d0dbd555bf114d0ba524a644 SHA512 a26da739a949011c33c989456658c6f91dbc991a2570d7ac2abc78189c3daa78d5e7ea25e0f3f5828e6f9dececbd5c18b2cc67cf9d16badd36c98781fd882a44
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/files/qtquick3d-6.6.2-x32abi.patch b/dev-qt/qtquick3d/files/qtquick3d-6.6.2-x32abi.patch
new file mode 100644
index 000000000000..981f2f87b3c6
--- /dev/null
+++ b/dev-qt/qtquick3d/files/qtquick3d-6.6.2-x32abi.patch
@@ -0,0 +1,12 @@
+https://bugs.gentoo.org/926094
+https://bugreports.qt.io/browse/QTBUG-122955
+
+https://bugs.gentoo.org/926093
+https://github.com/embree/embree/issues/477
+--- a/src/3rdparty/embree/common/sys/platform.h
++++ b/src/3rdparty/embree/common/sys/platform.h
+@@ -34,3 +34,3 @@
+ /* detect 64 bit platform */
+-#if defined(__X86_64__) || defined(__aarch64__)
++#if (defined(__X86_64__) || defined(__aarch64__)) && ! defined(__ILP32__)
+ #define __64BIT__
diff --git a/dev-qt/qtquick3d/metadata.xml b/dev-qt/qtquick3d/metadata.xml
new file mode 100644
index 000000000000..8712e36848d5
--- /dev/null
+++ b/dev-qt/qtquick3d/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>https://doc.qt.io/</doc>
+ <remote-id type="github">qt/qtquick3d</remote-id>
+ </upstream>
+ <slots>
+ <subslots>
+ Must only be used by packages that are known to use private parts of the Qt API.
+ </subslots>
+ </slots>
+</pkgmetadata>
diff --git a/dev-qt/qtquick3d/qtquick3d-6.7.0.ebuild b/dev-qt/qtquick3d/qtquick3d-6.7.0.ebuild
new file mode 100644
index 000000000000..1e7d17bf3fa6
--- /dev/null
+++ b/dev-qt/qtquick3d/qtquick3d-6.7.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit qt6-build
+
+DESCRIPTION="Qt module and API for defining 3D content in Qt QuickTools"
+
+if [[ ${QT6_BUILD_TYPE} == release ]]; then
+ KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+elif [[ ${QT6_BUILD_TYPE} == live ]]; then
+ EGIT_SUBMODULES=() # skip qtquick3d-assimp
+fi
+
+IUSE="opengl vulkan"
+
+RDEPEND="
+ ~dev-qt/qtbase-${PV}:6[concurrent,gui,opengl=,vulkan=,widgets]
+ ~dev-qt/qtdeclarative-${PV}:6
+ ~dev-qt/qtquicktimeline-${PV}:6
+ ~dev-qt/qtshadertools-${PV}:6
+ media-libs/assimp:=
+ sys-libs/zlib:=
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( ~dev-qt/qtbase-${PV}:6[network] )
+ vulkan? ( dev-util/vulkan-headers )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.6.2-gcc14.patch
+ "${FILESDIR}"/${PN}-6.6.2-x32abi.patch
+)
+
+CMAKE_SKIP_TESTS=(
+ # collada support is disabled in system media-libs/assimp (bug #891787)
+ tst_qquick3dassetimport
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DQT_FEATURE_system_assimp=ON
+ )
+
+ qt6-build_src_configure
+}
diff --git a/dev-qt/qtquick3d/qtquick3d-6.7.1.ebuild b/dev-qt/qtquick3d/qtquick3d-6.7.1.ebuild
new file mode 100644
index 000000000000..b7438f43ac1d
--- /dev/null
+++ b/dev-qt/qtquick3d/qtquick3d-6.7.1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit qt6-build
+
+DESCRIPTION="Qt module and API for defining 3D content in Qt QuickTools"
+
+if [[ ${QT6_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+elif [[ ${QT6_BUILD_TYPE} == live ]]; then
+ EGIT_SUBMODULES=() # skip qtquick3d-assimp
+fi
+
+IUSE="opengl vulkan"
+
+RDEPEND="
+ ~dev-qt/qtbase-${PV}:6[concurrent,gui,opengl=,vulkan=,widgets]
+ ~dev-qt/qtdeclarative-${PV}:6
+ ~dev-qt/qtquicktimeline-${PV}:6
+ ~dev-qt/qtshadertools-${PV}:6
+ media-libs/assimp:=
+ sys-libs/zlib:=
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( ~dev-qt/qtbase-${PV}:6[network] )
+ vulkan? ( dev-util/vulkan-headers )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.6.2-gcc14.patch
+ "${FILESDIR}"/${PN}-6.6.2-x32abi.patch
+)
+
+CMAKE_SKIP_TESTS=(
+ # collada support is disabled in system media-libs/assimp (bug #891787)
+ tst_qquick3dassetimport
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DQT_FEATURE_system_assimp=ON
+ )
+
+ qt6-build_src_configure
+}
diff --git a/dev-qt/qtquick3d/qtquick3d-6.7.9999.ebuild b/dev-qt/qtquick3d/qtquick3d-6.7.9999.ebuild
new file mode 100644
index 000000000000..b7438f43ac1d
--- /dev/null
+++ b/dev-qt/qtquick3d/qtquick3d-6.7.9999.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit qt6-build
+
+DESCRIPTION="Qt module and API for defining 3D content in Qt QuickTools"
+
+if [[ ${QT6_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+elif [[ ${QT6_BUILD_TYPE} == live ]]; then
+ EGIT_SUBMODULES=() # skip qtquick3d-assimp
+fi
+
+IUSE="opengl vulkan"
+
+RDEPEND="
+ ~dev-qt/qtbase-${PV}:6[concurrent,gui,opengl=,vulkan=,widgets]
+ ~dev-qt/qtdeclarative-${PV}:6
+ ~dev-qt/qtquicktimeline-${PV}:6
+ ~dev-qt/qtshadertools-${PV}:6
+ media-libs/assimp:=
+ sys-libs/zlib:=
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( ~dev-qt/qtbase-${PV}:6[network] )
+ vulkan? ( dev-util/vulkan-headers )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.6.2-gcc14.patch
+ "${FILESDIR}"/${PN}-6.6.2-x32abi.patch
+)
+
+CMAKE_SKIP_TESTS=(
+ # collada support is disabled in system media-libs/assimp (bug #891787)
+ tst_qquick3dassetimport
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DQT_FEATURE_system_assimp=ON
+ )
+
+ qt6-build_src_configure
+}
diff --git a/dev-qt/qtquick3d/qtquick3d-6.9999.ebuild b/dev-qt/qtquick3d/qtquick3d-6.9999.ebuild
new file mode 100644
index 000000000000..b7438f43ac1d
--- /dev/null
+++ b/dev-qt/qtquick3d/qtquick3d-6.9999.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit qt6-build
+
+DESCRIPTION="Qt module and API for defining 3D content in Qt QuickTools"
+
+if [[ ${QT6_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+elif [[ ${QT6_BUILD_TYPE} == live ]]; then
+ EGIT_SUBMODULES=() # skip qtquick3d-assimp
+fi
+
+IUSE="opengl vulkan"
+
+RDEPEND="
+ ~dev-qt/qtbase-${PV}:6[concurrent,gui,opengl=,vulkan=,widgets]
+ ~dev-qt/qtdeclarative-${PV}:6
+ ~dev-qt/qtquicktimeline-${PV}:6
+ ~dev-qt/qtshadertools-${PV}:6
+ media-libs/assimp:=
+ sys-libs/zlib:=
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( ~dev-qt/qtbase-${PV}:6[network] )
+ vulkan? ( dev-util/vulkan-headers )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.6.2-gcc14.patch
+ "${FILESDIR}"/${PN}-6.6.2-x32abi.patch
+)
+
+CMAKE_SKIP_TESTS=(
+ # collada support is disabled in system media-libs/assimp (bug #891787)
+ tst_qquick3dassetimport
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DQT_FEATURE_system_assimp=ON
+ )
+
+ qt6-build_src_configure
+}