3 -I@srcdir@/../include -I@srcdir@/.. -I@builddir@/..
4 AM_CXXFLAGS = -Wall -Wno-unknown-pragmas $(FLAG_VISIBILITY_HIDDEN)
6 noinst_LTLIBRARIES = libutil.la libutilcudd.la
8 # libutilcudd.la is a separate library so that we can pass separate
10 libutilcudd_la_CPPFLAGS = $(CPPFLAGS) $(AM_CPPFLAGS) @CUDD_CPPFLAGS@
11 libutilcudd_la_LIBADD = @CUDD_LDFLAGS@ @CUDD_LIBS@
13 # Do not list built sources (like integer.h, rational.h, and tls.h) here!
14 # Rather, list them under BUILT_SOURCES, and their .in versions under
15 # EXTRA_DIST. Otherwise, they're packaged up in the tarball, which is
16 # no good---they belong in the configured builds/ directory. If they
17 # end up in the source directory, they build the cvc4 that was
18 # configured at the time of the "make dist", which (1) may not be the
19 # configuration that the user wants, and (2) might cause link errors.
20 libutil_la_SOURCES = \
26 congruence_closure.h \
38 configuration_private.h \
62 boolean_simplification.h \
63 boolean_simplification.cpp \
71 @builddir@/libutilcudd.la
72 libutilcudd_la_SOURCES = \
73 propositional_query.h \
74 propositional_query.cpp
81 # listing Debug_tags too ensures that make doesn't auto-remove it
82 # after building (if it does, we don't get the "cached" effect with
83 # the .tmp files below, and we have to re-compile and re-link each
84 # time, even when there are no changes).
90 # listing Trace_tags too ensures that make doesn't auto-remove it
91 # after building (if it does, we don't get the "cached" effect with
92 # the .tmp files below, and we have to re-compile and re-link each
93 # time, even when there are no changes).
101 echo 'static char const* const $^[] = {'; \
102 for tag in `cat $^`; do \
109 # This .tmp business is to keep from having to re-compile options.cpp
110 # (and then re-link the libraries) if nothing has changed.
113 diff -q "$^" "$@" &>/dev/null || mv "$^" "$@" || true
114 # .PHONY ensures the .tmp version is always rebuilt (to check for any changes)
115 .PHONY: Debug_tags.tmp Trace_tags.tmp
116 # The "sed" invocation below is particularly obnoxious, but it works around
117 # inconsistencies in REs on different platforms, using only a basic regular
118 # expression (no |, no \<, ...).
119 Debug_tags.tmp Trace_tags.tmp:
121 grep '\<$(@:_tags.tmp=) *( *\".*\" *)' \
122 `find @srcdir@/../ -name "*.cpp" -or -name "*.h" -or -name "*.cc" -or -name "*.g"` | \
123 sed 's/^$(@:_tags.tmp=) *( *\"\([^"]*\)\".*/\1/;s/.*[^a-zA-Z0-9_]$(@:_tags.tmp=) *( *\"\([^"]*\)\".*/\1/' | sort | uniq >"$@"
126 libutil_la_SOURCES += \
130 libutil_la_SOURCES += \
137 rational_cln_imp.cpp \
140 rational_gmp_imp.cpp \