games-engines/fheroes2: new package, add 1.0.5

Closes: https://github.com/gentoo/gentoo/pull/29031
Closes: https://bugs.gentoo.org/279781
Signed-off-by: Alexey Sokolov <alexey+gentoo@asokolov.org>
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
This commit is contained in:
Alexey Sokolov
2023-05-29 23:35:18 +01:00
committed by James Le Cuirot
parent 429ab1a397
commit c9dbfa96bd
4 changed files with 129 additions and 0 deletions

View File

@@ -0,0 +1 @@
DIST fheroes2-1.0.5.tar.gz 11570167 BLAKE2B 7294ae4a816ce0a42c035262cbc8d44fc53cfdaa1333934ac316607f7d086a44358fc13931e5dbce9b17ff65e58016efc57cd123747af30277bcf4c1bc195e1e SHA512 13f058319540fa9fa04955ff8a5f16a0113e791307d58c32025361c773757769306f632d2c6472ee6d0b704dc4c260a9c64954c19ba2e58ab21dc6744c3cdd3e

View File

@@ -0,0 +1,78 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..12} )
inherit cmake python-single-r1 xdg
DESCRIPTION="Recreation of HoMM2 game engine"
HOMEPAGE="https://ihhub.github.io/fheroes2/"
SRC_URI="https://github.com/ihhub/fheroes2/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64"
IUSE="tools"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
COMMON_DEPEND="
media-libs/libpng:=
media-libs/libsdl2[video]
media-libs/sdl2-image
media-libs/sdl2-mixer
sys-libs/zlib
"
RDEPEND="
${COMMON_DEPEND}
${PYTHON_DEPS}
app-arch/libarchive
dev-lang/python
virtual/libintl
"
DEPEND="${COMMON_DEPEND}"
BDEPEND="
sys-devel/gettext
virtual/pkgconfig
"
PATCHES=(
"${FILESDIR}/fheroes2-1.0.4-scripts.patch"
)
src_configure() {
# Not using dev-games/libsmacker because the game crashes with it
local mycmakeargs=(
-DENABLE_IMAGE=ON
-DENABLE_TOOLS=$(usex tools)
-DUSE_SYSTEM_LIBSMACKER=NO
)
cmake_src_configure
}
src_compile() {
cmake_src_compile
emake -C files/lang
}
src_install() {
cmake_src_install
if use tools; then
for file in 82m2wav bin2txt extractor h2dmgr icn2img pal2img til2img xmi2midi; do
newbin "${BUILD_DIR}/${file}" "fheroes2-${file}"
done
fi
}
pkg_postinst() {
xdg_pkg_postinst
elog "You need original HoMM2 data files to play fheroes2."
elog "If you have an installer (.exe) from GOG, install:"
elog " games-strategy/homm2-gold-gog"
elog "If you have the original game installed somewhere already, run:"
elog " ${EPREFIX}/usr/share/fheroes2/extract_homm2_resources.sh"
elog "Also you can automatically get a demo version for free by installing:"
elog " games-strategy/homm2-demo"
}

View File

@@ -0,0 +1,19 @@
Install the data-exporting scripts to a better place than docs
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -182,12 +182,12 @@ if(NOT MACOS_APP_BUNDLE)
install(
FILES script/demo/download_demo_version.sh
PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ
- DESTINATION ${CMAKE_INSTALL_DOCDIR}/demo
+ DESTINATION ${FHEROES2_DATA}
)
install(
FILES script/homm2/extract_homm2_resources.sh
PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ
- DESTINATION ${CMAKE_INSTALL_DOCDIR}/homm2
+ DESTINATION ${FHEROES2_DATA}
)
install(
FILES script/packaging/common/fheroes2.appdata.xml

View File

@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person" proxied="yes">
<email>alexey+gentoo@asokolov.org</email>
<name>Alexey Sokolov</name>
</maintainer>
<maintainer type="project" proxied="proxy">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<maintainer type="project">
<email>games@gentoo.org</email>
<name>Gentoo Games Project</name>
</maintainer>
<use>
<flag name="tools">Install development tools like 82m2wav and xmi2midi.</flag>
</use>
<upstream>
<remote-id type="github">ihhub/fheroes2</remote-id>
</upstream>
<longdescription lang="en">
fheroes2 is a recreation of the Heroes of Might and Magic II game engine.
This open source multiplatform project, written from scratch, is
designed to reproduce the original game with significant improvements in
gameplay, graphics and logic (including support for high-resolution
graphics, improved AI, numerous fixes and user interface improvements),
breathing new life into one of the most addictive turn-based strategy
games.
</longdescription>
</pkgmetadata>