diff options
author | Alexey Sokolov <alexey+gentoo@asokolov.org> | 2023-07-22 19:00:53 +0200 |
---|---|---|
committer | David Seifert <soap@gentoo.org> | 2023-07-22 19:00:53 +0200 |
commit | b5162e97feec7381014da6ef9be3ea004851d57f (patch) | |
tree | c5b07312b38deabb0e96d488954a024bd7814e5b /games-engines | |
parent | profiles/base: Update postgres_targets to postgres15 (diff) | |
download | gentoo-b5162e97feec7381014da6ef9be3ea004851d57f.tar.gz gentoo-b5162e97feec7381014da6ef9be3ea004851d57f.tar.bz2 gentoo-b5162e97feec7381014da6ef9be3ea004851d57f.zip |
games-engines/openmw: add 0.48.0
Signed-off-by: Alexey Sokolov <alexey+gentoo@asokolov.org>
Signed-off-by: David Seifert <soap@gentoo.org>
Diffstat (limited to 'games-engines')
-rw-r--r-- | games-engines/openmw/Manifest | 1 | ||||
-rw-r--r-- | games-engines/openmw/openmw-0.48.0.ebuild | 174 |
2 files changed, 175 insertions, 0 deletions
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 +} |