Wed Nov 5 12:29:04 2008 UTC ()
Fix segfaults on some sources using nested structs, unions and
(anonymous) bit fields.
Install nccstrip2.py (used by nccld).

>From Marko Schuetz in PR 39840.

Bump PKGREVISION.


(wiz)
diff -r1.1.1.1 -r1.2 pkgsrc/devel/ncc/Makefile
diff -r1.1.1.1 -r1.2 pkgsrc/devel/ncc/PLIST
diff -r1.1.1.1 -r1.2 pkgsrc/devel/ncc/distinfo
diff -r0 -r1.1 pkgsrc/devel/ncc/patches/patch-ae

cvs diff -r1.1.1.1 -r1.2 pkgsrc/devel/ncc/Makefile (expand / switch to unified diff)

--- pkgsrc/devel/ncc/Makefile 2008/10/20 07:52:26 1.1.1.1
+++ pkgsrc/devel/ncc/Makefile 2008/11/05 12:29:04 1.2
@@ -1,41 +1,45 @@ @@ -1,41 +1,45 @@
1# $NetBSD: Makefile,v 1.1.1.1 2008/10/20 07:52:26 wiz Exp $ 1# $NetBSD: Makefile,v 1.2 2008/11/05 12:29:04 wiz Exp $
2# 2#
3 3
4DISTNAME= ncc-2.8 4DISTNAME= ncc-2.8
 5PKGREVISION= 1
5CATEGORIES= devel 6CATEGORIES= devel
6MASTER_SITES= http://students.ceid.upatras.gr/~sxanth/ncc/ 7MASTER_SITES= http://students.ceid.upatras.gr/~sxanth/ncc/
7 8
8MAINTAINER= pkgsrc-users@NetBSD.org 9MAINTAINER= pkgsrc-users@NetBSD.org
9HOMEPAGE= http://students.ceid.upatras.gr/~sxanth/ncc/index.html 10HOMEPAGE= http://students.ceid.upatras.gr/~sxanth/ncc/index.html
10COMMENT= Compiler that produces program analysis information 11COMMENT= Compiler that produces program analysis information
11 12
12BUILD_TARGET= tout 13BUILD_TARGET= tout
13CFLAGS+= -DNOGNU='"${PREFIX}/share/ncc/nognu"' 14CFLAGS+= -DNOGNU='"${PREFIX}/share/ncc/nognu"'
14 15
15USE_LANGUAGES= c c++ 16USE_LANGUAGES= c c++
16 17
17SUBST_CLASSES+= prefix 18SUBST_CLASSES+= prefix
18SUBST_STAGE.prefix= pre-configure 19SUBST_STAGE.prefix= pre-configure
19SUBST_MESSAGE.prefix= Fixing hardcoded paths 20SUBST_MESSAGE.prefix= Fixing hardcoded paths
20SUBST_FILES.prefix= config.h 21SUBST_FILES.prefix= config.h
21SUBST_SED.prefix= -e 's,@PREFIX@,${PREFIX},g' 22SUBST_SED.prefix= -e 's,@PREFIX@,${PREFIX},g'
22 23
 24PYTHON_PATCH_SCRIPTS+= scripts/nccstrip2.py
23 25
24do-install: 26do-install:
25 ${INSTALL_PROGRAM} ${WRKSRC}/objdir/ncc ${PREFIX}/bin 27 ${INSTALL_PROGRAM} ${WRKSRC}/objdir/ncc ${PREFIX}/bin
 28 ${INSTALL_SCRIPT} ${WRKSRC}/scripts/nccstrip2.py ${PREFIX}/bin
26 ${LN} -s ncc ${PREFIX}/bin/nccar 29 ${LN} -s ncc ${PREFIX}/bin/nccar
27 ${LN} -s ncc ${PREFIX}/bin/nccc++ 30 ${LN} -s ncc ${PREFIX}/bin/nccc++
28 ${LN} -s ncc ${PREFIX}/bin/nccld 31 ${LN} -s ncc ${PREFIX}/bin/nccld
29 ${INSTALL_PROGRAM} ${WRKSRC}/nccnav/nccnav ${PREFIX}/bin 32 ${INSTALL_PROGRAM} ${WRKSRC}/nccnav/nccnav ${PREFIX}/bin
30 ${LN} -s nccnav ${PREFIX}/bin/nccnavi 33 ${LN} -s nccnav ${PREFIX}/bin/nccnavi
31 ${INSTALL_DATA_DIR} ${PREFIX}/share/ncc 34 ${INSTALL_DATA_DIR} ${PREFIX}/share/ncc
32 ${INSTALL_DATA} ${WRKSRC}/doc/nognu ${PREFIX}/share/ncc 35 ${INSTALL_DATA} ${WRKSRC}/doc/nognu ${PREFIX}/share/ncc
33 ${INSTALL_MAN} ${WRKSRC}/ncc.1 ${PREFIX}/${PKGMANDIR}/man1 36 ${INSTALL_MAN} ${WRKSRC}/ncc.1 ${PREFIX}/${PKGMANDIR}/man1
34 ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/ncc 37 ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/ncc
35 ${INSTALL_DATA} ${WRKSRC}/doc/KEYS.txt ${PREFIX}/share/doc/ncc 38 ${INSTALL_DATA} ${WRKSRC}/doc/KEYS.txt ${PREFIX}/share/doc/ncc
36 ${INSTALL_DATA} ${WRKSRC}/doc/TROUBLES ${PREFIX}/share/doc/ncc 39 ${INSTALL_DATA} ${WRKSRC}/doc/TROUBLES ${PREFIX}/share/doc/ncc
37 ${INSTALL_DATA} ${WRKSRC}/doc/hacking.* ${PREFIX}/share/doc/ncc 40 ${INSTALL_DATA} ${WRKSRC}/doc/hacking.* ${PREFIX}/share/doc/ncc
38 ${INSTALL_DATA} ${WRKSRC}/README ${PREFIX}/share/doc/ncc 41 ${INSTALL_DATA} ${WRKSRC}/README ${PREFIX}/share/doc/ncc
39 42
40.include "../../devel/ncurses/buildlink3.mk" 43.include "../../devel/ncurses/buildlink3.mk"
 44.include "../../lang/python/application.mk"
41.include "../../mk/bsd.pkg.mk" 45.include "../../mk/bsd.pkg.mk"

cvs diff -r1.1.1.1 -r1.2 pkgsrc/devel/ncc/PLIST (expand / switch to unified diff)

--- pkgsrc/devel/ncc/PLIST 2008/10/20 07:52:26 1.1.1.1
+++ pkgsrc/devel/ncc/PLIST 2008/11/05 12:29:04 1.2
@@ -1,20 +1,21 @@ @@ -1,20 +1,21 @@
1@comment $NetBSD: PLIST,v 1.1.1.1 2008/10/20 07:52:26 wiz Exp $ 1@comment $NetBSD: PLIST,v 1.2 2008/11/05 12:29:04 wiz Exp $
2bin/ncc 2bin/ncc
3bin/nccar 3bin/nccar
4bin/nccc++ 4bin/nccc++
5bin/nccld 5bin/nccld
6bin/nccnav 6bin/nccnav
7bin/nccnavi 7bin/nccnavi
 8bin/nccstrip2.py
8man/man1/ncc.1 9man/man1/ncc.1
9share/doc/ncc/KEYS.txt 10share/doc/ncc/KEYS.txt
10share/doc/ncc/README 11share/doc/ncc/README
11share/doc/ncc/TROUBLES 12share/doc/ncc/TROUBLES
12share/doc/ncc/hacking.BIND 13share/doc/ncc/hacking.BIND
13share/doc/ncc/hacking.GCC 14share/doc/ncc/hacking.GCC
14share/doc/ncc/hacking.GLIBC 15share/doc/ncc/hacking.GLIBC
15share/doc/ncc/hacking.LINUX-KERNEL 16share/doc/ncc/hacking.LINUX-KERNEL
16share/doc/ncc/hacking.QEMU 17share/doc/ncc/hacking.QEMU
17share/doc/ncc/hacking.README 18share/doc/ncc/hacking.README
18share/ncc/nognu 19share/ncc/nognu
19@dirrm share/ncc 20@dirrm share/ncc
20@dirrm share/doc/ncc 21@dirrm share/doc/ncc

cvs diff -r1.1.1.1 -r1.2 pkgsrc/devel/ncc/distinfo (expand / switch to unified diff)

--- pkgsrc/devel/ncc/distinfo 2008/10/20 07:52:26 1.1.1.1
+++ pkgsrc/devel/ncc/distinfo 2008/11/05 12:29:04 1.2
@@ -1,9 +1,10 @@ @@ -1,9 +1,10 @@
1$NetBSD: distinfo,v 1.1.1.1 2008/10/20 07:52:26 wiz Exp $ 1$NetBSD: distinfo,v 1.2 2008/11/05 12:29:04 wiz Exp $
2 2
3SHA1 (ncc-2.8.tar.gz) = 96f6d8d76dc0e67a436b7f1acf67503998ad5771 3SHA1 (ncc-2.8.tar.gz) = 96f6d8d76dc0e67a436b7f1acf67503998ad5771
4RMD160 (ncc-2.8.tar.gz) = dcd8998ff31d1291208bf9ea4ff5a08b2525745d 4RMD160 (ncc-2.8.tar.gz) = dcd8998ff31d1291208bf9ea4ff5a08b2525745d
5Size (ncc-2.8.tar.gz) = 104536 bytes 5Size (ncc-2.8.tar.gz) = 104536 bytes
6SHA1 (patch-aa) = 65ff800adf6dacab59553d13fa9f31d8b101103f 6SHA1 (patch-aa) = 65ff800adf6dacab59553d13fa9f31d8b101103f
7SHA1 (patch-ab) = 92ada3f6f824d18a05a6e38d2f1086ebaa87e98e 7SHA1 (patch-ab) = 92ada3f6f824d18a05a6e38d2f1086ebaa87e98e
8SHA1 (patch-ac) = 437150dbe18e5d2c8c175667f3fa6b1d419f452a 8SHA1 (patch-ac) = 437150dbe18e5d2c8c175667f3fa6b1d419f452a
9SHA1 (patch-ad) = 0bc35544a5fe07112ee53ff5864d3a0d0f011e6e 9SHA1 (patch-ad) = 0bc35544a5fe07112ee53ff5864d3a0d0f011e6e
 10SHA1 (patch-ae) = 2397a601229a211c379450b83cad69fcfd6d9022

File Added: pkgsrc/devel/ncc/patches/patch-ae
$NetBSD: patch-ae,v 1.1 2008/11/05 12:29:04 wiz Exp $

--- cdb.C.orig	2008-10-11 14:57:21.000000000 +0000
+++ cdb.C
@@ -394,6 +394,9 @@ void close_region ()
 
 lookup_t *Lookup (Symbol s, bool tagged, RegionPtr r)
 {
+	if (s == -1)
+		return NULL;
+
 	lookup_t *t = lookup_table [s - SYMBASE];
 
 	if (tagged) for (; t; t = t->next) {
@@ -1175,6 +1178,7 @@ void aeqn::prstruct (RegionPtr p)
 		txt [txti++] = UNI;
 	for (m = regions [p].first; m; m=m->next) {
 		L = Lookup (m->s, false, p);
+		if (!L) continue;
 		txt [txti++] = m->s;
 		base = base_of (L->info.tdf);
 		spec = spec_of (L->info.tdf);