1 |
commit: c86259b9f5a1790d7e9ba54280a2f9f047d47deb |
2 |
Author: Erik Mackdanz <stasibear <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Aug 27 01:37:35 2022 +0000 |
4 |
Commit: Erik Mackdanz <stasibear <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Aug 27 01:38:56 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c86259b9 |
7 |
|
8 |
games-roguelike/stone-soup: add 0.29.0 |
9 |
|
10 |
Signed-off-by: Erik Mackdanz <stasibear <AT> gentoo.org> |
11 |
|
12 |
games-roguelike/stone-soup/Manifest | 1 + |
13 |
.../stone-soup/stone-soup-0.29.0.ebuild | 222 +++++++++++++++++++++ |
14 |
2 files changed, 223 insertions(+) |
15 |
|
16 |
diff --git a/games-roguelike/stone-soup/Manifest b/games-roguelike/stone-soup/Manifest |
17 |
index e6830d96ca62..3d086c2bb47b 100644 |
18 |
--- a/games-roguelike/stone-soup/Manifest |
19 |
+++ b/games-roguelike/stone-soup/Manifest |
20 |
@@ -13,3 +13,4 @@ DIST stone_soup-0.25.1.zip 95477710 BLAKE2B 0b38a6c7cb7c4c87acccb861b5aae665cd2b |
21 |
DIST stone_soup-0.26.1.zip 95585384 BLAKE2B 6d1cb99fc44e918cad4144608f259e67a26df444b93c8501590ff209e8856fd08c514d4c8c78cb0848d8e6127cdf4360b47d21ced5d919da982421934b46102d SHA512 637f1a07e9f35e18eda10c17dc28449364c56aee8456497e30552acb55608a9433cff8b64af877049c21cb2a42eb2fcad28f58a7e57a1d835eb8c252e580205d |
22 |
DIST stone_soup-0.27.1.zip 96934633 BLAKE2B 8821920a4faad9474f08a34ae3c272cb9dcd3ddeb9029e033c22eb8e6650ef20bbc30e0c0ca1556d08c1b7b898fdbdd3667a3ac9a8527e0c322cd8c78ab391bb SHA512 845dafc9895ada3712903de63b95cca9eeb66160e4a04ba21193d916447fca8e7248b851f1e938f43b8d3937cf4f4437443bdc4fe2da893fe3918fed4e0b5204 |
23 |
DIST stone_soup-0.28.0.zip 98876317 BLAKE2B 10f554ea004778b6a2537caa2f994c8e7b12e190ddaaf55f9fb5d2499b91ee6d15d63a9d50167528c1625058bc262c5cba8ba08235fc377e83329ba5f80158be SHA512 7316175ccf6efea376a8a9157f9c4d1786f59c544af39e5ff28a9fcd889e23ef58c2a3680df46807c84b2ce0feb347e661c929195e8affb3d3f98c24832b17e0 |
24 |
+DIST stone_soup-0.29.0.zip 100424389 BLAKE2B 8b8b72a01519984dad1ee7915572e65d7578e5163a9eaf3ce5d6c1a31196b369d9417fdc255a48951f2e23c732f50e934e5edab5cb2f82e7582dcf86d7712254 SHA512 a84c8bcd6d4d50a74144068462b3b4c14d3ce40e7cf857b31516617273ee4ad2330f6591c671862c9b69a6f4812ee6e8bebee1cc9117f3570b40f0d5bec4c074 |
25 |
|
26 |
diff --git a/games-roguelike/stone-soup/stone-soup-0.29.0.ebuild b/games-roguelike/stone-soup/stone-soup-0.29.0.ebuild |
27 |
new file mode 100644 |
28 |
index 000000000000..82b2a07eb9c3 |
29 |
--- /dev/null |
30 |
+++ b/games-roguelike/stone-soup/stone-soup-0.29.0.ebuild |
31 |
@@ -0,0 +1,222 @@ |
32 |
+# Copyright 1999-2022 Gentoo Authors |
33 |
+# Distributed under the terms of the GNU General Public License v2 |
34 |
+ |
35 |
+EAPI=8 |
36 |
+ |
37 |
+LUA_COMPAT=( lua5-1 ) |
38 |
+PYTHON_COMPAT=( python3_{8,9,10,11} ) |
39 |
+VIRTUALX_REQUIRED="manual" |
40 |
+inherit desktop python-any-r1 lua-single xdg-utils toolchain-funcs |
41 |
+ |
42 |
+DESCRIPTION="Role-playing roguelike game of exploration and treasure-hunting in dungeons" |
43 |
+HOMEPAGE="https://crawl.develz.org" |
44 |
+SLOT="0.29" |
45 |
+ |
46 |
+# Leave empty string if not a _pre release |
47 |
+COMMITSHA="" |
48 |
+if [ -z "${COMMITSHA}" ]; then |
49 |
+ # This is a proper release |
50 |
+ SRC_URI=" |
51 |
+ https://github.com/crawl/crawl/releases/download/${PV}/${PN/-/_}-${PV}.zip |
52 |
+ https://dev.gentoo.org/~stasibear/distfiles/${PN}.png -> ${PN}-${SLOT}.png |
53 |
+ https://dev.gentoo.org/~stasibear/distfiles/${PN}.svg -> ${PN}-${SLOT}.svg |
54 |
+ " |
55 |
+ MY_P="stone_soup-${PV}" |
56 |
+else |
57 |
+ # This is a _pre release |
58 |
+ SRC_URI=" |
59 |
+ https://github.com/crawl/crawl/archive/${COMMITSHA}.tar.gz -> ${P}.tar.gz |
60 |
+ https://dev.gentoo.org/~stasibear/distfiles/${PN}.png -> ${PN}-${SLOT}.png |
61 |
+ https://dev.gentoo.org/~stasibear/distfiles/${PN}.svg -> ${PN}-${SLOT}.svg |
62 |
+ " |
63 |
+ MY_P="crawl-${COMMITSHA}/crawl-ref" |
64 |
+fi |
65 |
+ |
66 |
+# 3-clause BSD: mt19937ar.cc, MSVC/stdint.h |
67 |
+# 2-clause BSD: all contributions by Steve Noonan and Jesse Luehrs |
68 |
+# Public Domain|CC0: most of tiles |
69 |
+# MIT: json.cc/json.h, some .js files in webserver/static/scripts/contrib/ |
70 |
+LICENSE="GPL-2 BSD BSD-2 public-domain CC0-1.0 MIT" |
71 |
+KEYWORDS="~amd64 ~x86" |
72 |
+IUSE="advpng debug ncurses sound test +tiles" |
73 |
+RESTRICT="!test? ( test )" |
74 |
+REQUIRED_USE="${LUA_REQUIRED_USE}" |
75 |
+ |
76 |
+S=${WORKDIR}/${MY_P}/source |
77 |
+RDEPEND=" |
78 |
+ ${LUA_DEPS} |
79 |
+ dev-db/sqlite:3 |
80 |
+ sys-libs/zlib |
81 |
+ !ncurses? ( !tiles? ( sys-libs/ncurses:0 ) ) |
82 |
+ ncurses? ( sys-libs/ncurses:0 ) |
83 |
+ tiles? ( |
84 |
+ media-fonts/dejavu |
85 |
+ media-libs/freetype:2 |
86 |
+ media-libs/libpng:0 |
87 |
+ sound? ( |
88 |
+ media-libs/libsdl2[X,opengl,sound,video] |
89 |
+ media-libs/sdl2-mixer |
90 |
+ ) |
91 |
+ !sound? ( media-libs/libsdl2[X,opengl,video] ) |
92 |
+ media-libs/sdl2-image[png] |
93 |
+ virtual/glu |
94 |
+ virtual/opengl |
95 |
+ )" |
96 |
+DEPEND="${RDEPEND} |
97 |
+ test? ( <dev-cpp/catch-3.0.0:0 ) |
98 |
+ tiles? ( |
99 |
+ sys-libs/ncurses:0 |
100 |
+ ) |
101 |
+ " |
102 |
+BDEPEND=" |
103 |
+ app-arch/unzip |
104 |
+ dev-lang/perl |
105 |
+ ${PYTHON_DEPS} |
106 |
+ $(python_gen_any_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]') |
107 |
+ sys-devel/flex |
108 |
+ tiles? ( |
109 |
+ advpng? ( |
110 |
+ app-arch/advancecomp |
111 |
+ ) |
112 |
+ !advpng? ( |
113 |
+ media-gfx/pngcrush |
114 |
+ ) |
115 |
+ ) |
116 |
+ virtual/pkgconfig |
117 |
+ virtual/yacc |
118 |
+ " |
119 |
+ |
120 |
+PATCHES=( |
121 |
+ "${FILESDIR}"/make.patch |
122 |
+ "${FILESDIR}"/rltiles-make.patch |
123 |
+) |
124 |
+ |
125 |
+python_check_deps() { |
126 |
+ python_has_version "dev-python/pyyaml[${PYTHON_USEDEP}]" |
127 |
+} |
128 |
+ |
129 |
+pkg_setup() { |
130 |
+ python-any-r1_pkg_setup |
131 |
+ |
132 |
+ if use !ncurses && use !tiles ; then |
133 |
+ ewarn "Neither ncurses nor tiles frontend" |
134 |
+ ewarn "selected, choosing ncurses only." |
135 |
+ ewarn "Note that you can also enable both." |
136 |
+ fi |
137 |
+ |
138 |
+ if use sound && use !tiles ; then |
139 |
+ ewarn "Sound support is only available with tiles." |
140 |
+ fi |
141 |
+} |
142 |
+ |
143 |
+src_prepare() { |
144 |
+ default |
145 |
+ python_fix_shebang "${S}/util/species-gen.py" |
146 |
+ |
147 |
+ if use advpng; then |
148 |
+ eapply "${FILESDIR}/make-advpng.patch" |
149 |
+ fi |
150 |
+ |
151 |
+ sed -i -e "s/GAME = crawl$/GAME = crawl-${SLOT}/" "${S}/Makefile" \ |
152 |
+ || die "Couldn't append slot to executable name" |
153 |
+ |
154 |
+ # File required for a _pre build |
155 |
+ if ! [ -f "${S}/util/release_ver" ]; then |
156 |
+ echo "${SLOT}" >"${S}/util/release_ver" || die "Couldn't write release_ver" |
157 |
+ fi |
158 |
+ |
159 |
+ # Replace bundled catch2 package with system implementation |
160 |
+ # https://bugs.gentoo.org/829950 |
161 |
+ if use test; then |
162 |
+ cp /usr/include/catch2/catch.hpp "${S}/catch2-tests" || die "Couldn't substitute system catch2" |
163 |
+ fi |
164 |
+} |
165 |
+ |
166 |
+src_compile() { |
167 |
+ |
168 |
+ # Insurance that we're not using bundled lib sources |
169 |
+ rm -rf contrib || die "Couldn't delete contrib directory" |
170 |
+ |
171 |
+ myemakeargs=( |
172 |
+ $(usex debug "FULLDEBUG=y DEBUG=y" "") |
173 |
+ BUILD_LUA= |
174 |
+ AR="$(tc-getAR)" |
175 |
+ CFOPTIMIZE='' |
176 |
+ CFOTHERS="${CXXFLAGS}" |
177 |
+ CONTRIBS= |
178 |
+ DATADIR="/usr/share/${PN}-${SLOT}" |
179 |
+ FORCE_CC="$(tc-getCC)" |
180 |
+ FORCE_CXX="$(tc-getCXX)" |
181 |
+ LDFLAGS="${LDFLAGS}" |
182 |
+ MAKEOPTS="${MAKEOPTS}" |
183 |
+ PKGCONFIG="$(tc-getPKG_CONFIG)" |
184 |
+ RANLIB="$(tc-getRANLIB)" |
185 |
+ SAVEDIR="~/.crawl-${SLOT}" |
186 |
+ SOUND=$(usex sound "y" "") |
187 |
+ STRIP=touch |
188 |
+ USE_LUAJIT= |
189 |
+ V=1 |
190 |
+ prefix="/usr" |
191 |
+ ) |
192 |
+ |
193 |
+ if use ncurses || (use !ncurses && use !tiles) ; then |
194 |
+ emake "${myemakeargs[@]}" |
195 |
+ # move it in case we build both variants |
196 |
+ use tiles && { mv "crawl-${SLOT}" "${WORKDIR}"/crawl-ncurses-${SLOT} || die ;} |
197 |
+ fi |
198 |
+ |
199 |
+ if use tiles ; then |
200 |
+ emake "${myemakeargs[@]}" clean |
201 |
+ emake "${myemakeargs[@]}" "TILES=y" |
202 |
+ fi |
203 |
+} |
204 |
+ |
205 |
+src_test() { |
206 |
+ emake "${myemakeargs[@]}" \ |
207 |
+ $(usex tiles "TILES=y" "") \ |
208 |
+ catch2-tests |
209 |
+} |
210 |
+ |
211 |
+src_install() { |
212 |
+ emake "${myemakeargs[@]}" \ |
213 |
+ $(usex tiles "TILES=y" "") \ |
214 |
+ DESTDIR="${D}" \ |
215 |
+ prefix_fp="" \ |
216 |
+ bin_prefix="${D}/usr/bin" \ |
217 |
+ install |
218 |
+ |
219 |
+ [[ -e "${WORKDIR}/crawl-ncurses-${SLOT}" ]] && dobin "${WORKDIR}/crawl-ncurses-${SLOT}" |
220 |
+ |
221 |
+ # don't relocate docs, needed at runtime |
222 |
+ rm -rf "${D}/usr/share/${PN}-${SLOT}"/docs/license |
223 |
+ |
224 |
+ mv "${WORKDIR}/${MY_P}"/docs/crawl.6 "${WORKDIR}/${MY_P}/docs/crawl-${SLOT}.6" \ |
225 |
+ || die "Couldn't append slot to man page name" |
226 |
+ doman "${WORKDIR}/${MY_P}/docs/crawl-${SLOT}.6" |
227 |
+ |
228 |
+ # icons and menu for graphical build |
229 |
+ if use tiles ; then |
230 |
+ doicon -s 48 "${DISTDIR}"/${PN}-${SLOT}.png |
231 |
+ doicon -s scalable "${DISTDIR}"/${PN}-${SLOT}.svg |
232 |
+ make_desktop_entry "crawl-${SLOT}" "crawl-${SLOT}" "crawl-${SLOT}" |
233 |
+ fi |
234 |
+} |
235 |
+ |
236 |
+pkg_postinst() { |
237 |
+ xdg_icon_cache_update |
238 |
+ |
239 |
+ elog "crawl is a slotted install that supports having" |
240 |
+ elog "multiple versions installed. The binary has the" |
241 |
+ elog "slot appended, e.g. 'crawl-"${SLOT}"'." |
242 |
+ |
243 |
+ if use tiles && use ncurses ; then |
244 |
+ elog |
245 |
+ elog "Since you have enabled both tiles and ncurses frontends" |
246 |
+ elog "the ncurses binary is called 'crawl-ncurses-"${SLOT}"' and the" |
247 |
+ elog "tiles binary is called 'crawl-"${SLOT}"'." |
248 |
+ fi |
249 |
+} |
250 |
+ |
251 |
+pkg_postrm() { |
252 |
+ xdg_icon_cache_update |
253 |
+} |