glibmm: Add kludge to use gcc 4.9 for depending packages glibmm seems to need gcc 4.9 to build; therefore set GCC_REQD. This means that depending packages using other versions (specifically 4.8 on NetBSD 7) will fail to link. As a kludge to make more things build for the upcoming branch, force GCC_REQD to 4.9 in glibmm's buildlink3.mk. Now, at least some packages that depend on glibmm build. While icky, it's my judgement that having more packages building is better. This will very likely be reverted either after the branch or as part of the upcoming compiler selection logic changes. As proposed on tech-pkg.diff -r1.75 -r1.76 pkgsrc/devel/glibmm/Makefile
(gdt)
@@ -1,26 +1,28 @@ | @@ -1,26 +1,28 @@ | |||
1 | # $NetBSD: Makefile,v 1.75 2017/12/11 13:37:43 jperkin Exp $ | 1 | # $NetBSD: Makefile,v 1.76 2017/12/29 23:06:14 gdt Exp $ | |
2 | 2 | |||
3 | DISTNAME= glibmm-2.54.1 | 3 | DISTNAME= glibmm-2.54.1 | |
4 | CATEGORIES= devel gnome | 4 | CATEGORIES= devel gnome | |
5 | MASTER_SITES= ${MASTER_SITE_GNOME:=sources/glibmm/${PKGVERSION_NOREV:R}/} | 5 | MASTER_SITES= ${MASTER_SITE_GNOME:=sources/glibmm/${PKGVERSION_NOREV:R}/} | |
6 | EXTRACT_SUFX= .tar.xz | 6 | EXTRACT_SUFX= .tar.xz | |
7 | 7 | |||
8 | MAINTAINER= adam@NetBSD.org | 8 | MAINTAINER= adam@NetBSD.org | |
9 | HOMEPAGE= https://www.gtkmm.org/ | 9 | HOMEPAGE= https://www.gtkmm.org/ | |
10 | COMMENT= C++ bindings for glib | 10 | COMMENT= C++ bindings for glib | |
11 | LICENSE= gnu-gpl-v2 AND gnu-lgpl-v2.1 | 11 | LICENSE= gnu-gpl-v2 AND gnu-lgpl-v2.1 | |
12 | 12 | |||
13 | GCC_REQD+= 4.8 | 13 | # With 4.8, one gets the following: | |
14 | # error: no matching function for call to 'regex_replace(const char*&, std::regex, const char [3])' | |||
15 | GCC_REQD+= 4.9 | |||
14 | USE_LANGUAGES= c c++11 | 16 | USE_LANGUAGES= c c++11 | |
15 | USE_LIBTOOL= yes | 17 | USE_LIBTOOL= yes | |
16 | USE_PKGLOCALEDIR= yes | 18 | USE_PKGLOCALEDIR= yes | |
17 | USE_TOOLS+= gmake pkg-config perl:run | 19 | USE_TOOLS+= gmake pkg-config perl:run | |
18 | GNU_CONFIGURE= yes | 20 | GNU_CONFIGURE= yes | |
19 | EXTRACT_USING= bsdtar # added for pkg/42258 | 21 | EXTRACT_USING= bsdtar # added for pkg/42258 | |
20 | 22 | |||
21 | PKGCONFIG_OVERRIDE+= gio/giomm.pc.in | 23 | PKGCONFIG_OVERRIDE+= gio/giomm.pc.in | |
22 | PKGCONFIG_OVERRIDE+= glib/glibmm.pc.in | 24 | PKGCONFIG_OVERRIDE+= glib/glibmm.pc.in | |
23 | 25 | |||
24 | # x11/gtkmm needs these tools | 26 | # x11/gtkmm needs these tools | |
25 | INSTALLATION_DIRS= share/glibmm-2.4/doctool | 27 | INSTALLATION_DIRS= share/glibmm-2.4/doctool | |
26 | 28 |
@@ -1,16 +1,21 @@ | @@ -1,16 +1,21 @@ | |||
1 | # $NetBSD: buildlink3.mk,v 1.15 2012/09/15 10:04:10 obache Exp $ | 1 | # $NetBSD: buildlink3.mk,v 1.16 2017/12/29 23:06:14 gdt Exp $ | |
2 | 2 | |||
3 | BUILDLINK_TREE+= glibmm | 3 | BUILDLINK_TREE+= glibmm | |
4 | 4 | |||
5 | .if !defined(GLIBMM_BUILDLINK3_MK) | 5 | .if !defined(GLIBMM_BUILDLINK3_MK) | |
6 | GLIBMM_BUILDLINK3_MK:= | 6 | GLIBMM_BUILDLINK3_MK:= | |
7 | 7 | |||
8 | # It is necessary to use the same compiler to link against libmm as it | |||
9 | # was built with. This is hacky, but enables at least | |||
10 | # gnome-system-monitor to build. | |||
11 | GCC_REQD+= 4.9 | |||
12 | ||||
8 | BUILDLINK_API_DEPENDS.glibmm+= glibmm>=2.24.2 | 13 | BUILDLINK_API_DEPENDS.glibmm+= glibmm>=2.24.2 | |
9 | BUILDLINK_ABI_DEPENDS.glibmm+= glibmm>=2.32.1nb1 | 14 | BUILDLINK_ABI_DEPENDS.glibmm+= glibmm>=2.32.1nb1 | |
10 | BUILDLINK_PKGSRCDIR.glibmm?= ../../devel/glibmm | 15 | BUILDLINK_PKGSRCDIR.glibmm?= ../../devel/glibmm | |
11 | 16 | |||
12 | .include "../../devel/glib2/buildlink3.mk" | 17 | .include "../../devel/glib2/buildlink3.mk" | |
13 | .include "../../devel/libsigc++/buildlink3.mk" | 18 | .include "../../devel/libsigc++/buildlink3.mk" | |
14 | .endif # GLIBMM_BUILDLINK3_MK | 19 | .endif # GLIBMM_BUILDLINK3_MK | |
15 | 20 | |||
16 | BUILDLINK_TREE+= -glibmm | 21 | BUILDLINK_TREE+= -glibmm |