summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile.in22
-rw-r--r--aclocal/canonical-target-name.m415
-rw-r--r--aclocal/check-files-in.m421
-rw-r--r--aclocal/check-makefile.m411
-rw-r--r--aclocal/mkdir.m439
5 files changed, 108 insertions, 0 deletions
diff --git a/Makefile.in b/Makefile.in
index 61a8f0a95f..95d3c28ffb 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -49,3 +49,25 @@ $(MTARGETS):
$@" ; \
eval $$cmd || $(EXIT_CMD); \
fi; done;
+
+## Configuration stuff
+
+ACLOCAL = aclocal -I aclocal
+AUTOCONF = autoconf
+
+ACLOCAL_M4 = aclocal.m4
+
+$(ACLOCAL_M4): configure.in
+ -cd $(RTEMS_ROOT) && $(ACLOCAL)
+
+Makefile: Makefile.in config.status
+ CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
+
+config.status: $(RTEMS_ROOT)/configure
+ $(SHELL) ./config.status --recheck
+
+$(RTEMS_ROOT)/configure: $(RTEMS_ROOT)/configure.in $(ACLOCAL_M4)
+ -cd $(RTEMS_ROOT) && $(AUTOCONF)
+
+.PRECIOUS: $(ACLOCAL_M4) configure Makefile config.status
+
diff --git a/aclocal/canonical-target-name.m4 b/aclocal/canonical-target-name.m4
new file mode 100644
index 0000000000..e8c77d8a01
--- /dev/null
+++ b/aclocal/canonical-target-name.m4
@@ -0,0 +1,15 @@
+dnl $Id$
+
+dnl canonicalize target name
+dnl NOTE: Most rtems targets do not fullfil autoconf's
+dnl target naming conventions "processor-vendor-os"
+dnl Therefore autoconf's AC_CANONICAL_TARGET will fail for them
+dnl and we have to fix it for rtems ourselves
+
+AC_DEFUN(RTEMS_CANONICAL_TARGET_CPU,
+[AC_MSG_CHECKING(rtems target cpu)
+changequote(<<, >>)dnl
+target_cpu=`echo $target | sed 's%^\([^-]*\)-\(.*\)$%\1%'`
+changequote([, ])dnl
+AC_MSG_RESULT($target_cpu)
+])
diff --git a/aclocal/check-files-in.m4 b/aclocal/check-files-in.m4
new file mode 100644
index 0000000000..f5e5556df1
--- /dev/null
+++ b/aclocal/check-files-in.m4
@@ -0,0 +1,21 @@
+dnl $Id$
+
+dnl RTEMS_CHECK_FILES_IN(path,file,var)
+dnl path .. path relative to srcdir, where to start searching for files
+dnl file .. name of the files to search for
+dnl var .. shell variable to append found files
+AC_DEFUN(RTEMS_CHECK_FILES_IN,
+[
+AC_MSG_CHECKING(for $2 in $1)
+if test -d $srcdir/$1; then
+ rtems_av_save_dir=`pwd`;
+ cd $srcdir;
+ rtems_av_tmp=`find $1 -name $2 -print | sed 's%\.in%%' | sort`;
+ $3="$$3 $rtems_av_tmp";
+ cd $rtems_av_save_dir;
+ AC_MSG_RESULT(done)
+else
+ AC_MSG_RESULT(no)
+fi
+])
+
diff --git a/aclocal/check-makefile.m4 b/aclocal/check-makefile.m4
new file mode 100644
index 0000000000..07286d6318
--- /dev/null
+++ b/aclocal/check-makefile.m4
@@ -0,0 +1,11 @@
+dnl $Id$
+
+dnl RTEMS_CHECK_MAKEFILE(path)
+dnl Search for Makefile.in's within the directory starting
+dnl at path and append an entry for Makefile to global variable
+dnl "makefiles" (from configure.in) for each Makefile.in found
+dnl
+AC_DEFUN(RTEMS_CHECK_MAKEFILE,
+[RTEMS_CHECK_FILES_IN($1,Makefile.in,makefiles)
+])
+
diff --git a/aclocal/mkdir.m4 b/aclocal/mkdir.m4
new file mode 100644
index 0000000000..ba7db67a8d
--- /dev/null
+++ b/aclocal/mkdir.m4
@@ -0,0 +1,39 @@
+dnl $Id$
+
+dnl macro to detect mkdir
+AC_DEFUN(RTEMS_PATH_MKDIR,
+[AC_PATH_PROG(MKDIR,mkdir)
+])
+
+dnl macro to check for mkdir -p
+AC_DEFUN(RTEMS_PROG_MKDIR_P,
+[
+AC_REQUIRE([RTEMS_PATH_MKDIR])
+AC_MSG_CHECKING([for working $MKDIR -p])
+AC_CACHE_VAL(rtems_cv_prog_mkdir_p,
+[rm -rf conftestdata
+if $MKDIR -p conftestdata 2>/dev/null ;then
+rtems_cv_prog_MKDIR_P="yes"
+else
+rtems_cv_prog_MKDIR_P="no"
+fi])dnl
+rm -rf conftestdata
+AC_MSG_RESULT($rtems_cv_prog_MKDIR_P)
+])
+
+dnl macro to check for mkdir -m 0755
+AC_DEFUN(RTEMS_PROG_MKDIR_M,
+[
+AC_REQUIRE([RTEMS_PATH_MKDIR])
+AC_MSG_CHECKING([for working $MKDIR -m 0755])
+AC_CACHE_VAL(rtems_cv_prog_MKDIR_P,
+[rm -rf conftestdata
+if $MKDIR -m 0775 conftestdata 2>/dev/null; then
+rtems_cv_prog_MKDIR_M="yes"
+else
+rtems_cv_prog_MKDIR_M="no"
+fi])dnl
+rm -rf conftestdata
+AC_MSG_RESULT($rtems_cv_prog_MKDIR_M)
+])
+