diff options
-rw-r--r-- | src/options/Makefile.am | 10 | ||||
-rw-r--r-- | test/unit/Makefile.am | 2 |
2 files changed, 9 insertions, 3 deletions
diff --git a/src/options/Makefile.am b/src/options/Makefile.am index eb1a2c498..f89fca922 100644 --- a/src/options/Makefile.am +++ b/src/options/Makefile.am @@ -101,7 +101,7 @@ BUILT_SOURCES = \ options.cpp \ options_holder.h -DISTCLEANFILES = \ +CLEANFILES = \ $(OPTIONS_FILES_SRCS) \ $(BUILT_SOURCES) \ options-stamp @@ -178,11 +178,17 @@ options-stamp: options_holder_template.h options_template.cpp ../smt/smt_options @top_builddir@/doc/cvc4.1_template @top_builddir@/doc/cvc4.1 \ -t \ @srcdir@/base_options_template.h @srcdir@/base_options_template.cpp \ - $(foreach o,$(OPTIONS_FILES),"$(srcdir)/$(o)" "$(dir $(builddir)/$(o))") \ + $(foreach o,$(OPTIONS_FILES),"$(srcdir)/$(o)" "$(patsubst %/,%,$(dir $(o)))") \ ) touch "$@" $(OPTIONS_FILES):; +# This rule is ugly. It's needed to ensure that automake's dependence +# includes are available during distclean, even though they come from +# directories that are cleaned first. Without this rule, "distclean" +# fails. +%.Plo:; $(MKDIR_P) "$(dir $@)" && : > "$@" + .PHONY: exprs-builts exprs-builts:; $(AM_V_at)[ "$(FROM_EXPR)" != 1 ] && $(MAKE) -C ../expr builts || true diff --git a/test/unit/Makefile.am b/test/unit/Makefile.am index 716b8959e..a287b7520 100644 --- a/test/unit/Makefile.am +++ b/test/unit/Makefile.am @@ -105,7 +105,7 @@ EXTRA_DIST = \ $(TEST_DEPS_DIST) MOSTLYCLEANFILES = $(UNIT_TESTS) $(UNIT_TESTS:%=%.cpp) $(UNIT_TESTS:%=%.lo) -DISTCLEANFILES = $(UNIT_TESTS:%=.deps/%.Plo) +DISTCLEANFILES = $(UNIT_TESTS:%=@DEPDIR@/%.Plo) # the tests automake infrastructure doesn't clean up .o files :-( # handle both .libs and _libs variants |