commit:     b5162e97feec7381014da6ef9be3ea004851d57f
Author:     Alexey Sokolov <alexey+gentoo <AT> asokolov <DOT> org>
AuthorDate: Sat Jul 22 17:00:53 2023 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sat Jul 22 17:00:53 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b5162e97

games-engines/openmw: add 0.48.0

Signed-off-by: Alexey Sokolov <alexey+gentoo <AT> asokolov.org>
Signed-off-by: David Seifert <soap <AT> gentoo.org>

 games-engines/openmw/Manifest             |   1 +
 games-engines/openmw/openmw-0.48.0.ebuild | 174 ++++++++++++++++++++++++++++++
 2 files changed, 175 insertions(+)

diff --git a/games-engines/openmw/Manifest b/games-engines/openmw/Manifest
index cba80402aaec..0bfdae772a9c 100644
--- a/games-engines/openmw/Manifest
+++ b/games-engines/openmw/Manifest
@@ -1,2 +1,3 @@
 DIST openmw-0.47.0.tar.gz 5156857 BLAKE2B 
40e8b9670423259fa0cc03ef000c17ebe06d1d58c2527b51b25cea3b54978b8a698984371eac14ff212f9550253ab17d41b83d37426371f12f5ce2d30b240d3d
 SHA512 
517e650d0054cdba8d38de05ed3975b0fcf8de32fda59c8df7c34b973e5390efa0dd9ec79babdfdaa79dee7aa8a75009776f62fad91b9aa9aa28016c5032652b
+DIST openmw-0.48.0.tar.gz 6020423 BLAKE2B 
6a6f710f06efc0e844115018365db8148e9f6acefd453df74904144f53f5e896e9ab4d4f563ab95a3231500a2c1a5e1f8c5b6d6ac5c1315805c61657d13a7aa8
 SHA512 
969c10b285c039b54810c56f202f9c33bd03c83d87fec722c3389525e87fc7104760ea12527be5fb19a3f7ae2dc9aef0e4c6b7375d8bbcd6eb726e1d7859b833
 DIST openmw-template-8966dab24692555eec720c854fb0f73d108070cd.omwgame 139730 
BLAKE2B 
bf7f96912fd828078c62d112f3ff83e9a35298516135fb46b15ed01fc0260247cc0cba4aa3bbc55bf6a688f216384dbd9a5aa3328c4387b9b180b80f7463963e
 SHA512 
6e38642bcf013c5f496a9cb0bf3ec7c9553b6e86b836e7844824c5a05f556c9391167214469b6318401684b702d7569896bf743c85aee4198612b3315ba778d6

diff --git a/games-engines/openmw/openmw-0.48.0.ebuild 
b/games-engines/openmw/openmw-0.48.0.ebuild
new file mode 100644
index 000000000000..a7b997f5b8a9
--- /dev/null
+++ b/games-engines/openmw/openmw-0.48.0.ebuild
@@ -0,0 +1,174 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( luajit )
+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";
+
+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 ~arm64 ~x86"
+       S="${WORKDIR}/${PN}-${P}"
+fi
+
+MY_TEMPLATE_COMMIT="8966dab24692555eec720c854fb0f73d108070cd"
+SRC_URI+="
+       test? ( 
https://gitlab.com/OpenMW/example-suite/-/raw/${MY_TEMPLATE_COMMIT}/data/template.omwgame
 -> openmw-template-${MY_TEMPLATE_COMMIT}.omwgame )
+"
+
+LICENSE="GPL-3 MIT BitstreamVera ZLIB"
+SLOT="0"
+IUSE="doc devtools +osg-fork test +qt5"
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+# FIXME: Unbundle dev-games/openscenegraph-qt in extern/osgQt directory,
+# used when BUILD_OPENCS flag is enabled. See bug #676266.
+
+RDEPEND="${LUA_DEPS}
+       app-arch/lz4:=
+       dev-games/mygui
+       dev-cpp/yaml-cpp:=
+       dev-db/sqlite:3
+       dev-games/recastnavigation:=
+       dev-libs/boost:=[zlib]
+       dev-libs/icu:=
+       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(-),jpeg,png,sdl,svg,truetype,zlib]
 )
+       !osg-fork? ( 
>=dev-games/openscenegraph-3.5.5:=[collada(-),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}
+       dev-cpp/sol2
+"
+
+BDEPEND="
+       virtual/pkgconfig
+       doc? (
+               app-doc/doxygen[dot]
+               dev-python/sphinx
+       )
+       test? (
+               dev-cpp/gtest
+       )
+"
+
+src_prepare() {
+       cmake_src_prepare
+
+       # Use the system tinyxml headers
+       rm -v extern/oics/tiny{str,xml}* || die
+       rm -rv extern/sol3 || 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"
+               -DUSE_SYSTEM_TINYXML=ON
+               -DOPENMW_USE_SYSTEM_RECASTNAVIGATION=ON
+       )
+
+       if [[ ${ELUA} == luajit ]]; then
+               mycmakeargs+=(
+                       -DUSE_LUAJIT=ON
+               )
+       else
+               # 5.1 (and other 5.x) are supported in theory, but don't work 
well (eg. test fails)
+               # In a future version consider adding it back to LUA_COMPAT or 
dropping this branch
+               mycmakeargs+=(
+                       -DUSE_LUAJIT=OFF
+                       -DLua_FIND_VERSION_MAJOR=$(ver_cut 1 $(lua_get_version))
+                       -DLua_FIND_VERSION_MINOR=$(ver_cut 2 $(lua_get_version))
+                       -DLua_FIND_VERSION_COUNT=2
+                       -DLua_FIND_VERSION_EXACT=ON
+               )
+       fi
+
+       if use test ; then
+               mkdir -p "${BUILD_DIR}"/apps/openmw_test_suite/data || die
+               cp "${DISTDIR}"/openmw-template-${MY_TEMPLATE_COMMIT}.omwgame \
+                       
"${BUILD_DIR}"/apps/openmw_test_suite/data/template.omwgame || die
+       fi
+
+       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() {
+       pushd "${BUILD_DIR}" > /dev/null || die
+       ./openmw_test_suite || die
+       popd > /dev/null || 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
+}

Reply via email to