# Template file for 'rpi-userland'
_githash="517cdc30da167d81a485e7a994e02cec2390a269"
_gitshort="${_githash:0:7}"

pkgname=rpi-userland
version=20190501
revision=2
wrksrc="userland-${_githash}"
build_style=cmake
hostmakedepends="pkg-config"
configure_args="-DCMAKE_INSTALL_RPATH=/opt/vc/lib"
short_desc="Raspberry Pi GPU userland libraries and utilities (git ${_gitshort})"
maintainer="Orphaned <orphan@voidlinux.org>"
license="BSD-3-Clause"
homepage="https://github.com/raspberrypi/userland"
distfiles="https://github.com/raspberrypi/userland/archive/${_githash}.tar.gz"
checksum=f75b0e4f992313c6248c6e4e2229d59a49dd4153d67f23a05953dfc059b06e7f

LDFLAGS="-Wl,--no-as-needed"
archs="armv6l* armv7l* aarch64*"

shlib_provides="
 libEGL.so
 libGLESv2.so
 libOpenVG.so
 libWFC.so
 libbcm_host.so
 libbrcmEGL.so
 libbrcmGLESv2.so
 libbrcmOpenVG.so
 libbrcmWFC.so
 libcontainers.so
 libdebug_sym.so
 libdtovl.so
 libmmal.so
 libmmal_components.so
 libmmal_core.so
 libmmal_util.so
 libmmal_vc_client.so
 libopenmaxil.so
 libvchiq_arm.so
 libvcos.so
 libvcsm.so"

case "$XBPS_TARGET_MACHINE" in
aarch64*) configure_args+=" -DARM64=on" ;;
esac

pre_configure() {
	for f in $(find ${wrksrc} -type f -name CMakeLists.txt); do
		sed -i 's,-Werror,,g' $f
	done
}
post_install() {
	vlicense LICENCE
	vmkdir usr/lib/pkgconfig
	mv ${DESTDIR}/opt/vc/lib/pkgconfig/*.pc ${DESTDIR}/usr/lib/pkgconfig
	rm -rf ${DESTDIR}/etc
	rm -rf ${DESTDIR}/opt/vc/share

	case "$XBPS_TARGET_MACHINE" in
		*-musl)
			vmkdir etc
			echo /lib:/usr/local/lib:/usr/lib:/opt/vc/lib > ${DESTDIR}/etc/ld-musl-armhf.path
			;;
		*)
			vmkdir etc/ld.so.conf.d
			echo /opt/vc/lib > ${DESTDIR}/etc/ld.so.conf.d/rpi-userland.conf
			;;
	esac
}

rpi-userland-devel_package() {
	provides="rpi-firmware-pcfiles-1_1"
	replaces="rpi-firmware-pcfiles>=0"
	depends="${sourcepkg}>=${version}_${revision}"
	short_desc+=" - development files"
	pkg_install() {
		vmove opt/vc/include
		vmove opt/vc/src
		vmove opt/vc/lib/*.a
		vmove usr/lib/pkgconfig
	}
}
