Gentoo Archives: gentoo-commits

From: Sergei Trofimovich <slyfox@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-libs/aalib/files/, media-libs/aalib/
Date: Fri, 23 Dec 2016 18:57:34
Message-Id: 1482147951.55824978cb498c1922451e1d2d8e155d7c0a5a27.slyfox@gentoo
1 commit: 55824978cb498c1922451e1d2d8e155d7c0a5a27
2 Author: tharvik <tharvik <AT> users <DOT> noreply <DOT> github <DOT> com>
3 AuthorDate: Thu Dec 8 11:30:49 2016 +0000
4 Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
5 CommitDate: Mon Dec 19 11:45:51 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=55824978
7
8 media-libs/aalib: revbump to fix undefined behavior
9
10 Package-Manager: portage-2.3.0
11
12 media-libs/aalib/aalib-1.4_rc5-r7.ebuild | 69 ++++++++++++++++++++++
13 .../aalib/files/aalib-1.4_rc6-key-down-OOB.patch | 23 ++++++++
14 2 files changed, 92 insertions(+)
15
16 diff --git a/media-libs/aalib/aalib-1.4_rc5-r7.ebuild b/media-libs/aalib/aalib-1.4_rc5-r7.ebuild
17 new file mode 100644
18 index 00000000..b0d8e3d
19 --- /dev/null
20 +++ b/media-libs/aalib/aalib-1.4_rc5-r7.ebuild
21 @@ -0,0 +1,69 @@
22 +# Copyright 1999-2016 Gentoo Foundation
23 +# Distributed under the terms of the GNU General Public License v2
24 +# $Id$
25 +
26 +EAPI=5
27 +
28 +inherit autotools-multilib eutils toolchain-funcs
29 +
30 +MY_P="${P/_/}"
31 +S="${WORKDIR}/${PN}-1.4.0"
32 +
33 +DESCRIPTION="A ASCII-Graphics Library"
34 +HOMEPAGE="http://aa-project.sourceforge.net/aalib/"
35 +SRC_URI="mirror://sourceforge/aa-project/${MY_P}.tar.gz"
36 +
37 +LICENSE="GPL-2"
38 +SLOT="0"
39 +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
40 +IUSE="X slang gpm static-libs"
41 +
42 +RDEPEND="
43 + X? ( >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] )
44 + gpm? ( >=sys-libs/gpm-1.20.7-r2[${MULTILIB_USEDEP}] )
45 + slang? ( >=sys-libs/slang-2.2.4-r1[${MULTILIB_USEDEP}] )
46 + >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}]
47 +"
48 +DEPEND="${RDEPEND}
49 + virtual/pkgconfig
50 + X? ( x11-proto/xproto )
51 +"
52 +
53 +DOCS="ANNOUNCE AUTHORS ChangeLog NEWS README*"
54 +
55 +src_prepare() {
56 + epatch "${FILESDIR}"/${PN}-1.4_rc4-gentoo.patch
57 + epatch "${FILESDIR}"/${PN}-1.4_rc4-m4.patch
58 + epatch "${FILESDIR}"/${PN}-1.4_rc5-fix-protos.patch #224267
59 + epatch "${FILESDIR}"/${PN}-1.4_rc5-fix-aarender.patch #214142
60 + epatch "${FILESDIR}"/${PN}-1.4_rc5-tinfo.patch #468566
61 + epatch "${FILESDIR}"/${PN}-1.4_rc6-key-down-OOB.patch
62 +
63 + sed -i -e 's:#include <malloc.h>:#include <stdlib.h>:g' "${S}"/src/*.c
64 +
65 + # Fix bug #165617.
66 + use gpm || sed -i \
67 + 's/gpm_mousedriver_test=yes/gpm_mousedriver_test=no/' "${S}/configure.in"
68 +
69 + #467988 automake-1.13
70 + mv configure.{in,ac} || die
71 + sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.ac || die
72 +
73 + eautoreconf
74 +}
75 +
76 +src_configure() {
77 + local myeconfargs=(
78 + $(use_with slang slang-driver)
79 + $(use_with X x11-driver)
80 + $(use_enable static-libs static)
81 + )
82 +
83 + PKG_CONFIG=$(tc-getPKG_CONFIG) \
84 + autotools-multilib_src_configure
85 +}
86 +
87 +src_install() {
88 + autotools-multilib_src_install
89 + use static-libs || prune_libtool_files --all
90 +}
91
92 diff --git a/media-libs/aalib/files/aalib-1.4_rc6-key-down-OOB.patch b/media-libs/aalib/files/aalib-1.4_rc6-key-down-OOB.patch
93 new file mode 100644
94 index 00000000..8078aa5
95 --- /dev/null
96 +++ b/media-libs/aalib/files/aalib-1.4_rc6-key-down-OOB.patch
97 @@ -0,0 +1,23 @@
98 +diff -Naur a/src/aalinuxkbd.c b/src/aalinuxkbd.c
99 +--- a/src/aalinuxkbd.c 2016-12-19 12:40:26.660039735 +0100
100 ++++ b/src/aalinuxkbd.c 2016-12-19 12:42:21.692045971 +0100
101 +@@ -114,6 +114,7 @@
102 + static int vtswitch_allowed;
103 +
104 + static char key_down[128];
105 ++static size_t key_down_size = 128;
106 + static int closed = 1;
107 + static int mypid;
108 +
109 +@@ -165,10 +166,7 @@
110 +
111 + static void blank_key_down(void)
112 + {
113 +- int f;
114 +-
115 +- for (f = 0; f < NR_KEYS; f++)
116 +- key_down[f] = 0;
117 ++ memset(key_down, 0, key_down_size);
118 + }
119 +
120 +