diff options
author | Azamat H. Hackimov <azamat.hackimov@gmail.com> | 2020-06-08 12:58:02 +0300 |
---|---|---|
committer | Stefan Strogin <steils@gentoo.org> | 2020-06-12 06:13:10 +0300 |
commit | effe2edd232d7f8decce455309dd6ae252316cfe (patch) | |
tree | 7e0964376b8f8e9d072dceef9a2b6fa8c6e3a531 /games-action/heroes | |
parent | sys-apps/fd: drop old (diff) | |
download | gentoo-effe2edd232d7f8decce455309dd6ae252316cfe.tar.gz gentoo-effe2edd232d7f8decce455309dd6ae252316cfe.tar.bz2 gentoo-effe2edd232d7f8decce455309dd6ae252316cfe.zip |
games-action/heroes: fix compilation; update ebuild
Fix compilation on GCC 10 (#708794, patch taken from Debian
https://salsa.debian.org/games-team/heroes/-/blob/master/debian/patches/single-declaration.patch),
update to EAPI 7, minor cleanups.
Closes: https://bugs.gentoo.org/708794
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Azamat H. Hackimov <azamat.hackimov@gmail.com>
Add patch to add a missing header and packed attributes for structures
[https://salsa.debian.org/games-team/heroes/-/blob/master/debian/patches/compilation-fixes.patch]
Closes: https://github.com/gentoo/gentoo/pull/16116
Signed-off-by: Stefan Strogin <steils@gentoo.org>
Diffstat (limited to 'games-action/heroes')
-rw-r--r-- | games-action/heroes/files/heroes-0.21-compilation.patch | 48 | ||||
-rw-r--r-- | games-action/heroes/files/heroes-0.21-cvs-segfault-fix.patch (renamed from games-action/heroes/files/0.21-cvs-segfault-fix.patch) | 0 | ||||
-rw-r--r-- | games-action/heroes/files/heroes-0.21-gcc10.patch | 16 | ||||
-rw-r--r-- | games-action/heroes/heroes-0.21-r2.ebuild | 42 |
4 files changed, 89 insertions, 17 deletions
diff --git a/games-action/heroes/files/heroes-0.21-compilation.patch b/games-action/heroes/files/heroes-0.21-compilation.patch new file mode 100644 index 000000000000..e972953093c3 --- /dev/null +++ b/games-action/heroes/files/heroes-0.21-compilation.patch @@ -0,0 +1,48 @@ +Description: GCC 6 compilation fixes +Author: Stephen Kitt <skitt@debian.org> + +Add a missing header. +Propagate packed attributes as necessary. + +--- a/lib/xstrduplwr.c ++++ b/lib/xstrduplwr.c +@@ -25,6 +25,7 @@ + + #include <sys/types.h> + #include <ctype.h> ++#include <string.h> + + #include "xalloc.h" + #include "xstrduplwr.h" +--- a/src/pcx.h ++++ b/src/pcx.h +@@ -23,7 +23,7 @@ + + #include "video.h" + +-typedef struct pcx_header_type ++typedef struct ATTRIBUTE_PACKED pcx_header_type + { + a_u8 signature; + a_u8 version; +@@ -39,9 +39,9 @@ + a_u16 palette_kind; + a_u8 rien[58]; + } +-a_pcx_header ATTRIBUTE_PACKED; ++a_pcx_header; + +-typedef struct ++typedef struct ATTRIBUTE_PACKED + { + a_u8 r, g, b; + } +@@ -54,7 +54,7 @@ + } + a_palette; + +-typedef struct img_type ++typedef struct ATTRIBUTE_PACKED img_type + { + a_pcx_header header; + a_palette palette; diff --git a/games-action/heroes/files/0.21-cvs-segfault-fix.patch b/games-action/heroes/files/heroes-0.21-cvs-segfault-fix.patch index 689fdeea8a6c..689fdeea8a6c 100644 --- a/games-action/heroes/files/0.21-cvs-segfault-fix.patch +++ b/games-action/heroes/files/heroes-0.21-cvs-segfault-fix.patch diff --git a/games-action/heroes/files/heroes-0.21-gcc10.patch b/games-action/heroes/files/heroes-0.21-gcc10.patch new file mode 100644 index 000000000000..b806e3e88784 --- /dev/null +++ b/games-action/heroes/files/heroes-0.21-gcc10.patch @@ -0,0 +1,16 @@ +Descriptions: Ensure variables are only declared once +Author: Stephen Kitt <skitt@debian.org> + +--- a/src/persona.h ++++ b/src/persona.h +@@ -28,8 +28,8 @@ + * difference only if the program has a sgid or suid bit. + */ + +-bool keep_sgid; /* Whether we should keep the */ +-bool keep_suid; /* SGID or SUID priviledge. */ ++extern bool keep_sgid; /* Whether we should keep the */ ++extern bool keep_suid; /* SGID or SUID priviledge. */ + + /* Get information about the current persona, + and switch to the user persona. */ diff --git a/games-action/heroes/heroes-0.21-r2.ebuild b/games-action/heroes/heroes-0.21-r2.ebuild index 5ab9018ee3d1..9e7f8d9fcc0d 100644 --- a/games-action/heroes/heroes-0.21-r2.ebuild +++ b/games-action/heroes/heroes-0.21-r2.ebuild @@ -1,8 +1,9 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 -inherit eutils autotools +EAPI=7 + +inherit autotools data_ver=1.5 snd_trk_ver=1.0 @@ -21,11 +22,17 @@ KEYWORDS="~amd64 ~x86" IUSE="ggi nls sdl" RESTRICT="test" -RDEPEND=" - ggi? ( media-libs/libggi media-libs/libgii media-libs/libmikmod ) +REQUIRED_USE="^^ ( ggi sdl )" +RDEPEND="ggi? ( + media-libs/libggi + media-libs/libgii + media-libs/libmikmod + ) nls? ( virtual/libintl ) - sdl? ( media-libs/libsdl media-libs/sdl-mixer ) - !sdl? ( !ggi? ( media-libs/libsdl media-libs/sdl-mixer ) )" + sdl? ( + media-libs/libsdl + media-libs/sdl-mixer + )" DEPEND="${RDEPEND} nls? ( sys-devel/gettext )" @@ -34,7 +41,9 @@ PATCHES=( "${FILESDIR}/${P}"-automake-1.12.patch "${FILESDIR}/${P}"-gcc4.patch "${FILESDIR}/${P}"-underlink.patch - "${FILESDIR}/${PV}"-cvs-segfault-fix.patch + "${FILESDIR}/${P}"-cvs-segfault-fix.patch + "${FILESDIR}/${P}"-compilation.patch + "${FILESDIR}/${P}"-gcc10.patch ) src_prepare() { @@ -45,13 +54,13 @@ src_prepare() { } src_configure() { - local myconf - - if use sdl || ! use ggi ; then - myconf="${myconf} --with-sdl --with-sdl-mixer" - else - myconf="${myconf} --with-ggi --with-mikmod" - fi + local myconf=( + $(use_with sdl) + $(use_with sdl sdl-mixer) + $(use_with ggi) + $(use_with ggi mikmod) + $(use_enable nls) + ) local pkg for pkg in ${A//.tar.bz2} ; do @@ -59,8 +68,7 @@ src_configure() { econf \ --disable-heroes-debug \ --disable-optimizations \ - $(use_enable nls) \ - ${myconf} + "${myconf[@]}" done } |