Index: branches/2018Q1/lang/gcc7/Makefile =================================================================== --- branches/2018Q1/lang/gcc7/Makefile (revision 464950) +++ branches/2018Q1/lang/gcc7/Makefile (revision 464951) @@ -1,141 +1,140 @@ # Created by: Gerald Pfeifer # $FreeBSD$ PORTNAME= gcc -PORTVERSION= 7.2.0 -PORTREVISION= 4 +PORTVERSION= 7.3.0 CATEGORIES= lang MASTER_SITES= GCC/releases/gcc-${DISTVERSION} PKGNAMESUFFIX= ${SUFFIX} MAINTAINER= gerald@FreeBSD.org COMMENT= GNU Compiler Collection 7 LICENSE= GPLv3 GPLv3RLE LICENSE_COMB= multi ONLY_FOR_ARCHS= aarch64 amd64 arm armv6 armv7 i386 powerpc powerpc64 sparc64 LIB_DEPENDS= libgmp.so:math/gmp \ libmpfr.so:math/mpfr \ libmpc.so:math/mpc BUILD_DEPENDS+= ${LOCALBASE}/bin/as:devel/binutils RUN_DEPENDS+= ${LOCALBASE}/bin/as:devel/binutils .if defined(MAINTAINER_MODE) BUILD_DEPENDS+= runtest:misc/dejagnu .endif CONFLICTS= gcc7-devel-7.* CPE_VENDOR= gnu GCC_VERSION= ${PORTVERSION} SUFFIX= ${PORTVERSION:C/([0-9]+).*/\1/} USES= compiler cpe gmake iconv libtool makeinfo perl5 tar:xz USE_BINUTILS= yes USE_PERL5= build SSP_UNSAFE= yes OPTIONS_DEFINE= BOOTSTRAP GRAPHITE OPTIONS_DEFAULT= BOOTSTRAP BOOTSTRAP_DESC= Build using a full bootstrap GRAPHITE_DESC= Support for Graphite loop optimizations .if exists(/usr/lib32/libc.so) OPTIONS_DEFINE_powerpc64+= MULTILIB OPTIONS_DEFAULT_powerpc64+= MULTILIB MULTILIB_DESC= Build support for 32-bit and 64-bit targets MULTILIB_CONFIGURE_ENABLE= multilib .else CONFIGURE_ARGS+= --disable-multilib .endif .include .if ${ARCH} == amd64 CONFIGURE_TARGET= x86_64-portbld-${OPSYS:tl}${OSREL} .elif ${ARCH} == powerpc64 CONFIGURE_ENV+= UNAME_m="powerpc64" USE_GCC= yes .endif LANGUAGES:= c,c++,objc,fortran TARGLIB= ${PREFIX}/lib/gcc${SUFFIX} LIBEXEC= ${PREFIX}/libexec/gcc${SUFFIX} GNU_CONFIGURE= yes CONFIGURE_OUTSOURCE= yes .if empty(PORT_OPTIONS:MBOOTSTRAP) CONFIGURE_ARGS+=--disable-bootstrap .else CONFIGURE_ARGS+=--with-build-config=bootstrap-debug ALL_TARGET= bootstrap-lean .endif INSTALL_TARGET= install-strip .if ${UID} != 0 BINMODE= 755 .endif CONFIGURE_ARGS+=--disable-nls \ --enable-gnu-indirect-function \ --libdir=${TARGLIB} \ --libexecdir=${LIBEXEC} \ --program-suffix=${SUFFIX} \ --with-as=${LOCALBASE}/bin/as \ --with-gmp=${LOCALBASE} \ --with-gxx-include-dir=${TARGLIB}/include/c++/ \ --with-ld=${LOCALBASE}/bin/ld \ ${ICONV_CONFIGURE_ARG} \ --with-pkgversion="FreeBSD Ports Collection" \ --with-system-zlib MAKE_ARGS+= MAKEINFOFLAGS="--no-split" USE_LDCONFIG= ${TARGLIB} PLIST_SUB= GCC_VERSION=${GCC_VERSION} \ GNU_HOST=${CONFIGURE_TARGET} \ SUFFIX=${SUFFIX} INFO= gcc${SUFFIX}/cpp \ gcc${SUFFIX}/cppinternals \ gcc${SUFFIX}/gcc \ gcc${SUFFIX}/gccinstall \ gcc${SUFFIX}/gccint \ gcc${SUFFIX}/gfortran \ gcc${SUFFIX}/libgomp # Release tarballs (as opposed to snapshots) always carry this. INFO+= gcc${SUFFIX}/libquadmath \ gcc${SUFFIX}/libitm SUB_FILES= pkg-message SUB_LIST+= TARGLIB=${TARGLIB} .if ${PORT_OPTIONS:MGRAPHITE} LIB_DEPENDS+= libisl.so:devel/isl CONFIGURE_ARGS+=--with-isl=${LOCALBASE} .endif CONFIGURE_ARGS+=--enable-languages=${LANGUAGES} pre-everything:: @${ECHO_MSG} "Making GCC ${PORTVERSION} for ${CONFIGURE_TARGET} [${LANGUAGES}]" pre-configure: cd ${WRKSRC} ; contrib/gcc_update --touch @${RM} ${WRKSRC}/gcc/*/*.info* .if defined(MAINTAINER_MODE) full-regression-test: build cd ${TEST_WRKSRC}; ${MAKE_CMD} -sk check \ ; ${WRKSRC}/contrib/test_summary .endif post-stage: ${RM} ${STAGEDIR}${PREFIX}/man/man7/* ${RM} -r ${STAGEDIR}${TARGLIB}/gcc/*/${GCC_VERSION}/include-fixed/ # Add target libraries and include files to packaging list. ${RM} ${WRKDIR}/PLIST.lib .for d in ${TARGLIB:S/^${PREFIX}\///} ${LIBEXEC:S/^${PREFIX}\///} cd ${STAGEDIR}${PREFIX} ; if [ -d $d ]; then \ ${FIND} $d -type f -o -type l >>${WRKDIR}/PLIST.lib ;\ fi .endfor cd ${WRKDIR} ; ${SED} -i -e "/PLIST.lib/ r PLIST.lib" ${TMPPLIST} .include Index: branches/2018Q1/lang/gcc7/distinfo =================================================================== --- branches/2018Q1/lang/gcc7/distinfo (revision 464950) +++ branches/2018Q1/lang/gcc7/distinfo (revision 464951) @@ -1,3 +1,3 @@ -TIMESTAMP = 1502753387 -SHA256 (gcc-7.2.0.tar.xz) = 1cf7adf8ff4b5aa49041c8734bbcf1ad18cc4c94d0029aae0f4e48841088479a -SIZE (gcc-7.2.0.tar.xz) = 62312628 +TIMESTAMP = 1516953569 +SHA256 (gcc-7.3.0.tar.xz) = 832ca6ae04636adbb430e865a1451adf6979ab44ca1c8374f61fba65645ce15c +SIZE (gcc-7.3.0.tar.xz) = 62462388 Index: branches/2018Q1/lang/gcc7/files/patch-armv7-support =================================================================== --- branches/2018Q1/lang/gcc7/files/patch-armv7-support (revision 464950) +++ branches/2018Q1/lang/gcc7/files/patch-armv7-support (nonexistent) @@ -1,21 +0,0 @@ ---- UTC -Index: gcc/config.gcc -=================================================================== ---- gcc/config.gcc (revision 253513) -+++ gcc/config.gcc (working copy) -@@ -1077,11 +1077,14 @@ - case $target in - armv6*-*-freebsd*) - target_cpu_cname="arm1176jzfs" -- tm_defines="${tm_defines} TARGET_FREEBSD_ARMv6=1" - if test $fbsd_major -ge 11; then - tm_defines="${tm_defines} TARGET_FREEBSD_ARM_HARD_FLOAT=1" - fi - ;; -+ armv7*-*-freebsd*) -+ target_cpu_cname="genericv7a" -+ tm_defines="${tm_defines} TARGET_FREEBSD_ARM_HARD_FLOAT=1" -+ ;; - *) - target_cpu_cname="arm9" - ;; Property changes on: branches/2018Q1/lang/gcc7/files/patch-armv7-support ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q1/lang/gcc7/files/patch-freebsd-unwind.h =================================================================== --- branches/2018Q1/lang/gcc7/files/patch-freebsd-unwind.h (revision 464950) +++ branches/2018Q1/lang/gcc7/files/patch-freebsd-unwind.h (nonexistent) @@ -1,90 +0,0 @@ -2017-11-05 Andreas Tobler - - Backport from mainline - 2017-11-04 Andreas Tobler - - PR libgcc/82635 - * config/i386/freebsd-unwind.h (MD_FALLBACK_FRAME_STATE_FOR): Use a - sysctl to determine whether we're in a trampoline. - Keep the pattern matching method for systems without - KERN_PROC_SIGTRAMP sysctl. - ---- UTC ---- libgcc/config/i386/freebsd-unwind.h 2017/11/05 17:24:37 254430 -+++ libgcc/config/i386/freebsd-unwind.h 2017/11/05 19:30:41 254431 -@@ -28,7 +28,10 @@ - - #include - #include -+#include -+#include - #include -+#include - #include - - #define REG_NAME(reg) sf_uc.uc_mcontext.mc_## reg -@@ -36,6 +39,38 @@ - #ifdef __x86_64__ - #define MD_FALLBACK_FRAME_STATE_FOR x86_64_freebsd_fallback_frame_state - -+#ifdef KERN_PROC_SIGTRAMP -+/* FreeBSD past 9.3 provides a kern.proc.sigtramp. sysctl that -+ returns the location of the signal trampoline. Use this to find -+ out whether we're in a trampoline. -+*/ -+static int -+x86_64_outside_sigtramp_range (unsigned char *pc) -+{ -+ static int sigtramp_range_determined = 0; -+ static unsigned char *sigtramp_start, *sigtramp_end; -+ -+ if (sigtramp_range_determined == 0) -+ { -+ struct kinfo_sigtramp kst = {0}; -+ size_t len = sizeof (kst); -+ int mib[4] = { CTL_KERN, KERN_PROC, KERN_PROC_SIGTRAMP, getpid() }; -+ -+ sigtramp_range_determined = 1; -+ if (sysctl (mib, 4, &kst, &len, NULL, 0) == 0) -+ { -+ sigtramp_range_determined = 2; -+ sigtramp_start = kst.ksigtramp_start; -+ sigtramp_end = kst.ksigtramp_end; -+ } -+ } -+ if (sigtramp_range_determined < 2) /* sysctl failed if < 2 */ -+ return 1; -+ -+ return (pc < sigtramp_start || pc >= sigtramp_end); -+} -+#endif -+ - static _Unwind_Reason_Code - x86_64_freebsd_fallback_frame_state - (struct _Unwind_Context *context, _Unwind_FrameState *fs) -@@ -43,6 +78,7 @@ - struct sigframe *sf; - long new_cfa; - -+#ifndef KERN_PROC_SIGTRAMP - /* 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 -@@ -62,12 +98,15 @@ - && *(unsigned int *)(context->ra + 8) == 0x01a1c0c7 - && *(unsigned int *)(context->ra + 12) == 0x050f0000 )) - return _URC_END_OF_STACK; -+#else -+ if (x86_64_outside_sigtramp_range(context->ra)) -+ return _URC_END_OF_STACK; -+#endif - - 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_reg = __LIBGCC_STACK_POINTER_REGNUM__; - fs->regs.cfa_offset = new_cfa - (long) context->cfa; - - /* The SVR4 register numbering macros aren't usable in libgcc. */ Property changes on: branches/2018Q1/lang/gcc7/files/patch-freebsd-unwind.h ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q1 =================================================================== --- branches/2018Q1 (revision 464950) +++ branches/2018Q1 (revision 464951) Property changes on: branches/2018Q1 ___________________________________________________________________ Modified: svn:mergeinfo ## -0,0 +0,1 ## Merged /head:r459981