diff options
author | maya <maya@pkgsrc.org> | 2017-05-28 01:00:20 +0000 |
---|---|---|
committer | maya <maya@pkgsrc.org> | 2017-05-28 01:00:20 +0000 |
commit | 3dee87a72c5219201650a30b746159d8637db6c5 (patch) | |
tree | e3c946ad65eff8964e0143a5d57775cf8c998df4 /lang/gcc48 | |
parent | 1c8338d0562b5feda6e900da691db76eb514de18 (diff) | |
download | pkgsrc-3dee87a72c5219201650a30b746159d8637db6c5.tar.gz |
gcc48: always link libgcc on netbsd (GCC r248037,
applied to GCC 8 and above - thanks Krister Walfridsson)
libstdc++: if it thinks vswprintf is broken, don't block the
entire definition of to_string, just that of to_wstring. backport
of GCC r223830 already applied to GCC 4.9. this applies to netbsd-6-0.
Doesn't fix any build I wanted to fix, but it does get the build
of LLVM4.x further on netbsd-6-0. maybe there's an odd package that
could benefit from it.
bump PKGREVISION.
Diffstat (limited to 'lang/gcc48')
-rw-r--r-- | lang/gcc48/Makefile | 3 | ||||
-rw-r--r-- | lang/gcc48/distinfo | 5 | ||||
-rw-r--r-- | lang/gcc48/patches/patch-gcc_config_netbsd.h | 12 | ||||
-rw-r--r-- | lang/gcc48/patches/patch-libstdc++-v3_include_bits_basic__string.h | 34 |
4 files changed, 50 insertions, 4 deletions
diff --git a/lang/gcc48/Makefile b/lang/gcc48/Makefile index a8887e1de5f..9f4989bf3a1 100644 --- a/lang/gcc48/Makefile +++ b/lang/gcc48/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.30 2016/09/15 17:56:23 maya Exp $ +# $NetBSD: Makefile,v 1.31 2017/05/28 01:00:20 maya Exp $ GCC_PKGNAME= gcc48 .include "version.mk" @@ -8,6 +8,7 @@ PKGNAME= ${GCC_PKGNAME}-${GCC48_DIST_VERSION} ## When bumping the PKGREVISION of this package the PKGREVISION of ## lang/gcc48-libs needs to be bump to be at least 1 more than the ## PKGREVISION of this package! +PKGREVISION= 1 CATEGORIES= lang MASTER_SITES= ${MASTER_SITE_GNU:=gcc/gcc-${GCC48_DIST_VERSION}/} EXTRACT_SUFX= .tar.bz2 diff --git a/lang/gcc48/distinfo b/lang/gcc48/distinfo index ea7d396f979..c4286a23de1 100644 --- a/lang/gcc48/distinfo +++ b/lang/gcc48/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.33 2017/01/22 12:22:46 maya Exp $ +$NetBSD: distinfo,v 1.34 2017/05/28 01:00:20 maya Exp $ SHA1 (ecj-4.5.jar) = 58c1d79c64c8cd718550f32a932ccfde8d1e6449 RMD160 (ecj-4.5.jar) = d3f4da657f086b6423f74e93f001132f4855368a @@ -40,7 +40,7 @@ SHA1 (patch-gcc_config_i386_dragonfly.h) = 0d3f785434c02beb9c4561fe59842a970e8f7 SHA1 (patch-gcc_config_i386_openbsd.h) = df5b85b5957392138f99085bd8ebeb923e37e9e7 SHA1 (patch-gcc_config_i386_openbsdelf.h) = 74498a1bd7c339c90b847740d3c474ad3ca4a956 SHA1 (patch-gcc_config_netbsd-stdint.h) = 025fc883101a187e84ed4c0772406720d645d550 -SHA1 (patch-gcc_config_netbsd.h) = 086b593cf9f05e654df9e1a527485ca727ec44cc +SHA1 (patch-gcc_config_netbsd.h) = 922088494d517fdde499d599b442a9b1cf8445a4 SHA1 (patch-gcc_config_openbsd-libpthread.h) = 5043cf383fb68ff37b0cae22e61a97e26cff899e SHA1 (patch-gcc_config_openbsd.h) = 0090d48281c4973a18e8a70b2be9d2e999cca0a6 SHA1 (patch-gcc_config_openbsd.opt) = 08b01bc4d7e171c3ee2ce5638a5859cff50c8ff8 @@ -95,5 +95,6 @@ SHA1 (patch-libstdc++-v3_config_os_bsd_netbsd_ctype__inline.h) = 626fc1f9c035ac5 SHA1 (patch-libstdc++-v3_config_os_bsd_openbsd_os__defines.h) = f899b6ddfabdef82ecee3562a946cecd1b995dd0 SHA1 (patch-libstdc++-v3_configure) = 3821275fa698221d7665ea3c98b0a24f33954a5a SHA1 (patch-libstdc++-v3_configure.host) = 7426ea4a9735e5f886f4a3ffb4a9ba62734178c4 +SHA1 (patch-libstdc++-v3_include_bits_basic__string.h) = 7bcae0e92f444b65871c2f3c413e4c6f7d4e10a0 SHA1 (patch-libstdc++-v3_libsupc++_unwind-cxx.h) = 9784bfa4323f8498b36565d0fea28fce69ffdbb1 SHA1 (patch-ltmain.sh) = 86c1511bd8ff133ba208ec8ec7e206d77ce85d01 diff --git a/lang/gcc48/patches/patch-gcc_config_netbsd.h b/lang/gcc48/patches/patch-gcc_config_netbsd.h index cc60f6735d6..410d3ad02c0 100644 --- a/lang/gcc48/patches/patch-gcc_config_netbsd.h +++ b/lang/gcc48/patches/patch-gcc_config_netbsd.h @@ -1,6 +1,7 @@ -$NetBSD: patch-gcc_config_netbsd.h,v 1.1 2016/09/04 18:29:39 maya Exp $ +$NetBSD: patch-gcc_config_netbsd.h,v 1.2 2017/05/28 01:00:20 maya Exp $ when using shared, link against libc. +always link against libgcc. --- gcc/config/netbsd.h.orig 2013-01-10 20:38:27.000000000 +0000 +++ gcc/config/netbsd.h @@ -20,3 +21,12 @@ when using shared, link against libc. %{!shared: \ %{!symbolic: \ %{!p: \ +@@ -133,7 +135,7 @@ along with GCC; see the file COPYING3. + %{p: -lgcc_p} \ + %{pg: -lgcc_p}}" + #else +-#define NETBSD_LIBGCC_SPEC "%{!shared:%{!symbolic: -lgcc}}" ++#define NETBSD_LIBGCC_SPEC "-lgcc" + #endif + + #undef LIBGCC_SPEC diff --git a/lang/gcc48/patches/patch-libstdc++-v3_include_bits_basic__string.h b/lang/gcc48/patches/patch-libstdc++-v3_include_bits_basic__string.h new file mode 100644 index 00000000000..5b5230ede2f --- /dev/null +++ b/lang/gcc48/patches/patch-libstdc++-v3_include_bits_basic__string.h @@ -0,0 +1,34 @@ +$NetBSD: patch-libstdc++-v3_include_bits_basic__string.h,v 1.1 2017/05/28 01:00:20 maya Exp $ + +Backport of r223830 +Don't hide all of to_string if _GLIBCXX_HAVE_BROKEN_VSWPRINTF +only to_wstring (Applies to NetBSD-6-0) + +--- libstdc++-v3/include/bits/basic_string.h.orig 2013-05-15 22:00:48.000000000 +0000 ++++ libstdc++-v3/include/bits/basic_string.h +@@ -2809,8 +2809,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + _GLIBCXX_END_NAMESPACE_VERSION + } // namespace + +-#if ((__cplusplus >= 201103L) && defined(_GLIBCXX_USE_C99) \ +- && !defined(_GLIBCXX_HAVE_BROKEN_VSWPRINTF)) ++#if ((__cplusplus >= 201103L) && defined(_GLIBCXX_USE_C99)) + + #include <ext/string_conversions.h> + +@@ -2961,6 +2960,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + { return __gnu_cxx::__stoa(&std::wcstold, "stold", __str.c_str(), __idx); } + + // DR 1261. ++#ifndef _GLIBCXX_HAVE_BROKEN_VSWPRINTF + inline wstring + to_wstring(int __val) + { return __gnu_cxx::__to_xstring<wstring>(&std::vswprintf, 4 * sizeof(int), +@@ -3021,6 +3021,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + return __gnu_cxx::__to_xstring<wstring>(&std::vswprintf, __n, + L"%Lf", __val); + } ++#endif // _GLIBCXX_HAVE_BROKEN_VSWPRINTF + #endif + + _GLIBCXX_END_NAMESPACE_VERSION |