Advertisement
Guest User

Untitled

a guest
Dec 5th, 2014
207
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.74 KB | None | 0 0
  1. pkgname=oculus-rift-sdk-jherico-git
  2. pkgver=160.3a40e61
  3. pkgrel=1
  4. _branch=master
  5. pkgdesc="Oculus SDK community version. 32/64 bit static/shared library, OculusTuscanyDemo. OculusConfigUtil, /etc/xdg/autostart/oculusd.desktop. Set OCULUS_SDK=/usr/include/ovr-0.4.4/. Do 'OVR_DEBUG=1 makepkg' to make a debug build."
  6. arch=('x86_64')
  7. url="https://github.com/jherico/OculusSDK"
  8. license=('custom')
  9. #depends=('oculus-udev')
  10. optdepends=("libudev.so.0: The closed config utility is linked against libudev.so.0"
  11. "oculus-udev: Udev rule to make the rift sensors usable to the user \"plugdev\"")
  12. makedepends=('git' 'patchelf') #TODO: Fix cmake to set rpath right first time
  13. provides=()
  14. conflicts=()
  15. replaces=()
  16. backup=()
  17. options=('!strip')
  18. install=
  19.  
  20. # Config Util is directly binaries from oculus rift sdk upstream. Look it up, if you like
  21. source=("git+https://github.com/jherico/OculusSDK.git#branch=$_branch"
  22. "git+https://github.com/jherico/jocular.git"
  23. "git+https://github.com/jherico/python-ovrsdk.git"
  24. "git+https://github.com/jherico/cmake.git"
  25. "http://haagch.frickel.club/files/ovr_sdk_linux_0.4.4/ConfigUtil.tar.xz"
  26. "http://haagch.frickel.club/files/ovr_sdk_linux_0.4.4/oculusd"
  27. 'libovr.pc'
  28. 'OculusTuscanyDemo.sh'
  29. 'OculusConfigUtil.sh')
  30.  
  31. pkgver() {
  32. cd "$srcdir/OculusSDK"
  33. echo $(git rev-list --count HEAD).$(git rev-parse --short HEAD)
  34. }
  35.  
  36. prepare() {
  37. # add SHARED keyword to build shared libOVR.so
  38. cd "$srcdir/OculusSDK"
  39. install -d ../orig
  40. cp -ra * ../orig
  41. # sed -i "s/add_library(OculusVR /add_library(OculusVR SHARED /g" LibOVR/CMakeLists.txt
  42. git submodule init
  43. git config submodule.Bindings/Java.url "$srcdir/jocular"
  44. git config submodule.Bindings/Python.url "$srcdir/python-ovrsdk"
  45. git config submodule.cmake.url "$srcdir/cmake"
  46. git submodule update
  47. }
  48.  
  49. build() {
  50. if [ -z ${OVR_DEBUG+x} ]
  51. then
  52. msg "Setting BUILDTYPE to Release"
  53. export BUILDTYPE="Release"
  54. else
  55. echo "Setting BUILDTYPE to Debug"
  56. export BUILDTYPE="Debug"; export D="d"
  57. fi
  58.  
  59. cd "$srcdir/OculusSDK"
  60.  
  61. mkdir -p "$srcdir/lib32" "$srcdir/lib64" "$srcdir/share"
  62.  
  63. msg "Building 64 bit shared library"
  64. cmake -DCMAKE_INSTALL_PREFIX=/usr/ -DOCULUS_BUILD_SAMPLES=1 -DCMAKE_BUILD_TYPE=${BUILDTYPE} -DBUILD_SHARED_LIBS=ON .
  65. make
  66. install output/libOculusVR${D}.so "$srcdir/lib64"
  67. # install output/libOVR_C.so "$srcdir/lib64" #doesn't get built anymore?
  68. patchelf --set-rpath /usr/lib/ output/OculusWorldDemo
  69. install output/OculusWorldDemo "$srcdir/share" # now dynamically linked
  70.  
  71. git clean -xfd
  72.  
  73. msg "Building 64 bit static library and demo"
  74. # sed -i "s/SHARED/STATIC/g" LibOVR/CMakeLists.txt
  75. cmake -DCMAKE_INSTALL_PREFIX=/usr/ -DOCULUS_BUILD_SAMPLES=0 -DCMAKE_BUILD_TYPE=${BUILDTYPE} -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON .
  76. make
  77. install output/libOculusVR${D}.a "$srcdir/lib64"
  78.  
  79. git clean -xfd
  80.  
  81. msg "Building 32 bit static library" #and demo"
  82. CC="gcc -m32" CXX="g++ -m32" cmake -DCMAKE_INSTALL_PREFIX=/usr/ -DOCULUS_BUILD_SAMPLES=0 -DCMAKE_BUILD_TYPE=${BUILDTYPE} -DBUILD_SHARED_LIBS=OFF .
  83. make
  84. install output/libOculusVR${D}.a "$srcdir/lib32"
  85. #patchelf --set-rpath /usr/lib32/ output/OculusWorldDemo
  86. # install output/OculusWorldDemo "$srcdir/share/OculusWorldDemo32"
  87.  
  88. git clean -xfd
  89.  
  90. msg "Building 32 bit shared library"
  91. # sed -i "s/STATIC/SHARED/g" LibOVR/CMakeLists.txt
  92. CC="gcc -m32" CXX="g++ -m32" cmake -DCMAKE_INSTALL_PREFIX=/usr/ -DOCULUS_BUILD_SAMPLES=0 -DCMAKE_BUILD_TYPE=${BUILDTYPE} -DBUILD_SHARED_LIBS=ON .
  93. make
  94. install output/libOculusVR${D}.so "$srcdir/lib32"
  95. # install output/libOVR_C.so "$srcdir/lib32"
  96. }
  97.  
  98. package() {
  99. cd "$srcdir/OculusSDK"
  100. oculusv=$(cat LibOVR/Include/OVR_Version.h | sed -n 's/.*#define OVR_VERSION_STRING "\(.*\)"/\1/p')
  101.  
  102. #make DESTDIR="$pkgdir/" install
  103. install -d "$pkgdir/usr/lib"
  104. install -d "$pkgdir/usr/lib32"
  105. install -d "$pkgdir/usr/include/ovr-$oculusv/ovr"
  106. install -d "$pkgdir/usr/share/"
  107. install -d "$pkgdir/usr/lib/pkgconfig/"
  108.  
  109. install "$srcdir/libovr.pc" "$pkgdir/usr/lib/pkgconfig/"
  110. sed -i "s/@PACKAGE_VERSION@/$oculusv/g" "$pkgdir/usr/lib/pkgconfig/libovr.pc"
  111.  
  112. cp -ra "Samples/OculusWorldDemo/Assets/Tuscany/" "$pkgdir/usr/share/OculusTuscanyDemo"
  113. install "$srcdir/share/OculusWorldDemo" "$pkgdir/usr/share/OculusTuscanyDemo/OculusWorldDemo64"
  114. # install "$srcdir/share/OculusWorldDemo32" "$pkgdir/usr/share/OculusTuscanyDemo/OculusWorldDemo32"
  115.  
  116. cp -ra "$srcdir/ConfigUtil" "$pkgdir/usr/share/OculusConfigUtil"
  117.  
  118. install "$srcdir/lib32"/* "$pkgdir/usr/lib32/"
  119. install "$srcdir/lib64"/* "$pkgdir/usr/lib/"
  120.  
  121. # cp -ra "LibOVR/Include" "$pkgdir/usr/include/ovr-$oculusv/"
  122. # cp -ra "LibOVR/Src" "$pkgdir/usr/include/ovr-$oculusv/"
  123. # Some programs like minecrift need the whole SDK and not just the usual headers
  124. cp -ra ../orig/* "$pkgdir/usr/include/ovr-$oculusv/"
  125. ln -s /usr/include/ovr-0.4.4/LibOVR/Include "$pkgdir"/usr/include/ovr-0.4.4/
  126. ln -s /usr/include/ovr-0.4.4/LibOVR/Src "$pkgdir"/usr/include/ovr-0.4.4/
  127.  
  128. mkdir -p "${pkgdir}/usr/bin"
  129. install -m755 "${srcdir}/OculusConfigUtil.sh" "${pkgdir}/usr/bin/OculusConfigUtil"
  130. install -m755 "${srcdir}/OculusTuscanyDemo.sh" "${pkgdir}/usr/bin/OculusTuscanyDemo"
  131.  
  132. install -m 755 "${srcdir}/oculusd" "${pkgdir}/usr/bin/"
  133.  
  134. install -d "$pkgdir/etc/xdg/autostart"
  135. echo "[Desktop Entry]
  136. Type=Application
  137. Name=Oculus Rift Service
  138. Exec=/usr/bin/oculusd" > "$pkgdir/etc/xdg/autostart/oculusd.desktop"
  139. }
  140.  
  141. # vim:set ts=2 sw=2 et:
  142. md5sums=('SKIP'
  143. 'SKIP'
  144. 'SKIP'
  145. 'SKIP'
  146. 'cb4e57e7e3642ce7ca513df76dc4c7c6'
  147. '7f9b36604772c09e82ad0af810fa3086'
  148. '42229985530d52b42f6127281a4478e4'
  149. '6bc87973022d3763ad4c81c2cdd92713'
  150. 'cf6564fda559b6d9fa5219d7a18dd78d')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement