summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Junghans <ottxor@gentoo.org>2013-02-07 16:57:28 +0000
committerChristoph Junghans <ottxor@gentoo.org>2013-02-07 16:57:28 +0000
commitb06b3b69061441e8a725e44c66a0887de3de4903 (patch)
tree4111f22afe134c80c4009ccced6864e143a6adfc /sys-apps/nawk
parentTypo fix for loongson-mmi, bug 455966. (diff)
downloadgentoo-2-b06b3b69061441e8a725e44c66a0887de3de4903.tar.gz
gentoo-2-b06b3b69061441e8a725e44c66a0887de3de4903.tar.bz2
gentoo-2-b06b3b69061441e8a725e44c66a0887de3de4903.zip
fix parallel build problem, which renders nawk useless (bug #455786)
(Portage version: 2.2.0_alpha161/cvs/Linux x86_64, signed Manifest commit with key C2000586)
Diffstat (limited to 'sys-apps/nawk')
-rw-r--r--sys-apps/nawk/ChangeLog9
-rw-r--r--sys-apps/nawk/files/nawk-20121220-parallel-build.patch61
-rw-r--r--sys-apps/nawk/nawk-20110810-r1.ebuild44
-rw-r--r--sys-apps/nawk/nawk-20121220-r2.ebuild (renamed from sys-apps/nawk/nawk-20121220-r1.ebuild)9
4 files changed, 76 insertions, 47 deletions
diff --git a/sys-apps/nawk/ChangeLog b/sys-apps/nawk/ChangeLog
index f508da43eb40..3e7cfb1535a8 100644
--- a/sys-apps/nawk/ChangeLog
+++ b/sys-apps/nawk/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sys-apps/nawk
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/nawk/ChangeLog,v 1.8 2013/02/06 03:29:55 ottxor Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/nawk/ChangeLog,v 1.9 2013/02/07 16:57:28 ottxor Exp $
+
+*nawk-20121220-r2 (07 Feb 2013)
+
+ 07 Feb 2013; Christoph Junghans <ottxor@gentoo.org>
+ +files/nawk-20121220-parallel-build.patch, +nawk-20121220-r2.ebuild,
+ -nawk-20110810-r1.ebuild, -nawk-20121220-r1.ebuild:
+ fix parallel build problem, which renders nawk useless (bug #455786)
*nawk-20121220-r1 (06 Feb 2013)
diff --git a/sys-apps/nawk/files/nawk-20121220-parallel-build.patch b/sys-apps/nawk/files/nawk-20121220-parallel-build.patch
new file mode 100644
index 000000000000..45a3e5624a40
--- /dev/null
+++ b/sys-apps/nawk/files/nawk-20121220-parallel-build.patch
@@ -0,0 +1,61 @@
+--- makefile.orig 2013-02-06 10:26:36.452829647 -0700
++++ makefile 2013-02-07 09:12:13.293898947 -0700
+@@ -44,7 +44,7 @@
+ LISTING = awk.h proto.h awkgram.y lex.c b.c main.c maketab.c parse.c \
+ lib.c run.c tran.c
+
+-SHIP = README FIXES $(SOURCE) ytab[ch].bak makefile \
++SHIP = README FIXES $(SOURCE) makefile \
+ awk.1
+
+ a.out: ytab.o $(OFILES)
+@@ -52,11 +52,15 @@
+
+ $(OFILES): awk.h ytab.h proto.h
+
+-ytab.o: awk.h proto.h awkgram.y
++#Clear dependency for parallel build: (make -j)
++#YACC generated y.tab.c and y.tab.h at the same time
++#this needs to be a static pattern rules otherwise multiple target
++#are mapped onto multiple executions of yacc, which overwrite
++#each others outputs.
++y%.c y%.h: awk.h proto.h awkgram.y
+ $(YACC) $(YFLAGS) awkgram.y
+- mv y.tab.c ytab.c
+- mv y.tab.h ytab.h
+- $(CC) $(CFLAGS) -c ytab.c
++ mv y.$*.c y$*.c
++ mv y.$*.h y$*.h
+
+ proctab.c: maketab
+ ./maketab >proctab.c
+@@ -64,23 +68,23 @@
+ maketab: ytab.h maketab.c
+ $(CC) $(CFLAGS) maketab.c -o maketab
+
+-bundle:
++bundle: $(SHIP)
+ @cp ytab.h ytabh.bak
+ @cp ytab.c ytabc.bak
+- @bundle $(SHIP)
++ @bundle $(SHIP) ytabh.bak ytabc.bak
+
+-tar:
++tar: $(SHIP)
+ @cp ytab.h ytabh.bak
+ @cp ytab.c ytabc.bak
+ @bundle $(SHIP) >awk.shar
+- @tar cf awk.tar $(SHIP)
++ @tar cf awk.tar $(SHIP) ytabh.bak ytabc.bak
+ gzip awk.tar
+ ls -l awk.tar.gz
+- @zip awk.zip $(SHIP)
++ @zip awk.zip $(SHIP) ytabh.bak ytabc.bak
+ ls -l awk.zip
+
+ names:
+ @echo $(LISTING)
+
+ clean:
+- rm -f a.out *.o *.obj maketab maketab.exe *.bb *.bbg *.da *.gcov *.gcno *.gcda # proctab.c
++ rm -f a.out *.o *.obj maketab maketab.exe *.bb *.bbg *.da *.gcov *.gcno *.gcda ytab.c ytab.h # proctab.c
diff --git a/sys-apps/nawk/nawk-20110810-r1.ebuild b/sys-apps/nawk/nawk-20110810-r1.ebuild
deleted file mode 100644
index 8e5867154f87..000000000000
--- a/sys-apps/nawk/nawk-20110810-r1.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/nawk/nawk-20110810-r1.ebuild,v 1.4 2013/02/06 03:19:35 ottxor Exp $
-
-EAPI="4"
-
-inherit toolchain-funcs
-
-DESCRIPTION="Brian Kernighan's pattern scanning and processing language"
-HOMEPAGE="http://cm.bell-labs.com/cm/cs/awkbook/index.html"
-SRC_URI="mirror://gentoo.org/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~x86-fbsd ~amd64-linux ~x86-macos"
-IUSE=""
-
-RDEPEND="app-admin/eselect-awk"
-DEPEND="${RDEPEND}
- virtual/yacc"
-
-S="${WORKDIR}"
-
-src_compile() {
- emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" ALLOC="${LDFLAGS}" YACC=$(type -p yacc)
-}
-
-src_install() {
- newbin a.out "${PN}"
- sed -e 's/awk/nawk/g' \
- -e 's/AWK/NAWK/g' \
- -e 's/Awk/Nawk/g' \
- awk.1 > "${PN}".1 || die "manpage patch failed"
- doman "${PN}".1
- dodoc README FIXES
-}
-
-pkg_postinst() {
- eselect awk update ifunset
-}
-
-pkg_postrm() {
- eselect awk update ifunset
-}
diff --git a/sys-apps/nawk/nawk-20121220-r1.ebuild b/sys-apps/nawk/nawk-20121220-r2.ebuild
index 4547c7aa522c..a840deab0f5e 100644
--- a/sys-apps/nawk/nawk-20121220-r1.ebuild
+++ b/sys-apps/nawk/nawk-20121220-r2.ebuild
@@ -1,10 +1,10 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/nawk/nawk-20121220-r1.ebuild,v 1.1 2013/02/06 03:29:55 ottxor Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/nawk/nawk-20121220-r2.ebuild,v 1.1 2013/02/07 16:57:28 ottxor Exp $
EAPI="4"
-inherit toolchain-funcs
+inherit eutils toolchain-funcs
DESCRIPTION="Brian Kernighan's pattern scanning and processing language"
HOMEPAGE="http://cm.bell-labs.com/cm/cs/awkbook/index.html"
@@ -21,6 +21,11 @@ DEPEND="${RDEPEND}
S="${WORKDIR}"
+src_prepare() {
+ rm -f ytab.[hc]
+ epatch "${FILESDIR}/${P}"-parallel-build.patch
+}
+
src_compile() {
emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" CPPFLAGS=-DHAS_ISBLANK ALLOC="${LDFLAGS}" YACC=$(type -p yacc) YFLAGS="-d"
}