mirror of
https://github.com/yann64/haikuports.git
synced 2026-05-06 06:58:57 +02:00
x86_64 is used as a baseline: the "x86_64" entry, whatever status it has, is transformed into "all", and then the other entries in ARCHITECTURES either dropped or rearranged appropriately.
197 lines
7.2 KiB
Bash
197 lines
7.2 KiB
Bash
SUMMARY="High performance OpenGL-based 3D graphics toolkit"
|
|
DESCRIPTION="The OpenSceneGraph is an open source high performance 3D \
|
|
graphics toolkit, used by application developers in fields such as visual \
|
|
simulation, games, virtual reality, scientific visualization and modelling. \
|
|
Written entirely in Standard C++ and OpenGL it runs on all Windows platforms, \
|
|
OSX, GNU/Linux, IRIX, Solaris, HP-Ux, AIX and FreeBSD operating systems. The \
|
|
OpenSceneGraph is now well established as the world leading scene graph \
|
|
technology, used widely in the vis-sim, space, scientific, oil-gas, games and \
|
|
virtual reality industries."
|
|
HOMEPAGE="http://www.openscenegraph.org/"
|
|
COPYRIGHT="2002-2018 Robert Osfield and others"
|
|
LICENSE="OSGPL"
|
|
REVISION="1"
|
|
SOURCE_URI="https://github.com/openscenegraph/OpenSceneGraph/archive/OpenSceneGraph-$portVersion.tar.gz"
|
|
CHECKSUM_SHA256="aea196550f02974d6d09291c5d83b51ca6a03b3767e234a8c0e21322927d1e12"
|
|
SOURCE_DIR="OpenSceneGraph-OpenSceneGraph-$portVersion"
|
|
PATCHES="openscenegraph-$portVersion.patchset"
|
|
|
|
ARCHITECTURES="!all"
|
|
SECONDARY_ARCHITECTURES="!x86"
|
|
|
|
libVersion="$portVersion"
|
|
libVersionCompat="$libVersion compat >= ${libVersion%%.*}"
|
|
libOpenThreadsVersion="3.3.1"
|
|
libOpenThreadsVersionCompat="$libOpenThreadsVersion compat >= ${libOpenThreadsVersion%%.*}"
|
|
|
|
PROVIDES="
|
|
openscenegraph$secondaryArchSuffix = $portVersion
|
|
lib:libOpenThreads$secondaryArchSuffix = $libOpenThreadsVersionCompat
|
|
lib:libosg$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgAnimation$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgDB$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgFX$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgGA$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgManipulator$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgParticle$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgPresentation$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgShadow$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgSim$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgTerrain$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgText$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgUI$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgUtil$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgViewer$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgVolume$secondaryArchSuffix = $libVersionCompat
|
|
lib:libosgWidget$secondaryArchSuffix = $libVersionCompat
|
|
"
|
|
REQUIRES="
|
|
haiku$secondaryArchSuffix
|
|
mesa$secondaryArchSuffix
|
|
# lib:libavcodec$secondaryArchSuffix
|
|
lib:libcairo$secondaryArchSuffix
|
|
lib:libcurl$secondaryArchSuffix
|
|
lib:libEGL$secondaryArchSuffix
|
|
lib:libfontconfig$secondaryArchSuffix
|
|
lib:libfreetype$secondaryArchSuffix
|
|
lib:libgdal$secondaryArchSuffix
|
|
lib:libgif$secondaryArchSuffix
|
|
lib:libgl$secondaryArchSuffix
|
|
lib:libglib_2.0$secondaryArchSuffix
|
|
# lib:libgstreamer_1.0$secondaryArchSuffix
|
|
lib:libhalf$secondaryArchSuffix
|
|
lib:libIlmImf$secondaryArchSuffix
|
|
lib:libintl$secondaryArchSuffix
|
|
lib:libjasper$secondaryArchSuffix
|
|
lib:libjpeg$secondaryArchSuffix
|
|
# lib:libOpenCOLLADABaseUtils$secondaryArchSuffix
|
|
lib:libpng16$secondaryArchSuffix
|
|
lib:libpoppler${secondaryArchSuffix}_glib
|
|
lib:libsdl$secondaryArchSuffix
|
|
lib:libtiff$secondaryArchSuffix
|
|
# lib:libTKGeomBase$secondaryArchSuffix #opencascade
|
|
lib:libxml2$secondaryArchSuffix
|
|
lib:libz$secondaryArchSuffix
|
|
"
|
|
|
|
PROVIDES_devel="
|
|
openscenegraph${secondaryArchSuffix}_devel = $portVersion
|
|
devel:libOpenThreads$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosg$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgAnimation$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgDB$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgFX$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgGA$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgManipulator$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgParticle$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgPresentation$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgShadow$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgSim$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgTerrain$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgText$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgUI$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgUtil$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgViewer$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgVolume$secondaryArchSuffix = $libVersionCompat
|
|
devel:libosgWidget$secondaryArchSuffix = $libVersionCompat
|
|
"
|
|
REQUIRES_devel="
|
|
openscenegraph$secondaryArchSuffix == $portVersion base
|
|
"
|
|
|
|
BUILD_REQUIRES="
|
|
haiku${secondaryArchSuffix}_devel
|
|
# devel:libavcodec$secondaryArchSuffix
|
|
devel:libcairo$secondaryArchSuffix
|
|
devel:libcurl$secondaryArchSuffix
|
|
devel:libEGL$secondaryArchSuffix
|
|
devel:libfreetype$secondaryArchSuffix
|
|
devel:libgdal$secondaryArchSuffix >= 28
|
|
devel:libgif$secondaryArchSuffix >= 7
|
|
devel:libgl$secondaryArchSuffix
|
|
devel:libglib_2.0$secondaryArchSuffix
|
|
# devel:libgstreamer_1.0$secondaryArchSuffix
|
|
devel:libilmimf_2_4$secondaryArchSuffix
|
|
devel:libintl$secondaryArchSuffix
|
|
devel:libjasper$secondaryArchSuffix
|
|
devel:libjpeg$secondaryArchSuffix
|
|
# devel:libOpenCOLLADABaseUtils$secondaryArchSuffix
|
|
devel:libpng16$secondaryArchSuffix
|
|
devel:libpoppler${secondaryArchSuffix}_glib >= 8.12
|
|
devel:libsdl$secondaryArchSuffix
|
|
devel:libtiff$secondaryArchSuffix >= 5
|
|
# devel:libTKGeomBase$secondaryArchSuffix #opencascade
|
|
devel:libxml2$secondaryArchSuffix
|
|
devel:libz$secondaryArchSuffix
|
|
"
|
|
BUILD_PREREQUIRES="
|
|
cmd:cmake
|
|
cmd:gcc$secondaryArchSuffix
|
|
cmd:ld$secondaryArchSuffix
|
|
cmd:make
|
|
cmd:pkg_config$secondaryArchSuffix
|
|
"
|
|
|
|
defineDebugInfoPackage openscenegraph$secondaryArchSuffix \
|
|
$libDir/libOpenThreads.so.$libOpenThreadsVersion \
|
|
$libDir/libosg.so.$libVersion \
|
|
$libDir/libosgAnimation.so.$libVersion \
|
|
$libDir/libosgDB.so.$libVersion \
|
|
$libDir/libosgFX.so.$libVersion \
|
|
$libDir/libosgGA.so.$libVersion \
|
|
$libDir/libosgManipulator.so.$libVersion \
|
|
$libDir/libosgParticle.so.$libVersion \
|
|
$libDir/libosgPresentation.so.$libVersion \
|
|
$libDir/libosgShadow.so.$libVersion \
|
|
$libDir/libosgSim.so.$libVersion \
|
|
$libDir/libosgTerrain.so.$libVersion \
|
|
$libDir/libosgText.so.$libVersion \
|
|
$libDir/libosgUI.so.$libVersion \
|
|
$libDir/libosgUtil.so.$libVersion \
|
|
$libDir/libosgViewer.so.$libVersion \
|
|
$libDir/libosgVolume.so.$libVersion \
|
|
$libDir/libosgWidget.so.$libVersion
|
|
|
|
BUILD()
|
|
{
|
|
mkdir -p build && cd build
|
|
cmake .. \
|
|
-DCMAKE_INSTALL_PREFIX=$prefix \
|
|
-DBUILD_OSG_APPLICATIONS:BOOL=OFF \
|
|
-DOSG_GL3_AVAILABLE:BOOL=ON \
|
|
-DOSG_WINDOWING_SYSTEM=None \
|
|
$cmakeDirArgs
|
|
make $jobArgs
|
|
}
|
|
|
|
INSTALL()
|
|
{
|
|
cd build
|
|
make install
|
|
|
|
mkdir -p $includeDir
|
|
mv $prefix/include/* $includeDir/
|
|
rm -rf $prefix/include
|
|
|
|
# Secondary-arch libdir cleanup
|
|
mkdir -p $prefix/lib-temp
|
|
mv $prefix/lib/* $prefix/lib-temp/
|
|
mkdir -p $libDir
|
|
mv $prefix/lib-temp/* $libDir
|
|
rm -rf $prefix/lib-temp
|
|
|
|
# Move plugins to system addons directory
|
|
mkdir -p $addOnsDir
|
|
mv $libDir/osgPlugins-$portVersion $addOnsDir
|
|
|
|
prepareInstalledDevelLibs libOpenThreads libosg libosgAnimation libosgDB \
|
|
libosgFX libosgGA libosgManipulator libosgParticle libosgPresentation \
|
|
libosgShadow libosgSim libosgTerrain libosgText libosgUI libosgUtil \
|
|
libosgViewer libosgVolume libosgWidget
|
|
|
|
fixPkgconfig
|
|
|
|
packageEntries devel \
|
|
$developDir
|
|
}
|