-AUTOMAKE_OPTIONS = foreign
+AUTOMAKE_OPTIONS = foreign dist-bzip2
CLEANFILES = pch.h.gch
-DISTCLEANFILES= *.orig *.rej *~ *.bak core
+DISTCLEANFILES= pch.h.gch.dep *.orig *.rej *~ *.bak core
MAINTAINERCLEANFILES = $(srcdir)/Makefile.in
PCH_FILE = ./pch.h.gch
sinclude ./pch.h.gch.dep
-*.C *.cpp: $(PCH_FILE)
+*.o *.lo *.obj: $(PCH_FILE)
$(PCH_FILE): $(PCH_SOURCE)
- TMPCMD=` echo $(CXXCOMPILE) | sed -e s,\",\',` ; \
- PATTERN=`echo $(PCH_FLAGS) | sed -e 's,\/,\\\/,'` ; \
- $${TMPCMD/$$PATTERN} \
- -x c++-header $(PCH_SOURCE) -MT $@ -MD -MP -MF "./$@.Tdep" \
- && mv "./$@.Tdep" "./$@.dep" || rm "./$@.Tdep"
+ $(MAKE) PCH_FLAGS= pch-file
+pch-file:
+ $(CXXCOMPILE) -x c++-header $(PCH_SOURCE) -o $(PCH_FILE) \
+ -MT $(PCH_FILE) -MD -MP -MF "./$(PCH_FILE).Tdep" \
+ && mv "./$(PCH_FILE).Tdep" "./$(PCH_FILE).dep" \
+ || rm "./$(PCH_FILE).Tdep"
endif
SUFFIXES = .gch