From 29abba378520a270c3a9385724c8ef5df66497b1 Mon Sep 17 00:00:00 2001 From: Joe Thornber Date: Mon, 4 Jun 2018 13:22:14 +0100 Subject: build: get separate builddir working again --- make.tmpl.in | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) (limited to 'make.tmpl.in') diff --git a/make.tmpl.in b/make.tmpl.in index 16a857121..b9672dc4a 100644 --- a/make.tmpl.in +++ b/make.tmpl.in @@ -444,14 +444,12 @@ endif .LIBPATTERNS = lib%.so lib%.a -DEPFLAGS=-MT $@ -MMD -MP -MF $*.d - # still needed in 2018 for 32bit builds DEFS+=-D_FILE_OFFSET_BITS=64 %.o: %.c @echo " [CC] $<" - $(Q) $(CC) $(DEPFLAGS) -c $(INCLUDES) $(VALGRIND_CFLAGS) $(PROGS_CFLAGS) $(DEFS) $(DEFS_$@) $(WFLAGS) $(WCFLAGS) $(CFLAGS) $(CFLAGS_$@) $< -o $@ + $(Q) $(CC) -c $(INCLUDES) $(VALGRIND_CFLAGS) $(PROGS_CFLAGS) $(DEFS) $(DEFS_$@) $(WFLAGS) $(WCFLAGS) $(CFLAGS) $(CFLAGS_$@) $< -o $@ %.o: %.cpp @echo " [CXX] $<" @@ -511,9 +509,18 @@ $(LIB_STATIC): $(OBJECTS) $(Q) $(RM) $@ $(Q) $(AR) rsv $@ $(OBJECTS) > /dev/null -%.d: -.PRECIOUS: %.d - +%.d: %.c + @echo " [DEP] $<" + $(Q) $(MKDIR_P) $(dir $@); \ + set -e; \ + FILE=`echo $@ | sed 's/\\//\\\\\\//g;s/\\.d//g'`; \ + DEPS=`echo $(DEPS) | sed -e 's/\\//\\\\\\//g'`; \ + $(CC) -MM $(INCLUDES) $(VALGRIND_CFLAGS) $(PROGS_CFLAGS) $(DEFS) -o $@ $<; \ + sed -i "s/\(.*\)\.o[ :]*/$$FILE.o $$FILE.d $$FILE.pot: $$DEPS /g" $@; \ + DEPLIST=`sed 's/ \\\\//;s/.*://;' < $@`; \ + echo $$DEPLIST | fmt -1 | sed 's/ //g;s/\(.*\)/\1:/' >> $@; \ + [ -s $@ ] || $(RM) $@ + %.mo: %.po @echo " [MSGFMT] $<" $(Q) $(MSGFMT) -o $@ $< -- cgit v1.2.1