mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-12-02 00:04:30 +08:00
23f6b2f91e
2004-07-01 Paolo Bonzini <bonzini@gnu.org> * Makefile.def (build_modules): Add bison, byacc, flex, m4, texinfo. (flags_to_pass): Add FLEX. * Makefile.tpl (BUILD_DIR_PREFIX, BASE_EXPORTS): New. (BUILD_EXPORTS, HOST_EXPORTS, BASE_TARGET_EXPORTS): Include it. (DEFAULT_YACC, USUAL_YACC, DEFAULT_LEX, USUAL_LEX, DEFAULT_M4, DEFAULT_MAKEINFO): Remove. (CONFIGURED_YACC, CONFIGURED_FLEX, CONFIGURED_BISON, CONFIGURED_LEX, CONFIGURED_M4, CONFIGURED_MAKEINFO): Substitute. (YACC, FLEX, BISON, LEX, M4, MAKEINFO): Define to look into objdir or else use configured tool. (all-build): New. (all): Depend on it. (Build module dependencies): Add. * Makefile.in: Regenerate. * configure.in: Better support for multiple build modules, matching what is done for host/target modules. Do not look for "plausible" locations of build tools if Canadian cross. Use autoconf's AC_PROG_CC to find a C compiler. Define BUILD_DIR_PREFIX. Look for flex, makeinfo and m4. * configure: Regenerate. From-SVN: r84017
255 lines
9.7 KiB
Makefile
255 lines
9.7 KiB
Makefile
#! /usr/bin/autogen
|
|
AutoGen definitions Makefile.tpl;
|
|
|
|
// Makefile.in is generated from Makefile.tpl by 'autogen Makefile.def'.
|
|
// This file was originally written by Nathanael Nerode.
|
|
//
|
|
// Copyright 2002, 2003 Free Software Foundation
|
|
//
|
|
// This file is free software; you can redistribute it and/or modify
|
|
// it under the terms of the GNU General Public License as published by
|
|
// the Free Software Foundation; either version 2 of the License, or
|
|
// (at your option) any later version.
|
|
//
|
|
// This program is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU General Public License for more details.
|
|
//
|
|
// You should have received a copy of the GNU General Public License
|
|
// along with this program; if not, write to the Free Software
|
|
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
|
|
|
|
// "missing" indicates that that module doesn't supply
|
|
// that recursive target in its Makefile.
|
|
|
|
build_modules= { module= libiberty; };
|
|
build_modules= { module= libbanshee; };
|
|
build_modules= { module= bison; };
|
|
build_modules= { module= byacc; };
|
|
build_modules= { module= flex; };
|
|
build_modules= { module= m4; };
|
|
build_modules= { module= texinfo; };
|
|
|
|
host_modules= { module= ash; };
|
|
host_modules= { module= autoconf; };
|
|
host_modules= { module= automake; };
|
|
host_modules= { module= bash; };
|
|
host_modules= { module= bfd; };
|
|
host_modules= { module= opcodes; };
|
|
host_modules= { module= binutils; bootstrap=true; };
|
|
host_modules= { module= bison; no_check_cross= true; bootstrap=true; };
|
|
host_modules= { module= byacc; no_check_cross= true; bootstrap=true; };
|
|
host_modules= { module= bzip2; };
|
|
host_modules= { module= dejagnu; };
|
|
host_modules= { module= diff; };
|
|
host_modules= { module= dosutils; no_check= true; };
|
|
host_modules= { module= etc; };
|
|
host_modules= { module= fastjar; no_check_cross= true; };
|
|
host_modules= { module= fileutils; };
|
|
host_modules= { module= findutils; };
|
|
host_modules= { module= find; };
|
|
host_modules= { module= flex; no_check_cross= true; };
|
|
host_modules= { module= gas; bootstrap=true; };
|
|
host_modules= { module= gawk; };
|
|
host_modules= { module= gettext; };
|
|
host_modules= { module= gnuserv; };
|
|
host_modules= { module= gprof; };
|
|
host_modules= { module= gzip; };
|
|
host_modules= { module= hello; };
|
|
host_modules= { module= indent; };
|
|
host_modules= { module= intl; bootstrap=true; };
|
|
host_modules= { module= tcl;
|
|
missing=mostlyclean; };
|
|
host_modules= { module= itcl; };
|
|
host_modules= { module= ld; bootstrap=true; };
|
|
host_modules= { module= libcpp; bootstrap=true; };
|
|
host_modules= { module= libgui; };
|
|
host_modules= { module= libbanshee; bootstrap=true; no_install=true; };
|
|
host_modules= { module= libiberty; bootstrap=true; };
|
|
host_modules= { module= libtool; };
|
|
host_modules= { module= m4; };
|
|
host_modules= { module= make; };
|
|
host_modules= { module= mmalloc; no_check=true; };
|
|
host_modules= { module= patch; };
|
|
host_modules= { module= perl; };
|
|
host_modules= { module= prms; };
|
|
host_modules= { module= rcs; };
|
|
host_modules= { module= readline; };
|
|
host_modules= { module= release; no_install= true; no_check= true; };
|
|
host_modules= { module= recode; };
|
|
host_modules= { module= sed; };
|
|
host_modules= { module= send-pr; };
|
|
host_modules= { module= shellutils; };
|
|
host_modules= { module= sid; };
|
|
host_modules= { module= sim; };
|
|
host_modules= { module= tar; };
|
|
host_modules= { module= texinfo; no_install= true; bootstrap=true; };
|
|
host_modules= { module= textutils; };
|
|
host_modules= { module= time; };
|
|
host_modules= { module= uudecode; };
|
|
host_modules= { module= wdiff; };
|
|
host_modules= { module= zip; no_check_cross=true; };
|
|
host_modules= { module= zlib; no_install=true; no_check=true; bootstrap=true; };
|
|
host_modules= { module= gdb; with_x=true; };
|
|
host_modules= { module= expect; with_x=true; };
|
|
host_modules= { module= guile; with_x=true; };
|
|
host_modules= { module= tk; with_x=true; };
|
|
host_modules= { module= tix; with_x=true; };
|
|
host_modules= { module= libtermcap; no_check=true;
|
|
missing=mostlyclean;
|
|
missing=clean;
|
|
missing=distclean;
|
|
missing=maintainer-clean; };
|
|
host_modules= { module= utils; no_check=true; };
|
|
|
|
target_modules = { module= libstdc++-v3; raw_cxx=true; };
|
|
target_modules = { module= libmudflap; };
|
|
target_modules = { module= newlib; };
|
|
target_modules = { module= libgfortran; };
|
|
target_modules = { module= libobjc; };
|
|
target_modules = { module= libtermcap; no_check=true; stage=true;
|
|
missing=mostlyclean;
|
|
missing=clean;
|
|
missing=distclean;
|
|
missing=maintainer-clean; };
|
|
target_modules = { module= winsup; };
|
|
target_modules = { module= libgloss; no_check=true; };
|
|
target_modules = { module= libiberty; };
|
|
target_modules = { module= gperf; };
|
|
target_modules = { module= examples; no_check=true; no_install=true; };
|
|
target_modules = { module= libffi; };
|
|
target_modules = { module= libjava; raw_cxx=true; };
|
|
target_modules = { module= zlib; stage=true; };
|
|
target_modules = { module= boehm-gc; };
|
|
target_modules = { module= qthreads; };
|
|
target_modules = { module= rda; };
|
|
target_modules = { module= libada; };
|
|
|
|
// These are (some of) the make targets to be done in each subdirectory.
|
|
// Not all; these are the ones which don't have special options.
|
|
// "depend" indicates that a target depends on another target uniformly
|
|
// for each subdirectory. There can be several such lines per target.
|
|
recursive_targets = { make_target= info;
|
|
depend=configure; };
|
|
recursive_targets = { make_target= dvi;
|
|
depend=configure; };
|
|
recursive_targets = { make_target= TAGS;
|
|
depend=configure; };
|
|
recursive_targets = { make_target= install-info;
|
|
depend=configure;
|
|
depend=info; };
|
|
recursive_targets = { make_target= installcheck;
|
|
depend=configure; };
|
|
recursive_targets = { make_target= mostlyclean; };
|
|
recursive_targets = { make_target= clean; };
|
|
recursive_targets = { make_target= distclean; };
|
|
recursive_targets = { make_target= maintainer-clean; };
|
|
|
|
// Flags which need to be passed down.
|
|
|
|
// Directories etc.
|
|
flags_to_pass = { flag= DESTDIR ; };
|
|
flags_to_pass = { flag= RPATH_ENVVAR ; };
|
|
flags_to_pass = { flag= TARGET_SUBDIR ; };
|
|
flags_to_pass = { flag= bindir ; };
|
|
flags_to_pass = { flag= datadir ; };
|
|
flags_to_pass = { flag= exec_prefix ; };
|
|
flags_to_pass = { flag= includedir ; };
|
|
flags_to_pass = { flag= infodir ; };
|
|
flags_to_pass = { flag= libdir ; };
|
|
flags_to_pass = { flag= libexecdir ; };
|
|
flags_to_pass = { flag= lispdir ; };
|
|
flags_to_pass = { flag= libstdcxx_incdir ; };
|
|
flags_to_pass = { flag= libsubdir ; };
|
|
flags_to_pass = { flag= localstatedir ; };
|
|
flags_to_pass = { flag= mandir ; };
|
|
flags_to_pass = { flag= oldincludedir ; };
|
|
flags_to_pass = { flag= prefix ; };
|
|
flags_to_pass = { flag= sbindir ; };
|
|
flags_to_pass = { flag= sharedstatedir ; };
|
|
flags_to_pass = { flag= sysconfdir ; };
|
|
flags_to_pass = { flag= tooldir ; };
|
|
flags_to_pass = { flag= build_tooldir ; };
|
|
flags_to_pass = { flag= gxx_include_dir ; };
|
|
flags_to_pass = { flag= gcc_version ; };
|
|
flags_to_pass = { flag= gcc_version_trigger ; };
|
|
flags_to_pass = { flag= target_alias ; };
|
|
|
|
// Build tools
|
|
flags_to_pass = { flag= BISON ; };
|
|
flags_to_pass = { flag= CC_FOR_BUILD ; };
|
|
flags_to_pass = { flag= CXX_FOR_BUILD ; };
|
|
flags_to_pass = { flag= EXPECT ; };
|
|
flags_to_pass = { flag= FLEX ; };
|
|
flags_to_pass = { flag= INSTALL ; };
|
|
flags_to_pass = { flag= INSTALL_DATA ; };
|
|
flags_to_pass = { flag= INSTALL_PROGRAM ; };
|
|
flags_to_pass = { flag= INSTALL_SCRIPT ; };
|
|
flags_to_pass = { flag= LEX ; };
|
|
flags_to_pass = { flag= M4 ; };
|
|
flags_to_pass = { flag= MAKE ; };
|
|
flags_to_pass = { flag= RUNTEST ; };
|
|
flags_to_pass = { flag= RUNTESTFLAGS ; };
|
|
flags_to_pass = { flag= SHELL ; };
|
|
flags_to_pass = { flag= YACC ; };
|
|
|
|
// Host tools
|
|
flags_to_pass = { flag= AR_FLAGS ; };
|
|
flags_to_pass = { flag= CFLAGS ; };
|
|
flags_to_pass = { flag= CXXFLAGS ; };
|
|
flags_to_pass = { flag= LDFLAGS ; };
|
|
flags_to_pass = { flag= LIBCFLAGS ; };
|
|
flags_to_pass = { flag= LIBCXXFLAGS ; };
|
|
|
|
// Target tools
|
|
flags_to_pass = { flag= AR_FOR_TARGET ; };
|
|
flags_to_pass = { flag= AS_FOR_TARGET ; };
|
|
flags_to_pass = { flag= CC_FOR_TARGET ; };
|
|
flags_to_pass = { flag= CFLAGS_FOR_TARGET ; };
|
|
flags_to_pass = { flag= CXX_FOR_TARGET ; };
|
|
flags_to_pass = { flag= CXXFLAGS_FOR_TARGET ; };
|
|
flags_to_pass = { flag= DLLTOOL_FOR_TARGET ; };
|
|
flags_to_pass = { flag= GCJ_FOR_TARGET ; };
|
|
flags_to_pass = { flag= GFORTRAN_FOR_TARGET ; };
|
|
flags_to_pass = { flag= LD_FOR_TARGET ; };
|
|
flags_to_pass = { flag= LIBCFLAGS_FOR_TARGET ; };
|
|
flags_to_pass = { flag= LIBCXXFLAGS_FOR_TARGET ; };
|
|
flags_to_pass = { flag= NM_FOR_TARGET ; };
|
|
flags_to_pass = { flag= RANLIB_FOR_TARGET ; };
|
|
flags_to_pass = { flag= WINDRES_FOR_TARGET ; };
|
|
|
|
// Toplevel bootstrap
|
|
bootstrap_stage = {
|
|
id=1 ;
|
|
extra_configure_flags='--disable-intermodule \
|
|
--disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"' ;
|
|
extra_make_flags='CFLAGS="$(STAGE1_CFLAGS)"' ; };
|
|
bootstrap_stage = {
|
|
id=2 ; prev=1 ;
|
|
bootstrap_target=bootstrap2 ;
|
|
extra_configure_flags="@stage2_werror_flag@" ;
|
|
extra_make_flags="" ; };
|
|
bootstrap_stage = {
|
|
id=3 ; prev=2 ;
|
|
compare_target=compare ;
|
|
bootstrap_target=bootstrap ;
|
|
cleanstrap_target=cleanstrap ;
|
|
extra_configure_flags="@stage2_werror_flag@" ;
|
|
extra_make_flags="" ; };
|
|
bootstrap_stage = {
|
|
id=4 ; prev=3 ;
|
|
compare_target=compare3 ;
|
|
bootstrap_target=bootstrap4 ;
|
|
extra_configure_flags="@stage2_werror_flag@" ;
|
|
extra_make_flags="" ; };
|
|
bootstrap_stage = {
|
|
id=profile ; prev=1 ;
|
|
extra_configure_flags="@stage2_werror_flag@" ;
|
|
extra_make_flags='CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"' ; };
|
|
bootstrap_stage = {
|
|
id=feedback ; prev=1 ;
|
|
extra_configure_flags="@stage2_werror_flag@" ;
|
|
extra_make_flags='CFLAGS="$(BOOT_CFLAGS) -fprofile-use"' ; };
|