Merge from gcc top-level.

./:
	* configure.ac: Add target-libgo to target_libraries.  Set
	and substitute GOC_FOR_BUILD and GOC_FOR_TARGET.
	* Makefile.tpl (BUILD_EXPORTS): Add GOC and GOCFLAGS.
	(HOST_EXPORTS): Add GOC.
	(BASE_TARGET_EXPORTS): Add GOC.
	(GOC_FOR_BUILD, GOCFLAGS, GOC_FOR_TARGET): New variables.
	(GOCFLAGS_FOR_TARGET): New variable.
	(EXTRA_HOST_FLAGS): Add GOC.
	(EXTRA_TARGET_FLAGS): Add GOC and GOCFLAGS.
	* Makefile.def (target_modules): Add libgo.
	(flags_to_pass): Add GOC_FOR_TARGET and GOCFLAGS_FOR_TARGET.
	(dependencies): Add dependency from configure-target-libgo to
	configure-target-libffi and all-target-libstdc++-v3.  Add
	dependencies from all-target-libgo to all-target-libffi.
	(languages): Add go.
	* configure: Rebuild.
	* Makefile.in: Rebuild.

	* config-ml.in: Add Go support: treat GOC and GOCFLAGS like other
	compiler/flag environment variables.

	* configure.ac: Check for lang_requires_boot_languages in
	config-lang.in files.
	* configure: Rebuild.

	PR fortran/32049
	* Makefile.def: Add libquadmath; build it with language=fortran.
	* configure.ac: Add libquadmath.
	* Makefile.tpl: Handle multiple libs in check-[+language+].
	* Makefile.in: Regenerate.
	* configure: Regenerate.

	* configure.ac: Fix spelling in option names.
	* configure: Regenerated.

	PR bootstrap/39622
	* configure.ac (FLAGS_FOR_TARGET): Add include-fixed path.
	* configure: Regenerated.

	* config/cloog.m4: Add -enable-cloog-backend=(isl|ppl|ppl-legacy) to
	define the cloog backend to use. Furthermore, only pass the ppllibs to
	the configure checks, if necessary.
	* configure: Regenerate.

	* config/cloog.m4: Use CLooG predefined macro to check for CLooG PPL.
	* configure: regenerate

	* config/cloog.m4: Fix typo.  verison -> version.
	* configure: Regenerate.

	* config/cloog.m4: Pass ppl libraries to the CLooG version check.
	* configure: Regenerate.

	* configure.ac: Support official CLooG.org versions.
	* configure: Regenerate.
	* config/cloog.m4: New.

	* configure.ac (*-*-darwin*): Use mh-darwin for all Darwin variants.
	* configure: Regenerate.

config/:
	* cloog.m4 (CLOOG_INIT_FLAGS): Fix spelling in option names.

	* bootstrap-lto: Use -flto.

	* mh-darwin: Renamed from mh-ppc-darwin.
This commit is contained in:
Ian Lance Taylor
2010-11-19 22:06:27 +00:00
parent ce386bafb7
commit d5b7129a70
11 changed files with 1991 additions and 148 deletions

View File

@@ -28,6 +28,7 @@ m4_include([ltoptions.m4])
m4_include([ltsugar.m4])
m4_include([ltversion.m4])
m4_include([lt~obsolete.m4])
m4_include([config/cloog.m4])
AC_INIT(move-if-change)
AC_PREREQ(2.64)
@@ -194,11 +195,13 @@ target_libraries="target-libgcc \
target-libstdc++-v3 \
target-libmudflap \
target-libssp \
target-libquadmath \
target-libgfortran \
target-boehm-gc \
${libgcj} \
target-libobjc \
target-libada"
target-libada \
target-libgo"
# these tools are built using the target libraries, and are intended to
# run only in the target environment
@@ -1157,8 +1160,8 @@ case "${host}" in
tentative_cc="/usr/cygnus/progressive/bin/gcc"
host_makefile_frag="config/mh-lynxrs6k"
;;
powerpc-*-darwin*)
host_makefile_frag="config/mh-ppc-darwin"
*-*-darwin*)
host_makefile_frag="config/mh-darwin"
;;
powerpc-*-aix*)
host_makefile_frag="config/mh-ppc-aix"
@@ -1207,6 +1210,7 @@ if test "${build}" != "${host}" ; then
CXX_FOR_BUILD=${CXX_FOR_BUILD-g++}
GCJ_FOR_BUILD=${GCJ_FOR_BUILD-gcj}
GFORTRAN_FOR_BUILD=${GFORTRAN_FOR_BUILD-gfortran}
GOC_FOR_BUILD=${GOC_FOR_BUILD-gccgo}
DLLTOOL_FOR_BUILD=${DLLTOOL_FOR_BUILD-dlltool}
LD_FOR_BUILD=${LD_FOR_BUILD-ld}
NM_FOR_BUILD=${NM_FOR_BUILD-nm}
@@ -1220,6 +1224,7 @@ else
CXX_FOR_BUILD="\$(CXX)"
GCJ_FOR_BUILD="\$(GCJ)"
GFORTRAN_FOR_BUILD="\$(GFORTRAN)"
GOC_FOR_BUILD="\$(GOC)"
DLLTOOL_FOR_BUILD="\$(DLLTOOL)"
LD_FOR_BUILD="\$(LD)"
NM_FOR_BUILD="\$(NM)"
@@ -1272,9 +1277,9 @@ have_gmp=no
AC_ARG_WITH(mpc, [ --with-mpc=PATH specify prefix directory for installed MPC package.
Equivalent to --with-mpc-include=PATH/include
plus --with-mpc-lib=PATH/lib])
AC_ARG_WITH(mpc_include, [ --with-mpc-include=PATH
AC_ARG_WITH(mpc-include, [ --with-mpc-include=PATH
specify directory for installed MPC include files])
AC_ARG_WITH(mpc_lib, [ --with-mpc-lib=PATH specify directory for the installed MPC library])
AC_ARG_WITH(mpc-lib, [ --with-mpc-lib=PATH specify directory for the installed MPC library])
if test "x$with_mpc" != x; then
gmplibs="-L$with_mpc/lib $gmplibs"
@@ -1305,9 +1310,9 @@ Use --with-mpfr=PATH or --with-mpfr-include=PATH plus --with-mpfr-lib=PATH]))
AC_ARG_WITH(mpfr, [ --with-mpfr=PATH specify prefix directory for installed MPFR package.
Equivalent to --with-mpfr-include=PATH/include
plus --with-mpfr-lib=PATH/lib])
AC_ARG_WITH(mpfr_include, [ --with-mpfr-include=PATH
AC_ARG_WITH(mpfr-include, [ --with-mpfr-include=PATH
specify directory for installed MPFR include files])
AC_ARG_WITH(mpfr_lib, [ --with-mpfr-lib=PATH specify directory for the installed MPFR library])
AC_ARG_WITH(mpfr-lib, [ --with-mpfr-lib=PATH specify directory for the installed MPFR library])
if test "x$with_mpfr" != x; then
gmplibs="-L$with_mpfr/lib $gmplibs"
@@ -1338,8 +1343,8 @@ Use --with-gmp=PATH or --with-gmp-include=PATH plus --with-gmp-lib=PATH]))
AC_ARG_WITH(gmp, [ --with-gmp=PATH specify prefix directory for the installed GMP package.
Equivalent to --with-gmp-include=PATH/include
plus --with-gmp-lib=PATH/lib])
AC_ARG_WITH(gmp_include, [ --with-gmp-include=PATH specify directory for installed GMP include files])
AC_ARG_WITH(gmp_lib, [ --with-gmp-lib=PATH specify directory for the installed GMP library])
AC_ARG_WITH(gmp-include, [ --with-gmp-include=PATH specify directory for installed GMP include files])
AC_ARG_WITH(gmp-lib, [ --with-gmp-lib=PATH specify directory for the installed GMP library])
if test "x$with_gmp" != x; then
@@ -1538,8 +1543,8 @@ pplinc=
AC_ARG_WITH(ppl, [ --with-ppl=PATH Specify prefix directory for the installed PPL package
Equivalent to --with-ppl-include=PATH/include
plus --with-ppl-lib=PATH/lib])
AC_ARG_WITH(ppl_include, [ --with-ppl-include=PATH Specify directory for installed PPL include files])
AC_ARG_WITH(ppl_lib, [ --with-ppl-lib=PATH Specify the directory for the installed PPL library])
AC_ARG_WITH(ppl-include, [ --with-ppl-include=PATH Specify directory for installed PPL include files])
AC_ARG_WITH(ppl-lib, [ --with-ppl-lib=PATH Specify the directory for the installed PPL library])
case $with_ppl in
no)
@@ -1587,69 +1592,39 @@ AC_SUBST(pplinc)
# Check for CLOOG
clooglibs=" -lcloog "
clooginc=" -DCLOOG_PPL_BACKEND "
AC_ARG_WITH(cloog, [ --with-cloog=PATH Specify prefix directory for the installed CLooG-PPL package
Equivalent to --with-cloog-include=PATH/include
plus --with-cloog-lib=PATH/lib])
AC_ARG_WITH(cloog_include, [ --with-cloog-include=PATH Specify directory for installed CLooG include files])
AC_ARG_WITH(cloog_lib, [ --with-cloog-lib=PATH Specify the directory for the installed CLooG library])
dnl Provide configure switches and initialize clooginc & clooglibs
dnl with user input.
CLOOG_INIT_FLAGS
if test "x$with_ppl" = "xno"; then
with_cloog=no
fi
case $with_cloog in
no)
clooglibs=
clooginc=
;;
"" | yes)
;;
*)
clooglibs="-L$with_cloog/lib -lcloog"
clooginc="-I$with_cloog/include -DCLOOG_PPL_BACKEND "
;;
esac
if test "x$with_cloog_include" != x; then
clooginc="-I$with_cloog_include -DCLOOG_PPL_BACKEND "
fi
if test "x$with_cloog_lib" != x; then
clooglibs="-L$with_cloog_lib -lcloog"
fi
if test "x$with_cloog$with_cloog_include$with_cloog_lib" = x && test -d ${srcdir}/cloog; then
clooglibs='-L$$r/$(HOST_SUBDIR)/cloog/'"$lt_cv_objdir"' -lcloog '
clooginc='-I$$r/$(HOST_SUBDIR)/cloog/include -I$$s/cloog/include -DCLOOG_PPL_BACKEND '
enable_cloog_version_check=no
if test "x${with_cloog}" = x && test "x${with_cloog_include}" = x \
&& test "x${with_cloog_lib}" = x && test -d ${srcdir}/cloog; then
clooglibs='-L$$r/$(HOST_SUBDIR)/cloog/'"$lt_cv_objdir"' '
clooginc='-I$$r/$(HOST_SUBDIR)/cloog/include -I$$s/cloog/include '
fi
if test "x$with_cloog" != "xno"; then
dnl Version check for CLooG-Org
dnl As long as there is no new release of CLooG,
dnl we will check for 0.14.0.
dnl
dnl The first git revision that will work with
dnl GCC is: bd91b845a65805c290d43fc1bef8139864a163fb
dnl This is enforced implictly, as this is the commit that
dnl introduced the versioning information used within our
dnl checks.
dnl
dnl If we're using CLooG-Legacy, the provided version information
dnl will be ignored.
CLOOG_CHECK_VERSION(0,14,0)
AC_ARG_ENABLE(cloog-version-check,
[ --disable-cloog-version-check disable check for CLooG version],
ENABLE_CLOOG_CHECK=$enableval,
ENABLE_CLOOG_CHECK=yes)
if test "x$with_cloog" != "xno" -a "${ENABLE_CLOOG_CHECK}" = "yes"; then
saved_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $clooginc $gmpinc $pplinc"
AC_MSG_CHECKING([for version 0.15.5 (or later revision) of CLooG])
AC_TRY_COMPILE([#include "cloog/cloog.h"],[
#if CLOOG_VERSION_MAJOR != 0 || CLOOG_VERSION_MINOR != 15 || CLOOG_VERSION_REVISION < 5
choke me
#endif
], [AC_TRY_COMPILE([#include "cloog/cloog.h"],[
#if CLOOG_VERSION_MAJOR != 0 || CLOOG_VERSION_MINOR != 15 || CLOOG_VERSION_REVISION < 9
choke me
#endif
], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([buggy but acceptable])])],
[AC_MSG_RESULT([no]); clooglibs= ; clooginc= ])
CFLAGS="$saved_CFLAGS"
dnl Only execute fail-action, if CLooG has been
dnl requested.
CLOOG_IF_FAILED([
AC_MSG_ERROR([Unable to find a usable CLooG. See config.log for details.])])
fi
# Flags needed for CLOOG
AC_SUBST(clooglibs)
AC_SUBST(clooginc)
# Check for LTO support.
AC_ARG_ENABLE(lto,
[ --enable-lto enable link time optimization support],
@@ -1735,11 +1710,13 @@ if test -d ${srcdir}/gcc; then
# an apparent bug in bash 1.12 on linux.
${srcdir}/gcc/[[*]]/config-lang.in) ;;
*)
# From the config-lang.in, get $language, $lang_requires
# From the config-lang.in, get $language, $lang_requires, and
# $lang_requires_boot_languages.
language=
lang_requires=
lang_requires_boot_languages=
. ${lang_frag}
for other in ${lang_requires} ; do
for other in ${lang_requires} ${lang_requires_boot_languages}; do
case ,${enable_languages}, in
*,$other,*) ;;
*,all,*) ;;
@@ -1749,6 +1726,22 @@ if test -d ${srcdir}/gcc; then
;;
esac
done
for other in ${lang_requires_boot_languages} ; do
if test "$other" != "c"; then
case ,${enable_stage1_languages}, in
*,$other,*) ;;
*,all,*) ;;
*)
case ,${enable_languages}, in
*,$language,*)
echo " '$other' language required by '$language' in stage 1; enabling" 1>&2
enable_stage1_languages="$enable_stage1_languages,${other}"
;;
esac
;;
esac
fi
done
;;
esac
done
@@ -2931,7 +2924,7 @@ case " $target_configdirs " in
# to it. This is right: we don't want to search that directory
# for binaries, but we want the header files in there, so add
# them explicitly.
FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -isystem $$r/$(HOST_SUBDIR)/gcc/include'
FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -isystem $$r/$(HOST_SUBDIR)/gcc/include -isystem $$r/$(HOST_SUBDIR)/gcc/include-fixed'
# Someone might think of using the pre-installed headers on
# Canadian crosses, in case the installed compiler is not fully
@@ -3062,6 +3055,7 @@ AC_SUBST(CXX_FOR_BUILD)
AC_SUBST(DLLTOOL_FOR_BUILD)
AC_SUBST(GCJ_FOR_BUILD)
AC_SUBST(GFORTRAN_FOR_BUILD)
AC_SUBST(GOC_FOR_BUILD)
AC_SUBST(LDFLAGS_FOR_BUILD)
AC_SUBST(LD_FOR_BUILD)
AC_SUBST(NM_FOR_BUILD)
@@ -3172,6 +3166,7 @@ NCN_STRICT_CHECK_TARGET_TOOLS(CXX_FOR_TARGET, c++ g++ cxx gxx)
NCN_STRICT_CHECK_TARGET_TOOLS(GCC_FOR_TARGET, gcc, ${CC_FOR_TARGET})
NCN_STRICT_CHECK_TARGET_TOOLS(GCJ_FOR_TARGET, gcj)
NCN_STRICT_CHECK_TARGET_TOOLS(GFORTRAN_FOR_TARGET, gfortran)
NCN_STRICT_CHECK_TARGET_TOOLS(GOC_FOR_TARGET, gccgo)
ACX_CHECK_INSTALLED_TARGET_TOOL(AR_FOR_TARGET, ar)
ACX_CHECK_INSTALLED_TARGET_TOOL(AS_FOR_TARGET, as)
@@ -3202,6 +3197,8 @@ GCC_TARGET_TOOL(gcj, GCJ_FOR_TARGET, GCJ,
[gcc/gcj -B$$r/$(HOST_SUBDIR)/gcc/], java)
GCC_TARGET_TOOL(gfortran, GFORTRAN_FOR_TARGET, GFORTRAN,
[gcc/gfortran -B$$r/$(HOST_SUBDIR)/gcc/], fortran)
GCC_TARGET_TOOL(gccgo, GOC_FOR_TARGET, GOC,
[gcc/gccgo -B$$r/$(HOST_SUBDIR)/gcc/], go)
GCC_TARGET_TOOL(ld, LD_FOR_TARGET, LD, [ld/ld-new])
GCC_TARGET_TOOL(lipo, LIPO_FOR_TARGET, LIPO)
GCC_TARGET_TOOL(nm, NM_FOR_TARGET, NM, [binutils/nm-new])