diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2000-10-18 13:14:49 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2000-10-18 13:14:49 +0000 |
commit | aac7fdd28cf1ffbce75e88a1174e75bf5dfa0f30 (patch) | |
tree | c738bfae54c1916b7637adb784317dc20e3d32b7 /macros/target.m4 | |
parent | 2000-10-18 Joel Sherrill <joel@OARcorp.com> (diff) | |
download | rtems-aac7fdd28cf1ffbce75e88a1174e75bf5dfa0f30.tar.bz2 |
2000-09-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* macros: New directory.
* macros/bsp-alias.m4: new file.
* macros/canonical-host.m4: new file.
* macros/canonical-target-name.m4: new file.
* macros/canonicalize-tools.m4: new file.
* macros/check-bsp-cache.m4: new file.
* macros/check-bsps.m4: new file.
* macros/check-cpu.m4: new file.
* macros/rtems-debug.m4: new file.
* macros/check-cxx.m4: new file.
* macros/check-itron.m4: new file.
* macros/check-multiprocessing.m4: new file.
* macros/check-networking.m4: new file.
* macros/check-newlib.m4: new file.
* macros/check-posix.m4: new file.
* macros/check-rdbg.m4: new file.
* macros/enable-bare.m4: new file.
* macros/enable-cxx.m4: new file.
* macros/enable-gcc28.m4: new file.
* macros/enable-inlines.m4: new file.
* macros/enable-itron.m4: new file.
* macros/enable-libcdir.m4: new file.
* macros/enable-multiprocessing.m4: new file.
* macros/enable-networking.m4: new file.
* macros/enable-posix.m4: new file.
* macros/enable-rdbg.m4: new file.
* macros/enable-rtemsbsp.m4: new file.
* macros/enable-tests.m4: new file.
* macros/gcc-pipe.m4: new file.
* macros/gcc-specs.m4: new file.
* macros/i386-gas-code16.m4: new file.
* macros/path-ksh.m4: new file.
* macros/path-perl.m4: new file.
* macros/prog-cc.m4: new file.
* macros/prog-cxx.m4: new file.
* macros/project-root.m4: new file.
* macros/rtems-top.m4: new file.
* macros/sysv-ipc.m4: new file.
* macros/target.m4: new file.
* macros/rtems-test-no-pause.m4: new file.
* macros/multilib.m4: new file.
* macros/tool-paths.m4: new file.
* macros/tool-prefix.m4: new file.
Diffstat (limited to '')
-rw-r--r-- | macros/target.m4 | 127 |
1 files changed, 127 insertions, 0 deletions
diff --git a/macros/target.m4 b/macros/target.m4 new file mode 100644 index 0000000000..517811d51b --- /dev/null +++ b/macros/target.m4 @@ -0,0 +1,127 @@ +dnl $Id$ + +AC_DEFUN(RTEMS_CONFIG_SUBDIRS, +[ +define([RTEMS_TGT_SUBDIRS], +ifdef([RTEMS_TGT_SUBDIRS], [RTEMS_TGT_SUBDIRS ],)[$1])dnl +target_subdirs="RTEMS_TGT_SUBDIRS" +AC_SUBST(target_subdirs) +]) + +dnl Derived from automake-1.4's AC_OUTPUT_SUBDIRS +AC_DEFUN(RTEMS_OUTPUT_SUBDIRS, +[ +if test "$no_recursion" != yes; then + if test $target_alias != $host_alias; then + target_subdir="$target_alias" + else + target_subdir="." + fi + # Remove --cache-file and --srcdir arguments so they do not pile up. + ac_sub_configure_args= + ac_prev= + for ac_arg in $ac_configure_args; do + if test -n "$ac_prev"; then + ac_prev= + continue + fi + case "$ac_arg" in + -cache-file | --cache-file | --cache-fil | --cache-fi \ + | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) + ac_prev=cache_file ;; + -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ + | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) + ;; + -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) + ac_prev=srcdir ;; + -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) + ;; + *) ac_sub_configure_args="$ac_sub_configure_args $ac_arg" ;; + esac + done + + test -d $target_subdir || mkdir $target_subdir + for ac_config_dir in $1; do + + # Do not complain, so a configure script can configure whichever + # parts of a large source tree are present. + if test ! -d $srcdir/$ac_config_dir; then + continue + fi + + echo configuring in $target_subdir/$ac_config_dir + + case "$srcdir" in +## .) ;; + *) + if test -d $target_subdir/$ac_config_dir || mkdir $target_subdir/$ac_config_dir; then :; + else + AC_MSG_ERROR(can not create `pwd`/$target_subdir/$ac_config_dir) + fi + ;; + esac + + ac_popdir=`pwd` + cd $target_subdir/$ac_config_dir + +changequote(, )dnl + # A "../" for each directory in /$ac_config_dir. + ac_dots=`echo $target_subdir/$ac_config_dir|sed -e 's%^\./%%' -e 's%[^/]$%&/%' -e 's%[^/]*/%../%g'` +changequote([, ])dnl + + case "$srcdir" in +## .) # No --srcdir option. We are building in place. +## ac_sub_srcdir=$srcdir ;; + /*) # Absolute path. + ac_sub_srcdir=$srcdir/$ac_config_dir ;; + *) # Relative path. + ac_sub_srcdir=$ac_dots$srcdir/$ac_config_dir ;; + esac + + # Check for guested configure; otherwise get Cygnus style configure. + if test -f $ac_sub_srcdir/configure; then + ac_sub_configure=$ac_sub_srcdir/configure + elif test -f $ac_sub_srcdir/configure.in; then + ac_sub_configure=$ac_configure + else + AC_MSG_WARN(no configuration information is in $ac_config_dir) + ac_sub_configure= + fi + + # The recursion is here. + if test -n "$ac_sub_configure"; then + + # Make the cache file name correct relative to the subdirectory. + if test "$target_alias" != "$host_alias"; then + ac_sub_cache_file=$cache_file + else + case "$cache_file" in + /*) ac_sub_cache_file=$cache_file ;; + *) # Relative path. + ac_sub_cache_file="$ac_dots$cache_file" ;; + esac + fi +ifdef([AC_PROVIDE_AC_PROG_INSTALL], + [ case "$ac_given_INSTALL" in +changequote(, )dnl + [/$]*) INSTALL="$ac_given_INSTALL" ;; +changequote([, ])dnl + *) INSTALL="$ac_dots$ac_given_INSTALL" ;; + esac +])dnl + + echo "[running ${CONFIG_SHELL-/bin/sh} $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file] --srcdir=$ac_sub_srcdir" + # The eval makes quoting arguments work. + if eval ${CONFIG_SHELL-/bin/sh} $ac_sub_configure \ + $ac_sub_configure_args --srcdir=$ac_sub_srcdir \ + --with-target-subdir=$target_subdir --cache-file=$ac_sub_cache_file + then : + else + AC_MSG_ERROR($ac_sub_configure failed for $ac_config_dir) + fi + fi + + cd $ac_popdir + done +fi +]) |