Skip to content

Commit

Permalink
games-engines/openmw: add live ebuild
Browse files Browse the repository at this point in the history
And add me (with p-m) to maintainers

Signed-off-by: Alexey Sokolov <[email protected]>
Closes: gentoo#15400
Signed-off-by: Andreas Sturmlechner <[email protected]>
  • Loading branch information
DarthGandalf authored and a17r committed May 27, 2020
1 parent b5f338f commit 52f8659
Show file tree
Hide file tree
Showing 2 changed files with 150 additions and 0 deletions.
8 changes: 8 additions & 0 deletions games-engines/openmw/metadata.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>[email protected]</email>
<name>Alexey Sokolov</name>
</maintainer>
<maintainer type="project">
<email>[email protected]</email>
<name>Proxy Maintainers</name>
</maintainer>
<maintainer type="project">
<email>[email protected]</email>
<name>Gentoo Games Project</name>
Expand Down
142 changes: 142 additions & 0 deletions games-engines/openmw/openmw-9999.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

inherit cmake xdg-utils readme.gentoo-r1

DESCRIPTION="Open source reimplementation of TES III: Morrowind"
HOMEPAGE="https://openmw.org/"

if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI=${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 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/openscenegraph-3.5.5:=[ffmpeg,jpeg,png,sdl,svg,truetype,zlib]
dev-libs/boost:=[threads]
dev-libs/tinyxml[stl]
media-libs/libsdl2[joystick,opengl,video]
media-libs/openal
media-video/ffmpeg:=
>=sci-physics/bullet-2.86:=
virtual/opengl
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
)
"

src_prepare() {
cmake_src_prepare

# We don't install license files
sed -i '/LICDIR/d' CMakeLists.txt || die

# 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=/usr/share
-DICONDIR="/usr/share/icons/hicolor/256x256/apps"
-DMORROWIND_DATA_FILES="/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
}

0 comments on commit 52f8659

Please sign in to comment.