mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-26 09:46:09 +00:00
Update to gcc 4.7.3
Convert to new options framework Use binutils from ports on FreeBSD 8 PR: ports/178143 Submitted by: John Marino <draco@marino.st>
This commit is contained in:
parent
c52c2b43f7
commit
e2328653a6
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=316915
@ -1,16 +1,10 @@
|
||||
# New ports collection makefile for: gcc-aux
|
||||
# Date created: 2012-07-15
|
||||
# Whom: John Marino <draco@marino.st>
|
||||
#
|
||||
# Created by: John Marino <draco@marino.st>
|
||||
# $FreeBSD$
|
||||
#
|
||||
|
||||
PORTNAME= gcc-aux
|
||||
PORTVERSION= ${SNAPSHOT}
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= lang
|
||||
MASTER_SITES= http://downloads.dragonlace.net/src/:boot \
|
||||
http://dragonlace.mirrors.ada.cx/src/:boot \
|
||||
${MASTER_SITE_GCC}
|
||||
MASTER_SITE_SUBDIR= releases/gcc-${GCC_VERSION}
|
||||
DISTFILES= gcc-${GCC_VERSION}.tar.bz2
|
||||
@ -26,29 +20,46 @@ INTENDED_COMPILER= NATIVE
|
||||
BOOTSTRAP_COMPILER= NOT_REQUIRED
|
||||
BOOTSTRAP_TRIPLET= NOT_SET
|
||||
FULL_GNATGCC= NOT_SET
|
||||
OS_LABEL4VERS= [${OPSYS}]
|
||||
GARCH= ${ARCH:S/amd64/x86_64/}
|
||||
|
||||
OPTIONS= ADA "Build Ada language" on
|
||||
OPTIONS+= CXX "Build C++ language" on
|
||||
OPTIONS+= FORT "Build Fortran language" on
|
||||
OPTIONS+= OBJC "Build Objective-C language" on
|
||||
OPTIONS+= STATIC "Build with no shared libraries other than libc" off
|
||||
OPTIONS+= TESTSUITE "Activate test support" off
|
||||
OPTIONS+= NLS "Native Language Support" off
|
||||
OPTIONS_DEFINE= ADA CXX FORT OBJC STATIC TESTSUITE NLS
|
||||
OPTIONS_DEFAULT= ADA CXX FORT OBJC
|
||||
NO_OPTIONS_SORT= yes
|
||||
|
||||
ADA_DESC= Build Ada language
|
||||
CXX_DESC= Build C++ language
|
||||
FORT_DESC= Build Fortran language
|
||||
OBJC_DESC= Build Objective-C language
|
||||
STATIC_DESC= Build with no shared libraries other than libc
|
||||
TESTSUITE_DESC= Activate test support
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${ARCH} == "amd64"
|
||||
BLD_TARGET= x86_64-aux-freebsd${OSREL}
|
||||
.if ${OPSYS} == FreeBSD
|
||||
. if ${OSVERSION} < 900000
|
||||
USE_BINUTILS= yes
|
||||
EXTRA_CONFIG+= --with-as=${LOCALBASE}/bin/as
|
||||
EXTRA_CONFIG+= --with-ld=${LOCALBASE}/bin/ld
|
||||
RUN_DEPENDS+= ${LOCALBASE}/bin/as:${PORTSDIR}/devel/binutils
|
||||
. endif
|
||||
. if ${GARCH} == x86_64
|
||||
OS_LABEL4VERS= [FreeBSD64]
|
||||
BOOTSTRAP_TRIPLET= x86_64-bootstrap-freebsd8.1/4.6.0
|
||||
BOOTSTRAP_COMPILER= gnat-bootstrap.x86_64.freebsd.tar.bz2
|
||||
.else
|
||||
BLD_TARGET= i386-aux-freebsd${OSREL}
|
||||
OS_LABEL4VERS= [FreeBSD]
|
||||
. else
|
||||
BOOTSTRAP_TRIPLET= i386-bootstrap-freebsd8.0/4.6.0
|
||||
BOOTSTRAP_COMPILER= gnat-bootstrap.i386.freebsd.tar.bz2
|
||||
. endif
|
||||
.endif
|
||||
.if ${OPSYS} == DragonFly
|
||||
. if ${GARCH} == x86_64
|
||||
OS_LABEL4VERS= [DragonFly64]
|
||||
BOOTSTRAP_TRIPLET= x86_64-bootstrap-dragonfly2.8/4.6.0
|
||||
. else
|
||||
BOOTSTRAP_TRIPLET= i386-bootstrap-dragonfly2.8/4.6.0
|
||||
. endif
|
||||
.endif
|
||||
BLD_TARGET= ${GARCH}-aux-${OPSYS:L}${OSREL}
|
||||
BOOTSTRAP_COMPILER= gnat-bootstrap.${GARCH}.${OPSYS:L}.tar.bz2
|
||||
|
||||
WRKSRC= ${WRKDIR}/gcc-${GCC_VERSION}
|
||||
BUILDDIR= ${WRKDIR}/build
|
||||
@ -79,7 +90,7 @@ FULL_PATH=/sbin:/bin:/usr/sbin:/usr/bin:${PREFIX}/${PORTNAME}/bin:${PREFIX}/bin
|
||||
.endif
|
||||
|
||||
# If FULL_GNATGCC is not set, we'll request the bootstrap compiler
|
||||
.if ${FULL_GNATGCC} == "NOT_SET"
|
||||
.if ${FULL_GNATGCC} == NOT_SET
|
||||
INTENDED_COMPILER=BOOTSTRAP
|
||||
FULL_GNATGCC=${BOOTSTRAP_PREFIX}/bin/gnatgcc
|
||||
FULL_PATH=${BOOTSTRAP_PREFIX}/bin:/sbin:/bin:/usr/sbin:/usr/bin:${PREFIX}/bin
|
||||
@ -89,6 +100,8 @@ DISTFILES+= ${BOOTSTRAP_COMPILER}:boot
|
||||
# for port maintenance, invoke "make makesum PLUS_BOOTSTRAPS=1"
|
||||
.if defined(PLUS_BOOTSTRAPS)
|
||||
DISTFILES=gcc-${GCC_VERSION}.tar.bz2 \
|
||||
gnat-bootstrap.i386.dragonfly.tar.bz2:boot \
|
||||
gnat-bootstrap.x86_64.dragonfly.tar.bz2:boot \
|
||||
gnat-bootstrap.i386.freebsd.tar.bz2:boot \
|
||||
gnat-bootstrap.x86_64.freebsd.tar.bz2:boot
|
||||
.endif
|
||||
@ -97,7 +110,7 @@ DISTFILES=gcc-${GCC_VERSION}.tar.bz2 \
|
||||
## Ada ##
|
||||
###########
|
||||
|
||||
.if defined(WITH_ADA)
|
||||
.if ${PORT_OPTIONS:MADA}
|
||||
LANGS+= ada
|
||||
APPLY_DIFFS+= ada
|
||||
.endif
|
||||
@ -106,7 +119,7 @@ APPLY_DIFFS+= ada
|
||||
## C++ ##
|
||||
###########
|
||||
|
||||
.if defined(WITH_CXX)
|
||||
.if ${PORT_OPTIONS:MCXX}
|
||||
LANGS+= c++
|
||||
APPLY_DIFFS+= cxx
|
||||
MAN1+= g++.1
|
||||
@ -116,7 +129,7 @@ MAN1+= g++.1
|
||||
## Fortran ##
|
||||
###############
|
||||
|
||||
.if defined(WITH_FORT)
|
||||
.if ${PORT_OPTIONS:MFORT}
|
||||
LANGS+= fortran
|
||||
APPLY_DIFFS+= fortran
|
||||
MAN1+= gfortran.1
|
||||
@ -129,7 +142,7 @@ EXTRA_CONFIG+= --disable-libquadmath
|
||||
## Objective-C ##
|
||||
###################
|
||||
|
||||
.if defined(WITH_OBJC)
|
||||
.if ${PORT_OPTIONS:MOBJC}
|
||||
LANGS+= objc
|
||||
.endif
|
||||
|
||||
@ -137,7 +150,7 @@ LANGS+= objc
|
||||
## Testsuite Support ##
|
||||
#########################
|
||||
|
||||
.if defined(WITH_TESTSUITE)
|
||||
.if ${PORT_OPTIONS:MTESTSUITE}
|
||||
BUILD_DEPENDS= dejagnu>=1.4:${PORTSDIR}/misc/dejagnu
|
||||
APPLY_DIFFS+= ada-testsuite
|
||||
APPLY_DIFFS+= fortran-testsuite
|
||||
@ -149,8 +162,8 @@ APPLY_DIFFS+= gcc-testsuite
|
||||
## NATIONAL LANGUAGE SUPPORT ##
|
||||
#################################
|
||||
|
||||
.if defined(WITH_NLS)
|
||||
BUILD_DEPENDS= gettext>=0.18:${PORTSDIR}/devel/gettext
|
||||
.if ${PORT_OPTIONS:MNLS}
|
||||
USES+= gettext:build
|
||||
EXTRA_CONFIG+= --enable-nls
|
||||
.else
|
||||
EXTRA_CONFIG+= --disable-nls
|
||||
@ -191,7 +204,7 @@ post-extract:
|
||||
@${ECHO} "-=> GNAT AUX ${OS_LABEL4VERS}" > ${REVFILE}
|
||||
|
||||
# Create new directories in preparation of applying diff files
|
||||
.if defined(WITH_CXX)
|
||||
.if ${PORT_OPTIONS:MCXX}
|
||||
${MKDIR} ${WRKSRC}/libstdc++-v3/config/locale/dragonfly
|
||||
${MKDIR} ${WRKSRC}/libstdc++-v3/config/os/bsd/dragonfly
|
||||
.endif
|
||||
@ -204,14 +217,15 @@ post-extract:
|
||||
|
||||
# Update LINK_SPEC to add gcc-aux lib runpath in every binary
|
||||
@${ECHO} "Configuring LINK_SPEC runpath"
|
||||
@perl -pi -e 's;\@PREFIX\@;${PREFIX};' \
|
||||
@${PERL} -pi -e 's;\@PREFIX\@;${PREFIX};' \
|
||||
${WRKSRC}/gcc/config/dragonfly.h \
|
||||
${WRKSRC}/gcc/config/i386/freebsd64.h \
|
||||
${WRKSRC}/gcc/config/i386/freebsd.h
|
||||
|
||||
.if defined(WITH_STATIC)
|
||||
.if ${PORT_OPTIONS:MSTATIC}
|
||||
@${ECHO} "Reconfiguring GCC Makefile to build compiler statically"
|
||||
@${PATCH} -d ${WRKSRC} -s -E < ${FILESDIR}/diff-static-version
|
||||
.if defined(WITH_NLS)
|
||||
.if ${PORT_OPTIONS:MNLS}
|
||||
@${PERL} -pi -e 's;\@LIBINTL\@;${STINTL} ${STICONV};' ${WRKSRC}/intl/config.intl.in
|
||||
@${PERL} -pi -e 's;\@LIBICONV\@;;' \
|
||||
${WRKSRC}/gcc/Makefile.in \
|
||||
@ -225,7 +239,7 @@ post-extract:
|
||||
.endif
|
||||
.endif
|
||||
|
||||
.if ${INTENDED_COMPILER} == "BOOTSTRAP"
|
||||
.if ${INTENDED_COMPILER} == BOOTSTRAP
|
||||
${MKDIR} ${BOOTSTRAP_PREFIX}
|
||||
${MV} ${BOOTSTRAP_PREFIX}/../bin ${BOOTSTRAP_PREFIX}
|
||||
${MV} ${BOOTSTRAP_PREFIX}/../lib ${BOOTSTRAP_PREFIX}
|
||||
@ -234,12 +248,8 @@ post-extract:
|
||||
# Bootstrap compiler has statically linked z, gmp, mpc, mpfr and iconv
|
||||
# The only shared lib is libc.so.7, so it should work for a long time.
|
||||
|
||||
.if ${OSVERSION} > 900000
|
||||
# Since June 7, bootstrap compiler's include-fixed headers have been
|
||||
# incompatible with FreeBSD 9.0-CURRENT
|
||||
${RM} -rf ${BOOTSTRAP_PREFIX}/lib/gcc/${BOOTSTRAP_TRIPLET}/include-fixed
|
||||
.endif
|
||||
.endif
|
||||
|
||||
do-configure:
|
||||
${MKDIR} ${BUILDDIR}
|
||||
@ -252,34 +262,34 @@ do-build:
|
||||
test: build test-ada test-fortran test-objc test-cxx test-c
|
||||
|
||||
test-ada:
|
||||
.if defined(WITH_ADA) && defined(WITH_TESTSUITE)
|
||||
.if ${PORT_OPTIONS:MADA} && ${PORT_OPTIONS:MTESTSUITE}
|
||||
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} ${GMAKE} -sk check-ada
|
||||
.endif
|
||||
|
||||
test-fortran:
|
||||
.if defined(WITH_FORT) && defined(WITH_TESTSUITE)
|
||||
.if ${PORT_OPTIONS:MFORT} && ${PORT_OPTIONS:MTESTSUITE}
|
||||
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} ${GMAKE} -sk check-fortran
|
||||
.endif
|
||||
|
||||
test-objc:
|
||||
.if defined(WITH_OBJC) && defined(WITH_TESTSUITE)
|
||||
.if ${PORT_OPTIONS:MOBJC} && ${PORT_OPTIONS:MTESTSUITE}
|
||||
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} ${GMAKE} -sk check-objc
|
||||
.endif
|
||||
|
||||
test-cxx:
|
||||
.if defined(WITH_CXX) && defined(WITH_TESTSUITE)
|
||||
.if ${PORT_OPTIONS:MCXX} && ${PORT_OPTIONS:MTESTSUITE}
|
||||
# libstdc++ testsuite will break every time, TRUE used to force continuation
|
||||
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} ${GMAKE} -sk check-c++ || true
|
||||
.endif
|
||||
|
||||
test-c:
|
||||
.if defined(WITH_TESTSUITE)
|
||||
.if ${PORT_OPTIONS:MTESTSUITE}
|
||||
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} ${GMAKE} -sk check-c
|
||||
.endif
|
||||
|
||||
do-install:
|
||||
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} ${GMAKE} install-strip DESTDIR=${DESTINY}
|
||||
${CP} -pr ${DESTINY}${PREFIX}/ ${PREFIX}/
|
||||
${CP} -pR ${DESTINY}${PREFIX}/ ${PREFIX}/
|
||||
|
||||
post-install:
|
||||
${RM} -f ${WRKDIR}/PLIST.all
|
||||
@ -293,7 +303,8 @@ post-install:
|
||||
${SED} -e 's/^/@dirrm /g' >> ${WRKDIR}/PLIST.all
|
||||
|
||||
cd ${WRKDIR}; ${SED} -i -e "/PLIST.all/ r PLIST.all" ${TMPPLIST}
|
||||
.if ${OSVERSION} > 900000 && ${OSVERSION} < 900507
|
||||
.if ${OPSYS} == FreeBSD
|
||||
. if ${OSVERSION} > 900000 && ${OSVERSION} < 900507
|
||||
@${ECHO_MSG} "===================================================================="
|
||||
@${ECHO_MSG} " NOTICE REGARDING ADA TASKING ON FREEBSD 9.0:"
|
||||
@${ECHO_MSG} " Due to a bug in the FreeBSD 9.0 threading library, an exiting task"
|
||||
@ -303,6 +314,7 @@ post-install:
|
||||
@${ECHO_MSG} " 2) Patch and rebuild thread library as described in"
|
||||
@${ECHO_MSG} " http://www.dragonlace.net/posts/F9_Fix/"
|
||||
@${ECHO_MSG} "===================================================================="
|
||||
. endif
|
||||
.endif
|
||||
|
||||
.include <bsd.port.post.mk>
|
||||
.include <bsd.port.mk>
|
||||
|
@ -14,8 +14,8 @@ USE_PERL5_BUILD= yes
|
||||
ALL_TARGET= default
|
||||
MAKE_JOBS_SAFE= yes
|
||||
|
||||
SNAPSHOT= 20120614
|
||||
SNAPSHOT= 20130411
|
||||
GCC_BRANCH= 4.7
|
||||
GCC_POINT= 1
|
||||
GCC_POINT= 3
|
||||
GCC_VERSION= ${GCC_BRANCH}.${GCC_POINT}
|
||||
|
||||
|
@ -1,5 +1,9 @@
|
||||
SHA256 (gcc-4.7.1.tar.bz2) = 16093f6fa01732adf378d97fe338f113c933bdf56da22bf87c76beff13da406f
|
||||
SIZE (gcc-4.7.1.tar.bz2) = 82639660
|
||||
SHA256 (gcc-4.7.3.tar.bz2) = 2f7c37eb4fc14422ff2358a9ef59c974a75ab41204ef0e49fc34ab1d8981a9c3
|
||||
SIZE (gcc-4.7.3.tar.bz2) = 82904224
|
||||
SHA256 (gnat-bootstrap.i386.dragonfly.tar.bz2) = 9148952791231e7d302238b690b183af72867b19ecac8ac482f035c06583cb0c
|
||||
SIZE (gnat-bootstrap.i386.dragonfly.tar.bz2) = 28205489
|
||||
SHA256 (gnat-bootstrap.x86_64.dragonfly.tar.bz2) = ccd361f3fa15fad38ea68530b120517f0049767d6b98cf02898d5adf9ef2b23e
|
||||
SIZE (gnat-bootstrap.x86_64.dragonfly.tar.bz2) = 31380342
|
||||
SHA256 (gnat-bootstrap.i386.freebsd.tar.bz2) = c38e1c960f651c3f248c1ef540b1df724058fa71c1d046af93ce975483abb645
|
||||
SIZE (gnat-bootstrap.i386.freebsd.tar.bz2) = 27973176
|
||||
SHA256 (gnat-bootstrap.x86_64.freebsd.tar.bz2) = c4abd6af1281785d47d99352e28e41b2a1455e25ff347eca0de5791cdede9ed8
|
||||
|
@ -2228,7 +2228,7 @@
|
||||
/* VxWorks Section */
|
||||
/*******************/
|
||||
|
||||
@@ -2416,9 +2487,13 @@
|
||||
@@ -2450,9 +2521,13 @@
|
||||
initialization of the FP processor. This version is used under INTERIX
|
||||
and WIN32. */
|
||||
|
||||
@ -8971,14 +8971,13 @@
|
||||
EH_MECHANISM=-gcc
|
||||
THREADSLIB= -lpthread
|
||||
GMEM_LIB = gmemlib
|
||||
@@ -1231,26 +1240,101 @@
|
||||
@@ -1231,14 +1240,21 @@
|
||||
MISCLIB = -lutil
|
||||
endif
|
||||
|
||||
-ifeq ($(strip $(filter-out %86_64 freebsd%,$(arch) $(osys))),)
|
||||
+
|
||||
+# FREEBSD AMD64
|
||||
+ifeq ($(strip $(filter-out x86_64 freebsd%,$(arch) $(osys))),)
|
||||
ifeq ($(strip $(filter-out %86_64 freebsd%,$(arch) $(osys))),)
|
||||
LIBGNAT_TARGET_PAIRS = \
|
||||
+ a-exetim.adb<a-exetim-posix.adb \
|
||||
+ a-exetim.ads<a-exetim-default.ads \
|
||||
@ -8996,8 +8995,7 @@
|
||||
s-taprop.adb<s-taprop-posix.adb \
|
||||
s-taspri.ads<s-taspri-posix.ads \
|
||||
s-tpopsp.adb<s-tpopsp-posix.adb \
|
||||
- g-trasym.adb<g-trasym-dwarf.adb \
|
||||
$(ATOMICS_TARGET_PAIRS) \
|
||||
@@ -1246,10 +1262,11 @@
|
||||
$(X86_64_TARGET_PAIRS) \
|
||||
system.ads<system-freebsd-x86_64.ads
|
||||
|
||||
@ -9008,13 +9006,13 @@
|
||||
+ EXTRA_GNATRTL_NONTASKING_OBJS=g-sse.o g-ssvety.o
|
||||
+ EXTRA_GNATRTL_TASKING_OBJS=a-exetim.o
|
||||
+
|
||||
+ EH_MECHANISM=-gcc
|
||||
+ THREADSLIB= -lpthread
|
||||
+ GMEM_LIB = gmemlib
|
||||
+ LIBRARY_VERSION := $(LIB_VERSION)
|
||||
+ MISCLIB = -lutil
|
||||
+endif
|
||||
+
|
||||
EH_MECHANISM=-gcc
|
||||
THREADSLIB= -lpthread
|
||||
GMEM_LIB = gmemlib
|
||||
@@ -1257,6 +1274,268 @@
|
||||
MISCLIB = -lutil
|
||||
endif
|
||||
|
||||
+
|
||||
+# DRAGONFLY i386
|
||||
+ifeq ($(strip $(filter-out %86 dragonfly%,$(arch) $(osys))),)
|
||||
@ -9076,13 +9074,13 @@
|
||||
+ EXTRA_GNATRTL_NONTASKING_OBJS=g-sse.o g-ssvety.o
|
||||
+ EXTRA_GNATRTL_TASKING_OBJS=a-exetim.o
|
||||
+
|
||||
EH_MECHANISM=-gcc
|
||||
THREADSLIB= -lpthread
|
||||
GMEM_LIB = gmemlib
|
||||
@@ -1258,6 +1342,200 @@
|
||||
MISCLIB = -lutil
|
||||
endif
|
||||
|
||||
+ EH_MECHANISM=-gcc
|
||||
+ THREADSLIB= -lpthread
|
||||
+ GMEM_LIB = gmemlib
|
||||
+ LIBRARY_VERSION := $(LIB_VERSION)
|
||||
+ MISCLIB = -lutil
|
||||
+endif
|
||||
+
|
||||
+
|
||||
+# OPENBSD i386
|
||||
+ifeq ($(strip $(filter-out %86 openbsd%,$(arch) $(osys))),)
|
||||
@ -9280,15 +9278,6 @@
|
||||
ifeq ($(strip $(filter-out s390% linux%,$(arch) $(osys))),)
|
||||
LIBGNAT_TARGET_PAIRS_COMMON = \
|
||||
a-intnam.ads<a-intnam-linux.ads \
|
||||
@@ -2597,7 +2875,7 @@
|
||||
$(MAKE) $(FLAGS_TO_PASS) \
|
||||
GNATLIBFLAGS="$(GNATLIBFLAGS)" \
|
||||
GNATLIBCFLAGS="$(GNATLIBCFLAGS) $(PICFLAG_FOR_TARGET)" \
|
||||
- GNATLIBCFLAGS_FOR_C="$(GNATLIBCFLAGS_FOR_C)" \
|
||||
+ GNATLIBCFLAGS_FOR_C="$(GNATLIBCFLAGS_FOR_C) $(PICFLAG_FOR_TARGET)" \
|
||||
MULTISUBDIR="$(MULTISUBDIR)" \
|
||||
THREAD_KIND="$(THREAD_KIND)" \
|
||||
gnatlib
|
||||
--- gnattools/configure.orig
|
||||
+++ gnattools/configure
|
||||
@@ -2058,7 +2058,27 @@
|
||||
|
@ -4,7 +4,7 @@
|
||||
+release
|
||||
--- gcc/config.gcc.orig
|
||||
+++ gcc/config.gcc
|
||||
@@ -573,6 +573,9 @@
|
||||
@@ -581,6 +581,9 @@
|
||||
"" | yes | posix)
|
||||
thread_file='posix'
|
||||
;;
|
||||
@ -14,7 +14,7 @@
|
||||
*)
|
||||
echo 'Unknown thread configuration for FreeBSD'
|
||||
exit 1
|
||||
@@ -589,6 +592,26 @@
|
||||
@@ -597,6 +600,26 @@
|
||||
# need_64bit_hwint=yes # system compiler has this for all arch!
|
||||
use_gcc_stdint=wrap
|
||||
;;
|
||||
@ -41,7 +41,7 @@
|
||||
*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu)
|
||||
extra_options="$extra_options gnu-user.opt"
|
||||
gas=yes
|
||||
@@ -644,6 +667,7 @@
|
||||
@@ -652,6 +675,7 @@
|
||||
esac
|
||||
;;
|
||||
*-*-netbsd*)
|
||||
@ -49,11 +49,11 @@
|
||||
tmake_file="t-slibgcc"
|
||||
gas=yes
|
||||
gnu_ld=yes
|
||||
@@ -885,7 +909,32 @@
|
||||
tm_file="dbxelf.h elfos.h newlib-stdint.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/ecos-elf.h"
|
||||
tmake_file="arm/t-arm arm/t-arm-elf"
|
||||
@@ -903,7 +927,32 @@
|
||||
tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/rtems-elf.h rtems.h newlib-stdint.h"
|
||||
tmake_file="arm/t-arm arm/t-arm-elf t-rtems arm/t-rtems"
|
||||
;;
|
||||
-arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtemseabi*)
|
||||
-arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtems*)
|
||||
+arm*-android-eabi*)
|
||||
+ gas=yes
|
||||
+ gnu_ld=yes
|
||||
@ -79,11 +79,11 @@
|
||||
+ # Correctly modeling that requires the use of TImode.
|
||||
+ need_64bit_hwint=yes
|
||||
+ ;;
|
||||
+arm*-*-symbianelf* | arm*-*-rtemseabi*)
|
||||
+arm*-*-symbianelf* | arm*-*-rtems*)
|
||||
# The BPABI long long divmod functions return a 128-bit value in
|
||||
# registers r0-r3. Correctly modeling that requires the use of
|
||||
# TImode.
|
||||
@@ -894,11 +943,6 @@
|
||||
@@ -912,11 +961,6 @@
|
||||
tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/bpabi.h"
|
||||
tmake_file="arm/t-arm arm/t-arm-elf"
|
||||
case ${target} in
|
||||
@ -92,10 +92,10 @@
|
||||
- tmake_file="${tmake_file} arm/t-bpabi"
|
||||
- use_gcc_stdint=wrap
|
||||
- ;;
|
||||
arm*-*-rtemseabi*)
|
||||
arm*-*-rtems*)
|
||||
tm_file="${tm_file} rtems.h arm/rtems-eabi.h newlib-stdint.h"
|
||||
tmake_file="${tmake_file} arm/t-bpabi t-rtems arm/t-rtems-eabi"
|
||||
@@ -1196,19 +1240,31 @@
|
||||
@@ -1216,19 +1260,31 @@
|
||||
x86_64-*-elf*)
|
||||
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h i386/x86-64.h"
|
||||
;;
|
||||
@ -129,7 +129,7 @@
|
||||
;;
|
||||
i[34567]86-*-openbsd2.*|i[34567]86-*openbsd3.[0123])
|
||||
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"
|
||||
@@ -3530,6 +3586,8 @@
|
||||
@@ -3577,6 +3633,8 @@
|
||||
;;
|
||||
i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw*)
|
||||
;;
|
||||
@ -768,21 +768,21 @@
|
||||
enable_execute_stack=enable-execute-stack-mprotect.c
|
||||
;;
|
||||
i[34567]86-*-mingw* | x86_64-*-mingw*)
|
||||
@@ -354,11 +368,11 @@
|
||||
@@ -358,11 +372,11 @@
|
||||
tmake_file="$tmake_file arm/t-arm arm/t-elf t-softfp-sfdf t-softfp-excl arm/t-softfp t-softfp"
|
||||
extra_parts="$extra_parts crti.o crtn.o"
|
||||
;;
|
||||
-arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtemseabi*)
|
||||
+arm*-*-symbianelf* | arm*-*-rtemseabi*)
|
||||
-arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtems*)
|
||||
+arm*-*-symbianelf* | arm*-*-rtems*)
|
||||
tmake_file="${tmake_file} arm/t-arm arm/t-elf t-fixedpoint-gnu-prefix"
|
||||
tm_file="$tm_file arm/bpabi-lib.h"
|
||||
case ${host} in
|
||||
- arm*-*-eabi* | arm*-*-rtemseabi*)
|
||||
+ arm*-*-rtemseabi*)
|
||||
- arm*-*-eabi* | arm*-*-rtems*)
|
||||
+ arm*-*-rtems*)
|
||||
tmake_file="${tmake_file} arm/t-bpabi"
|
||||
extra_parts="crtbegin.o crtend.o crti.o crtn.o"
|
||||
;;
|
||||
@@ -523,16 +537,29 @@
|
||||
@@ -526,16 +540,29 @@
|
||||
x86_64-*-elf*)
|
||||
tmake_file="$tmake_file i386/t-crtstuff t-crtstuff-pic t-libgcc-pic"
|
||||
;;
|
||||
@ -812,7 +812,7 @@
|
||||
;;
|
||||
i[34567]86-*-openbsd2.*|i[34567]86-*openbsd3.[0123])
|
||||
;;
|
||||
@@ -1160,6 +1187,7 @@
|
||||
@@ -1167,6 +1194,7 @@
|
||||
i[34567]86-*-gnu* | \
|
||||
i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]* | \
|
||||
i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw* | \
|
||||
@ -925,8 +925,8 @@
|
||||
+#endif
|
||||
+
|
||||
#if !defined(inhibit_libc) && defined(HAVE_LD_EH_FRAME_HDR) \
|
||||
&& defined(TARGET_DL_ITERATE_PHDR) \
|
||||
&& defined(__sun__) && defined(__svr4__)
|
||||
&& defined(__OpenBSD__)
|
||||
# define ElfW(type) Elf_##type
|
||||
--- /dev/null
|
||||
+++ libgcc/config/i386/dragonfly-unwind.h
|
||||
@@ -0,0 +1,158 @@
|
||||
@ -1473,7 +1473,7 @@
|
||||
}
|
||||
--- gcc/configure.orig
|
||||
+++ gcc/configure
|
||||
@@ -26810,6 +26810,20 @@
|
||||
@@ -26902,6 +26902,20 @@
|
||||
gcc_cv_target_dl_iterate_phdr=no
|
||||
fi
|
||||
;;
|
||||
@ -1496,7 +1496,7 @@
|
||||
if test x$gcc_cv_target_dl_iterate_phdr = xyes; then
|
||||
--- gcc/Makefile.in.orig
|
||||
+++ gcc/Makefile.in
|
||||
@@ -1150,7 +1150,6 @@
|
||||
@@ -1165,7 +1165,6 @@
|
||||
insn-automata.o \
|
||||
insn-emit.o \
|
||||
insn-extract.o \
|
||||
@ -1504,7 +1504,7 @@
|
||||
insn-opinit.o \
|
||||
insn-output.o \
|
||||
insn-peep.o \
|
||||
@@ -1469,13 +1468,18 @@
|
||||
@@ -1484,13 +1483,18 @@
|
||||
ALL_HOST_BACKEND_OBJS = $(GCC_OBJS) $(OBJS) $(OBJS-libcommon) \
|
||||
$(OBJS-libcommon-target) @TREEBROWSER@ main.o gccspec.o cppspec.o \
|
||||
$(COLLECT2_OBJS) $(EXTRA_GCC_OBJS) mips-tfile.o mips-tdump.o \
|
||||
@ -1525,7 +1525,7 @@
|
||||
$(CPPLIB) $(LIBDECNUMBER)
|
||||
|
||||
MOSTLYCLEANFILES = insn-flags.h insn-config.h insn-codes.h \
|
||||
@@ -3506,6 +3510,8 @@
|
||||
@@ -3522,6 +3526,8 @@
|
||||
$(TM_H) $(RTL_H) $(DIAGNOSTIC_CORE_H) insn-config.h $(RECOG_H)
|
||||
insn-modes.o : insn-modes.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
|
||||
$(MACHMODE_H)
|
||||
@ -1534,7 +1534,7 @@
|
||||
insn-opinit.o : insn-opinit.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
|
||||
$(TM_H) $(RTL_H) $(TM_P_H) insn-config.h $(FLAGS_H) $(RECOG_H) \
|
||||
$(EXPR_H) $(OPTABS_H) reload.h
|
||||
@@ -3599,6 +3605,7 @@
|
||||
@@ -3615,6 +3621,7 @@
|
||||
|
||||
insn-modes.c: s-modes; @true
|
||||
insn-modes.h: s-modes-h; @true
|
||||
@ -1542,7 +1542,7 @@
|
||||
min-insn-modes.c: s-modes-m; @true
|
||||
|
||||
s-modes: build/genmodes$(build_exeext)
|
||||
@@ -3616,6 +3623,12 @@
|
||||
@@ -3632,6 +3639,12 @@
|
||||
$(SHELL) $(srcdir)/../move-if-change tmp-min-modes.c min-insn-modes.c
|
||||
$(STAMP) s-modes-m
|
||||
|
||||
@ -1555,7 +1555,7 @@
|
||||
insn-preds.c: s-preds; @true
|
||||
tm-preds.h: s-preds-h; @true
|
||||
tm-constrs.h: s-constrs-h; @true
|
||||
@@ -4378,7 +4391,7 @@
|
||||
@@ -4394,7 +4407,7 @@
|
||||
DESTDIR=$(@D) \
|
||||
$(SHELL) $(srcdir)/doc/install.texi2html
|
||||
|
||||
@ -1564,7 +1564,7 @@
|
||||
|
||||
generated-manpages: man
|
||||
|
||||
@@ -4530,7 +4543,7 @@
|
||||
@@ -4546,7 +4559,7 @@
|
||||
# Install the driver last so that the window when things are
|
||||
# broken is small.
|
||||
install: install-common $(INSTALL_HEADERS) \
|
||||
@ -1573,7 +1573,7 @@
|
||||
install-driver install-lto-wrapper install-gcc-ar
|
||||
|
||||
ifeq ($(enable_plugin),yes)
|
||||
@@ -4655,6 +4668,9 @@
|
||||
@@ -4671,6 +4684,9 @@
|
||||
-rm -f $(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-$(version)$(exeext)
|
||||
-( cd $(DESTDIR)$(bindir) && \
|
||||
$(LN) $(GCC_INSTALL_NAME)$(exeext) $(target_noncanonical)-gcc-$(version)$(exeext) )
|
||||
@ -1583,7 +1583,7 @@
|
||||
-if [ -f gcc-cross$(exeext) ] ; then \
|
||||
if [ -d $(DESTDIR)$(gcc_tooldir)/bin/. ] ; then \
|
||||
rm -f $(DESTDIR)$(gcc_tooldir)/bin/gcc$(exeext); \
|
||||
@@ -4728,10 +4744,7 @@
|
||||
@@ -4744,10 +4760,7 @@
|
||||
install-man: lang.install-man \
|
||||
$(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext) \
|
||||
$(DESTDIR)$(man1dir)/$(CPP_INSTALL_NAME)$(man1ext) \
|
||||
@ -1597,7 +1597,7 @@
|
||||
-rm -f $@
|
||||
--- configure.orig
|
||||
+++ configure
|
||||
@@ -14412,7 +14412,7 @@
|
||||
@@ -14419,7 +14419,7 @@
|
||||
_ACEOF
|
||||
if ac_fn_c_try_compile "$LINENO"; then :
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||
|
@ -44,7 +44,7 @@
|
||||
|
||||
--- libstdc++-v3/configure.orig
|
||||
+++ libstdc++-v3/configure
|
||||
@@ -15704,7 +15704,7 @@
|
||||
@@ -15738,7 +15738,7 @@
|
||||
if test "${enable_clocale+set}" = set; then :
|
||||
enableval=$enable_clocale;
|
||||
case "$enableval" in
|
||||
@ -53,7 +53,7 @@
|
||||
*) as_fn_error "Unknown argument to enable/disable clocale" "$LINENO" 5 ;;
|
||||
esac
|
||||
|
||||
@@ -15742,6 +15742,9 @@
|
||||
@@ -15776,6 +15776,9 @@
|
||||
darwin* | freebsd*)
|
||||
enable_clocale_flag=darwin
|
||||
;;
|
||||
@ -63,7 +63,7 @@
|
||||
*)
|
||||
if test x"$with_newlib" = x"yes"; then
|
||||
enable_clocale_flag=newlib
|
||||
@@ -15883,7 +15886,23 @@
|
||||
@@ -15917,7 +15920,23 @@
|
||||
CTIME_CC=config/locale/generic/time_members.cc
|
||||
CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h
|
||||
;;
|
||||
@ -622,7 +622,7 @@
|
||||
+ struct ctype_base
|
||||
+ {
|
||||
+ // Non-standard typedefs.
|
||||
+ typedef const unsigned char* __to_type;
|
||||
+ typedef const int* __to_type;
|
||||
+
|
||||
+ // NB: Offsets into ctype<char>::_M_table force a particular size
|
||||
+ // on the mask type. Because of this, we don't use an enum.
|
||||
@ -746,7 +746,7 @@
|
||||
+} // namespace
|
||||
--- /dev/null
|
||||
+++ libstdc++-v3/config/os/bsd/dragonfly/ctype_inline.h
|
||||
@@ -0,0 +1,127 @@
|
||||
@@ -0,0 +1,161 @@
|
||||
+// Locale support -*- C++ -*-
|
||||
+
|
||||
+// Copyright (C) 2000, 2003, 2004, 2005, 2009, 2010
|
||||
@ -791,14 +791,38 @@
|
||||
+ bool
|
||||
+ ctype<char>::
|
||||
+ is(mask __m, char __c) const
|
||||
+ { return _M_table[(unsigned char)(__c)] & __m; }
|
||||
+ {
|
||||
+ if (_M_table)
|
||||
+ return _M_table[static_cast<unsigned char>(__c)] & __m;
|
||||
+ else
|
||||
+ return __libc_ctype_ [__c + 1] & __m;
|
||||
+ }
|
||||
+
|
||||
+ const char*
|
||||
+ ctype<char>::
|
||||
+ is(const char* __low, const char* __high, mask* __vec) const
|
||||
+ {
|
||||
+ while (__low < __high)
|
||||
+ *__vec++ = _M_table[*__low++];
|
||||
+ if (_M_table)
|
||||
+ while (__low < __high)
|
||||
+ *__vec++ = _M_table[static_cast<unsigned char>(*__low++)];
|
||||
+ else
|
||||
+ for (;__low < __high; ++__vec, ++__low)
|
||||
+ {
|
||||
+ mask __m = 0;
|
||||
+ if (this->is(upper, *__low)) __m |= upper;
|
||||
+ if (this->is(lower, *__low)) __m |= lower;
|
||||
+ if (this->is(alpha, *__low)) __m |= alpha;
|
||||
+ if (this->is(digit, *__low)) __m |= digit;
|
||||
+ if (this->is(xdigit, *__low)) __m |= xdigit;
|
||||
+ if (this->is(space, *__low)) __m |= space;
|
||||
+ if (this->is(print, *__low)) __m |= print;
|
||||
+ if (this->is(graph, *__low)) __m |= graph;
|
||||
+ if (this->is(cntrl, *__low)) __m |= cntrl;
|
||||
+ if (this->is(punct, *__low)) __m |= punct;
|
||||
+ // Do not include explicit line for alnum mask since it is a
|
||||
+ // pure composite of masks on DragonFly.
|
||||
+ *__vec = __m;
|
||||
+ }
|
||||
+ return __high;
|
||||
+ }
|
||||
+
|
||||
@ -806,8 +830,13 @@
|
||||
+ ctype<char>::
|
||||
+ scan_is(mask __m, const char* __low, const char* __high) const
|
||||
+ {
|
||||
+ while (__low < __high && !this->is(__m, *__low))
|
||||
+ ++__low;
|
||||
+ if (_M_table)
|
||||
+ while (__low < __high
|
||||
+ && !(_M_table[static_cast<unsigned char>(*__low)] & __m))
|
||||
+ ++__low;
|
||||
+ else
|
||||
+ while (__low < __high && !this->is(__m, *__low))
|
||||
+ ++__low;
|
||||
+ return __low;
|
||||
+ }
|
||||
+
|
||||
@ -815,8 +844,13 @@
|
||||
+ ctype<char>::
|
||||
+ scan_not(mask __m, const char* __low, const char* __high) const
|
||||
+ {
|
||||
+ while (__low < __high && this->is(__m, *__low) != 0)
|
||||
+ ++__low;
|
||||
+ if (_M_table)
|
||||
+ while (__low < __high
|
||||
+ && (_M_table[static_cast<unsigned char>(*__low)] & __m) != 0)
|
||||
+ ++__low;
|
||||
+ else
|
||||
+ while (__low < __high && this->is(__m, *__low) != 0)
|
||||
+ ++__low;
|
||||
+ return __low;
|
||||
+ }
|
||||
+
|
||||
|
@ -504,24 +504,13 @@
|
||||
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
|
||||
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
|
||||
+// { dg-do run { target *-*-freebsd* *-*-dragonfly* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
|
||||
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-dragonfly* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
|
||||
// { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
|
||||
// { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
|
||||
// { dg-require-cstdint "" }
|
||||
--- libstdc++-v3/testsuite/30_threads/lock_guard/cons/1.cc.orig
|
||||
+++ libstdc++-v3/testsuite/30_threads/lock_guard/cons/1.cc
|
||||
@@ -1,5 +1,5 @@
|
||||
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
|
||||
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
|
||||
+// { dg-do run { target *-*-freebsd* *-*-dragonfly* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
|
||||
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-dragonfly* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
|
||||
// { dg-options " -std=gnu++0x -pthreads" { target *-*-solaris* } }
|
||||
// { dg-options " -std=gnu++0x " { target *-*-cygwin *-*-darwin* } }
|
||||
// { dg-require-cstdint "" }
|
||||
--- libstdc++-v3/testsuite/30_threads/mutex/cons/1.cc.orig
|
||||
+++ libstdc++-v3/testsuite/30_threads/mutex/cons/1.cc
|
||||
@@ -1,5 +1,5 @@
|
||||
-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
|
||||
@@ -1,5 +1,5 @@-// { dg-do run { target *-*-freebsd* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
|
||||
-// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* powerpc-ibm-aix* } }
|
||||
+// { dg-do run { target *-*-freebsd* *-*-dragonfly* *-*-netbsd* *-*-linux* *-*-solaris* *-*-cygwin *-*-darwin* alpha*-*-osf* mips-sgi-irix6* } }
|
||||
+// { dg-options " -std=gnu++0x -pthread" { target *-*-freebsd* *-*-dragonfly* *-*-netbsd* *-*-linux* alpha*-*-osf* mips-sgi-irix6* } }
|
||||
|
Loading…
Reference in New Issue
Block a user