# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
pkgname=qt5-qtquick3d
pkgver=5.15.10_git20230612
pkgrel=1
_module="${pkgname#qt5-}"
_pkgver=353f50a9851518eb637181c00302cd354e0ae98b
_fullname=$_module-$_pkgver
pkgdesc="Qt module and API for defining 3D content in Qt Quick"
url="https://www.qt.io/developers/"
license="LGPL-2.1-only AND LGPL-3.0-only AND GPL-3.0-only AND Qt-GPL-exception-1.0"
# armhf blocked by qt5-qtdeclarative
# s390x blocked by assimp
arch="all !armhf !s390x"
makedepends="
	assimp-dev
	qt5-qt3d-dev
	qt5-qtbase-dev
	qt5-qtdeclarative-dev
	"
subpackages="$pkgname-dev $pkgname-doc"
source="https://dev.alpinelinux.org/archive/qt/$_fullname.tar.xz"
builddir="$srcdir/$_fullname"

_disturl="dev.alpinelinux.org:/archive/qt/"
snapshot() {
	clean
	makedepends="git xz rsync tar" deps
	mkdir -p "$srcdir" && cd "$srcdir"
	git clone --filter=tree:0 https://invent.kde.org/qt/qt/$_module.git .
	git archive --format tar --prefix=$_fullname/ $_pkgver > "$SRCDEST"/$_fullname.tar
	xz -vv -T0 -9 -e "$SRCDEST"/$_fullname.tar
	rsync --progress -La "$SRCDEST"/$_fullname.tar.xz $_disturl
}

prepare() {
	default_prepare

	# We need to make the build system think we're running in a git repository
	# so it correctly symlinks during the build
	mkdir .git
}

build() {
	qmake-qt5
	make
}

check() {
	make check
}

package() {
	make INSTALL_ROOT="$pkgdir" install

	# Drop QMAKE_PRL_BUILD_DIR because reference the build dir
	find "$pkgdir/usr/lib" -type f -name '*.prl' \
		-exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;

	install -d "$pkgdir"/usr/share/licenses
	ln -s qt5-base "$pkgdir"/usr/share/licenses/$pkgname
}

sha512sums="
d032b0629e6f8f9cbe46780cc51b3d6291df72820a29cf50ad82f5da59b2e355b972502801aff181680e1bbe2c3c2318b95057e998528b7253b178559dd45ff1  qtquick3d-353f50a9851518eb637181c00302cd354e0ae98b.tar.xz
"
