X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=configure.in;h=87ab222891f4717bdc44b5799fc165578c0bd1c8;hb=f6347e16334910d73f974b8b35092a979ddabb04;hp=b4e8099cbb072896d8b2236e629f052a9bf0ad77;hpb=5b474aa89ab1bc0ebbd9572f556106f0014acfbb;p=binutils-gdb.git diff --git a/configure.in b/configure.in index b4e8099cbb0..87ab222891f 100644 --- a/configure.in +++ b/configure.in @@ -164,6 +164,16 @@ target_tools="target-examples target-groff target-gperf target-rda" configdirs=`echo ${host_libs} ${host_tools}` target_configdirs=`echo ${target_libs} ${target_tools}` +# Only make build modules if build != host. +# This should be done more generally, but at the moment it doesn't matter. +if test ${host_alias} != ${build_alias} ; then + # This is the only build module. + build_modules=libiberty +else + build_modules= +fi + + ################################################################################ srcname="gnu development package" @@ -179,9 +189,8 @@ else is_cross_compiler=yes fi -# We always want to use the same name for this directory, so that dejagnu -# can reliably find it. -target_subdir=${target_alias} +# Find the build and target subdirs. +GCC_TOPLEV_SUBDIRS if test ! -d ${target_subdir} ; then if mkdir ${target_subdir} ; then true @@ -191,9 +200,6 @@ if test ! -d ${target_subdir} ; then fi fi -build_prefix=build- -build_subdir=${build_prefix}${build_alias} - if test x"${build_alias}" != x"${host}" ; then if test ! -d ${build_subdir} ; then if mkdir ${build_subdir} ; then true @@ -278,17 +284,17 @@ case "${host}" in hppa*64*-*-*) noconfigdirs="$noconfigdirs byacc" ;; - i[[3456]]86-*-vsta) + i[[3456789]]86-*-vsta) noconfigdirs="tcl expect dejagnu make texinfo bison patch flex byacc send-pr gprof uudecode dejagnu diff guile perl itcl tix gnuserv gettext" ;; - i[[3456]]86-*-go32* | i[[3456]]86-*-msdosdjgpp*) + i[[3456789]]86-*-go32* | i[[3456789]]86-*-msdosdjgpp*) noconfigdirs="tcl tk expect dejagnu send-pr uudecode guile itcl tix gnuserv libffi" ;; - i[[3456]]86-*-mingw32*) + i[[3456789]]86-*-mingw32*) # noconfigdirs="tcl tk expect dejagnu make texinfo bison patch flex byacc send-pr uudecode dejagnu diff guile perl itcl tix gnuserv" noconfigdirs="expect dejagnu autoconf automake send-pr rcs guile perl texinfo libtool" ;; - i[[3456]]86-*-beos*) + i[[3456789]]86-*-beos*) noconfigdirs="$noconfigdirs tk itcl tix libgui gdb" ;; *-*-cygwin*) @@ -495,13 +501,13 @@ case "${target}" in # No gdb or ld support yet. noconfigdirs="$noconfigdirs tix readline mmalloc libgui itcl gdb ld" ;; - i[[3456]]86-*-coff | i[[3456]]86-*-elf) + i[[3456789]]86-*-coff | i[[3456789]]86-*-elf) noconfigdirs="$noconfigdirs ${libgcj}" ;; - i[[34567]]86-*-freebsd*) + i[[3456789]]86-*-freebsd*) noconfigdirs="$noconfigdirs target-newlib target-libgloss" ;; - i[[3456]]86-*-linux*) + i[[3456789]]86-*-linux*) # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's # not build java stuff by default. case "${target}" in @@ -520,13 +526,13 @@ case "${target}" in # if the --with-newlib option has been given, because otherwise # 'target-newlib' will appear in skipdirs. ;; - i[[3456]]86-*-mingw32*) + i[[3456789]]86-*-mingw32*) target_configdirs="$target_configdirs target-mingw" noconfigdirs="$noconfigdirs expect target-libgloss ${libgcj}" # Can't build gdb for mingw32 if not native. case "${host}" in - i[[3456]]86-*-mingw32) ;; # keep gdb tcl tk expect etc. + i[[3456789]]86-*-mingw32) ;; # keep gdb tcl tk expect etc. *) noconfigdirs="$noconfigdirs gdb tcl tk expect itcl tix gnuserv" ;; esac @@ -544,24 +550,24 @@ case "${target}" in ;; esac ;; - i[[3456]]86-*-pe) + i[[3456789]]86-*-pe) noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}" ;; - i[[3456]]86-*-sco3.2v5*) + i[[3456789]]86-*-sco3.2v5*) # The linker does not yet know about weak symbols in COFF, # and is not configured to handle mixed ELF and COFF. noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}" ;; - i[[3456]]86-*-sco*) + i[[3456789]]86-*-sco*) noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}" ;; - i[[3456]]86-*-solaris2*) + i[[3456789]]86-*-solaris2*) noconfigdirs="$noconfigdirs target-libgloss" ;; - i[[3456]]86-*-sysv4*) + i[[3456789]]86-*-sysv4*) noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" ;; - i[[3456]]86-*-beos*) + i[[3456789]]86-*-beos*) noconfigdirs="$noconfigdirs gdb target-newlib target-libgloss ${libgcj}" ;; m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*) @@ -607,11 +613,6 @@ case "${target}" in powerpc-*-eabi) noconfigdirs="$noconfigdirs ${libgcj}" ;; - powerpc64*-*-linux*) - noconfigdirs="$noconfigdirs target-newlib target-libgloss" - # not yet ported. - noconfigdirs="$noconfigdirs target-libffi" - ;; rs6000-*-lynxos*) noconfigdirs="$noconfigdirs target-newlib gprof ${libgcj}" ;; @@ -655,9 +656,9 @@ case "${target}" in ;; sh-*-*) case "${host}" in - i[[3456]]86-*-vsta) ;; # don't add gprof back in - i[[3456]]86-*-go32*) ;; # don't add gprof back in - i[[3456]]86-*-msdosdjgpp*) ;; # don't add gprof back in + i[[3456789]]86-*-vsta) ;; # don't add gprof back in + i[[3456789]]86-*-go32*) ;; # don't add gprof back in + i[[3456789]]86-*-msdosdjgpp*) ;; # don't add gprof back in *) skipdirs=`echo " ${skipdirs} " | sed -e 's/ gprof / /'` ;; esac noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" @@ -1052,19 +1053,19 @@ case "${host}" in i370-ibm-opened*) tentative_cc="c89" ;; - i[[3456]]86-*-sysv5*) + i[[3456789]]86-*-sysv5*) host_makefile_frag="config/mh-sysv5" ;; - i[[3456]]86-*-dgux*) + i[[3456789]]86-*-dgux*) tentative_cc="gcc -Wall -ansi -D__using_DGUX" host_makefile_frag="config/mh-dgux386" ;; - i[[3456]]86-ncr-sysv4.3*) + i[[3456789]]86-ncr-sysv4.3*) # The MetaWare compiler will generate a copyright message unless you # turn it off by adding the -Hnocopyr flag. tentative_cc="cc -Hnocopyr" ;; - i[[3456]]86-ncr-sysv4*) + i[[3456789]]86-ncr-sysv4*) # for an NCR 3000 (i486/SVR4) system. # The NCR 3000 ships with a MetaWare compiler installed as /bin/cc. # This compiler not only emits obnoxious copyright messages every time @@ -1073,21 +1074,21 @@ case "${host}" in tentative_cc="/usr/ccs/ATT/cc" host_makefile_frag="config/mh-ncr3000" ;; - i[[3456]]86-*-sco3.2v5*) + i[[3456789]]86-*-sco3.2v5*) ;; - i[[3456]]86-*-sco*) + i[[3456789]]86-*-sco*) # The native C compiler botches some simple uses of const. Unfortunately, # it doesn't defined anything like "__sco__" for us to test for in ansidecl.h. tentative_cc="cc -Dconst=" host_makefile_frag="config/mh-sco" ;; - i[[3456]]86-*-udk*) + i[[3456789]]86-*-udk*) host_makefile_frag="config/mh-sysv5" ;; - i[[3456]]86-*-solaris2*) + i[[3456789]]86-*-solaris2*) host_makefile_frag="config/mh-sysv4" ;; - i[[3456]]86-*-msdosdjgpp*) + i[[3456789]]86-*-msdosdjgpp*) host_makefile_frag="config/mh-djgpp" ;; *-cygwin*) @@ -1137,7 +1138,7 @@ extra_nmflags_for_target= extra_ranlibflags_for_target= target_makefile_frag=/dev/null case "${target}" in - i[[3456]]86-*-netware*) + i[[3456789]]86-*-netware*) target_makefile_frag="config/mt-netware" ;; powerpc-*-netware*) @@ -1271,7 +1272,7 @@ fi # Some systems (e.g., one of the i386-aix systems the gas testers are # using) don't handle "\$" correctly, so don't use it here. -tooldir='$(exec_prefix)'/${target_alias} +tooldir='${exec_prefix}'/${target_alias} build_tooldir=${tooldir} # Generate a default definition for YACC. This is used if the makefile can't @@ -1609,59 +1610,14 @@ esac target_configdirs=`echo "${target_configdirs}" | sed -e 's/target-//g'` # This is the final value for target_configdirs. configdirs already -# has its final value. It's time to create some lists of valid targets. - -# While at that, we remove Makefiles if we were started for recursive -# configuration, such that the top-level Makefile reconfigures them, -# like we used to do when configure itself was recursive. +# has its final value, as does build_modules. It's time to create some +# lists of valid targets. all_build_modules= configure_build_modules= -# Only make build modules if build != host. -# This should be done more generally, but at the moment it doesn't matter. -if test ${host_alias} != ${build_alias} ; then - for module in libiberty ; do - all_build_modules=all-build-${module} - configure_build_modules=configure-build-${module} - if test -z "${no_recursion}" \ - && test -f ${build_subdir}/${module}/Makefile; then - echo 1>&2 "*** removing ${build_subdir}/${module}/Makefile to force reconfigure" - rm -f ${build_subdir}/${module}/Makefile - fi - done -fi - -all_host_modules= -check_host_modules= -install_host_modules= -configure_host_modules= -for module in ${configdirs} ; do - all_host_modules="${all_host_modules} all-${module}" - check_host_modules="${check_host_modules} check-${module}" - install_host_modules="${install_host_modules} install-${module}" - configure_host_modules="${configure_host_modules} configure-${module}" - if test -z "${no_recursion}" \ - && test -f ${module}/Makefile; then - echo 1>&2 "*** removing ${module}/Makefile to force reconfigure" - rm -f ${module}/Makefile - fi -done -install_host_modules_nogcc=`echo "${install_host_modules}" | sed -e 's/install-gcc//g'` - -all_target_modules= -check_target_modules= -install_target_modules= -configure_target_modules= -for module in ${target_configdirs} ; do - all_target_modules="${all_target_modules} all-target-${module}" - check_target_modules="${check_target_modules} check-target-${module}" - install_target_modules="${install_target_modules} install-target-${module}" - configure_target_modules="${configure_target_modules} configure-target-${module}" - if test -z "${no_recursion}" \ - && test -f ${target_subdir}/${module}/Makefile; then - echo 1>&2 "*** removing ${target_subdir}/${module}/Makefile to force reconfigure" - rm -f ${target_subdir}/${module}/Makefile - fi +for module in ${build_modules} ; do + all_build_modules=all-build-${module} + configure_build_modules=configure-build-${module} done # Determine whether gdb needs tk/tcl or not. @@ -1691,13 +1647,49 @@ case "$enable_gdbtk" in esac # Create the 'maybe dependencies'. This uses a temporary file. + +# While at that, we remove Makefiles if we were started for recursive +# configuration, so that the top-level Makefile reconfigures them, +# like we used to do when configure itself was recursive. rm -f maybedep.tmp echo '# maybedep.tmp' > maybedep.tmp -for item in ${all_build_modules} ${all_host_modules} ${all_target_modules} \ - ${install_host_modules} ${install_target_modules} \ - ${configure_build_modules} ${configure_host_modules} ${configure_target_modules} \ - ; do - echo "maybe-${item}: ${item}" >> maybedep.tmp + +# Make-targets which may need maybe dependencies. +mts="configure all install check" + +# Loop over modules and make-targets. +for module in ${build_modules} ; do + if test -z "${no_recursion}" \ + && test -f ${build_subdir}/${module}/Makefile; then + echo 1>&2 "*** removing ${build_subdir}/${module}/Makefile to force reconfigure" + rm -f ${build_subdir}/${module}/Makefile + fi + for mt in ${mts} ; do + case ${mt} in + install) ;; # No installing build modules. + *) echo "maybe-${mt}-build-${module}: ${mt}-build-${module}" >> maybedep.tmp ;; + esac + done +done +for module in ${configdirs} ; do + if test -z "${no_recursion}" \ + && test -f ${module}/Makefile; then + echo 1>&2 "*** removing ${module}/Makefile to force reconfigure" + rm -f ${module}/Makefile + fi + for mt in ${mts} ; do + echo "maybe-${mt}-${module}: ${mt}-${module}" >> maybedep.tmp + done +done +for module in ${target_configdirs} ; do + if test -z "${no_recursion}" \ + && test -f ${target_subdir}/${module}/Makefile; then + echo 1>&2 "*** removing ${target_subdir}/${module}/Makefile to force reconfigure" + rm -f ${target_subdir}/${module}/Makefile + fi + for mt in ${mts} ; do + echo "maybe-${mt}-target-${module}: ${mt}-target-${module}" >> maybedep.tmp + done done maybe_dependencies=maybedep.tmp AC_SUBST_FILE(maybe_dependencies) @@ -1762,7 +1754,7 @@ baseargs=`echo " ${ac_configure_args} " | \ -e 's/ -host[[= ]][[^ ]]* / /' \ -e 's/ -build[[= ]][[^ ]]* / /' \ -e 's/ -target[[= ]][[^ ]]* / /' \ - -e 's/ [[^ -][^ ]*] / /' \ + -e "s/ [[^' -][^ ]*] / /" \ -e 's/^ *//;s/ *$//'` # For the build-side libraries, we just need to pretend we're native, @@ -1832,7 +1824,7 @@ case " $target_configdirs " in *" --with-newlib "*) case "$target" in *-cygwin*) - FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/$(TARGET_SUBDIR)/winsup -L$$r/$(TARGET_SUBDIR)/winsup/cygwin -L$$r/$(TARGET_SUBDIR)/winsup/w32api/lib -isystem $$s/winsup/include -isystem $$s/winsup/cygwin/include -isystem $$s/winsup/w32api/include -isystem $$s/newlib/libc/sys/cygwin -isystem $$s/newlib/libc/sys/cygwin32' ;; + FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -L$$r/$(TARGET_SUBDIR)/winsup -L$$r/$(TARGET_SUBDIR)/winsup/cygwin -L$$r/$(TARGET_SUBDIR)/winsup/w32api/lib -isystem $$s/winsup/include -isystem $$s/winsup/cygwin/include -isystem $$s/winsup/w32api/include' ;; esac # If we're not building GCC, don't discard standard headers. @@ -1859,7 +1851,7 @@ case " $target_configdirs " in fi case "${target}-${is_cross_compiler}" in - i[[3456]]86-*-linux*-no) + i[[3456789]]86-*-linux*-no) # Here host == target, so we don't need to build gcc, # so we don't want to discard standard headers. FLAGS_FOR_TARGET=`echo " $FLAGS_FOR_TARGET " | sed -e 's/ -nostdinc / /'` @@ -1982,7 +1974,6 @@ AC_SUBST(gxx_include_dir) AC_SUBST(libstdcxx_incdir) # Build module lists & subconfigure args. -AC_SUBST(build_subdir) AC_SUBST(build_configargs) AC_SUBST(configure_build_modules) AC_SUBST(all_build_modules) @@ -1990,20 +1981,10 @@ AC_SUBST(all_build_modules) # Host module lists & subconfigure args. AC_SUBST(host_configargs) AC_SUBST(configdirs) -AC_SUBST(configure_host_modules) -AC_SUBST(all_host_modules) -AC_SUBST(check_host_modules) -AC_SUBST(install_host_modules) -AC_SUBST(install_host_modules_nogcc) # Target module lists & subconfigure args. -AC_SUBST(target_subdir) AC_SUBST(target_configargs) AC_SUBST(target_configdirs) -AC_SUBST(configure_target_modules) -AC_SUBST(all_target_modules) -AC_SUBST(check_target_modules) -AC_SUBST(install_target_modules) # Build tools. AC_SUBST(BISON)