summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2013-01-03 20:50:43 +0000
committerMike Frysinger <vapier@gentoo.org>2013-01-03 20:50:43 +0000
commiteced85bf58f1aceb320592cc5f3ebbe36c35626e (patch)
treeccb4cff50858fe4155a40a9581268efbcaacbee1 /sys-devel
parentRestricting to all python-3 versions (diff)
downloadgentoo-2-eced85bf58f1aceb320592cc5f3ebbe36c35626e.tar.gz
gentoo-2-eced85bf58f1aceb320592cc5f3ebbe36c35626e.tar.bz2
gentoo-2-eced85bf58f1aceb320592cc5f3ebbe36c35626e.zip
Ignore __restrict__ field w/patch from ChromiumOS.
(Portage version: 2.2.0_alpha144/cvs/Linux x86_64, signed Manifest commit with key FB7C4156)
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/smatch/ChangeLog10
-rw-r--r--sys-devel/smatch/files/smatch-1.57-restrict.patch14
-rw-r--r--sys-devel/smatch/smatch-1.57-r1.ebuild55
3 files changed, 77 insertions, 2 deletions
diff --git a/sys-devel/smatch/ChangeLog b/sys-devel/smatch/ChangeLog
index 32a3ff188a41..208bc9292473 100644
--- a/sys-devel/smatch/ChangeLog
+++ b/sys-devel/smatch/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for sys-devel/smatch
-# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/smatch/ChangeLog,v 1.3 2012/12/20 02:46:28 vapier Exp $
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/smatch/ChangeLog,v 1.4 2013/01/03 20:50:43 vapier Exp $
+
+*smatch-1.57-r1 (03 Jan 2013)
+
+ 03 Jan 2013; Mike Frysinger <vapier@gentoo.org>
+ +files/smatch-1.57-restrict.patch, +smatch-1.57-r1.ebuild:
+ Ignore __restrict__ field w/patch from ChromiumOS.
*smatch-1.57 (20 Dec 2012)
diff --git a/sys-devel/smatch/files/smatch-1.57-restrict.patch b/sys-devel/smatch/files/smatch-1.57-restrict.patch
new file mode 100644
index 000000000000..2f0dc98d496a
--- /dev/null
+++ b/sys-devel/smatch/files/smatch-1.57-restrict.patch
@@ -0,0 +1,14 @@
+send upstream already
+
+diff --git a/parse.c b/parse.c
+index 5dd9a06..bf5894d 100644
+--- a/parse.c
++++ b/parse.c
+@@ -419,6 +419,7 @@ static struct init_keyword {
+ /* Ignored for now.. */
+ { "restrict", NS_TYPEDEF, .op = &restrict_op},
+ { "__restrict", NS_TYPEDEF, .op = &restrict_op},
++ { "__restrict__", NS_TYPEDEF, .op = &restrict_op},
+
+ /* Storage class */
+ { "auto", NS_TYPEDEF, .op = &auto_op },
diff --git a/sys-devel/smatch/smatch-1.57-r1.ebuild b/sys-devel/smatch/smatch-1.57-r1.ebuild
new file mode 100644
index 000000000000..380532973af2
--- /dev/null
+++ b/sys-devel/smatch/smatch-1.57-r1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/smatch/smatch-1.57-r1.ebuild,v 1.1 2013/01/03 20:50:43 vapier Exp $
+
+EAPI="4"
+
+inherit multilib toolchain-funcs eutils
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="git://repo.or.cz/${PN}.git
+ http://repo.or.cz/r/${PN}.git"
+ inherit git-2
+fi
+
+DESCRIPTION="static analysis tool for C"
+HOMEPAGE="http://smatch.sourceforge.net/"
+
+if [[ ${PV} == "9999" ]] ; then
+ SRC_URI=""
+ #KEYWORDS=""
+else
+ # The repo.or.cz site does not produce stable tarballs,
+ # so we have to cache our own copy of the snapshot.
+ #SRC_URI="http://repo.or.cz/w/smatch.git/snapshot/${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI="mirror://gentoo/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+fi
+
+LICENSE="OSL-1.1"
+SLOT="0"
+IUSE=""
+
+RDEPEND="dev-db/sqlite"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${PN}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-restrict.patch
+ sed -i \
+ -e '/^PREFIX=/s:=.*:=/usr:' \
+ -e '/^CFLAGS =/{s:=:+=:;s:-O2 -finline-functions:${CPPFLAGS}:}' \
+ Makefile || die
+}
+
+src_compile() {
+ emake PREFIX=/usr V=1 CC="$(tc-getCC)" smatch
+}
+
+src_install() {
+ # default install target installs a lot of sparse cruft
+ dobin smatch
+ insinto /usr/share/smatch/smatch_data
+ doins smatch_data/*
+ dodoc FAQ README
+}