# Template file for 'godot'
pkgname=godot
version=4.2.1
revision=1
archs="x86_64* i686* aarch64* armv7* ppc64*"
build_style=scons
# Build currently fails with embree-4.X
make_build_args="platform=linuxbsd target=editor progress=no production=yes
 lto=auto builtin_brotli=false builtin_embree=true builtin_enet=false
 builtin_freetype=false builtin_graphite=false builtin_harfbuzz=false
 builtin_icu4c=false builtin_libogg=false builtin_libpng=false
 builtin_libtheora=false builtin_libvorbis=false builtin_libwebp=false
 builtin_mbedtls=false builtin_miniupnpc=false builtin_pcre2=false
 builtin_zlib=false builtin_zstd=false"
hostmakedepends="pkg-config clang"
makedepends="alsa-lib-devel freetype-devel mesa glu-devel libXcursor-devel
 libXi-devel libXinerama-devel libXrender-devel libXrandr-devel libX11-devel
 libpng-devel libwebp-devel libogg-devel libtheora-devel libvorbis-devel
 libenet-devel zlib-devel mbedtls-devel miniupnpc-devel pcre2-devel
 pulseaudio-devel graphite-devel harfbuzz-devel libzstd-devel
 speech-dispatcher-devel brotli-devel icu-devel"
depends="speech-dispatcher"
short_desc="Multiplatform 2D and 3D engine"
maintainer="dataCobra <datacobra@thinkbot.de>"
license="MIT"
homepage="https://www.godotengine.org/"
distfiles="https://github.com/godotengine/godot/archive/${version}-stable.tar.gz"
checksum=716cfd489dbfc91b5e04cc0df8be415ba6eec74c5fb471840275d887cb53ff95
nocross=https://build.voidlinux.org/builders/armv7l_builder/builds/6342/steps/shell_3/logs/stdio

CFLAGS+=" -fPIE -fPIC"
LDFLAGS+=" -pie"

if [ "$XBPS_TARGET_LIBC" = "musl" ]; then
	makedepends+=" libexecinfo-devel"
	depends+=" libexecinfo"
fi

case "$XBPS_TARGET_MACHINE" in
	i686*) arch="x86_32" ;;
	x86_64*) arch="x86_64" ;;
	aarch64*) arch="arm64" ;;
	armv7*) arch="arm32" ;;
	ppc64*) arch="ppc64" ;;
esac

make_build_args+=" arch=$arch"

pre_build() {
	export CXXFLAGS=" $CXXFLAGS "
	export BUILD_NAME="voidlinux"
}

post_patch() {
	vsed -i misc/dist/linux/org.godotengine.Godot.xml -e 's/name="x/name="application-x/g'
}

do_install() {
	vlicense LICENSE.txt
	vinstall ${FILESDIR}/godot.desktop 644 /usr/share/applications/
	vinstall ${wrksrc}/icon.png 644 /usr/share/pixmaps/ godot.png

	case "$XBPS_TARGET_MACHINE" in
		x86_64*) vbin bin/godot.linuxbsd.editor.x86_64 godot;;
		i686*) vbin bin/godot.linuxbsd.editor.x86_32 godot;;
		aarch64*) vbin bin/godot.linuxbsd.editor.arm64 godot;;
		armv7*) vbin bin/godot.linuxbsd.editor.arm32 godot;;
		ppc64*) vbin bin/godot.linuxbsd.editor.ppc64 godot;;
	esac

	vinstall misc/dist/linux/org.godotengine.Godot.xml 644 /usr/share/mime/packages/
	vman misc/dist/linux/godot.6
}
