Install this version:
emerge -a =games-engines/vcmi-1.7.3
| Version | EAPI | Keywords | Slot |
|---|---|---|---|
| 1.7.3 | 8 | amd64 | 0 |
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
LUA_COMPAT=(luajit)
inherit cmake lua-single
DESCRIPTION="open-source engine for Heroes III"
HOMEPAGE="http://vcmi.eu"
INSTALL_PATH="/opt/vcmi"
# Get package version, get default values, if not underscore keep them
PACKAGE_VERSION=${PV}
PACKAGE_NAME=${P}
if [[ ${PACKAGE_VERSION} == *_p* ]]; then
PACKAGE_VERSION="${PV%%_*}"
PACKAGE_NAME="${PN}-${PACKAGE_VERSION}"
fi
GOOGLETEST_VERSION="1.15.2"
INNOEXTRACT_COMMIT="9977089412ebafe9f79936aa65a2edf16a84ae3e"
SRC_URI="
https://github.com/vcmi/vcmi/archive/refs/tags/${PACKAGE_VERSION}.tar.gz -> ${P}.tar.gz
https://github.com/google/googletest/archive/refs/tags/v${GOOGLETEST_VERSION}.tar.gz -> vcmi-googletest.tar.gz
https://github.com/vcmi/innoextract/archive/${INNOEXTRACT_COMMIT}.tar.gz -> vcmi-innoextract.tar.gz
"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64"
# TODO: other arches
IUSE="+editor debug erm +launcher lua +nullkiller-ai +translations"
REQUIRED_USE="
erm? ( lua )
lua? ( ${LUA_REQUIRED_USE} )
"
RDEPEND="
nullkiller-ai? ( dev-cpp/tbb )
dev-lang/luajit
>=dev-libs/boost-1.70:=
launcher? (
dev-qt/qtcore:=
dev-qt/qtgui:=
dev-qt/qtnetwork:=
dev-qt/qtwidgets:=
translations? ( dev-qt/linguist-tools )
)
editor? (
dev-qt/qtcore:=
dev-qt/qtgui:=
dev-qt/qtnetwork:=
dev-qt/qtwidgets
translations? ( dev-qt/linguist-tools )
)
sys-libs/zlib:=[minizip]
media-video/ffmpeg:=
media-libs/libsdl2:=[X]
media-libs/sdl2-image:=
media-libs/sdl2-mixer:=
media-libs/sdl2-ttf:=
dev-libs/fuzzylite
media-libs/libsquish
dev-cpp/glaze
sci-libs/onnxruntime
"
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}/${P}-cmake-4.1.patch"
)
src_unpack() {
# Unpack ALL Packages
unpack ${A}
# Move if not equal
if [[ "${P}" != "${PACKAGE_NAME}" ]]; then
mv "${WORKDIR}/${PACKAGE_NAME}" "${WORKDIR}/${P}"
fi
# Delete target directories
rmdir "${WORKDIR}/${P}/launcher/lib/innoextract" || die "innoextract dir not deleted"
rmdir "${WORKDIR}/${P}/test/googletest" || die "Googletest dir not deleted"
# Make symlinks, mostly mv is used, but I will try to go using ln -s, dosym doesnt work here
ln -s "${WORKDIR}/googletest-${GOOGLETEST_VERSION}" "${WORKDIR}/${P}/test/googletest"\
|| die "Googletest symlink not created"
ln -s "${WORKDIR}/innoextract-${INNOEXTRACT_COMMIT}" "${WORKDIR}/${P}/launcher/lib/innoextract"\
|| die "innoextract symlink not created"
}
src_configure() {
patch -p1 launcher/lib/innoextract/CMakeLists.txt < "${FILESDIR}/innoextract-cmake-4.1.patch"
CMAKE_BUILD_TYPE="None"
local mycmakeargs=(
-DENABLE_ERM=$(usex erm)
-DENABLE_LUA=$(usex lua)
-DENABLE_LAUNCHER=$(usex launcher)
-DENABLE_EDITOR=$(usex editor)
-DENABLE_TRANSLATIONS=$(usex translations)
-DENABLE_PCH=$(usex !debug)
-DENABLE_NULLKILLER_AI=$(usex nullkiller-ai)
-DENABLE_MONOLITHIC_INSTALL=OFF
-DFORCE_BUNDLED_FL=OFF
-DENABLE_GITVERSION=OFF
-DENABLE_DISCORD=OFF
)
append-cppflags -DNDEBUG
cmake_src_configure
}
pkg_postinst() {
xdg_icon_cache_update
}
pkg_postrm() {
xdg_icon_cache_update
}
Manage flags for this package:
euse -i <flag> -p games-engines/vcmi |
euse -E <flag> -p games-engines/vcmi |
euse -D <flag> -p games-engines/vcmi
nullkiller-ai? ( dev-cpp/tbb ) dev-lang/luajit >=dev-libs/boost-1.70:= launcher? ( dev-qt/qtcore:= dev-qt/qtgui:= dev-qt/qtnetwork:= dev-qt/qtwidgets:= translations? ( dev-qt/linguist-tools ) ) editor? ( dev-qt/qtcore:= dev-qt/qtgui:= dev-qt/qtnetwork:= dev-qt/qtwidgets translations? ( dev-qt/linguist-tools ) ) sys-libs/zlib:=[minizip] media-video/ffmpeg:= media-libs/libsdl2:=[X] media-libs/sdl2-image:= media-libs/sdl2-mixer:= media-libs/sdl2-ttf:= dev-libs/fuzzylite media-libs/libsquish dev-cpp/glaze sci-libs/onnxruntime
nullkiller-ai? ( dev-cpp/tbb ) dev-lang/luajit >=dev-libs/boost-1.70:= launcher? ( dev-qt/qtcore:= dev-qt/qtgui:= dev-qt/qtnetwork:= dev-qt/qtwidgets:= translations? ( dev-qt/linguist-tools ) ) editor? ( dev-qt/qtcore:= dev-qt/qtgui:= dev-qt/qtnetwork:= dev-qt/qtwidgets translations? ( dev-qt/linguist-tools ) ) sys-libs/zlib:=[minizip] media-video/ffmpeg:= media-libs/libsdl2:=[X] media-libs/sdl2-image:= media-libs/sdl2-mixer:= media-libs/sdl2-ttf:= dev-libs/fuzzylite media-libs/libsquish dev-cpp/glaze sci-libs/onnxruntime
| Type | File | Size | Source URLs |
|---|---|---|---|
| DIST | vcmi-1.7.3.tar.gz | 13353623 bytes | https://github.com/vcmi/vcmi/archive/refs/tags/1.7.3.tar.gz |
| DIST | vcmi-googletest.tar.gz | 872667 bytes | https://github.com/google/googletest/archive/refs/tags/v1.15.2.tar.gz |
| DIST | vcmi-innoextract.tar.gz | 205354 bytes | https://github.com/vcmi/innoextract/archive/9977089412ebafe9f79936aa65a2edf16a84ae3e.tar.gz |