# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 SCM="" if [ "${PV#9999}" != "${PV}" ] ; then SCM="git-r3" EGIT_REPO_URI="https://github.com/OpenNI/OpenNI" fi inherit ${SCM} flag-o-matic toolchain-funcs java-pkg-opt-2 if [ "${PV#9999}" != "${PV}" ] ; then SRC_URI="" else KEYWORDS="~amd64 ~arm" SRC_URI="https://github.com/OpenNI/OpenNI/archive/Stable-${PV}.tar.gz -> ${P}.tar.gz" S="${WORKDIR}/${PN}-Stable-${PV}" fi DESCRIPTION="OpenNI SDK" HOMEPAGE="https://github.com/OpenNI/OpenNI" LICENSE="Apache-2.0" SLOT="0" IUSE="doc java opengl" RDEPEND=" media-libs/libjpeg-turbo:= virtual/libusb:1 virtual/libudev dev-libs/tinyxml opengl? ( media-libs/freeglut !dev-libs/OpenNI2[opengl] ) java? ( virtual/jre:1.8 ) " DEPEND="${RDEPEND} java? ( virtual/jdk:1.8 )" BDEPEND="doc? ( app-text/doxygen )" PATCHES=( "${FILESDIR}/tinyxml.patch" "${FILESDIR}/jpeg.patch" "${FILESDIR}/soname.patch" "${FILESDIR}/${PN}-1.5.7.10-gcc6.patch" ) src_prepare() { default rm -rf External/{LibJPEG,TinyXml} for i in Platform/Linux/Build/Common/Platform.* Externals/PSCommon/Linux/Build/Platform.* ; do echo "" > ${i} done find . -type f -print0 | xargs -0 sed -i "s:\".*/SamplesConfig.xml:\"${EPREFIX}/usr/share/${PN}/SamplesConfig.xml:" || die } src_compile() { # bug #855671 append-flags -fno-strict-aliasing emake -C "${S}/Platform/Linux/Build" \ CC="$(tc-getCC)" \ CXX="$(tc-getCXX)" \ GLUT_SUPPORTED="$(usex opengl 1 0)" \ $(usex java "" ALL_JAVA_PROJS="") \ $(usex java "" JAVA_SAMPLES="") \ ALL_MONO_PROJS="" \ MONO_SAMPLES="" \ MONO_FORMS_SAMPLES="" if use doc ; then cd "${S}/Source/DoxyGen" doxygen || die fi } src_install() { dolib.so "${S}/Platform/Linux/Bin/"*Release/*.so insinto /usr/include/openni doins -r Include/* dobin "${S}/Platform/Linux/Bin/"*Release/{ni*,Ni*,Sample-*} if use java ; then java-pkg_dojar "${S}/Platform/Linux/Bin/"*Release/*.jar echo "java -jar ${JAVA_PKG_JARDEST}/org.openni.Samples.SimpleViewer.jar" > org.openni.Samples.SimpleViewer dobin org.openni.Samples.SimpleViewer fi insinto /usr/share/${PN} doins Data/* dodoc Documentation/OpenNI_UserGuide.pdf CHANGES NOTICE README if use doc ; then docinto html dodoc -r "${S}/Source/DoxyGen/html/"* dodoc Source/DoxyGen/Text/*.txt fi keepdir /var/lib/ni } pkg_postinst() { if [ "${ROOT:-/}" = "/" ] ; then for i in "${EROOR}/usr/$(get_libdir)"/libnim*.so ; do einfo "Registering module ${i}" niReg -r "${i}" done fi }