(linenum→info "unix/slp.c:2238")

binutils/2.18/Makefile.tpl

    1: [+ AutoGen5 template -*- Mode: Makefile -*-
    2: in
    3: +]
    4: 
    5: # Makefile.in is generated from Makefile.tpl by 'autogen Makefile.def'.
    6: #
    7: # Makefile for directory with subdirs to build.
    8: #   Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
    9: #   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation
   10: #
   11: # This file is free software; you can redistribute it and/or modify
   12: # it under the terms of the GNU General Public License as published by
   13: # the Free Software Foundation; either version 2 of the License, or
   14: # (at your option) any later version.
   15: # 
   16: # This program is distributed in the hope that it will be useful,
   17: # but WITHOUT ANY WARRANTY; without even the implied warranty of
   18: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   19: # GNU General Public License for more details.
   20: # 
   21: # You should have received a copy of the GNU General Public License
   22: # along with this program; if not, write to the Free Software
   23: # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
   24: #
   25: 
   26: # -------------------------------
   27: # Standard Autoconf-set variables
   28: # -------------------------------
   29: VPATH=@srcdir@
   30: 
   31: build_alias=@build_noncanonical@
   32: build_vendor=@build_vendor@
   33: build_os=@build_os@
   34: build=@build@
   35: host_alias=@host_noncanonical@
   36: host_vendor=@host_vendor@
   37: host_os=@host_os@
   38: host=@host@
   39: target_alias=@target_noncanonical@
   40: target_vendor=@target_vendor@
   41: target_os=@target_os@
   42: target=@target@
   43: 
   44: program_transform_name = @program_transform_name@
   45: 
   46: prefix = @prefix@
   47: exec_prefix = @exec_prefix@
   48: 
   49: srcdir = @srcdir@
   50: 
   51: bindir = @bindir@
   52: sbindir = @sbindir@
   53: libexecdir = @libexecdir@
   54: datadir = @datadir@
   55: sysconfdir = @sysconfdir@
   56: sharedstatedir = @sharedstatedir@
   57: localstatedir = @localstatedir@
   58: libdir = @libdir@
   59: includedir = @includedir@
   60: oldincludedir = @oldincludedir@
   61: infodir = @infodir@
   62: datarootdir = @datarootdir@
   63: docdir = @docdir@
   64: pdfdir = @pdfdir@
   65: htmldir = @htmldir@
   66: mandir = @mandir@
   67: man1dir = $(mandir)/man1
   68: man2dir = $(mandir)/man2
   69: man3dir = $(mandir)/man3
   70: man4dir = $(mandir)/man4
   71: man5dir = $(mandir)/man5
   72: man6dir = $(mandir)/man6
   73: man7dir = $(mandir)/man7
   74: man8dir = $(mandir)/man8
   75: man9dir = $(mandir)/man9
   76: 
   77: INSTALL = @INSTALL@
   78: INSTALL_PROGRAM = @INSTALL_PROGRAM@
   79: INSTALL_SCRIPT = @INSTALL_SCRIPT@
   80: INSTALL_DATA = @INSTALL_DATA@
   81: LN = @LN@
   82: LN_S = @LN_S@
   83: MAINT = @MAINT@
   84: MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
   85: MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
   86: 
   87: # -------------------------------------------------
   88: # Miscellaneous non-standard autoconf-set variables
   89: # -------------------------------------------------
   90: 
   91: # The gcc driver likes to know the arguments it was configured with.
   92: TOPLEVEL_CONFIGURE_ARGUMENTS=@TOPLEVEL_CONFIGURE_ARGUMENTS@
   93: 
   94: tooldir = @tooldir@
   95: build_tooldir = @build_tooldir@
   96: 
   97: GDB_NLM_DEPS = 
   98: 
   99: # This is the name of the environment variable used for the path to
  100: # the libraries.
  101: RPATH_ENVVAR = @RPATH_ENVVAR@
  102: 
  103: # Build programs are put under this directory.
  104: BUILD_SUBDIR = @build_subdir@
  105: # This is set by the configure script to the arguments to use when configuring
  106: # directories built for the build system.
  107: BUILD_CONFIGARGS = @build_configargs@ --with-build-subdir="$(BUILD_SUBDIR)"
  108: 
  109: # This is the list of variables to export in the environment when
  110: # configuring any subdirectory.  It must also be exported whenever
  111: # recursing into a build directory in case that directory's Makefile
  112: # re-runs configure.
  113: BASE_EXPORTS = \
  114:         FLEX="$(FLEX)"; export FLEX; \
  115:         LEX="$(LEX)"; export LEX; \
  116:         BISON="$(BISON)"; export BISON; \
  117:         YACC="$(YACC)"; export YACC; \
  118:         M4="$(M4)"; export M4; \
  119:         MAKEINFO="$(MAKEINFO)"; export MAKEINFO;
  120: 
  121: # This is the list of variables to export in the environment when
  122: # configuring subdirectories for the build system.
  123: BUILD_EXPORTS = \
  124:         $(BASE_EXPORTS) \
  125:         AR="$(AR_FOR_BUILD)"; export AR; \
  126:         AS="$(AS_FOR_BUILD)"; export AS; \
  127:         CC="$(CC_FOR_BUILD)"; export CC; \
  128:         CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \
  129:         CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
  130:         CXX="$(CXX_FOR_BUILD)"; export CXX; \
  131:         CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \
  132:         GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \
  133:         GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \
  134:         DLLTOOL="$(DLLTOOL_FOR_BUILD)"; export DLLTOOL; \
  135:         LD="$(LD_FOR_BUILD)"; export LD; \
  136:         LDFLAGS="$(LDFLAGS_FOR_BUILD)"; export LDFLAGS; \
  137:         NM="$(NM_FOR_BUILD)"; export NM; \
  138:         RANLIB="$(RANLIB_FOR_BUILD)"; export RANLIB; \
  139:         WINDRES="$(WINDRES_FOR_BUILD)"; export WINDRES; \
  140:         WINDMC="$(WINDMC_FOR_BUILD)"; export WINDMC;
  141: 
  142: # This is the list of directories to built for the host system.
  143: SUBDIRS = @configdirs@
  144: # This is set by the configure script to the arguments to use when configuring
  145: # directories built for the host system.
  146: HOST_CONFIGARGS = @host_configargs@
  147: # Host programs are put under this directory, which is . except if building
  148: # with srcdir=..
  149: HOST_SUBDIR = @host_subdir@
  150: # This is the list of variables to export in the environment when
  151: # configuring subdirectories for the host system.  We need to pass
  152: # some to the GCC configure because of its hybrid host/target nature.
  153: HOST_EXPORTS = \
  154:         $(BASE_EXPORTS) \
  155:         CC="$(CC)"; export CC; \
  156:         CFLAGS="$(CFLAGS)"; export CFLAGS; \
  157:         CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
  158:         CXX="$(CXX)"; export CXX; \
  159:         CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
  160:         AR="$(AR)"; export AR; \
  161:         AS="$(AS)"; export AS; \
  162:         CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
  163:         DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
  164:         LD="$(LD)"; export LD; \
  165:         LDFLAGS="$(LDFLAGS)"; export LDFLAGS; \
  166:         NM="$(NM)"; export NM; \
  167:         RANLIB="$(RANLIB)"; export RANLIB; \
  168:         WINDRES="$(WINDRES)"; export WINDRES; \
  169:         WINDMC="$(WINDMC)"; export WINDMC; \
  170:         OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
  171:         OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
  172:         AR_FOR_TARGET="$(AR_FOR_TARGET)"; export AR_FOR_TARGET; \
  173:         AS_FOR_TARGET="$(AS_FOR_TARGET)"; export AS_FOR_TARGET; \
  174:         GCC_FOR_TARGET="$(GCC_FOR_TARGET)"; export GCC_FOR_TARGET; \
  175:         LD_FOR_TARGET="$(LD_FOR_TARGET)"; export LD_FOR_TARGET; \
  176:         NM_FOR_TARGET="$(NM_FOR_TARGET)"; export NM_FOR_TARGET; \
  177:         OBJDUMP_FOR_TARGET="$(OBJDUMP_FOR_TARGET)"; export OBJDUMP_FOR_TARGET; \
  178:         RANLIB_FOR_TARGET="$(RANLIB_FOR_TARGET)"; export RANLIB_FOR_TARGET; \
  179:         TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \
  180:         GMPLIBS="$(HOST_GMPLIBS)"; export GMPLIBS; \
  181:         GMPINC="$(HOST_GMPINC)"; export GMPINC; \
  182: @if gcc-bootstrap
  183:         $(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
  184: @endif gcc-bootstrap
  185:         $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
  186: 
  187: # Similar, for later GCC stages.
  188: POSTSTAGE1_HOST_EXPORTS = \
  189:         $(HOST_EXPORTS) \
  190:         CC="$(STAGE_CC_WRAPPER) $$r/$(HOST_SUBDIR)/prev-gcc/xgcc$(exeext) \
  191:           -B$$r/$(HOST_SUBDIR)/prev-gcc/ -B$(build_tooldir)/bin/"; export CC; \
  192:         CC_FOR_BUILD="$(STAGE_CC_WRAPPER) \
  193:           $$r/$(HOST_SUBDIR)/prev-gcc/xgcc$(exeext) \
  194:           -B$$r/$(HOST_SUBDIR)/prev-gcc/ \
  195:           -B$(build_tooldir)/bin/"; export CC_FOR_BUILD; \
  196:         LDFLAGS="$(BOOT_LDFLAGS)"; export LDFLAGS;
  197: 
  198: # Target libraries are put under this directory:
  199: TARGET_SUBDIR = @target_subdir@
  200: # This is set by the configure script to the arguments to use when configuring
  201: # directories built for the target.
  202: TARGET_CONFIGARGS = @target_configargs@ --with-target-subdir="$(TARGET_SUBDIR)"
  203: # This is the list of variables to export in the environment when
  204: # configuring subdirectories for the host system.
  205: BASE_TARGET_EXPORTS = \
  206:         $(BASE_EXPORTS) \
  207:         AR="$(AR_FOR_TARGET)"; export AR; \
  208:         AS="$(COMPILER_AS_FOR_TARGET)"; export AS; \
  209:         CC="$(CC_FOR_TARGET)"; export CC; \
  210:         CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
  211:         CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
  212:         CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \
  213:         CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
  214:         GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
  215:         GFORTRAN="$(GFORTRAN_FOR_TARGET)"; export GFORTRAN; \
  216:         DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
  217:         LD="$(COMPILER_LD_FOR_TARGET)"; export LD; \
  218:         LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
  219:         LIPO="$(LIPO_FOR_TARGET)"; export LIPO; \
  220:         NM="$(COMPILER_NM_FOR_TARGET)"; export NM; \
  221:         OBJDUMP="$(OBJDUMP_FOR_TARGET)"; export OBJDUMP; \
  222:         RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
  223:         STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
  224:         WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
  225:         WINDMC="$(WINDMC_FOR_TARGET)"; export WINDMC; \
  226:         $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
  227: 
  228: RAW_CXX_TARGET_EXPORTS = \
  229:         $(BASE_TARGET_EXPORTS) \
  230:         CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \
  231:         CXX="$(RAW_CXX_FOR_TARGET)"; export CXX;
  232: 
  233: NORMAL_TARGET_EXPORTS = \
  234:         $(BASE_TARGET_EXPORTS) \
  235:         CXX="$(CXX_FOR_TARGET)"; export CXX;
  236: 
  237: # Where to find GMP
  238: HOST_GMPLIBS = @gmplibs@
  239: HOST_GMPINC = @gmpinc@
  240: 
  241: # ----------------------------------------------
  242: # Programs producing files for the BUILD machine
  243: # ----------------------------------------------
  244: 
  245: SHELL = @config_shell@
  246: 
  247: # pwd command to use.  Allow user to override default by setting PWDCMD in
  248: # the environment to account for automounters.  The make variable must not
  249: # be called PWDCMD, otherwise the value set here is passed to make
  250: # subprocesses and overrides the setting from the user's environment.
  251: # Don't use PWD since it is a common shell environment variable and we
  252: # don't want to corrupt it.
  253: PWD_COMMAND = $${PWDCMD-pwd}
  254: 
  255: # compilers to use to create programs which must be run in the build
  256: # environment.
  257: CC_FOR_BUILD = @CC_FOR_BUILD@
  258: CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
  259: 
  260: CXX_FOR_BUILD = $(CXX)
  261: 
  262: # Special variables passed down in EXTRA_GCC_FLAGS.  They are defined
  263: # here so that they can be overridden by Makefile fragments.
  264: BUILD_PREFIX = @BUILD_PREFIX@
  265: BUILD_PREFIX_1 = @BUILD_PREFIX_1@
  266: 
  267: # Flags to pass to stage2 and later makes.  They are defined
  268: # here so that they can be overridden by Makefile fragments.
  269: BOOT_CFLAGS= -g -O2
  270: BOOT_LDFLAGS=
  271: 
  272: BISON = @BISON@
  273: YACC = @YACC@
  274: FLEX = @FLEX@
  275: LEX = @LEX@
  276: M4 = @M4@
  277: MAKEINFO = @MAKEINFO@
  278: EXPECT = @EXPECT@
  279: RUNTEST = @RUNTEST@
  280: 
  281: # This just becomes part of the MAKEINFO definition passed down to
  282: # sub-makes.  It lets flags be given on the command line while still
  283: # using the makeinfo from the object tree.
  284: # (Default to avoid splitting info files by setting the threshold high.)
  285: MAKEINFOFLAGS = --split-size=5000000
  286: 
  287: # ---------------------------------------------
  288: # Programs producing files for the HOST machine
  289: # ---------------------------------------------
  290: 
  291: AS = @AS@
  292: AR = @AR@
  293: AR_FLAGS = rc
  294: CC = @CC@
  295: CXX = @CXX@
  296: DLLTOOL = @DLLTOOL@
  297: LD = @LD@
  298: LIPO = @LIPO@
  299: NM = @NM@
  300: OBJDUMP = @OBJDUMP@
  301: RANLIB = @RANLIB@
  302: STRIP = @STRIP@
  303: WINDRES = @WINDRES@
  304: WINDMC = @WINDMC@
  305: 
  306: GNATBIND = @GNATBIND@
  307: GNATMAKE = @GNATMAKE@
  308: 
  309: CFLAGS = @CFLAGS@
  310: LDFLAGS = @LDFLAGS@
  311: LIBCFLAGS = $(CFLAGS)
  312: CXXFLAGS = @CXXFLAGS@
  313: LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
  314: PICFLAG = 
  315: 
  316: # Only build the C compiler for stage1, because that is the only one that
  317: # we can guarantee will build with the native compiler, and also it is the
  318: # only thing useful for building stage2. STAGE1_CFLAGS (via CFLAGS),
  319: # MAKEINFO and MAKEINFOFLAGS are explicitly passed here to make them
  320: # overrideable (for a bootstrap build stage1 also builds gcc.info).
  321: 
  322: STAGE1_CFLAGS=@stage1_cflags@
  323: STAGE1_CHECKING=@stage1_checking@
  324: STAGE1_LANGUAGES=@stage1_languages@
  325: 
  326: # -----------------------------------------------
  327: # Programs producing files for the TARGET machine
  328: # -----------------------------------------------
  329: 
  330: FLAGS_FOR_TARGET = @FLAGS_FOR_TARGET@
  331: 
  332: AR_FOR_TARGET=@AR_FOR_TARGET@
  333: AS_FOR_TARGET=@AS_FOR_TARGET@
  334: CC_FOR_TARGET=$(STAGE_CC_WRAPPER) @CC_FOR_TARGET@ $(FLAGS_FOR_TARGET)
  335: 
  336: # If GCC_FOR_TARGET is not overriden on the command line, then this
  337: # variable is passed down to the gcc Makefile, where it is used to
  338: # build libgcc2.a.  We define it here so that it can itself be
  339: # overridden on the command line.
  340: GCC_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCC_FOR_TARGET@ $(FLAGS_FOR_TARGET)
  341: CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @CXX_FOR_TARGET@ $(FLAGS_FOR_TARGET)
  342: RAW_CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @RAW_CXX_FOR_TARGET@ $(FLAGS_FOR_TARGET)
  343: GCJ_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCJ_FOR_TARGET@ $(FLAGS_FOR_TARGET)
  344: GFORTRAN_FOR_TARGET=$(STAGE_CC_WRAPPER) @GFORTRAN_FOR_TARGET@ $(FLAGS_FOR_TARGET)
  345: DLLTOOL_FOR_TARGET=@DLLTOOL_FOR_TARGET@
  346: LD_FOR_TARGET=@LD_FOR_TARGET@
  347: 
  348: LIPO_FOR_TARGET=@LIPO_FOR_TARGET@
  349: NM_FOR_TARGET=@NM_FOR_TARGET@
  350: OBJDUMP_FOR_TARGET=@OBJDUMP_FOR_TARGET@
  351: RANLIB_FOR_TARGET=@RANLIB_FOR_TARGET@
  352: STRIP_FOR_TARGET=@STRIP_FOR_TARGET@
  353: WINDRES_FOR_TARGET=@WINDRES_FOR_TARGET@
  354: WINDMC_FOR_TARGET=@WINDMC_FOR_TARGET@
  355: 
  356: COMPILER_AS_FOR_TARGET=@COMPILER_AS_FOR_TARGET@
  357: COMPILER_LD_FOR_TARGET=@COMPILER_LD_FOR_TARGET@
  358: COMPILER_NM_FOR_TARGET=@COMPILER_NM_FOR_TARGET@
  359: 
  360: # During gcc bootstrap, if we use some random cc for stage1 then
  361: # CFLAGS will be just -g.  We want to ensure that TARGET libraries
  362: # (which we know are built with gcc) are built with optimizations so
  363: # prepend -O2 when setting CFLAGS_FOR_TARGET.
  364: CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
  365: SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
  366: CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
  367: LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
  368: LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
  369: LDFLAGS_FOR_TARGET = 
  370: PICFLAG_FOR_TARGET = 
  371: 
  372: # ------------------------------------
  373: # Miscellaneous targets and flag lists
  374: # ------------------------------------
  375: 
  376: # The first rule in the file had better be this one.  Don't put any above it.
  377: # This lives here to allow makefile fragments to contain dependencies.
  378: all:
  379: 
  380: #### host and target specific makefile fragments come in here.
  381: @target_makefile_frag@
  382: @alphaieee_frag@
  383: @ospace_frag@
  384: @host_makefile_frag@
  385: ###
  386: 
  387: # This is the list of directories that may be needed in RPATH_ENVVAR
  388: # so that prorgams built for the target machine work.
  389: TARGET_LIB_PATH = [+ FOR target_modules +][+
  390:   IF lib_path +]$(TARGET_LIB_PATH_[+module+])[+ ENDIF lib_path +][+
  391:   ENDFOR target_modules +]$(HOST_LIB_PATH_gcc)
  392: [+ FOR target_modules +][+ IF lib_path +]
  393: @if target-[+module+]
  394: TARGET_LIB_PATH_[+module+] = $$r/$(TARGET_SUBDIR)/[+module+]/[+lib_path+]:
  395: @endif target-[+module+]
  396: [+ ENDIF lib_path +][+ ENDFOR target_modules +]
  397: 
  398: 
  399: # This is the list of directories that may be needed in RPATH_ENVVAR
  400: # so that programs built for the host machine work.
  401: HOST_LIB_PATH = [+ FOR host_modules +][+
  402:   IF lib_path +]$(HOST_LIB_PATH_[+module+])[+ ENDIF lib_path +][+
  403:   ENDFOR host_modules +]
  404: 
  405: # Define HOST_LIB_PATH_gcc here, for the sake of TARGET_LIB_PATH, ouch
  406: @if gcc
  407: HOST_LIB_PATH_gcc = $$r/$(HOST_SUBDIR)/gcc:$$r/$(HOST_SUBDIR)/prev-gcc:
  408: @endif gcc
  409: 
  410: [+ FOR host_modules +][+ IF lib_path +]
  411: @if [+module+]
  412: HOST_LIB_PATH_[+module+] = \
  413:   $$r/$(HOST_SUBDIR)/[+module+]/[+lib_path+]:[+ IF bootstrap
  414:   +]$$r/$(HOST_SUBDIR)/prev-[+module+]/[+lib_path+]:[+ ENDIF bootstrap +]
  415: @endif [+module+]
  416: [+ ENDIF lib_path +][+ ENDFOR host_modules +]
  417: 
  418: # Flags to pass down to all sub-makes.
  419: BASE_FLAGS_TO_PASS =[+ FOR flags_to_pass +][+ IF optional +] \
  420:         "`echo '[+flag+]=$([+flag+])' | sed -e s'/[^=][^=]*=$$/XFOO=/'`"[+ ELSE optional +] \
  421:         "[+flag+]=$([+flag+])"[+ ENDIF optional+][+ ENDFOR flags_to_pass +] \
  422:         "CONFIG_SHELL=$(SHELL)" \
  423:         "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" 
  424: 
  425: # We leave this in just in case, but it is not needed anymore.
  426: RECURSE_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS)
  427: 
  428: # Flags to pass down to most sub-makes, in which we're building with
  429: # the host environment.
  430: EXTRA_HOST_FLAGS = \
  431:         'AR=$(AR)' \
  432:         'AS=$(AS)' \
  433:         'CC=$(CC)' \
  434:         'CXX=$(CXX)' \
  435:         'DLLTOOL=$(DLLTOOL)' \
  436:         'LD=$(LD)' \
  437:         'LIPO=$(LIPO)' \
  438:         'NM=$(NM)' \
  439:         'OBJDUMP=$(OBJDUMP)' \
  440:         'RANLIB=$(RANLIB)' \
  441:         'STRIP=$(STRIP)' \
  442:         'WINDRES=$(WINDRES)' \
  443:         'WINDMC=$(WINDMC)'
  444: 
  445: FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS)
  446: 
  447: # Flags that are concerned with the location of the X11 include files
  448: # and library files
  449: #
  450: # NOTE: until the top-level is getting the values via autoconf, it only
  451: # causes problems to have this top-level Makefile overriding the autoconf-set
  452: # values in child directories.  Only variables that don't conflict with
  453: # autoconf'ed ones should be passed by X11_FLAGS_TO_PASS for now.
  454: #
  455: X11_FLAGS_TO_PASS = \
  456:         'X11_EXTRA_CFLAGS=$(X11_EXTRA_CFLAGS)' \
  457:         'X11_EXTRA_LIBS=$(X11_EXTRA_LIBS)'
  458: 
  459: # Flags to pass to stage2 and later makes.
  460: 
  461: POSTSTAGE1_FLAGS_TO_PASS = \
  462:         CC="$${CC}" CC_FOR_BUILD="$${CC_FOR_BUILD}" \
  463:         GNATBIND="$$r/$(HOST_SUBDIR)/prev-gcc/gnatbind" \
  464:         LDFLAGS="$(BOOT_LDFLAGS)" \
  465:         "`echo 'ADAFLAGS=$(BOOT_ADAFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`"
  466: 
  467: # Flags to pass down to makes which are built with the target environment.
  468: # The double $ decreases the length of the command line; those variables
  469: # are set in BASE_FLAGS_TO_PASS, and the sub-make will expand them.  The
  470: # COMPILER_ prefixed variables are not passed down so we expand them here.
  471: EXTRA_TARGET_FLAGS = \
  472:         'AR=$$(AR_FOR_TARGET)' \
  473:         'AS=$(COMPILER_AS_FOR_TARGET)' \
  474:         'CC=$$(CC_FOR_TARGET)' \
  475:         'CFLAGS=$$(CFLAGS_FOR_TARGET)' \
  476:         'CXX=$$(CXX_FOR_TARGET)' \
  477:         'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET)' \
  478:         'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
  479:         'LD=$(COMPILER_LD_FOR_TARGET)' \
  480:         'LDFLAGS=$$(LDFLAGS_FOR_TARGET)' \
  481:         'LIBCFLAGS=$$(LIBCFLAGS_FOR_TARGET)' \
  482:         'LIBCXXFLAGS=$$(LIBCXXFLAGS_FOR_TARGET)' \
  483:         'NM=$(COMPILER_NM_FOR_TARGET)' \
  484:         'OBJDUMP=$$(OBJDUMP_FOR_TARGET)' \
  485:         'RANLIB=$$(RANLIB_FOR_TARGET)' \
  486:         'WINDRES=$$(WINDRES_FOR_TARGET)' \
  487:         'WINDMC=$$(WINDMC_FOR_TARGET)'
  488: 
  489: TARGET_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS)
  490: 
  491: # Flags to pass down to gcc.  gcc builds a library, libgcc.a, so it
  492: # unfortunately needs the native compiler and the target ar and
  493: # ranlib.
  494: # If any variables are added here, they must be added to do-*, below.
  495: # The BUILD_* variables are a special case, which are used for the gcc
  496: # cross-building scheme.
  497: EXTRA_GCC_FLAGS = \
  498:         "GCC_FOR_TARGET=$(GCC_FOR_TARGET)" \
  499:         "`echo 'STMP_FIXPROTO=$(STMP_FIXPROTO)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
  500:         "`echo 'LIMITS_H_TEST=$(LIMITS_H_TEST)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
  501:         "`echo 'LIBGCC2_CFLAGS=$(LIBGCC2_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
  502:         "`echo 'LIBGCC2_DEBUG_CFLAGS=$(LIBGCC2_DEBUG_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
  503:         "`echo 'LIBGCC2_INCLUDES=$(LIBGCC2_INCLUDES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`"
  504: 
  505: GCC_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS)
  506: 
  507: .PHONY: configure-host
  508: configure-host: [+
  509:   FOR host_modules +] \
  510:     maybe-configure-[+module+][+
  511:   ENDFOR host_modules +]
  512: .PHONY: configure-target
  513: configure-target: [+
  514:   FOR target_modules +] \
  515:     maybe-configure-target-[+module+][+
  516:   ENDFOR target_modules +]
  517: 
  518: # The target built for a native non-bootstrap build.
  519: .PHONY: all
  520: all:
  521: @if gcc-bootstrap
  522:         [ -f stage_final ] || echo stage3 > stage_final
  523:         @r=`${PWD_COMMAND}`; export r; \
  524:         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
  525:         $(MAKE) $(RECURSE_FLAGS_TO_PASS) `cat stage_final`-bubble
  526: @endif gcc-bootstrap
  527:         @: $(MAKE); $(unstage)
  528:         @r=`${PWD_COMMAND}`; export r; \
  529:         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
  530:         if [ -f stage_last ]; then \
  531:           $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target; \
  532:         else \
  533:           $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-host all-target; \
  534:         fi
  535: 
  536: .PHONY: all-build
  537: [+ FOR build_modules +]
  538: all-build: maybe-all-build-[+module+][+ ENDFOR build_modules +]
  539: 
  540: .PHONY: all-host
  541: [+ FOR host_modules +][+ IF bootstrap +]
  542: @if [+module+]-no-bootstrap[+ ENDIF bootstrap +]
  543: all-host: maybe-all-[+module+][+ IF bootstrap +]
  544: @endif [+module+]-no-bootstrap[+ ENDIF bootstrap +][+ ENDFOR host_modules +]
  545: 
  546: .PHONY: all-target
  547: [+ FOR target_modules +][+ IF bootstrap +]
  548: @if target-[+module+]-no-bootstrap[+ ENDIF bootstrap +]
  549: all-target: maybe-all-target-[+module+][+ IF bootstrap +]
  550: @endif target-[+module+]-no-bootstrap[+
  551:   ENDIF bootstrap +][+ ENDFOR target_modules +]
  552: 
  553: # Do a target for all the subdirectories.  A ``make do-X'' will do a
  554: # ``make X'' in all subdirectories (because, in general, there is a
  555: # dependency (below) of X upon do-X, a ``make X'' will also do this,
  556: # but it may do additional work as well).
  557: [+ FOR recursive_targets +]
  558: .PHONY: do-[+make_target+]
  559: do-[+make_target+]:
  560:         @: $(MAKE); $(unstage)
  561:         @r=`${PWD_COMMAND}`; export r; \
  562:         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
  563:         $(MAKE) $(RECURSE_FLAGS_TO_PASS) [+make_target+]-host \
  564:           [+make_target+]-target
  565: 
  566: 
  567: .PHONY: [+make_target+]-host
  568: [+ FOR host_modules +]
  569: [+make_target+]-host: maybe-[+make_target+]-[+module+][+ ENDFOR host_modules +]
  570: 
  571: .PHONY: [+make_target+]-target
  572: [+ FOR target_modules +]
  573: [+make_target+]-target: maybe-[+make_target+]-target-[+module+][+ ENDFOR target_modules +]
  574: [+ ENDFOR recursive_targets +]
  575: 
  576: # Here are the targets which correspond to the do-X targets.
  577: 
  578: .PHONY: info installcheck dvi pdf html
  579: .PHONY: install-info install-pdf install-html
  580: .PHONY: clean distclean mostlyclean maintainer-clean realclean
  581: .PHONY: local-clean local-distclean local-maintainer-clean
  582: info: do-info
  583: installcheck: do-installcheck
  584: dvi: do-dvi
  585: pdf: do-pdf
  586: html: do-html
  587: 
  588: # Make sure makeinfo is built before we do a `make info', if we're
  589: # in fact building texinfo.
  590: do-info: maybe-all-texinfo
  591: 
  592: install-info: do-install-info dir.info
  593:         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
  594:         if [ -f dir.info ] ; then \
  595:           $(INSTALL_DATA) dir.info $(DESTDIR)$(infodir)/dir.info ; \
  596:         else true ; fi
  597: 
  598: install-pdf: do-install-pdf
  599: 
  600: install-html: do-install-html
  601: 
  602: local-clean:
  603:         -rm -f *.a TEMP errs core *.o *~ \#* TAGS *.E *.log
  604: 
  605: local-distclean:
  606:         -rm -f Makefile config.status config.cache mh-frag mt-frag
  607:         -rm -f maybedep.tmp serdep.tmp
  608:         -if [ "$(TARGET_SUBDIR)" != "." ]; then \
  609:           rm -rf $(TARGET_SUBDIR); \
  610:         else true; fi
  611:         -rm -rf $(BUILD_SUBDIR)
  612:         -if [ "$(HOST_SUBDIR)" != "." ]; then \
  613:           rm -rf $(HOST_SUBDIR); \
  614:         else true; fi
  615:         -rm -f texinfo/po/Makefile texinfo/po/Makefile.in texinfo/info/Makefile
  616:         -rm -f texinfo/doc/Makefile texinfo/po/POTFILES
  617:         -rmdir texinfo/doc texinfo/info texinfo/intl texinfo/lib 2>/dev/null
  618:         -rmdir texinfo/makeinfo texinfo/po texinfo/util 2>/dev/null
  619:         -rmdir fastjar gcc libiberty texinfo zlib 2>/dev/null
  620: 
  621: local-maintainer-clean:
  622:         @echo "This command is intended for maintainers to use;"
  623:         @echo "it deletes files that may require special tools to rebuild."
  624: 
  625: clean: do-clean local-clean
  626: mostlyclean: do-mostlyclean local-clean
  627: distclean: do-distclean local-clean local-distclean
  628: maintainer-clean: local-maintainer-clean do-maintainer-clean local-clean 
  629: maintainer-clean: local-distclean
  630: realclean: maintainer-clean
  631: 
  632: # Check target.
  633: 
  634: .PHONY: check do-check
  635: check: do-check
  636: 
  637: # Only include modules actually being configured and built.
  638: .PHONY: check-host
  639: check-host: [+
  640:   FOR host_modules +] \
  641:     maybe-check-[+module+][+
  642:   ENDFOR host_modules +]
  643: 
  644: .PHONY: check-target
  645: check-target: [+
  646:   FOR target_modules +] \
  647:     maybe-check-target-[+module+][+
  648:   ENDFOR target_modules +]
  649: 
  650: do-check:
  651:         @: $(MAKE); $(unstage)
  652:         @r=`${PWD_COMMAND}`; export r; \
  653:         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
  654:         $(MAKE) $(RECURSE_FLAGS_TO_PASS) check-host check-target
  655: 
  656: # Automated reporting of test results.
  657: 
  658: warning.log: build.log
  659:         $(srcdir)/contrib/warn_summary build.log > $@
  660: 
  661: mail-report.log:
  662:         if test x'$(BOOT_CFLAGS)' != x''; then \
  663:             BOOT_CFLAGS='$(BOOT_CFLAGS)'; export BOOT_CFLAGS; \
  664:         fi; \
  665:         $(srcdir)/contrib/test_summary -t >$@
  666:         chmod +x $@
  667:         echo If you really want to send e-mail, run ./$@ now
  668: 
  669: mail-report-with-warnings.log: warning.log
  670:         if test x'$(BOOT_CFLAGS)' != x''; then \
  671:             BOOT_CFLAGS='$(BOOT_CFLAGS)'; export BOOT_CFLAGS; \
  672:         fi; \
  673:         $(srcdir)/contrib/test_summary -t -i warning.log >$@
  674:         chmod +x $@
  675:         echo If you really want to send e-mail, run ./$@ now
  676: 
  677: # Installation targets.
  678: 
  679: .PHONY: install uninstall
  680: install:
  681:         @: $(MAKE); $(unstage)
  682:         @r=`${PWD_COMMAND}`; export r; \
  683:         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
  684:         $(MAKE) $(RECURSE_FLAGS_TO_PASS) installdirs install-host install-target
  685: 
  686: .PHONY: install-host-nogcc
  687: install-host-nogcc: [+
  688:   FOR host_modules +][+ IF (not (= (get "module") "gcc")) +] \
  689:     maybe-install-[+module+][+ ENDIF +][+
  690:   ENDFOR host_modules +]
  691: 
  692: .PHONY: install-host
  693: install-host: [+
  694:   FOR host_modules +] \
  695:     maybe-install-[+module+][+
  696:   ENDFOR host_modules +]
  697: 
  698: .PHONY: install-target
  699: install-target: [+
  700:   FOR target_modules +] \
  701:     maybe-install-target-[+module+][+
  702:   ENDFOR target_modules +]
  703: 
  704: uninstall:
  705:         @echo "the uninstall target is not supported in this tree"
  706: 
  707: .PHONY: install.all
  708: install.all: install-no-fixedincludes
  709:         @if [ -f ./gcc/Makefile ] ; then \
  710:                 r=`${PWD_COMMAND}` ; export r ; \
  711:                 s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
  712:                 $(HOST_EXPORTS) \
  713:                 (cd ./gcc && \
  714:                 $(MAKE) $(FLAGS_TO_PASS) install-headers) ; \
  715:         else \
  716:                 true ; \
  717:         fi
  718: 
  719: # install-no-fixedincludes is used because Cygnus can not distribute
  720: # the fixed header files.
  721: .PHONY: install-no-fixedincludes
  722: install-no-fixedincludes: installdirs install-host-nogcc \
  723:         install-target gcc-no-fixedincludes
  724: 
  725: ### other supporting targets
  726: 
  727: MAKEDIRS= \
  728:         $(DESTDIR)$(prefix) \
  729:         $(DESTDIR)$(exec_prefix)
  730: .PHONY: installdirs
  731: installdirs: mkinstalldirs
  732:         $(SHELL) $(srcdir)/mkinstalldirs $(MAKEDIRS)
  733: 
  734: dir.info: do-install-info
  735:         if [ -f $(srcdir)/texinfo/gen-info-dir ] ; then \
  736:           $(srcdir)/texinfo/gen-info-dir $(DESTDIR)$(infodir) $(srcdir)/texinfo/dir.info-template > dir.info.new ; \
  737:           mv -f dir.info.new dir.info ; \
  738:         else true ; \
  739:         fi
  740: 
  741: dist:
  742:         @echo "Building a full distribution of this tree isn't done"
  743:         @echo "via 'make dist'.  Check out the etc/ subdirectory" 
  744: 
  745: etags tags: TAGS
  746: 
  747: # Right now this just builds TAGS in each subdirectory.  emacs19 has the
  748: # ability to use several tags files at once, so there is probably no need
  749: # to combine them into one big TAGS file (like CVS 1.3 does).  We could
  750: # (if we felt like it) have this Makefile write a piece of elisp which
  751: # the user could load to tell emacs19 where all the TAGS files we just
  752: # built are.
  753: TAGS: do-TAGS
  754: 
  755: # ------------------------------------
  756: # Macros for configure and all targets
  757: # ------------------------------------
  758: 
  759: [+ DEFINE configure +]
  760: .PHONY: configure-[+prefix+][+module+] maybe-configure-[+prefix+][+module+]
  761: maybe-configure-[+prefix+][+module+]:
  762: @if gcc-bootstrap
  763: configure-[+prefix+][+module+]: stage_current
  764: @endif gcc-bootstrap
  765: @if [+prefix+][+module+]
  766: maybe-configure-[+prefix+][+module+]: configure-[+prefix+][+module+]
  767: configure-[+prefix+][+module+]: [+ IF bootstrap +][+ ELSE +]
  768:         @: $(MAKE); $(unstage)[+ ENDIF bootstrap +]
  769:         @r=`${PWD_COMMAND}`; export r; \
  770:         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
  771:         [+ IF check_multilibs
  772:         +]echo "Checking multilib configuration for [+module+]..."; \
  773:         $(SHELL) $(srcdir)/mkinstalldirs [+subdir+]/[+module+] ; \
  774:         $(CC_FOR_TARGET) --print-multi-lib > [+subdir+]/[+module+]/multilib.tmp 2> /dev/null ; \
  775:         if test -r [+subdir+]/[+module+]/multilib.out; then \
  776: <