diff options
Diffstat (limited to '~lukeshu/openni-all/openni-unstable/PKGBUILD')
-rw-r--r-- | ~lukeshu/openni-all/openni-unstable/PKGBUILD | 294 |
1 files changed, 294 insertions, 0 deletions
diff --git a/~lukeshu/openni-all/openni-unstable/PKGBUILD b/~lukeshu/openni-all/openni-unstable/PKGBUILD new file mode 100644 index 000000000..19d1575a1 --- /dev/null +++ b/~lukeshu/openni-all/openni-unstable/PKGBUILD @@ -0,0 +1,294 @@ +# Maintainer: Luke Shumaker <lukeshu@sbcglobal.net> +# Contributor: Sven Schneider <archlinux.sandmann@googlemail.com> +# Contributor: bugix +# Contributor: Lubosz Sarnecki <lubosz at gmail> + +# unfortunately we can't use $_suf in function names, but sed makes it ok +_suf='-unstable' +pkgname=( + openni$_suf + openni$_suf-docs + + openni$_suf-core + openni$_suf-core-samples + openni$_suf-core-samples-source + + openni$_suf-mono + openni$_suf-mono-samples + openni$_suf-mono-samples-source + + openni$_suf-java + openni$_suf-java-samples + openni$_suf-java-samples-source + ) +pkgver=1.4.0.2 +pkgrel=1 +arch=('i686' 'x86_64') +url="http://www.openni.org/" +license=('GPL') +makedepends=('git' 'doxygen' 'graphviz') +options+=('!strip') +source=() +md5sums=() + +__gitroot="git://github.com/OpenNI/OpenNI.git" +_gitname="openni" +_gitbranch="Unstable-$pkgver" + +_os='Linux' +case "${CARCH}" in +'x86_64') _arch=x64;; +'i686') _arch=x86;; +'arm') _arch=Arm;; # untested +*) _arch=UNSUPPORTED_ARCH;; +esac +_platform="${_os}-${_arch}" + +export MAKEFLAGS+=' -j1 ' + +build() { + cd "${srcdir}" + msg "Connecting to GIT server...." + + #if [ -d ${_gitname} ] ; then + cd ${_gitname} + # git checkout master + # git pull origin + # msg "The local files are updated." + #else + # git clone ${__gitroot} ${_gitname} + # cd ${_gitname} + #fi + git checkout ${_gitbranch} + cd .. + + msg "GIT checkout done or server timeout" + msg "Starting build..." + + #rm -rf "${srcdir}/${_gitname}-build" + #git clone "${srcdir}/${_gitname}" "${srcdir}/${_gitname}-build" + cd "${srcdir}/${_gitname}-build" + + # PATCH + sed -i 's/python /python2 /' "Platform/${_os}/CreateRedist/RedistMaker" + + for sample in NiViewer NiSimpleViewer NiUserTracker NiUserSelection NiHandTracker; do + echo 'USED_LIBS += GL' >> "Platform/${_os}/Build/Samples/${sample}/Makefile" + done + + echo ' +abs_core: $(ALL_MODULES) $(ALL_UTILS) +abs_core_samples: $(CORE_SAMPLES) +abs_java: $(ALL_JAVA_PROJS) +abs_java_samples: $(JAVA_SAMPLES) +abs_mono: $(ALL_MONO_PROJS) +abs_mono_samples: $(MONO_SAMPLES) $(MONO_FORMS_SAMPLES) +' >> "Platform/${_os}/Build/Makefile" + + + # BUILD + cd "Platform/${_os}/Build" + make -j1 \ + abs_core abs_core_samples \ + abs_java abs_java_samples \ + abs_mono abs_mono_samples + cd "../Bin/${_arch}-Release" + ln NiViewer Sample-NiViewer + + cd '../../../Source/DoxyGen' + mkdir html + doxygen Doxyfile + rm -rf html/*.map html*.md5 html/*.hhc html/*.hhp +} + +package_openni-unstable() { + pkgdesc="Open Natural Interface framework" + depends=("openni$_suf-core") + optdepends=("openni$_suf-docs: programmer documentation") + provides=('openni') + conflicts=('openni') +} + +package_openni-unstable-docs() { + pkgdesc="OpenNI programmer documentation" + arch=('any') + provides=('openni-docs') + conflicts=('openni-docs') + + cd "${srcdir}/${_gitname}-build/Source/DoxyGen/" + install -d "${pkgdir}/usr/share/openni" + cp -r html "${pkgdir}/usr/share/openni" +} + +package_openni-unstable-core() { + pkgdesc="OpenNI core libraries" + depends=('libusb' 'freeglut') + install="openni-core.install" + provides=('openni-core') + conflicts=('openni-core') + + cd "${srcdir}/${_gitname}-build/Platform/${_os}/Bin/${_arch}-Release" + + LIB_FILES=' + libnimCodecs.so + libnimMockNodes.so + libnimRecorder.so + libOpenNI.so + ' + install -d "${pkgdir}/usr/lib" + install -m755 $LIB_FILES "${pkgdir}/usr/lib" + + BIN_FILES='niReg niLicense' + install -d "${pkgdir}/usr/bin" + install -m755 $BIN_FILES "${pkgdir}/usr/bin" + + cd "${srcdir}/${_gitname}-build/Include" + install -d "${pkgdir}/usr/include/ni" + install -m644 *.h "${pkgdir}/usr/include/ni" + cp -r "${_platform}" "${pkgdir}/usr/include/ni" + + cd "${srcdir}/${_gitname}-build/Platform/${_os}/Build" + install -d "${pkgdir}/usr/share" + cp -r Common "${pkgdir}/usr/share/common" + + install -d "${pkgdir}/var/lib/ni" +} + +package_openni-unstable-java() { + pkgdesc="OpenNI java wrapper" + depends=("openni$_suf" 'java-environment') + provides=('openni-java') + conflicts=('openni-java') + + cd "${srcdir}/${_gitname}-build/Platform/${_os}/Bin/${_arch}-Release" + + install -d "${pkgdir}/usr/lib" + install -m755 libOpenNI.jni.so "${pkgdir}/usr/lib" + + install -d "${pkgdir}/usr/share/openni/java" + install -m755 org.OpenNI.jar "${pkgdir}/usr/share/openni/java" +} + +package_openni-unstable-mono() { + pkgdesc="OpenNI mono wrapper" + depends=("openni$_suf" 'mono') + install="openni-mono.install" + provides=('openni-mono') + conflicts=('openni-mono') + + cd "${srcdir}/${_gitname}-build/Platform/${_os}/Bin/${_arch}-Release" + + install -d "${pkgdir}/usr/share/openni/mono" + install -m755 OpenNI.net.dll "${pkgdir}/usr/share/openni/mono" +} + +# SAMPLES + +_install_sample_source() { + sample=$1 + makefile="Platform/${_os}/Build/Samples/$sample/Makefile" + install -d "${pkgdir}/usr/share/openni/samples" + cp -r "Samples/$sample" "${pkgdir}/usr/share/openni/samples/$sample" + install -m644 "$makefile" "${pkgdir}/usr/share/openni/samples/$sample" +} + +CORE_SAMPLES=' + AudioSample + BackRecorder + CRead + ConvertXToONI + HandTracker + RecordSynthetic + SimpleCreate + UserSelection + Viewer + SimpleRead SimpleViewer UserTracker' +MONO_SAMPLES='SimpleRead SimpleViewer UserTracker' +JAVA_SAMPLES='SimpleRead SimpleViewer UserTracker' + +package_openni-unstable-core-samples() { + pkgdesc="OpenNI sample programs" + depends=("openni$_suf-core") + optdepends=('openni-core-samples-source: source code for the samples') + provides=('openni-core-samples') + conflicts=('openni-core-samples') + + cd "${srcdir}/${_gitname}-build/Platform/${_os}/Bin/${_arch}-Release" + install -d "${pkgdir}/usr/bin" + for sample in $CORE_SAMPLES; do + install -m755 Sample-Ni$sample "${pkgdir}/usr/bin/niSample-$sample" + done +} +package_openni-unstable-core-samples-source() { + pkgdesc="OpenNI sample programs source code" + depends=("openni$_suf-core") + provides=('openni-core-samples-source') + conflicts=('openni-core-samples-source') + + cd "${srcdir}/${_gitname}-build" + for sample in Viewer $CORE_SAMPLES; do + _install_sample_source Ni$sample + done +} + +package_openni-unstable-java-samples() { + pkgdesc="OpenNI java wrapper sample programs" + depends=("openni$_suf-java") + optdepends=("openni$_suf-java-samples-source: source code for the samples") + arch=('any') + provides=('openni-java-samples') + conflicts=('openni-java-samples') + + cd "${srcdir}/${_gitname}-build/Platform/${_os}/Bin/${_arch}-Release" + install -d "${pkgdir}/usr/bin" + install -d "${pkgdir}/usr/share/openni/java" + for sample in $JAVA_SAMPLES; do + install -m644 org.OpenNI.Samples.$sample.jar "${pkgdir}/usr/share/openni/java" + echo "#/bin/sh +java -jar /usr/share/openni/java/org.OpenNI.Samples.$sample.jar $@ +" > "${pkgdir}/usr/bin/niSample-$sample.jar" + chmod 755 "${pkgdir}/usr/bin/niSample-$sample.jar" + done +} +package_openni-unstable-java-samples-source() { + pkgdesc="OpenNI java wrapper sample programs source code" + depends=("openni$_suf-java") + provides=('openni-java-samples-source') + conflicts=('openni-java-samples-source') + + cd "${srcdir}/${_gitname}-build" + for sample in $JAVA_SAMPLES; do + _install_sample_source $sample.java + done +} + +package_openni-unstable-mono-samples() { + pkgdesc="OpenNI java wrapper sample programs" + depends=("openni$_suf-mono") + optdepends=("openni$_suf-mono-samples-source: source code for the samples") + provides=('openni-mono-samples') + conflicts=('openni-mono-samples') + + cd "${srcdir}/${_gitname}-build/Platform/${_os}/Bin/${_arch}-Release" + install -d "${pkgdir}/usr/bin" + install -d "${pkgdir}/usr/share/openni/mono" + for sample in $MONO_SAMPLES; do + install -m755 $sample.net.exe "${pkgdir}/usr/share/openni/mono" + echo "#/bin/sh +cd /usr/share/openni/mono +mono $sample.net.exe $@ +" > "${pkgdir}/usr/bin/niSample-$sample.net" + chmod 755 "${pkgdir}/usr/bin/niSample-$sample.net" + done +} +package_openni-unstable-mono-samples-source() { + pkgdesc="OpenNI mono wrapper sample programs source code" + depends=("openni$_suf-mono") + provides=('openni-mono-samples-source') + conflicts=('openni-mono-samples-source') + + cd "${srcdir}/${_gitname}-build" + for sample in $MONO_SAMPLES; do + _install_sample_source $sample.net + done +} |