Files
haikuports/sys-libs/mesa/mesa-7.9.2.recipe

119 lines
3.2 KiB
Plaintext

SUMMARY="Multi-platform GL implementation"
DESCRIPTION="Mesa is an open-source implementation of the OpenGL specification.
The OpenGL specification documents a system for rendering interactive 3D graphics.
Mesa fills the role of the Haiku OpenGL kit providing 3D rendering to Haiku applications.
"
HOMEPAGE="http://www.mesa3d.org/"
COPYRIGHT="1999-2013 Brian Paul All Rights Reserved."
LICENSE="MIT"
# remember to update SOURCE_DIR as well for the -X revision
SRC_URI="https://github.com/kallisti5/mesa/archive/7.9.2-3.tar.gz"
CHECKSUM_MD5="1f7d846ea2982ffa175c906443aaabd3"
REVISION="1"
ARCHITECTURES="x86_gcc2"
if [ $effectiveTargetArchitecture != x86 ]; then
# x86_gcc2 is fine as primary target architecture as long as we're building
# for a different secondary architecture.
ARCHITECTURES="$ARCHITECTURES x86"
fi
SECONDARY_ARCHITECTURES="?x86_gcc2"
PROVIDES="
mesa$secondaryArchSuffix = $portVersion compat >= 7.9
lib:libGL$secondaryArchSuffix
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
"
BUILD_PREREQUIRES="
libxml2_python
cmd:bison
cmd:find
cmd:flex
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:python
cmd:make
cmd:sed
"
SOURCE_DIR="mesa-7.9.2-3"
BUILD()
{
if [ -n "$secondaryArchSuffix" ]; then
export HAIKU_SECONDARY_ARCH="$effectiveTargetArchitecture"
fi
#make DEBUG=1 haiku $jobArgs
make haiku $jobArgs
}
INSTALL()
{
# libGL.so makes up the core of our OpenGL kit
mkdir -p $libDir
cp $(find ./lib/ -name 'libGL.so') $libDir
# Our rendering add-on
mkdir -p $addOnsDir/opengl
cp $(find ./lib/ -name 'libswrast.so') \
"$addOnsDir/opengl/Legacy Software Rasterizer"
# OpenGL Kit
mkdir -p $includeDir/os/opengl/GL
cp ./include/HaikuGL/OpenGLKit.h $includeDir/os/
cp ./include/HaikuGL/GLView.h $includeDir/os/opengl/
cp ./include/HaikuGL/GLRenderer.h $includeDir/os/opengl/
# Standard GL headers
cp ./include/GL/gl.h $includeDir/os/opengl/GL/
cp ./include/GL/gl_mangle.h $includeDir/os/opengl/GL/
cp ./include/GL/glext.h $includeDir/os/opengl/GL/
# Symlink GL in kit to system GL directory
cd $includeDir
ln -snf os/opengl/GL GL
# devel package
packageEntries devel \
$developDir
# swrast renderer package
packageEntries swrast \
"$addOnsDir/opengl/Legacy Software Rasterizer"
}
# ----- devel package -------------------------------------------------------
PROVIDES_devel="
mesa${secondaryArchSuffix}_devel = $portVersion
devel:libGL${secondaryArchSuffix} = $portVersion
"
REQUIRES_devel="
mesa${secondaryArchSuffix} == $portVersion base
"
# ===== Mesa OpenGL Add-ons ==================================================
# ----- swrast package -------------------------------------------------------
SUMMARY_swrast="Mesa legacy software rasterization renderer"
DESCRIPTION_swrast="This 3D BGLRenderer add-on provides Mesa software
rasterization on Haiku systems. Software rasterization performs all
3D rendering on the systems CPU and doesn't require any specialized
hardware. Software rasterization is generally considered a fallback
3D rendering method as performance is limited.
"
PROVIDES_swrast="
mesa${secondaryArchSuffix}_swrast = $portVersion
"
REQUIRED_swrast="
mesa$secondaryArchSuffix == $portVersion base
"