From e2574a3f9235950274d57c17e78468aa730037d6 Mon Sep 17 00:00:00 2001 From: kpfleming Date: Wed, 26 Nov 2008 19:08:56 +0000 Subject: Merged revisions 159476 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r159476 | kpfleming | 2008-11-26 12:36:24 -0600 (Wed, 26 Nov 2008) | 7 lines simplify (and slightly bug-fix) the recent developer-oriented COMPILE_DOUBLE mode ensure that 'make clean' removes dependency files for .i files that are created in COMPILE_DOUBLE mode ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@159534 f38db490-d61c-443f-a65b-d21fe96a405b --- Makefile.moddir_rules | 3 +-- Makefile.rules | 17 +++++++---------- agi/Makefile | 3 +-- utils/Makefile | 2 +- 4 files changed, 10 insertions(+), 15 deletions(-) diff --git a/Makefile.moddir_rules b/Makefile.moddir_rules index c2985fd78..1db15ecb1 100644 --- a/Makefile.moddir_rules +++ b/Makefile.moddir_rules @@ -111,7 +111,7 @@ modules.link: clean:: rm -f *.so *.o *.oo *.eo *.i *.ii - rm -f .*.o.d .*.oo.d + rm -f .*.d rm -f *.s *.i rm -f modules.link @@ -124,7 +124,6 @@ uninstall:: dist-clean:: rm -f .*.moduleinfo .moduleinfo rm -f .*.makeopts .makeopts - rm -f .*.d .%.moduleinfo: %.c @echo "" > $@ diff --git a/Makefile.rules b/Makefile.rules index 92fca37c9..db44a876b 100644 --- a/Makefile.rules +++ b/Makefile.rules @@ -19,6 +19,11 @@ .PHONY: dist-clean +# If 'make' decides to create intermediate files to satisfy a build requirement +# (like producing a .i from a .c), we want to keep them, so tell make to keep +# all intermediate files +.SECONDARY: + # extra cflags to build dependencies. Recursively expanded. MAKE_DEPS=-MD -MT $@ -MF .$(subst /,_,$@).d -MP @@ -74,13 +79,9 @@ ifeq ($(COMPILE_DOUBLE),yes) endif $(CMD_PREFIX) $(CC) -o $@ -c $< $(CC_CFLAGS) +ifneq ($(COMPILE_DOUBLE),yes) %.o: %.c $(ECHO_PREFIX) echo " [CC] $< -> $@" -ifeq ($(COMPILE_DOUBLE),yes) - $(CMD_PREFIX) $(CC) -o $(@:%.o=%.i) -E $< $(CC_CFLAGS) $(MAKE_DEPS) - $(CMD_PREFIX) $(CC) -o /dev/null -c $(@:%.o=%.i) $(CC_CFLAGS) $(OPTIMIZE) - $(CMD_PREFIX) $(CC) -o $@ -c $(@:%.o=%.i) $(CC_CFLAGS) -else $(CMD_PREFIX) $(CC) -o $@ -c $< $(CC_CFLAGS) $(MAKE_DEPS) endif @@ -95,13 +96,9 @@ ifeq ($(COMPILE_DOUBLE),yes) endif $(CMD_PREFIX) $(CXX) -o $@ -c $< $(CXX_CFLAGS) +ifneq ($(COMPILE_DOUBLE),yes) %.oo: %.cc $(ECHO_PREFIX) echo " [CXX] $< -> $@" -ifeq ($(COMPILE_DOUBLE),yes) - $(CMD_PREFIX) $(CXX) -o $(@:%.oo=%.ii) -E $< $(CXX_CFLAGS) $(MAKE_DEPS) - $(CMD_PREFIX) $(CXX) -o /dev/null -c $(@:%.oo=%.ii) $(CXX_CFLAGS) $(MAKE_DEPS) $(OPTIMIZE) - $(CMD_PREFIX) $(CXX) -o $@ -c $(@:%.oo=%.ii) $(CXX_CFLAGS) $(MAKE_DEPS) -else $(CMD_PREFIX) $(CXX) -o $@ -c $< $(CXX_CFLAGS) $(MAKE_DEPS) endif diff --git a/agi/Makefile b/agi/Makefile index d580a1632..e8e57a9b9 100644 --- a/agi/Makefile +++ b/agi/Makefile @@ -48,8 +48,7 @@ uninstall: clean: rm -f *.so *.o look eagi-test eagi-sphinx-test - rm -f .*.o.d .*.oo.d - rm -f *.s *.i + rm -f .*.d *.s *.i rm -f strcompat.c ifneq ($(wildcard .*.d),) diff --git a/utils/Makefile b/utils/Makefile index 44fa848a3..3a280dcad 100644 --- a/utils/Makefile +++ b/utils/Makefile @@ -73,7 +73,7 @@ uninstall: clean: rm -f *.o $(ALL_UTILS) check_expr - rm -f .*.o.d .*.oo.d + rm -f .*.d rm -f *.s *.i rm -f md5.c strcompat.c ast_expr2.c ast_expr2f.c pbx_ael.c pval.c hashtab.c rm -f aelparse.c aelbison.c conf2ael -- cgit v1.2.3