4 theory/booleans/options \
7 theory/datatypes/options \
8 theory/builtin/options \
11 theory/arrays/options \
12 theory/quantifiers/options \
13 theory/rewriterules/options \
23 -D__BUILDING_CVC4LIB \
24 -I@srcdir@/../include -I@srcdir@/.. -I@builddir@/..
25 AM_CXXFLAGS = -Wall $(FLAG_VISIBILITY_HIDDEN)
27 noinst_LTLIBRARIES = liboptions.la
29 liboptions_la_SOURCES = \
31 base_options_handlers.h
33 nodist_liboptions_la_SOURCES = \
36 $(OPTIONS_FILES:%=../%.cpp) \
37 $(OPTIONS_FILES:%=../%.h)
38 nodist_liboptions_la_OBJECTS = \
39 $(patsubst %.cpp,%.lo,$(filter %.cpp,$(nodist_liboptions_la_SOURCES)))
46 ../smt/smt_options.cpp \
47 $(OPTIONS_FILES:%=../%.cpp) \
48 $(OPTIONS_FILES:%=../%.h) \
58 base_options_template.h \
59 base_options_template.cpp \
60 options_template.cpp \
61 options_holder_template.h \
63 $(OPTIONS_FILES:%=../%)
66 # listing Debug_tags too ensures that make doesn't auto-remove it
67 # after building (if it does, we don't get the "cached" effect with
68 # the .tmp files below, and we have to re-compile and re-link each
69 # time, even when there are no changes).
75 # listing Trace_tags too ensures that make doesn't auto-remove it
76 # after building (if it does, we don't get the "cached" effect with
77 # the .tmp files below, and we have to re-compile and re-link each
78 # time, even when there are no changes).
85 echo 'static char const* const $^[] = {'; \
86 for tag in `cat $^`; do \
93 # This .tmp business is to keep from having to re-compile options.cpp
94 # (and then re-link the libraries) if nothing has changed.
97 diff -q "$^" "$@" &>/dev/null || mv "$^" "$@" || true
98 # .PHONY ensures the .tmp version is always rebuilt (to check for any changes)
99 .PHONY: Debug_tags.tmp Trace_tags.tmp
100 # The "sed" invocation below is particularly obnoxious, but it works around
101 # inconsistencies in REs on different platforms, using only a basic regular
102 # expression (no |, no \<, ...).
103 Debug_tags.tmp Trace_tags.tmp:
105 grep '\<$(@:_tags.tmp=) *( *\".*\" *)' \
106 `find @srcdir@/../ -name "*.cpp" -or -name "*.h" -or -name "*.cc" -or -name "*.g"` | \
107 sed 's/^$(@:_tags.tmp=) *( *\"\([^"]*\)\".*/\1/;s/.*[^a-zA-Z0-9_]$(@:_tags.tmp=) *( *\"\([^"]*\)\".*/\1/' | sort | uniq >"$@"
117 options_holder.h options.cpp ../smt/smt_options.cpp base_options.cpp base_options.h $(OPTIONS_FILES:%=../%.cpp) $(OPTIONS_FILES:%=../%.h): options-stamp
118 options-stamp: options_holder_template.h options_template.cpp ../smt/smt_options_template.cpp base_options_template.h base_options_template.cpp mkoptions $(OPTIONS_FILES:%=../%)
119 $(AM_V_at)chmod +x @srcdir@/mkoptions
120 $(AM_V_GEN)(@srcdir@/mkoptions \
121 @srcdir@/options_holder_template.h @builddir@/options_holder.h \
122 @srcdir@/options_template.cpp @builddir@/options.cpp \
123 @srcdir@/../smt/smt_options_template.cpp @builddir@/../smt/smt_options.cpp \
124 @top_builddir@/doc/cvc4.1_template @top_builddir@/doc/cvc4.1 \
126 @srcdir@/base_options_template.h @srcdir@/base_options_template.cpp \
127 $(foreach o,$(OPTIONS_FILES),"$(srcdir)/../$(o)" "$(dir $(builddir)/../$(o))") \
131 base_options $(OPTIONS_FILES:%=../%):;
134 exprs-builts:; $(AM_V_at)[ "$(FROM_EXPR)" != 1 ] && $(MAKE) -C ../expr builts || true