]> git.saurik.com Git - bison.git/blobdiff - tests/output.at
Always put auxiliary code files in the same dir as other output files.
[bison.git] / tests / output.at
index 3e815d70abc0571184c980d96aa15bb718c5fa8b..1e37347f767951d24c968522ac3d9ac33f7cb2c8 100644 (file)
@@ -23,9 +23,11 @@ AT_BANNER([[Output file names.]])
 # -----------------------------------------------------------------------------
 m4_define([AT_CHECK_OUTPUT],
 [AT_SETUP([[Output files: $2 $3 $5]])
-case "$1" in
-  */*) mkdir `echo "$1" | sed 's,/.*,,'`;;
-esac
+for file in $1 $4; do
+  case "$file" in
+    */*) mkdir -p `echo "$file" | sed 's,/.*,,'`;;
+  esac
+done
 AT_DATA([$1],
 [[$2
 %%
@@ -116,6 +118,11 @@ AT_CHECK_OUTPUT([subdir/foo.yy], [%skeleton "lalr1.cc" %defines %verbose],
                [subdir/foo.cc subdir/foo.hh subdir/foo.output subdir/location.hh subdir/stack.hh subdir/position.hh],
                [], [AT_CHECK_NO_SUBDIR_PART([subdir/foo])])
 
+AT_CHECK_OUTPUT([gram_dir/foo.yy],
+                [%skeleton "lalr1.cc" %defines %verbose %file-prefix "output_dir/foo"],
+                [],
+               [output_dir/foo.tab.cc output_dir/foo.tab.hh output_dir/foo.output output_dir/location.hh output_dir/stack.hh output_dir/position.hh])
+
 
 # AT_CHECK_CONFLICTING_OUTPUT(INPUT-FILE, DIRECTIVES, FLAGS, STDERR,
 #                             [EXIT-STATUS])