diff mbox series

[6/8] package/qt6/qt6quick3d: new package

Message ID 20241213115820.655993-6-roykollensvendsen@gmail.com
State Accepted
Headers show
Series [1/8] package/qt6: bump version to 6.8.1 | expand

Commit Message

Roy Kollen Svendsen Dec. 13, 2024, 11:58 a.m. UTC
Signed-off-by: Roy Kollen Svendsen <roykollensvendsen@gmail.com>
---
 package/qt6/Config.in                  |  1 +
 package/qt6/qt6quick3d/Config.in       | 10 +++++
 package/qt6/qt6quick3d/qt6quick3d.hash | 14 ++++++
 package/qt6/qt6quick3d/qt6quick3d.mk   | 62 ++++++++++++++++++++++++++
 4 files changed, 87 insertions(+)
 create mode 100644 package/qt6/qt6quick3d/Config.in
 create mode 100644 package/qt6/qt6quick3d/qt6quick3d.hash
 create mode 100644 package/qt6/qt6quick3d/qt6quick3d.mk
diff mbox series

Patch

diff --git a/package/qt6/Config.in b/package/qt6/Config.in
index b1616495a6..2a5f5a4511 100644
--- a/package/qt6/Config.in
+++ b/package/qt6/Config.in
@@ -50,6 +50,7 @@  source "package/qt6/qt6declarative/Config.in"
 source "package/qt6/qt6languageserver/Config.in"
 source "package/qt6/qt6mqtt/Config.in"
 source "package/qt6/qt6opcua/Config.in"
+source "package/qt6/qt6quick3d/Config.in"
 source "package/qt6/qt6quicktimeline/Config.in"
 source "package/qt6/qt6scxml/Config.in"
 source "package/qt6/qt6serialbus/Config.in"
diff --git a/package/qt6/qt6quick3d/Config.in b/package/qt6/qt6quick3d/Config.in
new file mode 100644
index 0000000000..c4b8148039
--- /dev/null
+++ b/package/qt6/qt6quick3d/Config.in
@@ -0,0 +1,10 @@ 
+config BR2_PACKAGE_QT6QUICK3D
+	bool "qt6quick3d"
+	select BR2_PACKAGE_HOST_QT6BASE_CONCURRENT # Host Quick3DRuntimeRender
+	select BR2_PACKAGE_HOST_QT6BASE_GUI
+	select BR2_PACKAGE_HOST_QT6BASE_WIDGETS
+	select BR2_PACKAGE_QT6DECLARATIVE_QUICK
+	help
+	  This package corresponds to the Qt Quick 3D module:
+
+	  https://doc.qt.io/qt-6/qtquick3d-index.html
diff --git a/package/qt6/qt6quick3d/qt6quick3d.hash b/package/qt6/qt6quick3d/qt6quick3d.hash
new file mode 100644
index 0000000000..960cda69ad
--- /dev/null
+++ b/package/qt6/qt6quick3d/qt6quick3d.hash
@@ -0,0 +1,14 @@ 
+# Hash from: https://download.qt.io/official_releases/qt/6.8/6.8.1/submodules/qtquick3d-everywhere-src-6.8.1.tar.xz.sha256
+sha256  3f3d345e6c95fcd40ab37e6a37cd31811e5d239dea8e142e632d4ea41bf20ce7  qtquick3d-everywhere-src-6.8.1.tar.xz
+
+# Hashes for license files
+sha256  9f0490f18656c6f2435bd14f603ef0c96434d1825615363dce43abb42ed1dcce  LICENSES/BSD-3-Clause.txt
+sha256  8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903  LICENSES/GPL-3.0-only.txt
+sha256  d040359701c01996a017d5c515678929cd1b0625e64cb86db44025fbb6cdf1fc  LICENSES/MIT.txt
+sha256  c3ed04bcbea49f521e4ab32c638fa86b13ebc7b8e1a8972807265079fcd1e6b9  src/3rdparty/assimp/LICENSE
+sha256  cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  src/3rdparty/embree/LICENSE.txt
+sha256  063805e3b8e24ceab4c5dea358b03245ee41c31be87cf65c61d836636cb494bb  src/3rdparty/meshoptimizer/LICENSE.md
+sha256  2af9d14c7cd67f13c3e7e91dcfe15ec5c8af42923635441e0f5a75bcadadeb33  src/3rdparty/tinyexr/LICENSE
+sha256  2c16d5b1c2808277fe975b4f70f0fd9afc9b3bcf04e6c676665a82cb2d5579e3  src/3rdparty/xatlas/LICENSE
+sha256  966313e8129db5d0b3b081d1a50ae107da9a3da2d8faa05899e3042a33192525  src/helpers/GODOT_LICENSE.txt
+sha256  966313e8129db5d0b3b081d1a50ae107da9a3da2d8faa05899e3042a33192525  src/runtimerender/GODOT_LICENSE.txt
diff --git a/package/qt6/qt6quick3d/qt6quick3d.mk b/package/qt6/qt6quick3d/qt6quick3d.mk
new file mode 100644
index 0000000000..246bd2d82d
--- /dev/null
+++ b/package/qt6/qt6quick3d/qt6quick3d.mk
@@ -0,0 +1,62 @@ 
+################################################################################
+#
+# qt6quick3d
+#
+################################################################################
+
+QT6QUICK3D_VERSION = $(QT6_VERSION)
+QT6QUICK3D_SITE = $(QT6_SITE)
+QT6QUICK3D_SOURCE = qtquick3d-$(QT6_SOURCE_TARBALL_PREFIX)-$(QT6QUICK3D_VERSION).tar.xz
+QT6QUICK3D_INSTALL_STAGING = YES
+QT6QUICK3D_SUPPORTS_IN_SOURCE_BUILD = NO
+QT6QUICK3D_CMAKE_BACKEND = ninja
+QT6QUICK3D_LICENSE = GPL-3.0
+
+QT6QUICK3D_LICENSE_FILES = \
+	LICENSES/BSD-3-Clause.txt \
+	LICENSES/GPL-3.0-only.txt \
+	LICENSES/MIT.txt \
+	src/3rdparty/assimp/LICENSE \
+	src/3rdparty/embree/LICENSE.txt \
+	src/3rdparty/meshoptimizer/LICENSE.md \
+	src/3rdparty/tinyexr/LICENSE \
+	src/3rdparty/xatlas/LICENSE \
+	src/helpers/GODOT_LICENSE.txt \
+	src/runtimerender/GODOT_LICENSE.txt
+
+QT6QUICK3D_CONF_OPTS = \
+	-DQT_HOST_PATH=$(HOST_DIR) \
+	-DBUILD_WITH_PCH=OFF \
+	-DQT_BUILD_EXAMPLES=OFF \
+	-DQT_BUILD_TESTS=OFF
+
+QT6QUICK3D_DEPENDENCIES = \
+	host-qt6quick3d \
+	host-qt6shadertools \
+	qt6base \
+	qt6declarative
+
+ifeq ($(BR2_PACKAGE_ASSIMP),y)
+QT6QUICK3D_CONF_OPTS += -DFEATURE_system_assimp=ON
+QT6QUICK3D_DEPENDENCIES += assimp
+else
+QT6QUICK3D_CONF_OPTS += -DFEATURE_system_assimp=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_QT6QUICKTIMELINE),y)
+QT6QUICK3D_DEPENDENCIES += qt6quicktimeline
+endif
+
+ifeq ($(BR2_PACKAGE_QT6SHADERTOOLS),y)
+QT6QUICK3D_DEPENDENCIES += qt6shadertools
+endif
+
+ifeq ($(BR2_PACKAGE_ZLIB),y)
+QT6QUICK3D_CONF_OPTS += -DFEATURE_system_zlib=ON
+QT6QUICK3D_DEPENDENCIES += zlib
+else
+QT6QUICK3D_CONF_OPTS += -DFEATURE_system_zlib=OFF
+endif
+
+$(eval $(cmake-package))
+$(eval $(host-cmake-package))