# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 CMAKE_MAKEFILE_GENERATOR=emake LUA_COMPAT=( lua5-1 ) RUST_MIN_VER="1.87.0" inherit cargo cmake lua-single xdg-utils DESCRIPTION="A turn-based strategy, artillery, action and comedy game" HOMEPAGE="https://www.hedgewars.org/" if [[ ${PV} == *_p* ]]; then MY_COMMIT="1bbc396d3123702ee9445c5c6bdafdfa6d43d327" SRC_URI="https://github.com/${PN}/hw/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz" S="${WORKDIR}"/hw-${MY_COMMIT} else MY_P=${PN}-src-${PV} SRC_URI="https://www.hedgewars.org/download/releases/${MY_P}.tar.bz2" S="${WORKDIR}"/${MY_P} fi SRC_URI+=" https://github.com/puleglot/hw/releases/download/${PV}/${P}-crates.tar.xz" LICENSE="GPL-2 Apache-2.0 FDL-1.3" # Dependent crate licenses LICENSE+=" MIT Unicode-3.0 || ( Apache-2.0 Boost-1.0 ) " SLOT="0" KEYWORDS="~amd64" IUSE="ffmpeg" REQUIRED_USE="${LUA_REQUIRED_USE}" QA_FLAGS_IGNORED="/usr/bin/hwengine" # pascal sucks QA_PRESTRIPPED="/usr/bin/hwengine" # pascal sucks DEPEND="${LUA_DEPS} >=dev-games/physfs-3.0.1 dev-qt/qtbase:6[network,widgets] media-libs/libpng:0= media-libs/libsdl2:=[opengl] media-libs/sdl2-image:=[png] media-libs/sdl2-mixer:=[vorbis] media-libs/sdl2-net:= media-libs/sdl2-ttf:= virtual/zlib:= ffmpeg? ( media-video/ffmpeg:= ) " RDEPEND="${DEPEND} app-arch/xz-utils >=media-fonts/dejavu-2.28 media-fonts/wqy-zenhei " BDEPEND=" dev-qt/qttools:6 dev-lang/fpc " PATCHES=( "${FILESDIR}/${PN}-1.0.0-cmake_lua_version.patch" "${FILESDIR}/${PN}-1.0.2-no-pas2c.patch" "${FILESDIR}/${PN}-1.1.0-no-qt-deploy.patch" ) src_prepare() { if [[ ${PV} == *_p* ]]; then cat <<-EOF > share/version_info.txt || die Hedgewars versioning information, do not modify rev GIT hash ${MY_COMMIT} EOF fi cmake_src_prepare } src_configure() { local mycmakeargs=( -DBUILD_ENGINE_C=OFF -DBUILD_OFFLINE=ON -DMINIMAL_FLAGS=ON -DNOSERVER=ON -DDATA_INSTALL_DIR="${EPREFIX}/usr/share/${PN}" -Dtarget_binary_install_dir="${EPREFIX}/usr/bin" -Dtarget_library_install_dir="${EPREFIX}/usr/$(get_libdir)" -DCMAKE_VERBOSE_MAKEFILE=TRUE # Need to tell the build system where the fonts are located # as it uses PhysFS' symbolic link protection mode which # prevents us from symlinking the fonts into the right directory # https://hg.hedgewars.org/hedgewars/rev/76ad55807c24 # https://icculus.org/physfs/docs/html/physfs_8h.html#aad451d9b3f46f627a1be8caee2eef9b7 -DFONTS_DIRS="${EPREFIX}/usr/share/fonts/wqy-zenhei;${EPREFIX}/usr/share/fonts/dejavu" # upstream sets RPATH that leads to weird breakage # https://bugzilla.redhat.com/show_bug.cgi?id=1200193 -DCMAKE_SKIP_RPATH=ON -DLUA_VERSION=$(lua_get_version) -DNOVIDEOREC=$(usex ffmpeg OFF ON) ) CMAKE_BUILD_TYPE=$(usex debug Debug ${CMAKE_BUILD_TYPE}) cmake_src_configure } src_compile() { cmake_src_compile } src_install() { cmake_src_install doman man/${PN}.6 rm -f "${ED}"/usr/bin/hwengine_future_install_target.cmake || die } pkg_postinst() { xdg_desktop_database_update } pkg_postrm() { xdg_desktop_database_update }