From 0fba856a672b3098df56c4ae99740ae3f677673d Mon Sep 17 00:00:00 2001 From: Alexey Sokolov Date: Thu, 14 Oct 2021 21:23:45 +0100 Subject: [PATCH] games-engines/openmw: version 0.47 Package-Manager: Portage-3.0.20, Repoman-3.0.3 Signed-off-by: Alexey Sokolov Closes: https://github.com/gentoo/gentoo/pull/22579 Signed-off-by: Ionen Wolkens --- games-engines/openmw/Manifest | 1 + games-engines/openmw/openmw-0.47.0.ebuild | 142 ++++++++++++++++++++++ games-engines/openmw/openmw-9999.ebuild | 28 ++--- 3 files changed, 154 insertions(+), 17 deletions(-) create mode 100644 games-engines/openmw/openmw-0.47.0.ebuild diff --git a/games-engines/openmw/Manifest b/games-engines/openmw/Manifest index 08b631916bce..088a9b8fd26c 100644 --- a/games-engines/openmw/Manifest +++ b/games-engines/openmw/Manifest @@ -1,2 +1,3 @@ DIST openmw-0.46.0-floattest.patch 43168 BLAKE2B 060b529fd4cd01f0fc723bb5a00a256b9c1ae4413c7b22581467cce75416e01041c3af22f0215ad9b1c475965a988065e0860c01c1e71d97454b022eec4779ea SHA512 0e165417e9ae047231fdc27b62251b33867f3782c1753f81705c886d6d3a433c8bbc3b4653a2555bc644bad11db9769d4bc2abcc84ca3ab23fabb6b80347bc32 DIST openmw-0.46.0.tar.gz 5155004 BLAKE2B 8ad94a7fffe5a0739c56c778efe2ec17ef66c312a7fe5caf015cf3cad2bc17d2abe8cdc3f4134049a32fe55c4f4b3f72678d2d0ce1037fd02f6ac753b9d89b2c SHA512 da384aead300552817c0d0ce03515a5ccc95dcab4e02d4c1dd0d6c5f1b01ee01209bbaea74e2d12021e3465e49b051823bb018de39675c5a22c6892893624486 +DIST openmw-0.47.0.tar.gz 5156857 BLAKE2B 40e8b9670423259fa0cc03ef000c17ebe06d1d58c2527b51b25cea3b54978b8a698984371eac14ff212f9550253ab17d41b83d37426371f12f5ce2d30b240d3d SHA512 517e650d0054cdba8d38de05ed3975b0fcf8de32fda59c8df7c34b973e5390efa0dd9ec79babdfdaa79dee7aa8a75009776f62fad91b9aa9aa28016c5032652b diff --git a/games-engines/openmw/openmw-0.47.0.ebuild b/games-engines/openmw/openmw-0.47.0.ebuild new file mode 100644 index 000000000000..2ee105fb1152 --- /dev/null +++ b/games-engines/openmw/openmw-0.47.0.ebuild @@ -0,0 +1,142 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake readme.gentoo-r1 xdg + +DESCRIPTION="Open source reimplementation of TES III: Morrowind" +HOMEPAGE="https://openmw.org/ https://gitlab.com/OpenMW/openmw" + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/OpenMW/openmw.git" +else + SRC_URI="https://github.com/OpenMW/openmw/archive/${P}.tar.gz" + KEYWORDS="~amd64 ~x86" + S="${WORKDIR}/${PN}-${P}" +fi + +LICENSE="GPL-3 MIT BitstreamVera ZLIB" +SLOT="0" +IUSE="doc devtools +osg-fork test +qt5" +RESTRICT="!test? ( test )" + +# FIXME: Unbundle dev-games/openscenegraph-qt in extern/osgQt directory, +# used when BUILD_OPENCS flag is enabled. See bug #676266. + +RDEPEND=" + app-arch/lz4:= + dev-games/mygui + dev-games/recastnavigation:= + dev-libs/boost:=[threads(+),zlib] + dev-libs/tinyxml[stl] + media-libs/libsdl2[joystick,opengl,video] + media-libs/openal + media-video/ffmpeg:= + >=sci-physics/bullet-2.86:=[double-precision] + virtual/opengl + osg-fork? ( >=dev-games/openscenegraph-openmw-3.6:=[collada(-),ffmpeg,jpeg,png,sdl,svg,truetype,zlib] ) + !osg-fork? ( >=dev-games/openscenegraph-3.5.5:=[collada(-),ffmpeg,jpeg,png,sdl,svg,truetype,zlib] ) + qt5? ( + app-arch/unshield + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtnetwork:5 + dev-qt/qtopengl:5 + dev-qt/qtwidgets:5 + ) +" + +DEPEND="${RDEPEND}" + +BDEPEND=" + virtual/pkgconfig + doc? ( + app-doc/doxygen[dot] + dev-python/sphinx + ) + test? ( + dev-cpp/gtest + ) +" + +PATCHES=( + "${FILESDIR}"/openmw-0.47.0-mygui-license.patch +) + +src_prepare() { + cmake_src_prepare + + # Use the system tinyxml headers + rm -v extern/oics/tiny{str,xml}* || die +} + +src_configure() { + use devtools && ! use qt5 && + elog "'qt5' USE flag is disabled, 'openmw-cs' will not be installed" + + local mycmakeargs=( + -DBUILD_BSATOOL=$(usex devtools) + -DBUILD_DOCS=$(usex doc) + -DBUILD_ESMTOOL=$(usex devtools) + -DBUILD_LAUNCHER=$(usex qt5) + -DBUILD_NIFTEST=$(usex devtools) + -DBUILD_OPENCS=$(usex devtools $(usex qt5)) + -DBUILD_WIZARD=$(usex qt5) + -DBUILD_UNITTESTS=$(usex test) + -DGLOBAL_DATA_PATH="${EPREFIX}/usr/share" + -DICONDIR="${EPREFIX}/usr/share/icons/hicolor/256x256/apps" + -DMORROWIND_DATA_FILES="${EPREFIX}/usr/share/morrowind-data" + -DUSE_SYSTEM_TINYXML=ON + -DOPENMW_USE_SYSTEM_RECASTNAVIGATION=ON + ) + + cmake_src_configure +} + +src_compile() { + cmake_src_compile + + if use doc ; then + cmake_src_compile doc + find "${BUILD_DIR}"/docs/Doxygen/html \ + -name '*.md5' -type f -delete || die + HTML_DOCS=( "${BUILD_DIR}"/docs/Doxygen/html/. ) + fi +} + +src_test() { + "${BUILD_DIR}/openmw_test_suite" || die +} + +src_install() { + cmake_src_install + + local DOC_CONTENTS=" + You need the original Morrowind data files. If you haven't + installed them yet, you can install them straight via the + installation wizard which is the officially supported method + (either by using the launcher or by calling 'openmw-wizard' + directly).\n" + + if ! use qt5; then + DOC_CONTENTS+="\n\n + USE flag 'qt5' is disabled, 'openmw-launcher' and + 'openmw-wizard' are not available. You are on your own for + making the Morrowind data files available and pointing + openmw at them.\n\n + Additionally; you must import the Morrowind.ini file before + running openmw with the Morrowind data files for the first + time. Typically this can be done like so:\n\n + \t mkdir -p ~/.config/openmw\n + \t openmw-iniimporter /path/to/Morrowind.ini ~/.config/openmw/openmw.cfg" + fi + + readme.gentoo_create_doc +} + +pkg_postinst() { + xdg_pkg_postinst + readme.gentoo_print_elog +} diff --git a/games-engines/openmw/openmw-9999.ebuild b/games-engines/openmw/openmw-9999.ebuild index a716d898ad5c..0bad76f57453 100644 --- a/games-engines/openmw/openmw-9999.ebuild +++ b/games-engines/openmw/openmw-9999.ebuild @@ -1,10 +1,10 @@ # Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 LUA_COMPAT=( lua5-{1,3,4} luajit ) -inherit cmake lua-single xdg-utils readme.gentoo-r1 +inherit cmake lua-single readme.gentoo-r1 xdg DESCRIPTION="Open source reimplementation of TES III: Morrowind" HOMEPAGE="https://openmw.org/ https://gitlab.com/OpenMW/openmw" @@ -28,11 +28,11 @@ RESTRICT="!test? ( test )" # used when BUILD_OPENCS flag is enabled. See bug #676266. RDEPEND="${LUA_DEPS} - app-arch/lz4 + app-arch/lz4:= dev-games/mygui - dev-games/recastnavigation + dev-games/recastnavigation:= dev-libs/boost:=[threads(+),zlib] - dev-libs/tinyxml:=[stl] + dev-libs/tinyxml[stl] media-libs/libsdl2[joystick,opengl,video] media-libs/openal media-video/ffmpeg:= @@ -57,7 +57,7 @@ DEPEND="${RDEPEND} BDEPEND=" virtual/pkgconfig doc? ( - app-doc/doxygen[doc] + app-doc/doxygen[dot] dev-python/sphinx ) test? ( @@ -78,7 +78,7 @@ src_prepare() { } src_configure() { - use devtools && ! use qt5 && \ + use devtools && ! use qt5 && elog "'qt5' USE flag is disabled, 'openmw-cs' will not be installed" local mycmakeargs=( @@ -95,8 +95,6 @@ src_configure() { -DMORROWIND_DATA_FILES="${EPREFIX}/usr/share/morrowind-data" -DUSE_SYSTEM_TINYXML=ON -DOPENMW_USE_SYSTEM_RECASTNAVIGATION=ON - -DDESIRED_QT_VERSION=5 - -DBULLET_USE_DOUBLES=ON ) if [[ ${ELUA} == luajit ]]; then @@ -121,9 +119,9 @@ src_compile() { if use doc ; then cmake_src_compile doc - find "${CMAKE_BUILD_DIR}"/docs/Doxygen/html \ + find "${BUILD_DIR}"/docs/Doxygen/html \ -name '*.md5' -type f -delete || die - HTML_DOCS=( "${CMAKE_BUILD_DIR}"/docs/Doxygen/html/. ) + HTML_DOCS=( "${BUILD_DIR}"/docs/Doxygen/html/. ) fi } @@ -142,7 +140,7 @@ src_install() { directly).\n" if ! use qt5; then - local DOC_CONTENTS+="\n\n + DOC_CONTENTS+="\n\n USE flag 'qt5' is disabled, 'openmw-launcher' and 'openmw-wizard' are not available. You are on your own for making the Morrowind data files available and pointing @@ -158,10 +156,6 @@ src_install() { } pkg_postinst() { - xdg_icon_cache_update + xdg_pkg_postinst readme.gentoo_print_elog } - -pkg_postrm() { - xdg_icon_cache_update -}