forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dev-games/openscenegraph: add collada support
Also apply egl patch from gentoo#21742 Bug: https://bugs.gentoo.org/797403 Package-Manager: Portage-3.0.20, Repoman-3.0.2 Signed-off-by: Alexey Sokolov <[email protected]> Signed-off-by: Ionen Wolkens <[email protected]>
- Loading branch information
1 parent
8310cc0
commit a7f816e
Showing
2 changed files
with
168 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
167 changes: 167 additions & 0 deletions
167
dev-games/openscenegraph/openscenegraph-3.6.5-r110.ebuild
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,167 @@ | ||
# Copyright 1999-2021 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=7 | ||
|
||
LUA_COMPAT=( lua5-1 ) | ||
|
||
WX_GTK_VER="3.0-gtk3" | ||
inherit cmake flag-o-matic lua-single wxwidgets | ||
|
||
MY_PN="OpenSceneGraph" | ||
MY_P=${MY_PN}-${PV} | ||
|
||
DESCRIPTION="Open source high performance 3D graphics toolkit" | ||
HOMEPAGE="http://www.openscenegraph.org/" | ||
SRC_URI="https://github.com/${PN}/${MY_PN}/archive/${MY_P}.tar.gz" | ||
S="${WORKDIR}/${MY_PN}-${MY_P}" | ||
|
||
LICENSE="wxWinLL-3 LGPL-2.1" | ||
SLOT="0/161" # NOTE: CHECK WHEN BUMPING! Subslot is SOVERSION | ||
KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86" | ||
IUSE=" | ||
collada curl dicom debug doc egl examples ffmpeg fltk fox gdal | ||
gif glut gstreamer jpeg las lua openexr openinventor osgapps pdf png | ||
sdl sdl2 svg tiff truetype vnc wxwidgets xrandr +zlib | ||
" | ||
|
||
REQUIRED_USE=" | ||
dicom? ( zlib ) | ||
lua? ( ${LUA_REQUIRED_USE} ) | ||
openexr? ( zlib ) | ||
sdl2? ( sdl ) | ||
" | ||
|
||
# TODO: FBX, GTA, NVTT, OpenVRML, Performer | ||
BDEPEND=" | ||
app-arch/unzip | ||
virtual/pkgconfig | ||
doc? ( app-doc/doxygen ) | ||
" | ||
RDEPEND=" | ||
media-libs/mesa[egl(+)?] | ||
virtual/glu | ||
virtual/opengl | ||
x11-libs/libSM | ||
x11-libs/libXext | ||
collada? ( dev-libs/collada-dom:= ) | ||
curl? ( net-misc/curl ) | ||
examples? ( | ||
fltk? ( x11-libs/fltk:1[opengl] ) | ||
fox? ( x11-libs/fox:1.6[opengl] ) | ||
glut? ( media-libs/freeglut ) | ||
sdl2? ( media-libs/libsdl2 ) | ||
wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[opengl,X] ) | ||
) | ||
ffmpeg? ( media-video/ffmpeg:0= ) | ||
gdal? ( sci-libs/gdal:= ) | ||
gif? ( media-libs/giflib:= ) | ||
gstreamer? ( | ||
media-libs/gstreamer:1.0 | ||
media-libs/gst-plugins-base:1.0 | ||
) | ||
jpeg? ( virtual/jpeg:0 ) | ||
las? ( >=sci-geosciences/liblas-1.8.0 ) | ||
lua? ( ${LUA_DEPS} ) | ||
openexr? ( | ||
media-libs/ilmbase:= | ||
media-libs/openexr:= | ||
) | ||
openinventor? ( media-libs/coin ) | ||
pdf? ( app-text/poppler[cairo] ) | ||
png? ( media-libs/libpng:0= ) | ||
sdl? ( media-libs/libsdl ) | ||
svg? ( | ||
gnome-base/librsvg | ||
x11-libs/cairo | ||
) | ||
tiff? ( media-libs/tiff:0 ) | ||
truetype? ( media-libs/freetype:2 ) | ||
vnc? ( net-libs/libvncserver ) | ||
xrandr? ( x11-libs/libXrandr ) | ||
zlib? ( sys-libs/zlib ) | ||
" | ||
DEPEND="${RDEPEND} | ||
dev-libs/boost | ||
x11-base/xorg-proto | ||
" | ||
|
||
PATCHES=( | ||
"${FILESDIR}"/${PN}-3.6.3-cmake.patch | ||
"${FILESDIR}"/${PN}-3.6.3-docdir.patch | ||
"${FILESDIR}"/${PN}-3.6.5-use_boost_asio.patch | ||
"${FILESDIR}"/${PN}-3.6.5-cmake_lua_version.patch | ||
) | ||
|
||
pkg_setup() { | ||
use lua && lua-single_pkg_setup | ||
} | ||
|
||
src_configure() { | ||
if use examples && use wxwidgets; then | ||
setup-wxwidgets unicode | ||
fi | ||
|
||
# Needed by FFmpeg | ||
append-cppflags -D__STDC_CONSTANT_MACROS | ||
|
||
local libdir=$(get_libdir) | ||
local mycmakeargs=( | ||
-DDYNAMIC_OPENSCENEGRAPH=ON | ||
-DLIB_POSTFIX=${libdir/lib} | ||
-DOPENGL_PROFILE=GL2 #GL1 GL2 GL3 GLES1 GLES3 GLES3 | ||
$(cmake_use_find_package collada COLLADA) | ||
$(cmake_use_find_package curl CURL) | ||
-DBUILD_DOCUMENTATION=$(usex doc) | ||
$(cmake_use_find_package dicom DCMTK) | ||
$(cmake_use_find_package egl EGL) | ||
-DBUILD_OSG_EXAMPLES=$(usex examples) | ||
$(cmake_use_find_package ffmpeg FFmpeg) | ||
$(cmake_use_find_package gdal GDAL) | ||
$(cmake_use_find_package gif GIFLIB) | ||
$(cmake_use_find_package gstreamer GLIB) | ||
$(cmake_use_find_package gstreamer GStreamer) | ||
-DCMAKE_DISABLE_FIND_PACKAGE_GtkGl=ON | ||
$(cmake_use_find_package jpeg JPEG) | ||
-DCMAKE_DISABLE_FIND_PACKAGE_Jasper=ON | ||
$(cmake_use_find_package las LIBLAS) | ||
$(cmake_use_find_package lua Lua) | ||
-DCMAKE_DISABLE_FIND_PACKAGE_OpenCascade=ON | ||
$(cmake_use_find_package openexr OpenEXR) | ||
$(cmake_use_find_package openinventor Inventor) | ||
-DBUILD_OSG_APPLICATIONS=$(usex osgapps) | ||
$(cmake_use_find_package pdf Poppler-glib) | ||
$(cmake_use_find_package png PNG) | ||
$(cmake_use_find_package sdl SDL) | ||
$(cmake_use_find_package sdl2 SDL2) | ||
$(cmake_use_find_package svg RSVG) | ||
$(cmake_use_find_package tiff TIFF) | ||
$(cmake_use_find_package truetype Freetype) | ||
$(cmake_use_find_package vnc LibVNCServer) | ||
-DOSGVIEWER_USE_XRANDR=$(usex xrandr) | ||
$(cmake_use_find_package zlib ZLIB) | ||
-DOSG_USE_LOCAL_LUA_SOURCE=OFF | ||
) | ||
|
||
if use examples; then | ||
mycmakeargs+=( | ||
$(cmake_use_find_package fltk FLTK) | ||
$(cmake_use_find_package fox FOX) | ||
$(cmake_use_find_package glut GLUT) | ||
$(cmake_use_find_package wxwidgets wxWidgets) | ||
) | ||
fi | ||
|
||
if use lua; then | ||
mycmakeargs+=( | ||
-DLUA_VERSION="$(lua_get_version)" | ||
) | ||
fi | ||
|
||
cmake_src_configure | ||
} | ||
|
||
src_compile() { | ||
cmake_src_compile | ||
use doc && cmake_src_compile doc_openscenegraph doc_openthreads | ||
} |