diff options
Diffstat (limited to 'games-engines')
-rw-r--r-- | games-engines/Manifest.gz | bin | 3713 -> 3708 bytes | |||
-rw-r--r-- | games-engines/openmw/Manifest | 2 | ||||
-rw-r--r-- | games-engines/openmw/openmw-0.49.0_rc6.ebuild | 201 |
3 files changed, 203 insertions, 0 deletions
diff --git a/games-engines/Manifest.gz b/games-engines/Manifest.gz Binary files differindex 26f5a2c3b8c8..e1e386efca09 100644 --- a/games-engines/Manifest.gz +++ b/games-engines/Manifest.gz diff --git a/games-engines/openmw/Manifest b/games-engines/openmw/Manifest index 0634ee53bb9a..76e973b39b24 100644 --- a/games-engines/openmw/Manifest +++ b/games-engines/openmw/Manifest @@ -1,7 +1,9 @@ AUX openmw-0.48.0-Xt.patch 531 BLAKE2B 155a19ec9f341a3f424918ec8f8ebc853023a594750c0bc49fab34caac69c62f69a3f60a71e8988b81c7d66f9a6afef9c95592ad6122d5bbf3f1c8094fc87d12 SHA512 752ccf065dcd2bdee709f2f678b0b885008082c00292e9e9df658b4a606930614ba0d9552e697d4fbbd229fcff9139fd8eba4721c4d00b20afc9702072fa0ffd AUX openmw-0.48.0-gcc14.patch 821 BLAKE2B 0582c273504fa220b2ad29b5e8b4748c0da19ddddfb701182c459d09c85da16adc842601fa7da9114f8f2e6dea7e0f25ef068438412e6e710b61abe7b17a856a SHA512 dc8a4f43032b53279afbc098b590740883bcacbf24188bcdb3a2570c8b316ffe024b46a63d9b251d64cebd3e6533586dbd9277dc0abacc824a696e7bff39108f DIST openmw-0.48.0.tar.gz 6020423 BLAKE2B 6a6f710f06efc0e844115018365db8148e9f6acefd453df74904144f53f5e896e9ab4d4f563ab95a3231500a2c1a5e1f8c5b6d6ac5c1315805c61657d13a7aa8 SHA512 969c10b285c039b54810c56f202f9c33bd03c83d87fec722c3389525e87fc7104760ea12527be5fb19a3f7ae2dc9aef0e4c6b7375d8bbcd6eb726e1d7859b833 +DIST openmw-49-rc6.tar.gz 5940099 BLAKE2B f536bbbfa2369af2b6699c0613f4603763c7ef978c62cb308187e4edda78bebeab32f5c20594f2f0d624684ed77a0caab8b540563b17961d057f6a4757e8d571 SHA512 525668ef00542638566da88beb675828e12838782f111d7eecf8d7f1c6ae733dd4898259459a37883a0466ce82cd44bdeaa3984372d194b8d21002260b2d6235 DIST openmw-template-8966dab24692555eec720c854fb0f73d108070cd.omwgame 139730 BLAKE2B bf7f96912fd828078c62d112f3ff83e9a35298516135fb46b15ed01fc0260247cc0cba4aa3bbc55bf6a688f216384dbd9a5aa3328c4387b9b180b80f7463963e SHA512 6e38642bcf013c5f496a9cb0bf3ec7c9553b6e86b836e7844824c5a05f556c9391167214469b6318401684b702d7569896bf743c85aee4198612b3315ba778d6 EBUILD openmw-0.48.0.ebuild 4796 BLAKE2B 33ee3f2595cb401e06bafe58fe611242dd4c845a9e727689c1c5342ca006ead66b1578905e6026da916817064832164aef0a1f55e796ccd4b4bac7e2c2f85fa8 SHA512 bdda82e6aec01e7711990479977e028f33dacd30304f4d72d711b7d4f78d8bdfaecaa1ada191ef4379865ea976e51c59a68f8eb22092907af9c1d348fdfa0099 +EBUILD openmw-0.49.0_rc6.ebuild 5254 BLAKE2B f1d7b91b2a31b3575f0fa2138f80e4a3f5aa4bd0b0b8fa184bdbf39250ac7aa10e479c7ce7e447ecdc1a4da65d3d8a5eff0dd01547b19fb670b1613d8502569e SHA512 cd09c20ad567dd3fe532012b378acbb962492ba5eb8205fc6ff01f5024926d9a860bfddca7c37efe56dbed5987e5bd68b345de8df02b0974241069d01c50fd32 EBUILD openmw-9999.ebuild 5199 BLAKE2B 70dafd100163a5d220bdeedfa0b10bb0d3110765316c6000155cfc348f9d217342059058792f0dc707af414c0d55ea6122a65c72aad21d98e38d996c5af48e61 SHA512 90a81ea08f9695948ffc7225782ed9a808212ae84aebb58181a2fcf0161876f0c591bc6a018e48e9daf9a39adcd62b50f01f9f7b15f7c4bc4b445f098e7f12b6 MISC metadata.xml 1454 BLAKE2B f0cfc77e752bbd3b7a4cd1bee5d7e76aa913e402525928980f728273807be80555fb03e8b9891d28fea8b941c3e632395322536f006b94dea5a00d74bced610b SHA512 9aa67b87fd886d8c3fe29f5eb3f5fbd943a7d690c1dca21a34746a286d0b193e36ec8c96b75554ca3f98c4d149dcd7e072aa702b09c6670d63739a3c8b766df3 diff --git a/games-engines/openmw/openmw-0.49.0_rc6.ebuild b/games-engines/openmw/openmw-0.49.0_rc6.ebuild new file mode 100644 index 000000000000..d2bc695451b6 --- /dev/null +++ b/games-engines/openmw/openmw-0.49.0_rc6.ebuild @@ -0,0 +1,201 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-{1,3,4} 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" + +MY_PV=$(ver_cut 2)-$(ver_cut 4-5) + +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/${PN}-${MY_PV}.tar.gz" + KEYWORDS="~amd64 ~arm64 ~ppc64" + S="${WORKDIR}/${PN}-${PN}-${MY_PV}" +fi + +# This particular commit is hardcoded in +# https://gitlab.com/OpenMW/openmw/-/blob/ffe164b28d3a10408e20fdadd2f0168c1e32fd6e/apps/components_tests/CMakeLists.txt#L114-118 +MY_TEMPLATE_COMMIT="8966dab24692555eec720c854fb0f73d108070cd" +SRC_URI+=" + test? ( + https://gitlab.com/OpenMW/example-suite/-/raw/${MY_TEMPLATE_COMMIT}/game_template/data/template.omwgame + -> openmw-template-${MY_TEMPLATE_COMMIT}.omwgame + ) +" + +LICENSE="GPL-3 MIT BitstreamVera ZLIB" +SLOT="0" +IUSE="doc devtools +gui +osg-fork test" +REQUIRED_USE="${LUA_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +# TODO: Unbundle dev-games/openscenegraph-qt in extern/osgQt directory, +# used when BUILD_OPENCS flag is enabled. +# OpenMW has custom changes to this library. +# See bug #676266. + +RDEPEND="${LUA_DEPS} + app-arch/lz4:= + dev-cpp/yaml-cpp:= + dev-db/sqlite:3 + dev-games/recastnavigation:= + >=dev-games/mygui-3.4.3:= + 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] + sys-libs/zlib + virtual/opengl + osg-fork? ( >=dev-games/openscenegraph-openmw-3.6:=[collada(-),jpeg,png,sdl,svg,truetype,zlib] ) + !osg-fork? ( >=dev-games/openscenegraph-3.6.5:=[collada(-),jpeg,png,sdl,svg,truetype,zlib] ) + gui? ( + app-arch/unshield + dev-qt/qtbase:6[gui,network,opengl,widgets] + dev-qt/qtsvg:6 + ) +" + +DEPEND="${RDEPEND} + dev-cpp/sol2 +" + +BDEPEND=" + virtual/pkgconfig + doc? ( + app-text/doxygen[dot] + dev-python/sphinx + ) + gui? ( + dev-qt/qttools:6[linguist] + ) + test? ( + dev-cpp/gtest + ) +" + +src_prepare() { + cmake_src_prepare + + # Use the system tinyxml headers + rm -v extern/oics/tiny{str,xml}* || die + + # Use the system sol2 (v3) headers + rm -r extern/sol3 || die +} + +src_configure() { + use devtools && ! use gui && + elog "'gui' 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 gui) + -DBUILD_NIFTEST=$(usex devtools) + -DBUILD_OPENCS=$(usex devtools $(usex gui)) + -DBUILD_WIZARD=$(usex gui) + -DBUILD_COMPONENTS_TESTS=$(usex test) + -DBUILD_OPENMW_TESTS=$(usex test) + -DBUILD_OPENCS_TESTS=$(usex test $(usex devtools)) + + -DGLOBAL_DATA_PATH="${EPREFIX}/usr/share" + -DICONDIR="${EPREFIX}/usr/share/icons/hicolor/256x256/apps" + -DUSE_SYSTEM_TINYXML=ON + -DOPENMW_USE_SYSTEM_GOOGLETEST=ON + -DOPENMW_USE_SYSTEM_RECASTNAVIGATION=ON + + -DQT_DIR="${ESYSROOT}/usr/lib64/cmake/Qt6" + ) + + if [[ ${ELUA} == luajit ]]; then + mycmakeargs+=( + -DUSE_LUAJIT=ON + ) + else + 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/components_tests/data || die + cp "${DISTDIR}"/openmw-template-${MY_TEMPLATE_COMMIT}.omwgame \ + "${BUILD_DIR}"/apps/components_tests/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() { + # Lua 5.x is supported in theory, but don't work as well, the test fails + # Upstream recommends luajit, but it has less arch coverage + if [[ ${ELUA} != luajit ]]; then + elog "Skipping tests on ${ELUA}" + return + fi + + pushd "${BUILD_DIR}" > /dev/null || die + ./components-tests || die + ./openmw-tests || die + if use gui && use devtools; then + ./openmw-cs-tests || die + fi + 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 gui ; then + DOC_CONTENTS+="\n\n + USE flag 'gui' 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 +} |