From e4aef25ef9fba11d7c4cba1511a9bab3c4d39d91 Mon Sep 17 00:00:00 2001 From: Alexey Sokolov Date: Sat, 5 Jun 2021 21:38:28 +0100 Subject: games-engines/openmw: 0.46 requires OSG 3.4 This is in preparation for future 0.47. The discussion with upstream revealed that 0.46 works best with the forked OSG 3.4, 3.6 is not recommended for it. But 0.47 needs 3.6, also with a preference to use the forked OSG. Package-Manager: Portage-3.0.18, Repoman-3.0.2 Signed-off-by: Alexey Sokolov Closes: https://github.com/gentoo/gentoo/pull/21136 Signed-off-by: Ionen Wolkens --- games-engines/openmw/openmw-0.46.0-r1.ebuild | 162 +++++++++++++++++++++++++++ games-engines/openmw/openmw-0.46.0.ebuild | 162 --------------------------- 2 files changed, 162 insertions(+), 162 deletions(-) create mode 100644 games-engines/openmw/openmw-0.46.0-r1.ebuild delete mode 100644 games-engines/openmw/openmw-0.46.0.ebuild diff --git a/games-engines/openmw/openmw-0.46.0-r1.ebuild b/games-engines/openmw/openmw-0.46.0-r1.ebuild new file mode 100644 index 000000000000..673fcc9aaa33 --- /dev/null +++ b/games-engines/openmw/openmw-0.46.0-r1.ebuild @@ -0,0 +1,162 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake flag-o-matic xdg-utils readme.gentoo-r1 + +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 + https://gitlab.com/OpenMW/openmw/-/merge_requests/163.patch -> ${P}-floattest.patch + " + 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=" + 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.4*:=[ffmpeg,jpeg,png,sdl,svg,truetype,zlib] ) + !osg-fork? ( >=dev-games/openscenegraph-3.5.5:=[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[doc] + dev-python/sphinx + ) + test? ( + dev-cpp/gtest + ) +" + +PATCHES=( + "${FILESDIR}"/openmw-0.46.0-mygui-license.patch + "${FILESDIR}"/openmw-0.46.0-recastnavigation.patch + "${FILESDIR}"/openmw-0.46.0-missing-include.patch + "${FILESDIR}"/openmw-0.46.0-fix-cast.patch + "${FILESDIR}"/openmw-0.46.0-nifbullet-test.patch + # https://gitlab.com/OpenMW/openmw/-/merge_requests/163 + "${DISTDIR}"/openmw-0.46.0-floattest.patch + "${FILESDIR}"/openmw-0.46.0-floattest2.patch + "${FILESDIR}"/openmw-0.46.0-gcc11.patch +) + +src_prepare() { + cmake_src_prepare + + # Use the system tinyxml headers + rm -v extern/oics/tiny{str,xml}* || die + + # Unbundle recastnavigation + rm -vr extern/recastnavigation || die + sed -i "s#GENTOO_RECAST_LIBDIR#${EPREFIX}/usr/$(get_libdir)#" CMakeLists.txt || die +} + +src_configure() { + use devtools && ! use qt5 && \ + elog "'qt5' USE flag is disabled, 'openmw-cs' will not be installed" + + append-cxxflags "-I${EPREFIX}/usr/include/recastnavigation" + + 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 + -DDESIRED_QT_VERSION=5 + ) + + cmake_src_configure +} + +src_compile() { + cmake_src_compile + + if use doc ; then + cmake_src_compile doc + find "${CMAKE_BUILD_DIR}"/docs/Doxygen/html \ + -name '*.md5' -type f -delete || die + HTML_DOCS=( "${CMAKE_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 + local 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_icon_cache_update + readme.gentoo_print_elog +} + +pkg_postrm() { + xdg_icon_cache_update +} diff --git a/games-engines/openmw/openmw-0.46.0.ebuild b/games-engines/openmw/openmw-0.46.0.ebuild deleted file mode 100644 index 9b4a6bfa4e9d..000000000000 --- a/games-engines/openmw/openmw-0.46.0.ebuild +++ /dev/null @@ -1,162 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit cmake flag-o-matic xdg-utils readme.gentoo-r1 - -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 - https://gitlab.com/OpenMW/openmw/-/merge_requests/163.patch -> ${P}-floattest.patch - " - 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=" - 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:=[ffmpeg,jpeg,png,sdl,svg,truetype,zlib] ) - !osg-fork? ( >=dev-games/openscenegraph-3.5.5:=[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[doc] - dev-python/sphinx - ) - test? ( - dev-cpp/gtest - ) -" - -PATCHES=( - "${FILESDIR}"/openmw-0.46.0-mygui-license.patch - "${FILESDIR}"/openmw-0.46.0-recastnavigation.patch - "${FILESDIR}"/openmw-0.46.0-missing-include.patch - "${FILESDIR}"/openmw-0.46.0-fix-cast.patch - "${FILESDIR}"/openmw-0.46.0-nifbullet-test.patch - # https://gitlab.com/OpenMW/openmw/-/merge_requests/163 - "${DISTDIR}"/openmw-0.46.0-floattest.patch - "${FILESDIR}"/openmw-0.46.0-floattest2.patch - "${FILESDIR}"/openmw-0.46.0-gcc11.patch -) - -src_prepare() { - cmake_src_prepare - - # Use the system tinyxml headers - rm -v extern/oics/tiny{str,xml}* || die - - # Unbundle recastnavigation - rm -vr extern/recastnavigation || die - sed -i "s#GENTOO_RECAST_LIBDIR#${EPREFIX}/usr/$(get_libdir)#" CMakeLists.txt || die -} - -src_configure() { - use devtools && ! use qt5 && \ - elog "'qt5' USE flag is disabled, 'openmw-cs' will not be installed" - - append-cxxflags "-I${EPREFIX}/usr/include/recastnavigation" - - 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 - -DDESIRED_QT_VERSION=5 - ) - - cmake_src_configure -} - -src_compile() { - cmake_src_compile - - if use doc ; then - cmake_src_compile doc - find "${CMAKE_BUILD_DIR}"/docs/Doxygen/html \ - -name '*.md5' -type f -delete || die - HTML_DOCS=( "${CMAKE_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 - local 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_icon_cache_update - readme.gentoo_print_elog -} - -pkg_postrm() { - xdg_icon_cache_update -} -- cgit v1.2.3-65-gdbad