From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 18CA4138334 for ; Fri, 7 Sep 2018 11:42:49 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 44505E07BA; Fri, 7 Sep 2018 11:42:48 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 00CDCE07BA for ; Fri, 7 Sep 2018 11:42:47 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id A0192335CCB for ; Fri, 7 Sep 2018 11:42:45 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 5638B3C3 for ; Fri, 7 Sep 2018 11:42:43 +0000 (UTC) From: "Andreas Sturmlechner" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Andreas Sturmlechner" Message-ID: <1536319369.758ad2b0cd811e2340786b0eb12346872ee2cc4c.asturm@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-games/ogre/, dev-games/ogre/files/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-games/ogre/Manifest dev-games/ogre/files/ogre-1.10.12-use_system_tinyxml.patch dev-games/ogre/metadata.xml dev-games/ogre/ogre-1.10.12.ebuild X-VCS-Directories: dev-games/ogre/files/ dev-games/ogre/ X-VCS-Committer: asturm X-VCS-Committer-Name: Andreas Sturmlechner X-VCS-Revision: 758ad2b0cd811e2340786b0eb12346872ee2cc4c X-VCS-Branch: master Date: Fri, 7 Sep 2018 11:42:43 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: 342cf04e-355f-440a-812c-ff8cdcef05e0 X-Archives-Hash: 9e9a1db2b868843eebd596ffe872889c commit: 758ad2b0cd811e2340786b0eb12346872ee2cc4c Author: Sven Eden gmx net> AuthorDate: Mon Aug 6 06:11:24 2018 +0000 Commit: Andreas Sturmlechner gentoo org> CommitDate: Fri Sep 7 11:22:49 2018 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=758ad2b0 dev-games/ogre: 1.10.12 version bump The latest stable release of the Ogre-1.10.x series comes with a largely overhauled ebuild regarding its USE flags and the Ogre configuration. * Either USE flag gles2, opengl or both must be selected now. * Removed gles3 and gl3pus USE flugs, as they are implied now. * USE flag "egl" added to select egl over glx. * Users can now select whether Ogre shall include support for a GL state cache or not. * The behavior of the Ogre resource manager can now be selected. * Added a patch to unbundle TinyXML again. Upstream removed that possibility. Bug: https://bugs.gentoo.org/647266 Package-Manager: Portage-2.3.48, Repoman-2.3.10 dev-games/ogre/Manifest | 1 + .../files/ogre-1.10.12-use_system_tinyxml.patch | 42 +++++++ dev-games/ogre/metadata.xml | 34 ++++-- dev-games/ogre/ogre-1.10.12.ebuild | 124 +++++++++++++++++++++ 4 files changed, 192 insertions(+), 9 deletions(-) diff --git a/dev-games/ogre/Manifest b/dev-games/ogre/Manifest index 1ecfcfeea79..fa7ffd7cf96 100644 --- a/dev-games/ogre/Manifest +++ b/dev-games/ogre/Manifest @@ -1,2 +1,3 @@ DIST ogre-1.10.11.zip 133064317 BLAKE2B 88c64061377d8257853378219fb5906919d251f5b3c500f70bc1c04bc36e3083dc3dac4babb14d983c8b6fbb63ea3eecf698e3a0134f963db058055edd5dc4c4 SHA512 db207aec8330ec9da2a9781c8753411e69e08008995b8b3e127d454dc05aa899c75157718398ca24998644c586e2dd30cc7e9b7d98e045e4575537f5c81a5a54 +DIST ogre-1.10.12.zip 133067192 BLAKE2B 188437153969504b169970d14c39d47c9e666308bf65412018f42ba8ad108876f164733fe2004ea31941ab5db534766c10b871b34ef525522d1120b175530b87 SHA512 63998ea4940d04adfc179a94aa91bb2598692307b429f4c7e5b86a1519c13817035de4c71afc9e4b33fde35e962504373d152de9b9cc8eebbbeb78b2c1942041 DIST ogre-1.9.0.tar.bz2 128098305 BLAKE2B 6e67a5b60a6606a910e099f1c7ba736eb525f079f3aba5cfb362329b9130059d303fc9df6f7b8611c0ba75e1e207fa018e543e93c9f5ce39a6621e4c72ed4a83 SHA512 b1ea93d80ac0978a7c228460a6714f8d17797450efd5af6765c9fa4402e9060a8ef3a700d2757593a3016fdc32276722c8f4a5d9889a3e2eb424f16162a52bde diff --git a/dev-games/ogre/files/ogre-1.10.12-use_system_tinyxml.patch b/dev-games/ogre/files/ogre-1.10.12-use_system_tinyxml.patch new file mode 100644 index 00000000000..ef15931940d --- /dev/null +++ b/dev-games/ogre/files/ogre-1.10.12-use_system_tinyxml.patch @@ -0,0 +1,42 @@ +--- a/CMake/Dependencies.cmake 2018-09-04 07:50:49.091120793 +0200 ++++ b/CMake/Dependencies.cmake 2018-09-04 07:51:55.429118519 +0200 +@@ -383,6 +383,10 @@ + find_package(Softimage) + macro_log_feature(Softimage_FOUND "Softimage" "Softimage SDK needed for building XSIExporter" FALSE "6.0" "") + ++# Find TinyXML ++find_package(TinyXML) ++macro_log_feature(TINYXML_FOUND "TinyXML" "TinyXML needed for building OgreXMLConverter" FALSE "" "") ++ + ####################################################################### + # Tests + ####################################################################### +--- /dev/null 2018-09-03 08:18:52.571907158 +0200 ++++ b/CMake/Packages/FindTinyXML.cmake 2018-09-04 19:15:06.392129319 +0200 +@@ -0,0 +1,26 @@ ++# - Find TinyXML ++# Find the native TinyXML includes and library ++# ++# TINYXML_FOUND - True if TinyXML found. ++# TINYXML_INCLUDE_DIR - where to find tinyxml.h, etc. ++# TINYXML_LIBRARIES - List of libraries when using TinyXML. ++# ++ ++IF( TINYXML_INCLUDE_DIR ) ++ # Already in cache, be silent ++ SET( TinyXML_FIND_QUIETLY TRUE ) ++ENDIF( TINYXML_INCLUDE_DIR ) ++ ++FIND_PATH( TINYXML_INCLUDE_DIR "tinyxml.h" ++ PATH_SUFFIXES "tinyxml" ) ++ ++FIND_LIBRARY( TINYXML_LIBRARIES ++ NAMES "tinyxml" ++ PATH_SUFFIXES "tinyxml" ) ++ ++# handle the QUIETLY and REQUIRED arguments and set TINYXML_FOUND to TRUE if ++# all listed variables are TRUE ++INCLUDE( "FindPackageHandleStandardArgs" ) ++FIND_PACKAGE_HANDLE_STANDARD_ARGS( "TinyXML" DEFAULT_MSG TINYXML_INCLUDE_DIR TINYXML_LIBRARIES ) ++ ++MARK_AS_ADVANCED( TINYXML_INCLUDE_DIR TINYXML_LIBRARIES ) diff --git a/dev-games/ogre/metadata.xml b/dev-games/ogre/metadata.xml index 42d8eb1e79b..9e726e9a8d3 100644 --- a/dev-games/ogre/metadata.xml +++ b/dev-games/ogre/metadata.xml @@ -77,18 +77,34 @@ Exporters * Maya (meshes) - enable boost support + Enable boost support + Enable GL state cache support NVIDIA toolkit plugin - more precise calculations at the expense of speed - support images via freeimage + More precise calculations at the expense of speed + Use egl instead of glx + Build experimental BETA components 'Bites' and 'HLMS' + Support images via media-libs/freeimage Build OpenGL 3+ RenderSystem (EXPERIMENTAL) - build OpenGL ES 2.x RenderSystem + + Build OpenGL ES 2.x RenderSystem plus ES 3.x features if available. + + Build OpenGL ES 2.x RenderSystem Enable OpenGL ES 3.x Features - pull in Object-oriented Input System library for samples - when USE=threads, use poco for threading - when USE=threads, use tbb for threading - build+install helper tools - support zip archives + Pull in Object-oriented Input System library dev-games/ois for samples + When USE=threads, use poco for threading + + Resource Manager PEDANTIC : require an explicit resource group. Case + sensitive lookup. Some demos might not work with this setting. + (default: case-insensitive + sensitive lookup in all groups) + + + Resource Manager STRICT : search in default group if not specified otherwise. + Case sensitive lookup. Some demos might not work with this setting. + (default: case-insensitive + sensitive lookup in all groups) + + When USE=threads, use tbb for threading + Build and install helper tools + Support zip archives sinbad/ogre diff --git a/dev-games/ogre/ogre-1.10.12.ebuild b/dev-games/ogre/ogre-1.10.12.ebuild new file mode 100644 index 00000000000..34a0952245b --- /dev/null +++ b/dev-games/ogre/ogre-1.10.12.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +CMAKE_REMOVE_MODULES="yes" +CMAKE_REMOVE_MODULES_LIST="FindFreetype FindDoxygen FindZLIB" +inherit cmake-utils + +DESCRIPTION="Object-oriented Graphics Rendering Engine" +HOMEPAGE="https://www.ogre3d.org/" +SRC_URI="https://github.com/OGRECave/${PN}/archive/v${PV}.zip -> ${P}.zip" + +LICENSE="MIT public-domain" +SLOT="0/1.10.0" +KEYWORDS="~amd64 ~arm ~x86" + +IUSE="+cache cg doc double-precision egl examples experimental +freeimage gles2 + +opengl profile resman-pedantic resman-strict tools" + +REQUIRED_USE=" + || ( gles2 opengl ) + ?? ( resman-pedantic resman-strict ) + examples? ( experimental ) +" +RESTRICT="test" #139905 + +RDEPEND=" + dev-games/ois + dev-libs/boost:= + dev-libs/zziplib + media-libs/freetype:2 + x11-libs/libX11 + x11-libs/libXaw + x11-libs/libXrandr + x11-libs/libXt + cg? ( media-gfx/nvidia-cg-toolkit ) + egl? ( media-libs/mesa[egl] ) + freeimage? ( media-libs/freeimage ) + gles2? ( media-libs/mesa[gles2] ) + opengl? ( + virtual/glu + virtual/opengl + ) + tools? ( dev-libs/tinyxml[stl] ) +" +DEPEND="${RDEPEND} + virtual/pkgconfig + x11-base/xorg-proto + doc? ( app-doc/doxygen )" + +PATCHES=( + "${FILESDIR}/${PN}-1.10.11-samples.patch" + "${FILESDIR}/${PN}-1.10.11-resource_path.patch" + "${FILESDIR}/${PN}-1.10.11-media_path.patch" + "${FILESDIR}/${P}-use_system_tinyxml.patch" +) + +src_prepare() { + sed -i \ + -e "s:share/OGRE/docs:share/doc/${PF}:" \ + Docs/CMakeLists.txt || die + # Stupid build system hardcodes release names + sed -i \ + -e '/CONFIGURATIONS/s:CONFIGURATIONS Release.*::' \ + CMake/Utils/OgreConfigTargets.cmake || die + + # Fix some path issues + cmake-utils_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DOGRE_BUILD_COMPONENT_BITES=$(usex experimental) + -DOGRE_BUILD_COMPONENT_HLMS=$(usex experimental) + -DOGRE_BUILD_COMPONENT_JAVA=no + -DOGRE_BUILD_COMPONENT_PYTHON=no + -DOGRE_BUILD_DEPENDENCIES=no + -DOGRE_BUILD_PLUGIN_CG=$(usex cg) + -DOGRE_BUILD_RENDERSYSTEM_GL=$(usex opengl) + -DOGRE_BUILD_RENDERSYSTEM_GL3PLUS=$(usex opengl) + -DOGRE_BUILD_RENDERSYSTEM_GLES2=$(usex gles2) + -DOGRE_BUILD_SAMPLES=$(usex examples) + -DOGRE_BUILD_TESTS=no + -DOGRE_BUILD_TOOLS=$(usex tools) + -DOGRE_CONFIG_DOUBLE=$(usex double-precision) + -DOGRE_CONFIG_ENABLE_FREEIMAGE=$(usex freeimage) + -DOGRE_CONFIG_ENABLE_GL_STATE_CACHE_SUPPORT=$(usex cache) + -DOGRE_CONFIG_THREADS=3 + -DOGRE_CONFIG_THREAD_PROVIDER=std + -DOGRE_FULL_RPATH=no + -DOGRE_GLSUPPORT_USE_EGL=$(usex egl) + -DOGRE_INSTALL_DOCS=$(usex doc) + -DOGRE_INSTALL_SAMPLES=$(usex examples) + -DOGRE_INSTALL_SAMPLES_SOURCE=$(usex examples) + -DOGRE_NODE_STORAGE_LEGACY=no + -DOGRE_PROFILING=$(usex profile) + -DOGRE_RESOURCEMANAGER_STRICT=$(\ + usex resman-pedantic 1 $(\ + usex resman-strict 2 0)) + -DOGRE_USE_STD11=yes + ) + + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + + CONFIGDIR=/etc/OGRE + SHAREDIR=/usr/share/OGRE + + # plugins and resources are the main configuration + insinto "${CONFIGDIR}" + doins "${CMAKE_BUILD_DIR}"/bin/plugins.cfg + doins "${CMAKE_BUILD_DIR}"/bin/resources.cfg + dosym "${CONFIGDIR}"/plugins.cfg "${SHAREDIR}"/plugins.cfg + dosym "${CONFIGDIR}"/resources.cfg "${SHAREDIR}"/resources.cfg + + # These are only for the sample browser + insinto "${SHAREDIR}" + doins "${CMAKE_BUILD_DIR}"/bin/quakemap.cfg + doins "${CMAKE_BUILD_DIR}"/bin/samples.cfg +}