summaryrefslogtreecommitdiffstats
path: root/aclocal/bspopts.m4
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2001-11-14 18:57:26 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2001-11-14 18:57:26 +0000
commit7ee86ba746e7109824a07a056877f7b48d05e910 (patch)
treedb382bcfeb21bb48515b520ef54832ed71899def /aclocal/bspopts.m4
parent5f4867debf3215d68c60851bba4c9cfa742ecd15 (diff)
downloadrtems-7ee86ba746e7109824a07a056877f7b48d05e910.tar.bz2
2001-11-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* aclocal/bspopts.m4: New file.
Diffstat (limited to 'aclocal/bspopts.m4')
-rw-r--r--aclocal/bspopts.m466
1 files changed, 66 insertions, 0 deletions
diff --git a/aclocal/bspopts.m4 b/aclocal/bspopts.m4
new file mode 100644
index 0000000000..e7ba131ae5
--- /dev/null
+++ b/aclocal/bspopts.m4
@@ -0,0 +1,66 @@
+dnl $Id$
+dnl
+
+dnl RTEMS_BSPOPTS_* - some autoconf voodoo to handle default values and
+dnl help-strings for per-BSP-environment variables.
+
+dnl To be used in bsp-configure scripts
+
+
+dnl Example:
+dnl
+dnl RTEMS_BSPOPTS_SET([foo],[bar],[0])
+dnl RTEMS_BSPOPTS_SET([foo],[baz*],[hello])
+dnl RTEMS_BSPOPTS_SET([foo],[*],[])
+dnl RTEMS_BSPOPTS_HELP([foo],[env. variable foo])
+dnl -> Add "0" as default value of variable "foo" for BSP "bar"
+dnl -> Add "hello" as default value of variable "foo" for all BSPs starting
+dnl with "baz" in their name.
+dnl -> Undefine foo as default clause for all BSP's.
+dnl
+dnl All this basically expands to a /bin/shell "case"-statement with
+dnl accompanying autoconf magic to propagate VAR to bspopts.h.
+
+
+dnl RTEMS_BSPOPTS_HELP(VAR,HELP-STRING)
+dnl Set up printing the HELP-STRING for bspopts.h's variable VAR and add
+dnl appropriate /bin/sh-magic to "configure" to have VAR set up.
+
+AC_DEFUN([RTEMS_BSPOPTS_HELP],[
+RTEMS_ARG_VAR([$1],[$2])
+m4_ifdef([_$1],[
+case ${RTEMS_BSP} in
+_$1[]dnl
+esac],[])
+if test -n "[$]{$1}"; then[]dnl
+AC_DEFINE_UNQUOTED([$1],
+ [[$]$1],
+ [$2])dnl
+fi
+])
+
+dnl RTEMS_BSPOPTS_SET(VAR,BSP,DEFAULT)
+dnl Set up a value DEFAULT to be used as default value for variable VAR for
+dnl BSP in RTEMS_BSPOPTS_HELP.
+
+dnl MUST be use in front of exactly _one_ corresponding RTEMS_BSPOPTS_HELP
+
+AC_DEFUN([RTEMS_BSPOPTS_SET],[dnl
+m4_append([_$1],
+[$2 )
+ $1=[$]{$1-$3} ;;
+])
+])
+
+
+dnl RTEMS_ARG_VAR(VAR,HELP-STRING)
+dnl An internal macros to have RTEMS_BSPOPTS_HELP's help string pretty
+dnl printed with configure --help.
+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
+])