2001-01-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>

* aclocal/enable-rtemsbsp.m4: Split out RTEMS_ENV_RTEMSBSP,
	RTEMS_ENV_RTEMSCPU.
	* aclocal/env-rtemsbsp.m4: New file for RTEMS_ENV_RTEMSBSP, add
	special treatment for GCC_SPECS.
	* aclocal/env-rtemscpu.m4: New file for RTEMS_ENV_RTEMSCPU, add
	special treatment for GCC_SPECS.
	* aclocal/bsp-enable-arg.m4: New file, introduce RTEMS_BSP_ARG_ENABLE.
	* aclocal/prog-cc.m4: Add AC_PROG_CPP, use build_os in GCCSED hack.
	* automake/compile.am: New treatment of CPP, GCCSPECS, use `..`
	instead of $(shell ..) for LIBC_LIB*.
This commit is contained in:
Joel Sherrill
2001-01-29 15:27:25 +00:00
parent 37222c7e74
commit 560aae24e2
7 changed files with 103 additions and 59 deletions

View File

@@ -1,3 +1,16 @@
2001-01-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* aclocal/enable-rtemsbsp.m4: Split out RTEMS_ENV_RTEMSBSP,
RTEMS_ENV_RTEMSCPU.
* aclocal/env-rtemsbsp.m4: New file for RTEMS_ENV_RTEMSBSP, add
special treatment for GCC_SPECS.
* aclocal/env-rtemscpu.m4: New file for RTEMS_ENV_RTEMSCPU, add
special treatment for GCC_SPECS.
* aclocal/bsp-enable-arg.m4: New file, introduce RTEMS_BSP_ARG_ENABLE.
* aclocal/prog-cc.m4: Add AC_PROG_CPP, use build_os in GCCSED hack.
* automake/compile.am: New treatment of CPP, GCCSPECS, use `..`
instead of $(shell ..) for LIBC_LIB*.
2001-01-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* aclocal/bsp-alias.m4, aclocal/check-bsps.m4: Add simsh7032 and

18
aclocal/bsp-arg-enable.m4 Normal file
View File

@@ -0,0 +1,18 @@
dnl $Id$
dnl
dnl RTEMS_BSP_ARG_ENABLE(FEATURE, HELP-STRING, ACTION-IF-TRUE [, ACTION-IF-FALSE])
dnl
dnl Accept --enable-FEATURE=<RTEMS_BSP>:<value> and --enable-FEATURE=<value>
dnl in BSP-configure scripts.
dnl
dnl Configure scripts will receive <value> if <RTEMS_BSP> matches the actual
dnl value of the shell variable RTEMS_BSP (cf. RTEMS_ENV_RTEMSBSP), and
dnl <RTEMS_BSP>:<value>.
dnl
AC_DEFUN(RTEMS_BSP_ARG_ENABLE,
[AC_REQUIRE([RTEMS_ENV_RTEMSBSP])
AC_ARG_ENABLE([$1],[$2],
[enableval=`echo "[$enable_]patsubst([$1], -, _)" | sed -e "s%^${RTEMS_BSP}:%%"`
eval "[enable_]patsubst([$1], -, _)='$enableval'"
$3],[$4])
])

View File

@@ -13,47 +13,3 @@ AC_ARG_ENABLE(rtemsbsp,
*) $1=$enableval;;
esac],[$1=""])
])
dnl Pass a single BSP via an environment variable
dnl used by per BSP configure scripts
AC_DEFUN(RTEMS_ENV_RTEMSBSP,
[dnl
AC_BEFORE([$0], [RTEMS_ENABLE_RTEMSBSP])dnl
AC_BEFORE([$0], [RTEMS_PROJECT_ROOT])dnl
AC_BEFORE([$0], [RTEMS_CHECK_CUSTOM_BSP])dnl
AC_MSG_CHECKING([for RTEMS_BSP])
AC_CACHE_VAL(rtems_cv_RTEMS_BSP,
[dnl
test -n "${RTEMS_BSP}" && rtems_cv_RTEMS_BSP="$RTEMS_BSP";
])dnl
if test -z "$rtems_cv_RTEMS_BSP"; then
AC_MSG_ERROR([Missing RTEMS_BSP])
fi
RTEMS_BSP="$rtems_cv_RTEMS_BSP"
AC_MSG_RESULT(${RTEMS_BSP})
AC_SUBST(RTEMS_BSP)
RTEMS_ENABLE_BARE
AC_SUBST(BARE_CPU_MODEL)
AC_SUBST(BARE_CPU_CFLAGS)
RTEMS_ROOT=$PROJECT_ROOT/c/$RTEMS_BSP
AC_SUBST(RTEMS_ROOT)
AM_CONDITIONAL(RTEMS_CONFIG_PER_BSP, test x = x);
])
AC_DEFUN(RTEMS_ENV_RTEMSCPU,
[AC_REQUIRE([RTEMS_ENABLE_MULTILIB])
if test x"$multilib" = x"no"; then
RTEMS_ENV_RTEMSBSP
RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP)
else
rtems_cv_RTEMS_BSP="multilib"
RTEMS_BSP="$rtems_cv_RTEMS_BSP"
AC_SUBST(RTEMS_BSP)
RTEMS_ROOT=$PROJECT_ROOT/c
AC_SUBST(RTEMS_ROOT)
fi
])

39
aclocal/env-rtemsbsp.m4 Normal file
View File

@@ -0,0 +1,39 @@
dnl $Id$
dnl Pass a single BSP via an environment variable
dnl used by per BSP configure scripts
AC_DEFUN(RTEMS_ENV_RTEMSBSP,
[dnl
AC_BEFORE([$0], [RTEMS_ENABLE_RTEMSBSP])dnl
AC_BEFORE([$0], [RTEMS_PROJECT_ROOT])dnl
AC_BEFORE([$0], [RTEMS_CHECK_CUSTOM_BSP])dnl
AC_MSG_CHECKING([for RTEMS_BSP])
AC_CACHE_VAL(rtems_cv_RTEMS_BSP,
[dnl
test -n "${RTEMS_BSP}" && rtems_cv_RTEMS_BSP="$RTEMS_BSP";
])dnl
if test -z "$rtems_cv_RTEMS_BSP"; then
AC_MSG_ERROR([Missing RTEMS_BSP])
fi
RTEMS_BSP="$rtems_cv_RTEMS_BSP"
AC_MSG_RESULT(${RTEMS_BSP})
AC_SUBST(RTEMS_BSP)
RTEMS_BSP_SPECS="-specs bsp_specs -qrtems"
AC_SUBST(RTEMS_BSP_SPECS)
GCC_SPECS="-B\$(PROJECT_ROOT)/$RTEMS_BSP/lib/"
AC_SUBST(GCC_SPECS)
RTEMS_ROOT=$PROJECT_ROOT/c/$RTEMS_BSP
AC_SUBST(RTEMS_ROOT)
RTEMS_ENABLE_BARE
AC_SUBST(BARE_CPU_MODEL)
AC_SUBST(BARE_CPU_CFLAGS)
AM_CONDITIONAL(RTEMS_CONFIG_PER_BSP, test x = x);
includedir="\${exec_prefix}/\$(RTEMS_BSP)/lib/include"
])

24
aclocal/env-rtemscpu.m4 Normal file
View File

@@ -0,0 +1,24 @@
dnl $Id$
AC_DEFUN(RTEMS_ENV_RTEMSCPU,
[AC_REQUIRE([RTEMS_ENABLE_MULTILIB])
if test x"$multilib" = x"no"; then
RTEMS_ENV_RTEMSBSP
RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP)
else
## FIXME: There is no multilib BSP
rtems_cv_RTEMS_BSP="multilib"
RTEMS_BSP="$rtems_cv_RTEMS_BSP"
AC_SUBST(RTEMS_BSP)
RTEMS_BSP_SPECS=""
AC_SUBST(RTEMS_BSP_SPECS)
GCC_SPECS="-B\$(PROJECT_ROOT)/lib/"
AC_SUBST(GCC_SPECS)
RTEMS_ROOT=$PROJECT_ROOT/c
AC_SUBST(RTEMS_ROOT)
fi
])

View File

@@ -16,6 +16,7 @@ RTEMS_CHECK_TOOL(CC,gcc)
test -z "$CC" && \
AC_MSG_ERROR([no acceptable cc found in \$PATH])
AC_PROG_CC
AC_PROG_CPP
AM_CONDITIONAL(RTEMS_USE_GCC,test x"$GCC" = x"yes")
])
@@ -43,7 +44,7 @@ AM_CONDITIONAL(RTEMS_USE_GCC272, test x"$RTEMS_USE_GCC272" = x"yes")
AC_SUBST(RTEMS_USE_GCC272)
dnl FIXME: HACK for egcs/cygwin mixing '\\' and '/' in gcc -print-*
case $host_os in
case $build_os in
*cygwin*) GCCSED="| sed 's%\\\\%/%g'" ;;
*) ;;
esac

View File

@@ -54,21 +54,18 @@ if RTEMS_USE_GCC272
RTEMS_CPPFLAGS = -isystem $(PROJECT_INCLUDE)
# default location of Standard C Library
LIBC_LIBC = $(shell $(CC) $(CPU_CFLAGS) -print-file-name=libc.a $(GCCSED))
LIBC_LIBM = $(shell $(CC) $(CPU_CFLAGS) -print-file-name=libm.a $(GCCSED))
LIBC_LIBGCC = $(shell $(CC) $(CPU_CFLAGS) -print-libgcc-file-name $(GCCSED))
LIBC_LIBC = `$(CC) $(CPU_CFLAGS) -print-file-name=libc.a $(GCCSED)`
LIBC_LIBM = `$(CC) $(CPU_CFLAGS) -print-file-name=libm.a $(GCCSED)`
LIBC_LIBGCC = `$(CC) $(CPU_CFLAGS) -print-libgcc-file-name $(GCCSED)`
### FIXME: False if using multilibbed RTEMS
LINK_LIBS_RTEMS = $(PROJECT_RELEASE)/lib/librtemsall$(LIBSUFFIX_VA)
LINK_LIBS_GCC272 = $(LINK_LIBS_RTEMS) $(LIBC_LIBC) $(LIBC_LIBGCC)
GCCSPECS =
else
## gcc >= 2.8.x
if RTEMS_CONFIG_PER_BSP
BSP_SPECS = -specs bsp_specs -qrtems
endif
GCCSPECS = -B$(PROJECT_RELEASE)/lib/ $(BSP_SPECS)
GCCSPECS = $(GCC_SPECS) $(RTEMS_BSP_SPECS)
endif
else
## fall back to the old style compilers/*.cfg
@@ -111,12 +108,6 @@ LDFLAGS=$(LDFLAGS_PROFILE) $(LDFLAGS_DEBUG) $(LD_PATHS:%=-L %)
# Client compiler and support tools
#
## HACK: specific to gcc
## FIXME: Do we call the correct CPP, why aren't
## CPPFLAGS and CFLAGS part of this call?
# CPP command to write file to standard output
CPP=$(CC) -E -ansi -w -Wp,-$$
ARFLAGS=ruv
#
@@ -278,6 +269,8 @@ RTEMS_CFLAGS__V = $(RTEMS_CFLAGS_OPTIMIZE_V)
CC = @CC@ $(GCCSPECS)
CXX = @CXX@ $(GCCSPECS)
CPP = @CPP@ $(GCCSPECS)
LD = @LD@
OBJCOPY = @OBJCOPY@
NM = @NM@