summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-engines')
-rw-r--r--games-engines/openmw/Manifest1
-rw-r--r--games-engines/openmw/openmw-0.47.0.ebuild142
-rw-r--r--games-engines/openmw/openmw-9999.ebuild28
3 files changed, 154 insertions, 17 deletions
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
-}