public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/sparse/files/, sys-devel/sparse/
@ 2018-02-14 12:37 Jason Donenfeld
  0 siblings, 0 replies; only message in thread
From: Jason Donenfeld @ 2018-02-14 12:37 UTC (permalink / raw
  To: gentoo-commits

commit:     ae3c38350efab149e32d974d8642891f69f375a3
Author:     Jason A. Donenfeld <zx2c4 <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 14 12:32:43 2018 +0000
Commit:     Jason Donenfeld <zx2c4 <AT> gentoo <DOT> org>
CommitDate: Wed Feb 14 12:37:03 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ae3c3835

sys-devel/sparse: modernize

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sys-devel/sparse/Manifest                          |  4 +-
 sys-devel/sparse/files/sparse-0.4.3-gentoo.patch   | 49 ----------------
 .../files/sparse-0.5.1-cmdline-include.patch       | 66 ++++++++++++++++++++++
 sys-devel/sparse/metadata.xml                      |  4 ++
 sys-devel/sparse/sparse-0.4.3.ebuild               | 64 ---------------------
 sys-devel/sparse/sparse-0.4.4.ebuild               | 46 ---------------
 .../{sparse-0.5.0.ebuild => sparse-0.5.1.ebuild}   | 22 ++++----
 sys-devel/sparse/sparse-9999.ebuild                | 22 ++++----
 8 files changed, 93 insertions(+), 184 deletions(-)

diff --git a/sys-devel/sparse/Manifest b/sys-devel/sparse/Manifest
index e0c8eb16025..089768e1271 100644
--- a/sys-devel/sparse/Manifest
+++ b/sys-devel/sparse/Manifest
@@ -1,3 +1 @@
-DIST sparse-0.4.3.tar.bz2 172431 BLAKE2B 06864e372e676a5f0426612774f1df2d224e8e6a12b8f7edf7056225b19725e876196c12e4c92a9a2b64eb410c8a840f777b4df2ffb9945079f4903562fb0633 SHA512 ff3dbd3e28b1a95dc9d6abf9a4ffdfaa0f470047b8232bd50930839432ae66a2249adb861c880e8eef1a906b007fd7d1c1ef8683c48c763eb523aedc9e1df631
-DIST sparse-0.4.4.tar.bz2 174074 BLAKE2B d57c5ec6f837ef1fa8992b5ec21f467583888d9ac3b7699a73e6b8fa80046253cdc554a4c685c2d98474a18fee6fca26fa004d3afa74b18c8f58b05a2900d589 SHA512 5cd5e660ea863170e86f1abaa040434c43a5cc7e92560f1bcbcce9ce906ae7355c066168bfc1dcc551e41e4c0f864122be288ed69eb1c4cda8b7c0825b5b647f
-DIST sparse-0.5.0.tar.xz 187576 BLAKE2B c525ce2a11143cd2dbeaff3e8cb1eb66b1792a678946ce001f76ac9882cd54cce4d4c5ff740c12e0e54ca91a6a2dc57bc7682ff8653333014fcc382e662ba596 SHA512 0cb70a74034c4bc4d5340ab7d19288a438f4b6d0c4c63ac95d1f4cc3c5fdfe1370a27a607605a6f0c85ea6f371141c55abfdb4438d9e87b2d544fff5674f7ce4
+DIST sparse-0.5.1.tar.gz 278241 BLAKE2B 6004631c97e2a126d1e239aa1d8fcc540a92b3f63a6a2615f2f63b79a001495e8b27ffa7377c57b43227f3b50288be24cb4657c7801806f7c6d1d11b0f8c8ee9 SHA512 04a26e2b44d99e7402b5e8a8f61ecbd62adbc9c481a0c3c8e0ab2f9599d99f50679ce3f3d0c1ccfd6204c6ec5d9fa272f9fc4c4d21173897ebd592d14c6ee852

diff --git a/sys-devel/sparse/files/sparse-0.4.3-gentoo.patch b/sys-devel/sparse/files/sparse-0.4.3-gentoo.patch
deleted file mode 100644
index 6f46687d78b..00000000000
--- a/sys-devel/sparse/files/sparse-0.4.3-gentoo.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-diff --git a/Makefile b/Makefile
-index 74905df..1f2b2b6 100644
---- a/Makefile
-+++ b/Makefile
-@@ -4,7 +4,7 @@ OS = linux
- 
- 
- CC = gcc
--CFLAGS = -O2 -finline-functions -fno-strict-aliasing -g
-+CFLAGS ?= -O2 -finline-functions -fno-strict-aliasing -g
- CFLAGS += -Wall -Wwrite-strings
- LDFLAGS += -g
- AR = ar
-@@ -21,7 +21,8 @@ HAVE_GCC_DEP:=$(shell touch .gcc-test.c && 				\
- 		echo 'yes'; rm -f .gcc-test.d .gcc-test.o .gcc-test.c)
- HAVE_GTK2:=$(shell pkg-config --exists gtk+-2.0 2>/dev/null && echo 'yes')
- 
--CFLAGS += -DGCC_BASE=\"$(shell $(CC) --print-file-name=)\"
-+GCC_BASE = $(shell $(CC) --print-file-name=)
-+CFLAGS += -DGCC_BASE=\"$(GCC_BASE)\"
- 
- ifeq ($(HAVE_GCC_DEP),yes)
- CFLAGS += -Wp,-MD,$(@D)/.$(@F).d
-@@ -113,7 +114,9 @@ SED_PC_CMD = 's|@version@|$(VERSION)|g;		\
- 
- all: $(PROGRAMS) sparse.pc
- 
--install: $(INST_PROGRAMS) $(LIBS) $(LIB_H) sparse.pc
-+all-installable: $(INST_PROGRAMS) $(LIBS) $(LIB_H) sparse.pc
-+
-+install: all-installable
- 	$(Q)install -d $(DESTDIR)$(BINDIR)
- 	$(Q)install -d $(DESTDIR)$(LIBDIR)
- 	$(Q)install -d $(DESTDIR)$(MAN1DIR)
-diff --git a/parse.h b/parse.h
-index 6b21e23..b26bd03 100644
---- a/parse.h
-+++ b/parse.h
-@@ -35,10 +35,6 @@ struct statement {
- 		struct /* declaration */ {
- 			struct symbol_list *declaration;
- 		};
--		struct /* label_arg */ {
--			struct symbol *label;
--			struct statement *label_statement;
--		};
- 		struct {
- 			struct expression *expression;
- 			struct expression *context;

diff --git a/sys-devel/sparse/files/sparse-0.5.1-cmdline-include.patch b/sys-devel/sparse/files/sparse-0.5.1-cmdline-include.patch
new file mode 100644
index 00000000000..5ea763001a0
--- /dev/null
+++ b/sys-devel/sparse/files/sparse-0.5.1-cmdline-include.patch
@@ -0,0 +1,66 @@
+diff --git a/validation/include-eval.c b/validation/include-eval.c
+new file mode 100644
+index 000000000..bf9bf63fe
+--- /dev/null
++++ b/validation/include-eval.c
+@@ -0,0 +1,7 @@
++/* nothing */
++
++/*
++ * check-name: include-eval.c
++ * check-command: sparse -include ./include-eval.inc $file
++ * check-known-to-fail
++ */
+diff --git a/validation/include-eval.inc b/validation/include-eval.inc
+new file mode 100644
+index 000000000..e2561ca41
+--- /dev/null
++++ b/validation/include-eval.inc
+@@ -0,0 +1,12 @@
++typedef unsigned long long_t;
++
++inline
++static unsigned int ok(void)
++{
++	return sizeof(long_t);
++}
++
++static unsigned int ko(void)
++{
++	return sizeof(long_t);
++}
+diff --git a/lib.c b/lib.c
+index 4602cf85d..b255fec14 100644
+--- a/lib.c
++++ b/lib.c
+@@ -1351,6 +1351,20 @@ struct symbol_list *sparse_initialize(int argc, char **argv, struct string_list
+ 		 */
+ 		protect_token_alloc();
+ 	}
++	/*
++	 * Evaluate the complete symbol list
++	 * Note: This is not needed for normal cases.
++	 *	 These symbols should only be predefined defines and
++	 *	 declaratons which will be evaluated later, when needed.
++	 *	 This is also the case when a file is directly included via
++	 *	 '-include <file>' on the command line *AND* the file only
++	 *	 contains defines, declarations and inline definitions.
++	 *	 However, in the rare cases where the given file should
++	 *	 contain some definitions, these will never be evaluated
++	 *	 and thus won't be able to be linearized correctly.
++	 *	 Hence the evaluate_symbol_list() here under.
++	 */
++	evaluate_symbol_list(list);
+ 	return list;
+ }
+ 
+diff --git a/validation/include-eval.c b/validation/include-eval.c
+index bf9bf63fe..1a91dab84 100644
+--- a/validation/include-eval.c
++++ b/validation/include-eval.c
+@@ -3,5 +3,4 @@
+ /*
+  * check-name: include-eval.c
+  * check-command: sparse -include ./include-eval.inc $file
+- * check-known-to-fail
+  */

diff --git a/sys-devel/sparse/metadata.xml b/sys-devel/sparse/metadata.xml
index 58fef00ea44..ee8e0692a0c 100644
--- a/sys-devel/sparse/metadata.xml
+++ b/sys-devel/sparse/metadata.xml
@@ -1,6 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
+	<maintainer type="person">
+		<email>zx2c4@gentoo.org</email>
+		<name>Jason A. Donenfeld</name>
+	</maintainer>
 	<maintainer type="project">
 		<email>toolchain@gentoo.org</email>
 		<name>Gentoo Toolchain Project</name>

diff --git a/sys-devel/sparse/sparse-0.4.3.ebuild b/sys-devel/sparse/sparse-0.4.3.ebuild
deleted file mode 100644
index c351211de29..00000000000
--- a/sys-devel/sparse/sparse-0.4.3.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="2"
-
-inherit eutils multilib flag-o-matic toolchain-funcs
-if [[ ${PV} == "9999" ]] ; then
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/devel/sparse/sparse.git"
-	inherit git
-fi
-
-DESCRIPTION="C semantic parser"
-HOMEPAGE="https://sparse.wiki.kernel.org/index.php/Main_Page"
-
-if [[ ${PV} == "9999" ]] ; then
-	SRC_URI=""
-	#KEYWORDS=""
-else
-	SRC_URI="mirror://kernel/software/devel/sparse/dist/${P}.tar.bz2"
-	KEYWORDS="amd64 arm hppa ia64 ppc ppc64 s390 sh sparc x86"
-fi
-
-LICENSE="OSL-1.1"
-SLOT="0"
-IUSE="gtk xml test"
-
-RDEPEND="gtk? ( x11-libs/gtk+:2 )
-	xml? ( dev-libs/libxml2 )"
-DEPEND="${RDEPEND}
-	gtk? ( virtual/pkgconfig )
-	xml? ( virtual/pkgconfig )"
-
-src_prepare() {
-	# https://cgit.gentoo.org/proj/sparse.git
-	epatch "${FILESDIR}"/${P}-gentoo.patch
-}
-
-mymake() {
-	usex() { use $1 && echo ${2:-yes} || echo ${3:-no} ; }
-
-	emake \
-		V=1 \
-		CC="$(tc-getCC)" \
-		GCC_BASE="$(gcc-config -L | cut -d : -f1)" \
-		HAVE_LIBXML=$(usex xml) \
-		HAVE_GTK2=$(usex gtk) \
-		PREFIX=/usr \
-		LIBDIR="/usr/$(get_libdir)" \
-		DESTDIR="${D}" \
-		"$@" \
-		|| die
-}
-
-src_compile() {
-	append-flags -fno-strict-aliasing
-
-	mymake \
-		$(use test && echo all) all-installable
-}
-
-src_install() {
-	mymake install
-	dodoc FAQ README
-}

diff --git a/sys-devel/sparse/sparse-0.4.4.ebuild b/sys-devel/sparse/sparse-0.4.4.ebuild
deleted file mode 100644
index 51173588d3c..00000000000
--- a/sys-devel/sparse/sparse-0.4.4.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="4"
-
-inherit eutils multilib toolchain-funcs
-if [[ ${PV} == "9999" ]] ; then
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/devel/sparse/sparse.git"
-	inherit git-2
-fi
-
-DESCRIPTION="C semantic parser"
-HOMEPAGE="https://sparse.wiki.kernel.org/index.php/Main_Page"
-
-if [[ ${PV} == "9999" ]] ; then
-	SRC_URI=""
-	#KEYWORDS=""
-else
-	SRC_URI="mirror://kernel/software/devel/sparse/dist/${P}.tar.bz2"
-	KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-LICENSE="OSL-1.1"
-SLOT="0"
-IUSE="gtk test xml"
-
-RDEPEND="gtk? ( x11-libs/gtk+:2 )
-	xml? ( dev-libs/libxml2 )"
-DEPEND="${RDEPEND}
-	gtk? ( virtual/pkgconfig )
-	xml? ( virtual/pkgconfig )"
-
-src_prepare() {
-	tc-export AR CC PKG_CONFIG
-	sed -i \
-		-e '/^PREFIX=/s:=.*:=/usr:' \
-		-e "/^LIBDIR=/s:/lib:/$(get_libdir):" \
-		-e '/^CFLAGS =/{s:=:+= $(CPPFLAGS):;s:-O2 -finline-functions::}' \
-		-e "s:pkg-config:${PKG_CONFIG}:" \
-		Makefile || die
-	export MAKEOPTS+=" V=1 AR=${AR} CC=${CC} HAVE_GTK2=$(usex gtk) HAVE_LIBXML=$(usex xml)"
-}
-
-src_compile() {
-	emake $(usex test all all-installable)
-}

diff --git a/sys-devel/sparse/sparse-0.5.0.ebuild b/sys-devel/sparse/sparse-0.5.1.ebuild
similarity index 67%
rename from sys-devel/sparse/sparse-0.5.0.ebuild
rename to sys-devel/sparse/sparse-0.5.1.ebuild
index 8771de72828..aad07d85db7 100644
--- a/sys-devel/sparse/sparse-0.5.0.ebuild
+++ b/sys-devel/sparse/sparse-0.5.1.ebuild
@@ -1,26 +1,23 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="4"
+EAPI=6
 
 inherit eutils multilib toolchain-funcs
-if [[ ${PV} == "9999" ]] ; then
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/devel/sparse/sparse.git"
-	inherit git-2
-fi
 
 DESCRIPTION="C semantic parser"
 HOMEPAGE="https://sparse.wiki.kernel.org/index.php/Main_Page"
 
 if [[ ${PV} == "9999" ]] ; then
-	SRC_URI=""
-	#KEYWORDS=""
+	inherit git-r3
+	EGIT_REPO_URI="https://git.kernel.org/pub/scm/devel/${PN}/${PN}.git"
+	KEYWORDS=""
 else
-	SRC_URI="mirror://kernel/software/devel/sparse/dist/${P}.tar.xz"
+	SRC_URI="https://git.kernel.org/pub/scm/devel/${PN}/${PN}.git/snapshot/${P}.tar.gz"
 	KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
 fi
 
-LICENSE="OSL-1.1"
+LICENSE="MIT"
 SLOT="0"
 IUSE="gtk llvm test xml"
 
@@ -31,15 +28,18 @@ DEPEND="${RDEPEND}
 	gtk? ( virtual/pkgconfig )
 	xml? ( virtual/pkgconfig )"
 
+PATCHES=( "${FILESDIR}/${PN}-0.5.1-cmdline-include.patch" )
+
 src_prepare() {
 	tc-export AR CC PKG_CONFIG
 	sed -i \
 		-e '/^PREFIX=/s:=.*:=/usr:' \
 		-e "/^LIBDIR=/s:/lib:/$(get_libdir):" \
-		-e '/^CFLAGS =/{s:=:+= $(CPPFLAGS):;s:-O2 -finline-functions::}' \
+		-e '/^COMMON_CFLAGS =/{s:=:= $(CPPFLAGS):;s:-O2 -finline-functions -fno-strict-aliasing -g:-fno-strict-aliasing:}' \
 		-e "s:pkg-config:${PKG_CONFIG}:" \
 		Makefile || die
 	export MAKEOPTS+=" V=1 AR=${AR} CC=${CC} HAVE_GTK2=$(usex gtk) HAVE_LLVM=$(usex llvm) HAVE_LIBXML=$(usex xml)"
+	default
 }
 
 src_compile() {

diff --git a/sys-devel/sparse/sparse-9999.ebuild b/sys-devel/sparse/sparse-9999.ebuild
index 8771de72828..aad07d85db7 100644
--- a/sys-devel/sparse/sparse-9999.ebuild
+++ b/sys-devel/sparse/sparse-9999.ebuild
@@ -1,26 +1,23 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="4"
+EAPI=6
 
 inherit eutils multilib toolchain-funcs
-if [[ ${PV} == "9999" ]] ; then
-	EGIT_REPO_URI="git://git.kernel.org/pub/scm/devel/sparse/sparse.git"
-	inherit git-2
-fi
 
 DESCRIPTION="C semantic parser"
 HOMEPAGE="https://sparse.wiki.kernel.org/index.php/Main_Page"
 
 if [[ ${PV} == "9999" ]] ; then
-	SRC_URI=""
-	#KEYWORDS=""
+	inherit git-r3
+	EGIT_REPO_URI="https://git.kernel.org/pub/scm/devel/${PN}/${PN}.git"
+	KEYWORDS=""
 else
-	SRC_URI="mirror://kernel/software/devel/sparse/dist/${P}.tar.xz"
+	SRC_URI="https://git.kernel.org/pub/scm/devel/${PN}/${PN}.git/snapshot/${P}.tar.gz"
 	KEYWORDS="~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
 fi
 
-LICENSE="OSL-1.1"
+LICENSE="MIT"
 SLOT="0"
 IUSE="gtk llvm test xml"
 
@@ -31,15 +28,18 @@ DEPEND="${RDEPEND}
 	gtk? ( virtual/pkgconfig )
 	xml? ( virtual/pkgconfig )"
 
+PATCHES=( "${FILESDIR}/${PN}-0.5.1-cmdline-include.patch" )
+
 src_prepare() {
 	tc-export AR CC PKG_CONFIG
 	sed -i \
 		-e '/^PREFIX=/s:=.*:=/usr:' \
 		-e "/^LIBDIR=/s:/lib:/$(get_libdir):" \
-		-e '/^CFLAGS =/{s:=:+= $(CPPFLAGS):;s:-O2 -finline-functions::}' \
+		-e '/^COMMON_CFLAGS =/{s:=:= $(CPPFLAGS):;s:-O2 -finline-functions -fno-strict-aliasing -g:-fno-strict-aliasing:}' \
 		-e "s:pkg-config:${PKG_CONFIG}:" \
 		Makefile || die
 	export MAKEOPTS+=" V=1 AR=${AR} CC=${CC} HAVE_GTK2=$(usex gtk) HAVE_LLVM=$(usex llvm) HAVE_LIBXML=$(usex xml)"
+	default
 }
 
 src_compile() {


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2018-02-14 16:15 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-14 12:37 [gentoo-commits] repo/gentoo:master commit in: sys-devel/sparse/files/, sys-devel/sparse/ Jason Donenfeld

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox