aclocal.glob, m4/: Split the monster into separate `aclocal'-ish files.
[runlisp] / m4 / mdw-define-paths.m4
CommitLineData
fb2149fc
MW
1dnl -*-autoconf-*-
2
3dnl --- *@-mdw_DEFINE_PATHS-@*
4dnl
5dnl Author: Mark Wooding
6dnl
7dnl Synopsis: mdw_DEFINE_PATHS(CODE)
8dnl
9dnl Arguments: CODE = shell script code to execute
10dnl
11dnl Use: Fixes up various variables so that pathname defines can be
12dnl defined. Within CODE, you may use the following macros:
13dnl
14dnl mdw_PROG(NAME) Transformed program name
15dnl
16dnl mdw_PATH(PATH) Expanded path (may contain variables)
17dnl
18dnl mdw_DEFINE_PROG(SYMBOL, PROG)
19dnl Define a symbol as a transformed
20dnl program name.
21dnl
22dnl mdw_DEFINE_PATH(SYMBOL, NAME)
23dnl Define a symbol as an expanded path
24
25AC_DEFUN([mdw_DEFINE_PATHS],
26[mdw_prefix=$prefix mdw_exec_prefix=$exec_prefix
27mdw_transform=`echo "$program_transform_name"|sed 's,\\\\\\\\,\\\\,g; s,\\$\\$,$,g'`
28test "$prefix" = "NONE" && prefix=$ac_default_prefix
29test "$exec_prefix" = "NONE" && exec_prefix=$prefix
30$1
31prefix=$mdw_prefix exec_prefix=$mdw_exec_prefix])
32
33AC_DEFUN([mdw_PROG], [`echo "$1"|sed "$mdw_transform"`])
34AC_DEFUN([mdw_PATH], [dnl
35`t="$1"; dnl
36while :; do dnl
37case "$t" in dnl
38*\\$[]*) t=\`eval echo "$t"\`;; dnl
39*) break;; dnl
40esac; done; dnl
41echo "$t"`])
42AC_DEFUN([mdw_DEFINE_PROG],
43 [AC_DEFINE_UNQUOTED([$1], ["mdw_PROG([$2])"],
44 [Program name for $2.])])
45AC_DEFUN([mdw_DEFINE_PATH], [AC_DEFINE_UNQUOTED([$1], ["mdw_PATH([$2])"],
46 [Pathname for $2.])])