1SUMMARY="GL Vendor-Neutral Dispatch Library" 2DESCRIPTION="libglvnd translates Haiku's OpenGL kit to a modern EGL-based graphics rendering \ 3pipeline." 4HOMEPAGE="http://gitlab.freedesktop.org/glvnd/libglvnd" 5COPYRIGHT="2013, NVIDIA CORPORATION" 6LICENSE="MIT" 7REVISION="4" 8SOURCE_URI="https://gitlab.freedesktop.org/glvnd/libglvnd/-/archive/v$portVersion/libglvnd-v$portVersion.tar.gz" 9SOURCE_DIR="libglvnd-v$portVersion" 10CHECKSUM_SHA256="2b6e15b06aafb4c0b6e2348124808cbd9b291c647299eaaba2e3202f51ff2f3d" 11PATCHES="libglvnd-${portVersion}.patchset" 12 13ARCHITECTURES="?all" 14SECONDARY_ARCHITECTURES="?x86_gcc2 ?x86" 15 16PROVIDES=" 17 libglvnd$secondaryArchSuffix = $portVersion 18 lib:libGL$secondaryArchSuffix = 1.0.0 compat >= 1 19 lib:libEGL$secondaryArchSuffix = 1.1.0 compat >= 1 20 lib:libglesv1_cm$secondaryArchSuffix 21 lib:libglesv2$secondaryArchSuffix 22 lib:libgldispatch$secondaryArchSuffix 23 lib:libopengl$secondaryArchSuffix 24 " 25REQUIRES=" 26 haiku$secondaryArchSuffix 27 " 28 29PROVIDES_devel=" 30 libglvnd${secondaryArchSuffix}_devel = $portVersion 31 devel:libGL$secondaryArchSuffix = 1.0.0 compat >= 1 32 devel:libEGL$secondaryArchSuffix = 1.1.0 compat >= 1 33 devel:libglesv1_cm$secondaryArchSuffix 34 devel:libglesv2$secondaryArchSuffix 35 devel:libgldispatch$secondaryArchSuffix 36 devel:libopengl$secondaryArchSuffix 37 " 38REQUIRES_devel=" 39 libglvnd$secondaryArchSuffix == $portVersion base 40 " 41 42BUILD_REQUIRES=" 43 haiku${secondaryArchSuffix}_devel 44 " 45BUILD_PREREQUIRES=" 46 cmd:awk 47 cmd:gcc$secondaryArchSuffix 48 cmd:ld$secondaryArchSuffix 49 cmd:meson 50 cmd:ninja 51 cmd:sed 52 cmd:python3 53 " 54 55BUILD() 56{ 57 meson --buildtype=release \ 58 --prefix=$prefix --libdir=$libDir --datadir=$dataDir --bindir=$binDir\ 59 --includedir=$includeDir/os/opengl --sysconfdir=$settingsDir --sbindir=$binDir \ 60 --libexecdir=$libDir --localedir=$dataDir/locale \ 61 ./build 62 ninja -C build 63} 64 65INSTALL() 66{ 67 ninja -C build install 68 69 # Fix a few misc header installation location 70 mv $includeDir/os/opengl/OpenGLKit.h $includeDir/os/OpenGLKit.h 71 mv $includeDir/os/opengl/opengl/GLView.h $includeDir/os/opengl/GLView.h 72 rm -rf $includeDir/os/opengl/opengl 73 74 prepareInstalledDevelLibs libGL libEGL libOpenGL libGLESv1_CM libGLESv2 libGLdispatch 75 fixPkgconfig 76 77 # Fix OpenGL kit location 78 sed -i 's/develop\/headers$/develop\/headers\/os\/opengl/' $installDestDir$developLibDir/pkgconfig/opengl.pc 79 sed -i 's/develop\/headers$/develop\/headers\/os\/opengl/' $installDestDir$developLibDir/pkgconfig/egl.pc 80 sed -i 's/develop\/headers$/develop\/headers\/os\/opengl/' $installDestDir$developLibDir/pkgconfig/gl.pc 81 sed -i 's/develop\/headers$/develop\/headers\/os\/opengl/' $installDestDir$developLibDir/pkgconfig/glesv1_cm.pc 82 sed -i 's/develop\/headers$/develop\/headers\/os\/opengl/' $installDestDir$developLibDir/pkgconfig/glesv2.pc 83 sed -i 's/develop\/headers$/develop\/headers\/os\/opengl/' $installDestDir$developLibDir/pkgconfig/libglvnd.pc 84 85 # Toss ports a few bones 86 # XXX: Is this a good idea? it's more standard, but anything not using pkgconfig should be punished? 87 #for i in KHR GLES GLES2 GLES3 EGL GL; do 88 # ln -s $includeDir/os/opengl/$i $includeDir/$i 89 #done 90 91 # devel package 92 packageEntries devel \ 93 $developDir 94} 95 96TEST() 97{ 98 ninja -C build test 99} 100