| #! /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-2021 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 3 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; see the file COPYING3. If not see |
| // <http://www.gnu.org/licenses/>. |
| |
| |
| // "missing" indicates that that module doesn't supply |
| // that recursive target in its Makefile. |
| |
| build_modules= { module= libiberty; }; |
| build_modules= { module= bison; }; |
| build_modules= { module= flex; }; |
| build_modules= { module= m4; }; |
| build_modules= { module= texinfo; }; |
| build_modules= { module= fixincludes; }; |
| build_modules= { module= libcpp; |
| extra_configure_flags='--disable-nls am_cv_func_iconv=no';}; |
| |
| host_modules= { module= bfd; bootstrap=true; }; |
| host_modules= { module= opcodes; bootstrap=true; }; |
| host_modules= { module= binutils; bootstrap=true; }; |
| host_modules= { module= bison; no_check_cross= true; }; |
| host_modules= { module= cgen; }; |
| host_modules= { module= dejagnu; }; |
| host_modules= { module= etc; }; |
| host_modules= { module= fastjar; no_check_cross= true; }; |
| host_modules= { module= fixincludes; bootstrap=true; |
| missing= TAGS; |
| missing= install-dvi; }; |
| host_modules= { module= flex; no_check_cross= true; }; |
| host_modules= { module= gas; bootstrap=true; }; |
| host_modules= { module= gcc; bootstrap=true; |
| extra_make_flags="$(EXTRA_GCC_FLAGS)"; }; |
| host_modules= { module= gmp; lib_path=.libs; bootstrap=true; |
| // Work around in-tree gmp configure bug with missing flex. |
| extra_configure_flags='--disable-shared LEX="touch lex.yy.c"'; |
| extra_make_flags='AM_CFLAGS="-DNO_ASM"'; |
| no_install= true; |
| // none-*-* disables asm optimizations, bootstrap-testing |
| // the compiler more thoroughly. |
| host="none-${host_vendor}-${host_os}"; |
| // gmp's configure will complain if given anything |
| // different from host for target. |
| target="none-${host_vendor}-${host_os}"; }; |
| host_modules= { module= mpfr; lib_path=src/.libs; bootstrap=true; |
| extra_configure_flags='--disable-shared @extra_mpfr_configure_flags@'; |
| extra_make_flags='AM_CFLAGS="-DNO_ASM"'; |
| no_install= true; }; |
| host_modules= { module= mpc; lib_path=src/.libs; bootstrap=true; |
| extra_configure_flags='--disable-shared @extra_mpc_gmp_configure_flags@ @extra_mpc_mpfr_configure_flags@ --disable-maintainer-mode'; |
| no_install= true; }; |
| host_modules= { module= isl; lib_path=.libs; bootstrap=true; |
| extra_configure_flags='--disable-shared @extra_isl_gmp_configure_flags@'; |
| extra_make_flags='V=1'; |
| no_install= true; }; |
| host_modules= { module= libelf; lib_path=.libs; bootstrap=true; |
| extra_configure_flags='--disable-shared'; |
| no_install= true; }; |
| host_modules= { module= gold; bootstrap=true; }; |
| host_modules= { module= gprof; }; |
| host_modules= { module= gprofng; }; |
| 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= libbacktrace; bootstrap=true; }; |
| host_modules= { module= libcpp; bootstrap=true; }; |
| // As with libiconv, don't install any of libcody |
| host_modules= { module= libcody; bootstrap=true; |
| no_install= true; |
| missing= pdf; |
| missing= html; |
| missing= info; |
| missing= dvi; |
| missing= install-pdf; |
| missing= install-html; |
| missing= install-info; |
| missing= install-dvi; |
| missing=TAGS; }; |
| host_modules= { module= libdecnumber; bootstrap=true; |
| missing=TAGS; }; |
| host_modules= { module= libgui; }; |
| host_modules= { module= libiberty; bootstrap=true; |
| extra_configure_flags='@extra_host_libiberty_configure_flags@';}; |
| // Linker plugins may need their own build of libiberty; see |
| // gcc/doc/install.texi. We take care that this build of libiberty doesn't get |
| // installed. It's a helper library for linker plugins, so we pay attention to |
| // @extra_linker_plugin_flags@ and @extra_linker_plugin_configure_flags@. |
| host_modules= { module= libiberty-linker-plugin; bootstrap=true; |
| module_srcdir=libiberty; |
| extra_configure_flags='@extra_host_libiberty_configure_flags@ --disable-install-libiberty @extra_linker_plugin_flags@ @extra_linker_plugin_configure_flags@'; |
| extra_make_flags='@extra_linker_plugin_flags@'; }; |
| // We abuse missing to avoid installing anything for libiconv. |
| host_modules= { module= libiconv; |
| bootstrap=true; |
| extra_configure_flags='--disable-shared'; |
| no_install= true; |
| missing= pdf; |
| missing= html; |
| missing= info; |
| missing= install-pdf; |
| missing= install-html; |
| missing= install-info; }; |
| host_modules= { module= m4; }; |
| host_modules= { module= readline; }; |
| host_modules= { module= sid; }; |
| host_modules= { module= sim; }; |
| host_modules= { module= texinfo; no_install= true; }; |
| host_modules= { module= zlib; no_install=true; no_check=true; |
| bootstrap=true; |
| extra_configure_flags='@extra_host_zlib_configure_flags@';}; |
| host_modules= { module= gnulib; }; |
| host_modules= { module= gdbsupport; }; |
| host_modules= { module= gdbserver; }; |
| host_modules= { module= gdb; }; |
| host_modules= { module= expect; }; |
| host_modules= { module= guile; }; |
| host_modules= { module= tk; }; |
| host_modules= { module= libtermcap; no_check=true; |
| missing=mostlyclean; |
| missing=clean; |
| missing=distclean; |
| missing=maintainer-clean; }; |
| host_modules= { module= utils; no_check=true; }; |
| host_modules= { module= c++tools; |
| missing=TAGS; }; |
| host_modules= { module= gnattools; }; |
| host_modules= { module= lto-plugin; bootstrap=true; |
| extra_configure_flags='--enable-shared @extra_linker_plugin_flags@ @extra_linker_plugin_configure_flags@'; |
| extra_make_flags='@extra_linker_plugin_flags@'; }; |
| host_modules= { module= libcc1; extra_configure_flags=--enable-shared; }; |
| host_modules= { module= gotools; }; |
| host_modules= { module= libctf; bootstrap=true; }; |
| host_modules= { module= libsframe; bootstrap=true; }; |
| |
| target_modules = { module= libstdc++-v3; |
| bootstrap=true; |
| lib_path=src/.libs; |
| raw_cxx=true; }; |
| target_modules = { module= libsanitizer; |
| bootstrap=true; |
| lib_path=.libs; |
| raw_cxx=true; }; |
| target_modules = { module= libvtv; |
| bootstrap=true; |
| lib_path=.libs; |
| raw_cxx=true; }; |
| target_modules = { module= liboffloadmic; |
| lib_path=.libs; |
| extra_configure_flags='@extra_liboffloadmic_configure_flags@'; }; |
| target_modules = { module= libssp; lib_path=.libs; }; |
| target_modules = { module= newlib; }; |
| target_modules = { module= libgcc; bootstrap=true; no_check=true; |
| missing=TAGS; |
| missing=install-dvi; }; |
| target_modules = { module= libbacktrace; }; |
| target_modules = { module= libquadmath; }; |
| target_modules = { module= libgfortran; }; |
| target_modules = { module= libobjc; |
| missing=TAGS; |
| missing=install-dvi; }; |
| target_modules = { module= libgo; }; |
| target_modules = { module= libphobos; |
| lib_path=src/.libs; }; |
| target_modules = { module= libtermcap; no_check=true; |
| missing=mostlyclean; |
| missing=clean; |
| missing=distclean; |
| missing=maintainer-clean; }; |
| target_modules = { module= winsup; }; |
| target_modules = { module= libgloss; no_check=true; }; |
| target_modules = { module= libffi; no_install=true; }; |
| target_modules = { module= zlib; }; |
| target_modules = { module= rda; }; |
| target_modules = { module= libada; }; |
| target_modules = { module= libgomp; bootstrap= true; lib_path=.libs; }; |
| target_modules = { module= libitm; lib_path=.libs; }; |
| target_modules = { module= libatomic; lib_path=.libs; }; |
| |
| // 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= pdf; |
| depend=configure; }; |
| recursive_targets = { make_target= html; |
| depend=configure; }; |
| recursive_targets = { make_target= TAGS; |
| depend=configure; }; |
| recursive_targets = { make_target= install-info; |
| depend=configure; |
| depend=info; }; |
| recursive_targets = { make_target= install-dvi; |
| depend=configure; |
| depend=dvi; }; |
| recursive_targets = { make_target= install-pdf; |
| depend=configure; |
| depend=pdf; }; |
| recursive_targets = { make_target= install-html; |
| depend=configure; |
| depend=html; }; |
| 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= datarootdir ; }; |
| flags_to_pass = { flag= docdir ; }; |
| flags_to_pass = { flag= infodir ; }; |
| flags_to_pass = { flag= pdfdir ; }; |
| flags_to_pass = { flag= htmldir ; }; |
| flags_to_pass = { flag= libdir ; }; |
| flags_to_pass = { flag= libexecdir ; }; |
| flags_to_pass = { flag= lispdir ; }; |
| 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= target_alias ; }; |
| |
| // Build tools |
| flags_to_pass = { flag= AWK ; }; |
| flags_to_pass = { flag= BISON ; }; |
| flags_to_pass = { flag= CC_FOR_BUILD ; }; |
| flags_to_pass = { flag= CFLAGS_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= LDFLAGS_FOR_BUILD ; }; |
| 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= SED ; }; |
| flags_to_pass = { flag= SHELL ; }; |
| flags_to_pass = { flag= YACC ; }; |
| |
| // Host tools |
| flags_to_pass = { flag= ADAFLAGS ; optional=true ; }; |
| flags_to_pass = { flag= ADA_CFLAGS ; }; |
| flags_to_pass = { flag= AR_FLAGS ; }; |
| flags_to_pass = { flag= BOOT_ADAFLAGS ; optional=true ; }; |
| flags_to_pass = { flag= BOOT_CFLAGS ; }; |
| flags_to_pass = { flag= BOOT_LDFLAGS ; }; |
| 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 ; }; |
| flags_to_pass = { flag= STAGE1_CHECKING ; }; |
| flags_to_pass = { flag= STAGE1_LANGUAGES ; }; |
| flags_to_pass = { flag= GNATBIND ; }; |
| flags_to_pass = { flag= GNATMAKE ; }; |
| flags_to_pass = { flag= GDC ; }; |
| flags_to_pass = { flag= GDCFLAGS ; }; |
| |
| // 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= CPPFLAGS_FOR_TARGET ; }; |
| flags_to_pass = { flag= CXXFLAGS_FOR_TARGET ; }; |
| flags_to_pass = { flag= DLLTOOL_FOR_TARGET ; }; |
| flags_to_pass = { flag= DSYMUTIL_FOR_TARGET ; }; |
| flags_to_pass = { flag= FLAGS_FOR_TARGET ; }; |
| flags_to_pass = { flag= GFORTRAN_FOR_TARGET ; }; |
| flags_to_pass = { flag= GOC_FOR_TARGET ; }; |
| flags_to_pass = { flag= GOCFLAGS_FOR_TARGET ; }; |
| flags_to_pass = { flag= GDC_FOR_TARGET ; }; |
| flags_to_pass = { flag= GDCFLAGS_FOR_TARGET ; }; |
| flags_to_pass = { flag= LD_FOR_TARGET ; }; |
| flags_to_pass = { flag= LIPO_FOR_TARGET ; }; |
| flags_to_pass = { flag= LDFLAGS_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= OBJDUMP_FOR_TARGET ; }; |
| flags_to_pass = { flag= OBJCOPY_FOR_TARGET ; }; |
| flags_to_pass = { flag= RANLIB_FOR_TARGET ; }; |
| flags_to_pass = { flag= READELF_FOR_TARGET ; }; |
| flags_to_pass = { flag= STRIP_FOR_TARGET ; }; |
| flags_to_pass = { flag= WINDRES_FOR_TARGET ; }; |
| flags_to_pass = { flag= WINDMC_FOR_TARGET ; }; |
| |
| // Miscellaneous |
| flags_to_pass = { flag= BUILD_CONFIG ; }; |
| flags_to_pass = { flag= LANGUAGES ; optional=true ; }; |
| flags_to_pass = { flag= LEAN ; }; |
| |
| // Inter-module dependencies |
| |
| // Build modules |
| dependencies = { module=all-build-bison; on=all-build-texinfo; }; |
| dependencies = { module=all-build-flex; on=all-build-texinfo; }; |
| dependencies = { module=all-build-flex; on=all-build-bison; }; |
| dependencies = { module=all-build-flex; on=all-build-m4; }; |
| dependencies = { module=all-build-libiberty; on=all-build-texinfo; }; |
| dependencies = { module=all-build-m4; on=all-build-texinfo; }; |
| dependencies = { module=all-build-fixincludes; on=all-build-libiberty; }; |
| dependencies = { module=all-build-libcpp; on=all-build-libiberty; }; |
| |
| // Host modules specific to gcc. |
| dependencies = { module=configure-gcc; on=configure-intl; }; |
| dependencies = { module=configure-gcc; on=all-gmp; }; |
| dependencies = { module=configure-gcc; on=all-mpfr; }; |
| dependencies = { module=configure-gcc; on=all-mpc; }; |
| dependencies = { module=configure-gcc; on=all-isl; }; |
| dependencies = { module=configure-gcc; on=all-lto-plugin; }; |
| dependencies = { module=configure-gcc; on=all-binutils; }; |
| dependencies = { module=configure-gcc; on=all-gas; }; |
| dependencies = { module=configure-gcc; on=all-ld; }; |
| dependencies = { module=configure-gcc; on=all-gold; }; |
| dependencies = { module=configure-gcc; on=all-libelf; }; |
| dependencies = { module=configure-gcc; on=all-libiconv; }; |
| dependencies = { module=all-gcc; on=all-libiberty; hard=true; }; |
| dependencies = { module=all-gcc; on=all-intl; }; |
| dependencies = { module=all-gcc; on=all-mpfr; }; |
| dependencies = { module=all-gcc; on=all-mpc; }; |
| dependencies = { module=all-gcc; on=all-isl; }; |
| dependencies = { module=all-gcc; on=all-build-texinfo; }; |
| dependencies = { module=all-gcc; on=all-build-bison; }; |
| dependencies = { module=all-gcc; on=all-build-flex; }; |
| dependencies = { module=all-gcc; on=all-build-libiberty; }; |
| dependencies = { module=all-gcc; on=all-build-fixincludes; }; |
| dependencies = { module=all-gcc; on=all-build-libcpp; }; |
| dependencies = { module=all-gcc; on=all-zlib; }; |
| dependencies = { module=all-gcc; on=all-libbacktrace; hard=true; }; |
| dependencies = { module=all-gcc; on=all-libcpp; hard=true; }; |
| dependencies = { module=all-gcc; on=all-libcody; hard=true; }; |
| dependencies = { module=all-gcc; on=all-libdecnumber; hard=true; }; |
| dependencies = { module=all-gcc; on=all-libiberty; }; |
| dependencies = { module=all-gcc; on=all-fixincludes; }; |
| dependencies = { module=all-gcc; on=all-lto-plugin; }; |
| dependencies = { module=all-gcc; on=all-libiconv; }; |
| dependencies = { module=info-gcc; on=all-build-libiberty; }; |
| dependencies = { module=dvi-gcc; on=all-build-libiberty; }; |
| dependencies = { module=pdf-gcc; on=all-build-libiberty; }; |
| dependencies = { module=html-gcc; on=all-build-libiberty; }; |
| dependencies = { module=install-gcc ; on=install-fixincludes; }; |
| dependencies = { module=install-gcc ; on=install-lto-plugin; }; |
| dependencies = { module=install-strip-gcc ; on=install-strip-fixincludes; }; |
| dependencies = { module=install-strip-gcc ; on=install-strip-lto-plugin; }; |
| |
| dependencies = { module=configure-libcpp; on=configure-libiberty; hard=true; }; |
| dependencies = { module=configure-libcpp; on=configure-intl; }; |
| dependencies = { module=configure-libcpp; on=all-libiconv; }; |
| dependencies = { module=all-libcpp; on=all-libiberty; hard=true; }; |
| dependencies = { module=all-libcpp; on=all-intl; }; |
| dependencies = { module=all-libcpp; on=all-libiconv; }; |
| |
| dependencies = { module=all-fixincludes; on=all-libiberty; }; |
| |
| dependencies = { module=all-gnattools; on=all-target-libada; }; |
| dependencies = { module=all-gnattools; on=all-target-libstdc++-v3; }; |
| |
| // Depending on the specific configuration, the LTO plugin will either use the |
| // generic libiberty build or the specific build for linker plugins. |
| dependencies = { module=all-lto-plugin; on=all-libiberty; }; |
| dependencies = { module=all-lto-plugin; on=all-libiberty-linker-plugin; }; |
| |
| dependencies = { module=configure-libcc1; on=configure-gcc; }; |
| dependencies = { module=all-libcc1; on=all-gcc; }; |
| |
| // we want version.o from gcc, and implicitly depend on libcody |
| dependencies = { module=all-c++tools; on=all-gcc; }; |
| dependencies = { module=all-gotools; on=all-target-libgo; }; |
| |
| dependencies = { module=all-utils; on=all-libiberty; }; |
| |
| dependencies = { module=configure-intl; on=all-libiconv; }; |
| dependencies = { module=configure-mpfr; on=all-gmp; }; |
| dependencies = { module=configure-mpc; on=all-mpfr; }; |
| dependencies = { module=configure-isl; on=all-gmp; }; |
| dependencies = { module=all-intl; on=all-libiconv; }; |
| |
| // Host modules specific to gdb. |
| dependencies = { module=configure-gdb; on=all-gmp; }; |
| dependencies = { module=configure-gdb; on=all-mpfr; }; |
| dependencies = { module=configure-gdb; on=all-intl; }; |
| dependencies = { module=configure-gdb; on=configure-sim; }; |
| dependencies = { module=configure-gdb; on=all-bfd; }; |
| dependencies = { module=configure-gdb; on=all-gnulib; }; |
| dependencies = { module=configure-gdb; on=all-gdbsupport; }; |
| // Depend on all-libiconv so that configure checks for iconv |
| // functions will work. |
| dependencies = { module=configure-gdb; on=all-libiconv; }; |
| dependencies = { module=all-gdb; on=all-libiberty; }; |
| dependencies = { module=all-gdb; on=all-libiconv; }; |
| dependencies = { module=all-gdb; on=all-gnulib; }; |
| dependencies = { module=all-gdb; on=all-gdbsupport; }; |
| dependencies = { module=all-gdb; on=all-opcodes; }; |
| dependencies = { module=all-gdb; on=all-readline; }; |
| dependencies = { module=all-gdb; on=all-build-bison; }; |
| dependencies = { module=all-gdb; on=all-sim; }; |
| dependencies = { module=all-gdb; on=all-libdecnumber; }; |
| dependencies = { module=all-gdb; on=all-libtermcap; }; |
| dependencies = { module=all-gdb; on=all-libctf; }; |
| dependencies = { module=all-gdb; on=all-libbacktrace; }; |
| |
| // Host modules specific to gdbserver. |
| dependencies = { module=configure-gdbserver; on=all-gnulib; }; |
| dependencies = { module=all-gdbserver; on=all-gdbsupport; }; |
| dependencies = { module=all-gdbserver; on=all-gnulib; }; |
| dependencies = { module=all-gdbserver; on=all-libiberty; }; |
| |
| dependencies = { module=configure-libgui; on=configure-tcl; }; |
| dependencies = { module=configure-libgui; on=configure-tk; }; |
| dependencies = { module=all-libgui; on=all-tcl; }; |
| dependencies = { module=all-libgui; on=all-tk; }; |
| dependencies = { module=all-libgui; on=all-itcl; }; |
| |
| dependencies = { module=configure-gdbsupport; on=configure-gnulib; }; |
| dependencies = { module=configure-gdbsupport; on=configure-intl; }; |
| dependencies = { module=all-gdbsupport; on=all-gnulib; }; |
| dependencies = { module=all-gdbsupport; on=all-intl; }; |
| |
| // Host modules specific to binutils. |
| // build libsframe before bfd for encoder/decoder support for linking |
| // SFrame sections |
| dependencies = { module=configure-bfd; on=configure-libiberty; hard=true; }; |
| dependencies = { module=configure-bfd; on=configure-intl; }; |
| dependencies = { module=all-bfd; on=all-libiberty; }; |
| dependencies = { module=all-bfd; on=all-intl; }; |
| dependencies = { module=all-bfd; on=all-zlib; }; |
| dependencies = { module=all-bfd; on=all-libsframe; }; |
| dependencies = { module=configure-opcodes; on=configure-libiberty; hard=true; }; |
| dependencies = { module=all-opcodes; on=all-libiberty; }; |
| |
| // We must build gas before binutils, gprof, ld and gold to avoid race |
| // condition in the prev-gcc/as script during bootstrap of combined tree |
| // with GCC and binutils. See PR gas/14899 for details. |
| dependencies = { module=configure-binutils; on=configure-intl; }; |
| dependencies = { module=all-binutils; on=all-libiberty; }; |
| dependencies = { module=all-binutils; on=all-opcodes; }; |
| dependencies = { module=all-binutils; on=all-bfd; }; |
| dependencies = { module=all-binutils; on=all-build-flex; }; |
| dependencies = { module=all-binutils; on=all-build-bison; }; |
| dependencies = { module=all-binutils; on=all-intl; }; |
| dependencies = { module=all-binutils; on=all-gas; }; |
| dependencies = { module=all-binutils; on=all-libctf; }; |
| dependencies = { module=all-ld; on=all-libctf; }; |
| dependencies = { module=all-binutils; on=all-libsframe; }; |
| |
| // We put install-opcodes before install-binutils because the installed |
| // binutils might be on PATH, and they might need the shared opcodes |
| // library. |
| dependencies = { module=install-binutils; on=install-opcodes; }; |
| dependencies = { module=install-strip-binutils; on=install-strip-opcodes; }; |
| |
| // Likewise for ld, libctf, and bfd. |
| dependencies = { module=install-libctf; on=install-bfd; }; |
| dependencies = { module=install-ld; on=install-bfd; }; |
| dependencies = { module=install-ld; on=install-libctf; }; |
| dependencies = { module=install-strip-libctf; on=install-strip-bfd; }; |
| dependencies = { module=install-strip-ld; on=install-strip-bfd; }; |
| dependencies = { module=install-strip-ld; on=install-strip-libctf; }; |
| |
| // libbfd depends on libsframe |
| dependencies = { module=install-bfd; on=install-libsframe; }; |
| dependencies = { module=install-strip-bfd; on=install-strip-libsframe; }; |
| |
| // libopcodes depends on libbfd |
| dependencies = { module=configure-opcodes; on=configure-bfd; hard=true; }; |
| dependencies = { module=install-opcodes; on=install-bfd; }; |
| dependencies = { module=install-strip-opcodes; on=install-strip-bfd; }; |
| |
| dependencies = { module=configure-gas; on=configure-intl; }; |
| dependencies = { module=all-gas; on=all-libiberty; }; |
| dependencies = { module=all-gas; on=all-opcodes; }; |
| dependencies = { module=all-gas; on=all-bfd; }; |
| dependencies = { module=all-gas; on=all-intl; }; |
| dependencies = { module=configure-gprof; on=configure-intl; }; |
| dependencies = { module=all-gprof; on=all-libiberty; }; |
| dependencies = { module=all-gprof; on=all-bfd; }; |
| dependencies = { module=all-gprof; on=all-opcodes; }; |
| dependencies = { module=all-gprof; on=all-intl; }; |
| dependencies = { module=all-gprof; on=all-gas; }; |
| |
| dependencies = { module=configure-gprofng; on=configure-intl; }; |
| dependencies = { module=all-gprofng; on=all-libiberty; }; |
| dependencies = { module=all-gprofng; on=all-bfd; }; |
| dependencies = { module=all-gprofng; on=all-opcodes; }; |
| dependencies = { module=all-gprofng; on=all-intl; }; |
| dependencies = { module=all-gprofng; on=all-gas; }; |
| dependencies = { module=install-gprofng; on=install-opcodes; }; |
| dependencies = { module=install-gprofng; on=install-bfd; }; |
| |
| dependencies = { module=configure-ld; on=configure-intl; }; |
| dependencies = { module=all-ld; on=all-libiberty; }; |
| dependencies = { module=all-ld; on=all-bfd; }; |
| dependencies = { module=all-ld; on=all-opcodes; }; |
| dependencies = { module=all-ld; on=all-build-bison; }; |
| dependencies = { module=all-ld; on=all-build-flex; }; |
| dependencies = { module=all-ld; on=all-intl; }; |
| dependencies = { module=all-ld; on=all-gas; }; |
| dependencies = { module=all-ld; on=all-binutils; }; |
| dependencies = { module=install-ld; on=install-gold; }; |
| dependencies = { module=install-strip-ld; on=install-strip-gold; }; |
| dependencies = { module=configure-gold; on=configure-intl; }; |
| dependencies = { module=all-gold; on=all-libiberty; }; |
| dependencies = { module=all-gold; on=all-intl; }; |
| dependencies = { module=all-gold; on=all-bfd; }; |
| dependencies = { module=all-gold; on=all-build-bison; }; |
| dependencies = { module=all-gold; on=all-gas; }; |
| dependencies = { module=check-gold; on=all-binutils; }; |
| dependencies = { module=check-gold; on=all-gas; }; |
| |
| dependencies = { module=configure-opcodes; on=configure-intl; }; |
| dependencies = { module=all-opcodes; on=all-bfd; }; |
| dependencies = { module=all-opcodes; on=all-libiberty; }; |
| dependencies = { module=all-opcodes; on=all-intl; }; |
| |
| // Other host modules in the 'src' repository. |
| dependencies = { module=all-dejagnu; on=all-tcl; }; |
| dependencies = { module=all-dejagnu; on=all-expect; }; |
| dependencies = { module=all-dejagnu; on=all-tk; }; |
| dependencies = { module=configure-expect; on=configure-tcl; }; |
| dependencies = { module=configure-expect; on=configure-tk; }; |
| dependencies = { module=all-expect; on=all-tcl; }; |
| dependencies = { module=all-expect; on=all-tk; }; |
| |
| // We put install-tcl before install-itcl because itcl wants to run a |
| // program on installation which uses the Tcl libraries. |
| dependencies = { module=configure-itcl; on=configure-tcl; }; |
| dependencies = { module=configure-itcl; on=configure-tk; }; |
| dependencies = { module=all-itcl; on=all-tcl; }; |
| dependencies = { module=all-itcl; on=all-tk; }; |
| dependencies = { module=install-itcl; on=install-tcl; }; |
| dependencies = { module=install-strip-itcl; on=install-strip-tcl; }; |
| |
| dependencies = { module=configure-tk; on=configure-tcl; }; |
| dependencies = { module=all-tk; on=all-tcl; }; |
| |
| dependencies = { module=all-sid; on=all-libiberty; }; |
| dependencies = { module=all-sid; on=all-bfd; }; |
| dependencies = { module=all-sid; on=all-opcodes; }; |
| dependencies = { module=all-sid; on=all-tcl; }; |
| dependencies = { module=all-sid; on=all-tk; }; |
| dependencies = { module=install-sid; on=install-tcl; }; |
| dependencies = { module=install-strip-sid; on=install-strip-tcl; }; |
| dependencies = { module=install-sid; on=install-tk; }; |
| dependencies = { module=install-strip-sid; on=install-strip-tk; }; |
| |
| dependencies = { module=configure-sim; on=all-gnulib; }; |
| dependencies = { module=configure-sim; on=configure-intl; }; |
| dependencies = { module=all-sim; on=all-intl; }; |
| dependencies = { module=all-sim; on=all-libiberty; }; |
| dependencies = { module=all-sim; on=all-bfd; }; |
| dependencies = { module=all-sim; on=all-opcodes; }; |
| dependencies = { module=configure-sim; on=all-readline; }; |
| |
| // Other host modules. |
| dependencies = { module=all-fastjar; on=all-zlib; }; |
| dependencies = { module=all-fastjar; on=all-build-texinfo; }; |
| dependencies = { module=all-fastjar; on=all-libiberty; }; |
| dependencies = { module=all-libctf; on=all-libiberty; hard=true; }; |
| dependencies = { module=all-libctf; on=all-bfd; }; |
| dependencies = { module=all-libctf; on=all-zlib; }; |
| // So that checking for ELF support in BFD from libctf configure is possible. |
| dependencies = { module=configure-libctf; on=all-bfd; }; |
| dependencies = { module=configure-libctf; on=all-intl; }; |
| dependencies = { module=configure-libctf; on=all-zlib; }; |
| dependencies = { module=configure-libctf; on=all-libiconv; }; |
| dependencies = { module=check-libctf; on=all-ld; }; |
| |
| // The Makefiles in gdb and gdbserver pull in a file that configure |
| // generates in the gnulib directory, so distclean gnulib only after |
| // gdb and gdbserver. |
| dependencies = { module=distclean-gnulib; on=distclean-gdb; }; |
| dependencies = { module=distclean-gnulib; on=distclean-gdbserver; }; |
| |
| // Warning, these are not well tested. |
| dependencies = { module=all-bison; on=all-intl; }; |
| dependencies = { module=all-bison; on=all-build-texinfo; }; |
| dependencies = { module=all-flex; on=all-build-bison; }; |
| dependencies = { module=all-flex; on=all-intl; }; |
| dependencies = { module=all-flex; on=all-m4; }; |
| dependencies = { module=all-flex; on=all-build-texinfo; }; |
| dependencies = { module=all-m4; on=all-intl; }; |
| dependencies = { module=all-m4; on=all-build-texinfo; }; |
| |
| // Target modules. These can also have dependencies on the language |
| // environment (e.g. on libstdc++). By default target modules depend |
| // on libgcc and newlib/libgloss. |
| lang_env_dependencies = { module=libitm; cxx=true; }; |
| lang_env_dependencies = { module=libffi; cxx=true; }; |
| lang_env_dependencies = { module=liboffloadmic; cxx=true; }; |
| lang_env_dependencies = { module=newlib; no_c=true; }; |
| lang_env_dependencies = { module=libgloss; no_c=true; }; |
| lang_env_dependencies = { module=libgcc; no_gcc=true; no_c=true; }; |
| // libiberty does not depend on newlib or libgloss because it must be |
| // built newlib on some targets (e.g. Cygwin). It still needs |
| // a dependency on libgcc for native targets to configure. |
| lang_env_dependencies = { module=libiberty; no_c=true; }; |
| |
| dependencies = { module=configure-target-fastjar; on=configure-target-zlib; }; |
| dependencies = { module=all-target-fastjar; on=all-target-zlib; }; |
| dependencies = { module=configure-target-libgo; on=configure-target-libffi; }; |
| dependencies = { module=configure-target-libgo; on=all-target-libstdc++-v3; }; |
| dependencies = { module=configure-target-libffi; on=all-target-libstdc++-v3; }; |
| dependencies = { module=all-target-libgo; on=all-target-libbacktrace; }; |
| dependencies = { module=all-target-libgo; on=all-target-libffi; }; |
| dependencies = { module=all-target-libgo; on=all-target-libatomic; }; |
| dependencies = { module=configure-target-libphobos; on=configure-target-libbacktrace; }; |
| dependencies = { module=configure-target-libphobos; on=configure-target-zlib; }; |
| dependencies = { module=all-target-libphobos; on=all-target-libbacktrace; }; |
| dependencies = { module=all-target-libphobos; on=all-target-zlib; }; |
| dependencies = { module=all-target-libphobos; on=all-target-libatomic; }; |
| dependencies = { module=configure-target-libstdc++-v3; on=configure-target-libgomp; }; |
| dependencies = { module=configure-target-liboffloadmic; on=configure-target-libgomp; }; |
| dependencies = { module=configure-target-libsanitizer; on=all-target-libstdc++-v3; }; |
| dependencies = { module=configure-target-libvtv; on=all-target-libstdc++-v3; }; |
| // parallel_list.o and parallel_settings.o depend on omp.h, which is |
| // generated by the libgomp configure. Unfortunately, due to the use of |
| // recursive make, we can't be that specific. |
| dependencies = { module=all-target-libstdc++-v3; on=configure-target-libgomp; }; |
| dependencies = { module=all-target-liboffloadmic; on=all-target-libgomp; }; |
| |
| dependencies = { module=install-target-libgo; on=install-target-libatomic; }; |
| dependencies = { module=install-target-libgfortran; on=install-target-libquadmath; }; |
| dependencies = { module=install-target-libgfortran; on=install-target-libgcc; }; |
| dependencies = { module=install-target-libphobos; on=install-target-libatomic; }; |
| dependencies = { module=install-target-libsanitizer; on=install-target-libstdc++-v3; }; |
| dependencies = { module=install-target-libsanitizer; on=install-target-libgcc; }; |
| dependencies = { module=install-target-libvtv; on=install-target-libstdc++-v3; }; |
| dependencies = { module=install-target-libvtv; on=install-target-libgcc; }; |
| dependencies = { module=install-target-liboffloadmic; on=install-target-libstdc++-v3; }; |
| dependencies = { module=install-target-liboffloadmic; on=install-target-libgcc; }; |
| dependencies = { module=install-target-libitm; on=install-target-libgcc; }; |
| dependencies = { module=install-target-libobjc; on=install-target-libgcc; }; |
| dependencies = { module=install-target-libstdc++-v3; on=install-target-libgcc; }; |
| |
| // Target modules in the 'src' repository. |
| lang_env_dependencies = { module=libtermcap; }; |
| lang_env_dependencies = { module=rda; }; |
| lang_env_dependencies = { module=winsup; }; |
| |
| dependencies = { module=all-target-libgloss; on=all-target-newlib; }; |
| dependencies = { module=all-target-winsup; on=all-target-libtermcap; }; |
| dependencies = { module=configure-target-newlib; on=all-binutils; }; |
| dependencies = { module=configure-target-newlib; on=all-ld; }; |
| dependencies = { module=configure-target-libgfortran; on=all-target-libquadmath; }; |
| dependencies = { module=configure-target-libgfortran; on=all-target-libbacktrace; }; |
| |
| languages = { language=c; gcc-check-target=check-gcc; }; |
| languages = { language=c++; gcc-check-target=check-c++; |
| lib-check-target=check-target-libstdc++-v3; |
| lib-check-target=check-target-libitm-c++; |
| lib-check-target=check-target-libgomp-c++; }; |
| languages = { language=fortran; gcc-check-target=check-fortran; |
| lib-check-target=check-target-libquadmath; |
| lib-check-target=check-target-libgfortran; |
| lib-check-target=check-target-libgomp-fortran; }; |
| languages = { language=ada; gcc-check-target=check-ada; |
| lib-check-target=check-target-libada; }; |
| languages = { language=objc; gcc-check-target=check-objc; |
| lib-check-target=check-target-libobjc; }; |
| languages = { language=obj-c++; gcc-check-target=check-obj-c++; }; |
| languages = { language=go; gcc-check-target=check-go; |
| lib-check-target=check-target-libgo; |
| lib-check-target=check-gotools; }; |
| languages = { language=d; gcc-check-target=check-d; |
| lib-check-target=check-target-libphobos; }; |
| languages = { language=jit; gcc-check-target=check-jit; }; |
| |
| // Toplevel bootstrap |
| bootstrap_stage = { id=1 ; }; |
| bootstrap_stage = { |
| id=2 ; prev=1 ; |
| bootstrap_target=bootstrap2 ; }; |
| bootstrap_stage = { |
| id=3 ; prev=2 ; lean=1 ; |
| compare_target=compare ; |
| bootstrap_target=bootstrap ; |
| cleanstrap_target=cleanstrap ; }; |
| bootstrap_stage = { |
| id=4 ; prev=3 ; lean=2 ; |
| compare_target=compare3 ; |
| bootstrap_target=bootstrap4 ; }; |
| bootstrap_stage = { |
| id=profile ; prev=1 ; }; |
| bootstrap_stage = { |
| id=train; prev=profile ; } ; |
| bootstrap_stage = { |
| id=feedback ; prev=train; |
| bootstrap_target=profiledbootstrap ; }; |
| bootstrap_stage = { |
| id=autoprofile ; prev=1 ; |
| autoprofile="$$s/gcc/config/i386/$(AUTO_PROFILE)" ; }; |
| bootstrap_stage = { |
| id=autofeedback ; prev=autoprofile ; |
| bootstrap_target=autoprofiledbootstrap ; |
| profile_data="PERF_DATA=perf.data" ; }; |