From 8622002ffc71ff5777a7221232ba02c7a7e7d004 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Sun, 23 Jan 2022 23:24:52 -0500 Subject: libgloss: move to ../config/multi.m4 for multilib logic The current libgloss multilib logic is almost exactly the same as the config/multi.m4, and the differences should be minor, so switch over to that to delete custom logic on ourside. The insertions here look larger and that's because none of the scripts were declaring --enable-multilib explicitly even though they checked the flag and changed behavior. --- libgloss/arm/aclocal.m4 | 1 + libgloss/arm/configure | 77 ++++++++++++++++++++++++++++++++++++++--------- libgloss/arm/configure.ac | 21 +++---------- 3 files changed, 68 insertions(+), 31 deletions(-) (limited to 'libgloss/arm') diff --git a/libgloss/arm/aclocal.m4 b/libgloss/arm/aclocal.m4 index 24271f381..fab8217a4 100644 --- a/libgloss/arm/aclocal.m4 +++ b/libgloss/arm/aclocal.m4 @@ -379,5 +379,6 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) m4_include([../../config/depstand.m4]) m4_include([../../config/lead-dot.m4]) +m4_include([../../config/multi.m4]) m4_include([../../config/override.m4]) m4_include([../acinclude.m4]) diff --git a/libgloss/arm/configure b/libgloss/arm/configure index bfa8bdb3d..8e3866b56 100755 --- a/libgloss/arm/configure +++ b/libgloss/arm/configure @@ -584,6 +584,7 @@ PACKAGE_URL= ac_unique_file="redboot-crt0.S" ac_subst_vars='LTLIBOBJS LIBOBJS +multi_basedir subdirs host_makefile_frag_path objtype @@ -665,6 +666,7 @@ ac_user_opts=' enable_option_checking enable_newlib_supplied_syscalls enable_dependency_tracking +enable_multilib ' ac_precious_vars='build_alias host_alias @@ -1293,6 +1295,7 @@ Optional Features: do not reject slow dependency extractors --disable-dependency-tracking speeds up one-time build + --enable-multilib build many library versions (default) Some influential environment variables: CCAS assembler compiler command (defaults to CC) @@ -2587,6 +2590,44 @@ if test -d "${srcdir}/cpu-init"; then fi +# Default to --enable-multilib +# Check whether --enable-multilib was given. +if test "${enable_multilib+set}" = set; then : + enableval=$enable_multilib; case "$enableval" in + yes) multilib=yes ;; + no) multilib=no ;; + *) as_fn_error $? "bad value $enableval for multilib option" "$LINENO" 5 ;; + esac +else + multilib=yes +fi + + +# We may get other options which we leave undocumented: +# --with-target-subdir, --with-multisrctop, --with-multisubdir +# See config-ml.in if you want the gory details. + +if test "$srcdir" = "."; then + if test "$with_target_subdir" != "."; then + multi_basedir="$srcdir/$with_multisrctop../../.." + else + multi_basedir="$srcdir/$with_multisrctop../.." + fi +else + multi_basedir="$srcdir/../.." +fi + + +# Even if the default multilib is not a cross compilation, +# it may be that some of the other multilibs are. +if test $cross_compiling = no && test $multilib = yes \ + && test "x${with_multisubdir}" != x ; then + cross_compiling=maybe +fi + +ac_config_commands="$ac_config_commands default-1" + + ac_config_files="$ac_config_files Makefile" cat >confcache <<\_ACEOF @@ -3303,18 +3344,20 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # INIT-COMMANDS # AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" -srcdir=${srcdir} - target=${target} - with_multisubdir=${with_multisubdir} - ac_configure_args="${ac_configure_args} --enable-multilib" - CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} - -srcdir=${srcdir} -target=${target} -with_multisubdir=${with_multisubdir} -ac_configure_args="${ac_configure_args} --enable-multilib" -CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} +srcdir="$srcdir" +host="$host" +target="$target" +with_multisubdir="$with_multisubdir" +with_multisrctop="$with_multisrctop" +with_target_subdir="$with_target_subdir" +ac_configure_args="${multilib_arg} ${ac_configure_args}" +multi_basedir="$multi_basedir" +CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} +CC="$CC" +CXX="$CXX" +GFORTRAN="$GFORTRAN" +GCJ="$GCJ" _ACEOF @@ -3326,6 +3369,7 @@ do case $ac_config_target in "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "cpu-init/Makefile") CONFIG_FILES="$CONFIG_FILES cpu-init/Makefile" ;; + "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; @@ -3882,8 +3926,14 @@ $as_echo X"$file" | done } ;; - "cpu-init/Makefile":F) . ${srcdir}/../../config-ml.in ;; - "Makefile":F) . ${srcdir}/../../config-ml.in ;; + "default-1":C) +# Only add multilib support code if we just rebuilt the top-level +# Makefile. +case " $CONFIG_FILES " in + *" Makefile "*) + ac_file=Makefile . ${multi_basedir}/config-ml.in + ;; +esac ;; esac done # for ac_tag @@ -3922,4 +3972,3 @@ if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi - diff --git a/libgloss/arm/configure.ac b/libgloss/arm/configure.ac index 806020b04..2b98b5453 100644 --- a/libgloss/arm/configure.ac +++ b/libgloss/arm/configure.ac @@ -62,24 +62,11 @@ AC_SUBST_FILE(host_makefile_frag) # Configure cpu init plug-ins if test -d "${srcdir}/cpu-init"; then subdirs="${subdirs} cpu-init" - AC_CONFIG_FILES(cpu-init/Makefile, - . ${srcdir}/../../config-ml.in, - srcdir=${srcdir} - target=${target} - with_multisubdir=${with_multisubdir} - ac_configure_args="${ac_configure_args} --enable-multilib" - CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} - ) + AC_CONFIG_FILES([cpu-init/Makefile]) AC_SUBST(subdirs) fi -AC_CONFIG_FILES(Makefile, -. ${srcdir}/../../config-ml.in, -srcdir=${srcdir} -target=${target} -with_multisubdir=${with_multisubdir} -ac_configure_args="${ac_configure_args} --enable-multilib" -CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} -) -AC_OUTPUT +AM_ENABLE_MULTILIB(, ../..) +AC_CONFIG_FILES([Makefile]) +AC_OUTPUT -- cgit v1.2.3