Advertisement
Guest User

Untitled

a guest
Dec 13th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.71 KB | None | 0 0
  1. # Template file for 'libGL'
  2. pkgname=libGL
  3. version=18.3.1
  4. revision=2
  5. wrksrc="mesa-${version}"
  6. build_style=meson
  7. configure_args="-Dshared-glapi=true -Dgbm=true -Degl=true
  8. -Dgallium-vdpau=true -Dgallium-xvmc=true -Dosmesa=gallium
  9. -Dgles1=true -Dgles2=true -Dgallium-va=true -Dlmsensors=true
  10. -Dplatforms=x11,drm,wayland,surfaceless -Dllvm=true
  11. -Db_lto=false"
  12. hostmakedepends="meson flex libxml2-python llvm pkg-config
  13. python3-Mako wayland-protocols wayland-devel"
  14. makedepends="meson elfutils-devel expat-devel libXdamage-devel libXvMC-devel
  15. libXxf86vm-devel libatomic-devel libdrm-devel libffi-devel libva-devel
  16. libvdpau-devel libxshmfence-devel ncurses-devel talloc-devel zlib-devel
  17. wayland-devel wayland-protocols llvm libsensors-devel libXrandr-devel"
  18. short_desc="Graphics library similar to SGI's OpenGL"
  19. maintainer="Juan RP <xtraeme@voidlinux.eu>"
  20. license="MIT, LGPL-2.1-or-later"
  21. homepage="https://www.mesa3d.org/"
  22. changelog="https://www.mesa3d.org/relnotes/${version}.html"
  23. distfiles="https://mesa.freedesktop.org/archive/mesa-${version}.tar.xz"
  24. checksum=5b1f827d28684a25f6657289f8b7d47ac56395988c7ac23e0ec9a62b644bdc63
  25.  
  26. # Set subpackages manually to set proper rdeps in 32bit pkgs.
  27. subpackages="libglapi libgbm libEGL libGLES libOSMesa"
  28.  
  29. case "$XBPS_TARGET_MACHINE" in
  30. i686*|x86_64*)
  31. # Enable all x86 drivers.
  32. configure_args+=" -Dgallium-drivers=r300,r600,radeonsi,svga,swrast,nouveau,virgl"
  33. configure_args+=" -Ddri-drivers=i915,i965,r100,r200,nouveau"
  34. configure_args+=" -Dgallium-xa=true -Ddri3=true -Dgallium-nine=true"
  35. configure_args+=" -Dvulkan-drivers=intel,amd"
  36. configure_args+=" -Dgallium-opencl=icd"
  37. hostmakedepends+=" clang meson"
  38. makedepends+=" libclc-git meson"
  39. subpackages+=" libxatracker mesa-ati-dri mesa-intel-dri mesa-nouveau-dri"
  40. subpackages+=" mesa-vmwgfx-dri mesa-opencl"
  41. ;;
  42. aarch64*)
  43. configure_args+=" -Dgallium-drivers=nouveau,tegra,swrast,vc4"
  44. configure_args+=" -Dvulkan-drivers= -Ddri-drivers="
  45. configure_args+=" -Ddri3=true"
  46. subpackages+=" mesa-tegra-dri mesa-nouveau-dri mesa-vc4-dri"
  47. ;;
  48. armv7l*)
  49. # Enable Videocore IV and swrast for RaspberryPi
  50. configure_args+=" -Dgallium-drivers=swrast,vc4"
  51. configure_args+=" -Dvulkan-drivers= -Ddri-drivers= -Dgallium-xvmc=false"
  52. configure_args+=" -Dgallium-xa=false -Dgallium-vdpau=false -Dgallium-va=false"
  53. subpackages+=" mesa-vc4-dri"
  54. ;;
  55. *)
  56. # Enable swrast driver.
  57. configure_args+=" -Dgallium-drivers=swrast"
  58. configure_args+=" -Ddri-drivers= -Dvulkan-drivers= -Dgallium-va=false"
  59. configure_args+=" -Dgallium-vdpau=false -Dgallium-xvmc=false"
  60. configure_args+=" -Dgallium-xa=false"
  61. ;;
  62. esac
  63.  
  64. case "$XBPS_TARGET_MACHINE" in
  65. armv[5-6]*)
  66. # Enable MISSING_64BIT_ATOMICS for armv[56]*
  67. CFLAGS+=" -DMISSING_64BIT_ATOMICS=1"
  68. CXXFLAGS+=" -DMISSING_64BIT_ATOMICS=1"
  69. ;;
  70. esac
  71.  
  72. # -devel must be the last one for proper order.
  73. subpackages+=" MesaLib-devel"
  74.  
  75. case "$XBPS_TARGET_MACHINE" in
  76. i686) configure_args+=" -Ddri-drivers-path=/usr/lib32/xorg/modules/drivers";;
  77. *) configure_args+=" -Ddri-drivers-path=/usr/lib/xorg/modules/drivers";;
  78. esac
  79.  
  80. case "$XBPS_TARGET_MACHINE" in
  81. # Disable TLS with musl: https://bugs.freedesktop.org/show_bug.cgi?id=35268
  82. *-musl) configure_args+=" -Dglx-use-tls=false";;
  83. *) configure_args+=" -Dglx=dri";;
  84. esac
  85.  
  86. post_install() {
  87. vlicense docs/license.html
  88. vmkdir usr/lib/xorg/modules/extensions
  89. ln -s libglx-xorg.so ${DESTDIR}/usr/lib/xorg/modules/extensions/libglx.so
  90. }
  91.  
  92. libglapi_package() {
  93. depends="libudev"
  94. short_desc="Free implementation of the GL API - shared library"
  95. pkg_install() {
  96. vmove "usr/lib/libglapi.so.*"
  97. }
  98. }
  99.  
  100. libgbm_package() {
  101. short_desc="Mesa Generic buffer management API - runtime"
  102. pkg_install() {
  103. vmove "usr/lib/libgbm.so.*"
  104. }
  105. }
  106.  
  107. libEGL_package() {
  108. short_desc="Free implementation of the EGL API - runtime"
  109. pkg_install() {
  110. vmove "usr/lib/libEGL*.so.*"
  111. }
  112. }
  113.  
  114. libGLES_package() {
  115. depends="libudev"
  116. short_desc="Free implementation of the OpenGL|ES 1.x and 2.x API"
  117. pkg_install() {
  118. vmove "usr/lib/libGLES*.so.*"
  119. }
  120. }
  121.  
  122. libOSMesa_package() {
  123. short_desc="Mesa Off-Screen interface library"
  124. pkg_install() {
  125. vmove "usr/lib/libOSMesa.so.*"
  126. }
  127. }
  128.  
  129. MesaLib-devel_package() {
  130. depends="xorgproto libxshmfence-devel libXext-devel libXxf86vm-devel
  131. libXdamage-devel expat-devel libXfixes-devel libX11-devel libxcb-devel
  132. libdrm-devel libGL>=${version}_${revision} libEGL>=${version}_${revision}
  133. libOSMesa>=${version}_${revision} libgbm>=${version}_${revision}
  134. libGLES>=${version}_${revision}"
  135. case "$XBPS_TARGET_MACHINE" in
  136. i686*|x86_64*) depends+=" libxatracker>=${version}_${revision}";;
  137. esac
  138. short_desc+=" - development files"
  139. pkg_install() {
  140. vmove usr/include
  141. vmove usr/lib/pkgconfig
  142. vmove "usr/lib/*.so"
  143. }
  144. }
  145.  
  146. libxatracker_package() {
  147. short_desc="Mesa XA tracker interface library"
  148. pkg_install() {
  149. vmove "usr/lib/libxatracker*.so.*"
  150. }
  151. }
  152.  
  153. mesa-ati-dri_package() {
  154. short_desc="Mesa DRI drivers for ATI GPUs"
  155. pkg_install() {
  156. vmove "usr/lib/libXvMCr[36]00.so.*"
  157. vmove "usr/lib/vdpau/libvdpau_r[36]00.so*"
  158. vmove "usr/lib/vdpau/libvdpau_radeon*.so*"
  159. vmove "usr/lib/xorg/modules/drivers/radeon*"
  160. vmove "usr/lib/xorg/modules/drivers/r[236]00*"
  161. vmove "usr/lib/gallium-pipe/pipe_r[36]00.so"
  162. vmove usr/lib/gallium-pipe/pipe_radeonsi.so
  163. vmove usr/lib/dri/r*
  164. vmove "usr/share/vulkan/icd.d/radeon_icd*.json"
  165. vmove "usr/lib/libvulkan_radeon.so"
  166. }
  167. }
  168.  
  169. mesa-intel-dri_package() {
  170. short_desc="Mesa DRI drivers for Intel GPUs"
  171. pkg_install() {
  172. vmove "usr/lib/xorg/modules/drivers/i9[16]5_dri.*"
  173. vmove "usr/share/vulkan/icd.d/intel_icd*.json"
  174. vmove "usr/lib/libvulkan_intel.so"
  175. }
  176. }
  177.  
  178. mesa-nouveau-dri_package() {
  179. short_desc="Mesa DRI drivers for NVIDIA GPUs (nouveau dri)"
  180. pkg_install() {
  181. vmove "usr/lib/libXvMCnouveau.so.*"
  182. vmove "usr/lib/vdpau/libvdpau_nouveau.so*"
  183. vmove "usr/lib/xorg/modules/drivers/nouveau*"
  184. vmove "usr/lib/dri/nouveau*"
  185. case "$XBPS_TARGET_MACHINE" in
  186. aarch64*) ;;
  187. *) vmove usr/lib/gallium-pipe/pipe_nouveau.so ;;
  188. esac
  189. }
  190. }
  191.  
  192. mesa-vmwgfx-dri_package() {
  193. short_desc="Mesa DRI drivers for VMware"
  194. pkg_install() {
  195. vmove "usr/lib/xorg/modules/drivers/vmwgfx*"
  196. vmove usr/lib/gallium-pipe/pipe_vmwgfx.so
  197. }
  198. }
  199.  
  200. mesa-vc4-dri_package() {
  201. short_desc="Mesa DRI drivers for Videocore IV GPU"
  202. pkg_install() {
  203. vmove "usr/lib/xorg/modules/drivers/vc4*"
  204. }
  205. }
  206.  
  207. mesa-opencl_package() {
  208. short_desc="Mesa implementation of OpenCL (r600+ only)"
  209. depends="libclc libOpenCL"
  210. pkg_install() {
  211. vmove etc/OpenCL
  212. vmove "usr/lib/libMesaOpenCL*"
  213. }
  214. }
  215.  
  216. mesa-tegra-dri_package() {
  217. short_desc="Mesa DRI drivers for Tegra GPU"
  218. depends="mesa-nouveau-dri"
  219. pkg_install() {
  220. vmove "usr/lib/xorg/modules/drivers/tegra*"
  221. }
  222. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement