]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Build dependencies properly. Should also fix the build failure on the Mac.
authorwolf <wolf@0785d39b-7218-0410-832d-ea1e28bc413d>
Fri, 8 Jul 2005 16:16:28 +0000 (16:16 +0000)
committerwolf <wolf@0785d39b-7218-0410-832d-ea1e28bc413d>
Fri, 8 Jul 2005 16:16:28 +0000 (16:16 +0000)
git-svn-id: https://svn.dealii.org/trunk@11120 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/examples/doxygen/Makefile

index c688cb9b295da52ab6be4bb8ed1d12f657519a67..89776fff91a63cb72e401c3d37a2df2e41e0c64c 100644 (file)
@@ -18,7 +18,7 @@ all: product_matrix$(EXEEXT) block_matrix_array$(EXEEXT)
 # Compilation of source code
 ######################################################################
 
-%.$(OBJEXT) : %.cc
+%.$(OBJEXT) :
        @echo =====debug======$(MT)== $<
        @$(CXX) $(CXXFLAGS.g) $(CXXFLAGS) -c $< -o $@
 
@@ -38,5 +38,35 @@ product_matrix$(EXEEXT): product_matrix.$(OBJEXT) $(lib-lac.g) $(lib-base.g)
 # Pseudo target for cleaning directory
 ######################################################################
 
+
 clean:
        -rm -f *~ *.$(OBJEXT) $(all)
+
+
+.PHONY: all clean
+
+# Finally there is a rule which you normally need not care much about:
+# since the executable depends on some include files from the library,
+# besides the C++ application file of course, it is necessary to
+# re-generate the executable when one of the files it depends on has
+# changed. The following rule to created a dependency file
+# `Makefile.dep', which `make' uses to determine when to regenerate
+# the executable. This file is automagically remade whenever needed,
+# i.e. whenever one of the cc-/h-files changed. Make detects whether
+# to remake this file upon inclusion at the bottom of this file.
+#
+# If the file should turn out to be empty, then blow it
+# away to let make issue a proper error message rather than
+# some obscure follow-up problems
+Makefile.dep: *.cc Makefile \
+              $(shell echo $D/*/include/*/*.h)
+       @echo ============================ Remaking $@
+       @$D/common/scripts/make_dependencies  $(INCLUDE) -B. *.cc \
+               > Makefile.dep
+       @if test -s $@ ; then : else rm $@ ; fi
+
+
+
+# To make the dependencies known to `make', we finally have to include
+# them:
+include Makefile.dep

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.