[66387986] | 1 | ## Process this file with autoconf to produce a configure script. |
---|
| 2 | ## |
---|
| 3 | ## $Id$ |
---|
[eb299afc] | 4 | |
---|
[810720b6] | 5 | AC_PREREQ(2.59) |
---|
[7dcc3fe] | 6 | AC_INIT([rtems-c],[_RTEMS_VERSION],[rtems-bugs@rtems.com]) |
---|
[1204f22] | 7 | AC_CONFIG_SRCDIR([TOOL_TARGETS]) |
---|
[eb299afc] | 8 | RTEMS_TOP(..) |
---|
| 9 | |
---|
| 10 | RTEMS_CANONICAL_TARGET_CPU |
---|
| 11 | |
---|
[3e46c1cf] | 12 | AM_INIT_AUTOMAKE([no-define foreign 1.9]) |
---|
[eb299afc] | 13 | AM_MAINTAINER_MODE |
---|
| 14 | |
---|
[66387986] | 15 | ## These options are used within this file. |
---|
[1204f22] | 16 | RTEMS_ENABLE_RTEMSBSP |
---|
[eb299afc] | 17 | |
---|
[1204f22] | 18 | AS_IF([test x"$enable_rtemsbsp" = x"no"],[ |
---|
| 19 | rtems_bsp="" |
---|
| 20 | ],[ |
---|
| 21 | AS_IF([test -z "$enable_rtemsbsp"], |
---|
| 22 | [RTEMS_CHECK_BSPS(rtems_bsp)], |
---|
| 23 | [rtems_bsp="$enable_rtemsbsp"]) |
---|
[eb299afc] | 24 | |
---|
| 25 | for i in $rtems_bsp; do |
---|
| 26 | |
---|
| 27 | # make sure there is a make/custom file for the bsp |
---|
| 28 | RTEMS_CHECK_CUSTOM_BSP(i) |
---|
| 29 | |
---|
| 30 | RTEMS_BSP_ALIAS($i,bspdir) |
---|
| 31 | |
---|
| 32 | # Is there code where there should be for this BSP? |
---|
| 33 | # The bare bsp is a special case as it is not under the RTEMS_CPU path |
---|
[b62a92c] | 34 | case $bspdir in |
---|
[eb299afc] | 35 | bare) |
---|
| 36 | bspcpudir= |
---|
| 37 | ;; |
---|
| 38 | *) |
---|
| 39 | bspcpudir=$RTEMS_CPU/ |
---|
| 40 | ;; |
---|
| 41 | esac |
---|
| 42 | |
---|
| 43 | if test -d "$srcdir/$RTEMS_TOPdir/c/src/lib/libbsp/$bspcpudir$bspdir"; then |
---|
| 44 | RTEMS_BSP_LIST="$RTEMS_BSP_LIST $i" |
---|
| 45 | else |
---|
| 46 | AC_MSG_ERROR([unable to find libbsp directory ($bspdir) for $i]) |
---|
| 47 | fi |
---|
| 48 | done |
---|
[1204f22] | 49 | ]) |
---|
[eb299afc] | 50 | |
---|
| 51 | # |
---|
| 52 | # Compose the configuration arguments to be passed to c/src/configure |
---|
| 53 | # |
---|
[1204f22] | 54 | ## |
---|
[eb299afc] | 55 | ## Partially borrowed from autoconf-2.13 |
---|
| 56 | ## |
---|
| 57 | |
---|
| 58 | ## Adjust paths |
---|
[eab41f63] | 59 | _RTEMS_ADJUST_SRCDIR([rtems_bsp_configure],[src]) |
---|
| 60 | rtems_bsp_configure="$rtems_bsp_configure/configure" |
---|
[2fe08ccb] | 61 | RTEMS_CONFIGURE_ARGS_QUOTE([rtems_bsp_configure_args], |
---|
[45789f2] | 62 | [-enable-rtemsbsp=* | --enable-rtemsbsp=* ) ;;]) |
---|
[eb299afc] | 63 | |
---|
| 64 | rtems_bsp_configure="$rtems_bsp_configure $rtems_bsp_configure_args" |
---|
[1b7c9183] | 65 | rtems_bsp_configure="$rtems_bsp_configure '--with-project-root=../../'" |
---|
| 66 | rtems_bsp_configure="$rtems_bsp_configure '--with-project-top=../../'" |
---|
[eb299afc] | 67 | AC_SUBST(rtems_bsp_configure) |
---|
| 68 | |
---|
| 69 | AC_SUBST(RTEMS_BSP_LIST) |
---|
| 70 | |
---|
[70810dc] | 71 | # Explicitly list all Makefiles here |
---|
[73dc152] | 72 | AC_CONFIG_FILES([Makefile],[ |
---|
| 73 | for bsp in : $RTEMS_BSP_LIST; do test "x$bsp" = x: && continue |
---|
| 74 | cat >> Makefile << BSPEOF |
---|
| 75 | |
---|
| 76 | $bsp: src/configure |
---|
| 77 | @set fnord \$(MAKEFLAGS); amf=\[$]\[$]2; \\ |
---|
| 78 | echo "Configuring RTEMS_BSP=$bsp"; \\ |
---|
| 79 | \$(mkdir_p) $bsp; \\ |
---|
| 80 | ( cd $bsp && \\ |
---|
| 81 | CONFIG_SHELL=\$(SHELL) RTEMS_BSP=$bsp \$(rtems_bsp_configure) ) \\ |
---|
| 82 | || case "\$\$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; |
---|
| 83 | BSPEOF |
---|
| 84 | done |
---|
| 85 | ],[RTEMS_BSP_LIST="$RTEMS_BSP_LIST"]) |
---|
[66387986] | 86 | AC_OUTPUT |
---|
[eb299afc] | 87 | |
---|
| 88 | echo |
---|
| 89 | echo target architecture: $target_cpu. |
---|
| 90 | echo available BSPs: $rtems_bsp. |
---|
[7b79761] | 91 | echo \'${MAKE} all\' will build the following BSPs: $RTEMS_BSP_LIST. |
---|
| 92 | echo other BSPs can be built with \'${MAKE} RTEMS_BSP=\"bsp1 bsp2 ...\"\' |
---|
[eb299afc] | 93 | echo |
---|