pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/lang/gcc5-aux
Module Name: pkgsrc
Committed By: marino
Date: Sun Aug 28 17:59:37 UTC 2016
Modified Files:
pkgsrc/lang/gcc5-aux: Makefile Makefile.version distinfo
pkgsrc/lang/gcc5-aux/files: diff-ada diff-core diff-cxx
diff-cxx-testsuite diff-fortran
Removed Files:
pkgsrc/lang/gcc5-aux: Makefile.testsuite
Log Message:
lang/gcc5-aux: Upgrade version 20150422 => 20160603 (GCC 5.1 => 5.4)
The signal trampoline detection for NetBSD 7 and later is still broken.
Support for NetBSD 6.99 has been removed along with supporte for
32-bit DragonFly. The modifications to the testsuite were misguided and
have also been removed.
To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 pkgsrc/lang/gcc5-aux/Makefile \
pkgsrc/lang/gcc5-aux/Makefile.version
cvs rdiff -u -r1.1 -r0 pkgsrc/lang/gcc5-aux/Makefile.testsuite
cvs rdiff -u -r1.1 -r1.2 pkgsrc/lang/gcc5-aux/distinfo
cvs rdiff -u -r1.1 -r1.2 pkgsrc/lang/gcc5-aux/files/diff-ada \
pkgsrc/lang/gcc5-aux/files/diff-core pkgsrc/lang/gcc5-aux/files/diff-cxx \
pkgsrc/lang/gcc5-aux/files/diff-cxx-testsuite \
pkgsrc/lang/gcc5-aux/files/diff-fortran
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/lang/gcc5-aux/Makefile
diff -u pkgsrc/lang/gcc5-aux/Makefile:1.2 pkgsrc/lang/gcc5-aux/Makefile:1.3
--- pkgsrc/lang/gcc5-aux/Makefile:1.2 Mon Jun 15 17:14:27 2015
+++ pkgsrc/lang/gcc5-aux/Makefile Sun Aug 28 17:59:36 2016
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.2 2015/06/15 17:14:27 marino Exp $
+# $NetBSD: Makefile,v 1.3 2016/08/28 17:59:36 marino Exp $
#
PKGNAME= gcc5-aux-${SNAPSHOT}
@@ -18,7 +18,6 @@ USE_TOOLS+= gmake sed:run perl makeinfo
APPLY_DIFFS= core ada cxx
.include "Makefile.version"
-.include "Makefile.testsuite"
.include "../../mk/bsd.prefs.mk"
.include "options.mk"
@@ -40,7 +39,7 @@ FULL_GNATGCC= NOT SET
FULL_PATH= /sbin:/bin:/usr/sbin:/usr/bin:${PREFIX}/gcc-aux/bin:${PREFIX}/sbin:${PREFIX}/bin
.if ${OPSYS} == DragonFly
-BOOTSTRAP_COMPILER= ada-bootstrap.${GARCH}.dragonfly.36A.tar.bz2
+BOOTSTRAP_COMPILER= ada-bootstrap.${GARCH}.dragonfly.41.tar.bz2
.endif
.if ${OPSYS} == FreeBSD
@@ -53,9 +52,7 @@ BOOTSTRAP_COMPILER= ada-bootstrap.${GARC
.endif
.if ${OPSYS} == NetBSD
-. if !empty(OS_VERSION:M6.99.*)
-NSUFF= 7.0_DEV
-. elif !empty(OS_VERSION:M7.99.*)
+. if !empty(OS_VERSION:M7.99.*)
NSUFF= 8.0_DEV
. else
NSUFF= ${OS_VERSION}
@@ -162,11 +159,10 @@ MASTER_SITES= http://downloads.dragonlac
${MASTER_SITE_GNU:=gcc/${IDENTIFICATION}/}
DISTFILES= \
${DISTNAME}.tar.bz2 \
- ada-bootstrap.i386.dragonfly.36A.tar.bz2 \
ada-bootstrap.i386.freebsd.84.tar.bz2 \
ada-bootstrap.i386.freebsd.100B.tar.bz2 \
ada-bootstrap.i386.netbsd.614.tar.bz2 \
- ada-bootstrap.x86_64.dragonfly.36A.tar.bz2 \
+ ada-bootstrap.x86_64.dragonfly.41.tar.bz2 \
ada-bootstrap.x86_64.freebsd.84.tar.bz2 \
ada-bootstrap.x86_64.freebsd.100B.tar.bz2 \
ada-bootstrap.x86_64.netbsd.614.tar.bz2 \
@@ -214,14 +210,6 @@ post-extract:
@${ECHO} "Applying composite patch diff-${suffix}"
${PATCH} -d ${WRKSRC} -s -E < ${FILESDIR}/diff-${suffix}
.endfor
- (cd ${WRKSRC}/libstdc++-v3/testsuite/22_locale && ${PERL5} -i \
- -pe 's|ISO-8859|ISO8859|g;' \
- -pe 's|ja_JP.eucjp|ja_JP.eucJP|g;' \
- -pe 's|en_HK|zh_HK|g;' \
- -pe 's|en_PH|en_NZ|g;' \
- -pe 's|se_NO|no_NO|g;' \
- -pe 's|es_MX|es_ES|g;' \
- -pe 's|ru_RU.UTF8|ru_RU.UTF-8|g' ${LOCALE22FIX})
.if ${OPSYS} == NetBSD
. for sysfile in ${CORRECTIONS}
. for pair in ${${CRXN}_${sysfile}}
Index: pkgsrc/lang/gcc5-aux/Makefile.version
diff -u pkgsrc/lang/gcc5-aux/Makefile.version:1.2 pkgsrc/lang/gcc5-aux/Makefile.version:1.3
--- pkgsrc/lang/gcc5-aux/Makefile.version:1.2 Mon Jun 15 17:14:27 2015
+++ pkgsrc/lang/gcc5-aux/Makefile.version Sun Aug 28 17:59:36 2016
@@ -1,12 +1,12 @@
-# $NetBSD: Makefile.version,v 1.2 2015/06/15 17:14:27 marino Exp $
+# $NetBSD: Makefile.version,v 1.3 2016/08/28 17:59:36 marino Exp $
#
-SNAPSHOT= 20150422
+SNAPSHOT= 20160603
GCC_BRANCH= 5
-GCC_POINT= 1.0
+GCC_POINT= 4.0
GCC_VERSION= ${GCC_BRANCH}.${GCC_POINT}
BUILD_RELEASE= yes
-MAIN_PR= 1
+MAIN_PR= 0
.if ${BUILD_RELEASE:Mno}
# Snapshot naming pattern
Index: pkgsrc/lang/gcc5-aux/distinfo
diff -u pkgsrc/lang/gcc5-aux/distinfo:1.1 pkgsrc/lang/gcc5-aux/distinfo:1.2
--- pkgsrc/lang/gcc5-aux/distinfo:1.1 Mon Jun 15 09:46:27 2015
+++ pkgsrc/lang/gcc5-aux/distinfo Sun Aug 28 17:59:36 2016
@@ -1,32 +1,38 @@
-$NetBSD: distinfo,v 1.1 2015/06/15 09:46:27 marino Exp $
+$NetBSD: distinfo,v 1.2 2016/08/28 17:59:36 marino Exp $
-SHA1 (ada-bootstrap.i386.dragonfly.36A.tar.bz2) = 7e0725889ae752e6a9fdbac5b1d2ef0e3f62822e
-RMD160 (ada-bootstrap.i386.dragonfly.36A.tar.bz2) = f62c00515588804ce69368507822f30380d7e48d
-Size (ada-bootstrap.i386.dragonfly.36A.tar.bz2) = 39357314 bytes
SHA1 (ada-bootstrap.i386.freebsd.100B.tar.bz2) = b7ff322bbcfa403d37d917d6e88e306de0857251
RMD160 (ada-bootstrap.i386.freebsd.100B.tar.bz2) = 7a85e0f073dafe9b0d37b493dbb4268bd2f39601
+SHA512 (ada-bootstrap.i386.freebsd.100B.tar.bz2) = ab4a32457f5febf2c854b7107abb8159754f5a5e8413598fb2ecf1ed0a755129c26aab0e0c2e09695d02cef5490b53a3b18c9fa37cec0b07476940c27fc76ae8
Size (ada-bootstrap.i386.freebsd.100B.tar.bz2) = 41229192 bytes
SHA1 (ada-bootstrap.i386.freebsd.84.tar.bz2) = 54c3d59fd2ca75bb91255296bc0f9d6028ac2cd2
RMD160 (ada-bootstrap.i386.freebsd.84.tar.bz2) = 8ceb3957708eb9ccc8ce2ff1ea26949683ee2fa7
+SHA512 (ada-bootstrap.i386.freebsd.84.tar.bz2) = de193d7f501538204b4c3159e3df33c2c3e9c9ffbe6ccd67d2aec2c77243e91b217ea7c05b202fe513d43c751ca7fcb002f47e3156d05436302e2038b4c4e5ae
Size (ada-bootstrap.i386.freebsd.84.tar.bz2) = 39727003 bytes
SHA1 (ada-bootstrap.i386.netbsd.614.tar.bz2) = 2c29209b086dcf3076428f232fadf306b9a227c6
RMD160 (ada-bootstrap.i386.netbsd.614.tar.bz2) = f0ecb9b0d69c2d097c6405e0db581f606b372017
+SHA512 (ada-bootstrap.i386.netbsd.614.tar.bz2) = 39d0b2503e9e3a0c9aa25c2daa83be4109e9bda41076c2ea5eb4abf89137c6c2ad6b6726a6d634c8f89f4695810ba902920444df29c5cba31942f84a69aeee75
Size (ada-bootstrap.i386.netbsd.614.tar.bz2) = 37900035 bytes
-SHA1 (ada-bootstrap.x86_64.dragonfly.36A.tar.bz2) = 85ceea8d0bd0d1b8c1f91ea6d7ffb2ffe4a4c7da
-RMD160 (ada-bootstrap.x86_64.dragonfly.36A.tar.bz2) = 7ca8ccff5a4400a7e4fc9ad1d11c64f3c92d54f4
-Size (ada-bootstrap.x86_64.dragonfly.36A.tar.bz2) = 40747242 bytes
+SHA1 (ada-bootstrap.x86_64.dragonfly.41.tar.bz2) = 95fdb86cff798ca7ddb7ac5f9dc397cd1f73e9c4
+RMD160 (ada-bootstrap.x86_64.dragonfly.41.tar.bz2) = 54b56708e6f944ca5e40eb2d99cf79b3487abdb2
+SHA512 (ada-bootstrap.x86_64.dragonfly.41.tar.bz2) = 9a3244b5f76104f1ffcd6e4c47f222f8be7b1faf7184e2e265b1a349e587f4d5112271e91a619e665b893e6a7a58ac0a3e07129f8cff7a473e66229718cff2d2
+Size (ada-bootstrap.x86_64.dragonfly.41.tar.bz2) = 44956630 bytes
SHA1 (ada-bootstrap.x86_64.freebsd.100B.tar.bz2) = edfe60c5f42bbeb145d7070ed868135ebc60c2de
RMD160 (ada-bootstrap.x86_64.freebsd.100B.tar.bz2) = 0d50885402208caafbc133ffc3b8684e89a50cae
+SHA512 (ada-bootstrap.x86_64.freebsd.100B.tar.bz2) = 07e7503f575c6ba30c5d4db1f9781f522c0b48effb62c90fe3af991ebbada8064d035871e0e99206c86eb4c10fdfffb6faf89bc203370797d9c1818657004f1a
Size (ada-bootstrap.x86_64.freebsd.100B.tar.bz2) = 42163803 bytes
SHA1 (ada-bootstrap.x86_64.freebsd.84.tar.bz2) = b5c76ce07df6e944742eda5f860352c8e179b988
RMD160 (ada-bootstrap.x86_64.freebsd.84.tar.bz2) = 334c2375ee35bdf931a3a476e794e494ff252515
+SHA512 (ada-bootstrap.x86_64.freebsd.84.tar.bz2) = f7edc4b4d9adcf071cb74221119ae5989f39af176c988f9c446b7b302247f7263215724f5826cf27854f0b87a23f2756ce703e6e1519997faa48a157c0c1425e
Size (ada-bootstrap.x86_64.freebsd.84.tar.bz2) = 40227668 bytes
SHA1 (ada-bootstrap.x86_64.netbsd.614.tar.bz2) = 683f58e6e394a508a52ec1dc5f3d9ca2869d5252
RMD160 (ada-bootstrap.x86_64.netbsd.614.tar.bz2) = 4574857089e82fb80725161cc8b625ce75f6810e
+SHA512 (ada-bootstrap.x86_64.netbsd.614.tar.bz2) = 6287668001dd6d45a1dfe2a6f548fe933ce2bff4fec43516dc76aad8aeb27859ee6660068edfbc9dc671f025e1635629212b1adc1308d5cc775dd19e1f1764b2
Size (ada-bootstrap.x86_64.netbsd.614.tar.bz2) = 39348972 bytes
SHA1 (ada-bootstrap.x86_64.solaris.511.tar.bz2) = abb16c1582e2a6ffe37df4afd96d04c44f2eea7b
RMD160 (ada-bootstrap.x86_64.solaris.511.tar.bz2) = 41677e2fd0cb02c89f200fb97b112ad3be7f19cd
+SHA512 (ada-bootstrap.x86_64.solaris.511.tar.bz2) = 59db01497b11bd4913cfedcbe3931caa361564c1f5eadddd200dc1e0516a44d107494ab898f93bc1050998f73623bf30a74f0933b84d9a03a3c9d51f3f2de8d9
Size (ada-bootstrap.x86_64.solaris.511.tar.bz2) = 60110383 bytes
-SHA1 (gcc-5.1.0.tar.bz2) = b6c947b09adf780fe02065d0c48bfd7b4bdddfa3
-RMD160 (gcc-5.1.0.tar.bz2) = 17a9623f384ce10415a603042e0592c9b4956078
-Size (gcc-5.1.0.tar.bz2) = 94954411 bytes
+SHA1 (gcc-5.4.0.tar.bz2) = 07524df2b4ab9070bad9c49ab668da72237b8115
+RMD160 (gcc-5.4.0.tar.bz2) = 7ae3413ca7e90bb21e65e637c02ddf2b675b45f4
+SHA512 (gcc-5.4.0.tar.bz2) = 2941cc950c8f2409a314df497631f9b0266211aa74746c1839c46e04f1c7c299afe2528d1ef16ea39def408a644ba48f97519ec7a7dd37d260c3e9423514265b
+Size (gcc-5.4.0.tar.bz2) = 95661481 bytes
Index: pkgsrc/lang/gcc5-aux/files/diff-ada
diff -u pkgsrc/lang/gcc5-aux/files/diff-ada:1.1 pkgsrc/lang/gcc5-aux/files/diff-ada:1.2
--- pkgsrc/lang/gcc5-aux/files/diff-ada:1.1 Mon Jun 15 09:46:27 2015
+++ pkgsrc/lang/gcc5-aux/files/diff-ada Sun Aug 28 17:59:37 2016
@@ -1045,23 +1045,36 @@
Gcc_Path : String_Access := null;
Non_Empty_Node : constant Project_Node_Id := 1;
---- gcc/ada/s-osinte-android.ads.orig
-+++ gcc/ada/s-osinte-android.ads
-@@ -597,11 +597,11 @@
-
- type pid_t is new int;
-
-- type time_t is new long;
-+ type time_t is new Long_Long_Integer;
-
- type timespec is record
-- tv_sec : time_t;
-- tv_nsec : long;
-+ ts_sec : time_t;
-+ ts_nsec : long;
- end record;
- pragma Convention (C, timespec);
+--- gcc/ada/s-oscons-tmplt.c.orig
++++ gcc/ada/s-oscons-tmplt.c
+@@ -402,7 +402,7 @@
+
+ /* ioctl(2) requests are "int" in UNIX, but "unsigned long" on FreeBSD */
+
+-#ifdef __FreeBSD__
++#if defined (__FreeBSD__) || defined (__DragonFly__)
+ # define CNI CNU
+ # define IOCTL_Req_T "unsigned"
+ #else
+@@ -1014,7 +1014,7 @@
+
+ */
+
+-#if defined (__FreeBSD__) || defined (linux)
++#if defined (__FreeBSD__) || defined (linux) || defined (__DragonFly__)
+ # define PTY_Library "-lutil"
+ #else
+ # define PTY_Library ""
+@@ -1435,7 +1435,8 @@
+ #endif
+ CND(CLOCK_THREAD_CPUTIME_ID, "Thread CPU clock")
+-#if defined(__FreeBSD__) || (defined(_AIX) && defined(_AIXVERSION_530))
++#if defined(__FreeBSD__) || (defined(_AIX) && defined(_AIXVERSION_530)) \
++ || defined(__DragonFly__)
+ /** On these platforms use system provided monotonic clock instead of
+ ** the default CLOCK_REALTIME. We then need to set up cond var attributes
+ ** appropriately (see thread.c).
--- /dev/null
+++ gcc/ada/s-osinte-dragonfly.adb
@@ -0,0 +1,116 @@
@@ -3620,7 +3633,7 @@
THREADSLIB = -lposix4 -lthread
MISCLIB = -lposix4 -lnsl -lsocket
SO_OPTS = -Wl,-h,
-@@ -1420,8 +1424,11 @@
+@@ -1416,8 +1420,11 @@
ifeq ($(strip $(filter-out %86 freebsd%,$(target_cpu) $(target_os))),)
LIBGNAT_TARGET_PAIRS = \
a-intnam.ads<a-intnam-freebsd.ads \
@@ -3632,7 +3645,7 @@
s-osinte.adb<s-osinte-freebsd.adb \
s-osinte.ads<s-osinte-freebsd.ads \
s-osprim.adb<s-osprim-posix.adb \
-@@ -1436,6 +1443,8 @@
+@@ -1432,6 +1439,8 @@
mlib-tgt-specific.adb<mlib-tgt-specific-linux.adb
GNATLIB_SHARED = gnatlib-shared-dual
@@ -3641,7 +3654,7 @@
EXTRA_GNATRTL_NONTASKING_OBJS=g-sse.o g-ssvety.o
EH_MECHANISM=-gcc
-@@ -1449,8 +1458,11 @@
+@@ -1445,8 +1454,11 @@
ifeq ($(strip $(filter-out %86_64 freebsd%,$(target_cpu) $(target_os))),)
LIBGNAT_TARGET_PAIRS = \
a-intnam.ads<a-intnam-freebsd.ads \
@@ -3653,7 +3666,7 @@
s-osinte.adb<s-osinte-freebsd.adb \
s-osinte.ads<s-osinte-freebsd.ads \
s-osprim.adb<s-osprim-posix.adb \
-@@ -1465,6 +1477,110 @@
+@@ -1461,6 +1473,110 @@
mlib-tgt-specific.adb<mlib-tgt-specific-linux.adb
GNATLIB_SHARED = gnatlib-shared-dual
Index: pkgsrc/lang/gcc5-aux/files/diff-core
diff -u pkgsrc/lang/gcc5-aux/files/diff-core:1.1 pkgsrc/lang/gcc5-aux/files/diff-core:1.2
--- pkgsrc/lang/gcc5-aux/files/diff-core:1.1 Mon Jun 15 09:46:27 2015
+++ pkgsrc/lang/gcc5-aux/files/diff-core Sun Aug 28 17:59:37 2016
@@ -11,13 +11,11 @@
#undef LINK_SPEC
--- gcc/config/i386/freebsd.h.orig
+++ gcc/config/i386/freebsd.h
-@@ -90,6 +90,14 @@
+@@ -77,6 +77,12 @@
When the -shared link option is used a final link is not being
done. */
-+#if FBSD_MAJOR < 9
-+#define ELF_HASH_STYLE ""
-+#elif FBSD_MAJOR < 10
++#if FBSD_MAJOR < 10
+#define ELF_HASH_STYLE "--hash-style=both "
+#else
+#define ELF_HASH_STYLE "--hash-style=gnu "
@@ -26,7 +24,7 @@
#undef LINK_SPEC
#define LINK_SPEC "\
%{p:%nconsider using '-pg' instead of '-p' with gprof(1)} \
-@@ -101,6 +109,7 @@
+@@ -88,6 +94,7 @@
%{rdynamic:-export-dynamic} \
-dynamic-linker %(fbsd_dynamic_linker) } \
%{static:-Bstatic}} \
@@ -43,182 +41,6 @@
+ %{!static:" ELF_HASH_STYLE "-rpath @PREFIX@/@GCCAUX@/lib} \
%{symbolic:-Bsymbolic}"
--- /dev/null
-+++ libgcc/config/i386/freebsd-unwind.h
-@@ -0,0 +1,173 @@
-+/* DWARF2 EH unwinding support for FreeBSD: AMD x86-64 and x86.
-+ Copyright (C) 2015 Free Software Foundation, Inc.
-+ Contributed by John Marino <gnugcc%marino.st@localhost>
-+
-+This file is part of GCC.
-+
-+GCC is free software; you can redistribute it and/or modify
-+it under the terms of the GNU General Public License as published by
-+the Free Software Foundation; either version 3, or (at your option)
-+any later version.
-+
-+GCC is distributed in the hope that it will be useful,
-+but WITHOUT ANY WARRANTY; without even the implied warranty of
-+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+GNU General Public License for more details.
-+
-+Under Section 7 of GPL version 3, you are granted additional
-+permissions described in the GCC Runtime Library Exception, version
-+3.1, as published by the Free Software Foundation.
-+
-+You should have received a copy of the GNU General Public License and
-+a copy of the GCC Runtime Library Exception along with this program;
-+see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-+<http://www.gnu.org/licenses/>. */
-+
-+/* Do code reading to identify a signal frame, and set the frame
-+ state data appropriately. See unwind-dw2.c for the structs. */
-+
-+#include <sys/types.h>
-+#include <signal.h>
-+#include <sys/ucontext.h>
-+#include <machine/sigframe.h>
-+
-+#define REG_NAME(reg) sf_uc.uc_mcontext.mc_## reg
-+
-+#ifdef __x86_64__
-+#define MD_FALLBACK_FRAME_STATE_FOR x86_64_freebsd_fallback_frame_state
-+
-+static _Unwind_Reason_Code
-+x86_64_freebsd_fallback_frame_state
-+(struct _Unwind_Context *context, _Unwind_FrameState *fs)
-+{
-+ struct sigframe *sf;
-+ long new_cfa;
-+
-+ /* Prior to FreeBSD 9, the signal trampoline was located immediately
-+ before the ps_strings. To support non-executable stacks on AMD64,
-+ the sigtramp was moved to a shared page for FreeBSD 9. Unfortunately
-+ this means looking frame patterns again (sys/amd64/amd64/sigtramp.S)
-+ rather than using the robust and convenient KERN_PS_STRINGS trick.
-+
-+ <pc + 00>: lea 0x10(%rsp),%rdi
-+ <pc + 05>: pushq $0x0
-+ <pc + 17>: mov $0x1a1,%rax
-+ <pc + 14>: syscall
-+
-+ If we can't find this pattern, we're at the end of the stack.
-+ */
-+
-+ if (!( *(unsigned int *)(context->ra) == 0x247c8d48
-+ && *(unsigned int *)(context->ra + 4) == 0x48006a10
-+ && *(unsigned int *)(context->ra + 8) == 0x01a1c0c7
-+ && *(unsigned int *)(context->ra + 12) == 0x050f0000 ))
-+ return _URC_END_OF_STACK;
-+
-+ sf = (struct sigframe *) context->cfa;
-+ new_cfa = sf->REG_NAME(rsp);
-+ fs->regs.cfa_how = CFA_REG_OFFSET;
-+ /* Register 7 is rsp */
-+ fs->regs.cfa_reg = 7;
-+ fs->regs.cfa_offset = new_cfa - (long) context->cfa;
-+
-+ /* The SVR4 register numbering macros aren't usable in libgcc. */
-+ fs->regs.reg[0].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[0].loc.offset = (long)&sf->REG_NAME(rax) - new_cfa;
-+ fs->regs.reg[1].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[1].loc.offset = (long)&sf->REG_NAME(rdx) - new_cfa;
-+ fs->regs.reg[2].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[2].loc.offset = (long)&sf->REG_NAME(rcx) - new_cfa;
-+ fs->regs.reg[3].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[3].loc.offset = (long)&sf->REG_NAME(rbx) - new_cfa;
-+ fs->regs.reg[4].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[4].loc.offset = (long)&sf->REG_NAME(rsi) - new_cfa;
-+ fs->regs.reg[5].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[5].loc.offset = (long)&sf->REG_NAME(rdi) - new_cfa;
-+ fs->regs.reg[6].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[6].loc.offset = (long)&sf->REG_NAME(rbp) - new_cfa;
-+ fs->regs.reg[8].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[8].loc.offset = (long)&sf->REG_NAME(r8) - new_cfa;
-+ fs->regs.reg[9].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[9].loc.offset = (long)&sf->REG_NAME(r9) - new_cfa;
-+ fs->regs.reg[10].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[10].loc.offset = (long)&sf->REG_NAME(r10) - new_cfa;
-+ fs->regs.reg[11].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[11].loc.offset = (long)&sf->REG_NAME(r11) - new_cfa;
-+ fs->regs.reg[12].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[12].loc.offset = (long)&sf->REG_NAME(r12) - new_cfa;
-+ fs->regs.reg[13].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[13].loc.offset = (long)&sf->REG_NAME(r13) - new_cfa;
-+ fs->regs.reg[14].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[14].loc.offset = (long)&sf->REG_NAME(r14) - new_cfa;
-+ fs->regs.reg[15].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[15].loc.offset = (long)&sf->REG_NAME(r15) - new_cfa;
-+ fs->regs.reg[16].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[16].loc.offset = (long)&sf->REG_NAME(rip) - new_cfa;
-+ fs->retaddr_column = 16;
-+ fs->signal_frame = 1;
-+ return _URC_NO_REASON;
-+}
-+
-+#else /* Next section is for i386 */
-+
-+#define MD_FALLBACK_FRAME_STATE_FOR x86_freebsd_fallback_frame_state
-+
-+/*
-+ * We can't use KERN_PS_STRINGS anymore if we want to support FreeBSD32
-+ * compat on AMD64. The sigtramp is in a shared page in that case so the
-+ * x86_sigtramp_range only works on a true i386 system. We have to
-+ * search for the sigtramp frame if we want it working everywhere.
-+ */
-+
-+static _Unwind_Reason_Code
-+x86_freebsd_fallback_frame_state
-+(struct _Unwind_Context *context, _Unwind_FrameState *fs)
-+{
-+ struct sigframe *sf;
-+ long new_cfa;
-+
-+/*
-+ * i386 sigtramp frame we are looking for follows.
-+ * Apparently PSL_VM is variable, so we can't look past context->ra + 4
-+ * <sigcode>:
-+ * 0: ff 54 24 10 call *0x10(%esp) *SIGF_HANDLER
-+ * 4: 8d 44 24 20 lea 0x20(%esp),%eax SIGF_UC
-+ * 8: 50 push %eax
-+ * 9: f7 40 54 00 00 02 00 testl $0x20000,0x54(%eax) $PSL_VM
-+ * 10: 75 03 jne 15 <sigcode+0x15>
-+ * 12: 8e 68 14 mov 0x14(%eax),%gs UC_GS
-+ * 15: b8 a1 01 00 00 mov 0x1a1,%eax $SYS_sigreturn
-+ */
-+
-+ if (!( *(unsigned int *)(context->ra - 4) == 0x102454ff
-+ && *(unsigned int *)(context->ra) == 0x2024448d ))
-+ return _URC_END_OF_STACK;
-+
-+ sf = (struct sigframe *) context->cfa;
-+ new_cfa = sf->REG_NAME(esp);
-+ fs->regs.cfa_how = CFA_REG_OFFSET;
-+ fs->regs.cfa_reg = 4;
-+ fs->regs.cfa_offset = new_cfa - (long) context->cfa;
-+
-+ /* The SVR4 register numbering macros aren't usable in libgcc. */
-+ fs->regs.reg[0].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[0].loc.offset = (long)&sf->REG_NAME(eax) - new_cfa;
-+ fs->regs.reg[3].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[3].loc.offset = (long)&sf->REG_NAME(ebx) - new_cfa;
-+ fs->regs.reg[1].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[1].loc.offset = (long)&sf->REG_NAME(ecx) - new_cfa;
-+ fs->regs.reg[2].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[2].loc.offset = (long)&sf->REG_NAME(edx) - new_cfa;
-+ fs->regs.reg[6].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[6].loc.offset = (long)&sf->REG_NAME(esi) - new_cfa;
-+ fs->regs.reg[7].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[7].loc.offset = (long)&sf->REG_NAME(edi) - new_cfa;
-+ fs->regs.reg[5].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[5].loc.offset = (long)&sf->REG_NAME(ebp) - new_cfa;
-+ fs->regs.reg[8].how = REG_SAVED_OFFSET;
-+ fs->regs.reg[8].loc.offset = (long)&sf->REG_NAME(eip) - new_cfa;
-+ fs->retaddr_column = 8;
-+ fs->signal_frame = 1;
-+ return _URC_NO_REASON;
-+}
-+#endif /* ifdef __x86_64__ */
---- /dev/null
+++ libgcc/config/i386/netbsd-unwind.h
@@ -0,0 +1,178 @@
+/* DWARF2 EH unwinding support for NetBSD: AMD x86-64 and x86.
@@ -430,7 +252,7 @@
}
--- gcc/config.gcc.orig
+++ gcc/config.gcc
-@@ -1393,12 +1393,16 @@
+@@ -1399,12 +1399,16 @@
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/x86-64.h i386/freebsd.h i386/freebsd64.h"
;;
i[34567]86-*-netbsdelf*)
@@ -451,7 +273,7 @@
tm_file="i386/i386.h i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h openbsd-oldgas.h openbsd.h i386/openbsd.h"
--- gcc/configure.orig
+++ gcc/configure
-@@ -27806,6 +27806,13 @@
+@@ -27961,6 +27961,13 @@
gcc_cv_target_dl_iterate_phdr=no
fi
;;
@@ -527,9 +349,34 @@
&& defined(__OpenBSD__)
# define ElfW(type) Elf_##type
# define USE_PT_GNU_EH_FRAME
+--- libgcc/config.host.orig
++++ libgcc/config.host
+@@ -240,7 +240,8 @@
+ extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
+ ;;
+ *-*-netbsd*)
+- tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver"
++ tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-eh-dw2-dip"
++ tmake_file="$tmake_file t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver"
+ # NetBSD 1.7 and later are set up to use GCC's crtstuff for
+ # ELF configurations. We will clear extra_parts in the
+ # a.out configurations.
+@@ -579,9 +580,12 @@
+ md_unwind_header=i386/freebsd-unwind.h
+ ;;
+ i[34567]86-*-netbsdelf*)
++ tmake_file="${tmake_file} i386/t-crtstuff"
++ md_unwind_header=i386/netbsd-unwind.h
+ ;;
+ x86_64-*-netbsd*)
+ tmake_file="${tmake_file} i386/t-crtstuff"
++ md_unwind_header=i386/netbsd-unwind.h
+ ;;
+ i[34567]86-*-openbsd2.*|i[34567]86-*openbsd3.[0123])
+ ;;
--- gcc/Makefile.in.orig
+++ gcc/Makefile.in
-@@ -1156,7 +1156,6 @@
+@@ -1163,7 +1163,6 @@
insn-emit.o \
insn-extract.o \
insn-latencytab.o \
@@ -537,7 +384,7 @@
insn-opinit.o \
insn-output.o \
insn-peep.o \
-@@ -1511,6 +1510,7 @@
+@@ -1518,6 +1517,7 @@
$(OBJS-libcommon-target) @TREEBROWSER@ main.o c-family/cppspec.o \
$(COLLECT2_OBJS) $(EXTRA_GCC_OBJS) $(GCOV_OBJS) $(GCOV_DUMP_OBJS) \
$(GCOV_TOOL_OBJS) $(GENGTYPE_OBJS) gcc-ar.o gcc-nm.o gcc-ranlib.o \
@@ -545,7 +392,7 @@
lto-wrapper.o collect-utils.o
# This lists all host object files, whether they are included in this
-@@ -1518,6 +1518,11 @@
+@@ -1525,6 +1525,11 @@
ALL_HOST_OBJS = $(ALL_HOST_FRONTEND_OBJS) $(ALL_HOST_BACKEND_OBJS)
BACKEND = libbackend.a main.o @TREEBROWSER@ libcommon-target.a libcommon.a \
@@ -557,7 +404,7 @@
$(CPPLIB) $(LIBDECNUMBER)
# This is defined to "yes" if Tree checking is enabled, which roughly means
-@@ -2164,6 +2169,7 @@
+@@ -2171,6 +2176,7 @@
insn-modes.c: s-modes; @true
insn-modes.h: s-modes-h; @true
@@ -565,7 +412,7 @@
min-insn-modes.c: s-modes-m; @true
s-modes: build/genmodes$(build_exeext)
-@@ -2181,6 +2187,12 @@
+@@ -2188,6 +2194,12 @@
$(SHELL) $(srcdir)/../move-if-change tmp-min-modes.c min-insn-modes.c
$(STAMP) s-modes-m
@@ -578,7 +425,7 @@
insn-preds.c: s-preds; @true
tm-preds.h: s-preds-h; @true
tm-constrs.h: s-constrs-h; @true
-@@ -3326,6 +3338,9 @@
+@@ -3333,6 +3345,9 @@
( cd $(DESTDIR)$(bindir) && \
$(LN) $(GCC_INSTALL_NAME)$(exeext) $(FULL_DRIVER_NAME) ); \
fi; \
@@ -588,35 +435,8 @@
if [ ! -f gcc-cross$(exeext) ] \
&& [ "$(GCC_INSTALL_NAME)" != "$(GCC_TARGET_INSTALL_NAME)" ]; then \
rm -f $(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-tmp$(exeext); \
---- libgcc/config.host.orig
-+++ libgcc/config.host
-@@ -240,7 +240,8 @@
- extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
- ;;
- *-*-netbsd*)
-- tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver"
-+ tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-eh-dw2-dip"
-+ tmake_file="$tmake_file t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver"
- # NetBSD 1.7 and later are set up to use GCC's crtstuff for
- # ELF configurations. We will clear extra_parts in the
- # a.out configurations.
-@@ -567,14 +568,19 @@
- ;;
- i[34567]86-*-freebsd*)
- tmake_file="${tmake_file} i386/t-freebsd i386/t-crtstuff"
-+ md_unwind_header=i386/freebsd-unwind.h
- ;;
- x86_64-*-freebsd*)
- tmake_file="${tmake_file} i386/t-freebsd i386/t-crtstuff"
-+ md_unwind_header=i386/freebsd-unwind.h
- ;;
- i[34567]86-*-netbsdelf*)
-+ tmake_file="${tmake_file} i386/t-crtstuff"
-+ md_unwind_header=i386/netbsd-unwind.h
- ;;
- x86_64-*-netbsd*)
- tmake_file="${tmake_file} i386/t-crtstuff"
-+ md_unwind_header=i386/netbsd-unwind.h
- ;;
- i[34567]86-*-openbsd2.*|i[34567]86-*openbsd3.[0123])
- ;;
+--- libgcc/config/i386/t-dragonfly.orig
++++ libgcc/config/i386/t-dragonfly
+@@ -0,0 +1,2 @@
++# Required for -fcilkplus support
++SHLIB_MAPFILES += $(srcdir)/config/i386/libgcc-bsd.ver
Index: pkgsrc/lang/gcc5-aux/files/diff-cxx
diff -u pkgsrc/lang/gcc5-aux/files/diff-cxx:1.1 pkgsrc/lang/gcc5-aux/files/diff-cxx:1.2
--- pkgsrc/lang/gcc5-aux/files/diff-cxx:1.1 Mon Jun 15 09:46:27 2015
+++ pkgsrc/lang/gcc5-aux/files/diff-cxx Sun Aug 28 17:59:37 2016
@@ -1,3 +1,112 @@
+--- libstdc++-v3/config/locale/dragonfly/c_locale.cc.orig
++++ libstdc++-v3/config/locale/dragonfly/c_locale.cc
+@@ -36,6 +36,7 @@
+ #include <locale>
+ #include <limits>
+
++#include <xlocale.h>
+ #ifdef _GLIBCXX_HAVE_IEEEFP_H
+ #include <ieeefp.h>
+ #endif
+@@ -206,61 +207,45 @@
+ delete [] __sav;
+ }
+
+-
+- /* DragonFly's implementation of setlocale won't accept something like
+- "de_DE". According to nls manpage, the expected format is:
+- language[_territory][.codeset][@modifier], but it seems that both
+- the _territory and .codeset components are required.
+-
+- As an attempt to correct for this, we'll tack on ".UTF-8" if
+- a period is not detected in the locale string.
+-
+- There are no locales with modifiers on DragonFly so if found, they
+- will just be stripped off silently. e.g "de_DE@euro" will be reduced
+- to "de_DE". The UTF-8 default would be added after that.
+- */
+-
+ void
+ locale::facet::_S_create_c_locale(__c_locale& __cloc, const char* __s,
+- __c_locale)
++ __c_locale __old)
+ {
+- const size_t size__s = (__s == NULL) ? 1 : strlen (__s);
+- const char UTF8[] = ".UTF-8";
+- char localspec[size__s + 6 + 1];
+-
+- if (__s == NULL) {
+- localspec[0] = '\0';
+- } else {
+- strcpy (localspec, __s);
+- char * pch = strchr (localspec, '@');
+- if (pch != NULL)
+- *pch = 0;
+-
+- if ( (strchr (__s, '.') == NULL)
+- && (strcmp (__s, "C") != 0)
+- && (strcmp (__s, "POSIX") != 0))
+- strncat (localspec, UTF8, 6);
+- }
+-
+- const char * result = std::setlocale(LC_ALL, localspec);
++ __cloc = (__c_locale)newlocale(LC_ALL_MASK, __s, (locale_t)__old);
+
+- if ((strcmp(result, "C") != 0) && (strcmp (result, localspec) != 0))
++ if (!__cloc)
+ __throw_runtime_error(__N("locale::facet::_S_create_c_locale "
+ "name not valid"));
+- __cloc = 0;
+ }
+
+ void
+ locale::facet::_S_destroy_c_locale(__c_locale& __cloc)
+- { __cloc = 0; }
++ {
++ if (__cloc && _S_get_c_locale() != __cloc)
++ freelocale((locale_t)__cloc);
++ }
+
+ __c_locale
+- locale::facet::_S_clone_c_locale(__c_locale&) throw()
+- { return __c_locale(); }
++ locale::facet::_S_clone_c_locale(__c_locale& __cloc) throw()
++ { return (__c_locale)duplocale((locale_t)__cloc); }
+
+ __c_locale
+- locale::facet::_S_lc_ctype_c_locale(__c_locale, const char*)
+- { return __c_locale(); }
++ locale::facet::_S_lc_ctype_c_locale(__c_locale __cloc, const char* __s)
++ {
++ __c_locale __dup = (__c_locale)duplocale((locale_t)__cloc);
++ if (__dup == __c_locale(0))
++ __throw_runtime_error(__N("locale::facet::_S_lc_ctype_c_locale "
++ "duplocale error"));
++ __c_locale __changed = (__c_locale)newlocale(LC_CTYPE_MASK, __s,
++ (locale_t)__dup);
++ if (__changed == __c_locale(0))
++ {
++ freelocale((locale_t)__dup);
++ __throw_runtime_error(__N("locale::facet::_S_lc_ctype_c_locale "
++ "newlocale error"));
++ }
++ return __changed;
++ }
+
+ _GLIBCXX_END_NAMESPACE_VERSION
+ } // namespace
+--- libstdc++-v3/config/os/bsd/dragonfly/os_defines.h.orig
++++ libstdc++-v3/config/os/bsd/dragonfly/os_defines.h
+@@ -29,4 +29,9 @@
+ // System-specific #define, typedefs, corrections, etc, go here. This
+ // file will come before all others.
+
++#define _GLIBCXX_USE_C99_CHECK 1
++#define _GLIBCXX_USE_C99_DYNAMIC (!(__ISO_C_VISIBLE >= 1999))
++#define _GLIBCXX_USE_C99_LONG_LONG_CHECK 1
++#define _GLIBCXX_USE_C99_LONG_LONG_DYNAMIC (_GLIBCXX_USE_C99_DYNAMIC || !defined __LONG_LONG_SUPPORTED)
++
+ #endif
--- libstdc++-v3/config/os/bsd/netbsd/ctype_base.h.orig
+++ libstdc++-v3/config/os/bsd/netbsd/ctype_base.h
@@ -43,9 +43,22 @@
@@ -100,7 +209,7 @@
--- libstdc++-v3/configure.host.orig
+++ libstdc++-v3/configure.host
-@@ -268,6 +268,9 @@
+@@ -270,6 +270,9 @@
dragonfly*)
os_include_dir="os/bsd/dragonfly"
;;
Index: pkgsrc/lang/gcc5-aux/files/diff-cxx-testsuite
diff -u pkgsrc/lang/gcc5-aux/files/diff-cxx-testsuite:1.1 pkgsrc/lang/gcc5-aux/files/diff-cxx-testsuite:1.2
--- pkgsrc/lang/gcc5-aux/files/diff-cxx-testsuite:1.1 Mon Jun 15 09:46:27 2015
+++ pkgsrc/lang/gcc5-aux/files/diff-cxx-testsuite Sun Aug 28 17:59:37 2016
@@ -1,6 +1,6 @@
--- libstdc++-v3/testsuite/lib/libstdc++.exp.orig
+++ libstdc++-v3/testsuite/lib/libstdc++.exp
-@@ -898,17 +898,18 @@
+@@ -902,17 +902,18 @@
set f [open $src "w"]
puts $f "#include <locale>"
puts $f "#include <cstdio>"
Index: pkgsrc/lang/gcc5-aux/files/diff-fortran
diff -u pkgsrc/lang/gcc5-aux/files/diff-fortran:1.1 pkgsrc/lang/gcc5-aux/files/diff-fortran:1.2
--- pkgsrc/lang/gcc5-aux/files/diff-fortran:1.1 Mon Jun 15 09:46:27 2015
+++ pkgsrc/lang/gcc5-aux/files/diff-fortran Sun Aug 28 17:59:37 2016
@@ -11,7 +11,7 @@
;;
--- libgfortran/configure.orig
+++ libgfortran/configure
-@@ -26447,7 +26447,7 @@
+@@ -26456,7 +26456,7 @@
fi
case "$host" in
@@ -22,7 +22,7 @@
--- gcc/fortran/f95-lang.c.orig
+++ gcc/fortran/f95-lang.c
-@@ -776,10 +776,17 @@
+@@ -777,10 +777,17 @@
gfc_define_builtin ("__builtin_cabsl", func_clongdouble_longdouble,
BUILT_IN_CABSL, "cabsl", ATTR_CONST_NOTHROW_LEAF_LIST);
Home |
Main Index |
Thread Index |
Old Index