summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2018-04-23 21:16:18 +0200
committerPacho Ramos <pacho@gentoo.org>2018-04-23 21:17:23 +0200
commit5e094e1e0766d9e17a0a7a2c5903ab6e33851e2e (patch)
tree93fa4a10e3b79c0afb66a4da7be2f9bd2c653406 /games-arcade/rocksndiamonds
parentgames-arcade/ri-li: Drop old (diff)
downloadgentoo-5e094e1e0766d9e17a0a7a2c5903ab6e33851e2e.tar.gz
gentoo-5e094e1e0766d9e17a0a7a2c5903ab6e33851e2e.tar.bz2
gentoo-5e094e1e0766d9e17a0a7a2c5903ab6e33851e2e.zip
games-arcade/rocksndiamonds: Version bump
Package-Manager: Portage-2.3.31, Repoman-2.3.9
Diffstat (limited to 'games-arcade/rocksndiamonds')
-rw-r--r--games-arcade/rocksndiamonds/Manifest1
-rw-r--r--games-arcade/rocksndiamonds/files/rocksndiamonds-4.1.0.0-CVE-2011-4606.patch18
-rw-r--r--games-arcade/rocksndiamonds/files/rocksndiamonds-4.1.0.0-YN.patch22
-rw-r--r--games-arcade/rocksndiamonds/files/rocksndiamonds-4.1.0.0-music-info-url.patch71
-rw-r--r--games-arcade/rocksndiamonds/rocksndiamonds-4.1.0.0.ebuild91
5 files changed, 203 insertions, 0 deletions
diff --git a/games-arcade/rocksndiamonds/Manifest b/games-arcade/rocksndiamonds/Manifest
index cf01b38f31cd..4b7ae7392b84 100644
--- a/games-arcade/rocksndiamonds/Manifest
+++ b/games-arcade/rocksndiamonds/Manifest
@@ -9,3 +9,4 @@ DIST rockslevels-dx-1.0.tar.gz 211151 BLAKE2B 637a600f9197925d82e7ef344c90f04e85
DIST rockslevels-emc-1.0.tar.gz 3824268 BLAKE2B 0feadd5d9c6225c8574576281d07e14ff98fc9a33c67d3fa5083219ce39daaa1902a5ed652b5379fa4e58ee2428a8a452d66520571206143fd0fcd54f71b977a SHA512 9abad888fa00bc305444367c5ab8ffdad95eaca22613573e44d5ecd93b1a9a1cbc931497c064002d90fd3174c4661d0b009ede7746b2fe8da0a00072303a1301
DIST rockslevels-sp-1.0.tar.gz 373564 BLAKE2B 3f724ea55bbdaae80a35d6a9f5d8751a9228862fbe1ba45419343b1968510e10d3c82cc01844e35bc35561e65df3bc7e5ec2a0b807e1f56359dc7dccc16e3cb0 SHA512 2d44e9238a72846b9d4fbab90288aa3b23af4957ffe0d42d95c523fd22f3587572864b3fc0b277894d2f3f56d6eff52ea009e5b2d59aebc34163a1067662d729
DIST rocksndiamonds-3.3.1.2.tar.gz 2614904 BLAKE2B a231a4a1beb35c29466f58c680cd86ddffbff48974d59d32c6e2a030b24fb3e6e99b825a254963a77830e62a6e1030f86350b1b9091d08b94dbbe577a2dbf2c2 SHA512 b627e4a8e2f03dc380b5a111cc42f296b283e63b20e019f522a8a1431fe9c138eb0dc7aa0fa03dd843c3a93bcd0a90704e651f5a590cb7d4c3e3b46976125755
+DIST rocksndiamonds-4.1.0.0.tar.gz 3850621 BLAKE2B 9c85aced223b855eec0300634d2fb30513d8b2d1856d8e134594f7de1669cf64f487a87335e28f7b8abb0c13492573ac5bd3261cfc5274287e75d0ace258ab93 SHA512 4949c2e9a601c8e005b006b13b82e36f7f001321051d392bc34aa4c234c6cddfa9fae16e58d83070072cac1429e13f1fb96d2c4b2ecd35a309065ca3c1c869c2
diff --git a/games-arcade/rocksndiamonds/files/rocksndiamonds-4.1.0.0-CVE-2011-4606.patch b/games-arcade/rocksndiamonds/files/rocksndiamonds-4.1.0.0-CVE-2011-4606.patch
new file mode 100644
index 000000000000..1aaa9e43dcc3
--- /dev/null
+++ b/games-arcade/rocksndiamonds/files/rocksndiamonds-4.1.0.0-CVE-2011-4606.patch
@@ -0,0 +1,18 @@
+diff -up rocksndiamonds-4.0.0.1/src/libgame/setup.c.CVE-2011-4606 rocksndiamonds-4.0.0.1/src/libgame/setup.c
+--- rocksndiamonds-4.0.0.1/src/libgame/setup.c.CVE-2011-4606 2017-01-12 07:53:09.497075662 -0500
++++ rocksndiamonds-4.0.0.1/src/libgame/setup.c 2017-01-12 07:58:19.319076661 -0500
+@@ -1311,11 +1311,13 @@ void sortTreeInfo(TreeInfo **node_first)
+ #define MODE_W_ALL (S_IWUSR | S_IWGRP | S_IWOTH)
+ #define MODE_X_ALL (S_IXUSR | S_IXGRP | S_IXOTH)
+
++#define MODE_R_PRIVATE (S_IRUSR)
+ #define MODE_W_PRIVATE (S_IWUSR)
++#define MODE_X_PRIVATE (S_IXUSR)
+ #define MODE_W_PUBLIC_FILE (S_IWUSR | S_IWGRP)
+ #define MODE_W_PUBLIC_DIR (S_IWUSR | S_IWGRP | S_ISGID)
+
+-#define DIR_PERMS_PRIVATE (MODE_R_ALL | MODE_X_ALL | MODE_W_PRIVATE)
++#define DIR_PERMS_PRIVATE (MODE_R_PRIVATE | MODE_X_PRIVATE | MODE_W_PRIVATE)
+ #define DIR_PERMS_PUBLIC (MODE_R_ALL | MODE_X_ALL | MODE_W_PUBLIC_DIR)
+ #define DIR_PERMS_PUBLIC_ALL (MODE_R_ALL | MODE_X_ALL | MODE_W_ALL)
+
diff --git a/games-arcade/rocksndiamonds/files/rocksndiamonds-4.1.0.0-YN.patch b/games-arcade/rocksndiamonds/files/rocksndiamonds-4.1.0.0-YN.patch
new file mode 100644
index 000000000000..70c95bd076dc
--- /dev/null
+++ b/games-arcade/rocksndiamonds/files/rocksndiamonds-4.1.0.0-YN.patch
@@ -0,0 +1,22 @@
+diff -up rocksndiamonds-4.0.0.1/src/tools.c.yesno rocksndiamonds-4.0.0.1/src/tools.c
+--- rocksndiamonds-4.0.0.1/src/tools.c.yesno 2017-01-12 07:47:09.921343574 -0500
++++ rocksndiamonds-4.0.0.1/src/tools.c 2017-01-12 07:51:45.059649653 -0500
+@@ -3901,6 +3901,18 @@ static int RequestHandleEvents(unsigned
+ result = 0;
+ break;
+
++ case KSYM_y:
++ case KSYM_Y:
++ if (req_state & REQ_ASK)
++ result = TRUE;
++ break;
++
++ case KSYM_n:
++ case KSYM_N:
++ if (req_state & REQ_ASK)
++ result = FALSE;
++ break;
++
+ default:
+ HandleKeysDebug(key);
+ break;
diff --git a/games-arcade/rocksndiamonds/files/rocksndiamonds-4.1.0.0-music-info-url.patch b/games-arcade/rocksndiamonds/files/rocksndiamonds-4.1.0.0-music-info-url.patch
new file mode 100644
index 000000000000..f913be382e94
--- /dev/null
+++ b/games-arcade/rocksndiamonds/files/rocksndiamonds-4.1.0.0-music-info-url.patch
@@ -0,0 +1,71 @@
+diff -up rocksndiamonds-4.1.0.0/src/files.c.url rocksndiamonds-4.1.0.0/src/files.c
+--- rocksndiamonds-4.1.0.0/src/files.c.url 2018-04-10 15:44:08.000000000 -0400
++++ rocksndiamonds-4.1.0.0/src/files.c 2018-04-17 16:30:19.726734512 -0400
+@@ -10127,11 +10127,13 @@ static struct MusicFileInfo *get_music_f
+ { "artist_header", &tmp_music_file_info.artist_header },
+ { "album_header", &tmp_music_file_info.album_header },
+ { "year_header", &tmp_music_file_info.year_header },
++ { "url_header", &tmp_music_file_info.url_header },
+
+ { "title", &tmp_music_file_info.title },
+ { "artist", &tmp_music_file_info.artist },
+ { "album", &tmp_music_file_info.album },
+ { "year", &tmp_music_file_info.year },
++ { "url", &tmp_music_file_info.url },
+
+ { NULL, NULL },
+ };
+@@ -10247,11 +10249,13 @@ void LoadMusicInfo()
+ checked_free(music_file_info->artist_header);
+ checked_free(music_file_info->album_header);
+ checked_free(music_file_info->year_header);
++ checked_free(music_file_info->url_header);
+
+ checked_free(music_file_info->title);
+ checked_free(music_file_info->artist);
+ checked_free(music_file_info->album);
+ checked_free(music_file_info->year);
++ checked_free(music_file_info->url);
+
+ free(music_file_info);
+
+diff -up rocksndiamonds-4.1.0.0/src/main.h.url rocksndiamonds-4.1.0.0/src/main.h
+--- rocksndiamonds-4.1.0.0/src/main.h.url 2018-04-10 15:44:08.000000000 -0400
++++ rocksndiamonds-4.1.0.0/src/main.h 2018-04-17 16:30:19.727734490 -0400
+@@ -3463,11 +3463,13 @@ struct MusicFileInfo
+ char *artist_header;
+ char *album_header;
+ char *year_header;
++ char *url_header;
+
+ char *title;
+ char *artist;
+ char *album;
+ char *year;
++ char *url;
+
+ int music;
+
+diff -up rocksndiamonds-4.1.0.0/src/screens.c.url rocksndiamonds-4.1.0.0/src/screens.c
+--- rocksndiamonds-4.1.0.0/src/screens.c.url 2018-04-17 16:30:19.728734467 -0400
++++ rocksndiamonds-4.1.0.0/src/screens.c 2018-04-17 16:34:00.653803869 -0400
+@@ -3060,6 +3060,19 @@ void HandleInfoScreen_Music(int button)
+ ystart += ystep_head;
+ }
+
++ if (!strEqual(list->url, UNKNOWN_NAME))
++ {
++ if (!strEqual(list->url_header, UNKNOWN_NAME))
++ DrawTextSCentered(ystart, font_head, list->url_header);
++ else
++ DrawTextSCentered(ystart, font_head, "from the website");
++
++ ystart += ystep_head;
++
++ DrawTextFCentered(ystart, font_text, "%s", list->url);
++ ystart += ystep_head;
++ }
++
+ DrawTextSCentered(ybottom, FONT_TEXT_4,
+ "Press any key or button for next page");
+
diff --git a/games-arcade/rocksndiamonds/rocksndiamonds-4.1.0.0.ebuild b/games-arcade/rocksndiamonds/rocksndiamonds-4.1.0.0.ebuild
new file mode 100644
index 000000000000..f6f2cdcddcf4
--- /dev/null
+++ b/games-arcade/rocksndiamonds/rocksndiamonds-4.1.0.0.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit desktop flag-o-matic
+
+DESCRIPTION="A Boulderdash clone"
+HOMEPAGE="http://www.artsoft.org/rocksndiamonds/"
+SRC_URI="http://www.artsoft.org/RELEASES/unix/rocksndiamonds/${P}.tar.gz
+ http://www.artsoft.org/RELEASES/rocksndiamonds/levels/Contributions-1.2.0.zip
+ http://www.artsoft.org/RELEASES/rocksndiamonds/levels/BD2K3-1.0.0.zip
+ http://www.artsoft.org/RELEASES/rocksndiamonds/levels/Boulder_Dash_Dream-1.0.0.zip
+ http://www.artsoft.org/RELEASES/rocksndiamonds/levels/rnd-contrib-1.0.0.tar.gz
+ http://www.artsoft.org/RELEASES/rocksndiamonds/levels/Snake_Bite-1.0.0.zip
+ http://www.artsoft.org/RELEASES/rocksndiamonds/levels/Sokoban-1.0.0.zip
+ http://www.artsoft.org/RELEASES/unix/rocksndiamonds/levels/rockslevels-emc-1.0.tar.gz
+ http://www.artsoft.org/RELEASES/unix/rocksndiamonds/levels/rockslevels-sp-1.0.tar.gz
+ http://www.artsoft.org/RELEASES/unix/rocksndiamonds/levels/rockslevels-dx-1.0.tar.gz
+ mirror://gentoo/rnd_jue-v8.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="
+ media-libs/libsdl2[joystick,video]
+ media-libs/sdl2-mixer[mod,mp3,timidity]
+ media-libs/sdl2-net
+ media-libs/sdl2-image[gif]
+ media-libs/smpeg
+"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+"
+
+PATCHES=(
+ # From Fedora:
+ "${FILESDIR}"/${PN}-4.1.0.0-YN.patch
+ "${FILESDIR}"/${PN}-4.1.0.0-music-info-url.patch
+ "${FILESDIR}"/${PN}-4.1.0.0-CVE-2011-4606.patch
+)
+
+src_unpack() {
+ unpack ${P}.tar.gz
+ cd "${S}"
+ unpack \
+ rockslevels-emc-1.0.tar.gz \
+ rockslevels-sp-1.0.tar.gz \
+ rockslevels-dx-1.0.tar.gz
+ cd levels
+ unpack \
+ rnd_jue-v8.tar.bz2 \
+ BD2K3-1.0.0.zip \
+ rnd-contrib-1.0.0.tar.gz \
+ Snake_Bite-1.0.0.zip \
+ Contributions-1.2.0.zip \
+ Boulder_Dash_Dream-1.0.0.zip \
+ Sokoban-1.0.0.zip
+}
+
+src_prepare() {
+ default
+ sed -i \
+ -e 's:\$(MAKE_CMD):$(MAKE) -C $(SRC_DIR):' \
+ -e '/^MAKE/d' \
+ -e '/^CC/d' \
+ Makefile || die
+
+ sed -i \
+ -e '/^LDFLAGS/s/=/+=/' \
+ src/Makefile || die
+}
+
+src_compile() {
+ replace-cpu-flags k6 k6-1 k6-2 i586
+
+ local makeopts="RO_GAME_DIR=/usr/share/${PN} RW_GAME_DIR=/usr/share/${PN}"
+ emake -j1 clean
+ emake ${makeopts} OPTIONS="${CFLAGS}" sdl2
+}
+
+src_install() {
+ dobin rocksndiamonds
+ insinto "/usr/share/${PN}"
+ doins -r docs graphics levels music sounds
+
+ einstalldocs
+ newicon graphics/gfx_classic/RocksIcon32x32.png ${PN}.png
+ make_desktop_entry rocksndiamonds "Rocks 'N' Diamonds" /usr/share/pixmaps/${PN}.png
+}