I've been rebuilding packages using pkg_rr based on 2012Q3 for a while, as a background activity. On one system (netbsd-5, i386) dconf failed to build. It turned out the issue was that the upstream makefiles set gcc-specific warning flags that apparently aren't valid in gcc as found on netbsd-5. This is of course broken upstream, as there's no reason to even assume gcc, but the question is how best to handle in pkgsrc. Forcing gcc to 4.5 seems goofy. I attach a patch (against pkgsrc-2012Q3, because HEAD is changed a lot) which makes it build, and it seems to run fine. It seems the right approach is some way to strip flags in the wrapper scripts. I dimly recall that there is such a facilitiy, but I searched in the guide and didn't find it. Index: Makefile =================================================================== RCS file: /cvsroot/pkgsrc/devel/dconf/Makefile,v retrieving revision 1.11 diff -u -p -r1.11 Makefile --- Makefile 15 Sep 2012 10:04:07 -0000 1.11 +++ Makefile 20 Nov 2012 02:07:22 -0000 @@ -4,7 +4,7 @@ # DISTNAME= dconf-0.12.1 -PKGREVISION= 1 +PKGREVISION= 2 CATEGORIES= devel MASTER_SITES= ${MASTER_SITE_GNOME:=sources/dconf/0.12/} EXTRACT_SUFX= .tar.xz Index: distinfo =================================================================== RCS file: /cvsroot/pkgsrc/devel/dconf/distinfo,v retrieving revision 1.4 diff -u -p -r1.4 distinfo --- distinfo 1 Aug 2012 11:28:59 -0000 1.4 +++ distinfo 20 Nov 2012 02:07:22 -0000 @@ -3,5 +3,6 @@ $NetBSD: distinfo,v 1.4 2012/08/01 11:28 SHA1 (dconf-0.12.1.tar.xz) = 1bdbf53b2e699fe58f69fa7a42164351e8560e05 RMD160 (dconf-0.12.1.tar.xz) = e9b0a54230e76e68470958d1ea115d9f3b99cda7 Size (dconf-0.12.1.tar.xz) = 202112 bytes -SHA1 (patch-bin_Makefile.in) = acf5ef1e506461e0968250e8a45e4113b087eee4 +SHA1 (patch-bin_Makefile.in) = 1c322337677906612da042572886fff476de2778 +SHA1 (patch-client_Makefile.in) = 46681b0d8ee0afc40a092af44633f483fe332675 SHA1 (patch-editor_Makefile.in) = eb444efc4a131e4c03e46d51b63b5d5f9cf84ad0 Index: patches/patch-bin_Makefile.in =================================================================== RCS file: /cvsroot/pkgsrc/devel/dconf/patches/Attic/patch-bin_Makefile.in,v retrieving revision 1.1 diff -u -p -r1.1 patch-bin_Makefile.in --- patches/patch-bin_Makefile.in 31 Jul 2012 15:46:20 -0000 1.1 +++ patches/patch-bin_Makefile.in 20 Nov 2012 02:07:22 -0000 @@ -2,9 +2,18 @@ $NetBSD: patch-bin_Makefile.in,v 1.1 201 Adapt bash completion file path for pkgsrc. ---- bin/Makefile.in.orig 2012-07-31 15:35:54.000000000 +0000 +--- bin/Makefile.in.orig 2012-05-01 05:09:12.000000000 +0000 +++ bin/Makefile.in -@@ -226,7 +226,7 @@ INCLUDES = -I$(top_srcdir)/common -I$(to +@@ -122,7 +122,7 @@ AUTOMAKE = @AUTOMAKE@ + AWK = @AWK@ + CC = @CC@ + CCDEPMODE = @CCDEPMODE@ +-CFLAGS = @CFLAGS@ -Wno-error -Wno-unused-but-set-variable \ ++CFLAGS = @CFLAGS@ -Wno-error \ + -Wno-unused-variable + CPPFLAGS = @CPPFLAGS@ + CYGPATH_W = @CYGPATH_W@ +@@ -233,7 +233,7 @@ INCLUDES = -I$(top_srcdir)/common -I$(to dconf_VALAFLAGS = --vapidir ../client --pkg=gio-2.0 --pkg=posix --pkg=dconf dconf_LDADD = $(gio_LIBS) ../client/libdconf.so.0 dconf_SOURCES = dconf.vala dconf-update.vala dconf-dump.vala ../gvdb/gvdb-builder.c gvdb.vapi Index: patches/patch-client_Makefile.in =================================================================== RCS file: patches/patch-client_Makefile.in diff -N patches/patch-client_Makefile.in --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-client_Makefile.in 20 Nov 2012 02:07:22 -0000 @@ -0,0 +1,13 @@ +$NetBSD$ + +--- client/Makefile.in.orig 2012-05-01 05:09:12.000000000 +0000 ++++ client/Makefile.in +@@ -129,7 +129,7 @@ AUTOMAKE = @AUTOMAKE@ + AWK = @AWK@ + CC = @CC@ + CCDEPMODE = @CCDEPMODE@ +-CFLAGS = @CFLAGS@ -Wno-error -Wno-unused-but-set-variable \ ++CFLAGS = @CFLAGS@ -Wno-error \ + -Wno-unused-variable + CPPFLAGS = @CPPFLAGS@ + CYGPATH_W = @CYGPATH_W@
Attachment:
pgpUS70hnpd2t.pgp
Description: PGP signature