From d162ba1860a88062f4cd61f8b52fc303ba0b2991 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 7 Aug 2021 00:16:33 +0100 Subject: gentoo resync : 07.08.2021 --- games-roguelike/Manifest.gz | Bin 3056 -> 3053 bytes games-roguelike/stone-soup/Manifest | 5 + games-roguelike/stone-soup/files/make.patch | 94 +++++++++++ .../stone-soup/files/rltiles-make.patch | 58 +++++++ .../stone-soup/stone-soup-0.25.1-r102.ebuild | 182 ++++++++++++++++++++ .../stone-soup/stone-soup-0.26.1-r1.ebuild | 186 +++++++++++++++++++++ .../stone-soup/stone-soup-0.27.0-r1.ebuild | 182 ++++++++++++++++++++ 7 files changed, 707 insertions(+) create mode 100644 games-roguelike/stone-soup/files/make.patch create mode 100644 games-roguelike/stone-soup/files/rltiles-make.patch create mode 100644 games-roguelike/stone-soup/stone-soup-0.25.1-r102.ebuild create mode 100644 games-roguelike/stone-soup/stone-soup-0.26.1-r1.ebuild create mode 100644 games-roguelike/stone-soup/stone-soup-0.27.0-r1.ebuild (limited to 'games-roguelike') diff --git a/games-roguelike/Manifest.gz b/games-roguelike/Manifest.gz index 015e64ed5dd8..2cf560ab7d1e 100644 Binary files a/games-roguelike/Manifest.gz and b/games-roguelike/Manifest.gz differ diff --git a/games-roguelike/stone-soup/Manifest b/games-roguelike/stone-soup/Manifest index 44f928e34d04..a5a5844088f2 100644 --- a/games-roguelike/stone-soup/Manifest +++ b/games-roguelike/stone-soup/Manifest @@ -1,6 +1,8 @@ AUX fixed-font-path.patch 802 BLAKE2B 1c831b28b65b764bdab9e8522cbf80d8449907611c77cc820c5ffe0f18b37fbf01c083ab1554ade3933182546b992fc7e5bf3e8109191723b428009a05d24449 SHA512 3db5ca3c06a27ad26a4ba2961d429153983fa51412e301da2341da87eb54422d590b8e676b4e8a06c8cbf71230e3149e7fab217fc14558d1ff20a94094ce1e82 AUX gitless-1.patch 639 BLAKE2B 646abd41a65b5744618161bd2a66f3fb43c06e40bd64ae78fdadf01bf5669b07f470be5eb3afc4931889d91f2f7a782036d1f10e1812bd7cfe14fe88c3ef40bf SHA512 b46fc9531c06a1f51b23c35be5f9f751f96d72a66f40a3aef3ffa89e0c9af56bc08f4aa6cad237f208aa789ee8511fec7304135fbe1e271345599f9107c52212 +AUX make.patch 2728 BLAKE2B 94930ab98012754cc2760dbffc905173bafc0303d492e3f1180f7d4fcff1bd12aef3ea3f74c2ded37cb36c66cecd09003dc630ba8090605bffe52f7ae087c165 SHA512 7144caa5e4a4612c32efe5ccbee5763fa271f1d887218a42740a2b507babd67444f834e75cee645c03a0499c0135df118ede4a52e222ea05fac8b31846696bc4 AUX rltiles-ldflags-libs.patch 1373 BLAKE2B 5a5a48bdb6081bb81bd66993bed3a6cfed4951ca059b2bf7069ab512e30c855eb65abc9d552da4e3c15c5156924bf14adc852dbb46248aa9840b8f63d1d33652 SHA512 955b6784f7a2ffbccefff6648de2072391d535f998516f52a7b5681e41aeedb34c47ac6cb6d649519448c23ce7007f08f0b0c36ced976dac0f111f2dae204287 +AUX rltiles-make.patch 1704 BLAKE2B b740e8b305e9071a9b024589e4ef6cb4fd088d4424e35ab164f920ec0cf06b94a46b19ac7d223d5eac3ca92bb2565efea00731a556e429056041cddb5658988a SHA512 378bea1e53477c881b93f824e45231b13c34318e34cf1413325a642d2d4f7f16c654b00584bec552238e1e2ec6e8046b67ea7cbd5aa4cb6ecf9fb6a70d600dd9 DIST stone-soup-0.25.png 1351 BLAKE2B cc31abd59701aa6f0fb0bdcd90630ceebf7b3cb8b60f0e2817f8800c5bc4b3a5b9fef63c90a97b6248f306e7e3da0df3863a2195b8771863344d2443e7956d59 SHA512 4695204c8b936f7aac1ba15b02a6115a955fb2c56aa9a0b968ff007bc9a1a59b608110d60cce5625a9b92cd2c869bbea7e15433a53c1a338622809477a5846bc DIST stone-soup-0.25.svg 68546 BLAKE2B 7c66286c9e8a3516e8483b3edb628a59fce29d8d248c3fd5b06e308782bbc651814f21ec958b30c36074a2576ced4bb10f291b5236da6f6e865ce1d7cefdf96d SHA512 dca555271faf704eb8ecdf5ee8a763df42cdeba94e9c163608c438cfc73c6fbf53416547050cad57f477ade191842e701785b65b7a9f18e27ceab05df8f2f75f DIST stone-soup-0.26.png 1351 BLAKE2B cc31abd59701aa6f0fb0bdcd90630ceebf7b3cb8b60f0e2817f8800c5bc4b3a5b9fef63c90a97b6248f306e7e3da0df3863a2195b8771863344d2443e7956d59 SHA512 4695204c8b936f7aac1ba15b02a6115a955fb2c56aa9a0b968ff007bc9a1a59b608110d60cce5625a9b92cd2c869bbea7e15433a53c1a338622809477a5846bc @@ -11,6 +13,9 @@ DIST stone_soup-0.25.1.zip 95477710 BLAKE2B 0b38a6c7cb7c4c87acccb861b5aae665cd2b DIST stone_soup-0.26.1.zip 95585384 BLAKE2B 6d1cb99fc44e918cad4144608f259e67a26df444b93c8501590ff209e8856fd08c514d4c8c78cb0848d8e6127cdf4360b47d21ced5d919da982421934b46102d SHA512 637f1a07e9f35e18eda10c17dc28449364c56aee8456497e30552acb55608a9433cff8b64af877049c21cb2a42eb2fcad28f58a7e57a1d835eb8c252e580205d DIST stone_soup-0.27.0.zip 96917949 BLAKE2B 1da7d54e4f3ec98514630eeb8c69c7dca02f96cdfe16974856406da0a057011f17a388669ec29844f3657cd4c7c4ef977f522578cbe0dec02ce497063c25ac83 SHA512 e3f79ce8837056c0a34847857b058e055ed23cc0987ab1d862b60739b8b7ec1e955746fa49c339f449603ce9d0707e64e564592b0798310c7c6bdc1a9edc3e70 EBUILD stone-soup-0.25.1-r101.ebuild 4906 BLAKE2B 27a656e08f7e4539c71e1c6bced442bd23a54efca2bfd287a369ea8b8cdb0b0b0275a13912ea1316aa62ad92551890cbcfe0e9e5f7acf58d0ca7ded3b69bec78 SHA512 20b3ab2f78bba3b5b344dac9bea7ba8c4e0cfa47a0cc6cf35a7e0afe49ebbbfd5cc18d568e160ac7a9bd3963961c170d6ee79dc342dd33735cc775121eaaa026 +EBUILD stone-soup-0.25.1-r102.ebuild 4571 BLAKE2B 60b2a36b69920ee4a8f010a88e7678704c46868e2ffdebe5298c04cc2ac831bf9f679e9b0804decbdfdd155eb4e2d7ec1e3d352431d5f5e1d2ce2a50dc1297f2 SHA512 9cc5370f27c7553153d90ded879f314a444cf84140fbefbfcc64a68675374f52141268c8b9bfa92ad26d5fcf52c9d9bf043593a4ad0ac53bd0ae89693a91f749 +EBUILD stone-soup-0.26.1-r1.ebuild 4784 BLAKE2B 221e15ac63a17f1155d3367b82192a546d3af70e0394e244b871d98a78337cbbf5196c1faa36ba0ccdc5068672df3d13ad7b467f4c629643d07fffb64335b98e SHA512 aa8a1b499c780fa6ab98871c6ed80bc10c884c505d7d06de42e1eeeba3a5b417e5e5dad9351cc803923582a064b8be50e44696b2c0d7ade7522b15cd3256c35e EBUILD stone-soup-0.26.1.ebuild 4906 BLAKE2B 691892c10fd8fce1a232ebc9f25a1ab98faf737a634c9585dfbf50d62250ecf01eaaf82f4a479a2614fbbad6fcf2dffd24523c004289587791d4a1c021d3ff76 SHA512 a23c1ae7253c7bf585c9dbb64213a18b917c796c45971e84ca89187c972182cb0d6639cfb81f206d47b45feb52593ba07c99303aa06e5176298b470aac6c73a5 +EBUILD stone-soup-0.27.0-r1.ebuild 4571 BLAKE2B 9d1608138b00dec79b9b9afbaa732388d0e14cbcb3bbd74606beb216bee9c87e7753a6ec016c48f90603641d9679d3560e9e53c897dfee1c4774c06e6f61771b SHA512 e9bd1892bf735f273d0ed864d174c5c76420127555154359f08adb5b9a0ad9754947e8e537596c1ad0d03b1f81f2940a08b7a5a630904b47aaa62f1cdf05d48f EBUILD stone-soup-0.27.0.ebuild 4908 BLAKE2B 405a3587ccd039bdcc652d630ae28de860ee3f26587c054dac91461bb0625d7198b6803af7bca1c14f4608b4213c26993773bf9b7416212bdb0094970b1f32fe SHA512 fa1dbc5258646c806f08df0ed8b4085127bb36aab54472b5b5f0e2df7de2d9fa28f5dcb25b20146e97a678dcdaac7aaf7933d88b91d6aa5bece661414f4f5f9d MISC metadata.xml 1619 BLAKE2B 2977dbcb30328109cf2f2c75535175ce089c4ede9d9ce7e550ae715bb8624abffdcf2ba53cb6dc545112dbf1da10b0237a8bffa7719956763955ff81b31554f7 SHA512 711ef0ab70235f7ab3a447bc49508b3e8f53f2dd0e108b4874f6e5a916b3c373decece2d6e4a134971941261315819c31799fd318d0c7be103356ac8e5218137 diff --git a/games-roguelike/stone-soup/files/make.patch b/games-roguelike/stone-soup/files/make.patch new file mode 100644 index 000000000000..b43c9c41e8c8 --- /dev/null +++ b/games-roguelike/stone-soup/files/make.patch @@ -0,0 +1,94 @@ +--- a/Makefile 2021-08-02 13:54:26.603900984 -0500 ++++ b/Makefile 2021-08-02 13:57:26.018910565 -0500 +@@ -186,7 +186,7 @@ + uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not') + uname_M := $(shell sh -c 'uname -m 2>/dev/null || echo not') + +-HOST := $(shell sh -c 'cc -dumpmachine || echo unknown') ++HOST := + ARCH := $(HOST) + + ifdef CROSSHOST +@@ -457,15 +457,7 @@ + GCC_VER_SUFFIX:=-$(GCC_VER) + endif + +-# Attempt to use a full compiler name, to make +-# distcc builds work nicely. +-LMACH := $(shell gcc -dumpmachine)- +-ifeq ($(LMACH),-) + LMACH := +-endif +-ifeq ($(shell which $(LMACH)gcc$(GCC_VER_SUFFIX) > /dev/null 2> /dev/null && echo "Yes"),) +-LMACH := +-endif + + ifneq ($(FORCE_CC),) + GCC := $(FORCE_CC) +@@ -765,7 +757,6 @@ + FULLDEBUG=YesPlease + DEBUG=YesPlease + NO_OPTIMIZE=YesPlease +- COVERAGE=YesPlease + endif + + # Debug-Lite +@@ -773,7 +764,6 @@ + ifneq (,$(filter debug-lite,$(MAKECMDGOALS))) + DEBUG=YesPlease + NO_OPTIMIZE=YesPlease +- COVERAGE=YesPlease + endif + + # Profile +@@ -781,12 +771,10 @@ + ifneq (,$(filter profile,$(MAKECMDGOALS))) + FULLDEBUG=YesPlease + DEBUG=YesPlease +- COVERAGE=YesPlease + endif + + # Unit tests + ifneq (,$(filter catch2-tests,$(MAKECMDGOALS))) +- COVERAGE=YesPlease + endif + + ifdef HURRY +@@ -938,7 +926,7 @@ + INSTALL_FONTS += "$(PROPORTIONAL_FONT)" + endif + else +- SYS_PROPORTIONAL_FONT = $(shell util/find_font "$(OUR_PROPORTIONAL_FONT)") ++ SYS_PROPORTIONAL_FONT = /usr/share/fonts/dejavu/DejaVuSans.ttf + ifneq (,$(SYS_PROPORTIONAL_FONT)) + ifeq (,$(COPY_FONTS)) + DEFINES += -DPROPORTIONAL_FONT=\"$(SYS_PROPORTIONAL_FONT)\" +@@ -958,7 +946,7 @@ + INSTALL_FONTS += "$(MONOSPACED_FONT)" + endif + else +- SYS_MONOSPACED_FONT = $(shell util/find_font "$(OUR_MONOSPACED_FONT)") ++ SYS_MONOSPACED_FONT = /usr/share/fonts/dejavu/DejaVuSansMono.ttf + ifneq (,$(SYS_MONOSPACED_FONT)) + ifeq (,$(COPY_FONTS)) + DEFINES += -DMONOSPACED_FONT=\"$(SYS_MONOSPACED_FONT)\" +@@ -1187,9 +1175,8 @@ + + LANGUAGES = $(filter-out en, $(notdir $(wildcard dat/descript/??))) + SRC_PKG_BASE := stone_soup +-SRC_VERSION := $(shell git describe --tags $(MERGE_BASE) 2>/dev/null || cat util/release_ver) ++SRC_VERSION := $(shell cat util/release_ver) + MAJOR_VERSION = $(shell echo "$(SRC_VERSION)"|$(SED) -r 's/-.*//;s/^([^.]+\.[^.]+).*/\1/') +-RECENT_TAG := $(shell git describe --abbrev=0 --tags $(MERGE_BASE)) + WINARCH := $(shell $(GXX) -dumpmachine | grep -q x64_64 && echo win64 || echo win32) + + export SRC_VERSION +@@ -1523,7 +1510,7 @@ + endif + endif + +-install: all install-data ++install: install-data + [ -d $(prefix_fp)/$(bin_prefix) ] || mkdir -p $(prefix_fp)/$(bin_prefix) + $(COPY) $(GAME) $(prefix_fp)/$(bin_prefix)/ + $(STRIP) $(prefix_fp)/$(bin_prefix)/$(GAME) diff --git a/games-roguelike/stone-soup/files/rltiles-make.patch b/games-roguelike/stone-soup/files/rltiles-make.patch new file mode 100644 index 000000000000..9a43932c5989 --- /dev/null +++ b/games-roguelike/stone-soup/files/rltiles-make.patch @@ -0,0 +1,58 @@ +--- a/rltiles/Makefile 2021-08-02 14:03:40.106930544 -0500 ++++ b/rltiles/Makefile 2021-08-02 14:03:51.145931133 -0500 +@@ -1,7 +1,7 @@ + uname_S := $(shell uname -s) + + ifneq (,$(findstring MINGW,$(uname_S))) +-LDFLAGS += -lmingw32 ++LIBS += -lmingw32 + endif + + # Note: since generation of tiles is done on the host, we don't care about +@@ -29,7 +29,7 @@ + endif + + CFLAGS += $(PNG_INCLUDE) +- LDFLAGS += $(PNG_LIB) ++ LIBS += $(PNG_LIB) + + CFLAGS += -DUSE_TILE + endif +@@ -39,26 +39,15 @@ + endif + + ifneq (,$(findstring MINGW,$(uname_S))) +-LDFLAGS += -lgdi32 -lwinmm -lole32 -loleaut32 -limm32 -lshell32 -lversion -luuid ++LIBS += -lgdi32 -lwinmm -lole32 -loleaut32 -limm32 -lshell32 -lversion -luuid + endif + ifeq ($(uname_S),Darwin) +-LDFLAGS += -framework AppKit -framework AudioUnit -framework CoreAudio -framework ForceFeedback -framework Carbon -framework IOKit -framework OpenGL ++LIBS += -framework AppKit -framework AudioUnit -framework CoreAudio -framework ForceFeedback -framework Carbon -framework IOKit -framework OpenGL + endif + ifeq ($(uname_S),Linux) +-LDFLAGS += -ldl -lpthread ++LIBS += -ldl -lpthread + endif + +-# Attempt to use a full compiler name, to make +-# distcc builds work nicely. +-LMACH := $(shell gcc -dumpmachine)- +-ifeq ($(LMACH),-) +-LMACH := +-endif +-ifeq ($(shell which $(LMACH)gcc > /dev/null 2> /dev/null && echo "Yes"),) +-LMACH := +-endif +-HOSTCXX ?= $(LMACH)g++ +- + DELETE = rm -f + + TOOLDIR := tool +@@ -134,6 +123,6 @@ + $(QUIET_HOSTCXX)$(HOSTCXX) $(CFLAGS) -MMD -c $< -o $@ + + $(TILEGEN): $(OBJECTS) +- $(QUIET_HOSTLINK)$(HOSTCXX) $(CFLAGS) $(OBJECTS) -o $@ $(LDFLAGS) ++ $(QUIET_HOSTLINK)$(HOSTCXX) $(CFLAGS) $(OBJECTS) -o $@ $(LDFLAGS) $(LIBS) + + .PHONY: all clean distclean diff --git a/games-roguelike/stone-soup/stone-soup-0.25.1-r102.ebuild b/games-roguelike/stone-soup/stone-soup-0.25.1-r102.ebuild new file mode 100644 index 000000000000..6b3620cceb23 --- /dev/null +++ b/games-roguelike/stone-soup/stone-soup-0.25.1-r102.ebuild @@ -0,0 +1,182 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-{1..3} ) +PYTHON_COMPAT=( python3_{7,8,9} ) +VIRTUALX_REQUIRED="manual" +inherit desktop python-any-r1 lua-single xdg-utils toolchain-funcs + +MY_P="stone_soup-${PV}" +DESCRIPTION="Role-playing roguelike game of exploration and treasure-hunting in dungeons" +HOMEPAGE="https://crawl.develz.org" +SLOT="0.25" +SRC_URI=" + https://github.com/crawl/crawl/releases/download/${PV}/${PN/-/_}-${PV}.zip + https://dev.gentoo.org/~stasibear/distfiles/${PN}.png -> ${PN}-${SLOT}.png + https://dev.gentoo.org/~stasibear/distfiles/${PN}.svg -> ${PN}-${SLOT}.svg +" + +# 3-clause BSD: mt19937ar.cc, MSVC/stdint.h +# 2-clause BSD: all contributions by Steve Noonan and Jesse Luehrs +# Public Domain|CC0: most of tiles +# MIT: json.cc/json.h, some .js files in webserver/static/scripts/contrib/ +LICENSE="GPL-2 BSD BSD-2 public-domain CC0-1.0 MIT" +KEYWORDS="~amd64 ~x86" +IUSE="debug ncurses sound +tiles" + +RDEPEND=" + ${LUA_DEPS} + dev-db/sqlite:3 + sys-libs/zlib + !ncurses? ( !tiles? ( sys-libs/ncurses:0 ) ) + ncurses? ( sys-libs/ncurses:0 ) + tiles? ( + media-fonts/dejavu + media-libs/freetype:2 + media-libs/libpng:0 + sound? ( + media-libs/libsdl2[X,opengl,sound,video] + media-libs/sdl2-mixer + ) + !sound? ( media-libs/libsdl2[X,opengl,video] ) + media-libs/sdl2-image[png] + virtual/glu + virtual/opengl + )" +DEPEND="${RDEPEND} + app-arch/unzip + dev-lang/perl + ${PYTHON_DEPS} + $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') + sys-devel/flex + tiles? ( + media-gfx/pngcrush + sys-libs/ncurses:0 + ) + virtual/pkgconfig + virtual/yacc + " + +S=${WORKDIR}/${MY_P}/source +PATCHES=( + "${FILESDIR}"/make.patch + "${FILESDIR}"/rltiles-make.patch +) + +python_check_deps() { + has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" +} + +pkg_setup() { + + python-any-r1_pkg_setup + + if use !ncurses && use !tiles ; then + ewarn "Neither ncurses nor tiles frontend" + ewarn "selected, choosing ncurses only." + ewarn "Note that you can also enable both." + fi + + if use sound && use !tiles ; then + ewarn "Sound support is only available with tiles." + fi +} + +src_prepare() { + default + python_fix_shebang "${S}/util/species-gen.py" + + sed -i -e "s/GAME = crawl$/GAME = crawl-${SLOT}/" "${S}/Makefile" \ + || die "Couldn't append slot to executable name" +} + +src_compile() { + + # Insurance that we're not using bundled lib sources + rm -rf contrib || die "Couldn't delete contrib directory" + + myemakeargs=( + $(usex debug "FULLDEBUG=y DEBUG=y" "") + BUILD_LUA= + AR="$(tc-getAR)" + CFOPTIMIZE='' + CFOTHERS="${CXXFLAGS}" + CONTRIBS= + DATADIR="/usr/share/${PN}-${SLOT}" + FORCE_CC="$(tc-getCC)" + FORCE_CXX="$(tc-getCXX)" + LDFLAGS="${LDFLAGS}" + MAKEOPTS="${MAKEOPTS}" + PKGCONFIG="$(tc-getPKG_CONFIG)" + RANLIB="$(tc-getRANLIB)" + SAVEDIR="~/.crawl-${SLOT}" + SOUND=$(usex sound "y" "") + STRIP=touch + USE_LUAJIT= + V=1 + prefix="/usr" + ) + + if use ncurses || (use !ncurses && use !tiles) ; then + emake "${myemakeargs[@]}" + # move it in case we build both variants + use tiles && { mv "crawl-${SLOT}" "${WORKDIR}"/crawl-ncurses-${SLOT} || die ;} + fi + + if use tiles ; then + emake "${myemakeargs[@]}" clean + emake "${myemakeargs[@]}" "TILES=y" + fi +} + +src_test() { + emake "${myemakeargs[@]}" \ + $(usex tiles "TILES=y" "") \ + catch2-tests +} + +src_install() { + emake "${myemakeargs[@]}" \ + $(usex tiles "TILES=y" "") \ + DESTDIR="${D}" \ + prefix_fp="" \ + bin_prefix="${D}/usr/bin" \ + install + + [[ -e "${WORKDIR}/crawl-ncurses-${SLOT}" ]] && dobin "${WORKDIR}/crawl-ncurses-${SLOT}" + + # don't relocate docs, needed at runtime + rm -rf "${D}/usr/share/${PN}-${SLOT}"/docs/license + + mv "${WORKDIR}/${MY_P}"/docs/crawl.6 "${WORKDIR}/${MY_P}/docs/crawl-${SLOT}.6" \ + || die "Couldn't append slot to man page name" + doman "${WORKDIR}/${MY_P}/docs/crawl-${SLOT}.6" + + # icons and menu for graphical build + if use tiles ; then + doicon -s 48 "${DISTDIR}"/${PN}-${SLOT}.png + doicon -s scalable "${DISTDIR}"/${PN}-${SLOT}.svg + make_desktop_entry "crawl-${SLOT}" "crawl-${SLOT}" "crawl-${SLOT}" + fi +} + +pkg_postinst() { + xdg_icon_cache_update + + elog "crawl is a slotted install that supports having" + elog "multiple versions installed. The binary has the" + elog "slot appened, e.g. 'crawl-"${SLOT}"'." + + if use tiles && use ncurses ; then + elog + elog "Since you have enabled both tiles and ncurses frontends" + elog "the ncurses binary is called 'crawl-ncurses-"${SLOT}"' and the" + elog "tiles binary is called 'crawl-"${SLOT}"'." + fi +} + +pkg_postrm() { + xdg_icon_cache_update +} diff --git a/games-roguelike/stone-soup/stone-soup-0.26.1-r1.ebuild b/games-roguelike/stone-soup/stone-soup-0.26.1-r1.ebuild new file mode 100644 index 000000000000..71060b04b353 --- /dev/null +++ b/games-roguelike/stone-soup/stone-soup-0.26.1-r1.ebuild @@ -0,0 +1,186 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-{1..3} ) +PYTHON_COMPAT=( python3_{7,8,9} ) +VIRTUALX_REQUIRED="manual" +inherit desktop python-any-r1 lua-single xdg-utils toolchain-funcs + +MY_P="stone_soup-${PV}" +DESCRIPTION="Role-playing roguelike game of exploration and treasure-hunting in dungeons" +HOMEPAGE="https://crawl.develz.org" +SLOT="0.26" +SRC_URI=" + https://github.com/crawl/crawl/releases/download/${PV}/${PN/-/_}-${PV}.zip + https://dev.gentoo.org/~stasibear/distfiles/${PN}.png -> ${PN}-${SLOT}.png + https://dev.gentoo.org/~stasibear/distfiles/${PN}.svg -> ${PN}-${SLOT}.svg +" + +# 3-clause BSD: mt19937ar.cc, MSVC/stdint.h +# 2-clause BSD: all contributions by Steve Noonan and Jesse Luehrs +# Public Domain|CC0: most of tiles +# MIT: json.cc/json.h, some .js files in webserver/static/scripts/contrib/ +LICENSE="GPL-2 BSD BSD-2 public-domain CC0-1.0 MIT" +KEYWORDS="~amd64 ~x86" +IUSE="debug ncurses sound +tiles" + +RDEPEND=" + ${LUA_DEPS} + dev-db/sqlite:3 + sys-libs/zlib + !ncurses? ( !tiles? ( sys-libs/ncurses:0 ) ) + ncurses? ( sys-libs/ncurses:0 ) + tiles? ( + media-fonts/dejavu + media-libs/freetype:2 + media-libs/libpng:0 + sound? ( + media-libs/libsdl2[X,opengl,sound,video] + media-libs/sdl2-mixer + ) + !sound? ( media-libs/libsdl2[X,opengl,video] ) + media-libs/sdl2-image[png] + virtual/glu + virtual/opengl + )" +DEPEND="${RDEPEND} + app-arch/unzip + dev-lang/perl + ${PYTHON_DEPS} + $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') + sys-devel/flex + tiles? ( + media-gfx/pngcrush + sys-libs/ncurses:0 + ) + virtual/pkgconfig + virtual/yacc + " + +S=${WORKDIR}/${MY_P}/source +PATCHES=( + "${FILESDIR}"/make.patch + "${FILESDIR}"/rltiles-make.patch +) + +python_check_deps() { + has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" +} + +pkg_setup() { + + python-any-r1_pkg_setup + + if use !ncurses && use !tiles ; then + ewarn "Neither ncurses nor tiles frontend" + ewarn "selected, choosing ncurses only." + ewarn "Note that you can also enable both." + fi + + if use sound && use !tiles ; then + ewarn "Sound support is only available with tiles." + fi +} + +src_prepare() { + default + python_fix_shebang "${S}/util/species-gen.py" + + sed -i -e "s/GAME = crawl$/GAME = crawl-${SLOT}/" "${S}/Makefile" \ + || die "Couldn't append slot to executable name" +} + +src_compile() { + + # Insurance that we're not using bundled lib sources + rm -rf contrib || die "Couldn't delete contrib directory" + + myemakeargs=( + $(usex debug "FULLDEBUG=y DEBUG=y" "") + BUILD_LUA= + AR="$(tc-getAR)" + CFOPTIMIZE='' + CFOTHERS="${CXXFLAGS}" + CONTRIBS= + DATADIR="/usr/share/${PN}-${SLOT}" + FORCE_CC="$(tc-getCC)" + FORCE_CXX="$(tc-getCXX)" + LDFLAGS="${LDFLAGS}" + MAKEOPTS="${MAKEOPTS}" + PKGCONFIG="$(tc-getPKG_CONFIG)" + RANLIB="$(tc-getRANLIB)" + SAVEDIR="~/.crawl-${SLOT}" + SOUND=$(usex sound "y" "") + STRIP=touch + USE_LUAJIT= + V=1 + prefix="/usr" + ) + + if use ncurses || (use !ncurses && use !tiles) ; then + emake "${myemakeargs[@]}" + # move it in case we build both variants + use tiles && { mv "crawl-${SLOT}" "${WORKDIR}"/crawl-ncurses-${SLOT} || die ;} + fi + + if use tiles ; then + emake "${myemakeargs[@]}" clean + emake "${myemakeargs[@]}" "TILES=y" + fi +} + +src_test() { + emake "${myemakeargs[@]}" \ + $(usex tiles "TILES=y" "") \ + catch2-tests +} + +src_install() { + emake "${myemakeargs[@]}" \ + $(usex tiles "TILES=y" "") \ + DESTDIR="${D}" \ + prefix_fp="" \ + bin_prefix="${D}/usr/bin" \ + install + + [[ -e "${WORKDIR}/crawl-ncurses-${SLOT}" ]] && dobin "${WORKDIR}/crawl-ncurses-${SLOT}" + + # don't relocate docs, needed at runtime + rm -rf "${D}/usr/share/${PN}-${SLOT}"/docs/license + + mv "${WORKDIR}/${MY_P}"/docs/crawl.6 "${WORKDIR}/${MY_P}/docs/crawl-${SLOT}.6" \ + || die "Couldn't append slot to man page name" + doman "${WORKDIR}/${MY_P}/docs/crawl-${SLOT}.6" + + # icons and menu for graphical build + if use tiles ; then + doicon -s 48 "${DISTDIR}"/${PN}-${SLOT}.png + doicon -s scalable "${DISTDIR}"/${PN}-${SLOT}.svg + make_desktop_entry "crawl-${SLOT}" "crawl-${SLOT}" "crawl-${SLOT}" + fi +} + +pkg_postinst() { + xdg_icon_cache_update + + elog "Since version 0.25.1-r101, crawl is a slotted install" + elog "that supports having multiple versions installed. The" + elog "binary has the slot appened, e.g. 'crawl-"${SLOT}"'." + elog + elog "The local save directory also has the slot appended." + elog "If you have saved games from 0.25 but before 0.25.1-r101" + elog "you can 'mv ~/.crawl ~/.crawl-0.25' to fix it" + + if use tiles && use ncurses ; then + elog + elog "Since you have enabled both tiles and ncurses frontends" + elog "the ncurses binary is called 'crawl-ncurses-"${SLOT}"' and the" + elog "tiles binary is called 'crawl-"${SLOT}"'." + fi +} + +pkg_postrm() { + xdg_icon_cache_update +} diff --git a/games-roguelike/stone-soup/stone-soup-0.27.0-r1.ebuild b/games-roguelike/stone-soup/stone-soup-0.27.0-r1.ebuild new file mode 100644 index 000000000000..8c3f2a14c8cf --- /dev/null +++ b/games-roguelike/stone-soup/stone-soup-0.27.0-r1.ebuild @@ -0,0 +1,182 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-{1..3} ) +PYTHON_COMPAT=( python3_{7,8,9} ) +VIRTUALX_REQUIRED="manual" +inherit desktop python-any-r1 lua-single xdg-utils toolchain-funcs + +MY_P="stone_soup-${PV}" +DESCRIPTION="Role-playing roguelike game of exploration and treasure-hunting in dungeons" +HOMEPAGE="https://crawl.develz.org" +SLOT="0.27" +SRC_URI=" + https://github.com/crawl/crawl/releases/download/${PV}/${PN/-/_}-${PV}.zip + https://dev.gentoo.org/~stasibear/distfiles/${PN}.png -> ${PN}-${SLOT}.png + https://dev.gentoo.org/~stasibear/distfiles/${PN}.svg -> ${PN}-${SLOT}.svg +" + +# 3-clause BSD: mt19937ar.cc, MSVC/stdint.h +# 2-clause BSD: all contributions by Steve Noonan and Jesse Luehrs +# Public Domain|CC0: most of tiles +# MIT: json.cc/json.h, some .js files in webserver/static/scripts/contrib/ +LICENSE="GPL-2 BSD BSD-2 public-domain CC0-1.0 MIT" +KEYWORDS="~amd64 ~x86" +IUSE="debug ncurses sound +tiles" + +RDEPEND=" + ${LUA_DEPS} + dev-db/sqlite:3 + sys-libs/zlib + !ncurses? ( !tiles? ( sys-libs/ncurses:0 ) ) + ncurses? ( sys-libs/ncurses:0 ) + tiles? ( + media-fonts/dejavu + media-libs/freetype:2 + media-libs/libpng:0 + sound? ( + media-libs/libsdl2[X,opengl,sound,video] + media-libs/sdl2-mixer + ) + !sound? ( media-libs/libsdl2[X,opengl,video] ) + media-libs/sdl2-image[png] + virtual/glu + virtual/opengl + )" +DEPEND="${RDEPEND} + app-arch/unzip + dev-lang/perl + ${PYTHON_DEPS} + $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') + sys-devel/flex + tiles? ( + media-gfx/pngcrush + sys-libs/ncurses:0 + ) + virtual/pkgconfig + virtual/yacc + " + +S=${WORKDIR}/${MY_P}/source +PATCHES=( + "${FILESDIR}"/make.patch + "${FILESDIR}"/rltiles-make.patch +) + +python_check_deps() { + has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" +} + +pkg_setup() { + + python-any-r1_pkg_setup + + if use !ncurses && use !tiles ; then + ewarn "Neither ncurses nor tiles frontend" + ewarn "selected, choosing ncurses only." + ewarn "Note that you can also enable both." + fi + + if use sound && use !tiles ; then + ewarn "Sound support is only available with tiles." + fi +} + +src_prepare() { + default + python_fix_shebang "${S}/util/species-gen.py" + + sed -i -e "s/GAME = crawl$/GAME = crawl-${SLOT}/" "${S}/Makefile" \ + || die "Couldn't append slot to executable name" +} + +src_compile() { + + # Insurance that we're not using bundled lib sources + rm -rf contrib || die "Couldn't delete contrib directory" + + myemakeargs=( + $(usex debug "FULLDEBUG=y DEBUG=y" "") + BUILD_LUA= + AR="$(tc-getAR)" + CFOPTIMIZE='' + CFOTHERS="${CXXFLAGS}" + CONTRIBS= + DATADIR="/usr/share/${PN}-${SLOT}" + FORCE_CC="$(tc-getCC)" + FORCE_CXX="$(tc-getCXX)" + LDFLAGS="${LDFLAGS}" + MAKEOPTS="${MAKEOPTS}" + PKGCONFIG="$(tc-getPKG_CONFIG)" + RANLIB="$(tc-getRANLIB)" + SAVEDIR="~/.crawl-${SLOT}" + SOUND=$(usex sound "y" "") + STRIP=touch + USE_LUAJIT= + V=1 + prefix="/usr" + ) + + if use ncurses || (use !ncurses && use !tiles) ; then + emake "${myemakeargs[@]}" + # move it in case we build both variants + use tiles && { mv "crawl-${SLOT}" "${WORKDIR}"/crawl-ncurses-${SLOT} || die ;} + fi + + if use tiles ; then + emake "${myemakeargs[@]}" clean + emake "${myemakeargs[@]}" "TILES=y" + fi +} + +src_test() { + emake "${myemakeargs[@]}" \ + $(usex tiles "TILES=y" "") \ + catch2-tests +} + +src_install() { + emake "${myemakeargs[@]}" \ + $(usex tiles "TILES=y" "") \ + DESTDIR="${D}" \ + prefix_fp="" \ + bin_prefix="${D}/usr/bin" \ + install + + [[ -e "${WORKDIR}/crawl-ncurses-${SLOT}" ]] && dobin "${WORKDIR}/crawl-ncurses-${SLOT}" + + # don't relocate docs, needed at runtime + rm -rf "${D}/usr/share/${PN}-${SLOT}"/docs/license + + mv "${WORKDIR}/${MY_P}"/docs/crawl.6 "${WORKDIR}/${MY_P}/docs/crawl-${SLOT}.6" \ + || die "Couldn't append slot to man page name" + doman "${WORKDIR}/${MY_P}/docs/crawl-${SLOT}.6" + + # icons and menu for graphical build + if use tiles ; then + doicon -s 48 "${DISTDIR}"/${PN}-${SLOT}.png + doicon -s scalable "${DISTDIR}"/${PN}-${SLOT}.svg + make_desktop_entry "crawl-${SLOT}" "crawl-${SLOT}" "crawl-${SLOT}" + fi +} + +pkg_postinst() { + xdg_icon_cache_update + + elog "crawl is a slotted install that supports having" + elog "multiple versions installed. The binary has the" + elog "slot appened, e.g. 'crawl-"${SLOT}"'." + + if use tiles && use ncurses ; then + elog + elog "Since you have enabled both tiles and ncurses frontends" + elog "the ncurses binary is called 'crawl-ncurses-"${SLOT}"' and the" + elog "tiles binary is called 'crawl-"${SLOT}"'." + fi +} + +pkg_postrm() { + xdg_icon_cache_update +} -- cgit v1.2.3