parser build fixes
authorMorgan Deters <mdeters@gmail.com>
Tue, 8 Dec 2009 22:53:58 +0000 (22:53 +0000)
committerMorgan Deters <mdeters@gmail.com>
Tue, 8 Dec 2009 22:53:58 +0000 (22:53 +0000)
src/parser/Makefile.am
src/parser/Makefile.in
src/parser/cvc/Makefile.am
src/parser/cvc/Makefile.in
src/parser/parser.cpp
src/parser/smt/Makefile.am
src/parser/smt/Makefile.in

index 5e601fd59fc94a5219bf16a781269146526ac786..8b728f5f4bb5e3accf13b2e71e5660faa042829f 100644 (file)
@@ -15,7 +15,7 @@
 LIBCVC4PARSER_RELEASE = @CVC4_LIBRARY_RELEASE_CODE@
 LIBCVC4PARSER_VERSION = @CVC4_PARSER_LIBRARY_VERSION@
 
-INCLUDES = -I@srcdir@/../include -I@srcdir@/.. -I@builddir@/.. $(ANTLR_INCLUDES)
+INCLUDES = -I@srcdir@/../include -I@srcdir@/.. $(ANTLR_INCLUDES)
 AM_CXXFLAGS = -Wall -fvisibility=hidden
 AM_CPPFLAGS = -D__BUILDING_CVC4PARSERLIB
 
index 0d0dd5800275847fab20313305d0ff06581908b0..231643474893abdc7a4ab32fdb11f65a50f09d44 100644 (file)
@@ -296,7 +296,7 @@ top_srcdir = @top_srcdir@
 #
 LIBCVC4PARSER_RELEASE = @CVC4_LIBRARY_RELEASE_CODE@
 LIBCVC4PARSER_VERSION = @CVC4_PARSER_LIBRARY_VERSION@
-INCLUDES = -I@srcdir@/../include -I@srcdir@/.. -I@builddir@/.. $(ANTLR_INCLUDES)
+INCLUDES = -I@srcdir@/../include -I@srcdir@/.. $(ANTLR_INCLUDES)
 AM_CXXFLAGS = -Wall -fvisibility=hidden
 AM_CPPFLAGS = -D__BUILDING_CVC4PARSERLIB
 SUBDIRS = smt cvc
index b132ede5ca9b47cf1e8d3ff5c115e4fe9d85860b..979af52b25a3b1a317b45a62efdd03cecb0857f7 100644 (file)
@@ -4,11 +4,21 @@ AM_CPPFLAGS = -D__BUILDING_CVC4PARSERLIB
 
 noinst_LTLIBRARIES = libparsercvc.la
 
+ANTLR_TOKEN_STUFF = \
+       @srcdir@/generated/CvcVocabularyTokenTypes.hpp \
+       @srcdir@/generated/CvcVocabularyTokenTypes.txt \
+       @srcdir@/generated/AntlrCvcParserTokenTypes.hpp \
+       @srcdir@/generated/AntlrCvcParserTokenTypes.txt
+ANTLR_LEXER_STUFF = \
+       @srcdir@/generated/AntlrCvcLexer.hpp \
+       @srcdir@/generated/AntlrCvcLexer.cpp \
+       $(ANTLR_TOKEN_STUFF)
+ANTLR_PARSER_STUFF = \
+       @srcdir@/generated/AntlrCvcParser.hpp \
+       @srcdir@/generated/AntlrCvcParser.cpp
 ANTLR_STUFF = \
-       AntlrCvcLexer.hpp \
-       AntlrCvcLexer.cpp \
-       AntlrCvcParser.hpp \
-       AntlrCvcParser.cpp 
+       $(ANTLR_LEXER_STUFF) \
+       $(ANTLR_PARSER_STUFF)
 
 libparsercvc_la_SOURCES = \
        CvcLexer.g \
@@ -16,11 +26,23 @@ libparsercvc_la_SOURCES = \
        $(ANTLR_STUFF)
 
 BUILT_SOURCES = $(ANTLR_STUFF)
-CLEAN_FILES = $(ANTLR_STUFF)
+dist-hook: $(ANTLR_STUFF)
+MAINTAINERCLEANFILES = $(ANTLR_STUFF)
+maintainerclean-local:
+       -rmdir @srcdir@/generated
+       -rm -f @srcdir@/stamp-generated
 
-AntlrCvcLexer.cpp: CvcLexer.g
-       $(ANTLR) -o "@builddir@" "$<"
-AntlrCvcParser.cpp: CvcParser.g CvcVocabularyTokenTypes.hpp CvcVocabularyTokenTypes.txt
-       $(ANTLR) -o "@builddir@" "$<"
-AntlrCvcLexer.hpp CvcVocabularyTokenTypes.hpp CvcVocabularyTokenTypes.txt: AntlrCvcLexer.cpp
-AntlrCvcParser.hpp: AntlrCvcParser.cpp
+@srcdir@/stamp-generated:
+       mkdir -p @srcdir@/generated
+       touch @srcdir@/stamp-generated
+# antlr doesn't overwrite output files, it just leaves them.  So we have to delete them first.
+$(ANTLR_LEXER_STUFF): CvcLexer.g @srcdir@/generated
+       -rm -f $(ANTLR_LEXER_STUFF)
+       $(ANTLR) -o "@srcdir@/generated" "@srcdir@/CvcLexer.g"
+# doesn't actually depend on the lexer, but if we're doing parallel
+# make and the lexer needs to be rebuilt, we have to keep the rules
+# from running in parallel (since the token files will be deleted &
+# recreated)
+$(ANTLR_PARSER_STUFF): CvcParser.g CvcLexer.g $(ANTLR_TOKEN_STUFF) @srcdir@/generated
+       -rm -f $(ANTLR_PARSER_STUFF)
+       $(ANTLR) -o "@srcdir@/generated" "@srcdir@/CvcParser.g"
index 2ca8395d49cb09432e12ed7b271f76be5b460ef2..64911107e9cacd2739a47e547e719c63d265072b 100644 (file)
@@ -52,8 +52,11 @@ CONFIG_CLEAN_FILES =
 CONFIG_CLEAN_VPATH_FILES =
 LTLIBRARIES = $(noinst_LTLIBRARIES)
 libparsercvc_la_LIBADD =
-am__objects_1 = AntlrCvcLexer.lo AntlrCvcParser.lo
-am_libparsercvc_la_OBJECTS = $(am__objects_1)
+am__objects_1 =
+am__objects_2 = AntlrCvcLexer.lo $(am__objects_1)
+am__objects_3 = AntlrCvcParser.lo
+am__objects_4 = $(am__objects_2) $(am__objects_3)
+am_libparsercvc_la_OBJECTS = $(am__objects_4)
 libparsercvc_la_OBJECTS = $(am_libparsercvc_la_OBJECTS)
 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/config/depcomp
@@ -220,11 +223,24 @@ INCLUDES = -I@srcdir@/../../include -I@srcdir@/../.. -I@builddir@/../..
 AM_CXXFLAGS = -Wall -fvisibility=hidden
 AM_CPPFLAGS = -D__BUILDING_CVC4PARSERLIB
 noinst_LTLIBRARIES = libparsercvc.la
+ANTLR_TOKEN_STUFF = \
+       @srcdir@/generated/CvcVocabularyTokenTypes.hpp \
+       @srcdir@/generated/CvcVocabularyTokenTypes.txt \
+       @srcdir@/generated/AntlrCvcParserTokenTypes.hpp \
+       @srcdir@/generated/AntlrCvcParserTokenTypes.txt
+
+ANTLR_LEXER_STUFF = \
+       @srcdir@/generated/AntlrCvcLexer.hpp \
+       @srcdir@/generated/AntlrCvcLexer.cpp \
+       $(ANTLR_TOKEN_STUFF)
+
+ANTLR_PARSER_STUFF = \
+       @srcdir@/generated/AntlrCvcParser.hpp \
+       @srcdir@/generated/AntlrCvcParser.cpp
+
 ANTLR_STUFF = \
-       AntlrCvcLexer.hpp \
-       AntlrCvcLexer.cpp \
-       AntlrCvcParser.hpp \
-       AntlrCvcParser.cpp 
+       $(ANTLR_LEXER_STUFF) \
+       $(ANTLR_PARSER_STUFF)
 
 libparsercvc_la_SOURCES = \
        CvcLexer.g \
@@ -232,7 +248,7 @@ libparsercvc_la_SOURCES = \
        $(ANTLR_STUFF)
 
 BUILT_SOURCES = $(ANTLR_STUFF)
-CLEAN_FILES = $(ANTLR_STUFF)
+MAINTAINERCLEANFILES = $(ANTLR_STUFF)
 all: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) all-am
 
@@ -310,6 +326,20 @@ distclean-compile:
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@     DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
 
+AntlrCvcLexer.lo: @srcdir@/generated/AntlrCvcLexer.cpp
+@am__fastdepCXX_TRUE@  $(LIBTOOL)  --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT AntlrCvcLexer.lo -MD -MP -MF $(DEPDIR)/AntlrCvcLexer.Tpo -c -o AntlrCvcLexer.lo `test -f '@srcdir@/generated/AntlrCvcLexer.cpp' || echo '$(srcdir)/'`@srcdir@/generated/AntlrCvcLexer.cpp
+@am__fastdepCXX_TRUE@  $(am__mv) $(DEPDIR)/AntlrCvcLexer.Tpo $(DEPDIR)/AntlrCvcLexer.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@     source='@srcdir@/generated/AntlrCvcLexer.cpp' object='AntlrCvcLexer.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@     DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL)  --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o AntlrCvcLexer.lo `test -f '@srcdir@/generated/AntlrCvcLexer.cpp' || echo '$(srcdir)/'`@srcdir@/generated/AntlrCvcLexer.cpp
+
+AntlrCvcParser.lo: @srcdir@/generated/AntlrCvcParser.cpp
+@am__fastdepCXX_TRUE@  $(LIBTOOL)  --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT AntlrCvcParser.lo -MD -MP -MF $(DEPDIR)/AntlrCvcParser.Tpo -c -o AntlrCvcParser.lo `test -f '@srcdir@/generated/AntlrCvcParser.cpp' || echo '$(srcdir)/'`@srcdir@/generated/AntlrCvcParser.cpp
+@am__fastdepCXX_TRUE@  $(am__mv) $(DEPDIR)/AntlrCvcParser.Tpo $(DEPDIR)/AntlrCvcParser.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@     source='@srcdir@/generated/AntlrCvcParser.cpp' object='AntlrCvcParser.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@     DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL)  --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o AntlrCvcParser.lo `test -f '@srcdir@/generated/AntlrCvcParser.cpp' || echo '$(srcdir)/'`@srcdir@/generated/AntlrCvcParser.cpp
+
 mostlyclean-libtool:
        -rm -f *.lo
 
@@ -398,6 +428,9 @@ distdir: $(DISTFILES)
            || exit 1; \
          fi; \
        done
+       $(MAKE) $(AM_MAKEFLAGS) \
+         top_distdir="$(top_distdir)" distdir="$(distdir)" \
+         dist-hook
 check-am: all-am
 check: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) check-am
@@ -430,6 +463,7 @@ maintainer-clean-generic:
        @echo "This command is intended for maintainers to use"
        @echo "it deletes files that may require special tools to rebuild."
        -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
+       -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
 clean: clean-am
 
 clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \
@@ -504,25 +538,38 @@ uninstall-am:
 .MAKE: all check install install-am install-strip
 
 .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-       clean-libtool clean-noinstLTLIBRARIES ctags distclean \
-       distclean-compile distclean-generic distclean-libtool \
-       distclean-tags distdir dvi dvi-am html html-am info info-am \
-       install install-am install-data install-data-am install-dvi \
-       install-dvi-am install-exec install-exec-am install-html \
-       install-html-am install-info install-info-am install-man \
-       install-pdf install-pdf-am install-ps install-ps-am \
-       install-strip installcheck installcheck-am installdirs \
-       maintainer-clean maintainer-clean-generic mostlyclean \
-       mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
-       pdf pdf-am ps ps-am tags uninstall uninstall-am
-
-
-AntlrCvcLexer.cpp: CvcLexer.g
-       $(ANTLR) -o "@builddir@" "$<"
-AntlrCvcParser.cpp: CvcParser.g CvcVocabularyTokenTypes.hpp CvcVocabularyTokenTypes.txt
-       $(ANTLR) -o "@builddir@" "$<"
-AntlrCvcLexer.hpp CvcVocabularyTokenTypes.hpp CvcVocabularyTokenTypes.txt: AntlrCvcLexer.cpp
-AntlrCvcParser.hpp: AntlrCvcParser.cpp
+       clean-libtool clean-noinstLTLIBRARIES ctags dist-hook \
+       distclean distclean-compile distclean-generic \
+       distclean-libtool distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-data \
+       install-data-am install-dvi install-dvi-am install-exec \
+       install-exec-am install-html install-html-am install-info \
+       install-info-am install-man install-pdf install-pdf-am \
+       install-ps install-ps-am install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+       tags uninstall uninstall-am
+
+dist-hook: $(ANTLR_STUFF)
+maintainerclean-local:
+       -rmdir @srcdir@/generated
+       -rm -f @srcdir@/stamp-generated
+
+@srcdir@/stamp-generated:
+       mkdir -p @srcdir@/generated
+       touch @srcdir@/stamp-generated
+# antlr doesn't overwrite output files, it just leaves them.  So we have to delete them first.
+$(ANTLR_LEXER_STUFF): CvcLexer.g @srcdir@/generated
+       -rm -f $(ANTLR_LEXER_STUFF)
+       $(ANTLR) -o "@srcdir@/generated" "@srcdir@/CvcLexer.g"
+# doesn't actually depend on the lexer, but if we're doing parallel
+# make and the lexer needs to be rebuilt, we have to keep the rules
+# from running in parallel (since the token files will be deleted &
+# recreated)
+$(ANTLR_PARSER_STUFF): CvcParser.g CvcLexer.g $(ANTLR_TOKEN_STUFF) @srcdir@/generated
+       -rm -f $(ANTLR_PARSER_STUFF)
+       $(ANTLR) -o "@srcdir@/generated" "@srcdir@/CvcParser.g"
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 298669b800dc88a612d6b6fbc6aa73a516bba33b..4309ec35554db9440fe1d8d198fef53ead198fce 100644 (file)
 #include "util/Assert.h"
 #include "parser_exception.h"
 #include "parser/antlr_parser.h"
-#include "parser/smt/AntlrSmtParser.hpp"
-#include "parser/smt/AntlrSmtLexer.hpp"
-#include "parser/cvc/AntlrCvcParser.hpp"
-#include "parser/cvc/AntlrCvcLexer.hpp"
+#include "parser/smt/generated/AntlrSmtParser.hpp"
+#include "parser/smt/generated/AntlrSmtLexer.hpp"
+#include "parser/cvc/generated/AntlrCvcParser.hpp"
+#include "parser/cvc/generated/AntlrCvcLexer.hpp"
 
 using namespace std;
 
index aa6835ce49c629a26db18468f93254445ac8de94..8e2aa77b11817b58c7b82708d97408c6c034404a 100644 (file)
@@ -4,11 +4,21 @@ AM_CPPFLAGS = -D__BUILDING_CVC4PARSERLIB
 
 noinst_LTLIBRARIES = libparsersmt.la
 
+ANTLR_TOKEN_STUFF = \
+       @srcdir@/generated/SmtVocabularyTokenTypes.hpp \
+       @srcdir@/generated/SmtVocabularyTokenTypes.txt \
+       @srcdir@/generated/AntlrSmtParserTokenTypes.hpp \
+       @srcdir@/generated/AntlrSmtParserTokenTypes.txt
+ANTLR_LEXER_STUFF = \
+       @srcdir@/generated/AntlrSmtLexer.hpp \
+       @srcdir@/generated/AntlrSmtLexer.cpp
+       $(ANTLR_TOKEN_STUFF)
+ANTLR_PARSER_STUFF = \
+       @srcdir@/generated/AntlrSmtParser.hpp \
+       @srcdir@/generated/AntlrSmtParser.cpp
 ANTLR_STUFF = \
-       AntlrSmtLexer.hpp \
-       AntlrSmtLexer.cpp \
-       AntlrSmtParser.hpp \
-       AntlrSmtParser.cpp 
+       $(ANTLR_LEXER_STUFF) \
+       $(ANTLR_PARSER_STUFF)
 
 libparsersmt_la_SOURCES = \
        SmtLexer.g \
@@ -16,14 +26,23 @@ libparsersmt_la_SOURCES = \
        $(ANTLR_STUFF)
 
 BUILT_SOURCES = $(ANTLR_STUFF)
-CLEAN_FILES = $(ANTLR_STUFF)
+dist-hook: $(ANTLR_STUFF)
+MAINTAINERCLEANFILES = $(ANTLR_STUFF)
+maintainerclean-local:
+       -rmdir @srcdir@/generated
+       -rm -f @srcdir@/stamp-generated
 
-"@srcdir@/.generated":
-       mkdir -p "@srcdir@/generated"
-
-"@srcdir@/generated/AntlrSmtLexer.cpp": SmtLexer.g "@srcdir@/generated"
-       $(ANTLR) -o "@srcdir@/generated" "$<"
-"@srcdir@/generated/AntlrSmtParser.cpp": SmtParser.g SmtVocabularyTokenTypes.hpp SmtVocabularyTokenTypes.txt "@srcdir@/generated"
-       $(ANTLR) -o "@srcdir@/generated" "$<"
-AntlrSmtLexer.hpp SmtVocabularyTokenTypes.hpp SmtVocabularyTokenTypes.txt: AntlrSmtLexer.cpp
-AntlrSmtParser.hpp: AntlrSmtParser.cpp
+@srcdir@/stamp-generated:
+       mkdir -p @srcdir@/generated
+       touch @srcdir@/stamp-generated
+# antlr doesn't overwrite output files, it just leaves them.  So we have to delete them first.
+$(ANTLR_LEXER_STUFF): SmtLexer.g @srcdir@/stamp-generated
+       -rm -f $(ANTLR_LEXER_STUFF)
+       $(ANTLR) -o "@srcdir@/generated" "@srcdir@/SmtLexer.g"
+# doesn't actually depend on the lexer, but if we're doing parallel
+# make and the lexer needs to be rebuilt, we have to keep the rules
+# from running in parallel (since the token files will be deleted &
+# recreated)
+$(ANTLR_PARSER_STUFF): SmtParser.g SmtLexer.g $(ANTLR_TOKEN_STUFF) @srcdir@/stamp-generated
+       -rm -f $(ANTLR_PARSER_STUFF)
+       $(ANTLR) -o "@srcdir@/generated" "@srcdir@/SmtParser.g"
index f26358c423cb8befe53534b875ad6e030598610d..1bd03d5825b5e9bfa84fbad31f327c8d472b1abd 100644 (file)
@@ -52,8 +52,10 @@ CONFIG_CLEAN_FILES =
 CONFIG_CLEAN_VPATH_FILES =
 LTLIBRARIES = $(noinst_LTLIBRARIES)
 libparsersmt_la_LIBADD =
-am__objects_1 = AntlrSmtLexer.lo AntlrSmtParser.lo
-am_libparsersmt_la_OBJECTS = $(am__objects_1)
+am__objects_1 = AntlrSmtLexer.lo
+am__objects_2 = AntlrSmtParser.lo
+am__objects_3 = $(am__objects_1) $(am__objects_2)
+am_libparsersmt_la_OBJECTS = $(am__objects_3)
 libparsersmt_la_OBJECTS = $(am_libparsersmt_la_OBJECTS)
 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/config/depcomp
@@ -220,11 +222,23 @@ INCLUDES = -I@srcdir@/../../include -I@srcdir@/../.. -I@builddir@/../..
 AM_CXXFLAGS = -Wall -fvisibility=hidden
 AM_CPPFLAGS = -D__BUILDING_CVC4PARSERLIB
 noinst_LTLIBRARIES = libparsersmt.la
+ANTLR_TOKEN_STUFF = \
+       @srcdir@/generated/SmtVocabularyTokenTypes.hpp \
+       @srcdir@/generated/SmtVocabularyTokenTypes.txt \
+       @srcdir@/generated/AntlrSmtParserTokenTypes.hpp \
+       @srcdir@/generated/AntlrSmtParserTokenTypes.txt
+
+ANTLR_LEXER_STUFF = \
+       @srcdir@/generated/AntlrSmtLexer.hpp \
+       @srcdir@/generated/AntlrSmtLexer.cpp
+
+ANTLR_PARSER_STUFF = \
+       @srcdir@/generated/AntlrSmtParser.hpp \
+       @srcdir@/generated/AntlrSmtParser.cpp
+
 ANTLR_STUFF = \
-       AntlrSmtLexer.hpp \
-       AntlrSmtLexer.cpp \
-       AntlrSmtParser.hpp \
-       AntlrSmtParser.cpp 
+       $(ANTLR_LEXER_STUFF) \
+       $(ANTLR_PARSER_STUFF)
 
 libparsersmt_la_SOURCES = \
        SmtLexer.g \
@@ -232,7 +246,7 @@ libparsersmt_la_SOURCES = \
        $(ANTLR_STUFF)
 
 BUILT_SOURCES = $(ANTLR_STUFF)
-CLEAN_FILES = $(ANTLR_STUFF)
+MAINTAINERCLEANFILES = $(ANTLR_STUFF)
 all: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) all-am
 
@@ -310,6 +324,20 @@ distclean-compile:
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@     DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
 
+AntlrSmtLexer.lo: @srcdir@/generated/AntlrSmtLexer.cpp
+@am__fastdepCXX_TRUE@  $(LIBTOOL)  --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT AntlrSmtLexer.lo -MD -MP -MF $(DEPDIR)/AntlrSmtLexer.Tpo -c -o AntlrSmtLexer.lo `test -f '@srcdir@/generated/AntlrSmtLexer.cpp' || echo '$(srcdir)/'`@srcdir@/generated/AntlrSmtLexer.cpp
+@am__fastdepCXX_TRUE@  $(am__mv) $(DEPDIR)/AntlrSmtLexer.Tpo $(DEPDIR)/AntlrSmtLexer.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@     source='@srcdir@/generated/AntlrSmtLexer.cpp' object='AntlrSmtLexer.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@     DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL)  --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o AntlrSmtLexer.lo `test -f '@srcdir@/generated/AntlrSmtLexer.cpp' || echo '$(srcdir)/'`@srcdir@/generated/AntlrSmtLexer.cpp
+
+AntlrSmtParser.lo: @srcdir@/generated/AntlrSmtParser.cpp
+@am__fastdepCXX_TRUE@  $(LIBTOOL)  --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT AntlrSmtParser.lo -MD -MP -MF $(DEPDIR)/AntlrSmtParser.Tpo -c -o AntlrSmtParser.lo `test -f '@srcdir@/generated/AntlrSmtParser.cpp' || echo '$(srcdir)/'`@srcdir@/generated/AntlrSmtParser.cpp
+@am__fastdepCXX_TRUE@  $(am__mv) $(DEPDIR)/AntlrSmtParser.Tpo $(DEPDIR)/AntlrSmtParser.Plo
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@     source='@srcdir@/generated/AntlrSmtParser.cpp' object='AntlrSmtParser.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@     DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL)  --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o AntlrSmtParser.lo `test -f '@srcdir@/generated/AntlrSmtParser.cpp' || echo '$(srcdir)/'`@srcdir@/generated/AntlrSmtParser.cpp
+
 mostlyclean-libtool:
        -rm -f *.lo
 
@@ -398,6 +426,9 @@ distdir: $(DISTFILES)
            || exit 1; \
          fi; \
        done
+       $(MAKE) $(AM_MAKEFLAGS) \
+         top_distdir="$(top_distdir)" distdir="$(distdir)" \
+         dist-hook
 check-am: all-am
 check: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) check-am
@@ -430,6 +461,7 @@ maintainer-clean-generic:
        @echo "This command is intended for maintainers to use"
        @echo "it deletes files that may require special tools to rebuild."
        -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
+       -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
 clean: clean-am
 
 clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \
@@ -504,28 +536,39 @@ uninstall-am:
 .MAKE: all check install install-am install-strip
 
 .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-       clean-libtool clean-noinstLTLIBRARIES ctags distclean \
-       distclean-compile distclean-generic distclean-libtool \
-       distclean-tags distdir dvi dvi-am html html-am info info-am \
-       install install-am install-data install-data-am install-dvi \
-       install-dvi-am install-exec install-exec-am install-html \
-       install-html-am install-info install-info-am install-man \
-       install-pdf install-pdf-am install-ps install-ps-am \
-       install-strip installcheck installcheck-am installdirs \
-       maintainer-clean maintainer-clean-generic mostlyclean \
-       mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
-       pdf pdf-am ps ps-am tags uninstall uninstall-am
-
-
-"@srcdir@/.generated":
-       mkdir -p "@srcdir@/generated"
-
-"@srcdir@/generated/AntlrSmtLexer.cpp": SmtLexer.g "@srcdir@/generated"
-       $(ANTLR) -o "@srcdir@/generated" "$<"
-"@srcdir@/generated/AntlrSmtParser.cpp": SmtParser.g SmtVocabularyTokenTypes.hpp SmtVocabularyTokenTypes.txt "@srcdir@/generated"
-       $(ANTLR) -o "@srcdir@/generated" "$<"
-AntlrSmtLexer.hpp SmtVocabularyTokenTypes.hpp SmtVocabularyTokenTypes.txt: AntlrSmtLexer.cpp
-AntlrSmtParser.hpp: AntlrSmtParser.cpp
+       clean-libtool clean-noinstLTLIBRARIES ctags dist-hook \
+       distclean distclean-compile distclean-generic \
+       distclean-libtool distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-data \
+       install-data-am install-dvi install-dvi-am install-exec \
+       install-exec-am install-html install-html-am install-info \
+       install-info-am install-man install-pdf install-pdf-am \
+       install-ps install-ps-am install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+       tags uninstall uninstall-am
+
+       $(ANTLR_TOKEN_STUFF)
+dist-hook: $(ANTLR_STUFF)
+maintainerclean-local:
+       -rmdir @srcdir@/generated
+       -rm -f @srcdir@/stamp-generated
+
+@srcdir@/stamp-generated:
+       mkdir -p @srcdir@/generated
+       touch @srcdir@/stamp-generated
+# antlr doesn't overwrite output files, it just leaves them.  So we have to delete them first.
+$(ANTLR_LEXER_STUFF): SmtLexer.g @srcdir@/stamp-generated
+       -rm -f $(ANTLR_LEXER_STUFF)
+       $(ANTLR) -o "@srcdir@/generated" "@srcdir@/SmtLexer.g"
+# doesn't actually depend on the lexer, but if we're doing parallel
+# make and the lexer needs to be rebuilt, we have to keep the rules
+# from running in parallel (since the token files will be deleted &
+# recreated)
+$(ANTLR_PARSER_STUFF): SmtParser.g SmtLexer.g $(ANTLR_TOKEN_STUFF) @srcdir@/stamp-generated
+       -rm -f $(ANTLR_PARSER_STUFF)
+       $(ANTLR) -o "@srcdir@/generated" "@srcdir@/SmtParser.g"
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.