(echo "define(\`IF', \`ifelse(\`\$1', \`\$2',dnl')dnl
define(\`FI', \`)dnl')dnl";
# Run the file (and the default macros) through m4.
- cat $file.m4) | $m4 $* >> $file
+ cat $file.m4) | $m4 "$@" >> $file
unset file
}
# not found).
installed ls && echo ls installed
installed doesnt-exist && echo doesnt-exist installed
+
# Simulate BSD `which` like on Mac OS X which doesn't use exit codes.
function which() {
echo Mac OS X which for $1 >&2
installed ls && echo ls installed
installed doesnt-exist && echo doesnt-exist installed
+
# Tests for m4().
echo "Simple test file for m4.
IF(TEST,m4)
m4 tmp/test -DTEST=m4
# Remove the line with the current date as it changes every time.
cat tmp/test | grep -v "It was generated from tmp/test.m4"
+
# Test multiple arguments to m4().
echo "Test with multiple arguments passed to m4.
first: FIRST
# Remove the line with the current date as it changes every time.
cat tmp/test-multiple | grep -v "It was generated from tmp/test-multiple.m4"
+# Test multiple arguments with spaces to m4().
+echo "Test with multiple arguments with spaces passed to m4.
+first: FIRST
+second: SECOND
+" > tmp/test-multiple-spaces.m4
+m4 tmp/test-multiple-spaces -DFIRST="first with spaces" \
+ -DSECOND="second with spaces"
+# Remove the line with the current date as it changes every time.
+cat tmp/test-multiple-spaces \
+ | grep -v "It was generated from tmp/test-multiple-spaces.m4"
+
# vim: ft=sh
first: first
second: second
+m4(): generating 'tmp/test-multiple-spaces' from 'tmp/test-multiple-spaces.m4' with options '-DFIRST=first with spaces -DSECOND=second with spaces'
+###################################
+# WARNING! DO NOT EDIT THIS FILE! #
+###################################
+
+
+Test with multiple arguments with spaces passed to m4.
+first: first with spaces
+second: second with spaces
+