Apparently, I did not attach the right file to the previous post. Here it is. In regards with our previous conversation, my make version is 3.80: $ make -v GNU Make 3.80 Copyright (C) 2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Liviu Liviu Nicoara wrote: > Martin, > > I believe this is the patch we want. After we talked I realized that the > order-only dependency actually is in effect and what we were seeing it > was the correct behaviour. So, I am attaching it here. What it does is > that the deps are depending on the existence on the config.h file (not > its age). > > Addressing: > > http://issues.apache.org/jira/browse/STDCXX-85 > > ChangeLog entry: > > 2005-12-30 Liviu Nicoara > > * GNUMakefile: removed useless rules: all, builddir, added > rule lib, added variable INCDIR > * etc/config/makefile.rules: added order-only dependency > on ($INCDIR)/config.h for .d files > > Happy New Year! > > Liviu > > Martin Sebor wrote: > >>Liviu Nicoara wrote: >>[...] >> >> >>>Please let me know if you see any more problems with it. >> >>[...] >> >> >>>+config: >>>+ $(MAKE) -C$(INCDIR) >>>+ >> >> >>While this might be the right thing to do(*) I think it will become >>a problem -- reading in and processing the entire GNUmakefile.cfg >>every time make is invoked in either the examples or tests >>subdirectories will be prohibitively expensive on slow systems. >> >>(*) If we did decide to go this route, we'd need to do the same >>thing for the other dependencies, i.e., the library and, for tests, >>the test driver. That will slow things down even more. >> >> >> >>># rule to make dependencies for C++ source files >>>-$(DEPENDDIR)/%.d: %.cpp >>>+$(DEPENDDIR)/%.d: %.cpp config >> >> >>I would try this instead: >> >> $(DEPENDDIR)/%.d: %.cpp | config >> >>Martin >> > > >