commit: 521295f76fc5816c2a7d23b5fc40b838c8abce38 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> AuthorDate: Thu Oct 30 14:01:10 2025 +0000 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> CommitDate: Fri Oct 31 23:24:00 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=521295f7
dev-games/openscenegraph-openmw: Drop IUSE las sci-geosciences/liblas is being last-rited, and we cannot carry a huge PDAL replacement patch downstream. See also: https://github.com/gentoo/gentoo/pull/43690 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> .../openscenegraph-openmw-3.6_p20251012-r1.ebuild | 170 +++++++++++++++++++++ 1 file changed, 170 insertions(+) diff --git a/dev-games/openscenegraph-openmw/openscenegraph-openmw-3.6_p20251012-r1.ebuild b/dev-games/openscenegraph-openmw/openscenegraph-openmw-3.6_p20251012-r1.ebuild new file mode 100644 index 000000000000..5a505e6dfd10 --- /dev/null +++ b/dev-games/openscenegraph-openmw/openscenegraph-openmw-3.6_p20251012-r1.ebuild @@ -0,0 +1,170 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-1 ) + +WX_GTK_VER="3.2-gtk3" +inherit cmake flag-o-matic lua-single toolchain-funcs wxwidgets + +MY_COMMIT="aa66653fde55365671eb9038b9392cf952ec7a05" + +DESCRIPTION="OpenMW-specific fork of OpenSceneGraph" +HOMEPAGE="https://github.com/OpenMW/osg" +SRC_URI="https://github.com/OpenMW/osg/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/osg-${MY_COMMIT}" + +LICENSE="wxWinLL-3 LGPL-2.1" +SLOT="0/162" # NOTE: CHECK WHEN BUMPING! Subslot is SOVERSION +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" +IUSE=" + +collada curl dicom debug doc egl examples fltk fox gdal + gif gstreamer +jpeg 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-text/doxygen[dot] ) +" +RDEPEND=" + !dev-games/openscenegraph + dev-libs/glib:2 + media-libs/fontconfig + 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] ) + sdl2? ( media-libs/libsdl2 ) + wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}=[opengl,X] ) + ) + gdal? ( sci-libs/gdal:= ) + gif? ( media-libs/giflib:= ) + gstreamer? ( + media-libs/gstreamer:1.0 + media-libs/gst-plugins-base:1.0 + ) + jpeg? ( media-libs/libjpeg-turbo:= ) + lua? ( ${LUA_DEPS} ) + openexr? ( + dev-libs/imath:= + >=media-libs/openexr-3:= + ) + openinventor? ( media-libs/coin ) + pdf? ( app-text/poppler:=[cairo] ) + png? ( media-libs/libpng:0= ) + sdl? ( media-libs/libsdl ) + svg? ( + gnome-base/librsvg:2 + x11-libs/cairo + ) + tiff? ( media-libs/tiff:= ) + truetype? ( media-libs/freetype:2 ) + vnc? ( net-libs/libvncserver ) + xrandr? ( x11-libs/libXrandr ) + zlib? ( sys-libs/zlib ) +" +DEPEND="${RDEPEND} + x11-base/xorg-proto +" + +PATCHES=( + "${FILESDIR}"/openscenegraph-openmw-3.6_p20221115-cmake4.patch # bug 960858 + "${FILESDIR}"/openscenegraph-openmw-3.6_p20221115-cmake.patch # GNUInstalldirs, paths + "${FILESDIR}"/openscenegraph-openmw-3.6_p20221115-cmake-lua_version.patch # downstream patch + "${FILESDIR}"/openscenegraph-3.6-openexr3.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 + # bug #955848 + tc-is-lto && filter-flags -fno-semantic-interposition + + 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) + -DCMAKE_DISABLE_FIND_PACKAGE_FFmpeg=ON + $(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 + # PDAL instead of LAS: No one upstream willing to pick it up: + # https://github.com/openscenegraph/OpenSceneGraph/pull/1093 + # https://github.com/OpenMW/osg/pull/33 + -DCMAKE_DISABLE_FIND_PACKAGE_LIBLAS=ON + -DBUILD_OSG_LUA_PLUGIN=$(usex 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 + -DCMAKE_RELWITHDEBINFO_POSTFIX= + ) + + if use examples; then + mycmakeargs+=( + $(cmake_use_find_package fltk FLTK) + $(cmake_use_find_package fox FOX) + $(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 +}
