diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-27 03:04:42 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-27 03:04:42 -0500 |
| commit | c6e6588bafac78d585ece24e4dabdf99f3af211d (patch) | |
| tree | e68bccff68681d3201cf21c1a5682ad5abbfd4f3 /games-strategy | |
| parent | 8a7e9bb6193b9b54ffb149bdf92c9689a3798e00 (diff) | |
| download | baldeagleos-repo-c6e6588bafac78d585ece24e4dabdf99f3af211d.tar.gz baldeagleos-repo-c6e6588bafac78d585ece24e4dabdf99f3af211d.tar.xz baldeagleos-repo-c6e6588bafac78d585ece24e4dabdf99f3af211d.zip | |
Adding metadata
Diffstat (limited to 'games-strategy')
| -rw-r--r-- | games-strategy/vcmi/Manifest | 3 | ||||
| -rw-r--r-- | games-strategy/vcmi/metadata.xml | 22 | ||||
| -rw-r--r-- | games-strategy/vcmi/vcmi-1.7.4.ebuild | 157 |
3 files changed, 182 insertions, 0 deletions
diff --git a/games-strategy/vcmi/Manifest b/games-strategy/vcmi/Manifest new file mode 100644 index 000000000000..0fb4fb296f67 --- /dev/null +++ b/games-strategy/vcmi/Manifest @@ -0,0 +1,3 @@ +DIST vcmi-1.7.4.tar.gz 13523198 BLAKE2B 2e4a30c14dc2d08f6c0626adc54eb15e33d620a7cbabc8f91e22fb52e5dce22d71ddd49f9a401affca29b1a74d2edff60d50e4aa4dde58735880d8bab6a432d4 SHA512 b770e7512ce30bb6b309de37c6762946b39aac475d3aeab21af7709975e2b3063055694ad85b35d33f5713ba883a8d094dbc7b15a2fc1a76b206ca854e433d4c +DIST vcmi-discord-presence-52501e140db1c18d9da37dff9a9529bc4a9943c2.tar.gz 21765 BLAKE2B f6cc0273c376f62f75f93cab83df35d6e1e9c824cf7e983f0ceb6b5f8a4f6135f4080cc5263b0a108675ca4892a1244a1d5982c63aeb8412a70cc0a49e3c93ee SHA512 c23a179be454de191d3c7eda2a3db886a7e63a8b346843e56d3fc446248068a953666d775e1cd488eaf7aabde8b6071d2f4fb0e54185b6d1462b03a9a570cf38 +DIST vcmi-innoextract-96e9566a35fb51ebf13ffbdadfd49a93c1ae5c1a.tar.gz 216127 BLAKE2B c2f49d0f43bc998b7ecde21928406a807c9351fe3a5b0572eff7127c16fb2f101cad47fb1c4ca26f4fce1ee9cd110e5acac2930dd4bc89101bd7a27e7454a242 SHA512 e5359a7755e80be73949ed28b0d37a718aa283fb349add1526be914ea4fae62208e4c0490a58af0f3b135c7ee4df6235f9430827ab3a65d4d1cd129954ed4af9 diff --git a/games-strategy/vcmi/metadata.xml b/games-strategy/vcmi/metadata.xml new file mode 100644 index 000000000000..775f91d26943 --- /dev/null +++ b/games-strategy/vcmi/metadata.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games</name> + </maintainer> + <longdescription> + VCMI is an open-source engine for Heroes III, offering new and extended possibilities. + To use VCMI, you need to own the original data files. + </longdescription> + <use> + <flag name="discord">Enable Discord integration</flag> + <flag name="editor">Enable editor support</flag> + <flag name="erm">Enable compilation of ERM scripting module</flag> + <flag name="launcher">Enable launcher support</flag> + <flag name="lobby">Enable lobby server</flag> + <flag name="translations">Install translations</flag> + <flag name="video">Enable video support using ffmpeg</flag> + </use> + <origin>baldeagleos-repo</origin> +</pkgmetadata> diff --git a/games-strategy/vcmi/vcmi-1.7.4.ebuild b/games-strategy/vcmi/vcmi-1.7.4.ebuild new file mode 100644 index 000000000000..6f5ae06275c4 --- /dev/null +++ b/games-strategy/vcmi/vcmi-1.7.4.ebuild @@ -0,0 +1,157 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-{1,3,4} luajit ) + +inherit cmake lua-single xdg-utils + +DESCRIPTION="Open-source engine for Heroes of Might and Magic III" +HOMEPAGE="https://vcmi.eu/" + +INNO_SHA="96e9566a35fb51ebf13ffbdadfd49a93c1ae5c1a" +DISCORD_PRESENCE_SHA="52501e140db1c18d9da37dff9a9529bc4a9943c2" +SRC_URI=" + https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz + launcher? ( + https://github.com/vcmi/innoextract/archive/${INNO_SHA}.tar.gz -> ${PN}-innoextract-${INNO_SHA}.tar.gz + ) + discord? ( + https://github.com/EclipseMenu/discord-presence/archive/${DISCORD_PRESENCE_SHA}.tar.gz + -> ${PN}-discord-presence-${DISCORD_PRESENCE_SHA}.tar.gz + ) +" +# N.B.: see here for correct commit of innoextract: +# https://github.com/vcmi/vcmi/tree/develop/launcher/lib + +LICENSE="GPL-2+ discord? ( MIT ) launcher? ( ZLIB )" +SLOT="0" +KEYWORDS="~amd64" +IUSE="+discord +editor erm +launcher lobby lua +translations +video" + +REQUIRED_USE=" + erm? ( lua ) + lua? ( ${LUA_REQUIRED_USE} ) +" + +RDEPEND=" + dev-cpp/tbb:= + dev-libs/boost:=[nls] + dev-libs/fuzzylite:= + media-libs/libsdl2:=[video] + media-libs/libsquish:= + media-libs/sdl2-image:= + media-libs/sdl2-mixer:= + media-libs/sdl2-ttf:= + virtual/minizip:= + virtual/zlib:= + discord? ( dev-libs/libfmt:= ) + editor? ( + dev-qt/qtbase:6[gui,network,widgets,xml] + dev-qt/qtsvg:6 + ) + launcher? ( + app-arch/xz-utils + dev-libs/boost:=[bzip2,zlib] + dev-qt/qtbase:6[gui,network,widgets] + ) + lobby? ( dev-db/sqlite:3 ) + lua? ( ${LUA_DEPS} ) + video? ( media-video/ffmpeg:= ) +" + # app-arch/innoextract + # XXX: vcmi wants it's own patched version to build extractor as library +DEPEND=" + ${RDEPEND} + discord? ( dev-cpp/glaze ) +" +BDEPEND=" + virtual/pkgconfig + launcher? ( translations? ( dev-qt/qttools:6[linguist] ) ) + editor? ( translations? ( dev-qt/qttools:6[linguist] ) ) +" + +src_unpack() { + default + + if use launcher; then + rmdir "${S}/launcher/lib/innoextract" || die + mv "${WORKDIR}/innoextract-${INNO_SHA}" "${S}/launcher/lib/innoextract" || die + fi + + if use discord; then + rmdir "${S}/client/lib/discord-presence" || die + mv "${WORKDIR}/discord-presence-${DISCORD_PRESENCE_SHA}" "${S}/client/lib/discord-presence" || die + fi +} + +src_prepare() { + default + + # Avoid GCC ICE with -Wmismatched-tags + sed -i -e '/-Wmismatched-tags/d' CMakeLists.txt || die + # Use FindBoost + sed -i -e 's/cmake_policy(SET CMP0167 NEW)/cmake_policy(SET CMP0167 OLD)/' CMakeLists.txt || die + # Fix launcher linking + sed -i -e '/target_link_libraries(vcmilauncher innoextract)/i\find_package(LibLZMA REQUIRED)' \ + -e 's/target_link_libraries(vcmilauncher innoextract)/target_link_libraries(vcmilauncher innoextract Boost::iostreams LibLZMA::LibLZMA)/' \ + launcher/CMakeLists.txt || die + + if use discord; then + # Drop the CPM bootstrap. + # It downloads deps fmt and glaze which are provided by deps. + sed -i '/include(cmake\/CPM.cmake)/d' \ + client/lib/discord-presence/CMakeLists.txt || die + fi + + cmake_prepare +} + +src_configure() { + local mycmakeargs=( + -DENABLE_DISCORD=$(usex discord) + -DENABLE_EDITOR=$(usex editor) + -DENABLE_ERM=$(usex erm) + -DENABLE_LAUNCHER=$(usex launcher) + -DENABLE_LOBBY=$(usex lobby) + -DENABLE_LUA=$(usex lua) + -DENABLE_TRANSLATIONS=$(usex translations) + -DENABLE_VIDEO=$(usex video) + + -DENABLE_BATTLE_AI=ON + -DENABLE_GITVERSION=OFF + -DENABLE_MMAI=OFF + -DENABLE_MONOLITHIC_INSTALL=OFF + -DENABLE_NULLKILLER_AI=ON + -DENABLE_NULLKILLER2_AI=ON + -DENABLE_STUPID_AI=ON + -DFORCE_BUNDLED_FL=OFF + -DBoost_NO_BOOST_CMAKE=ON + ) + + cmake_src_configure +} + +pkg_postinst() { + elog 'For the game to work properly, please copy "Data", "Maps" and "Mp3"' + elog "from Heroes III to \$HOME/.local/share/${PN}." + elog "or use 'vcmibuilder' utility on your:" + elog " a) One or two CD's or CD images" + elog " b) gog.com installer" + elog " c) Directory with installed game" + elog "" + elog "For more information, please visit:" + elog "https://github.com/vcmi/vcmi/blob/${PV}/docs/players/Installation_Linux.md" + elog "" + elog "Also, you may want to install VCMI Extras and Wake of Gods" + elog "mods from the launcher after you start the game." + + xdg_desktop_database_update + xdg_icon_cache_update +} + +pkg_postrm() { + xdg_desktop_database_update + xdg_icon_cache_update +} |
