diff options
author | Zack Weinberg <zack@codesourcery.com> | 2001-12-04 18:02:50 +0000 |
---|---|---|
committer | Zack Weinberg <zack@gcc.gnu.org> | 2001-12-04 18:02:50 +0000 |
commit | a078a5895673e2c0c256535cd285432bfe1f2f4c (patch) | |
tree | 4515ab31c18b893d271384e84d861c3ef8261b69 /gcc | |
parent | 8a38ed868f46c143af3df2f08ef58205faf4919e (diff) | |
download | gcc-a078a5895673e2c0c256535cd285432bfe1f2f4c.tar.gz |
build-make, cross-make: Delete file.
* build-make, cross-make: Delete file.
* configure.in: Set and substitute CROSS, ALL,
SYSTEM_HEADER_DIR, HOST_PREFIX, HOST_PREFIX_1, HOST_CC,
HOST_CFLAGS, STMP_FIXINC, and STMP_FIXPROTO depending on
whether build == host and host == target. Do not
AC_SUBST_FILE build_overrides or cross_overrides. Do not
AC_SUBST cross_defines or extra_c_flags.
* Makefile.in (NATIVE_SYSTEM_HEADER_DIR): New.
(SYSTEM_HEADER_DIR, HOST_PREFIX, HOST_CC, HOST_PREFIX,
HOST_PREFIX_1, HOST_CFLAGS, ALL, INTERNAL_CFLAGS): Set
partially or completely with autoconf-substituted @variable@
notation.
(INSTALL_TARGET, @cross_defines@, @cross_overrides@,
@build_overrides@, @extra_c_flags@, all.build, install-build,
install-cross-rest, install-float-h-cross): Deleted.
(install-normal): Rename to install. Delete old "install"
indirection rule.
* ada/Makefile.in, ch/Makefile.in: Don't set ALL. Delete
@cross_defines@, @cross_overrides@, @build_overrides@ stanzas.
INTERNAL_CFLAGS is now @CROSS@ -DIN_GCC; update comment.
From-SVN: r47617
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 20 | ||||
-rw-r--r-- | gcc/Makefile.in | 76 | ||||
-rw-r--r-- | gcc/ada/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ada/Makefile.in | 19 | ||||
-rw-r--r-- | gcc/build-make | 27 | ||||
-rw-r--r-- | gcc/ch/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ch/Makefile.in | 17 | ||||
-rwxr-xr-x | gcc/configure | 105 | ||||
-rw-r--r-- | gcc/configure.in | 50 | ||||
-rw-r--r-- | gcc/cross-make | 6 |
10 files changed, 153 insertions, 179 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3f605a7ddcc..8d4e5530b35 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,23 @@ +2001-12-04 Zack Weinberg <zack@codesourcery.com> + + * build-make, cross-make: Delete file. + * configure.in: Set and substitute CROSS, ALL, + SYSTEM_HEADER_DIR, HOST_PREFIX, HOST_PREFIX_1, HOST_CC, + HOST_CFLAGS, STMP_FIXINC, and STMP_FIXPROTO depending on + whether build == host and host == target. Do not + AC_SUBST_FILE build_overrides or cross_overrides. Do not + AC_SUBST cross_defines or extra_c_flags. + * Makefile.in (NATIVE_SYSTEM_HEADER_DIR): New. + (SYSTEM_HEADER_DIR, HOST_PREFIX, HOST_CC, HOST_PREFIX, + HOST_PREFIX_1, HOST_CFLAGS, ALL, INTERNAL_CFLAGS): Set + partially or completely with autoconf-substituted @variable@ + notation. + (INSTALL_TARGET, @cross_defines@, @cross_overrides@, + @build_overrides@, @extra_c_flags@, all.build, install-build, + install-cross-rest, install-float-h-cross): Deleted. + (install-normal): Rename to install. Delete old "install" + indirection rule. + 2001-12-04 Andrew MacLeod <amacleod@redhat.com> * stmt.c (expand_return): Clear destination instead of clobbering it diff --git a/gcc/Makefile.in b/gcc/Makefile.in index 32ed60ab69b..af54e5dc587 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -224,18 +224,20 @@ NM_FOR_TARGET = ` \ fi; \ fi` -# Dir to search for system headers. Overridden by cross-make. -SYSTEM_HEADER_DIR = /usr/include - # Where to find some libiberty headers. HASHTAB_H = $(srcdir)/../include/hashtab.h OBSTACK_H = $(srcdir)/../include/obstack.h SPLAY_TREE_H= $(srcdir)/../include/splay-tree.h FIBHEAP_H = $(srcdir)/../include/fibheap.h +# Default native SYSTEM_HEADER_DIR, to be overridden by targets. +NATIVE_SYSTEM_HEADER_DIR = /usr/include # Default cross SYSTEM_HEADER_DIR, to be overridden by targets. CROSS_SYSTEM_HEADER_DIR = $(build_tooldir)/sys-include +# autoconf sets SYSTEM_HEADER_DIR to one of the above. +SYSTEM_HEADER_DIR = @SYSTEM_HEADER_DIR@ + # Control whether to run fixproto and fixincludes. STMP_FIXPROTO = stmp-fixproto STMP_FIXINC = stmp-fixinc @@ -457,16 +459,17 @@ DIR = ../gcc # Flags to use when cross-building GCC. # Prefix to apply to names of object files when using them # to run on the machine we are compiling on. -HOST_PREFIX= +HOST_PREFIX = @HOST_PREFIX@ # Prefix to apply to names of object files when compiling them # to run on the machine we are compiling on. # The default for this variable is chosen to keep these rules # out of the way of the other rules for compiling the same source files. -HOST_PREFIX_1=loser- -HOST_CC=$(CC) -# If you change any of the following variables, check whether a -# similar change is needed in build-make. -HOST_CFLAGS=$(ALL_CFLAGS) -DGENERATOR_FILE +HOST_PREFIX_1 = @HOST_PREFIX_1@ +# Native compiler for the build machine and its switches. +HOST_CC = @HOST_CC@ +HOST_CFLAGS= @HOST_CFLAGS@ -DGENERATOR_FILE + +# Native linker and preprocessor flags. For x-fragment overrides. HOST_LDFLAGS=$(LDFLAGS) HOST_CPPFLAGS=$(ALL_CPPFLAGS) @@ -485,11 +488,9 @@ CPP_CROSS_NAME = `echo cpp|sed '$(program_transform_cross_name)'` PROTOIZE_CROSS_NAME = `echo protoize|sed '$(program_transform_cross_name)'` UNPROTOIZE_CROSS_NAME = `echo unprotoize|sed '$(program_transform_cross_name)'` -# Choose the real default target. -ALL=all.internal - -# Choose the real install target. -INSTALL_TARGET=install-normal +# Set by autoconf to "all.internal" for a native build, or +# "all.cross" to build a cross compiler. +ALL = @ALL@ # Setup the testing framework, if you have one EXPECT = `if [ -f $${rootme}/../expect/expect ] ; then \ @@ -569,20 +570,15 @@ CPPLIB_H = cpplib.h line-map.h ####host overrides @host_overrides@ - -####cross overrides -@cross_defines@ -@cross_overrides@ - -####build overrides -@build_overrides@ # # Now figure out from those variables how to compile and link. all.indirect: $(ALL) -# IN_GCC tells various files that system.h, toplev.c, etc are available. -INTERNAL_CFLAGS = $(CROSS) -DIN_GCC @extra_c_flags@ +# IN_GCC distinguishes between code compiled into GCC itself and other +# programs built during a bootstrap. +# autoconf inserts -DCROSS_COMPILE if we are building a cross compiler. +INTERNAL_CFLAGS = -DIN_GCC @CROSS@ # This is the variable actually used when we compile. # If you change this line, you probably also need to change the definition @@ -794,7 +790,7 @@ LIB2_DIVMOD_FUNCS = _divdi3 _moddi3 _udivdi3 _umoddi3 _udiv_w_sdiv _udivmoddi4 # The following targets define the interface between us and the languages. # -# all.build, all.cross, start.encap, rest.encap, +# all.cross, start.encap, rest.encap, # info, dvi, # install-normal, install-common, install-info, install-man, # uninstall, @@ -913,8 +909,6 @@ all.internal: start.encap rest.encap doc # although we can't run it on this machine. all.cross: native gcc-cross cpp$(exeext) specs \ $(LIBGCC) $(EXTRA_PARTS) lang.all.cross doc -# This is what to compile if making gcc with a cross-compiler. -all.build: native xgcc$(exeext) cpp$(exeext) $(EXTRA_PARTS) lang.all.build # This is what must be made before installing GCC and converting libraries. start.encap: native xgcc$(exeext) cpp$(exeext) specs \ xlimits.h lang.start.encap @@ -2464,29 +2458,13 @@ maintainer-clean: # Entry points `install' and `uninstall'. # Also use `install-collect2' to install collect2 when the config files don't. -# The semicolon is to prevent the install.sh -> install default rule -# from doing anything. Having it run true helps avoid problems and -# noise from versions of make which don't like to have null commands. -install: $(INSTALL_TARGET) ; @true - # Copy the compiler files into directories where they will be run. # Install the driver last so that the window when things are # broken is small. -install-normal: install-common $(INSTALL_HEADERS) $(INSTALL_LIBGCC) \ +install: install-common $(INSTALL_HEADERS) $(INSTALL_LIBGCC) \ $(INSTALL_CPP) install-man install-info intl.install install-@POSUB@ \ lang.install-normal install-driver -# Do nothing while making gcc with a cross-compiler. The person who -# makes gcc for the target machine has to know how to put a complete -# gcc together by hand. -install-build: force - @echo You have to install gcc on your target machine by hand. - -# Run this on the target machine -# to finish installation of cross compiler. -# This is not used anymore now that float.h does not depend on enquire. -install-cross-rest: install-float-h-cross - # Handle cpp installation. install-cpp: cpp$(exeext) -if [ -f gcc-cross$(exeext) ] ; then \ @@ -2513,18 +2491,6 @@ uninstall-cpp: rm -f $(prefix)/$(cpp_install_dir)/$(CPP_CROSS_NAME)$(exeext); \ else true; fi -# Install float.h for cross compiler. -# Run this on the target machine! -# This is not used anymore now that float.h does not depend on enquire. -install-float-h-cross: installdirs -# if [ -f enquire ] ; then true; else false; fi -# Note: don't use -. We should fail right away if enquire was not made. - ./enquire -f > $(tmpdir)/float.h - -rm -f $(libsubdir)/include/float.h - $(INSTALL_DATA) $(tmpdir)/float.h $(libsubdir)/include/float.h - -rm -f $(tmpdir)/float.h - chmod a-x $(libsubdir)/include/float.h - # Create the installation directories. installdirs: -if [ -d $(prefix) ] ; then true ; else mkdir $(prefix) ; chmod a+rx $(prefix) ; fi diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 1c1279d4c2b..0167069f0c0 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,9 @@ +2001-12-04 Zack Weinberg <zack@codesourcery.com> + + * Makefile.in: Don't set ALL. Delete @cross_defines@, + @cross_overrides@, @build_overrides@ stanzas. INTERNAL_CFLAGS + is now @CROSS@ -DIN_GCC; update comment. + 2001-12-04 Robert Dewar <dewar@gnat.com> * einfo.adb (Has_Pragma_Pure_Function): New flag. diff --git a/gcc/ada/Makefile.in b/gcc/ada/Makefile.in index 8a10b22f043..f80de0e1c82 100644 --- a/gcc/ada/Makefile.in +++ b/gcc/ada/Makefile.in @@ -192,9 +192,6 @@ INTLLIBS = @INTLLIBS@ # Any system libraries needed just for GNAT. SYSLIBS = @GNAT_LIBEXC@ -# Choose the real default target. -ALL=all - # List of extra object files linked in with various programs. EXTRA_GNAT1_OBJS = ../prefix.o EXTRA_GNATBIND_OBJS = ../prefix.o @@ -221,23 +218,15 @@ all: all.indirect ####host overrides @host_overrides@ - -####cross overrides -@cross_defines@ -@cross_overrides@ - -####build overrides -@build_overrides@ - -# Now figure out from those variables how to compile and link. - # Now figure out from those variables how to compile and link. all.indirect: Makefile ../gnat1$(exeext) -# IN_GCC tells obstack.h that we are using gcc's <stddef.h> file. -INTERNAL_CFLAGS = $(CROSS) -DIN_GCC @extra_c_flags@ +# IN_GCC distinguishes between code compiled into GCC itself and other +# programs built during a bootstrap. +# autoconf inserts -DCROSS_COMPILE if we are building a cross compiler. +INTERNAL_CFLAGS = @CROSS@ -DIN_GCC # This is the variable actually used when we compile. LOOSE_CFLAGS = `echo $(CFLAGS) $(WARN2_CFLAGS)|sed -e 's/-pedantic//g' -e 's/-Wtraditional//g'` diff --git a/gcc/build-make b/gcc/build-make deleted file mode 100644 index bf777b1fa8c..00000000000 --- a/gcc/build-make +++ /dev/null @@ -1,27 +0,0 @@ -# Need those to compile binaries running on host machine. -# It is configured by -# -# configure --host=target_cpu-target_os \ -# --target=target_cpu-target_os --build=host_cpu-host_os -# -# That HOST stuff has to be taken care of very carefully. -HOST_PREFIX=l- -HOST_PREFIX_1=$(HOST_PREFIX) -HOST_CC=$(CC_FOR_BUILD) -HOST_CFLAGS=$(INTERNAL_CFLAGS) $(T_CFLAGS) $(CFLAGS_FOR_BUILD) \ - $(XCFLAGS) -DGENERATOR_FILE -HOST_LDFLAGS=$(LDFLAGS) -HOST_CPPFLAGS=$(ALL_CPPFLAGS) - -# To build the native compiler with the cross compiler, the headers -# for the target are already fixed. And /usr/include is for host, not -# target. -STMP_FIXINC = -STMP_FIXPROTO = - -# Cause installation using install-build. We do nothing here. -#INSTALL_TARGET = install-build - -# Don't try to compile the things we can't compile or we have made -# while making gcc with the cross-compiler. -#ALL = all.build diff --git a/gcc/ch/ChangeLog b/gcc/ch/ChangeLog index c3641f45d01..9b5f97aa3fb 100644 --- a/gcc/ch/ChangeLog +++ b/gcc/ch/ChangeLog @@ -1,3 +1,9 @@ +2001-12-04 Zack Weinberg <zack@codesourcery.com> + + * Makefile.in: Don't set ALL. Delete @cross_defines@, + @cross_overrides@, @build_overrides@ stanzas. INTERNAL_CFLAGS + is now @CROSS@ -DIN_GCC; update comment. + 2001-12-03 Neil Booth <neil@daikokuya.demon.co.uk> * actions.c: Remove leading capital from diagnostic messages, as diff --git a/gcc/ch/Makefile.in b/gcc/ch/Makefile.in index 05925f60cc2..76aa268013d 100644 --- a/gcc/ch/Makefile.in +++ b/gcc/ch/Makefile.in @@ -103,9 +103,6 @@ INTLLIBS = @INTLLIBS@ # Additional system libraries to link with. CLIB= -# Choose the real default target. -ALL=all - # End of variables for you to override. # Definition of `all' is here so that new rules inserted by sed @@ -118,22 +115,18 @@ all: all.indirect # sed inserts variable overrides after the following line. ####target overrides @target_overrides@ + ####host overrides @host_overrides@ -####cross overrides -@cross_defines@ -@cross_overrides@ -####build overrides -@build_overrides@ -####site overrides -# @site_overrides@ # # Now figure out from those variables how to compile and link. all.indirect: Makefile ../chill ../cc1chill$(exeext) -# IN_GCC tells obstack.h that we are using gcc's <stddef.h> file. -INTERNAL_CFLAGS = $(CROSS) -DIN_GCC @extra_c_flags@ +# IN_GCC distinguishes between code compiled into GCC itself and other +# programs built during a bootstrap. +# autoconf inserts -DCROSS_COMPILE if we are building a cross compiler. +INTERNAL_CFLAGS = -DIN_GCC @CROSS@ # This is the variable actually used when we compile. ALL_CFLAGS = $(INTERNAL_CFLAGS) $(X_CFLAGS) $(T_CFLAGS) $(CFLAGS) $(XCFLAGS) diff --git a/gcc/configure b/gcc/configure index e8e90300488..78dfe79dd02 100755 --- a/gcc/configure +++ b/gcc/configure @@ -6716,15 +6716,16 @@ for f in $build_xm_file; do esac done -# Define macro CROSS_COMPILE in compilation -# if this is a cross-compiler. -# Also use all.cross instead of all.internal -# and add cross-make to Makefile. -cross_overrides="/dev/null" +# Define macro CROSS_COMPILE in compilation if this is a cross-compiler. +# Also use all.cross instead of all.internal and adjust SYSTEM_HEADER_DIR. +CROSS= +ALL=all.internal +SYSTEM_HEADER_DIR='$(NATIVE_SYSTEM_HEADER_DIR)' if test x$host != x$target then - cross_defines="CROSS=-DCROSS_COMPILE" - cross_overrides="${topdir}/cross-make" + CROSS="-DCROSS_COMPILE" + ALL=all.cross + SYSTEM_HEADER_DIR='$(CROSS_SYSTEM_HEADER_DIR)' fi # If this is a cross-compiler that does not @@ -6744,13 +6745,31 @@ else fi -# When building gcc with a cross-compiler, we need to fix a few things. -# This must come after cross-make as we want all.build to override -# all.cross. -build_overrides="/dev/null" +# When building gcc with a cross-compiler, we need to adjust things so +# that the generator programs are still built with the native compiler. +# Also, we cannot run fixincludes or fix-header. +# Note that the terminology here is wrong; it should be BUILD_* throughout. +# FIXME. + +# These are the normal (build=host) settings: +HOST_PREFIX= +HOST_PREFIX_1=ignore- +HOST_CC='$(CC)' +HOST_CFLAGS='$(ALL_CFLAGS)' + +STMP_FIXINC=stmp-fixinc +STMP_FIXPROTO=stmp-fixproto + +# And these apply if build != host. if test x$build != x$host then - build_overrides="${topdir}/build-make" + HOST_PREFIX=build- + HOST_PREFIX_1=build- + HOST_CC='$(CC_FOR_BUILD)' + HOST_CFLAGS='$(INTERNAL_CFLAGS) $(T_CFLAGS) $(CFLAGS_FOR_BUILD) $(XCFLAGS)' + + STMP_FIXINC= + STMP_FIXPROTO= fi # Expand extra_headers to include complete path. @@ -6795,7 +6814,7 @@ fi # Figure out what assembler we will be using. echo $ac_n "checking what assembler to use""... $ac_c" 1>&6 -echo "configure:6799: checking what assembler to use" >&5 +echo "configure:6818: checking what assembler to use" >&5 gcc_cv_as= gcc_cv_gas_major_version= gcc_cv_gas_minor_version= @@ -6881,7 +6900,7 @@ fi # Figure out what nm we will be using. echo $ac_n "checking what nm to use""... $ac_c" 1>&6 -echo "configure:6885: checking what nm to use" >&5 +echo "configure:6904: checking what nm to use" >&5 if test -x nm$host_exeext; then gcc_cv_nm=./nm$host_exeext elif test x$host = x$target; then @@ -6892,7 +6911,7 @@ echo "$ac_t""$gcc_cv_nm" 1>&6 # Figure out what objdump we will be using. echo $ac_n "checking what objdump to use""... $ac_c" 1>&6 -echo "configure:6896: checking what objdump to use" >&5 +echo "configure:6915: checking what objdump to use" >&5 if test -x objdump$host_exeext; then gcc_cv_objdump=./objdump$host_exeext elif test x$host = x$target; then @@ -6903,7 +6922,7 @@ echo "$ac_t""$gcc_cv_objdump" 1>&6 # Figure out what assembler alignment features are present. echo $ac_n "checking assembler alignment features""... $ac_c" 1>&6 -echo "configure:6907: checking assembler alignment features" >&5 +echo "configure:6926: checking assembler alignment features" >&5 gcc_cv_as_alignment_features=none if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then # Gas version 2.6 and later support for .balign and .p2align. @@ -6951,7 +6970,7 @@ fi echo "$ac_t""$gcc_cv_as_alignment_features" 1>&6 echo $ac_n "checking assembler subsection support""... $ac_c" 1>&6 -echo "configure:6955: checking assembler subsection support" >&5 +echo "configure:6974: checking assembler subsection support" >&5 gcc_cv_as_subsections=no if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 9 -o "$gcc_cv_gas_major_version" -gt 2 && grep 'obj_format = elf' ../gas/Makefile > /dev/null; then @@ -6991,7 +7010,7 @@ fi echo "$ac_t""$gcc_cv_as_subsections" 1>&6 echo $ac_n "checking assembler weak support""... $ac_c" 1>&6 -echo "configure:6995: checking assembler weak support" >&5 +echo "configure:7014: checking assembler weak support" >&5 gcc_cv_as_weak=no if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 2 -o "$gcc_cv_gas_major_version" -gt 2; then @@ -7014,7 +7033,7 @@ fi echo "$ac_t""$gcc_cv_as_weak" 1>&6 echo $ac_n "checking assembler hidden support""... $ac_c" 1>&6 -echo "configure:7018: checking assembler hidden support" >&5 +echo "configure:7037: checking assembler hidden support" >&5 gcc_cv_as_hidden=no if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 10 -o "$gcc_cv_gas_major_version" -gt 2 && grep 'obj_format = elf' ../gas/Makefile > /dev/null; then @@ -7038,7 +7057,7 @@ fi echo "$ac_t""$gcc_cv_as_hidden" 1>&6 echo $ac_n "checking assembler leb128 support""... $ac_c" 1>&6 -echo "configure:7042: checking assembler leb128 support" >&5 +echo "configure:7061: checking assembler leb128 support" >&5 gcc_cv_as_leb128=no if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 11 -o "$gcc_cv_gas_major_version" -gt 2 && grep 'obj_format = elf' ../gas/Makefile > /dev/null; then @@ -7083,7 +7102,7 @@ fi echo "$ac_t""$gcc_cv_as_leb128" 1>&6 echo $ac_n "checking assembler eh_frame optimization""... $ac_c" 1>&6 -echo "configure:7087: checking assembler eh_frame optimization" >&5 +echo "configure:7106: checking assembler eh_frame optimization" >&5 gcc_cv_as_eh_frame=no if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 12 -o "$gcc_cv_gas_major_version" -gt 2 && grep 'obj_format = elf' ../gas/Makefile > /dev/null; then @@ -7164,7 +7183,7 @@ fi echo "$ac_t""$gcc_cv_as_eh_frame" 1>&6 echo $ac_n "checking assembler section merging support""... $ac_c" 1>&6 -echo "configure:7168: checking assembler section merging support" >&5 +echo "configure:7187: checking assembler section merging support" >&5 gcc_cv_as_shf_merge=no if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 12 -o "$gcc_cv_gas_major_version" -gt 2 && grep 'obj_format = elf' ../gas/Makefile > /dev/null; then @@ -7189,7 +7208,7 @@ echo "$ac_t""$gcc_cv_as_shf_merge" 1>&6 case "$target" in sparc*-*-*) echo $ac_n "checking assembler .register pseudo-op support""... $ac_c" 1>&6 -echo "configure:7193: checking assembler .register pseudo-op support" >&5 +echo "configure:7212: checking assembler .register pseudo-op support" >&5 if eval "test \"`echo '$''{'gcc_cv_as_register_pseudo_op'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7217,7 +7236,7 @@ EOF fi echo $ac_n "checking assembler supports -relax""... $ac_c" 1>&6 -echo "configure:7221: checking assembler supports -relax" >&5 +echo "configure:7240: checking assembler supports -relax" >&5 if eval "test \"`echo '$''{'gcc_cv_as_relax_opt'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7247,7 +7266,7 @@ EOF case "$tm_file" in *64*) echo $ac_n "checking for 64 bit support in assembler ($gcc_cv_as)""... $ac_c" 1>&6 -echo "configure:7251: checking for 64 bit support in assembler ($gcc_cv_as)" >&5 +echo "configure:7270: checking for 64 bit support in assembler ($gcc_cv_as)" >&5 if eval "test \"`echo '$''{'gcc_cv_as_flags64'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7292,7 +7311,7 @@ EOF if test "x$gcc_cv_as_flags64" != xno; then echo $ac_n "checking for assembler offsetable %lo() support""... $ac_c" 1>&6 -echo "configure:7296: checking for assembler offsetable %lo() support" >&5 +echo "configure:7315: checking for assembler offsetable %lo() support" >&5 if eval "test \"`echo '$''{'gcc_cv_as_offsetable_lo10'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7332,7 +7351,7 @@ EOF i[34567]86-*-* | x86_64-*-*) echo $ac_n "checking assembler instructions""... $ac_c" 1>&6 -echo "configure:7336: checking assembler instructions" >&5 +echo "configure:7355: checking assembler instructions" >&5 gcc_cv_as_instructions= if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 9 -o "$gcc_cv_gas_major_version" -gt 2; then @@ -7359,7 +7378,7 @@ EOF echo "$ac_t""$gcc_cv_as_instructions" 1>&6 echo $ac_n "checking assembler GOTOFF in data directives""... $ac_c" 1>&6 -echo "configure:7363: checking assembler GOTOFF in data directives" >&5 +echo "configure:7382: checking assembler GOTOFF in data directives" >&5 gcc_cv_as_gotoff_in_data=no if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x then @@ -7389,7 +7408,7 @@ EOF esac echo $ac_n "checking assembler dwarf2 debug_line support""... $ac_c" 1>&6 -echo "configure:7393: checking assembler dwarf2 debug_line support" >&5 +echo "configure:7412: checking assembler dwarf2 debug_line support" >&5 gcc_cv_as_dwarf2_debug_line=no # ??? Not all targets support dwarf2 debug_line, even within a version # of gas. Moreover, we need to emit a valid instruction to trigger any @@ -7445,7 +7464,7 @@ fi echo "$ac_t""$gcc_cv_as_dwarf2_debug_line" 1>&6 echo $ac_n "checking assembler --gdwarf2 support""... $ac_c" 1>&6 -echo "configure:7449: checking assembler --gdwarf2 support" >&5 +echo "configure:7468: checking assembler --gdwarf2 support" >&5 gcc_cv_as_gdwarf2_flag=no if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then @@ -7474,7 +7493,7 @@ fi echo "$ac_t""$gcc_cv_as_gdwarf2_flag" 1>&6 echo $ac_n "checking assembler --gstabs support""... $ac_c" 1>&6 -echo "configure:7478: checking assembler --gstabs support" >&5 +echo "configure:7497: checking assembler --gstabs support" >&5 gcc_cv_as_gstabs_flag=no if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then @@ -7644,7 +7663,7 @@ fi echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 -echo "configure:7648: checking whether to enable maintainer-specific portions of Makefiles" >&5 +echo "configure:7667: checking whether to enable maintainer-specific portions of Makefiles" >&5 # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. if test "${enable_maintainer_mode+set}" = set; then enableval="$enable_maintainer_mode" @@ -7951,10 +7970,6 @@ ${CONFIG_SHELL-/bin/sh} $srcdir/configure.frag $srcdir "$subdirs" "$dep_host_xma - - - - # Echo that links are built if test x$host = x$target then @@ -8192,7 +8207,16 @@ s%@INSTOBJEXT@%$INSTOBJEXT%g s%@GENCAT@%$GENCAT%g s%@MKINSTALLDIRS@%$MKINSTALLDIRS%g s%@INTL_LIBTOOL_SUFFIX_PREFIX@%$INTL_LIBTOOL_SUFFIX_PREFIX%g +s%@CROSS@%$CROSS%g +s%@ALL@%$ALL%g +s%@SYSTEM_HEADER_DIR@%$SYSTEM_HEADER_DIR%g s%@inhibit_libc@%$inhibit_libc%g +s%@HOST_PREFIX@%$HOST_PREFIX%g +s%@HOST_PREFIX_1@%$HOST_PREFIX_1%g +s%@HOST_CC@%$HOST_CC%g +s%@HOST_CFLAGS@%$HOST_CFLAGS%g +s%@STMP_FIXINC@%$STMP_FIXINC%g +s%@STMP_FIXPROTO@%$STMP_FIXPROTO%g s%@gthread_flags@%$gthread_flags%g s%@GGC@%$GGC%g s%@zlibdir@%$zlibdir%g @@ -8225,7 +8249,6 @@ s%@quoted_cc_set_by_configure@%$quoted_cc_set_by_configure%g s%@cpp_install_dir@%$cpp_install_dir%g s%@dep_host_xmake_file@%$dep_host_xmake_file%g s%@dep_tmake_file@%$dep_tmake_file%g -s%@extra_c_flags@%$extra_c_flags%g s%@extra_headers_list@%$extra_headers_list%g s%@extra_objs@%$extra_objs%g s%@extra_parts@%$extra_parts%g @@ -8268,11 +8291,6 @@ s%@target_cpu_default@%$target_cpu_default%g s%@target_overrides@%%g /@host_overrides@/r $host_overrides s%@host_overrides@%%g -s%@cross_defines@%$cross_defines%g -/@cross_overrides@/r $cross_overrides -s%@cross_overrides@%%g -/@build_overrides@/r $build_overrides -s%@build_overrides@%%g /@language_fragments@/r $language_fragments s%@language_fragments@%%g /@language_hooks@/r $language_hooks @@ -8511,9 +8529,6 @@ SET_MAKE='${SET_MAKE}' target_list='${target_list}' target_overrides='${target_overrides}' host_overrides='${host_overrides}' -cross_defines='${cross_defines}' -cross_overrides='${cross_overrides}' -build_overrides='${build_overrides}' cpp_install_dir='${cpp_install_dir}' EOF diff --git a/gcc/configure.in b/gcc/configure.in index d888d62cf92..4c29b0f7ca4 100644 --- a/gcc/configure.in +++ b/gcc/configure.in @@ -1066,15 +1066,16 @@ for f in $build_xm_file; do esac done -# Define macro CROSS_COMPILE in compilation -# if this is a cross-compiler. -# Also use all.cross instead of all.internal -# and add cross-make to Makefile. -cross_overrides="/dev/null" +# Define macro CROSS_COMPILE in compilation if this is a cross-compiler. +# Also use all.cross instead of all.internal and adjust SYSTEM_HEADER_DIR. +CROSS= AC_SUBST(CROSS) +ALL=all.internal AC_SUBST(ALL) +SYSTEM_HEADER_DIR='$(NATIVE_SYSTEM_HEADER_DIR)' AC_SUBST(SYSTEM_HEADER_DIR) if test x$host != x$target then - cross_defines="CROSS=-DCROSS_COMPILE" - cross_overrides="${topdir}/cross-make" + CROSS="-DCROSS_COMPILE" + ALL=all.cross + SYSTEM_HEADER_DIR='$(CROSS_SYSTEM_HEADER_DIR)' fi # If this is a cross-compiler that does not @@ -1094,13 +1095,31 @@ else fi AC_SUBST(inhibit_libc) -# When building gcc with a cross-compiler, we need to fix a few things. -# This must come after cross-make as we want all.build to override -# all.cross. -build_overrides="/dev/null" +# When building gcc with a cross-compiler, we need to adjust things so +# that the generator programs are still built with the native compiler. +# Also, we cannot run fixincludes or fix-header. +# Note that the terminology here is wrong; it should be BUILD_* throughout. +# FIXME. + +# These are the normal (build=host) settings: +HOST_PREFIX= AC_SUBST(HOST_PREFIX) +HOST_PREFIX_1=ignore- AC_SUBST(HOST_PREFIX_1) +HOST_CC='$(CC)' AC_SUBST(HOST_CC) +HOST_CFLAGS='$(ALL_CFLAGS)' AC_SUBST(HOST_CFLAGS) + +STMP_FIXINC=stmp-fixinc AC_SUBST(STMP_FIXINC) +STMP_FIXPROTO=stmp-fixproto AC_SUBST(STMP_FIXPROTO) + +# And these apply if build != host. if test x$build != x$host then - build_overrides="${topdir}/build-make" + HOST_PREFIX=build- + HOST_PREFIX_1=build- + HOST_CC='$(CC_FOR_BUILD)' + HOST_CFLAGS='$(INTERNAL_CFLAGS) $(T_CFLAGS) $(CFLAGS_FOR_BUILD) $(XCFLAGS)' + + STMP_FIXINC= + STMP_FIXPROTO= fi # Expand extra_headers to include complete path. @@ -2168,7 +2187,6 @@ AC_SUBST(quoted_cc_set_by_configure) AC_SUBST(cpp_install_dir) AC_SUBST(dep_host_xmake_file) AC_SUBST(dep_tmake_file) -AC_SUBST(extra_c_flags) AC_SUBST(extra_headers_list) AC_SUBST(extra_objs) AC_SUBST(extra_parts) @@ -2210,9 +2228,6 @@ AC_SUBST(target_cpu_default) AC_SUBST_FILE(target_overrides) AC_SUBST_FILE(host_overrides) -AC_SUBST(cross_defines) -AC_SUBST_FILE(cross_overrides) -AC_SUBST_FILE(build_overrides) AC_SUBST_FILE(language_fragments) AC_SUBST_FILE(language_hooks) @@ -2313,8 +2328,5 @@ SET_MAKE='${SET_MAKE}' target_list='${target_list}' target_overrides='${target_overrides}' host_overrides='${host_overrides}' -cross_defines='${cross_defines}' -cross_overrides='${cross_overrides}' -build_overrides='${build_overrides}' cpp_install_dir='${cpp_install_dir}' ]) diff --git a/gcc/cross-make b/gcc/cross-make deleted file mode 100644 index 38bacfd1276..00000000000 --- a/gcc/cross-make +++ /dev/null @@ -1,6 +0,0 @@ -# Dir to search for system headers. Normally /usr/include. -# Use CROSS_INCLUDE_DIR not TOOL_INCLUDE_DIR for other vendor's headers. -SYSTEM_HEADER_DIR = $(CROSS_SYSTEM_HEADER_DIR) - -# Don't try to compile the things we can't compile. -ALL = all.cross |