forked from Imagelibrary/rtems
2002-06-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* copied over from aclocal/.
This commit is contained in:
39
c/src/exec/aclocal/bsp-alias.m4
Normal file
39
c/src/exec/aclocal/bsp-alias.m4
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
|
||||||
|
dnl _RTEMS_BSP_ALIAS(BSP_ALIAS,RTEMS_BSP_FAMILY)
|
||||||
|
dnl Internal subroutine to RTEMS_BSP_ALIAS
|
||||||
|
AC_DEFUN(_RTEMS_BSP_ALIAS,
|
||||||
|
[# account for "aliased" bsps which share source code
|
||||||
|
case $1 in
|
||||||
|
simcpu32) $2=sim68000 ;; # BSVC CPU32 variant
|
||||||
|
c3xsim) $2=c4xsim ;; # TI C3x Simulator in gdb
|
||||||
|
mcp750) $2=motorola_powerpc ;; # Motorola PPC board variant
|
||||||
|
mvme2307) $2=motorola_powerpc ;; # Motorola PPC board variant
|
||||||
|
mvme162lx) $2=mvme162 ;; # m68k - mvme162 board variant
|
||||||
|
gen68360_040) $2=gen68360 ;; # m68k - 68360 in companion mode
|
||||||
|
p4600) $2=p4000 ;; # mips64orion - p4000 board w/IDT 4600
|
||||||
|
p4650) $2=p4000 ;; # mips64orion - p4000 board w/IDT 4650
|
||||||
|
mbx8*) $2=mbx8xx ;; # MBX821/MBX860 board
|
||||||
|
pc386dx) $2=pc386 ;; # i386 - PC w/o FPU
|
||||||
|
pc486) $2=pc386 ;; # i386 - PC with i486DX
|
||||||
|
pc586) $2=pc386 ;; # i386 - PC with Pentium
|
||||||
|
pc686) $2=pc386 ;; # i386 - PC with PentiumPro
|
||||||
|
pck6) $2=pc386 ;; # i386 - PC with K6
|
||||||
|
bare*) $2=bare ;; # EXP: bare-aliases
|
||||||
|
erc32nfp) $2=erc32 ;; # erc32 without fpu
|
||||||
|
leon1) $2=leon ;; # leon without fpu
|
||||||
|
leon2) $2=leon ;; # leon with fpu
|
||||||
|
simsh7032) $2=shsim ;; # SH7032 simulator
|
||||||
|
simsh7045) $2=shsim ;; # SH7045 simulator
|
||||||
|
*) $2=$1;;
|
||||||
|
esac]
|
||||||
|
)
|
||||||
|
|
||||||
|
dnl RTEMS_BSP_ALIAS(BSP_ALIAS,RTEMS_BSP_FAMILY)
|
||||||
|
dnl convert a bsp alias $1 into its bsp directory RTEMS_BSP_FAMILY
|
||||||
|
AC_DEFUN(RTEMS_BSP_ALIAS,
|
||||||
|
[_RTEMS_BSP_ALIAS(m4_if([$1],,[$RTEMS_BSP],[$1]),
|
||||||
|
m4_if([$2],,[RTEMS_BSP_FAMILY],[$2]))]
|
||||||
|
)
|
||||||
25
c/src/exec/aclocal/canonical-host.m4
Normal file
25
c/src/exec/aclocal/canonical-host.m4
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_CANONICAL_HOST,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([AC_CANONICAL_HOST])
|
||||||
|
RTEMS_HOST=$host_os
|
||||||
|
case "${target}" in
|
||||||
|
# hpux unix port should go here
|
||||||
|
i[[34567]]86-*linux*) # unix "simulator" port
|
||||||
|
RTEMS_HOST=Linux
|
||||||
|
;;
|
||||||
|
i[[34567]]86-*freebsd*) # unix "simulator" port
|
||||||
|
RTEMS_HOST=FreeBSD
|
||||||
|
;;
|
||||||
|
i[[34567]]86-pc-cygwin*) # Cygwin is just enough unix like :)
|
||||||
|
RTEMS_HOST=Cygwin
|
||||||
|
;;
|
||||||
|
sparc-sun-solaris*) # unix "simulator" port
|
||||||
|
RTEMS_HOST=Solaris
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
AC_SUBST(RTEMS_HOST)
|
||||||
|
])dnl
|
||||||
38
c/src/exec/aclocal/canonical-target-name.m4
Normal file
38
c/src/exec/aclocal/canonical-target-name.m4
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
|
||||||
|
dnl canonicalize target cpu
|
||||||
|
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_CANONICAL_TARGET
|
||||||
|
AC_MSG_CHECKING(rtems target cpu)
|
||||||
|
case "${target}" in
|
||||||
|
# hpux unix port should go here
|
||||||
|
i[[34567]]86-*linux*) # unix "simulator" port
|
||||||
|
RTEMS_CPU=unix
|
||||||
|
;;
|
||||||
|
i[[34567]]86-*freebsd*) # unix "simulator" port
|
||||||
|
RTEMS_CPU=unix
|
||||||
|
;;
|
||||||
|
i[[34567]]86-pc-cygwin*) # Cygwin is just enough unix like :)
|
||||||
|
RTEMS_CPU=unix
|
||||||
|
;;
|
||||||
|
no_cpu-*rtems*)
|
||||||
|
RTEMS_CPU=no_cpu
|
||||||
|
;;
|
||||||
|
sparc-sun-solaris*) # unix "simulator" port
|
||||||
|
RTEMS_CPU=unix
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
RTEMS_CPU=`echo $target | sed 's%^\([[^-]]*\)-\(.*\)$%\1%'`
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
AC_SUBST(RTEMS_CPU)
|
||||||
|
AC_MSG_RESULT($RTEMS_CPU)
|
||||||
|
])
|
||||||
28
c/src/exec/aclocal/canonicalize-tools.m4
Normal file
28
c/src/exec/aclocal/canonicalize-tools.m4
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
dnl Set target tools
|
||||||
|
dnl
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_GCC_PRINT,
|
||||||
|
[
|
||||||
|
$1=`$CC --print-prog-name=$2`
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_CANONICALIZE_TOOLS,
|
||||||
|
[AC_REQUIRE([RTEMS_PROG_CC])dnl
|
||||||
|
|
||||||
|
dnl FIXME: What shall be done if these tools are not available?
|
||||||
|
RTEMS_CHECK_TOOL(AR,ar,no)
|
||||||
|
RTEMS_CHECK_TOOL(AS,as,no)
|
||||||
|
RTEMS_CHECK_TOOL(LD,ld,no)
|
||||||
|
RTEMS_CHECK_TOOL(NM,nm,no)
|
||||||
|
|
||||||
|
dnl special treatment of ranlib
|
||||||
|
RTEMS_CHECK_TOOL(RANLIB,ranlib,:)
|
||||||
|
|
||||||
|
dnl NOTE: These may not be available if not using gnutools
|
||||||
|
RTEMS_CHECK_TOOL(OBJCOPY,objcopy,no)
|
||||||
|
RTEMS_CHECK_TOOL(SIZE,size,no)
|
||||||
|
RTEMS_CHECK_TOOL(STRIP,strip,:)
|
||||||
|
])
|
||||||
17
c/src/exec/aclocal/check-bsp-cache.m4
Normal file
17
c/src/exec/aclocal/check-bsp-cache.m4
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
dnl RTEMS_CHECK_BSP_CACHE(RTEMS_BSP)
|
||||||
|
AC_DEFUN(RTEMS_CHECK_BSP_CACHE,
|
||||||
|
[
|
||||||
|
AC_REQUIRE([RTEMS_CHECK_CPU])dnl sets RTEMS_CPU, target
|
||||||
|
AC_REQUIRE([RTEMS_ENV_RTEMSBSP])dnl set RTEMS_BSP
|
||||||
|
AC_REQUIRE([RTEMS_TOP])dnl sets RTEMS_TOPdir
|
||||||
|
AC_CACHE_CHECK([for RTEMS_CPU_MODEL], rtems_cv_RTEMS_CPU_MODEL,
|
||||||
|
. $RTEMS_TOPdir/c/[$]$1/make/[$]$1.cache)
|
||||||
|
RTEMS_CPU_MODEL=$rtems_cv_RTEMS_CPU_MODEL
|
||||||
|
AC_SUBST(RTEMS_CPU_MODEL)
|
||||||
|
AC_CACHE_CHECK([for RTEMS_BSP_FAMILY], rtems_cv_RTEMS_BSP_FAMILY,
|
||||||
|
. $RTEMS_TOPdir/c/[$]$1/make/[$]$1.cache)
|
||||||
|
RTEMS_BSP_FAMILY=$rtems_cv_RTEMS_BSP_FAMILY
|
||||||
|
AC_SUBST(RTEMS_BSP_FAMILY)
|
||||||
|
])dnl
|
||||||
13
c/src/exec/aclocal/check-bsps.m4
Normal file
13
c/src/exec/aclocal/check-bsps.m4
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_CHECK_CUSTOM_BSP,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_TOP])
|
||||||
|
|
||||||
|
AC_MSG_CHECKING([for make/custom/[$]$1.cfg])
|
||||||
|
if test -r "$srcdir/$RTEMS_TOPdir/make/custom/[$]$1.cfg"; then
|
||||||
|
AC_MSG_RESULT([yes])
|
||||||
|
else
|
||||||
|
AC_MSG_ERROR([no])
|
||||||
|
fi
|
||||||
|
])dnl
|
||||||
17
c/src/exec/aclocal/check-cpu.m4
Normal file
17
c/src/exec/aclocal/check-cpu.m4
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
dnl check if RTEMS support a cpu
|
||||||
|
AC_DEFUN(RTEMS_CHECK_CPU,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_TOP])
|
||||||
|
AC_REQUIRE([RTEMS_CANONICAL_TARGET_CPU])
|
||||||
|
|
||||||
|
# Is this a supported CPU?
|
||||||
|
AC_MSG_CHECKING([if cpu $RTEMS_CPU is supported])
|
||||||
|
if test -d "$srcdir/$RTEMS_TOPdir/c/src/exec/score/cpu/$RTEMS_CPU"; then
|
||||||
|
AC_MSG_RESULT(yes)
|
||||||
|
else
|
||||||
|
AC_MSG_ERROR(no)
|
||||||
|
fi
|
||||||
|
])dnl
|
||||||
|
|
||||||
37
c/src/exec/aclocal/check-itron.m4
Normal file
37
c/src/exec/aclocal/check-itron.m4
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
AC_DEFUN(RTEMS_CHECK_ITRON_API,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_CHECK_CPU])dnl
|
||||||
|
AC_REQUIRE([RTEMS_ENABLE_ITRON])dnl
|
||||||
|
|
||||||
|
AC_CACHE_CHECK([whether CPU supports libitron],
|
||||||
|
rtems_cv_HAS_ITRON_API,
|
||||||
|
[dnl
|
||||||
|
case "$RTEMS_CPU" in
|
||||||
|
unix*)
|
||||||
|
rtems_cv_HAS_ITRON_API="no"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
if test "${RTEMS_HAS_ITRON_API}" = "yes"; then
|
||||||
|
rtems_cv_HAS_ITRON_API="yes";
|
||||||
|
else
|
||||||
|
rtems_cv_HAS_ITRON_API="disabled";
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac])
|
||||||
|
if test "$rtems_cv_HAS_ITRON_API" = "yes"; then
|
||||||
|
HAS_ITRON_API="yes";
|
||||||
|
else
|
||||||
|
HAS_ITRON_API="no";
|
||||||
|
fi
|
||||||
|
AC_SUBST(HAS_ITRON_API)dnl
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_DEFINE_ITRON_API,
|
||||||
|
[AC_REQUIRE([RTEMS_CHECK_ITRON_API])dnl
|
||||||
|
if test x"${HAS_ITRON_API}" = x"yes";
|
||||||
|
then
|
||||||
|
AC_DEFINE_UNQUOTED(RTEMS_ITRON_API,1,[if itron api is supported])
|
||||||
|
fi
|
||||||
|
])
|
||||||
46
c/src/exec/aclocal/check-multiprocessing.m4
Normal file
46
c/src/exec/aclocal/check-multiprocessing.m4
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_CHECK_MULTIPROCESSING,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_ENABLE_MULTILIB])dnl
|
||||||
|
AC_REQUIRE([RTEMS_ENV_RTEMSBSP])dnl
|
||||||
|
AC_REQUIRE([RTEMS_TOP])dnl
|
||||||
|
AC_REQUIRE([RTEMS_CHECK_CPU])dnl
|
||||||
|
AC_REQUIRE([RTEMS_ENABLE_MULTIPROCESSING])dnl
|
||||||
|
AC_REQUIRE([RTEMS_BSP_ALIAS])dnl
|
||||||
|
|
||||||
|
AC_CACHE_CHECK([whether BSP supports multiprocessing],
|
||||||
|
rtems_cv_HAS_MP,
|
||||||
|
[dnl
|
||||||
|
if test x"$multilib" = x"yes"; then
|
||||||
|
# FIXME: Currently, multilibs and multiprocessing can not be
|
||||||
|
# build simultaneously
|
||||||
|
rtems_cv_HAS_MP="disabled"
|
||||||
|
else
|
||||||
|
if test -d "$srcdir/${RTEMS_TOPdir}/c/src/lib/libbsp/${RTEMS_CPU}/${RTEMS_BSP_FAMILY}/shmsupp"; then
|
||||||
|
if test "$RTEMS_HAS_MULTIPROCESSING" = "yes"; then
|
||||||
|
rtems_cv_HAS_MP="yes" ;
|
||||||
|
else
|
||||||
|
rtems_cv_HAS_MP="disabled";
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
rtems_cv_HAS_MP="no";
|
||||||
|
fi
|
||||||
|
fi])
|
||||||
|
if test "$rtems_cv_HAS_MP" = "yes"; then
|
||||||
|
HAS_MP="yes"
|
||||||
|
else
|
||||||
|
HAS_MP="no"
|
||||||
|
fi
|
||||||
|
AC_SUBST(HAS_MP)
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_DEFINE_MULTIPROCESSING,
|
||||||
|
[AC_REQUIRE([RTEMS_CHECK_MULTIPROCESSING])dnl
|
||||||
|
if test x"${HAS_MP}" = x"yes";
|
||||||
|
then
|
||||||
|
AC_DEFINE_UNQUOTED(RTEMS_MULTIPROCESSING,1,[if multiprocessing is supported])
|
||||||
|
fi
|
||||||
|
])
|
||||||
29
c/src/exec/aclocal/check-networking.m4
Normal file
29
c/src/exec/aclocal/check-networking.m4
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
AC_DEFUN(RTEMS_CHECK_NETWORKING,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_CHECK_CPU])dnl
|
||||||
|
AC_REQUIRE([RTEMS_ENABLE_NETWORKING])dnl
|
||||||
|
|
||||||
|
AC_CACHE_CHECK([whether BSP supports networking],
|
||||||
|
rtems_cv_HAS_NETWORKING,
|
||||||
|
[dnl
|
||||||
|
case "$RTEMS_CPU" in
|
||||||
|
unix*)
|
||||||
|
rtems_cv_HAS_NETWORKING="no"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
if test "${RTEMS_HAS_NETWORKING}" = "yes"; then
|
||||||
|
rtems_cv_HAS_NETWORKING="yes";
|
||||||
|
else
|
||||||
|
rtems_cv_HAS_NETWORKING="disabled";
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac])
|
||||||
|
if test "$rtems_cv_HAS_NETWORKING" = "yes"; then
|
||||||
|
HAS_NETWORKING="yes";
|
||||||
|
else
|
||||||
|
HAS_NETWORKING="no";
|
||||||
|
fi
|
||||||
|
AC_SUBST(HAS_NETWORKING)dnl
|
||||||
|
])
|
||||||
31
c/src/exec/aclocal/check-newlib.m4
Normal file
31
c/src/exec/aclocal/check-newlib.m4
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_CHECK_NEWLIB,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_PROG_CC_FOR_TARGET])dnl
|
||||||
|
AC_REQUIRE([RTEMS_CANONICALIZE_TOOLS])dnl
|
||||||
|
AC_CACHE_CHECK([for RTEMS newlib],
|
||||||
|
rtems_cv_use_newlib,
|
||||||
|
[
|
||||||
|
dnl some versions of newlib provide not_required_by_rtems
|
||||||
|
AC_TRY_LINK(
|
||||||
|
[extern void not_required_by_rtems() ;],
|
||||||
|
[not_required_by_rtems()],
|
||||||
|
rtems_cv_use_newlib="yes")
|
||||||
|
|
||||||
|
dnl some versions of newlib provide rtems_provides_crt0()
|
||||||
|
AS_IF([test -z "$rtems_cv_use_newlib"],
|
||||||
|
[AC_TRY_LINK(
|
||||||
|
[extern void rtems_provides_crt0() ;],
|
||||||
|
[rtems_provides_crt0()],
|
||||||
|
rtems_cv_use_newlib="yes",
|
||||||
|
rtems_cv_use_newlib="no")]
|
||||||
|
)
|
||||||
|
])
|
||||||
|
RTEMS_USE_NEWLIB="$rtems_cv_use_newlib"
|
||||||
|
AC_SUBST(RTEMS_USE_NEWLIB)
|
||||||
|
|
||||||
|
AS_IF([test x"${RTEMS_USE_NEWLIB}" = x"yes"],
|
||||||
|
[ AC_DEFINE_UNQUOTED(RTEMS_NEWLIB,1,[if using newlib])]
|
||||||
|
)
|
||||||
|
])
|
||||||
36
c/src/exec/aclocal/check-posix.m4
Normal file
36
c/src/exec/aclocal/check-posix.m4
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
AC_DEFUN(RTEMS_CHECK_POSIX_API,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_CHECK_CPU])dnl
|
||||||
|
AC_REQUIRE([RTEMS_ENABLE_POSIX])dnl
|
||||||
|
|
||||||
|
AC_CACHE_CHECK([whether CPU supports libposix],
|
||||||
|
rtems_cv_HAS_POSIX_API,
|
||||||
|
[dnl
|
||||||
|
case "$RTEMS_CPU" in
|
||||||
|
unix*)
|
||||||
|
rtems_cv_HAS_POSIX_API="no"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
if test "${RTEMS_HAS_POSIX_API}" = "yes"; then
|
||||||
|
rtems_cv_HAS_POSIX_API="yes";
|
||||||
|
else
|
||||||
|
rtems_cv_HAS_POSIX_API="disabled";
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac])
|
||||||
|
if test "$rtems_cv_HAS_POSIX_API" = "yes"; then
|
||||||
|
HAS_POSIX_API="yes";
|
||||||
|
else
|
||||||
|
HAS_POSIX_API="no";
|
||||||
|
fi
|
||||||
|
AC_SUBST(HAS_POSIX_API)dnl
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_DEFINE_POSIX_API,
|
||||||
|
[AC_REQUIRE([RTEMS_CHECK_POSIX_API])dnl
|
||||||
|
AS_IF(
|
||||||
|
[test x"${HAS_POSIX_API}" = x"yes"],
|
||||||
|
[AC_DEFINE_UNQUOTED(RTEMS_POSIX_API,1,[if posix api is supported])])
|
||||||
|
])
|
||||||
11
c/src/exec/aclocal/check-tool.m4
Normal file
11
c/src/exec/aclocal/check-tool.m4
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
## Check for a cross tool, similar to AC_CHECK_TOOL, but do not fall back to
|
||||||
|
## the un-prefixed version of PROG-TO-CHECK-FOR.
|
||||||
|
dnl RTEMS_CHECK_TOOL(VARIABLE, PROG-TO-CHECK-FOR[, VALUE-IF-NOT-FOUND [, PATH]])
|
||||||
|
AC_DEFUN(RTEMS_CHECK_TOOL,
|
||||||
|
[
|
||||||
|
AS_IF([test "x$build_alias" != "x$host_alias"],
|
||||||
|
[rtems_tool_prefix=${ac_tool_prefix}])
|
||||||
|
AC_CHECK_PROG($1, ${rtems_tool_prefix}$2, ${rtems_tool_prefix}$2, $3, $4)
|
||||||
|
])
|
||||||
19
c/src/exec/aclocal/enable-bare.m4
Normal file
19
c/src/exec/aclocal/enable-bare.m4
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
AC_DEFUN(RTEMS_ENABLE_BARE,
|
||||||
|
[
|
||||||
|
AC_ARG_ENABLE(bare-cpu-cflags,
|
||||||
|
AC_HELP_STRING([--enable-bare-cpu-cflags],[specify a particular cpu cflag (bare bsp specific)]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
no) BARE_CPU_CFLAGS="" ;;
|
||||||
|
*) BARE_CPU_CFLAGS="${enableval}" ;;
|
||||||
|
esac],
|
||||||
|
[BARE_CPU_CFLAGS=""])
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(bare-cpu-model,
|
||||||
|
AC_HELP_STRING([--enable-bare-cpu-model],[specify a particular cpu model (bare bsp specific)]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
no) BARE_CPU_MODEL="" ;;
|
||||||
|
*) BARE_CPU_MODEL="${enableval}" ;;
|
||||||
|
esac],
|
||||||
|
[BARE_CPU_MODEL=""])
|
||||||
|
])
|
||||||
|
|
||||||
21
c/src/exec/aclocal/enable-inlines.m4
Normal file
21
c/src/exec/aclocal/enable-inlines.m4
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_INLINES,
|
||||||
|
[AC_ARG_ENABLE(rtems-inlines,
|
||||||
|
AC_HELP_STRING([--enable-rtems-inlines],[enable RTEMS inline functions (default:enabled, disable to use macros)]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) RTEMS_USE_MACROS=no ;;
|
||||||
|
no) RTEMS_USE_MACROS=yes ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for disable-rtems-inlines option) ;;
|
||||||
|
esac],[RTEMS_USE_MACROS=no])
|
||||||
|
AC_SUBST(RTEMS_USE_MACROS)dnl
|
||||||
|
|
||||||
|
if test x"${RTEMS_USE_MACROS}" = x"yes";
|
||||||
|
then
|
||||||
|
AC_DEFINE_UNQUOTED(USE_MACROS,1,[if using macros])
|
||||||
|
else
|
||||||
|
AC_DEFINE_UNQUOTED(USE_INLINES,1,[if using inlines])
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
])
|
||||||
33
c/src/exec/aclocal/enable-itron.m4
Normal file
33
c/src/exec/aclocal/enable-itron.m4
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_ITRON,
|
||||||
|
[
|
||||||
|
## AC_BEFORE([$0], [RTEMS_CHECK_ITRON_API])dnl
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(itron,
|
||||||
|
AC_HELP_STRING([--enable-itron],[enable itron interface]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) RTEMS_HAS_ITRON_API=yes ;;
|
||||||
|
no) RTEMS_HAS_ITRON_API=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for enable-itron option) ;;
|
||||||
|
esac],[RTEMS_HAS_ITRON_API=yes])
|
||||||
|
|
||||||
|
case "${host}" in
|
||||||
|
# hpux unix port should go here
|
||||||
|
i[[34567]]86-pc-linux*) # unix "simulator" port
|
||||||
|
RTEMS_HAS_ITRON_API=no
|
||||||
|
;;
|
||||||
|
i[[34567]]86-*freebsd*) # unix "simulator" port
|
||||||
|
RTEMS_HAS_ITRON_API=no
|
||||||
|
;;
|
||||||
|
no_cpu-*rtems*)
|
||||||
|
RTEMS_HAS_ITRON_API=no
|
||||||
|
;;
|
||||||
|
sparc-sun-solaris*) # unix "simulator" port
|
||||||
|
RTEMS_HAS_ITRON_API=no
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
AC_SUBST(RTEMS_HAS_ITRON_API)
|
||||||
|
])
|
||||||
13
c/src/exec/aclocal/enable-multiprocessing.m4
Normal file
13
c/src/exec/aclocal/enable-multiprocessing.m4
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_MULTIPROCESSING,
|
||||||
|
[
|
||||||
|
AC_ARG_ENABLE(multiprocessing,
|
||||||
|
AC_HELP_STRING([--enable-multiprocessing],[enable multiprocessing interface]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) RTEMS_HAS_MULTIPROCESSING=yes ;;
|
||||||
|
no) RTEMS_HAS_MULTIPROCESSING=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for enable-multiprocessing option) ;;
|
||||||
|
esac],[RTEMS_HAS_MULTIPROCESSING=no])
|
||||||
|
AC_SUBST(RTEMS_HAS_MULTIPROCESSING)dnl
|
||||||
|
])
|
||||||
15
c/src/exec/aclocal/enable-networking.m4
Normal file
15
c/src/exec/aclocal/enable-networking.m4
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_NETWORKING,
|
||||||
|
[
|
||||||
|
## AC_BEFORE([$0], [RTEMS_CHECK_NETWORKING])dnl
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(networking,
|
||||||
|
AC_HELP_STRING([--enable-networking],[enable TCP/IP stack]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) RTEMS_HAS_NETWORKING=yes ;;
|
||||||
|
no) RTEMS_HAS_NETWORKING=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for enable-networking option) ;;
|
||||||
|
esac],[RTEMS_HAS_NETWORKING=yes])
|
||||||
|
AC_SUBST(RTEMS_HAS_NETWORKING)dnl
|
||||||
|
])
|
||||||
33
c/src/exec/aclocal/enable-posix.m4
Normal file
33
c/src/exec/aclocal/enable-posix.m4
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_POSIX,
|
||||||
|
[
|
||||||
|
## AC_BEFORE([$0], [RTEMS_CHECK_POSIX_API])dnl
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(posix,
|
||||||
|
AC_HELP_STRING([--enable-posix],[enable posix interface]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) RTEMS_HAS_POSIX_API=yes ;;
|
||||||
|
no) RTEMS_HAS_POSIX_API=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for enable-posix option) ;;
|
||||||
|
esac],[RTEMS_HAS_POSIX_API=yes])
|
||||||
|
|
||||||
|
case "${host}" in
|
||||||
|
# hpux unix port should go here
|
||||||
|
i[[34567]]86-pc-linux*) # unix "simulator" port
|
||||||
|
RTEMS_HAS_POSIX_API=no
|
||||||
|
;;
|
||||||
|
i[[34567]]86-*freebsd*) # unix "simulator" port
|
||||||
|
RTEMS_HAS_POSIX_API=no
|
||||||
|
;;
|
||||||
|
no_cpu-*rtems*)
|
||||||
|
RTEMS_HAS_POSIX_API=no
|
||||||
|
;;
|
||||||
|
sparc-sun-solaris*) # unix "simulator" port
|
||||||
|
RTEMS_HAS_POSIX_API=no
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
AC_SUBST(RTEMS_HAS_POSIX_API)
|
||||||
|
])
|
||||||
16
c/src/exec/aclocal/enable-rtemsbsp.m4
Normal file
16
c/src/exec/aclocal/enable-rtemsbsp.m4
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
dnl Override the set of BSPs to be built.
|
||||||
|
dnl used by the toplevel configure script
|
||||||
|
dnl RTEMS_ENABLE_RTEMSBSP(rtems_bsp_list)
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_RTEMSBSP,
|
||||||
|
[
|
||||||
|
AC_BEFORE([$0], [RTEMS_ENV_RTEMSBSP])dnl
|
||||||
|
AC_ARG_ENABLE(rtemsbsp,
|
||||||
|
AC_HELP_STRING([--enable-rtemsbsp="bsp1 bsp2 .."],
|
||||||
|
[BSPs to include in build]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes|no) AC_MSG_ERROR([missing argument to --enable-rtemsbsp=\"bsp1 bsp2\"]);;
|
||||||
|
*) $1=$enableval;;
|
||||||
|
esac],[$1=""])
|
||||||
|
])
|
||||||
47
c/src/exec/aclocal/env-rtemsbsp.m4
Normal file
47
c/src/exec/aclocal/env-rtemsbsp.m4
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
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_ARG_VAR([RTEMS_BSP],[RTEMS_BSP to build])
|
||||||
|
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)/lib/ -B\$(PROJECT_ROOT)/$RTEMS_BSP/lib/"
|
||||||
|
AC_SUBST(GCC_SPECS)
|
||||||
|
|
||||||
|
PROJECT_INCLUDE="\$(PROJECT_ROOT)/$RTEMS_BSP/lib/include"
|
||||||
|
AC_SUBST(PROJECT_INCLUDE)
|
||||||
|
|
||||||
|
PROJECT_RELEASE="\$(PROJECT_ROOT)/$RTEMS_BSP"
|
||||||
|
AC_SUBST(PROJECT_RELEASE)
|
||||||
|
|
||||||
|
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],[true])
|
||||||
|
AM_CONDITIONAL([MULTILIB],[false])
|
||||||
|
|
||||||
|
includedir="\${exec_prefix}/${RTEMS_BSP}/lib/include"
|
||||||
|
])
|
||||||
41
c/src/exec/aclocal/env-rtemscpu.m4
Normal file
41
c/src/exec/aclocal/env-rtemscpu.m4
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENV_RTEMSCPU,
|
||||||
|
[AC_REQUIRE([RTEMS_ENABLE_MULTILIB])
|
||||||
|
|
||||||
|
if test x"$multilib" = x"yes"; then
|
||||||
|
## FIXME: There is no multilib BSP
|
||||||
|
RTEMS_BSP_SPECS=""
|
||||||
|
AC_SUBST(RTEMS_BSP_SPECS)
|
||||||
|
|
||||||
|
if test -n "$with_multisubdir"; then
|
||||||
|
MULTIBUILDTOP=`echo "/$with_multisubdir" | sed 's,/[[^\\/]]*,../,g'`
|
||||||
|
fi
|
||||||
|
AC_SUBST(MULTIBUILDTOP)
|
||||||
|
|
||||||
|
if test -n "$with_multisubdir"; then
|
||||||
|
MULTISUBDIR="/$with_multisubdir"
|
||||||
|
fi
|
||||||
|
AC_SUBST(MULTISUBDIR)
|
||||||
|
|
||||||
|
PROJECT_ROOT="${RTEMS_TOPdir}/\$(MULTIBUILDTOP)\$(top_builddir)"
|
||||||
|
GCC_SPECS="-isystem \$(PROJECT_ROOT)/lib/include"
|
||||||
|
AC_SUBST(GCC_SPECS)
|
||||||
|
|
||||||
|
PROJECT_INCLUDE="\$(PROJECT_ROOT)/lib/include"
|
||||||
|
AC_SUBST(PROJECT_INCLUDE)
|
||||||
|
|
||||||
|
PROJECT_RELEASE="\$(PROJECT_ROOT)"
|
||||||
|
AC_SUBST(PROJECT_RELEASE)
|
||||||
|
|
||||||
|
RTEMS_ROOT=${PROJECT_ROOT}
|
||||||
|
AC_SUBST(RTEMS_ROOT)
|
||||||
|
|
||||||
|
includedir="\${exec_prefix}/lib/include"
|
||||||
|
libdir="${libdir}\$(MULTISUBDIR)"
|
||||||
|
AM_CONDITIONAL([RTEMS_CONFIG_PER_BSP],[false])
|
||||||
|
else
|
||||||
|
RTEMS_ENV_RTEMSBSP
|
||||||
|
RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP)
|
||||||
|
fi
|
||||||
|
])
|
||||||
21
c/src/exec/aclocal/gcc-pipe.m4
Normal file
21
c/src/exec/aclocal/gcc-pipe.m4
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
dnl Check whether the target compiler accepts -pipe
|
||||||
|
dnl
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_GCC_PIPE,
|
||||||
|
[AC_REQUIRE([RTEMS_PROG_CC])
|
||||||
|
AC_REQUIRE([AC_CANONICAL_HOST])
|
||||||
|
AC_CACHE_CHECK(whether $CC accepts --pipe,rtems_cv_gcc_pipe,
|
||||||
|
[
|
||||||
|
rtems_cv_gcc_pipe=no
|
||||||
|
if test x"$GCC" = x"yes"; then
|
||||||
|
echo 'void f(){}' >conftest.c
|
||||||
|
if test -z "`${CC} --pipe -c conftest.c 2>&1`";then
|
||||||
|
rtems_cv_gcc_pipe=yes
|
||||||
|
fi
|
||||||
|
rm -f conftest*
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
])
|
||||||
20
c/src/exec/aclocal/gcc-specs.m4
Normal file
20
c/src/exec/aclocal/gcc-specs.m4
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
dnl Check whether the target compiler accepts -specs
|
||||||
|
dnl
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_GCC_SPECS,
|
||||||
|
[AC_REQUIRE([RTEMS_PROG_CC])
|
||||||
|
AC_CACHE_CHECK(whether $CC accepts -specs,rtems_cv_gcc_specs,
|
||||||
|
[
|
||||||
|
rtems_cv_gcc_specs=no
|
||||||
|
if test x"$GCC" = x"yes"; then
|
||||||
|
touch confspec
|
||||||
|
echo 'void f(){}' >conftest.c
|
||||||
|
if test -z "`${CC} -specs confspec -c conftest.c 2>&1`";then
|
||||||
|
rtems_cv_gcc_specs=yes
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
rm -f confspec conftest*
|
||||||
|
])])
|
||||||
53
c/src/exec/aclocal/multi.m4
Normal file
53
c/src/exec/aclocal/multi.m4
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
#serial 99
|
||||||
|
|
||||||
|
AC_DEFUN(AC_ENABLE_MULTILIB,
|
||||||
|
[
|
||||||
|
AC_ARG_ENABLE(multilib,
|
||||||
|
AC_HELP_STRING([--enable-multilib],
|
||||||
|
[build many library versions (default=no)]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) multilib=yes ;;
|
||||||
|
no) multilib=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;;
|
||||||
|
esac], [multilib=no])dnl
|
||||||
|
|
||||||
|
AM_CONDITIONAL(MULTILIB,test x"${multilib}" = x"yes")
|
||||||
|
|
||||||
|
dnl We may get other options which we don't document:
|
||||||
|
dnl --with-target-subdir, --with-multisrctop, --with-multisubdir
|
||||||
|
|
||||||
|
if test "[$]{srcdir}" = "."; then
|
||||||
|
if test "[$]{with_target_subdir}" != "."; then
|
||||||
|
multilib_basedir="[$]{srcdir}/[$]{with_multisrctop}../ifelse([$2],,,[$2])"
|
||||||
|
else
|
||||||
|
multilib_basedir="[$]{srcdir}/[$]{with_multisrctop}ifelse([$2],,,[$2])"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
multilib_basedir="[$]{srcdir}/ifelse([$2],,,[$2])"
|
||||||
|
fi
|
||||||
|
AC_SUBST(multilib_basedir)
|
||||||
|
|
||||||
|
if test "${multilib}" = "yes"; then
|
||||||
|
multilib_arg="--enable-multilib"
|
||||||
|
else
|
||||||
|
multilib_arg=
|
||||||
|
fi
|
||||||
|
|
||||||
|
AC_OUTPUT_COMMANDS(
|
||||||
|
[case " $CONFIG_FILES " in
|
||||||
|
*" ]m4_if([$1],,Makefile,[$1])[ "*)
|
||||||
|
ac_file=]m4_if([$1],,Makefile,[$1])[ . ${multilib_basedir}/config-ml.in
|
||||||
|
esac],
|
||||||
|
[
|
||||||
|
srcdir=${srcdir}
|
||||||
|
host=${host}
|
||||||
|
target=${target}
|
||||||
|
with_multisrctop="${with_multisrctop}"
|
||||||
|
with_target_subdir="${with_target_subdir}"
|
||||||
|
with_multisubdir="${with_multisubdir}"
|
||||||
|
ac_configure_args="${multilib_arg} ${ac_configure_args}"
|
||||||
|
CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
|
||||||
|
multilib_basedir=${multilib_basedir}
|
||||||
|
CC="${CC}"]
|
||||||
|
)
|
||||||
|
])
|
||||||
59
c/src/exec/aclocal/multilib.m4
Normal file
59
c/src/exec/aclocal/multilib.m4
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
dnl This provides configure definitions used for multilib support
|
||||||
|
|
||||||
|
dnl parts of these macros are derived from newlib-1.8.2's multilib support
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_MULTILIB,
|
||||||
|
[
|
||||||
|
AC_ARG_ENABLE(multilib,
|
||||||
|
AC_HELP_STRING([--enable-multilib],
|
||||||
|
[build many library versions (default=no)]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) multilib=yes ;;
|
||||||
|
no) multilib=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;;
|
||||||
|
esac], [multilib=no])dnl
|
||||||
|
|
||||||
|
AM_CONDITIONAL(MULTILIB,test x"${multilib}" = x"yes")
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN([RTEMS_ENABLE_MULTILIB_MASTER],
|
||||||
|
[
|
||||||
|
AC_REQUIRE([RTEMS_ENABLE_MULTILIB])
|
||||||
|
|
||||||
|
dnl We may get other options which we don't document:
|
||||||
|
dnl --with-target-subdir, --with-multisrctop, --with-multisubdir
|
||||||
|
|
||||||
|
if test "[$]{srcdir}" = "."; then
|
||||||
|
if test "[$]{with_target_subdir}" != "."; then
|
||||||
|
multilib_basedir="[$]{srcdir}/[$]{with_multisrctop}../ifelse([$2],,,[$2])"
|
||||||
|
else
|
||||||
|
multilib_basedir="[$]{srcdir}/[$]{with_multisrctop}ifelse([$2],,,[$2])"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
multilib_basedir="[$]{srcdir}/ifelse([$2],,,[$2])"
|
||||||
|
fi
|
||||||
|
AC_SUBST(multilib_basedir)
|
||||||
|
|
||||||
|
if test "${multilib}" = "yes"; then
|
||||||
|
multilib_arg="--enable-multilib"
|
||||||
|
else
|
||||||
|
multilib_arg=
|
||||||
|
fi
|
||||||
|
|
||||||
|
AC_OUTPUT_COMMANDS(
|
||||||
|
[case " $CONFIG_FILES " in
|
||||||
|
*" ]m4_if([$1],,Makefile,[$1])[ "*)
|
||||||
|
ac_file=]m4_if([$1],,Makefile,[$1])[ . ${multilib_basedir}/config-ml.in
|
||||||
|
esac],
|
||||||
|
[
|
||||||
|
srcdir=${srcdir}
|
||||||
|
host=${host}
|
||||||
|
target=${target}
|
||||||
|
with_multisrctop="${with_multisrctop}"
|
||||||
|
with_target_subdir="${with_target_subdir}"
|
||||||
|
with_multisubdir="${with_multisubdir}"
|
||||||
|
ac_configure_args="${multilib_arg} ${ac_configure_args}"
|
||||||
|
CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
|
||||||
|
multilib_basedir=${multilib_basedir}
|
||||||
|
CC="${CC}"])
|
||||||
|
])
|
||||||
50
c/src/exec/aclocal/prog-cc.m4
Normal file
50
c/src/exec/aclocal/prog-cc.m4
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
dnl Check for target gcc
|
||||||
|
dnl
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_PROG_CC,
|
||||||
|
[
|
||||||
|
AC_BEFORE([$0], [AC_PROG_CPP])dnl
|
||||||
|
AC_BEFORE([$0], [AC_PROG_CC])dnl
|
||||||
|
AC_BEFORE([$0], [RTEMS_CANONICALIZE_TOOLS])dnl
|
||||||
|
|
||||||
|
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")
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_PROG_CC_FOR_TARGET,
|
||||||
|
[
|
||||||
|
dnl check target cc
|
||||||
|
RTEMS_PROG_CC
|
||||||
|
dnl check if the compiler supports --specs
|
||||||
|
RTEMS_GCC_SPECS
|
||||||
|
dnl check if the target compiler may use --pipe
|
||||||
|
RTEMS_GCC_PIPE
|
||||||
|
dnl check if the compiler supports --specs if gcc28 is requested
|
||||||
|
# if test "$rtems_cv_gcc_specs" = "no"; then
|
||||||
|
# AC_MSG_WARN([*** disabling --enable-gcc28])
|
||||||
|
# RTEMS_USE_GCC272=yes
|
||||||
|
# fi
|
||||||
|
test "$rtems_cv_gcc_pipe" = "yes" && CC="$CC --pipe"
|
||||||
|
|
||||||
|
if test "$GCC" = yes; then
|
||||||
|
]
|
||||||
|
m4_if([$1],,[],[CPPFLAGS="$CPPFLAGS $1"])
|
||||||
|
[
|
||||||
|
CFLAGS="-g -Wall"
|
||||||
|
fi
|
||||||
|
|
||||||
|
dnl FIXME: HACK for egcs/cygwin mixing '\\' and '/' in gcc -print-*
|
||||||
|
case $build_os in
|
||||||
|
*cygwin*) GCCSED="| sed 's%\\\\%/%g'" ;;
|
||||||
|
*) ;;
|
||||||
|
esac
|
||||||
|
AC_SUBST(GCCSED)
|
||||||
|
])
|
||||||
22
c/src/exec/aclocal/project-root.m4
Normal file
22
c/src/exec/aclocal/project-root.m4
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
|
||||||
|
dnl
|
||||||
|
dnl PROJECT_TOPdir .. relative path to the top of the build-tree
|
||||||
|
dnl PROJECT_ROOT .. relative path to the top of the temporary
|
||||||
|
dnl installation directory inside the build-tree
|
||||||
|
dnl RTEMS_TOPdir .. relative path of a subpackage's configure.in to the
|
||||||
|
dnl toplevel configure.in of the source-tree
|
||||||
|
dnl RTEMS_ROOT .. path to the top of a bsp's build directory
|
||||||
|
dnl [Applied by custom/*.cfg, depredicated otherwise]
|
||||||
|
dnl
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_PROJECT_ROOT,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_TOP])
|
||||||
|
|
||||||
|
PACKHEX="\$(PROJECT_TOPdir)/tools/build/packhex"
|
||||||
|
AC_SUBST(PACKHEX)
|
||||||
|
])
|
||||||
|
|
||||||
32
c/src/exec/aclocal/rtems-cpu-subdirs.m4
Normal file
32
c/src/exec/aclocal/rtems-cpu-subdirs.m4
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
AC_DEFUN([_RTEMS_CPU_SUBDIR],
|
||||||
|
[
|
||||||
|
$1 ) if test -d ${srcdir}/ifelse([$2],,[$1],[$2/$1]) ; then
|
||||||
|
AC_CONFIG_SUBDIRS(ifelse([$2],,[$1],[$2/$1]))
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
|
## RTEMS_CPU_SUBDIRS([PREFIX])
|
||||||
|
AC_DEFUN([RTEMS_CPU_SUBDIRS],
|
||||||
|
[
|
||||||
|
## EDIT: If adding a new cpu to RTEMS, add it to the case block below.
|
||||||
|
case $RTEMS_CPU in
|
||||||
|
_RTEMS_CPU_SUBDIR([a29k],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([arm],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([c4x],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([h8300],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([hppa1.1],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([i386],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([i960],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([m68k],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([mips],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([mips64orion],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([no_cpu],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([or16],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([or32],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([powerpc],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([sh],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([sparc],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([unix],[$1]);;
|
||||||
|
*) AC_MSG_ERROR([Invalid RTEMS_CPU])
|
||||||
|
esac
|
||||||
|
])
|
||||||
19
c/src/exec/aclocal/rtems-debug.m4
Normal file
19
c/src/exec/aclocal/rtems-debug.m4
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
## $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_RTEMS_DEBUG,
|
||||||
|
[
|
||||||
|
AC_ARG_ENABLE(rtems-debug,
|
||||||
|
AC_HELP_STRING([--enable-rtems-debug],[enable RTEMS_DEBUG]),
|
||||||
|
[case "${enable_rtems_debug}" in
|
||||||
|
yes) enable_rtems_debug=yes ;;
|
||||||
|
no) enable_rtems_debug=no ;;
|
||||||
|
*) AC_MSG_ERROR([bad value ${enable_rtems_debug} for RTEMS_DEBUG]) ;;
|
||||||
|
esac],[enable_rtems_debug=no])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_CHECK_RTEMS_DEBUG,
|
||||||
|
[AC_REQUIRE([RTEMS_ENABLE_RTEMS_DEBUG])
|
||||||
|
AS_IF([test x"${enable_rtems_debug}" = x"yes"]
|
||||||
|
[AC_DEFINE_UNQUOTED(RTEMS_DEBUG,1,[if RTEMS_DEBUG is enabled])])
|
||||||
|
])
|
||||||
|
|
||||||
52
c/src/exec/aclocal/rtems-top.m4
Normal file
52
c/src/exec/aclocal/rtems-top.m4
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
dnl
|
||||||
|
dnl RTEMS_TOP($1)
|
||||||
|
dnl
|
||||||
|
dnl $1 .. relative path from this configure.in to the toplevel configure.in
|
||||||
|
dnl
|
||||||
|
AC_DEFUN(RTEMS_TOP,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_VERSIONING])
|
||||||
|
AC_CHECK_PROGS(MAKE, gmake make)
|
||||||
|
AC_BEFORE([$0], [AC_CONFIG_AUX_DIR])dnl
|
||||||
|
AC_BEFORE([$0], [AM_INIT_AUTOMAKE])dnl
|
||||||
|
|
||||||
|
AC_PREFIX_DEFAULT([/opt/rtems])
|
||||||
|
|
||||||
|
## HACK to allow gnu-make conditionals in automake-Makefiles.
|
||||||
|
ENDIF=endif
|
||||||
|
AC_SUBST(ENDIF)
|
||||||
|
|
||||||
|
RTEMS_TOPdir="$1";
|
||||||
|
AC_SUBST(RTEMS_TOPdir)
|
||||||
|
|
||||||
|
## with_target_subdirs is handled implicitly by autoconf
|
||||||
|
test -n "$with_target_subdir" || with_target_subdir="."
|
||||||
|
|
||||||
|
if test "$with_target_subdir" = "." ; then
|
||||||
|
# Native
|
||||||
|
PROJECT_TOPdir=${RTEMS_TOPdir}/'$(top_builddir)'
|
||||||
|
else
|
||||||
|
# Cross
|
||||||
|
dots=`echo $with_target_subdir|\
|
||||||
|
sed -e 's%^\./%%' -e 's%[[^/]]$%&/%' -e 's%[[^/]]*/%../%g'`
|
||||||
|
PROJECT_TOPdir=${dots}${RTEMS_TOPdir}/'$(top_builddir)'
|
||||||
|
fi
|
||||||
|
AC_SUBST(PROJECT_TOPdir)
|
||||||
|
|
||||||
|
if test "$with_target_subdir" = "." ; then
|
||||||
|
# Native
|
||||||
|
PROJECT_ROOT="${RTEMS_TOPdir}/\$(top_builddir)"
|
||||||
|
else
|
||||||
|
# Cross
|
||||||
|
PROJECT_ROOT="${RTEMS_TOPdir}/\$(top_builddir)"
|
||||||
|
fi
|
||||||
|
AC_SUBST(PROJECT_ROOT)
|
||||||
|
|
||||||
|
AC_MSG_CHECKING([for RTEMS Version])
|
||||||
|
AS_IF([test -r "${srcdir}/${RTEMS_TOPdir}/aclocal/version.m4"],
|
||||||
|
[],
|
||||||
|
[AC_MSG_ERROR([Unable to find ${RTEMS_TOPdir}/aclocal/version.m4])])
|
||||||
|
AC_MSG_RESULT([_RTEMS_VERSION])
|
||||||
|
])dnl
|
||||||
392
c/src/exec/aclocal/subdirs.m4
Normal file
392
c/src/exec/aclocal/subdirs.m4
Normal file
@@ -0,0 +1,392 @@
|
|||||||
|
## All directories belong in one of 3 categories.
|
||||||
|
## ${HOST_CONFIGDIRS_LIST} is directories we build using the host tools.
|
||||||
|
## ${TARGET_CONFIGDIRS_LIST} is directories we build using the target tools.
|
||||||
|
## ${BUILD_CONFIGDIRS_LIST} is directories we build using the build tools
|
||||||
|
|
||||||
|
|
||||||
|
dnl RTEMS_ARG_VAR(VAR,HELP-STRING)
|
||||||
|
dnl An internal macros to have help strings pretty
|
||||||
|
dnl printed with configure --help, without letting autoconf spoil config subdir
|
||||||
|
dnl environments by trying to propagate them
|
||||||
|
dnl Stripped down version of autoconf-2.52's AC_ARG_VAR.
|
||||||
|
|
||||||
|
AC_DEFUN([_RTEMS_ARG_VAR],
|
||||||
|
[
|
||||||
|
m4_expand_once([m4_divert_once([HELP_VAR],
|
||||||
|
[AC_HELP_STRING([$1], [$2], [ ])])],
|
||||||
|
[$0($1)])dnl
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN([_RTEMS_SUBST_IFNOT],
|
||||||
|
[AS_IF([`echo " [$]$1 " | grep " $2 " > /dev/null`],
|
||||||
|
[],
|
||||||
|
[AC_SUBST([$1],["[$]$1 $2"])])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN([_RTEMS_COMMANDS_POST_CONFIG_SUBDIRS],
|
||||||
|
[
|
||||||
|
AC_CONFIG_COMMANDS_PRE([
|
||||||
|
_RTEMS_BUILD_CONFIG_PREPARE
|
||||||
|
_RTEMS_HOST_CONFIG_PREPARE
|
||||||
|
_RTEMS_TARGET_CONFIG_PREPARE
|
||||||
|
|
||||||
|
AS_IF([test $build = $host],
|
||||||
|
[
|
||||||
|
AS_IF([test $host = $target],
|
||||||
|
[dnl b=h, h=t, t=b
|
||||||
|
BUILD_SUBDIRS="${build_configdirs}"
|
||||||
|
build_configdirs="${build_configdirs}"
|
||||||
|
HOST_SUBDIRS=""
|
||||||
|
host_configdirs=""
|
||||||
|
TARGET_SUBDIRS=""
|
||||||
|
target_configdirs=""],
|
||||||
|
[dnl b=h, h!=t, t!=b
|
||||||
|
BUILD_SUBDIRS="${build_configdirs}"
|
||||||
|
build_configdirs="${build_configdirs}"
|
||||||
|
HOST_SUBDIRS=""
|
||||||
|
host_configdirs=""
|
||||||
|
TARGET_SUBDIRS=`echo "${target_configdirs}" | \
|
||||||
|
sed -e "s%\([[^ ]][[^ ]]*\)%$target_alias/\1%g"`
|
||||||
|
target_configdirs="${target_configdirs}"
|
||||||
|
])
|
||||||
|
],[
|
||||||
|
AS_IF([test $host = $target],
|
||||||
|
[ dnl b!=h, h=t, b!=t
|
||||||
|
BUILD_SUBDIRS="${build_configdirs}"
|
||||||
|
build_configdirs="${build_configdirs}"
|
||||||
|
HOST_SUBDIRS=`echo "${host_configdirs}" | \
|
||||||
|
sed -e "s%\([[^ ]][[^ ]]*\)%$host_alias/\1%g"`
|
||||||
|
host_configdirs="${host_configdirs}"
|
||||||
|
TARGET_SUBDIRS=""
|
||||||
|
target_configdirs=""],
|
||||||
|
[
|
||||||
|
AS_IF([test $build = $target],
|
||||||
|
[dnl b!=h, h!=t, b=t
|
||||||
|
BUILD_SUBDIRS="${build_configdirs}"
|
||||||
|
build_configdirs="${build_configdirs}"
|
||||||
|
HOST_SUBDIRS=`echo "${host_configdirs}" | \
|
||||||
|
sed -e "s%\([[^ ]][[^ ]]*\)%$host_alias/\1%g"`
|
||||||
|
host_configdirs="${host_configdirs}"
|
||||||
|
TARGET_SUBDIRS=""
|
||||||
|
target_configdirs=""],
|
||||||
|
[dnl b!=h, h!=t, b!=t
|
||||||
|
BUILD_SUBDIRS="${build_configdirs}"
|
||||||
|
build_configdirs="${build_configdirs}"
|
||||||
|
HOST_SUBDIRS=`echo "${host_configdirs}" | \
|
||||||
|
sed -e "s%\([[^ ]][[^ ]]*\)%$host_alias/\1%g"`
|
||||||
|
host_configdirs="${host_configdirs}"
|
||||||
|
TARGET_SUBDIRS=`echo "${target_configdirs}" | \
|
||||||
|
sed -e "s%\([[^ ]][[^ ]]*\)%$target_alias/\1%g"`
|
||||||
|
target_configdirs="${target_configdirs}"
|
||||||
|
])
|
||||||
|
])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_SUBST(HOST_SUBDIRS)
|
||||||
|
AC_SUBST(TARGET_SUBDIRS)
|
||||||
|
AC_SUBST(BUILD_SUBDIRS)
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_CONFIG_COMMANDS_POST([
|
||||||
|
_RTEMS_OUTPUT_SUBDIRS([build],[BUILD])
|
||||||
|
_RTEMS_OUTPUT_SUBDIRS([host],[HOST])
|
||||||
|
_RTEMS_OUTPUT_SUBDIRS([target],[TARGET])
|
||||||
|
])
|
||||||
|
])
|
||||||
|
|
||||||
|
dnl _RTEMS_SRCPATHS(BUILD-DIR-NAME)
|
||||||
|
dnl ----------------------------
|
||||||
|
dnl Inputs:
|
||||||
|
dnl - BUILD-DIR-NAME is `top-build -> build' and `top-src -> src'
|
||||||
|
dnl - `$srcdir' is `top-build -> top-src'
|
||||||
|
dnl
|
||||||
|
dnl Outputs:
|
||||||
|
dnl - `ac_builddir' is `.', for symmetry only.
|
||||||
|
dnl - `ac_top_builddir' is `build -> top_build'.
|
||||||
|
dnl If not empty, has a trailing slash.
|
||||||
|
dnl - `ac_srcdir' is `build -> src'.
|
||||||
|
dnl - `ac_top_srcdir' is `build -> top-src'.
|
||||||
|
dnl
|
||||||
|
dnl and `ac_buildpath' etc., the absolute paths.
|
||||||
|
m4_define([_RTEMS_SRCPATHS],
|
||||||
|
[
|
||||||
|
m4_if([$2],,
|
||||||
|
[dstdir=$1],
|
||||||
|
[case "$2" in
|
||||||
|
"." | "" ) # No subdir was given
|
||||||
|
dstdir=$1;;
|
||||||
|
* ) # A subdir was given
|
||||||
|
dstdir=$2/$1;;
|
||||||
|
esac])
|
||||||
|
ac_builddir=.
|
||||||
|
|
||||||
|
AS_IF([test $dstdir != .],
|
||||||
|
[ # Strip off leading ./
|
||||||
|
ac_builddir_suffix=/`echo $dstdir | sed 's,^\.[[\\/]],,'`
|
||||||
|
ac_srcdir_suffix=/`echo $1 | sed 's,^\.[[\\/]],,'`
|
||||||
|
# A "../" for each directory in $ac_dir_suffix.
|
||||||
|
ac_top_builddir=`echo "$ac_builddir_suffix" | sed 's,/[[^\\/]]*,../,g'`
|
||||||
|
],[
|
||||||
|
ac_dir_suffix= ac_top_builddir=
|
||||||
|
])
|
||||||
|
|
||||||
|
case $srcdir in
|
||||||
|
.) # No --srcdir option. We are building in place.
|
||||||
|
ac_srcdir=.
|
||||||
|
if test -z "$ac_top_builddir"; then
|
||||||
|
ac_top_srcdir=.
|
||||||
|
else
|
||||||
|
ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
|
||||||
|
fi ;;
|
||||||
|
[[\\/]]* | ?:[[\\/]]* ) # Absolute path.
|
||||||
|
ac_srcdir=$srcdir$ac_srcdir_suffix;
|
||||||
|
ac_top_srcdir=$srcdir;
|
||||||
|
;;
|
||||||
|
*) # Relative path.
|
||||||
|
ac_srcdir=$ac_top_builddir$srcdir$ac_srcdir_suffix;
|
||||||
|
ac_top_srcdir=$ac_top_builddir$srcdir;
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
dnl Don't blindly perform a `cd $1/$ac_foo && pwd` since $ac_foo can be
|
||||||
|
dnl absolute.
|
||||||
|
|
||||||
|
ac_buildpath=`cd $dstdir && cd $ac_builddir && pwd`
|
||||||
|
ac_top_buildpath=`cd $dstdir && cd $ac_top_builddir && pwd`
|
||||||
|
ac_srcpath=`cd $dstdir && cd $ac_srcdir && pwd`
|
||||||
|
ac_top_srcpath=`cd $dstdir && cd $ac_top_srcdir && pwd`
|
||||||
|
])# _AC_SRCPATHS
|
||||||
|
|
||||||
|
dnl _RTEMS_OUTPUT_SUBDIRS([host|target|build],[HOST|TARGET|BUILD])
|
||||||
|
AC_DEFUN([_RTEMS_OUTPUT_SUBDIRS],[
|
||||||
|
m4_ifdef([_RTEMS_$2_CONFIGDIRS_LIST],
|
||||||
|
[
|
||||||
|
_RTEMS_ARG_VAR([CC_FOR_$2],
|
||||||
|
[c-compiler to be used for $1 subdirs (default: auto-detected)])
|
||||||
|
if test "$no_recursion" != yes; then
|
||||||
|
|
||||||
|
if test -n "${$2_SUBDIRS}"; then
|
||||||
|
ac_sub_configure_args=
|
||||||
|
ac_prev=
|
||||||
|
for ac_arg in $$1args; 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=*)
|
||||||
|
;;
|
||||||
|
--config-cache | -C)
|
||||||
|
;;
|
||||||
|
-srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
|
||||||
|
ac_prev=srcdir ;;
|
||||||
|
-srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
|
||||||
|
;;
|
||||||
|
-prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
|
||||||
|
ac_prev=prefix ;;
|
||||||
|
-prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
|
||||||
|
;;
|
||||||
|
*) ac_sub_configure_args="$ac_sub_configure_args $ac_arg" ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
# Always prepend --prefix to ensure using the same prefix
|
||||||
|
# in subdir configurations.
|
||||||
|
ac_sub_configure_args="--prefix=$prefix $ac_sub_configure_args"
|
||||||
|
|
||||||
|
case "$$1_subdir" in
|
||||||
|
"." ) ;;
|
||||||
|
* )
|
||||||
|
ac_sub_configure_args="$ac_sub_configure_args --with-target-subdir=$$1_subdir --exec-prefix=${prefix}/$$1_subdir"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# make sure that $1_subdir is not empty
|
||||||
|
test -n "$$1_subdir" || $1_subdir="."
|
||||||
|
|
||||||
|
ac_popdir=`pwd`
|
||||||
|
for ac_dir in $$1_configdirs; do
|
||||||
|
|
||||||
|
# Do not complain, so a configure script can configure whichever
|
||||||
|
# parts of a large source tree are present.
|
||||||
|
test -d $srcdir/$ac_dir || continue
|
||||||
|
|
||||||
|
AC_MSG_NOTICE([configuring in $$1_subdir/$ac_dir])
|
||||||
|
AS_MKDIR_P(["$$1_subdir/$ac_dir"])
|
||||||
|
_RTEMS_SRCPATHS(["$ac_dir"],["$$1_subdir"])
|
||||||
|
|
||||||
|
cd $$1_subdir/$ac_dir
|
||||||
|
|
||||||
|
# Check for guested configure; otherwise get Cygnus style configure.
|
||||||
|
if test -f $ac_srcdir/configure.gnu; then
|
||||||
|
ac_sub_configure="$SHELL '$ac_srcdir/configure.gnu'"
|
||||||
|
elif test -f $ac_srcdir/configure; then
|
||||||
|
ac_sub_configure="$SHELL '$ac_srcdir/configure'"
|
||||||
|
elif test -f $ac_srcdir/configure.in; then
|
||||||
|
ac_sub_configure=$ac_configure
|
||||||
|
else
|
||||||
|
AC_MSG_WARN([no configuration information is in $ac_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.
|
||||||
|
case $cache_file in
|
||||||
|
[[\\/]]* | ?:[[\\/]]* ) ac_sub_cache_file=$cache_file ;;
|
||||||
|
*) # Relative path.
|
||||||
|
ac_sub_cache_file=$ac_top_builddir$cache_file ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
AC_MSG_NOTICE([running $ac_sub_configure $ac_sub_configure_args \
|
||||||
|
--cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir])
|
||||||
|
# The eval makes quoting arguments work.
|
||||||
|
eval CC=[$]CC_FOR_$2 \
|
||||||
|
$ac_sub_configure $ac_sub_configure_args \
|
||||||
|
--cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir ||
|
||||||
|
AC_MSG_ERROR([$ac_sub_configure failed for $ac_dir])
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $ac_popdir
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
])
|
||||||
|
|
||||||
|
## PUBLIC: RTEMS_BUILD_CONFIG_SUBDIRS(build_subdir)
|
||||||
|
# subdirs to be built for the build environment
|
||||||
|
AC_DEFUN([RTEMS_BUILD_CONFIG_SUBDIRS],[
|
||||||
|
m4_append([_RTEMS_BUILD_CONFIGDIRS_LIST],[ $1])
|
||||||
|
dnl Always append to build_configdirs
|
||||||
|
AC_SUBST(build_configdirs,"$build_configdirs $1")
|
||||||
|
|
||||||
|
m4_divert_text([DEFAULTS],
|
||||||
|
[ac_subdirs_all="$ac_subdirs_all m4_normalize([$1])"])
|
||||||
|
m4_expand_once([_RTEMS_COMMANDS_POST_CONFIG_SUBDIRS])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(_RTEMS_BUILD_CONFIG_PREPARE,[
|
||||||
|
# Record the configure arguments in Makefile.
|
||||||
|
m4_ifdef([_RTEMS_BUILD_CONFIGDIRS_LIST],
|
||||||
|
[
|
||||||
|
buildargs=`echo "${ac_configure_args}" | \
|
||||||
|
sed -e 's/--no[[^ ]]*//' \
|
||||||
|
-e 's/--cache[[a-z-]]*=[[^ ]]*//' \
|
||||||
|
-e 's/--ho[[a-z-]]*=[[^ ]]*//' \
|
||||||
|
-e 's/--bu[[a-z-]]*=[[^ ]]*//' \
|
||||||
|
-e 's/--ta[[a-z-]]*=[[^ ]]*//' \
|
||||||
|
-e 's/[[^ ]]*alias=[[^ ]]*//g'` ;
|
||||||
|
|
||||||
|
buildargs="--host=${build} --build=${build} --target=${target_alias} ${buildargs}"
|
||||||
|
AC_SUBST(buildargs)
|
||||||
|
|
||||||
|
build_subdir="."
|
||||||
|
],[])
|
||||||
|
])
|
||||||
|
|
||||||
|
## PUBLIC: RTEMS_HOST_CONFIG_SUBDIRS(host_subdir)
|
||||||
|
# subdirs to be build for the host environment
|
||||||
|
AC_DEFUN([RTEMS_HOST_CONFIG_SUBDIRS],[
|
||||||
|
m4_append([_RTEMS_HOST_CONFIGDIRS_LIST],[ $1])dnl
|
||||||
|
|
||||||
|
if test $build = $host;
|
||||||
|
then
|
||||||
|
if test $host = $target;
|
||||||
|
then
|
||||||
|
_RTEMS_SUBST_IFNOT([build_configdirs],[$1])
|
||||||
|
else
|
||||||
|
_RTEMS_SUBST_IFNOT([build_configdirs],[$1])
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if test $host = $target;
|
||||||
|
then
|
||||||
|
_RTEMS_SUBST_IFNOT([host_configdirs],[$1])
|
||||||
|
else
|
||||||
|
if test $build = $target;
|
||||||
|
then
|
||||||
|
_RTEMS_SUBST_IFNOT([host_configdirs],[$1])
|
||||||
|
else
|
||||||
|
_RTEMS_SUBST_IFNOT([host_configdirs],[$1])
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
m4_divert_text([DEFAULTS],
|
||||||
|
[ac_subdirs_all="$ac_subdirs_all m4_normalize([$1])"])
|
||||||
|
m4_expand_once([_RTEMS_COMMANDS_POST_CONFIG_SUBDIRS])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(_RTEMS_HOST_CONFIG_PREPARE,[
|
||||||
|
m4_ifdef([_RTEMS_HOST_CONFIGDIRS_LIST],
|
||||||
|
[
|
||||||
|
# Record configure arguments in Makefile.
|
||||||
|
hostargs=`echo "${ac_configure_args}" | \
|
||||||
|
sed -e 's/--no[[^ ]]*//' \
|
||||||
|
-e 's/--cache[[a-z-]]*=[[^ ]]*//' \
|
||||||
|
-e 's/--ho[[a-z-]]*=[[^ ]]*//' \
|
||||||
|
-e 's/--bu[[a-z-]]*=[[^ ]]*//' \
|
||||||
|
-e 's/--ta[[a-z-]]*=[[^ ]]*//' \
|
||||||
|
-e 's/[[^ ]]*alias=[[^ ]]*//g'` ;
|
||||||
|
|
||||||
|
hostargs="--host=${host_alias} --build=${build} --target=${target_alias} ${hostargs}"
|
||||||
|
AC_SUBST(hostargs)
|
||||||
|
|
||||||
|
host_subdir="${host_alias}"
|
||||||
|
],[])
|
||||||
|
])
|
||||||
|
|
||||||
|
## PUBLIC: RTEMS_TARGET_CONFIG_SUBDIRS(target_subdir)
|
||||||
|
# subdirs to be build for the target environment
|
||||||
|
AC_DEFUN([RTEMS_TARGET_CONFIG_SUBDIRS],[
|
||||||
|
m4_append([_RTEMS_TARGET_CONFIGDIRS_LIST],[ $1])
|
||||||
|
|
||||||
|
if test $build = $host;
|
||||||
|
then
|
||||||
|
if test $host = $target;
|
||||||
|
then
|
||||||
|
_RTEMS_SUBST_IFNOT([build_configdirs],[$1])
|
||||||
|
else
|
||||||
|
_RTEMS_SUBST_IFNOT([target_configdirs],[$1])
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if test $host = $target;
|
||||||
|
then
|
||||||
|
_RTEMS_SUBST_IFNOT([host_configdirs],[$1])
|
||||||
|
else
|
||||||
|
if test $build = $target;
|
||||||
|
then
|
||||||
|
_RTEMS_SUBST_IFNOT([build_configdirs],[$1])
|
||||||
|
else
|
||||||
|
_RTEMS_SUBST_IFNOT([target_configdirs],[$1])
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
m4_divert_text([DEFAULTS],
|
||||||
|
[ac_subdirs_all="$ac_subdirs_all m4_normalize([$1])"])
|
||||||
|
m4_expand_once([_RTEMS_COMMANDS_POST_CONFIG_SUBDIRS])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(_RTEMS_TARGET_CONFIG_PREPARE,[
|
||||||
|
m4_ifdef([_RTEMS_TARGET_CONFIGDIRS_LIST],
|
||||||
|
[
|
||||||
|
# Record the configure arguments in Makefile.
|
||||||
|
targetargs=`echo "${ac_configure_args}" | \
|
||||||
|
sed -e 's/--no[[^ ]]*//' \
|
||||||
|
-e 's/--cache[[a-z-]]*=[[^ ]]*//' \
|
||||||
|
-e 's/--ho[[a-z-]]*=[[^ ]]*//' \
|
||||||
|
-e 's/--bu[[a-z-]]*=[[^ ]]*//' \
|
||||||
|
-e 's/--ta[[a-z-]]*=[[^ ]]*//' \
|
||||||
|
-e 's/[[^ ]]*alias=[[^ ]]*//g'` ;
|
||||||
|
|
||||||
|
targetargs="--host=${target_alias} --build=${build} --target=${target_alias} ${targetargs}"
|
||||||
|
AC_SUBST(targetargs)
|
||||||
|
|
||||||
|
target_subdir="${target_alias}"
|
||||||
|
],[])
|
||||||
|
])
|
||||||
133
c/src/exec/aclocal/sysv-ipc.m4
Normal file
133
c/src/exec/aclocal/sysv-ipc.m4
Normal file
@@ -0,0 +1,133 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
dnl Check for System V IPC calls used by Unix simulators
|
||||||
|
dnl
|
||||||
|
dnl 98/07/17 Dario Alcocer alcocer@netcom.com
|
||||||
|
dnl Ralf Corsepius corsepiu@faw.uni-ulm.de
|
||||||
|
dnl
|
||||||
|
dnl Note: $host_os should probably *not* ever be used here to
|
||||||
|
dnl determine if host supports System V IPC calls, since some
|
||||||
|
dnl (e.g. FreeBSD 2.x) are configured by default to include only
|
||||||
|
dnl a subset of the System V IPC calls. Therefore, to make sure
|
||||||
|
dnl all of the required calls are found, test for each call explicitly.
|
||||||
|
dnl
|
||||||
|
dnl All of the calls use IPC_PRIVATE, so tests will not unintentionally
|
||||||
|
dnl modify any existing key sets. See the man pages for semget, shmget,
|
||||||
|
dnl msgget, semctl, shmctl and msgctl for details.
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_UNION_SEMUN,
|
||||||
|
[
|
||||||
|
AC_CACHE_CHECK([whether $host defines union semun],
|
||||||
|
rtems_cv_HAS_UNION_SEMUN,
|
||||||
|
[AC_TRY_COMPILE([
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/ipc.h>
|
||||||
|
#include <sys/sem.h>],
|
||||||
|
[union semun arg ;],
|
||||||
|
[rtems_cv_HAS_UNION_SEMUN="yes"],
|
||||||
|
[rtems_cv_HAS_UNION_SEMUN="no"])
|
||||||
|
])
|
||||||
|
if test "$rtems_cv_HAS_UNION_SEMUN" = "yes"; then
|
||||||
|
AC_DEFINE(HAS_UNION_SEMUN,[1],[if having union semum])
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_SYSV_SEM,
|
||||||
|
[AC_REQUIRE([AC_PROG_CC])
|
||||||
|
# AC_REQUIRE([RTEMS_CANONICAL_HOST])
|
||||||
|
AC_CACHE_CHECK(whether $host supports System V semaphores,
|
||||||
|
rtems_cv_sysv_sem,
|
||||||
|
[
|
||||||
|
AC_TRY_RUN(
|
||||||
|
[
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/ipc.h>
|
||||||
|
#include <sys/sem.h>
|
||||||
|
#if !HAS_UNION_SEMUN
|
||||||
|
union semun {
|
||||||
|
int val;
|
||||||
|
struct semid_ds *buf;
|
||||||
|
ushort *array;
|
||||||
|
} ;
|
||||||
|
#endif
|
||||||
|
int main () {
|
||||||
|
union semun arg ;
|
||||||
|
|
||||||
|
int id=semget(IPC_PRIVATE,1,IPC_CREAT|0400);
|
||||||
|
if (id == -1)
|
||||||
|
exit(1);
|
||||||
|
arg.val = 0; /* avoid implicit type cast to union */
|
||||||
|
if (semctl(id, 0, IPC_RMID, arg) == -1)
|
||||||
|
exit(1);
|
||||||
|
exit(0);
|
||||||
|
}
|
||||||
|
],
|
||||||
|
rtems_cv_sysv_sem="yes", rtems_cv_sysv_sem="no", :)
|
||||||
|
])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_SYSV_SHM,
|
||||||
|
[AC_REQUIRE([AC_PROG_CC])
|
||||||
|
# AC_REQUIRE([RTEMS_CANONICAL_HOST])
|
||||||
|
AC_CACHE_CHECK(whether $host supports System V shared memory,
|
||||||
|
rtems_cv_sysv_shm,
|
||||||
|
[
|
||||||
|
AC_TRY_RUN([
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/ipc.h>
|
||||||
|
#include <sys/shm.h>
|
||||||
|
int main () {
|
||||||
|
int id=shmget(IPC_PRIVATE,1,IPC_CREAT|0400);
|
||||||
|
if (id == -1)
|
||||||
|
exit(1);
|
||||||
|
if (shmctl(id, IPC_RMID, 0) == -1)
|
||||||
|
exit(1);
|
||||||
|
exit(0);
|
||||||
|
}
|
||||||
|
],
|
||||||
|
rtems_cv_sysv_shm="yes", rtems_cv_sysv_shm="no", :)
|
||||||
|
])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_SYSV_MSG,
|
||||||
|
[AC_REQUIRE([AC_PROG_CC])
|
||||||
|
# AC_REQUIRE([RTEMS_CANONICAL_HOST])
|
||||||
|
AC_CACHE_CHECK(whether $host supports System V messages,
|
||||||
|
rtems_cv_sysv_msg,
|
||||||
|
[
|
||||||
|
AC_TRY_RUN([
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/ipc.h>
|
||||||
|
#include <sys/msg.h>
|
||||||
|
int main () {
|
||||||
|
int id=msgget(IPC_PRIVATE,IPC_CREAT|0400);
|
||||||
|
if (id == -1)
|
||||||
|
exit(1);
|
||||||
|
if (msgctl(id, IPC_RMID, 0) == -1)
|
||||||
|
exit(1);
|
||||||
|
exit(0);
|
||||||
|
}
|
||||||
|
],
|
||||||
|
rtems_cv_sysv_msg="yes", rtems_cv_sysv_msg="no", :)
|
||||||
|
])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_CHECK_SYSV_UNIX,
|
||||||
|
[# AC_REQUIRE([RTEMS_CANONICAL_HOST])
|
||||||
|
if test "$RTEMS_CPU" = "unix" ; then
|
||||||
|
RTEMS_UNION_SEMUN
|
||||||
|
RTEMS_SYSV_SEM
|
||||||
|
if test "$rtems_cv_sysv_sem" != "yes" ; then
|
||||||
|
AC_MSG_ERROR([System V semaphores don't work, required by simulator])
|
||||||
|
fi
|
||||||
|
RTEMS_SYSV_SHM
|
||||||
|
if test "$rtems_cv_sysv_shm" != "yes" ; then
|
||||||
|
AC_MSG_ERROR([System V shared memory doesn't work, required by simulator])
|
||||||
|
fi
|
||||||
|
RTEMS_SYSV_MSG
|
||||||
|
if test "$rtems_cv_sysv_msg" != "yes" ; then
|
||||||
|
AC_MSG_ERROR([System V messages don't work, required by simulator])
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
])
|
||||||
23
c/src/exec/aclocal/tool-paths.m4
Normal file
23
c/src/exec/aclocal/tool-paths.m4
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
AC_DEFUN(RTEMS_TOOLPATHS,
|
||||||
|
[
|
||||||
|
# tooldir='$(exec_prefix)/'$target_alias
|
||||||
|
# Temporary work-around until building in source tree is supported
|
||||||
|
AC_REQUIRE([RTEMS_PROJECT_ROOT])
|
||||||
|
|
||||||
|
tooldir='$(PROJECT_ROOT)'
|
||||||
|
AC_SUBST(tooldir)
|
||||||
|
|
||||||
|
project_includedir='$(tooldir)'/include
|
||||||
|
AC_SUBST(project_includedir)
|
||||||
|
|
||||||
|
project_libdir='$(tooldir)/lib$(MULTISUBDIR)'
|
||||||
|
AC_SUBST(project_libdir)
|
||||||
|
|
||||||
|
project_bindir='$(tooldir)/bin'
|
||||||
|
AC_SUBST(project_bindir)
|
||||||
|
|
||||||
|
rtems_bspdir='$(prefix)/${RTEMS_BSP}'
|
||||||
|
AC_SUBST(rtems_bspdir)
|
||||||
|
rtems_makedir='$(prefix)/make'
|
||||||
|
AC_SUBST(rtems_makedir)
|
||||||
|
])
|
||||||
2
c/src/exec/aclocal/version.m4
Normal file
2
c/src/exec/aclocal/version.m4
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
AC_DEFUN([RTEMS_VERSIONING],
|
||||||
|
m4_define([_RTEMS_VERSION],[ss-20020528]))
|
||||||
39
cpukit/aclocal/bsp-alias.m4
Normal file
39
cpukit/aclocal/bsp-alias.m4
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
|
||||||
|
dnl _RTEMS_BSP_ALIAS(BSP_ALIAS,RTEMS_BSP_FAMILY)
|
||||||
|
dnl Internal subroutine to RTEMS_BSP_ALIAS
|
||||||
|
AC_DEFUN(_RTEMS_BSP_ALIAS,
|
||||||
|
[# account for "aliased" bsps which share source code
|
||||||
|
case $1 in
|
||||||
|
simcpu32) $2=sim68000 ;; # BSVC CPU32 variant
|
||||||
|
c3xsim) $2=c4xsim ;; # TI C3x Simulator in gdb
|
||||||
|
mcp750) $2=motorola_powerpc ;; # Motorola PPC board variant
|
||||||
|
mvme2307) $2=motorola_powerpc ;; # Motorola PPC board variant
|
||||||
|
mvme162lx) $2=mvme162 ;; # m68k - mvme162 board variant
|
||||||
|
gen68360_040) $2=gen68360 ;; # m68k - 68360 in companion mode
|
||||||
|
p4600) $2=p4000 ;; # mips64orion - p4000 board w/IDT 4600
|
||||||
|
p4650) $2=p4000 ;; # mips64orion - p4000 board w/IDT 4650
|
||||||
|
mbx8*) $2=mbx8xx ;; # MBX821/MBX860 board
|
||||||
|
pc386dx) $2=pc386 ;; # i386 - PC w/o FPU
|
||||||
|
pc486) $2=pc386 ;; # i386 - PC with i486DX
|
||||||
|
pc586) $2=pc386 ;; # i386 - PC with Pentium
|
||||||
|
pc686) $2=pc386 ;; # i386 - PC with PentiumPro
|
||||||
|
pck6) $2=pc386 ;; # i386 - PC with K6
|
||||||
|
bare*) $2=bare ;; # EXP: bare-aliases
|
||||||
|
erc32nfp) $2=erc32 ;; # erc32 without fpu
|
||||||
|
leon1) $2=leon ;; # leon without fpu
|
||||||
|
leon2) $2=leon ;; # leon with fpu
|
||||||
|
simsh7032) $2=shsim ;; # SH7032 simulator
|
||||||
|
simsh7045) $2=shsim ;; # SH7045 simulator
|
||||||
|
*) $2=$1;;
|
||||||
|
esac]
|
||||||
|
)
|
||||||
|
|
||||||
|
dnl RTEMS_BSP_ALIAS(BSP_ALIAS,RTEMS_BSP_FAMILY)
|
||||||
|
dnl convert a bsp alias $1 into its bsp directory RTEMS_BSP_FAMILY
|
||||||
|
AC_DEFUN(RTEMS_BSP_ALIAS,
|
||||||
|
[_RTEMS_BSP_ALIAS(m4_if([$1],,[$RTEMS_BSP],[$1]),
|
||||||
|
m4_if([$2],,[RTEMS_BSP_FAMILY],[$2]))]
|
||||||
|
)
|
||||||
25
cpukit/aclocal/canonical-host.m4
Normal file
25
cpukit/aclocal/canonical-host.m4
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_CANONICAL_HOST,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([AC_CANONICAL_HOST])
|
||||||
|
RTEMS_HOST=$host_os
|
||||||
|
case "${target}" in
|
||||||
|
# hpux unix port should go here
|
||||||
|
i[[34567]]86-*linux*) # unix "simulator" port
|
||||||
|
RTEMS_HOST=Linux
|
||||||
|
;;
|
||||||
|
i[[34567]]86-*freebsd*) # unix "simulator" port
|
||||||
|
RTEMS_HOST=FreeBSD
|
||||||
|
;;
|
||||||
|
i[[34567]]86-pc-cygwin*) # Cygwin is just enough unix like :)
|
||||||
|
RTEMS_HOST=Cygwin
|
||||||
|
;;
|
||||||
|
sparc-sun-solaris*) # unix "simulator" port
|
||||||
|
RTEMS_HOST=Solaris
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
AC_SUBST(RTEMS_HOST)
|
||||||
|
])dnl
|
||||||
38
cpukit/aclocal/canonical-target-name.m4
Normal file
38
cpukit/aclocal/canonical-target-name.m4
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
|
||||||
|
dnl canonicalize target cpu
|
||||||
|
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_CANONICAL_TARGET
|
||||||
|
AC_MSG_CHECKING(rtems target cpu)
|
||||||
|
case "${target}" in
|
||||||
|
# hpux unix port should go here
|
||||||
|
i[[34567]]86-*linux*) # unix "simulator" port
|
||||||
|
RTEMS_CPU=unix
|
||||||
|
;;
|
||||||
|
i[[34567]]86-*freebsd*) # unix "simulator" port
|
||||||
|
RTEMS_CPU=unix
|
||||||
|
;;
|
||||||
|
i[[34567]]86-pc-cygwin*) # Cygwin is just enough unix like :)
|
||||||
|
RTEMS_CPU=unix
|
||||||
|
;;
|
||||||
|
no_cpu-*rtems*)
|
||||||
|
RTEMS_CPU=no_cpu
|
||||||
|
;;
|
||||||
|
sparc-sun-solaris*) # unix "simulator" port
|
||||||
|
RTEMS_CPU=unix
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
RTEMS_CPU=`echo $target | sed 's%^\([[^-]]*\)-\(.*\)$%\1%'`
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
AC_SUBST(RTEMS_CPU)
|
||||||
|
AC_MSG_RESULT($RTEMS_CPU)
|
||||||
|
])
|
||||||
28
cpukit/aclocal/canonicalize-tools.m4
Normal file
28
cpukit/aclocal/canonicalize-tools.m4
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
dnl Set target tools
|
||||||
|
dnl
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_GCC_PRINT,
|
||||||
|
[
|
||||||
|
$1=`$CC --print-prog-name=$2`
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_CANONICALIZE_TOOLS,
|
||||||
|
[AC_REQUIRE([RTEMS_PROG_CC])dnl
|
||||||
|
|
||||||
|
dnl FIXME: What shall be done if these tools are not available?
|
||||||
|
RTEMS_CHECK_TOOL(AR,ar,no)
|
||||||
|
RTEMS_CHECK_TOOL(AS,as,no)
|
||||||
|
RTEMS_CHECK_TOOL(LD,ld,no)
|
||||||
|
RTEMS_CHECK_TOOL(NM,nm,no)
|
||||||
|
|
||||||
|
dnl special treatment of ranlib
|
||||||
|
RTEMS_CHECK_TOOL(RANLIB,ranlib,:)
|
||||||
|
|
||||||
|
dnl NOTE: These may not be available if not using gnutools
|
||||||
|
RTEMS_CHECK_TOOL(OBJCOPY,objcopy,no)
|
||||||
|
RTEMS_CHECK_TOOL(SIZE,size,no)
|
||||||
|
RTEMS_CHECK_TOOL(STRIP,strip,:)
|
||||||
|
])
|
||||||
17
cpukit/aclocal/check-bsp-cache.m4
Normal file
17
cpukit/aclocal/check-bsp-cache.m4
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
dnl RTEMS_CHECK_BSP_CACHE(RTEMS_BSP)
|
||||||
|
AC_DEFUN(RTEMS_CHECK_BSP_CACHE,
|
||||||
|
[
|
||||||
|
AC_REQUIRE([RTEMS_CHECK_CPU])dnl sets RTEMS_CPU, target
|
||||||
|
AC_REQUIRE([RTEMS_ENV_RTEMSBSP])dnl set RTEMS_BSP
|
||||||
|
AC_REQUIRE([RTEMS_TOP])dnl sets RTEMS_TOPdir
|
||||||
|
AC_CACHE_CHECK([for RTEMS_CPU_MODEL], rtems_cv_RTEMS_CPU_MODEL,
|
||||||
|
. $RTEMS_TOPdir/c/[$]$1/make/[$]$1.cache)
|
||||||
|
RTEMS_CPU_MODEL=$rtems_cv_RTEMS_CPU_MODEL
|
||||||
|
AC_SUBST(RTEMS_CPU_MODEL)
|
||||||
|
AC_CACHE_CHECK([for RTEMS_BSP_FAMILY], rtems_cv_RTEMS_BSP_FAMILY,
|
||||||
|
. $RTEMS_TOPdir/c/[$]$1/make/[$]$1.cache)
|
||||||
|
RTEMS_BSP_FAMILY=$rtems_cv_RTEMS_BSP_FAMILY
|
||||||
|
AC_SUBST(RTEMS_BSP_FAMILY)
|
||||||
|
])dnl
|
||||||
13
cpukit/aclocal/check-bsps.m4
Normal file
13
cpukit/aclocal/check-bsps.m4
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_CHECK_CUSTOM_BSP,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_TOP])
|
||||||
|
|
||||||
|
AC_MSG_CHECKING([for make/custom/[$]$1.cfg])
|
||||||
|
if test -r "$srcdir/$RTEMS_TOPdir/make/custom/[$]$1.cfg"; then
|
||||||
|
AC_MSG_RESULT([yes])
|
||||||
|
else
|
||||||
|
AC_MSG_ERROR([no])
|
||||||
|
fi
|
||||||
|
])dnl
|
||||||
17
cpukit/aclocal/check-cpu.m4
Normal file
17
cpukit/aclocal/check-cpu.m4
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
dnl check if RTEMS support a cpu
|
||||||
|
AC_DEFUN(RTEMS_CHECK_CPU,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_TOP])
|
||||||
|
AC_REQUIRE([RTEMS_CANONICAL_TARGET_CPU])
|
||||||
|
|
||||||
|
# Is this a supported CPU?
|
||||||
|
AC_MSG_CHECKING([if cpu $RTEMS_CPU is supported])
|
||||||
|
if test -d "$srcdir/$RTEMS_TOPdir/c/src/exec/score/cpu/$RTEMS_CPU"; then
|
||||||
|
AC_MSG_RESULT(yes)
|
||||||
|
else
|
||||||
|
AC_MSG_ERROR(no)
|
||||||
|
fi
|
||||||
|
])dnl
|
||||||
|
|
||||||
37
cpukit/aclocal/check-itron.m4
Normal file
37
cpukit/aclocal/check-itron.m4
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
AC_DEFUN(RTEMS_CHECK_ITRON_API,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_CHECK_CPU])dnl
|
||||||
|
AC_REQUIRE([RTEMS_ENABLE_ITRON])dnl
|
||||||
|
|
||||||
|
AC_CACHE_CHECK([whether CPU supports libitron],
|
||||||
|
rtems_cv_HAS_ITRON_API,
|
||||||
|
[dnl
|
||||||
|
case "$RTEMS_CPU" in
|
||||||
|
unix*)
|
||||||
|
rtems_cv_HAS_ITRON_API="no"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
if test "${RTEMS_HAS_ITRON_API}" = "yes"; then
|
||||||
|
rtems_cv_HAS_ITRON_API="yes";
|
||||||
|
else
|
||||||
|
rtems_cv_HAS_ITRON_API="disabled";
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac])
|
||||||
|
if test "$rtems_cv_HAS_ITRON_API" = "yes"; then
|
||||||
|
HAS_ITRON_API="yes";
|
||||||
|
else
|
||||||
|
HAS_ITRON_API="no";
|
||||||
|
fi
|
||||||
|
AC_SUBST(HAS_ITRON_API)dnl
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_DEFINE_ITRON_API,
|
||||||
|
[AC_REQUIRE([RTEMS_CHECK_ITRON_API])dnl
|
||||||
|
if test x"${HAS_ITRON_API}" = x"yes";
|
||||||
|
then
|
||||||
|
AC_DEFINE_UNQUOTED(RTEMS_ITRON_API,1,[if itron api is supported])
|
||||||
|
fi
|
||||||
|
])
|
||||||
46
cpukit/aclocal/check-multiprocessing.m4
Normal file
46
cpukit/aclocal/check-multiprocessing.m4
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_CHECK_MULTIPROCESSING,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_ENABLE_MULTILIB])dnl
|
||||||
|
AC_REQUIRE([RTEMS_ENV_RTEMSBSP])dnl
|
||||||
|
AC_REQUIRE([RTEMS_TOP])dnl
|
||||||
|
AC_REQUIRE([RTEMS_CHECK_CPU])dnl
|
||||||
|
AC_REQUIRE([RTEMS_ENABLE_MULTIPROCESSING])dnl
|
||||||
|
AC_REQUIRE([RTEMS_BSP_ALIAS])dnl
|
||||||
|
|
||||||
|
AC_CACHE_CHECK([whether BSP supports multiprocessing],
|
||||||
|
rtems_cv_HAS_MP,
|
||||||
|
[dnl
|
||||||
|
if test x"$multilib" = x"yes"; then
|
||||||
|
# FIXME: Currently, multilibs and multiprocessing can not be
|
||||||
|
# build simultaneously
|
||||||
|
rtems_cv_HAS_MP="disabled"
|
||||||
|
else
|
||||||
|
if test -d "$srcdir/${RTEMS_TOPdir}/c/src/lib/libbsp/${RTEMS_CPU}/${RTEMS_BSP_FAMILY}/shmsupp"; then
|
||||||
|
if test "$RTEMS_HAS_MULTIPROCESSING" = "yes"; then
|
||||||
|
rtems_cv_HAS_MP="yes" ;
|
||||||
|
else
|
||||||
|
rtems_cv_HAS_MP="disabled";
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
rtems_cv_HAS_MP="no";
|
||||||
|
fi
|
||||||
|
fi])
|
||||||
|
if test "$rtems_cv_HAS_MP" = "yes"; then
|
||||||
|
HAS_MP="yes"
|
||||||
|
else
|
||||||
|
HAS_MP="no"
|
||||||
|
fi
|
||||||
|
AC_SUBST(HAS_MP)
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_DEFINE_MULTIPROCESSING,
|
||||||
|
[AC_REQUIRE([RTEMS_CHECK_MULTIPROCESSING])dnl
|
||||||
|
if test x"${HAS_MP}" = x"yes";
|
||||||
|
then
|
||||||
|
AC_DEFINE_UNQUOTED(RTEMS_MULTIPROCESSING,1,[if multiprocessing is supported])
|
||||||
|
fi
|
||||||
|
])
|
||||||
29
cpukit/aclocal/check-networking.m4
Normal file
29
cpukit/aclocal/check-networking.m4
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
AC_DEFUN(RTEMS_CHECK_NETWORKING,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_CHECK_CPU])dnl
|
||||||
|
AC_REQUIRE([RTEMS_ENABLE_NETWORKING])dnl
|
||||||
|
|
||||||
|
AC_CACHE_CHECK([whether BSP supports networking],
|
||||||
|
rtems_cv_HAS_NETWORKING,
|
||||||
|
[dnl
|
||||||
|
case "$RTEMS_CPU" in
|
||||||
|
unix*)
|
||||||
|
rtems_cv_HAS_NETWORKING="no"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
if test "${RTEMS_HAS_NETWORKING}" = "yes"; then
|
||||||
|
rtems_cv_HAS_NETWORKING="yes";
|
||||||
|
else
|
||||||
|
rtems_cv_HAS_NETWORKING="disabled";
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac])
|
||||||
|
if test "$rtems_cv_HAS_NETWORKING" = "yes"; then
|
||||||
|
HAS_NETWORKING="yes";
|
||||||
|
else
|
||||||
|
HAS_NETWORKING="no";
|
||||||
|
fi
|
||||||
|
AC_SUBST(HAS_NETWORKING)dnl
|
||||||
|
])
|
||||||
31
cpukit/aclocal/check-newlib.m4
Normal file
31
cpukit/aclocal/check-newlib.m4
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_CHECK_NEWLIB,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_PROG_CC_FOR_TARGET])dnl
|
||||||
|
AC_REQUIRE([RTEMS_CANONICALIZE_TOOLS])dnl
|
||||||
|
AC_CACHE_CHECK([for RTEMS newlib],
|
||||||
|
rtems_cv_use_newlib,
|
||||||
|
[
|
||||||
|
dnl some versions of newlib provide not_required_by_rtems
|
||||||
|
AC_TRY_LINK(
|
||||||
|
[extern void not_required_by_rtems() ;],
|
||||||
|
[not_required_by_rtems()],
|
||||||
|
rtems_cv_use_newlib="yes")
|
||||||
|
|
||||||
|
dnl some versions of newlib provide rtems_provides_crt0()
|
||||||
|
AS_IF([test -z "$rtems_cv_use_newlib"],
|
||||||
|
[AC_TRY_LINK(
|
||||||
|
[extern void rtems_provides_crt0() ;],
|
||||||
|
[rtems_provides_crt0()],
|
||||||
|
rtems_cv_use_newlib="yes",
|
||||||
|
rtems_cv_use_newlib="no")]
|
||||||
|
)
|
||||||
|
])
|
||||||
|
RTEMS_USE_NEWLIB="$rtems_cv_use_newlib"
|
||||||
|
AC_SUBST(RTEMS_USE_NEWLIB)
|
||||||
|
|
||||||
|
AS_IF([test x"${RTEMS_USE_NEWLIB}" = x"yes"],
|
||||||
|
[ AC_DEFINE_UNQUOTED(RTEMS_NEWLIB,1,[if using newlib])]
|
||||||
|
)
|
||||||
|
])
|
||||||
36
cpukit/aclocal/check-posix.m4
Normal file
36
cpukit/aclocal/check-posix.m4
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
AC_DEFUN(RTEMS_CHECK_POSIX_API,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_CHECK_CPU])dnl
|
||||||
|
AC_REQUIRE([RTEMS_ENABLE_POSIX])dnl
|
||||||
|
|
||||||
|
AC_CACHE_CHECK([whether CPU supports libposix],
|
||||||
|
rtems_cv_HAS_POSIX_API,
|
||||||
|
[dnl
|
||||||
|
case "$RTEMS_CPU" in
|
||||||
|
unix*)
|
||||||
|
rtems_cv_HAS_POSIX_API="no"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
if test "${RTEMS_HAS_POSIX_API}" = "yes"; then
|
||||||
|
rtems_cv_HAS_POSIX_API="yes";
|
||||||
|
else
|
||||||
|
rtems_cv_HAS_POSIX_API="disabled";
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac])
|
||||||
|
if test "$rtems_cv_HAS_POSIX_API" = "yes"; then
|
||||||
|
HAS_POSIX_API="yes";
|
||||||
|
else
|
||||||
|
HAS_POSIX_API="no";
|
||||||
|
fi
|
||||||
|
AC_SUBST(HAS_POSIX_API)dnl
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_DEFINE_POSIX_API,
|
||||||
|
[AC_REQUIRE([RTEMS_CHECK_POSIX_API])dnl
|
||||||
|
AS_IF(
|
||||||
|
[test x"${HAS_POSIX_API}" = x"yes"],
|
||||||
|
[AC_DEFINE_UNQUOTED(RTEMS_POSIX_API,1,[if posix api is supported])])
|
||||||
|
])
|
||||||
11
cpukit/aclocal/check-tool.m4
Normal file
11
cpukit/aclocal/check-tool.m4
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
## Check for a cross tool, similar to AC_CHECK_TOOL, but do not fall back to
|
||||||
|
## the un-prefixed version of PROG-TO-CHECK-FOR.
|
||||||
|
dnl RTEMS_CHECK_TOOL(VARIABLE, PROG-TO-CHECK-FOR[, VALUE-IF-NOT-FOUND [, PATH]])
|
||||||
|
AC_DEFUN(RTEMS_CHECK_TOOL,
|
||||||
|
[
|
||||||
|
AS_IF([test "x$build_alias" != "x$host_alias"],
|
||||||
|
[rtems_tool_prefix=${ac_tool_prefix}])
|
||||||
|
AC_CHECK_PROG($1, ${rtems_tool_prefix}$2, ${rtems_tool_prefix}$2, $3, $4)
|
||||||
|
])
|
||||||
19
cpukit/aclocal/enable-bare.m4
Normal file
19
cpukit/aclocal/enable-bare.m4
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
AC_DEFUN(RTEMS_ENABLE_BARE,
|
||||||
|
[
|
||||||
|
AC_ARG_ENABLE(bare-cpu-cflags,
|
||||||
|
AC_HELP_STRING([--enable-bare-cpu-cflags],[specify a particular cpu cflag (bare bsp specific)]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
no) BARE_CPU_CFLAGS="" ;;
|
||||||
|
*) BARE_CPU_CFLAGS="${enableval}" ;;
|
||||||
|
esac],
|
||||||
|
[BARE_CPU_CFLAGS=""])
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(bare-cpu-model,
|
||||||
|
AC_HELP_STRING([--enable-bare-cpu-model],[specify a particular cpu model (bare bsp specific)]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
no) BARE_CPU_MODEL="" ;;
|
||||||
|
*) BARE_CPU_MODEL="${enableval}" ;;
|
||||||
|
esac],
|
||||||
|
[BARE_CPU_MODEL=""])
|
||||||
|
])
|
||||||
|
|
||||||
21
cpukit/aclocal/enable-inlines.m4
Normal file
21
cpukit/aclocal/enable-inlines.m4
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_INLINES,
|
||||||
|
[AC_ARG_ENABLE(rtems-inlines,
|
||||||
|
AC_HELP_STRING([--enable-rtems-inlines],[enable RTEMS inline functions (default:enabled, disable to use macros)]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) RTEMS_USE_MACROS=no ;;
|
||||||
|
no) RTEMS_USE_MACROS=yes ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for disable-rtems-inlines option) ;;
|
||||||
|
esac],[RTEMS_USE_MACROS=no])
|
||||||
|
AC_SUBST(RTEMS_USE_MACROS)dnl
|
||||||
|
|
||||||
|
if test x"${RTEMS_USE_MACROS}" = x"yes";
|
||||||
|
then
|
||||||
|
AC_DEFINE_UNQUOTED(USE_MACROS,1,[if using macros])
|
||||||
|
else
|
||||||
|
AC_DEFINE_UNQUOTED(USE_INLINES,1,[if using inlines])
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
])
|
||||||
33
cpukit/aclocal/enable-itron.m4
Normal file
33
cpukit/aclocal/enable-itron.m4
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_ITRON,
|
||||||
|
[
|
||||||
|
## AC_BEFORE([$0], [RTEMS_CHECK_ITRON_API])dnl
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(itron,
|
||||||
|
AC_HELP_STRING([--enable-itron],[enable itron interface]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) RTEMS_HAS_ITRON_API=yes ;;
|
||||||
|
no) RTEMS_HAS_ITRON_API=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for enable-itron option) ;;
|
||||||
|
esac],[RTEMS_HAS_ITRON_API=yes])
|
||||||
|
|
||||||
|
case "${host}" in
|
||||||
|
# hpux unix port should go here
|
||||||
|
i[[34567]]86-pc-linux*) # unix "simulator" port
|
||||||
|
RTEMS_HAS_ITRON_API=no
|
||||||
|
;;
|
||||||
|
i[[34567]]86-*freebsd*) # unix "simulator" port
|
||||||
|
RTEMS_HAS_ITRON_API=no
|
||||||
|
;;
|
||||||
|
no_cpu-*rtems*)
|
||||||
|
RTEMS_HAS_ITRON_API=no
|
||||||
|
;;
|
||||||
|
sparc-sun-solaris*) # unix "simulator" port
|
||||||
|
RTEMS_HAS_ITRON_API=no
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
AC_SUBST(RTEMS_HAS_ITRON_API)
|
||||||
|
])
|
||||||
13
cpukit/aclocal/enable-multiprocessing.m4
Normal file
13
cpukit/aclocal/enable-multiprocessing.m4
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_MULTIPROCESSING,
|
||||||
|
[
|
||||||
|
AC_ARG_ENABLE(multiprocessing,
|
||||||
|
AC_HELP_STRING([--enable-multiprocessing],[enable multiprocessing interface]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) RTEMS_HAS_MULTIPROCESSING=yes ;;
|
||||||
|
no) RTEMS_HAS_MULTIPROCESSING=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for enable-multiprocessing option) ;;
|
||||||
|
esac],[RTEMS_HAS_MULTIPROCESSING=no])
|
||||||
|
AC_SUBST(RTEMS_HAS_MULTIPROCESSING)dnl
|
||||||
|
])
|
||||||
15
cpukit/aclocal/enable-networking.m4
Normal file
15
cpukit/aclocal/enable-networking.m4
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_NETWORKING,
|
||||||
|
[
|
||||||
|
## AC_BEFORE([$0], [RTEMS_CHECK_NETWORKING])dnl
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(networking,
|
||||||
|
AC_HELP_STRING([--enable-networking],[enable TCP/IP stack]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) RTEMS_HAS_NETWORKING=yes ;;
|
||||||
|
no) RTEMS_HAS_NETWORKING=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for enable-networking option) ;;
|
||||||
|
esac],[RTEMS_HAS_NETWORKING=yes])
|
||||||
|
AC_SUBST(RTEMS_HAS_NETWORKING)dnl
|
||||||
|
])
|
||||||
33
cpukit/aclocal/enable-posix.m4
Normal file
33
cpukit/aclocal/enable-posix.m4
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_POSIX,
|
||||||
|
[
|
||||||
|
## AC_BEFORE([$0], [RTEMS_CHECK_POSIX_API])dnl
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(posix,
|
||||||
|
AC_HELP_STRING([--enable-posix],[enable posix interface]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) RTEMS_HAS_POSIX_API=yes ;;
|
||||||
|
no) RTEMS_HAS_POSIX_API=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for enable-posix option) ;;
|
||||||
|
esac],[RTEMS_HAS_POSIX_API=yes])
|
||||||
|
|
||||||
|
case "${host}" in
|
||||||
|
# hpux unix port should go here
|
||||||
|
i[[34567]]86-pc-linux*) # unix "simulator" port
|
||||||
|
RTEMS_HAS_POSIX_API=no
|
||||||
|
;;
|
||||||
|
i[[34567]]86-*freebsd*) # unix "simulator" port
|
||||||
|
RTEMS_HAS_POSIX_API=no
|
||||||
|
;;
|
||||||
|
no_cpu-*rtems*)
|
||||||
|
RTEMS_HAS_POSIX_API=no
|
||||||
|
;;
|
||||||
|
sparc-sun-solaris*) # unix "simulator" port
|
||||||
|
RTEMS_HAS_POSIX_API=no
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
AC_SUBST(RTEMS_HAS_POSIX_API)
|
||||||
|
])
|
||||||
16
cpukit/aclocal/enable-rtemsbsp.m4
Normal file
16
cpukit/aclocal/enable-rtemsbsp.m4
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
dnl Override the set of BSPs to be built.
|
||||||
|
dnl used by the toplevel configure script
|
||||||
|
dnl RTEMS_ENABLE_RTEMSBSP(rtems_bsp_list)
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_RTEMSBSP,
|
||||||
|
[
|
||||||
|
AC_BEFORE([$0], [RTEMS_ENV_RTEMSBSP])dnl
|
||||||
|
AC_ARG_ENABLE(rtemsbsp,
|
||||||
|
AC_HELP_STRING([--enable-rtemsbsp="bsp1 bsp2 .."],
|
||||||
|
[BSPs to include in build]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes|no) AC_MSG_ERROR([missing argument to --enable-rtemsbsp=\"bsp1 bsp2\"]);;
|
||||||
|
*) $1=$enableval;;
|
||||||
|
esac],[$1=""])
|
||||||
|
])
|
||||||
47
cpukit/aclocal/env-rtemsbsp.m4
Normal file
47
cpukit/aclocal/env-rtemsbsp.m4
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
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_ARG_VAR([RTEMS_BSP],[RTEMS_BSP to build])
|
||||||
|
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)/lib/ -B\$(PROJECT_ROOT)/$RTEMS_BSP/lib/"
|
||||||
|
AC_SUBST(GCC_SPECS)
|
||||||
|
|
||||||
|
PROJECT_INCLUDE="\$(PROJECT_ROOT)/$RTEMS_BSP/lib/include"
|
||||||
|
AC_SUBST(PROJECT_INCLUDE)
|
||||||
|
|
||||||
|
PROJECT_RELEASE="\$(PROJECT_ROOT)/$RTEMS_BSP"
|
||||||
|
AC_SUBST(PROJECT_RELEASE)
|
||||||
|
|
||||||
|
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],[true])
|
||||||
|
AM_CONDITIONAL([MULTILIB],[false])
|
||||||
|
|
||||||
|
includedir="\${exec_prefix}/${RTEMS_BSP}/lib/include"
|
||||||
|
])
|
||||||
41
cpukit/aclocal/env-rtemscpu.m4
Normal file
41
cpukit/aclocal/env-rtemscpu.m4
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENV_RTEMSCPU,
|
||||||
|
[AC_REQUIRE([RTEMS_ENABLE_MULTILIB])
|
||||||
|
|
||||||
|
if test x"$multilib" = x"yes"; then
|
||||||
|
## FIXME: There is no multilib BSP
|
||||||
|
RTEMS_BSP_SPECS=""
|
||||||
|
AC_SUBST(RTEMS_BSP_SPECS)
|
||||||
|
|
||||||
|
if test -n "$with_multisubdir"; then
|
||||||
|
MULTIBUILDTOP=`echo "/$with_multisubdir" | sed 's,/[[^\\/]]*,../,g'`
|
||||||
|
fi
|
||||||
|
AC_SUBST(MULTIBUILDTOP)
|
||||||
|
|
||||||
|
if test -n "$with_multisubdir"; then
|
||||||
|
MULTISUBDIR="/$with_multisubdir"
|
||||||
|
fi
|
||||||
|
AC_SUBST(MULTISUBDIR)
|
||||||
|
|
||||||
|
PROJECT_ROOT="${RTEMS_TOPdir}/\$(MULTIBUILDTOP)\$(top_builddir)"
|
||||||
|
GCC_SPECS="-isystem \$(PROJECT_ROOT)/lib/include"
|
||||||
|
AC_SUBST(GCC_SPECS)
|
||||||
|
|
||||||
|
PROJECT_INCLUDE="\$(PROJECT_ROOT)/lib/include"
|
||||||
|
AC_SUBST(PROJECT_INCLUDE)
|
||||||
|
|
||||||
|
PROJECT_RELEASE="\$(PROJECT_ROOT)"
|
||||||
|
AC_SUBST(PROJECT_RELEASE)
|
||||||
|
|
||||||
|
RTEMS_ROOT=${PROJECT_ROOT}
|
||||||
|
AC_SUBST(RTEMS_ROOT)
|
||||||
|
|
||||||
|
includedir="\${exec_prefix}/lib/include"
|
||||||
|
libdir="${libdir}\$(MULTISUBDIR)"
|
||||||
|
AM_CONDITIONAL([RTEMS_CONFIG_PER_BSP],[false])
|
||||||
|
else
|
||||||
|
RTEMS_ENV_RTEMSBSP
|
||||||
|
RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP)
|
||||||
|
fi
|
||||||
|
])
|
||||||
21
cpukit/aclocal/gcc-pipe.m4
Normal file
21
cpukit/aclocal/gcc-pipe.m4
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
dnl Check whether the target compiler accepts -pipe
|
||||||
|
dnl
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_GCC_PIPE,
|
||||||
|
[AC_REQUIRE([RTEMS_PROG_CC])
|
||||||
|
AC_REQUIRE([AC_CANONICAL_HOST])
|
||||||
|
AC_CACHE_CHECK(whether $CC accepts --pipe,rtems_cv_gcc_pipe,
|
||||||
|
[
|
||||||
|
rtems_cv_gcc_pipe=no
|
||||||
|
if test x"$GCC" = x"yes"; then
|
||||||
|
echo 'void f(){}' >conftest.c
|
||||||
|
if test -z "`${CC} --pipe -c conftest.c 2>&1`";then
|
||||||
|
rtems_cv_gcc_pipe=yes
|
||||||
|
fi
|
||||||
|
rm -f conftest*
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
])
|
||||||
20
cpukit/aclocal/gcc-specs.m4
Normal file
20
cpukit/aclocal/gcc-specs.m4
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
dnl Check whether the target compiler accepts -specs
|
||||||
|
dnl
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_GCC_SPECS,
|
||||||
|
[AC_REQUIRE([RTEMS_PROG_CC])
|
||||||
|
AC_CACHE_CHECK(whether $CC accepts -specs,rtems_cv_gcc_specs,
|
||||||
|
[
|
||||||
|
rtems_cv_gcc_specs=no
|
||||||
|
if test x"$GCC" = x"yes"; then
|
||||||
|
touch confspec
|
||||||
|
echo 'void f(){}' >conftest.c
|
||||||
|
if test -z "`${CC} -specs confspec -c conftest.c 2>&1`";then
|
||||||
|
rtems_cv_gcc_specs=yes
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
rm -f confspec conftest*
|
||||||
|
])])
|
||||||
53
cpukit/aclocal/multi.m4
Normal file
53
cpukit/aclocal/multi.m4
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
#serial 99
|
||||||
|
|
||||||
|
AC_DEFUN(AC_ENABLE_MULTILIB,
|
||||||
|
[
|
||||||
|
AC_ARG_ENABLE(multilib,
|
||||||
|
AC_HELP_STRING([--enable-multilib],
|
||||||
|
[build many library versions (default=no)]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) multilib=yes ;;
|
||||||
|
no) multilib=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;;
|
||||||
|
esac], [multilib=no])dnl
|
||||||
|
|
||||||
|
AM_CONDITIONAL(MULTILIB,test x"${multilib}" = x"yes")
|
||||||
|
|
||||||
|
dnl We may get other options which we don't document:
|
||||||
|
dnl --with-target-subdir, --with-multisrctop, --with-multisubdir
|
||||||
|
|
||||||
|
if test "[$]{srcdir}" = "."; then
|
||||||
|
if test "[$]{with_target_subdir}" != "."; then
|
||||||
|
multilib_basedir="[$]{srcdir}/[$]{with_multisrctop}../ifelse([$2],,,[$2])"
|
||||||
|
else
|
||||||
|
multilib_basedir="[$]{srcdir}/[$]{with_multisrctop}ifelse([$2],,,[$2])"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
multilib_basedir="[$]{srcdir}/ifelse([$2],,,[$2])"
|
||||||
|
fi
|
||||||
|
AC_SUBST(multilib_basedir)
|
||||||
|
|
||||||
|
if test "${multilib}" = "yes"; then
|
||||||
|
multilib_arg="--enable-multilib"
|
||||||
|
else
|
||||||
|
multilib_arg=
|
||||||
|
fi
|
||||||
|
|
||||||
|
AC_OUTPUT_COMMANDS(
|
||||||
|
[case " $CONFIG_FILES " in
|
||||||
|
*" ]m4_if([$1],,Makefile,[$1])[ "*)
|
||||||
|
ac_file=]m4_if([$1],,Makefile,[$1])[ . ${multilib_basedir}/config-ml.in
|
||||||
|
esac],
|
||||||
|
[
|
||||||
|
srcdir=${srcdir}
|
||||||
|
host=${host}
|
||||||
|
target=${target}
|
||||||
|
with_multisrctop="${with_multisrctop}"
|
||||||
|
with_target_subdir="${with_target_subdir}"
|
||||||
|
with_multisubdir="${with_multisubdir}"
|
||||||
|
ac_configure_args="${multilib_arg} ${ac_configure_args}"
|
||||||
|
CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
|
||||||
|
multilib_basedir=${multilib_basedir}
|
||||||
|
CC="${CC}"]
|
||||||
|
)
|
||||||
|
])
|
||||||
59
cpukit/aclocal/multilib.m4
Normal file
59
cpukit/aclocal/multilib.m4
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
dnl This provides configure definitions used for multilib support
|
||||||
|
|
||||||
|
dnl parts of these macros are derived from newlib-1.8.2's multilib support
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_MULTILIB,
|
||||||
|
[
|
||||||
|
AC_ARG_ENABLE(multilib,
|
||||||
|
AC_HELP_STRING([--enable-multilib],
|
||||||
|
[build many library versions (default=no)]),
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) multilib=yes ;;
|
||||||
|
no) multilib=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;;
|
||||||
|
esac], [multilib=no])dnl
|
||||||
|
|
||||||
|
AM_CONDITIONAL(MULTILIB,test x"${multilib}" = x"yes")
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN([RTEMS_ENABLE_MULTILIB_MASTER],
|
||||||
|
[
|
||||||
|
AC_REQUIRE([RTEMS_ENABLE_MULTILIB])
|
||||||
|
|
||||||
|
dnl We may get other options which we don't document:
|
||||||
|
dnl --with-target-subdir, --with-multisrctop, --with-multisubdir
|
||||||
|
|
||||||
|
if test "[$]{srcdir}" = "."; then
|
||||||
|
if test "[$]{with_target_subdir}" != "."; then
|
||||||
|
multilib_basedir="[$]{srcdir}/[$]{with_multisrctop}../ifelse([$2],,,[$2])"
|
||||||
|
else
|
||||||
|
multilib_basedir="[$]{srcdir}/[$]{with_multisrctop}ifelse([$2],,,[$2])"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
multilib_basedir="[$]{srcdir}/ifelse([$2],,,[$2])"
|
||||||
|
fi
|
||||||
|
AC_SUBST(multilib_basedir)
|
||||||
|
|
||||||
|
if test "${multilib}" = "yes"; then
|
||||||
|
multilib_arg="--enable-multilib"
|
||||||
|
else
|
||||||
|
multilib_arg=
|
||||||
|
fi
|
||||||
|
|
||||||
|
AC_OUTPUT_COMMANDS(
|
||||||
|
[case " $CONFIG_FILES " in
|
||||||
|
*" ]m4_if([$1],,Makefile,[$1])[ "*)
|
||||||
|
ac_file=]m4_if([$1],,Makefile,[$1])[ . ${multilib_basedir}/config-ml.in
|
||||||
|
esac],
|
||||||
|
[
|
||||||
|
srcdir=${srcdir}
|
||||||
|
host=${host}
|
||||||
|
target=${target}
|
||||||
|
with_multisrctop="${with_multisrctop}"
|
||||||
|
with_target_subdir="${with_target_subdir}"
|
||||||
|
with_multisubdir="${with_multisubdir}"
|
||||||
|
ac_configure_args="${multilib_arg} ${ac_configure_args}"
|
||||||
|
CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
|
||||||
|
multilib_basedir=${multilib_basedir}
|
||||||
|
CC="${CC}"])
|
||||||
|
])
|
||||||
50
cpukit/aclocal/prog-cc.m4
Normal file
50
cpukit/aclocal/prog-cc.m4
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
dnl Check for target gcc
|
||||||
|
dnl
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_PROG_CC,
|
||||||
|
[
|
||||||
|
AC_BEFORE([$0], [AC_PROG_CPP])dnl
|
||||||
|
AC_BEFORE([$0], [AC_PROG_CC])dnl
|
||||||
|
AC_BEFORE([$0], [RTEMS_CANONICALIZE_TOOLS])dnl
|
||||||
|
|
||||||
|
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")
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_PROG_CC_FOR_TARGET,
|
||||||
|
[
|
||||||
|
dnl check target cc
|
||||||
|
RTEMS_PROG_CC
|
||||||
|
dnl check if the compiler supports --specs
|
||||||
|
RTEMS_GCC_SPECS
|
||||||
|
dnl check if the target compiler may use --pipe
|
||||||
|
RTEMS_GCC_PIPE
|
||||||
|
dnl check if the compiler supports --specs if gcc28 is requested
|
||||||
|
# if test "$rtems_cv_gcc_specs" = "no"; then
|
||||||
|
# AC_MSG_WARN([*** disabling --enable-gcc28])
|
||||||
|
# RTEMS_USE_GCC272=yes
|
||||||
|
# fi
|
||||||
|
test "$rtems_cv_gcc_pipe" = "yes" && CC="$CC --pipe"
|
||||||
|
|
||||||
|
if test "$GCC" = yes; then
|
||||||
|
]
|
||||||
|
m4_if([$1],,[],[CPPFLAGS="$CPPFLAGS $1"])
|
||||||
|
[
|
||||||
|
CFLAGS="-g -Wall"
|
||||||
|
fi
|
||||||
|
|
||||||
|
dnl FIXME: HACK for egcs/cygwin mixing '\\' and '/' in gcc -print-*
|
||||||
|
case $build_os in
|
||||||
|
*cygwin*) GCCSED="| sed 's%\\\\%/%g'" ;;
|
||||||
|
*) ;;
|
||||||
|
esac
|
||||||
|
AC_SUBST(GCCSED)
|
||||||
|
])
|
||||||
32
cpukit/aclocal/rtems-cpu-subdirs.m4
Normal file
32
cpukit/aclocal/rtems-cpu-subdirs.m4
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
AC_DEFUN([_RTEMS_CPU_SUBDIR],
|
||||||
|
[
|
||||||
|
$1 ) if test -d ${srcdir}/ifelse([$2],,[$1],[$2/$1]) ; then
|
||||||
|
AC_CONFIG_SUBDIRS(ifelse([$2],,[$1],[$2/$1]))
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
|
## RTEMS_CPU_SUBDIRS([PREFIX])
|
||||||
|
AC_DEFUN([RTEMS_CPU_SUBDIRS],
|
||||||
|
[
|
||||||
|
## EDIT: If adding a new cpu to RTEMS, add it to the case block below.
|
||||||
|
case $RTEMS_CPU in
|
||||||
|
_RTEMS_CPU_SUBDIR([a29k],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([arm],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([c4x],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([h8300],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([hppa1.1],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([i386],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([i960],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([m68k],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([mips],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([mips64orion],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([no_cpu],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([or16],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([or32],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([powerpc],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([sh],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([sparc],[$1]);;
|
||||||
|
_RTEMS_CPU_SUBDIR([unix],[$1]);;
|
||||||
|
*) AC_MSG_ERROR([Invalid RTEMS_CPU])
|
||||||
|
esac
|
||||||
|
])
|
||||||
19
cpukit/aclocal/rtems-debug.m4
Normal file
19
cpukit/aclocal/rtems-debug.m4
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
## $Id$
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_ENABLE_RTEMS_DEBUG,
|
||||||
|
[
|
||||||
|
AC_ARG_ENABLE(rtems-debug,
|
||||||
|
AC_HELP_STRING([--enable-rtems-debug],[enable RTEMS_DEBUG]),
|
||||||
|
[case "${enable_rtems_debug}" in
|
||||||
|
yes) enable_rtems_debug=yes ;;
|
||||||
|
no) enable_rtems_debug=no ;;
|
||||||
|
*) AC_MSG_ERROR([bad value ${enable_rtems_debug} for RTEMS_DEBUG]) ;;
|
||||||
|
esac],[enable_rtems_debug=no])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_CHECK_RTEMS_DEBUG,
|
||||||
|
[AC_REQUIRE([RTEMS_ENABLE_RTEMS_DEBUG])
|
||||||
|
AS_IF([test x"${enable_rtems_debug}" = x"yes"]
|
||||||
|
[AC_DEFINE_UNQUOTED(RTEMS_DEBUG,1,[if RTEMS_DEBUG is enabled])])
|
||||||
|
])
|
||||||
|
|
||||||
52
cpukit/aclocal/rtems-top.m4
Normal file
52
cpukit/aclocal/rtems-top.m4
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
dnl $Id$
|
||||||
|
|
||||||
|
dnl
|
||||||
|
dnl RTEMS_TOP($1)
|
||||||
|
dnl
|
||||||
|
dnl $1 .. relative path from this configure.in to the toplevel configure.in
|
||||||
|
dnl
|
||||||
|
AC_DEFUN(RTEMS_TOP,
|
||||||
|
[dnl
|
||||||
|
AC_REQUIRE([RTEMS_VERSIONING])
|
||||||
|
AC_CHECK_PROGS(MAKE, gmake make)
|
||||||
|
AC_BEFORE([$0], [AC_CONFIG_AUX_DIR])dnl
|
||||||
|
AC_BEFORE([$0], [AM_INIT_AUTOMAKE])dnl
|
||||||
|
|
||||||
|
AC_PREFIX_DEFAULT([/opt/rtems])
|
||||||
|
|
||||||
|
## HACK to allow gnu-make conditionals in automake-Makefiles.
|
||||||
|
ENDIF=endif
|
||||||
|
AC_SUBST(ENDIF)
|
||||||
|
|
||||||
|
RTEMS_TOPdir="$1";
|
||||||
|
AC_SUBST(RTEMS_TOPdir)
|
||||||
|
|
||||||
|
## with_target_subdirs is handled implicitly by autoconf
|
||||||
|
test -n "$with_target_subdir" || with_target_subdir="."
|
||||||
|
|
||||||
|
if test "$with_target_subdir" = "." ; then
|
||||||
|
# Native
|
||||||
|
PROJECT_TOPdir=${RTEMS_TOPdir}/'$(top_builddir)'
|
||||||
|
else
|
||||||
|
# Cross
|
||||||
|
dots=`echo $with_target_subdir|\
|
||||||
|
sed -e 's%^\./%%' -e 's%[[^/]]$%&/%' -e 's%[[^/]]*/%../%g'`
|
||||||
|
PROJECT_TOPdir=${dots}${RTEMS_TOPdir}/'$(top_builddir)'
|
||||||
|
fi
|
||||||
|
AC_SUBST(PROJECT_TOPdir)
|
||||||
|
|
||||||
|
if test "$with_target_subdir" = "." ; then
|
||||||
|
# Native
|
||||||
|
PROJECT_ROOT="${RTEMS_TOPdir}/\$(top_builddir)"
|
||||||
|
else
|
||||||
|
# Cross
|
||||||
|
PROJECT_ROOT="${RTEMS_TOPdir}/\$(top_builddir)"
|
||||||
|
fi
|
||||||
|
AC_SUBST(PROJECT_ROOT)
|
||||||
|
|
||||||
|
AC_MSG_CHECKING([for RTEMS Version])
|
||||||
|
AS_IF([test -r "${srcdir}/${RTEMS_TOPdir}/aclocal/version.m4"],
|
||||||
|
[],
|
||||||
|
[AC_MSG_ERROR([Unable to find ${RTEMS_TOPdir}/aclocal/version.m4])])
|
||||||
|
AC_MSG_RESULT([_RTEMS_VERSION])
|
||||||
|
])dnl
|
||||||
133
cpukit/aclocal/sysv-ipc.m4
Normal file
133
cpukit/aclocal/sysv-ipc.m4
Normal file
@@ -0,0 +1,133 @@
|
|||||||
|
dnl
|
||||||
|
dnl $Id$
|
||||||
|
dnl
|
||||||
|
dnl Check for System V IPC calls used by Unix simulators
|
||||||
|
dnl
|
||||||
|
dnl 98/07/17 Dario Alcocer alcocer@netcom.com
|
||||||
|
dnl Ralf Corsepius corsepiu@faw.uni-ulm.de
|
||||||
|
dnl
|
||||||
|
dnl Note: $host_os should probably *not* ever be used here to
|
||||||
|
dnl determine if host supports System V IPC calls, since some
|
||||||
|
dnl (e.g. FreeBSD 2.x) are configured by default to include only
|
||||||
|
dnl a subset of the System V IPC calls. Therefore, to make sure
|
||||||
|
dnl all of the required calls are found, test for each call explicitly.
|
||||||
|
dnl
|
||||||
|
dnl All of the calls use IPC_PRIVATE, so tests will not unintentionally
|
||||||
|
dnl modify any existing key sets. See the man pages for semget, shmget,
|
||||||
|
dnl msgget, semctl, shmctl and msgctl for details.
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_UNION_SEMUN,
|
||||||
|
[
|
||||||
|
AC_CACHE_CHECK([whether $host defines union semun],
|
||||||
|
rtems_cv_HAS_UNION_SEMUN,
|
||||||
|
[AC_TRY_COMPILE([
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/ipc.h>
|
||||||
|
#include <sys/sem.h>],
|
||||||
|
[union semun arg ;],
|
||||||
|
[rtems_cv_HAS_UNION_SEMUN="yes"],
|
||||||
|
[rtems_cv_HAS_UNION_SEMUN="no"])
|
||||||
|
])
|
||||||
|
if test "$rtems_cv_HAS_UNION_SEMUN" = "yes"; then
|
||||||
|
AC_DEFINE(HAS_UNION_SEMUN,[1],[if having union semum])
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_SYSV_SEM,
|
||||||
|
[AC_REQUIRE([AC_PROG_CC])
|
||||||
|
# AC_REQUIRE([RTEMS_CANONICAL_HOST])
|
||||||
|
AC_CACHE_CHECK(whether $host supports System V semaphores,
|
||||||
|
rtems_cv_sysv_sem,
|
||||||
|
[
|
||||||
|
AC_TRY_RUN(
|
||||||
|
[
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/ipc.h>
|
||||||
|
#include <sys/sem.h>
|
||||||
|
#if !HAS_UNION_SEMUN
|
||||||
|
union semun {
|
||||||
|
int val;
|
||||||
|
struct semid_ds *buf;
|
||||||
|
ushort *array;
|
||||||
|
} ;
|
||||||
|
#endif
|
||||||
|
int main () {
|
||||||
|
union semun arg ;
|
||||||
|
|
||||||
|
int id=semget(IPC_PRIVATE,1,IPC_CREAT|0400);
|
||||||
|
if (id == -1)
|
||||||
|
exit(1);
|
||||||
|
arg.val = 0; /* avoid implicit type cast to union */
|
||||||
|
if (semctl(id, 0, IPC_RMID, arg) == -1)
|
||||||
|
exit(1);
|
||||||
|
exit(0);
|
||||||
|
}
|
||||||
|
],
|
||||||
|
rtems_cv_sysv_sem="yes", rtems_cv_sysv_sem="no", :)
|
||||||
|
])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_SYSV_SHM,
|
||||||
|
[AC_REQUIRE([AC_PROG_CC])
|
||||||
|
# AC_REQUIRE([RTEMS_CANONICAL_HOST])
|
||||||
|
AC_CACHE_CHECK(whether $host supports System V shared memory,
|
||||||
|
rtems_cv_sysv_shm,
|
||||||
|
[
|
||||||
|
AC_TRY_RUN([
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/ipc.h>
|
||||||
|
#include <sys/shm.h>
|
||||||
|
int main () {
|
||||||
|
int id=shmget(IPC_PRIVATE,1,IPC_CREAT|0400);
|
||||||
|
if (id == -1)
|
||||||
|
exit(1);
|
||||||
|
if (shmctl(id, IPC_RMID, 0) == -1)
|
||||||
|
exit(1);
|
||||||
|
exit(0);
|
||||||
|
}
|
||||||
|
],
|
||||||
|
rtems_cv_sysv_shm="yes", rtems_cv_sysv_shm="no", :)
|
||||||
|
])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_SYSV_MSG,
|
||||||
|
[AC_REQUIRE([AC_PROG_CC])
|
||||||
|
# AC_REQUIRE([RTEMS_CANONICAL_HOST])
|
||||||
|
AC_CACHE_CHECK(whether $host supports System V messages,
|
||||||
|
rtems_cv_sysv_msg,
|
||||||
|
[
|
||||||
|
AC_TRY_RUN([
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/ipc.h>
|
||||||
|
#include <sys/msg.h>
|
||||||
|
int main () {
|
||||||
|
int id=msgget(IPC_PRIVATE,IPC_CREAT|0400);
|
||||||
|
if (id == -1)
|
||||||
|
exit(1);
|
||||||
|
if (msgctl(id, IPC_RMID, 0) == -1)
|
||||||
|
exit(1);
|
||||||
|
exit(0);
|
||||||
|
}
|
||||||
|
],
|
||||||
|
rtems_cv_sysv_msg="yes", rtems_cv_sysv_msg="no", :)
|
||||||
|
])
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN(RTEMS_CHECK_SYSV_UNIX,
|
||||||
|
[# AC_REQUIRE([RTEMS_CANONICAL_HOST])
|
||||||
|
if test "$RTEMS_CPU" = "unix" ; then
|
||||||
|
RTEMS_UNION_SEMUN
|
||||||
|
RTEMS_SYSV_SEM
|
||||||
|
if test "$rtems_cv_sysv_sem" != "yes" ; then
|
||||||
|
AC_MSG_ERROR([System V semaphores don't work, required by simulator])
|
||||||
|
fi
|
||||||
|
RTEMS_SYSV_SHM
|
||||||
|
if test "$rtems_cv_sysv_shm" != "yes" ; then
|
||||||
|
AC_MSG_ERROR([System V shared memory doesn't work, required by simulator])
|
||||||
|
fi
|
||||||
|
RTEMS_SYSV_MSG
|
||||||
|
if test "$rtems_cv_sysv_msg" != "yes" ; then
|
||||||
|
AC_MSG_ERROR([System V messages don't work, required by simulator])
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
])
|
||||||
23
cpukit/aclocal/tool-paths.m4
Normal file
23
cpukit/aclocal/tool-paths.m4
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
AC_DEFUN(RTEMS_TOOLPATHS,
|
||||||
|
[
|
||||||
|
# tooldir='$(exec_prefix)/'$target_alias
|
||||||
|
# Temporary work-around until building in source tree is supported
|
||||||
|
AC_REQUIRE([RTEMS_PROJECT_ROOT])
|
||||||
|
|
||||||
|
tooldir='$(PROJECT_ROOT)'
|
||||||
|
AC_SUBST(tooldir)
|
||||||
|
|
||||||
|
project_includedir='$(tooldir)'/include
|
||||||
|
AC_SUBST(project_includedir)
|
||||||
|
|
||||||
|
project_libdir='$(tooldir)/lib$(MULTISUBDIR)'
|
||||||
|
AC_SUBST(project_libdir)
|
||||||
|
|
||||||
|
project_bindir='$(tooldir)/bin'
|
||||||
|
AC_SUBST(project_bindir)
|
||||||
|
|
||||||
|
rtems_bspdir='$(prefix)/${RTEMS_BSP}'
|
||||||
|
AC_SUBST(rtems_bspdir)
|
||||||
|
rtems_makedir='$(prefix)/make'
|
||||||
|
AC_SUBST(rtems_makedir)
|
||||||
|
])
|
||||||
2
cpukit/aclocal/version.m4
Normal file
2
cpukit/aclocal/version.m4
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
AC_DEFUN([RTEMS_VERSIONING],
|
||||||
|
m4_define([_RTEMS_VERSION],[ss-20020528]))
|
||||||
Reference in New Issue
Block a user