commit: 209e13656f39a72efab3f2b2f76bdd4e8c13672e Author: Alexey Sokolov <sokolov <AT> google <DOT> com> AuthorDate: Thu Nov 12 09:27:06 2020 +0000 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org> CommitDate: Mon Nov 23 13:28:09 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=209e1365
dev-games/openscenegraph-openmw: migrate to lua-single.eclass Closes: https://bugs.gentoo.org/752576 Package-Manager: Portage-3.0.8, Repoman-3.0.2 Signed-off-by: Alexey Sokolov <alexey+gentoo <AT> asokolov.org> Closes: https://github.com/gentoo/gentoo/pull/18229 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org> ...openscenegraph-openmw-3.4_p20200425-r100.ebuild | 171 +++++++++++++++++++++ profiles/package.mask | 1 + 2 files changed, 172 insertions(+) diff --git a/dev-games/openscenegraph-openmw/openscenegraph-openmw-3.4_p20200425-r100.ebuild b/dev-games/openscenegraph-openmw/openscenegraph-openmw-3.4_p20200425-r100.ebuild new file mode 100644 index 00000000000..202f18429af --- /dev/null +++ b/dev-games/openscenegraph-openmw/openscenegraph-openmw-3.4_p20200425-r100.ebuild @@ -0,0 +1,171 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +LUA_COMPAT=( lua5-{1..2} ) +WX_GTK_VER="3.0-gtk3" +inherit cmake flag-o-matic lua-single wxwidgets + +DESCRIPTION="OpenMW-specific fork of OpenSceneGraph" +HOMEPAGE="https://github.com/OpenMW/osg" +MY_COMMIT="8b07809fa674ecffe77338aaea2e223b3aadff0e" +SRC_URI="https://github.com/OpenMW/osg/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz" + +LICENSE="wxWinLL-3 LGPL-2.1" +SLOT="0/132" # NOTE: CHECK WHEN BUMPING! Subslot is SOVERSION +KEYWORDS="~amd64 ~x86" +IUSE="curl debug doc examples egl ffmpeg fltk fox gdal gif glut gstreamer jpeg + lua openexr openinventor osgapps pdf png qt5 sdl sdl2 svg tiff + truetype vnc wxwidgets xine xrandr zlib" + +REQUIRED_USE=" + lua? ( ${LUA_REQUIRED_USE} ) + sdl2? ( sdl ) + openexr? ( zlib ) +" + +# TODO: COLLADA, FBX, GTA, OpenVRML, Performer, DCMTK +RDEPEND=" + !dev-games/openscenegraph + media-libs/mesa[egl?] + virtual/glu + virtual/opengl + x11-libs/libSM + x11-libs/libXext + 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 ) + lua? ( ${LUA_DEPS} ) + openexr? ( + media-libs/ilmbase:= + media-libs/openexr:= + ) + openinventor? ( media-libs/coin ) + pdf? ( app-text/poppler[cairo] ) + png? ( media-libs/libpng:0= ) + qt5? ( + dev-qt/qtopengl:5 + dev-qt/qtwidgets:5 + ) + 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} + x11-base/xorg-proto +" +BDEPEND=" + app-arch/unzip + virtual/pkgconfig + doc? ( app-doc/doxygen ) +" + +S="${WORKDIR}/osg-${MY_COMMIT}" + +PATCHES=( + "${FILESDIR}"/openscenegraph-3.4-cmake.patch + "${FILESDIR}"/openscenegraph-3.5.1-jpeg-9.patch + "${FILESDIR}"/openscenegraph-3.6.3-docdir.patch +) + +pkg_setup() { + if use lua; then + lua-single_pkg_setup + fi +} + +src_prepare() { + sed -i "s/ FIND_PACKAGE/ MACRO_OPTIONAL_FIND_PACKAGE/g" CMakeLists.txt || die "can't replace FIND_PACKAGE" + cmake_src_prepare +} + +src_configure() { + if use examples && use wxwidgets; then + setup-wxwidgets + 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 + -DOSG_PROVIDE_READFILE=ON + -DOSG_USE_LOCAL_LUA_SOURCE=OFF + -DWITH_Lua51=OFF # We use CMake-version FindLua52.cmake instead which can find any lua + -DWITH_Lua52=$(usex lua) + -DWITH_Asio=OFF # Fails to build, similar to https://github.com/chriskohlhoff/asio/issues/316 + -DWITH_CURL=$(usex curl) + -DBUILD_DOCUMENTATION=$(usex doc) + -DBUILD_OSG_APPLICATIONS=$(usex osgapps) + -DBUILD_OSG_EXAMPLES=$(usex examples) + -DWITH_FFmpeg=$(usex ffmpeg) + -DWITH_GDAL=$(usex gdal) + -DWITH_GIFLIB=$(usex gif) + -DWITH_GStreamer=$(usex gstreamer) + -DWITH_GLIB=$(usex gstreamer) + -DWITH_GtkGl=OFF + -DWITH_JPEG=$(usex jpeg) + -DWITH_Jasper=OFF + -DWITH_LIBLAS=OFF # dep failed to build https://bugs.gentoo.org/725938 + -DWITH_OpenEXR=$(usex openexr) + -DWITH_Inventor=$(usex openinventor) + -DWITH_Poppler-glib=$(usex pdf) + -DWITH_PNG=$(usex png) + -DWITH_SDL=$(usex sdl) + -DWITH_SDL2=$(usex sdl2) + -DWITH_RSVG=$(usex svg rsvg) + -DWITH_TIFF=$(usex tiff) + -DWITH_Freetype=$(usex truetype) + -DWITH_LibVNCServer=$(usex vnc) + -DWITH_Xine=$(usex xine) + -DOSGVIEWER_USE_XRANDR=$(usex xrandr) + -DWITH_ZLIB=$(usex zlib) + -DOSG_USE_QT=$(usex qt5) + -DDESIRED_QT_VERSION=5 + ) + if use examples; then + mycmakeargs+=( + -DWITH_FLTK=$(usex fltk) + -DWITH_FOX=$(usex fox) + -DWITH_GLUT=$(usex glut) + -DWITH_wxWidgets=$(usex wxwidgets) + ) + fi + if use lua; then + mycmakeargs+=( + -DLUA_INCLUDE_DIR="$(lua_get_include_dir)" + -DLUA_LIBRARY="$(lua_get_shared_lib)" + ) + fi + + cmake_src_configure +} + +src_compile() { + cmake_src_compile + use doc && cmake_src_compile doc_openscenegraph doc_openthreads +} diff --git a/profiles/package.mask b/profiles/package.mask index ea6a145cefd..c9ee7dc841c 100644 --- a/profiles/package.mask +++ b/profiles/package.mask @@ -457,6 +457,7 @@ dev-lua/luacrypto >=app-benchmarks/sysbench-1.0.20-r100 >=app-benchmarks/wrk-4.1.0-r100 >=app-misc/worker-3.8.3-r100 +=dev-games/openscenegraph-openmw-3.4_p20200425-r100 =dev-libs/efl-1.25.1-r10 >=dev-lua/lua-bit32-5.3.5-r100 >=dev-lua/lua-zlib-1.2-r100