mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 09:49:18 -04:00
Add new port lang/gcc6-aux
This will be the successor to lang/gcc5-aux. GCC6 is still in development although the Ada front end is generally stable. Once gcc6-aux is released, the lang/gcc-aux port will likely be removed. For that to happen, the gnatdroid compilers need to move from it to gcc5-aux or gcc6-aux. The Ada framework will also move to gcc6-aux by default as well.
This commit is contained in:
parent
eba05ee162
commit
320c206ea9
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=403127
13 changed files with 2419 additions and 0 deletions
|
@ -101,6 +101,7 @@
|
||||||
SUBDIR += gcc5
|
SUBDIR += gcc5
|
||||||
SUBDIR += gcc5-aux
|
SUBDIR += gcc5-aux
|
||||||
SUBDIR += gcc5-devel
|
SUBDIR += gcc5-devel
|
||||||
|
SUBDIR += gcc6-aux
|
||||||
SUBDIR += gcc6-devel
|
SUBDIR += gcc6-devel
|
||||||
SUBDIR += gcl
|
SUBDIR += gcl
|
||||||
SUBDIR += gforth
|
SUBDIR += gforth
|
||||||
|
|
284
lang/gcc6-aux/Makefile
Normal file
284
lang/gcc6-aux/Makefile
Normal file
|
@ -0,0 +1,284 @@
|
||||||
|
# Created by: John Marino <marino@FreeBSD.org>
|
||||||
|
# $FreeBSD$
|
||||||
|
|
||||||
|
PORTNAME= gcc6-aux
|
||||||
|
PORTVERSION= ${SNAPSHOT}
|
||||||
|
PORTREVISION= ${MAIN_PR}
|
||||||
|
CATEGORIES= lang
|
||||||
|
MASTER_SITES= http://downloads.dragonlace.net/src/:boot \
|
||||||
|
LOCAL/marino:boot GCC/${MS_SUBDIR}
|
||||||
|
DISTFILES= ${IDENTIFICATION}.tar.bz2
|
||||||
|
|
||||||
|
MAINTAINER= marino@FreeBSD.org
|
||||||
|
COMMENT= Version of GCC ${GCC_BRANCH} with full Ada support
|
||||||
|
|
||||||
|
LICENSE= GPLv3 GPLv3RLE
|
||||||
|
LICENSE_COMB= multi
|
||||||
|
|
||||||
|
.include "${.CURDIR}/Makefile.common"
|
||||||
|
|
||||||
|
LANGS= c c++ ada
|
||||||
|
APPLY_DIFFS= core cxx ada
|
||||||
|
INTENDED_COMPILER= NATIVE
|
||||||
|
GARCH= ${ARCH:S/amd64/x86_64/}
|
||||||
|
BOOTSTRAP_COMPILER= gnat-bootstrap.${GARCH}.${OPSYS:tl}.tar.bz2
|
||||||
|
BLD_TARGET= ${GARCH}-aux-${OPSYS:tl}${OSREL}
|
||||||
|
FULL_GNATGCC= NOT_SET
|
||||||
|
OS_LABEL4VERS= [${OPSYS}${GARCH:M*64:S/amd_//:S/x86_//}]
|
||||||
|
NO_MTREE= yes
|
||||||
|
CPPFLAGS+= -I${LOCALBASE}/include
|
||||||
|
LDFLAGS+= -L${LOCALBASE}/lib
|
||||||
|
|
||||||
|
OPTIONS_GROUP= Standard Bootstrap
|
||||||
|
OPTIONS_GROUP_Standard= FORT OBJC NLS TESTSUITE ALLSTAGES STATIC
|
||||||
|
OPTIONS_GROUP_Bootstrap=BOOTSTRAP
|
||||||
|
OPTIONS_DEFAULT= FORT OBJC
|
||||||
|
NO_OPTIONS_SORT= yes
|
||||||
|
|
||||||
|
FORT_DESC= Fortran language support
|
||||||
|
OBJC_DESC= Objective-C language support
|
||||||
|
TESTSUITE_DESC= Activate test support
|
||||||
|
ALLSTAGES_DESC= Build compiler with itself (twice, brings in libcc1)
|
||||||
|
STATIC_DESC= Link compilers and drivers statically
|
||||||
|
BOOTSTRAP_DESC= Create bootstrap compiler (overrides other options)
|
||||||
|
|
||||||
|
# The BOOTSTRAP option overrides all the others. "make stage" will build a
|
||||||
|
# static compiler that supports C, C++, and Ada languages and then create
|
||||||
|
# a new distfile in $WRKDIR/newbsd with the name following the pattern:
|
||||||
|
# ada-bootstrap.$ARCH.$OPSYS.XY.tar.bz2. There is no need to "make install"
|
||||||
|
|
||||||
|
.include <bsd.port.options.mk>
|
||||||
|
|
||||||
|
.if ${OPSYS} == FreeBSD
|
||||||
|
ONLY_FOR_ARCHS= amd64 i386
|
||||||
|
MODERN_BINUTILS= yes
|
||||||
|
BOOTSTRAP_COMPILER= ada-bootstrap.${GARCH}.freebsd.100B.tar.bz2
|
||||||
|
.endif
|
||||||
|
.if ${OPSYS} == DragonFly
|
||||||
|
ONLY_FOR_ARCHS= x86_64
|
||||||
|
BOOTSTRAP_COMPILER= ada-bootstrap.${GARCH}.dragonfly.41.tar.bz2
|
||||||
|
.endif
|
||||||
|
|
||||||
|
.if defined(MODERN_BINUTILS)
|
||||||
|
# Apparently gcc 4.9 needs binutils 2.23 or greater to link Ada correctly
|
||||||
|
USE_BINUTILS= yes
|
||||||
|
RUN_DEPENDS+= ${LOCALBASE}/bin/as:${PORTSDIR}/devel/binutils
|
||||||
|
EXTRA_CONFIG+= --with-ld=${LOCALBASE}/bin/ld
|
||||||
|
EXTRA_CONFIG+= --with-as=${LOCALBASE}/bin/as
|
||||||
|
.else
|
||||||
|
EXTRA_CONFIG+= --with-ld=/usr/bin/ld
|
||||||
|
EXTRA_CONFIG+= --with-as=/usr/bin/as
|
||||||
|
.endif
|
||||||
|
|
||||||
|
WRKSRC= ${WRKDIR}/${IDENTIFICATION}
|
||||||
|
BUILDDIR= ${WRKDIR}/build
|
||||||
|
NEWBSDIR= ${WRKDIR}/newbs/bootstrap
|
||||||
|
CFG_SCRIPT= ${WRKSRC}/configure
|
||||||
|
REVFILE= ${WRKSRC}/gcc/REVISION
|
||||||
|
PHASEFILE= ${WRKSRC}/gcc/DEV-PHASE
|
||||||
|
BOOTSTRAP_PREFIX= ${WRKDIR}/bootstrap
|
||||||
|
PKG_PREFIX= ${PREFIX}/${PORTNAME}
|
||||||
|
MANPREFIX= ${PREFIX}/${PORTNAME}/share
|
||||||
|
BSFILENAME= ada-bootstrap.${GARCH}.${OPSYS:tl}.${OSREL:S/.//}.tar.bz2
|
||||||
|
|
||||||
|
# If we find gnatmake and friends in a standard location, then we'll use this
|
||||||
|
# compiler instead of downloading the bootstrap.
|
||||||
|
.if exists (${LOCALBASE}/${PORTNAME}/bin/ada)
|
||||||
|
.if exists (${LOCALBASE}/${PORTNAME}/bin/gnatbind)
|
||||||
|
.if exists (${LOCALBASE}/${PORTNAME}/bin/gnatlink)
|
||||||
|
.if exists (${LOCALBASE}/${PORTNAME}/bin/gnatmake)
|
||||||
|
FULL_GNATGCC=${LOCALBASE}/${PORTNAME}/bin/ada
|
||||||
|
FULL_GNATGXX=${LOCALBASE}/${PORTNAME}/bin/g++
|
||||||
|
FULL_PATH=/sbin:/bin:/usr/sbin:/usr/bin:${PREFIX}/${PORTNAME}/bin:${PREFIX}/bin
|
||||||
|
.endif
|
||||||
|
.endif
|
||||||
|
.endif
|
||||||
|
.endif
|
||||||
|
|
||||||
|
# If FULL_GNATGCC is not set, we'll request the bootstrap compiler
|
||||||
|
.if ${FULL_GNATGCC} == NOT_SET
|
||||||
|
INTENDED_COMPILER=BOOTSTRAP
|
||||||
|
FULL_GNATGCC=${BOOTSTRAP_PREFIX}/bin/gcc
|
||||||
|
FULL_GNATGXX=${BOOTSTRAP_PREFIX}/bin/g++
|
||||||
|
FULL_PATH=${BOOTSTRAP_PREFIX}/bin:/sbin:/bin:/usr/sbin:/usr/bin:${PREFIX}/bin
|
||||||
|
DISTFILES+= ${BOOTSTRAP_COMPILER}:boot
|
||||||
|
.endif
|
||||||
|
|
||||||
|
# for port maintenance, invoke "make makesum PLUS_BOOTSTRAPS=1"
|
||||||
|
.if defined(PLUS_BOOTSTRAPS)
|
||||||
|
DISTFILES= \
|
||||||
|
${IDENTIFICATION}.tar.bz2 \
|
||||||
|
ada-bootstrap.i386.freebsd.100B.tar.bz2:boot \
|
||||||
|
ada-bootstrap.x86_64.dragonfly.41.tar.bz2:boot \
|
||||||
|
ada-bootstrap.x86_64.freebsd.100B.tar.bz2:boot
|
||||||
|
.endif
|
||||||
|
|
||||||
|
.if ${PORT_OPTIONS:MFORT} && !${PORT_OPTIONS:MBOOTSTRAP}
|
||||||
|
LANGS+= fortran
|
||||||
|
EXTRA_CONFIG+= --enable-libquadmath
|
||||||
|
.else
|
||||||
|
EXTRA_CONFIG+= --disable-libquadmath
|
||||||
|
.endif
|
||||||
|
|
||||||
|
.if ${PORT_OPTIONS:MOBJC} && !${PORT_OPTIONS:MBOOTSTRAP}
|
||||||
|
LANGS+= objc
|
||||||
|
.endif
|
||||||
|
|
||||||
|
.if ${PORT_OPTIONS:MTESTSUITE} && !${PORT_OPTIONS:MBOOTSTRAP}
|
||||||
|
BUILD_DEPENDS+= dejagnu>=1.4:${PORTSDIR}/misc/dejagnu
|
||||||
|
APPLY_DIFFS+= ada-testsuite
|
||||||
|
APPLY_DIFFS+= gcc-testsuite
|
||||||
|
.endif
|
||||||
|
|
||||||
|
.if ${PORT_OPTIONS:MNLS} && !${PORT_OPTIONS:MBOOTSTRAP}
|
||||||
|
USES+= gettext
|
||||||
|
EXTRA_CONFIG+= --enable-nls
|
||||||
|
.else
|
||||||
|
EXTRA_CONFIG+= --disable-nls
|
||||||
|
.endif
|
||||||
|
|
||||||
|
.if ${PORT_OPTIONS:MSTATIC} && !${PORT_OPTIONS:MBOOTSTRAP}
|
||||||
|
EXTRA_CONFIG+= --with-stage1-ldflags=-static
|
||||||
|
.endif
|
||||||
|
|
||||||
|
.if ${PORT_OPTIONS:MBOOTSTRAP}
|
||||||
|
EXTRA_CONFIG+= --disable-shared --disable-lto
|
||||||
|
EXTRA_CONFIG+= --with-boot-ldflags=-static
|
||||||
|
.else
|
||||||
|
. if !${PORT_OPTIONS:MALLSTAGES}
|
||||||
|
# For reasons unknown, build fails at libcc1 when the compiler is not
|
||||||
|
# not bootstrapping. It appears to be an upstream error. LibCC1 is used
|
||||||
|
# for gdb 7.9 exclusively, so it's not really needed. Let's disable it
|
||||||
|
# by default, but let people that want it suffer a 3-stage build.
|
||||||
|
EXTRA_CONFIG+= --disable-bootstrap --disable-libcc1
|
||||||
|
. endif
|
||||||
|
USES+= iconv
|
||||||
|
.endif
|
||||||
|
|
||||||
|
# Establish Ada-aware compiler for use
|
||||||
|
ADA_CONFIGURE_ENV+= CC=${FULL_GNATGCC}
|
||||||
|
ADA_CONFIGURE_ENV+= CXX=${FULL_GNATGXX}
|
||||||
|
ADA_CONFIGURE_ENV+= CFLAGS="${CFLAGS}"
|
||||||
|
ADA_CONFIGURE_ENV+= CPPFLAGS="${CPPFLAGS}"
|
||||||
|
ADA_CONFIGURE_ENV+= CXXFLAGS="${CXXFLAGS}"
|
||||||
|
ADA_CONFIGURE_ENV+= LDFLAGS="${LDFLAGS}"
|
||||||
|
ADA_CONFIGURE_ENV+= build_configargs="CPPFLAGS=\"${CPPFLAGS}\""
|
||||||
|
ADA_CONFIGURE_ENV+= host_configargs="CPPFLAGS=\"${CPPFLAGS}\""
|
||||||
|
ADA_CONFIGURE_ENV+= PATH=${FULL_PATH}
|
||||||
|
ADA_MAKE_ENV+= PATH=${FULL_PATH}
|
||||||
|
|
||||||
|
# The standard configuration options
|
||||||
|
ADA_CONFIG_ARGS= --enable-languages=${LANGS:Q}
|
||||||
|
ADA_CONFIG_ARGS+= --build=${BLD_TARGET}
|
||||||
|
ADA_CONFIG_ARGS+= --prefix=${PKG_PREFIX:Q}
|
||||||
|
ADA_CONFIG_ARGS+= --with-system-zlib
|
||||||
|
ADA_CONFIG_ARGS+= --with-gmp=${PREFIX}
|
||||||
|
ADA_CONFIG_ARGS+= --with-mpfr=${PREFIX}
|
||||||
|
ADA_CONFIG_ARGS+= --with-mpc=${PREFIX}
|
||||||
|
ADA_CONFIG_ARGS+= ${ICONV_CONFIGURE_ARG}
|
||||||
|
ADA_CONFIG_ARGS+= --enable-shared
|
||||||
|
ADA_CONFIG_ARGS+= --enable-threads=posix
|
||||||
|
ADA_CONFIG_ARGS+= --enable-checking=release
|
||||||
|
ADA_CONFIG_ARGS+= --disable-libmudflap
|
||||||
|
ADA_CONFIG_ARGS+= --disable-libgomp
|
||||||
|
ADA_CONFIG_ARGS+= --disable-libssp
|
||||||
|
ADA_CONFIG_ARGS+= ${EXTRA_CONFIG}
|
||||||
|
|
||||||
|
post-extract:
|
||||||
|
# Personalize GNAT for each different machine
|
||||||
|
@${ECHO} "-=> GNAT AUX ${OS_LABEL4VERS}" > ${REVFILE}
|
||||||
|
@${ECHO} ${PHASE} > ${PHASEFILE}
|
||||||
|
|
||||||
|
# Apply required composite diff files
|
||||||
|
.for suffix in ${APPLY_DIFFS}
|
||||||
|
@${ECHO} "Applying composite patch diff-${suffix}"
|
||||||
|
@${PATCH} -d ${WRKSRC} -s -E < ${FILESDIR}/diff-${suffix}
|
||||||
|
.endfor
|
||||||
|
.if ${PORT_OPTIONS:MSTATIC} || ${PORT_OPTIONS:MBOOTSTRAP}
|
||||||
|
# Ensure GNAT tools are built statically
|
||||||
|
${REINPLACE_CMD} -e 's/^GCC_LINK_FLAGS=.*/GCC_LINK_FLAGS=-static/' \
|
||||||
|
${WRKSRC}/gcc/ada/gcc-interface/Makefile.in
|
||||||
|
.endif
|
||||||
|
# Update LINK_SPEC to add gcc-aux lib runpath in every binary
|
||||||
|
@${ECHO} "Configuring LINK_SPEC runpath"
|
||||||
|
@${REINPLACE_CMD} -e 's;\@PREFIX\@;${PREFIX};' \
|
||||||
|
-e 's;\@GCCAUX\@;${PORTNAME};' \
|
||||||
|
${WRKSRC}/gcc/config/dragonfly.h \
|
||||||
|
${WRKSRC}/gcc/config/i386/freebsd64.h \
|
||||||
|
${WRKSRC}/gcc/config/i386/freebsd.h
|
||||||
|
.if defined(MODERN_BINUTILS)
|
||||||
|
# Use dwarf4-compatible addr2line (affects FreeBSD only)
|
||||||
|
${REINPLACE_CMD} -e 's|/usr/bin/addr2line|${PREFIX}/bin/addr2line|g' \
|
||||||
|
${WRKSRC}/gcc/ada/traceback_symbolic.c
|
||||||
|
.endif
|
||||||
|
|
||||||
|
do-configure:
|
||||||
|
${MKDIR} ${BUILDDIR}
|
||||||
|
cd ${BUILDDIR} && ${SETENV} ${ADA_CONFIGURE_ENV} \
|
||||||
|
${CFG_SCRIPT} ${ADA_CONFIG_ARGS}
|
||||||
|
|
||||||
|
do-build:
|
||||||
|
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} \
|
||||||
|
${MAKE_CMD} -j${MAKE_JOBS_NUMBER} ${MAKE_ARGS} all
|
||||||
|
|
||||||
|
.if ${PORT_OPTIONS:MTESTSUITE} && !${PORT_OPTIONS:MBOOTSTRAP}
|
||||||
|
test: build test-ada test-fortran test-objc test-cxx test-c
|
||||||
|
|
||||||
|
test-ada:
|
||||||
|
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} \
|
||||||
|
${MAKE_CMD} -sk check-ada
|
||||||
|
|
||||||
|
test-cxx:
|
||||||
|
# libstdc++ testsuite will break every time, for TRUE to continue
|
||||||
|
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} \
|
||||||
|
${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -sk check-c++ || true
|
||||||
|
|
||||||
|
test-c:
|
||||||
|
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} \
|
||||||
|
${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -sk check-c
|
||||||
|
|
||||||
|
test-fortran:
|
||||||
|
. if ${PORT_OPTIONS:MFORT}
|
||||||
|
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} \
|
||||||
|
${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -sk check-fortran
|
||||||
|
. endif
|
||||||
|
|
||||||
|
test-objc:
|
||||||
|
. if ${PORT_OPTIONS:MOBJC}
|
||||||
|
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} \
|
||||||
|
${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -sk check-objc
|
||||||
|
. endif
|
||||||
|
.endif
|
||||||
|
|
||||||
|
do-install:
|
||||||
|
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} \
|
||||||
|
${MAKE_CMD} install-strip ${MAKE_ARGS}
|
||||||
|
${MV} ${STAGEDIR}${PKG_PREFIX}/share ${WRKDIR}/moved_share
|
||||||
|
# Don't activate until this port builds gnatdroid
|
||||||
|
# Otherwise it will conflict with lang/gcc-aux
|
||||||
|
# Add "share" after {PORTNAME} on 3rd line of post-stage target
|
||||||
|
# ${MKDIR} ${STAGEDIR}${PREFIX}/share/dejagnu/baseboards \
|
||||||
|
# ${STAGEDIR}${PREFIX}/share/dejagnu/config
|
||||||
|
# ${INSTALL_DATA} ${FILESDIR}/android.exp \
|
||||||
|
# ${STAGEDIR}${PREFIX}/share/dejagnu/config
|
||||||
|
# ${INSTALL_DATA} ${FILESDIR}/gnatdroid.exp \
|
||||||
|
# ${STAGEDIR}${PREFIX}/share/dejagnu/baseboards
|
||||||
|
|
||||||
|
post-stage:
|
||||||
|
(cd ${STAGEDIR}${PKG_PREFIX}; ${FIND} * -type d -empty | \
|
||||||
|
${SORT} -dr | ${XARGS} ${RMDIR})
|
||||||
|
(cd ${STAGEDIR}${PREFIX}; ${FIND} ${PORTNAME} \
|
||||||
|
\( -type f -or -type l \) | ${SORT} | ${SED} \
|
||||||
|
-e 's/\/man\/man[1578]\/.*[1578]$$/&.gz/' >> ${TMPPLIST})
|
||||||
|
.if ${PORT_OPTIONS:MBOOTSTRAP}
|
||||||
|
${MKDIR} ${NEWBSDIR}
|
||||||
|
${CP} -a ${STAGEDIR}${PKG_PREFIX}/bin ${NEWBSDIR}/
|
||||||
|
${CP} -a ${STAGEDIR}${PKG_PREFIX}/lib ${NEWBSDIR}/
|
||||||
|
${CP} -a ${STAGEDIR}${PKG_PREFIX}/include ${NEWBSDIR}/
|
||||||
|
${CP} -a ${STAGEDIR}${PKG_PREFIX}/libexec ${NEWBSDIR}/
|
||||||
|
${RM} ${NEWBSDIR}/bin/${GARCH}*
|
||||||
|
${RM} -rf ${NEWBSDIR}/lib/gcc/${BLD_TARGET}/${GCC_VERSION}/include-fixed
|
||||||
|
(cd ${NEWBSDIR}/.. ; ${TAR} -cyf ${BSFILENAME} bootstrap)
|
||||||
|
.endif
|
||||||
|
|
||||||
|
.include <bsd.port.mk>
|
14
lang/gcc6-aux/Makefile.common
Normal file
14
lang/gcc6-aux/Makefile.common
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
# $FreeBSD$
|
||||||
|
|
||||||
|
.include "Makefile.version"
|
||||||
|
|
||||||
|
LIB_DEPENDS= libgmp.so:${PORTSDIR}/math/gmp
|
||||||
|
LIB_DEPENDS+= libmpfr.so:${PORTSDIR}/math/mpfr
|
||||||
|
LIB_DEPENDS+= libmpc.so:${PORTSDIR}/math/mpc
|
||||||
|
|
||||||
|
ONLY_FOR_ARCHS= i386 amd64
|
||||||
|
|
||||||
|
GNU_CONFIGURE= yes
|
||||||
|
USES= gmake libtool perl5 tar:bzip2
|
||||||
|
USE_PERL5= build
|
||||||
|
ALL_TARGET= default
|
22
lang/gcc6-aux/Makefile.version
Normal file
22
lang/gcc6-aux/Makefile.version
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
# $FreeBSD$
|
||||||
|
|
||||||
|
GCC_BRANCH= 6
|
||||||
|
GCC_POINT= 0.0
|
||||||
|
GCC_VERSION= ${GCC_BRANCH}.${GCC_POINT}
|
||||||
|
SNAPSHOT= 20151129
|
||||||
|
BUILD_RELEASE= no
|
||||||
|
MAIN_PR= 0
|
||||||
|
UTIL_PR= 0
|
||||||
|
ARMV7_PR= 0
|
||||||
|
|
||||||
|
.if ${BUILD_RELEASE:Mno}
|
||||||
|
# Snapshot naming pattern
|
||||||
|
IDENTIFICATION= gcc-${GCC_BRANCH}-${SNAPSHOT}
|
||||||
|
MS_SUBDIR= snapshots/${GCC_BRANCH}-${SNAPSHOT}
|
||||||
|
PHASE= snapshot
|
||||||
|
.else
|
||||||
|
# Release naming pattern
|
||||||
|
IDENTIFICATION= gcc-${GCC_VERSION}
|
||||||
|
MS_SUBDIR= releases/gcc-${GCC_VERSION}
|
||||||
|
PHASE= release
|
||||||
|
.endif
|
8
lang/gcc6-aux/distinfo
Normal file
8
lang/gcc6-aux/distinfo
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
SHA256 (gcc-6-20151129.tar.bz2) = 9fc70384a69ced8d3014d1182d874c9376fdaaa5d2bb4adb47a0df35a81e3834
|
||||||
|
SIZE (gcc-6-20151129.tar.bz2) = 93779686
|
||||||
|
SHA256 (ada-bootstrap.i386.freebsd.100B.tar.bz2) = 7231209f2600275f554f788ad1d036cf633c4339ebd25bd479a5bb1ddcddedf3
|
||||||
|
SIZE (ada-bootstrap.i386.freebsd.100B.tar.bz2) = 41229192
|
||||||
|
SHA256 (ada-bootstrap.x86_64.dragonfly.41.tar.bz2) = eb7785d8b842aee2bb04b43adfb1346b178ee4e83d8775b4e6705fd23f1586f0
|
||||||
|
SIZE (ada-bootstrap.x86_64.dragonfly.41.tar.bz2) = 44956630
|
||||||
|
SHA256 (ada-bootstrap.x86_64.freebsd.100B.tar.bz2) = 1066d7c5e71d78b4416de3b73348227678ca07db52488409e270db7b00467f55
|
||||||
|
SIZE (ada-bootstrap.x86_64.freebsd.100B.tar.bz2) = 42163803
|
106
lang/gcc6-aux/files/android.exp
Normal file
106
lang/gcc6-aux/files/android.exp
Normal file
|
@ -0,0 +1,106 @@
|
||||||
|
# This file is part of DejaGnu.
|
||||||
|
|
||||||
|
if {![info exists board]} {
|
||||||
|
error "must set $board before loading android.exp"
|
||||||
|
}
|
||||||
|
|
||||||
|
# For rcp_download, rsh_exec.
|
||||||
|
load_lib remote.exp
|
||||||
|
|
||||||
|
#
|
||||||
|
# unix_load -- load the program and execute it
|
||||||
|
#
|
||||||
|
# See default.exp for explanation of arguments and results.
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
proc unix_load { dest prog args } {
|
||||||
|
global ld_library_path
|
||||||
|
set output ""
|
||||||
|
set orig_ld_library_path ""
|
||||||
|
|
||||||
|
if { [llength $args] > 0 } {
|
||||||
|
set parg [lindex $args 0]
|
||||||
|
} else {
|
||||||
|
set parg ""
|
||||||
|
}
|
||||||
|
|
||||||
|
if { [llength $args] > 1 } {
|
||||||
|
set inp [lindex $args 1]
|
||||||
|
} else {
|
||||||
|
set inp ""
|
||||||
|
}
|
||||||
|
|
||||||
|
if {![file exists $prog]} then {
|
||||||
|
# We call both here because this should never happen.
|
||||||
|
perror "$prog does not exist in unix_load."
|
||||||
|
verbose -log "$prog does not exist." 3
|
||||||
|
return "untested"
|
||||||
|
}
|
||||||
|
verbose "loading to $dest" 2
|
||||||
|
if {![is_remote $dest]} {
|
||||||
|
if { "$inp" != "" } {
|
||||||
|
set command "$prog $parg < $inp"
|
||||||
|
} else {
|
||||||
|
set command "$prog $parg"
|
||||||
|
}
|
||||||
|
|
||||||
|
if {![info exists ld_library_path]} {
|
||||||
|
set ld_library_path ""
|
||||||
|
}
|
||||||
|
|
||||||
|
set orig_ld_library_path "[getenv LD_LIBRARY_PATH]"
|
||||||
|
setenv LD_LIBRARY_PATH "$ld_library_path:$orig_ld_library_path"
|
||||||
|
setenv SHLIB_PATH "$ld_library_path:$orig_ld_library_path"
|
||||||
|
verbose -log "Setting LD_LIBRARY_PATH to $ld_library_path:$orig_ld_library_path" 2
|
||||||
|
|
||||||
|
set id [remote_spawn $dest "$command" "readonly"]
|
||||||
|
if { $id < 0 } {
|
||||||
|
set output "remote_spawn failed"
|
||||||
|
set status -1
|
||||||
|
} else {
|
||||||
|
set status [remote_wait $dest 300]
|
||||||
|
set output [lindex $status 1]
|
||||||
|
set status [lindex $status 0]
|
||||||
|
}
|
||||||
|
# Unset them so we don't potentially get hosed when we try to run a
|
||||||
|
# non-testcase executable. (Setting LD_LIBRARY_PATH is the wrong
|
||||||
|
# fix in the first place; this just tries to minimize the resulting
|
||||||
|
# crap.)
|
||||||
|
if {[info exists ld_library_path]} {
|
||||||
|
setenv LD_LIBRARY_PATH $orig_ld_library_path
|
||||||
|
setenv SHLIB_PATH $orig_ld_library_path
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
set remotefile "/data/local/testsuite/[file tail $prog].[pid]"
|
||||||
|
set remotefile [remote_download $dest $prog $remotefile]
|
||||||
|
if { $remotefile == "" } {
|
||||||
|
verbose -log "Download of $prog to [board_info $dest name] failed." 3
|
||||||
|
return [list "unresolved" ""]
|
||||||
|
}
|
||||||
|
set status [remote_exec $dest "$remotefile" $parg $inp]
|
||||||
|
remote_file $dest delete $remotefile.o $remotefile
|
||||||
|
if { [lindex $status 0] < 0 } {
|
||||||
|
verbose -log "Couldn't execute $prog, [lindex $status 1]" 3
|
||||||
|
return [list "unresolved" ""]
|
||||||
|
}
|
||||||
|
set output [lindex $status 1]
|
||||||
|
set status [lindex $status 0]
|
||||||
|
}
|
||||||
|
|
||||||
|
setenv LD_LIBRARY_PATH $orig_ld_library_path
|
||||||
|
setenv SHLIB_PATH $orig_ld_library_path
|
||||||
|
|
||||||
|
verbose "Executed $prog, status $status" 2
|
||||||
|
if {![string match "" $output]} {
|
||||||
|
verbose -- "$output" 2
|
||||||
|
}
|
||||||
|
if { $status == 0 } {
|
||||||
|
set result "pass"
|
||||||
|
} else {
|
||||||
|
set result "fail"
|
||||||
|
}
|
||||||
|
return [list $result $output]
|
||||||
|
}
|
||||||
|
|
||||||
|
set_board_info protocol "unix"
|
1101
lang/gcc6-aux/files/diff-ada
Normal file
1101
lang/gcc6-aux/files/diff-ada
Normal file
File diff suppressed because it is too large
Load diff
705
lang/gcc6-aux/files/diff-ada-testsuite
Normal file
705
lang/gcc6-aux/files/diff-ada-testsuite
Normal file
|
@ -0,0 +1,705 @@
|
||||||
|
--- gcc/testsuite/ada/acats/run_acats.orig
|
||||||
|
+++ gcc/testsuite/ada/acats/run_acats
|
||||||
|
@@ -5,20 +5,6 @@
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
-# Provide which replacement.
|
||||||
|
-#
|
||||||
|
-# type -p is missing from Solaris 2 /bin/sh and /bin/ksh (ksh88), but both
|
||||||
|
-# ksh93 and bash have it.
|
||||||
|
-# type output format differs between ksh88 and ksh93, so avoid it if
|
||||||
|
-# type -p is present. Unfortunately, HP-UX /bin/sh ignores -p with type.
|
||||||
|
-# Fall back to whence which ksh88 and ksh93 provide, but bash does not.
|
||||||
|
-
|
||||||
|
-which () {
|
||||||
|
- path=`type -p $* 2>/dev/null` && { echo $path | awk '{print $NF}'; return 0; }
|
||||||
|
- path=`type $* 2>/dev/null` && { echo $path | awk '{print $NF}'; return 0; }
|
||||||
|
- path=`whence $* 2>/dev/null` && { echo $path; return 0; }
|
||||||
|
- return 1
|
||||||
|
-}
|
||||||
|
|
||||||
|
# Set up environment to use the Ada compiler from the object tree
|
||||||
|
|
||||||
|
--- gcc/testsuite/ada/acats/run_all.sh.orig
|
||||||
|
+++ gcc/testsuite/ada/acats/run_all.sh
|
||||||
|
@@ -18,21 +18,6 @@
|
||||||
|
|
||||||
|
# End of customization section.
|
||||||
|
|
||||||
|
-# Perform arithmetic evaluation on the ARGs, and store the result in the
|
||||||
|
-# global $as_val. Take advantage of shells that can avoid forks. The arguments
|
||||||
|
-# must be portable across $(()) and expr.
|
||||||
|
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
|
||||||
|
- eval 'as_fn_arith ()
|
||||||
|
- {
|
||||||
|
- as_val=$(( $* ))
|
||||||
|
- }'
|
||||||
|
-else
|
||||||
|
- as_fn_arith ()
|
||||||
|
- {
|
||||||
|
- as_val=`expr "$@" || test $? -eq 1`
|
||||||
|
- }
|
||||||
|
-fi # as_fn_arith
|
||||||
|
-
|
||||||
|
display_noeol () {
|
||||||
|
printf "$@"
|
||||||
|
printf "$@" >> $dir/acats.sum
|
||||||
|
@@ -50,6 +35,14 @@
|
||||||
|
echo "$@" >> $dir/acats.log
|
||||||
|
}
|
||||||
|
|
||||||
|
+inform () {
|
||||||
|
+ printf "%04d %7s" $1 $2
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+disinform () {
|
||||||
|
+ printf "\r"
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
dir=`${PWDCMD-pwd}`
|
||||||
|
|
||||||
|
if [ "$testdir" = "" ]; then
|
||||||
|
@@ -105,18 +98,6 @@
|
||||||
|
gnatls -v >> $dir/acats.log
|
||||||
|
display ""
|
||||||
|
|
||||||
|
-if [ -n "$GCC_RUNTEST_PARALLELIZE_DIR" ]; then
|
||||||
|
- dir_support=$dir/../acats/support
|
||||||
|
-
|
||||||
|
- rm -rf $dir/run
|
||||||
|
- mv $dir/tests $dir/tests.$$ 2> /dev/null
|
||||||
|
- rm -rf $dir/tests.$$ &
|
||||||
|
- mkdir -p $dir/run
|
||||||
|
-
|
||||||
|
- cp -pr $dir/../acats/tests $dir/
|
||||||
|
-else
|
||||||
|
- dir_support=$dir/support
|
||||||
|
-
|
||||||
|
display " === acats support ==="
|
||||||
|
display_noeol "Generating support files..."
|
||||||
|
|
||||||
|
@@ -213,9 +194,6 @@
|
||||||
|
|
||||||
|
display " done."
|
||||||
|
display ""
|
||||||
|
-
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
display " === acats tests ==="
|
||||||
|
|
||||||
|
if [ $# -eq 0 ]; then
|
||||||
|
@@ -227,14 +205,20 @@
|
||||||
|
glob_countn=0
|
||||||
|
glob_countok=0
|
||||||
|
glob_countu=0
|
||||||
|
-par_count=0
|
||||||
|
-par_countm=0
|
||||||
|
-par_last=
|
||||||
|
+countdown=0
|
||||||
|
|
||||||
|
for chapter in $chapters; do
|
||||||
|
- # Used to generate support once and finish after that.
|
||||||
|
- [ "$chapter" = "NONE" ] && continue
|
||||||
|
+ if [ -d $dir/tests/$chapter ]; then
|
||||||
|
+ cd $dir/tests/$chapter
|
||||||
|
+ ls *.a *.ada *.adt *.am *.dep 2> /dev/null | sed -e 's/\(.*\)\..*/\1/g' | \
|
||||||
|
+ cut -c1-7 | sort | uniq | comm -23 - $dir/support/norun.lst \
|
||||||
|
+ > $dir/tests/$chapter/${chapter}.lst
|
||||||
|
+ countn=`wc -l < $dir/tests/$chapter/${chapter}.lst`
|
||||||
|
+ countdown=`expr $countdown + $countn`
|
||||||
|
+ fi
|
||||||
|
+done
|
||||||
|
|
||||||
|
+for chapter in $chapters; do
|
||||||
|
display Running chapter $chapter ...
|
||||||
|
|
||||||
|
if [ ! -d $dir/tests/$chapter ]; then
|
||||||
|
@@ -243,45 +227,11 @@
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
- cd $dir/tests/$chapter
|
||||||
|
- ls *.a *.ada *.adt *.am *.dep 2> /dev/null | sed -e 's/\(.*\)\..*/\1/g' | \
|
||||||
|
- cut -c1-7 | sort | uniq | comm -23 - $dir_support/norun.lst \
|
||||||
|
- > $dir/tests/$chapter/${chapter}.lst
|
||||||
|
countn=`wc -l < $dir/tests/$chapter/${chapter}.lst`
|
||||||
|
- as_fn_arith $glob_countn + $countn
|
||||||
|
- glob_countn=$as_val
|
||||||
|
+ glob_countn=`expr $glob_countn + $countn`
|
||||||
|
+ counti=0
|
||||||
|
for i in `cat $dir/tests/$chapter/${chapter}.lst`; do
|
||||||
|
-
|
||||||
|
- # If running multiple run_all.sh jobs in parallel, decide
|
||||||
|
- # if we should run this test in the current instance.
|
||||||
|
- if [ -n "$GCC_RUNTEST_PARALLELIZE_DIR" ]; then
|
||||||
|
- case "$i" in
|
||||||
|
- # Ugh, some tests have inter-test dependencies, those
|
||||||
|
- # tests have to be scheduled on the same parallel instance
|
||||||
|
- # as previous test.
|
||||||
|
- ce2108f | ce2108h | ce3112d) ;;
|
||||||
|
- # All others can be hopefully scheduled freely.
|
||||||
|
- *)
|
||||||
|
- as_fn_arith $par_countm + 1
|
||||||
|
- par_countm=$as_val
|
||||||
|
- [ $par_countm -eq 10 ] && par_countm=0
|
||||||
|
- if [ $par_countm -eq 1 ]; then
|
||||||
|
- as_fn_arith $par_count + 1
|
||||||
|
- par_count=$as_val
|
||||||
|
- if mkdir $GCC_RUNTEST_PARALLELIZE_DIR/$par_count 2>/dev/null; then
|
||||||
|
- par_last=1
|
||||||
|
- else
|
||||||
|
- par_last=
|
||||||
|
- fi
|
||||||
|
- fi;;
|
||||||
|
- esac
|
||||||
|
- if [ -z "$par_last" ]; then
|
||||||
|
- as_fn_arith $glob_countn - 1
|
||||||
|
- glob_countn=$as_val
|
||||||
|
- continue
|
||||||
|
- fi
|
||||||
|
- fi
|
||||||
|
-
|
||||||
|
+ counti=`expr $counti + 1`
|
||||||
|
extraflags="-gnat95"
|
||||||
|
grep $i $testdir/overflow.lst > /dev/null 2>&1
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
@@ -299,10 +249,13 @@
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
extraflags="$extraflags -fstack-check"
|
||||||
|
fi
|
||||||
|
+ inform $countdown $i
|
||||||
|
+ countdown=`expr $countdown - 1`
|
||||||
|
test=$dir/tests/$chapter/$i
|
||||||
|
mkdir $test && cd $test >> $dir/acats.log 2>&1
|
||||||
|
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
+ disinform
|
||||||
|
display "FAIL: $i"
|
||||||
|
failed="${failed}${i} "
|
||||||
|
clean_dir
|
||||||
|
@@ -320,19 +273,22 @@
|
||||||
|
echo "BUILD $main" >> $dir/acats.log
|
||||||
|
EXTERNAL_OBJECTS=""
|
||||||
|
case $i in
|
||||||
|
- cxb30*) EXTERNAL_OBJECTS="$dir_support/cxb30040.o $dir_support/cxb30060.o $dir_support/cxb30130.o $dir_support/cxb30131.o";;
|
||||||
|
+ cxb30*) EXTERNAL_OBJECTS="$dir/support/cxb30040.o $dir/support/cxb30060.o $dir/support/cxb30130.o $dir/support/cxb30131.o";;
|
||||||
|
ca1020e) rm -f ca1020e_func1.adb ca1020e_func2.adb ca1020e_proc1.adb ca1020e_proc2.adb > /dev/null 2>&1;;
|
||||||
|
ca14028) rm -f ca14028_func2.ads ca14028_func3.ads ca14028_proc1.ads ca14028_proc3.ads > /dev/null 2>&1;;
|
||||||
|
+ cxh1001) extraflags="-a -f"; echo "pragma Normalize_Scalars;" > gnat.adc
|
||||||
|
esac
|
||||||
|
if [ "$main" = "" ]; then
|
||||||
|
+ disinform
|
||||||
|
display "FAIL: $i"
|
||||||
|
failed="${failed}${i} "
|
||||||
|
clean_dir
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
- target_gnatmake $extraflags -I$dir_support $main >> $dir/acats.log 2>&1
|
||||||
|
+ target_gnatmake $extraflags -I$dir/support $main >> $dir/acats.log 2>&1
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
+ disinform
|
||||||
|
display "FAIL: $i"
|
||||||
|
failed="${failed}${i} "
|
||||||
|
clean_dir
|
||||||
|
@@ -347,6 +303,7 @@
|
||||||
|
target_run $dir/tests/$chapter/$i/$binmain > $dir/tests/$chapter/$i/${i}.log 2>&1
|
||||||
|
cd $dir/tests/$chapter/$i
|
||||||
|
cat ${i}.log >> $dir/acats.log
|
||||||
|
+ disinform
|
||||||
|
egrep -e '(==== |\+\+\+\+ |\!\!\!\! )' ${i}.log > /dev/null 2>&1
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
grep 'tasking not implemented' ${i}.log > /dev/null 2>&1
|
||||||
|
@@ -356,15 +313,12 @@
|
||||||
|
failed="${failed}${i} "
|
||||||
|
else
|
||||||
|
log "UNSUPPORTED: $i"
|
||||||
|
- as_fn_arith $glob_countn - 1
|
||||||
|
- glob_countn=$as_val
|
||||||
|
- as_fn_arith $glob_countu + 1
|
||||||
|
- glob_countu=$as_val
|
||||||
|
+ glob_countn=`expr $glob_countn - 1`
|
||||||
|
+ glob_countu=`expr $glob_countu + 1`
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
log "PASS: $i"
|
||||||
|
- as_fn_arith $glob_countok + 1
|
||||||
|
- glob_countok=$as_val
|
||||||
|
+ glob_countok=`expr $glob_countok + 1`
|
||||||
|
fi
|
||||||
|
clean_dir
|
||||||
|
done
|
||||||
|
--- /dev/null
|
||||||
|
+++ gcc/testsuite/ada/acats/run_remote.sh
|
||||||
|
@@ -0,0 +1,412 @@
|
||||||
|
+#!/bin/sh
|
||||||
|
+# Run ACATS with the GNU Ada compiler
|
||||||
|
+
|
||||||
|
+# The following functions are to be customized if you run in cross
|
||||||
|
+# environment or want to change compilation flags. Note that for
|
||||||
|
+# tests requiring checks not turned on by default, this script
|
||||||
|
+# automatically adds the needed flags to pass (ie: -gnato or -gnatE).
|
||||||
|
+
|
||||||
|
+# gccflags="-O3 -fomit-frame-pointer -funroll-all-loops -finline-functions"
|
||||||
|
+# gnatflags="-gnatN"
|
||||||
|
+
|
||||||
|
+gccflags="-O2"
|
||||||
|
+gnatflags="-gnatws"
|
||||||
|
+tabtarget="/data/local/testsuite"
|
||||||
|
+STRIP="@REMOTE_TARGET@-strip"
|
||||||
|
+
|
||||||
|
+target_run () {
|
||||||
|
+ # Run on rooted tablet (port 22 vs port 2222)
|
||||||
|
+ BN=`basename $*`
|
||||||
|
+ $STRIP_FOR_TARGET $*
|
||||||
|
+ /usr/bin/scp -qp $* root@tablet:$tabtarget/
|
||||||
|
+ /usr/bin/ssh -q tablet $tabtarget/$BN
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+target_cmd () {
|
||||||
|
+ /usr/bin/ssh -q tablet "$1"
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+# End of customization section.
|
||||||
|
+
|
||||||
|
+display_noeol () {
|
||||||
|
+ printf "$@"
|
||||||
|
+ printf "$@" >> $dir/acats.sum
|
||||||
|
+ printf "$@" >> $dir/acats.log
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+display () {
|
||||||
|
+ echo "$@"
|
||||||
|
+ echo "$@" >> $dir/acats.sum
|
||||||
|
+ echo "$@" >> $dir/acats.log
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+log () {
|
||||||
|
+ echo "$@" >> $dir/acats.sum
|
||||||
|
+ echo "$@" >> $dir/acats.log
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+inform () {
|
||||||
|
+ printf "%04d %7s" $1 $2
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+disinform () {
|
||||||
|
+ printf "\r"
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+dir=`${PWDCMD-pwd}`
|
||||||
|
+
|
||||||
|
+if [ "$testdir" = "" ]; then
|
||||||
|
+ echo You must use make check or make check-ada
|
||||||
|
+ exit 1
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+if [ "$dir" = "$testdir" ]; then
|
||||||
|
+ echo "error: srcdir must be different than objdir, exiting."
|
||||||
|
+ exit 1
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+target_gnatmake () {
|
||||||
|
+ echo gnatmake-cross --GCC=\"$GCC\" $gnatflags $gccflags $* -largs $EXTERNAL_OBJECTS --GCC=\"$GCC\" -fPIE -pie
|
||||||
|
+ gnatmake-cross --GCC="$GCC" $gnatflags $gccflags $* -largs $EXTERNAL_OBJECTS --GCC="$GCC" -fPIE -pie
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+target_gcc () {
|
||||||
|
+ $GCC $gccflags $*
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+clean_dir () {
|
||||||
|
+ rm -f "$binmain" *.o *.ali > /dev/null 2>&1
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+find_main () {
|
||||||
|
+ ls ${i}?.adb > ${i}.lst 2> /dev/null
|
||||||
|
+ ls ${i}*m.adb >> ${i}.lst 2> /dev/null
|
||||||
|
+ ls ${i}.adb >> ${i}.lst 2> /dev/null
|
||||||
|
+ main=`tail -1 ${i}.lst`
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+split_testid () {
|
||||||
|
+ local mysplit=`echo $1 | awk -F/ '{print "section=" $1 "; TN=" $2 "; prog=" $3 ";"}'`
|
||||||
|
+ eval ${mysplit}
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+EXTERNAL_OBJECTS=""
|
||||||
|
+# Global variable to communicate external objects to link with.
|
||||||
|
+
|
||||||
|
+rm -f $dir/acats.sum $dir/acats.log $dir/transfer.lst
|
||||||
|
+
|
||||||
|
+display "Test Run By $USER on `date`"
|
||||||
|
+
|
||||||
|
+display " === acats configuration ==="
|
||||||
|
+
|
||||||
|
+target=`$GCC -dumpmachine`
|
||||||
|
+
|
||||||
|
+display target gcc is $GCC
|
||||||
|
+display `$GCC -v 2>&1`
|
||||||
|
+display host=`gcc -dumpmachine`
|
||||||
|
+display target=$target
|
||||||
|
+display `type gnatmake-cross`
|
||||||
|
+gnatls-cross -v >> $dir/acats.log
|
||||||
|
+display ""
|
||||||
|
+
|
||||||
|
+# Let's be tidy and clear off the remote device first
|
||||||
|
+target_cmd "cd ${tabtarget}; rm logs/*; rmdir logs; rm *"
|
||||||
|
+
|
||||||
|
+display " === acats support ==="
|
||||||
|
+display_noeol "Generating support files..."
|
||||||
|
+
|
||||||
|
+rm -rf $dir/support
|
||||||
|
+mkdir -p $dir/support
|
||||||
|
+cd $dir/support
|
||||||
|
+
|
||||||
|
+cp $testdir/support/*.ada $testdir/support/*.a $testdir/support/*.tst $dir/support
|
||||||
|
+
|
||||||
|
+# Find out the size in bit of an address on the target
|
||||||
|
+target_gnatmake $testdir/support/impbit.adb >> $dir/acats.log 2>&1
|
||||||
|
+target_run $dir/support/impbit > $dir/support/impbit.out 2>&1
|
||||||
|
+target_bit=`cat $dir/support/impbit.out`
|
||||||
|
+echo target_bit="$target_bit" >> $dir/acats.log
|
||||||
|
+
|
||||||
|
+# Find out a suitable asm statement
|
||||||
|
+# Adapted from configure.ac gcc_cv_as_dwarf2_debug_line
|
||||||
|
+case "$target" in
|
||||||
|
+ ia64*-*-* | s390*-*-*)
|
||||||
|
+ target_insn="nop 0"
|
||||||
|
+ ;;
|
||||||
|
+ mmix-*-*)
|
||||||
|
+ target_insn="swym 0"
|
||||||
|
+ ;;
|
||||||
|
+ *)
|
||||||
|
+ target_insn="nop"
|
||||||
|
+ ;;
|
||||||
|
+esac
|
||||||
|
+echo target_insn="$target_insn" >> $dir/acats.log
|
||||||
|
+
|
||||||
|
+sed -e "s,ACATS4GNATDIR,$dir,g" \
|
||||||
|
+ < $testdir/support/impdef.a > $dir/support/impdef.a
|
||||||
|
+sed -e "s,ACATS4GNATDIR,$dir,g" \
|
||||||
|
+ -e "s,ACATS4GNATBIT,$target_bit,g" \
|
||||||
|
+ -e "s,ACATS4GNATINSN,$target_insn,g" \
|
||||||
|
+ < $testdir/support/macro.dfs > $dir/support/MACRO.DFS
|
||||||
|
+sed -e "s,ACATS4GNATDIR,$dir,g" \
|
||||||
|
+ < $testdir/support/tsttests.dat > $dir/support/TSTTESTS.DAT
|
||||||
|
+
|
||||||
|
+cp $testdir/tests/cd/*.c $dir/support
|
||||||
|
+cp $testdir/tests/cxb/*.c $dir/support
|
||||||
|
+grep -v '^#' $testdir/norun.lst | sort > $dir/support/norun.lst
|
||||||
|
+
|
||||||
|
+rm -rf $dir/run
|
||||||
|
+mv $dir/tests $dir/tests.$$ 2> /dev/null
|
||||||
|
+rm -rf $dir/tests.$$ &
|
||||||
|
+mkdir -p $dir/run
|
||||||
|
+
|
||||||
|
+cp -pr $testdir/tests $dir/
|
||||||
|
+
|
||||||
|
+for i in $dir/support/*.ada $dir/support/*.a; do
|
||||||
|
+ host_gnatchop $i >> $dir/acats.log 2>&1
|
||||||
|
+done
|
||||||
|
+
|
||||||
|
+# These tools are used to preprocess some ACATS sources
|
||||||
|
+# they need to be compiled native on the host.
|
||||||
|
+
|
||||||
|
+host_gnatmake -q -gnatws macrosub.adb
|
||||||
|
+if [ $? -ne 0 ]; then
|
||||||
|
+ display "**** Failed to compile macrosub"
|
||||||
|
+ exit 1
|
||||||
|
+fi
|
||||||
|
+./macrosub > macrosub.out 2>&1
|
||||||
|
+
|
||||||
|
+gcc -c cd300051.c
|
||||||
|
+host_gnatmake -q -gnatws widechr.adb
|
||||||
|
+if [ $? -ne 0 ]; then
|
||||||
|
+ display "**** Failed to compile widechr"
|
||||||
|
+ exit 1
|
||||||
|
+fi
|
||||||
|
+./widechr > widechr.out 2>&1
|
||||||
|
+
|
||||||
|
+rm -f $dir/support/macrosub
|
||||||
|
+rm -f $dir/support/widechr
|
||||||
|
+rm -f $dir/support/*.ali
|
||||||
|
+rm -f $dir/support/*.o
|
||||||
|
+
|
||||||
|
+display " done."
|
||||||
|
+
|
||||||
|
+# From here, all compilations will be made by the target compiler
|
||||||
|
+
|
||||||
|
+display_noeol "Compiling support files..."
|
||||||
|
+
|
||||||
|
+target_gcc -c *.c
|
||||||
|
+if [ $? -ne 0 ]; then
|
||||||
|
+ display "**** Failed to compile C code"
|
||||||
|
+ exit 1
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+host_gnatchop *.adt >> $dir/acats.log 2>&1
|
||||||
|
+
|
||||||
|
+target_gnatmake -c -gnato -gnatE *.ads >> $dir/acats.log 2>&1
|
||||||
|
+target_gnatmake -c -gnato -gnatE *.adb >> $dir/acats.log 2>&1
|
||||||
|
+
|
||||||
|
+display " done."
|
||||||
|
+display ""
|
||||||
|
+display " === acats tests ==="
|
||||||
|
+
|
||||||
|
+if [ $# -eq 0 ]; then
|
||||||
|
+ chapters=`cd $dir/tests; echo [a-z]*`
|
||||||
|
+else
|
||||||
|
+ chapters=$*
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+glob_countn=0
|
||||||
|
+glob_countok=0
|
||||||
|
+glob_countu=0
|
||||||
|
+countdown=0
|
||||||
|
+
|
||||||
|
+for chapter in $chapters; do
|
||||||
|
+ if [ -d $dir/tests/$chapter ]; then
|
||||||
|
+ cd $dir/tests/$chapter
|
||||||
|
+ ls *.a *.ada *.adt *.am *.dep 2> /dev/null | sed -e 's/\(.*\)\..*/\1/g' | \
|
||||||
|
+ cut -c1-7 | sort | uniq | comm -23 - $dir/support/norun.lst \
|
||||||
|
+ > $dir/tests/$chapter/${chapter}.lst
|
||||||
|
+ countn=`wc -l < $dir/tests/$chapter/${chapter}.lst`
|
||||||
|
+ countdown=`expr $countdown + $countn`
|
||||||
|
+ fi
|
||||||
|
+done
|
||||||
|
+
|
||||||
|
+cat > $dir/execute.sh << EOF
|
||||||
|
+inform () {
|
||||||
|
+ printf "left: %04d" \$1
|
||||||
|
+}
|
||||||
|
+disinform () {
|
||||||
|
+ printf "\r"
|
||||||
|
+}
|
||||||
|
+cycle () {
|
||||||
|
+ local countx=0
|
||||||
|
+ local total=\$(echo \$testlist | awk '{print NF}')
|
||||||
|
+ mkdir -p logs
|
||||||
|
+ echo "Executing \$total tests on remote device"
|
||||||
|
+ inform \$total
|
||||||
|
+ for x in \$testlist; do
|
||||||
|
+ timeout -t 30 ./\${x} > logs/\${x}.log 2>&1
|
||||||
|
+ countx=\$(expr \$countx + 1)
|
||||||
|
+ if [ \$countx -eq 25 ]; then
|
||||||
|
+ total=\$(expr \$total - 25)
|
||||||
|
+ countx=0
|
||||||
|
+ disinform
|
||||||
|
+ inform \$total
|
||||||
|
+ fi
|
||||||
|
+ done
|
||||||
|
+ disinform
|
||||||
|
+ tar -czf remote.logs.tar.gz logs
|
||||||
|
+}
|
||||||
|
+testlist=" \\
|
||||||
|
+EOF
|
||||||
|
+
|
||||||
|
+display "All tests are being cross-compiled without execution first."
|
||||||
|
+
|
||||||
|
+for chapter in $chapters; do
|
||||||
|
+ if [ ! -d $dir/tests/$chapter ]; then
|
||||||
|
+ continue
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ countn=`wc -l < $dir/tests/$chapter/${chapter}.lst`
|
||||||
|
+ glob_countn=`expr $glob_countn + $countn`
|
||||||
|
+ counti=0
|
||||||
|
+ for i in `cat $dir/tests/$chapter/${chapter}.lst`; do
|
||||||
|
+ counti=`expr $counti + 1`
|
||||||
|
+ extraflags="-gnat95"
|
||||||
|
+ grep $i $testdir/overflow.lst > /dev/null 2>&1
|
||||||
|
+ if [ $? -eq 0 ]; then
|
||||||
|
+ extraflags="$extraflags -gnato"
|
||||||
|
+ fi
|
||||||
|
+ grep $i $testdir/elabd.lst > /dev/null 2>&1
|
||||||
|
+ if [ $? -eq 0 ]; then
|
||||||
|
+ extraflags="$extraflags -gnatE"
|
||||||
|
+ fi
|
||||||
|
+ grep $i $testdir/floatstore.lst > /dev/null 2>&1
|
||||||
|
+ if [ $? -eq 0 ]; then
|
||||||
|
+ extraflags="$extraflags -ffloat-store"
|
||||||
|
+ fi
|
||||||
|
+ grep $i $testdir/stackcheck.lst > /dev/null 2>&1
|
||||||
|
+ if [ $? -eq 0 ]; then
|
||||||
|
+ extraflags="$extraflags -fstack-check"
|
||||||
|
+ fi
|
||||||
|
+ inform $countdown $i
|
||||||
|
+ countdown=`expr $countdown - 1`
|
||||||
|
+ test=$dir/tests/$chapter/$i
|
||||||
|
+ mkdir $test && cd $test >> $dir/acats.log 2>&1
|
||||||
|
+
|
||||||
|
+ if [ $? -ne 0 ]; then
|
||||||
|
+ disinform
|
||||||
|
+ display "FAIL: $i"
|
||||||
|
+ failed="${failed}${i} "
|
||||||
|
+ clean_dir
|
||||||
|
+ continue
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ host_gnatchop -c -w `ls ${test}*.a ${test}*.ada ${test}*.adt ${test}*.am ${test}*.dep 2> /dev/null` >> $dir/acats.log 2>&1
|
||||||
|
+ find_main
|
||||||
|
+ if [ -z "$main" ]; then
|
||||||
|
+ sync
|
||||||
|
+ find_main
|
||||||
|
+ fi
|
||||||
|
+ binmain=`echo $main | sed -e 's/\(.*\)\..*/\1/g'`
|
||||||
|
+ echo "BUILD $main" >> $dir/acats.log
|
||||||
|
+ EXTERNAL_OBJECTS=""
|
||||||
|
+ case $i in
|
||||||
|
+ cxb30*) EXTERNAL_OBJECTS="$dir/support/cxb30040.o $dir/support/cxb30060.o $dir/support/cxb30130.o $dir/support/cxb30131.o";;
|
||||||
|
+ ca1020e) rm -f ca1020e_func1.adb ca1020e_func2.adb ca1020e_proc1.adb ca1020e_proc2.adb > /dev/null 2>&1;;
|
||||||
|
+ ca14028) rm -f ca14028_func2.ads ca14028_func3.ads ca14028_proc1.ads ca14028_proc3.ads > /dev/null 2>&1;;
|
||||||
|
+ cxh1001) extraflags="-a -f"; echo "pragma Normalize_Scalars;" > gnat.adc
|
||||||
|
+ esac
|
||||||
|
+ if [ "$main" = "" ]; then
|
||||||
|
+ disinform
|
||||||
|
+ display "FAIL: $i"
|
||||||
|
+ failed="${failed}${i} "
|
||||||
|
+ clean_dir
|
||||||
|
+ continue
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ target_gnatmake $extraflags -I$dir/support $main >> $dir/acats.log 2>&1
|
||||||
|
+ if [ $? -ne 0 ]; then
|
||||||
|
+ disinform
|
||||||
|
+ display "FAIL: $i"
|
||||||
|
+ failed="${failed}${i} "
|
||||||
|
+ clean_dir
|
||||||
|
+ continue
|
||||||
|
+ fi
|
||||||
|
+ echo $chapter/$i/$binmain >> $dir/transfer.lst
|
||||||
|
+ echo "$binmain \\" >> $dir/execute.sh
|
||||||
|
+ $STRIP $binmain
|
||||||
|
+ disinform
|
||||||
|
+ done
|
||||||
|
+done
|
||||||
|
+echo '"' >> $dir/execute.sh
|
||||||
|
+echo "cycle" >> $dir/execute.sh
|
||||||
|
+
|
||||||
|
+sync
|
||||||
|
+display "Transfer files to remote device: root@tablet:$tabtarget/"
|
||||||
|
+cd $dir/tests
|
||||||
|
+cat $dir/transfer.lst | xargs tar --strip-components=2 -czf - | \
|
||||||
|
+ target_cmd "tar -C $tabtarget -xzf -"
|
||||||
|
+cd $dir
|
||||||
|
+tar -czf - execute.sh | target_cmd "tar -C $tabtarget -xzf -"
|
||||||
|
+target_cmd "cd $tabtarget; sh execute.sh"
|
||||||
|
+rm -rf $dir/logs $dir/remote.logs.tar.gz
|
||||||
|
+/usr/bin/scp -q root@tablet:$tabtarget/remote.logs.tar.gz $dir/
|
||||||
|
+tar -xzf $dir/remote.logs.tar.gz
|
||||||
|
+
|
||||||
|
+countdown=`wc -l < $dir/transfer.lst`
|
||||||
|
+glob_countn=${countdown}
|
||||||
|
+for i in `cat $dir/transfer.lst`; do
|
||||||
|
+ split_testid $i
|
||||||
|
+ if [ "$section" != "$savedsect" ]; then
|
||||||
|
+ display Running chapter $section ...
|
||||||
|
+ fi
|
||||||
|
+ savedsect=$section
|
||||||
|
+
|
||||||
|
+ #inform $countdown $TN
|
||||||
|
+ countdown=`expr $countdown - 1`
|
||||||
|
+ proglog="$dir/logs/${prog}.log"
|
||||||
|
+ echo "RUN $prog" >> $dir/acats.log
|
||||||
|
+ if [ ! -f $proglog ]; then
|
||||||
|
+ echo "LOG NOT FOUND!" >> $proglog
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ cat $proglog >> $dir/acats.log
|
||||||
|
+
|
||||||
|
+ egrep -e '(==== |\+\+\+\+ |\!\!\!\! )' $proglog > /dev/null 2>&1
|
||||||
|
+ if [ $? -ne 0 ]; then
|
||||||
|
+ grep 'tasking not implemented' $proglog > /dev/null 2>&1
|
||||||
|
+
|
||||||
|
+ if [ $? -ne 0 ]; then
|
||||||
|
+ display "FAIL: ${TN}"
|
||||||
|
+ failed="${failed}${TN} "
|
||||||
|
+ else
|
||||||
|
+ log "UNSUPPORTED: ${TN}"
|
||||||
|
+ glob_countn=`expr $glob_countn - 1`
|
||||||
|
+ glob_countu=`expr $glob_countu + 1`
|
||||||
|
+ fi
|
||||||
|
+ else
|
||||||
|
+ log "PASS: ${TN}"
|
||||||
|
+ glob_countok=`expr $glob_countok + 1`
|
||||||
|
+ fi
|
||||||
|
+ cd $dir/tests/$section/$TN
|
||||||
|
+ clean_dir
|
||||||
|
+ #disinform
|
||||||
|
+done
|
||||||
|
+
|
||||||
|
+display " === acats Summary ==="
|
||||||
|
+display "# of expected passes $glob_countok"
|
||||||
|
+display "# of unexpected failures `expr $glob_countn - $glob_countok`"
|
||||||
|
+
|
||||||
|
+if [ $glob_countu -ne 0 ]; then
|
||||||
|
+ display "# of unsupported tests $glob_countu"
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+if [ $glob_countok -ne $glob_countn ]; then
|
||||||
|
+ display "*** FAILURES: $failed"
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+display "$0 completed at `date`"
|
||||||
|
+
|
||||||
|
+exit 0
|
||||||
|
--- gcc/testsuite/gnat.dg/test_raise_from_pure.adb.orig
|
||||||
|
+++ gcc/testsuite/gnat.dg/test_raise_from_pure.adb
|
||||||
|
@@ -1,4 +1,4 @@
|
||||||
|
--- { dg-do run }
|
||||||
|
+-- { dg-do run { xfail *-*-openbsd* } }
|
||||||
|
-- { dg-options "-O2" }
|
||||||
|
|
||||||
|
-- This is an optimization test and its failure is only a missed optimization.
|
||||||
|
--- gcc/testsuite/gnat.dg/unchecked_convert5.adb.orig
|
||||||
|
+++ gcc/testsuite/gnat.dg/unchecked_convert5.adb
|
||||||
|
@@ -1,22 +0,0 @@
|
||||||
|
--- { dg-do run { target hppa*-*-* sparc*-*-* powerpc*-*-* } }
|
||||||
|
-
|
||||||
|
-with Unchecked_Conversion;
|
||||||
|
-
|
||||||
|
-procedure Unchecked_Convert5 is
|
||||||
|
-
|
||||||
|
- subtype c_1 is string(1..1);
|
||||||
|
-
|
||||||
|
- function int2c1 is -- { dg-warning "different sizes" }
|
||||||
|
- new unchecked_conversion (source => integer, target => c_1);
|
||||||
|
-
|
||||||
|
- c1 : c_1;
|
||||||
|
-
|
||||||
|
-begin
|
||||||
|
-
|
||||||
|
- c1 := int2c1(16#12#);
|
||||||
|
-
|
||||||
|
- if c1 (1) /= ASCII.Nul then
|
||||||
|
- raise Program_Error;
|
||||||
|
- end if;
|
||||||
|
-
|
||||||
|
-end;
|
||||||
|
--- gcc/testsuite/gnat.dg/unchecked_convert6.adb.orig
|
||||||
|
+++ gcc/testsuite/gnat.dg/unchecked_convert6.adb
|
||||||
|
@@ -1,22 +0,0 @@
|
||||||
|
--- { dg-do run { target hppa*-*-* sparc*-*-* powerpc*-*-* } }
|
||||||
|
-
|
||||||
|
-with Unchecked_Conversion;
|
||||||
|
-
|
||||||
|
-procedure Unchecked_Convert6 is
|
||||||
|
-
|
||||||
|
- subtype c_5 is string(1..5);
|
||||||
|
-
|
||||||
|
- function int2c5 is -- { dg-warning "different sizes" }
|
||||||
|
- new unchecked_conversion (source => integer, target => c_5);
|
||||||
|
-
|
||||||
|
- c5 : c_5;
|
||||||
|
-
|
||||||
|
-begin
|
||||||
|
-
|
||||||
|
- c5 := int2c5(16#12#);
|
||||||
|
-
|
||||||
|
- if c5 (4) /= ASCII.DC2 then
|
||||||
|
- raise Program_Error;
|
||||||
|
- end if;
|
||||||
|
-
|
||||||
|
-end;
|
92
lang/gcc6-aux/files/diff-core
Normal file
92
lang/gcc6-aux/files/diff-core
Normal file
|
@ -0,0 +1,92 @@
|
||||||
|
--- gcc/config/i386/freebsd.h.orig
|
||||||
|
+++ gcc/config/i386/freebsd.h
|
||||||
|
@@ -77,6 +77,12 @@
|
||||||
|
When the -shared link option is used a final link is not being
|
||||||
|
done. */
|
||||||
|
|
||||||
|
+#if FBSD_MAJOR < 10
|
||||||
|
+#define ELF_HASH_STYLE "--hash-style=both "
|
||||||
|
+#else
|
||||||
|
+#define ELF_HASH_STYLE "--hash-style=gnu "
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
#undef LINK_SPEC
|
||||||
|
#define LINK_SPEC "\
|
||||||
|
%{p:%nconsider using '-pg' instead of '-p' with gprof(1)} \
|
||||||
|
@@ -88,6 +94,7 @@
|
||||||
|
%{rdynamic:-export-dynamic} \
|
||||||
|
-dynamic-linker %(fbsd_dynamic_linker) } \
|
||||||
|
%{static:-Bstatic}} \
|
||||||
|
+ %{!static:" ELF_HASH_STYLE "-rpath @PREFIX@/@GCCAUX@/lib} \
|
||||||
|
%{symbolic:-Bsymbolic}"
|
||||||
|
|
||||||
|
/* A C statement to output to the stdio stream FILE an assembler
|
||||||
|
--- gcc/config/i386/freebsd64.h.orig
|
||||||
|
+++ gcc/config/i386/freebsd64.h
|
||||||
|
@@ -41,4 +41,5 @@
|
||||||
|
%{rdynamic:-export-dynamic} \
|
||||||
|
-dynamic-linker %(fbsd_dynamic_linker) } \
|
||||||
|
%{static:-Bstatic}} \
|
||||||
|
+ %{!static:" ELF_HASH_STYLE "-rpath @PREFIX@/@GCCAUX@/lib} \
|
||||||
|
%{symbolic:-Bsymbolic}"
|
||||||
|
--- gcc/Makefile.in.orig
|
||||||
|
+++ gcc/Makefile.in
|
||||||
|
@@ -1184,7 +1184,6 @@
|
||||||
|
insn-emit.o \
|
||||||
|
insn-extract.o \
|
||||||
|
insn-latencytab.o \
|
||||||
|
- insn-modes.o \
|
||||||
|
insn-opinit.o \
|
||||||
|
insn-output.o \
|
||||||
|
insn-peep.o \
|
||||||
|
@@ -1547,6 +1546,7 @@
|
||||||
|
$(OBJS-libcommon-target) 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 \
|
||||||
|
+ insn-modes.o insn-modes-ada.o \
|
||||||
|
lto-wrapper.o collect-utils.o
|
||||||
|
|
||||||
|
# This lists all host object files, whether they are included in this
|
||||||
|
@@ -1554,6 +1554,11 @@
|
||||||
|
ALL_HOST_OBJS = $(ALL_HOST_FRONTEND_OBJS) $(ALL_HOST_BACKEND_OBJS)
|
||||||
|
|
||||||
|
BACKEND = libbackend.a main.o libcommon-target.a libcommon.a \
|
||||||
|
+ insn-modes.o \
|
||||||
|
+ $(CPPLIB) $(LIBDECNUMBER)
|
||||||
|
+
|
||||||
|
+BACKEND2 = libbackend.a main.o libcommon-target.a libcommon.a \
|
||||||
|
+ insn-modes-ada.o \
|
||||||
|
$(CPPLIB) $(LIBDECNUMBER)
|
||||||
|
|
||||||
|
# This is defined to "yes" if Tree checking is enabled, which roughly means
|
||||||
|
@@ -2208,6 +2213,7 @@
|
||||||
|
|
||||||
|
insn-modes.c: s-modes; @true
|
||||||
|
insn-modes.h: s-modes-h; @true
|
||||||
|
+insn-modes-ada.c: s-modes-ada; @true
|
||||||
|
min-insn-modes.c: s-modes-m; @true
|
||||||
|
|
||||||
|
s-modes: build/genmodes$(build_exeext)
|
||||||
|
@@ -2225,6 +2231,12 @@
|
||||||
|
$(SHELL) $(srcdir)/../move-if-change tmp-min-modes.c min-insn-modes.c
|
||||||
|
$(STAMP) s-modes-m
|
||||||
|
|
||||||
|
+s-modes-ada: s-modes
|
||||||
|
+ $(shell sed -e 's/: TARGET_96_ROUND_53_LONG_DOUBLE \? &ieee_extended_intel_96_round_53_format //' \
|
||||||
|
+ < insn-modes.c > tmp-modes-ada.c)
|
||||||
|
+ $(SHELL) $(srcdir)/../move-if-change tmp-modes-ada.c insn-modes-ada.c
|
||||||
|
+ $(STAMP) s-modes-ada
|
||||||
|
+
|
||||||
|
insn-preds.c: s-preds; @true
|
||||||
|
tm-preds.h: s-preds-h; @true
|
||||||
|
tm-constrs.h: s-constrs-h; @true
|
||||||
|
@@ -3407,6 +3419,9 @@
|
||||||
|
( cd $(DESTDIR)$(bindir) && \
|
||||||
|
$(LN) $(GCC_INSTALL_NAME)$(exeext) $(FULL_DRIVER_NAME) ); \
|
||||||
|
fi; \
|
||||||
|
+ if [ -f gnat1$(exeext) ] ; then \
|
||||||
|
+ ( cd $(DESTDIR)$(bindir) && $(LN) $(GCC_INSTALL_NAME)$(exeext) ada$(exeext) ) \
|
||||||
|
+ fi; \
|
||||||
|
if [ ! -f gcc-cross$(exeext) ] \
|
||||||
|
&& [ "$(GCC_INSTALL_NAME)" != "$(GCC_TARGET_INSTALL_NAME)" ]; then \
|
||||||
|
rm -f $(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-tmp$(exeext); \
|
12
lang/gcc6-aux/files/diff-cxx
Normal file
12
lang/gcc6-aux/files/diff-cxx
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
--- libstdc++-v3/configure.host.orig
|
||||||
|
+++ libstdc++-v3/configure.host
|
||||||
|
@@ -262,6 +262,9 @@
|
||||||
|
freebsd*)
|
||||||
|
os_include_dir="os/bsd/freebsd"
|
||||||
|
;;
|
||||||
|
+ linux-android*)
|
||||||
|
+ os_include_dir="os/bionic"
|
||||||
|
+ ;;
|
||||||
|
linux-musl*)
|
||||||
|
os_include_dir="os/generic"
|
||||||
|
;;
|
46
lang/gcc6-aux/files/diff-gcc-testsuite
Normal file
46
lang/gcc6-aux/files/diff-gcc-testsuite
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
--- gcc/testsuite/gcc.dg/format/ext-1.c.orig
|
||||||
|
+++ gcc/testsuite/gcc.dg/format/ext-1.c
|
||||||
|
@@ -8,7 +8,7 @@
|
||||||
|
#include "format.h"
|
||||||
|
|
||||||
|
void
|
||||||
|
-foo (quad_t q, u_quad_t uq, quad_t *qn, size_t z, size_t *zn, long long int ll,
|
||||||
|
+foo (quad2_t q, u_quad2_t uq, quad2_t *qn, size_t z, size_t *zn, long long int ll,
|
||||||
|
unsigned long long int ull, int i, unsigned int u, double d,
|
||||||
|
char *s, void *p, wchar_t *ls, wint_t lc, int *n, long int l)
|
||||||
|
{
|
||||||
|
--- gcc/testsuite/gcc.dg/format/ext-2.c.orig
|
||||||
|
+++ gcc/testsuite/gcc.dg/format/ext-2.c
|
||||||
|
@@ -8,7 +8,7 @@
|
||||||
|
#include "format.h"
|
||||||
|
|
||||||
|
void
|
||||||
|
-foo (quad_t *qp, u_quad_t *uqp, quad_t *qn, long long int *llp,
|
||||||
|
+foo (quad2_t *qp, u_quad2_t *uqp, quad2_t *qn, long long int *llp,
|
||||||
|
unsigned long long int *ullp, float *fp, char *s, void **pp, wchar_t *ls,
|
||||||
|
int *ip, unsigned int *up)
|
||||||
|
{
|
||||||
|
--- gcc/testsuite/gcc.dg/format/format.h.orig
|
||||||
|
+++ gcc/testsuite/gcc.dg/format/format.h
|
||||||
|
@@ -71,8 +71,8 @@
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* %q formats want a "quad"; GCC considers this to be a long long. */
|
||||||
|
-typedef llong quad_t;
|
||||||
|
-typedef ullong u_quad_t;
|
||||||
|
+typedef llong quad2_t;
|
||||||
|
+typedef ullong u_quad2_t;
|
||||||
|
|
||||||
|
__extension__ typedef __INTMAX_TYPE__ intmax_t;
|
||||||
|
__extension__ typedef __UINTMAX_TYPE__ uintmax_t;
|
||||||
|
--- gcc/testsuite/gcc.dg/pch/pch.exp.orig
|
||||||
|
+++ gcc/testsuite/gcc.dg/pch/pch.exp
|
||||||
|
@@ -44,6 +44,8 @@
|
||||||
|
set test "largefile.c"
|
||||||
|
set testh "largefile.hs"
|
||||||
|
set f [open $test w]
|
||||||
|
+puts $f "/* { dg-do run { target *-*-solaris* } } */"
|
||||||
|
+puts $f "/* { dg-error \"dummy\" \"fool dejagnu\" { target { ! *-*-solaris* } 20 } } */"
|
||||||
|
puts $f "/* { dg-timeout-factor 4.0 } */"
|
||||||
|
set v 0
|
||||||
|
for { set v 0 } { $v < 10000 } { incr v } {
|
14
lang/gcc6-aux/files/gnatdroid.exp
Normal file
14
lang/gcc6-aux/files/gnatdroid.exp
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
# gnatdroid testsuite running over ssh.
|
||||||
|
|
||||||
|
load_generic_config "android"
|
||||||
|
|
||||||
|
process_multilib_options ""
|
||||||
|
|
||||||
|
# The default compiler for this target.
|
||||||
|
set_board_info compiler "[find_gcc]"
|
||||||
|
|
||||||
|
set_board_info rsh_prog /usr/bin/ssh
|
||||||
|
set_board_info rcp_prog /usr/bin/scp
|
||||||
|
set_board_info protocol standard
|
||||||
|
set_board_info hostname tablet
|
||||||
|
set_board_info username root
|
14
lang/gcc6-aux/pkg-descr
Normal file
14
lang/gcc6-aux/pkg-descr
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
The AUX compiler supports several languages: Ada, C, C++, Fortran and
|
||||||
|
Objective-C. Since Ada support must be built by an Ada-capable compiler,
|
||||||
|
only platforms for which a bootstrap compiler is available can build it.
|
||||||
|
|
||||||
|
The AUX compiler is based on release versions of the Free Software
|
||||||
|
Foundation's GNU Compiler Collection. It uses the GCC Runtime Library
|
||||||
|
Exception, so the resulting binaries have no licensing requirements.
|
||||||
|
Binaries produced by the AUX compiler should be legally handled the same
|
||||||
|
as binaries produced by any FSF compiler.
|
||||||
|
|
||||||
|
This compiler implements the full Ada-83, Ada-95, Ada-2005 and Ada-2012
|
||||||
|
standards.
|
||||||
|
|
||||||
|
WWW: http://www.dragonlace.net/
|
Loading…
Add table
Reference in a new issue