From: Tom Tromey Date: Mon, 2 Jul 2018 13:03:13 +0000 (-0600) Subject: Use a stamp file for init.c X-Git-Tag: users/ARM/embedded-binutils-master-2018q4~1507 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1998086d5436499e8eaf16772e300459662c3d7c;p=external%2Fbinutils.git Use a stamp file for init.c This introduces a stamp file for init.c. This prevents constant rebuilds of init.o, by arranging for init.c to only be modified when its contents change. (FWIW this is a standard idiom in use by Automake and by gdb itself for many years.) gdb/ChangeLog 2018-07-09 Tom Tromey * Makefile.in (init.c): Depend on stamp-init. (stamp-init): New rule, from init.c rule. (clean mostlyclean): Remove stamp-init. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 93f972b3..7e39800 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,11 @@ 2018-07-09 Tom Tromey + * Makefile.in (init.c): Depend on stamp-init. + (stamp-init): New rule, from init.c rule. + (clean mostlyclean): Remove stamp-init. + +2018-07-09 Tom Tromey + * Makefile.in (INIT_FILES): Remove CONFIG_SRCS, SUBDIR_GCC_COMPILE_SRCS. diff --git a/gdb/Makefile.in b/gdb/Makefile.in index b35ca2e..d14e867 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -1849,7 +1849,8 @@ test-cp-name-parser$(EXEEXT): test-cp-name-parser.o $(LIBIBERTY) # in sub-directories such as cli/ and mi/. INIT_FILES = $(COMMON_OBS) -init.c: $(INIT_FILES) +init.c: stamp-init; @true +stamp-init: $(INIT_FILES) @$(ECHO_INIT_C) echo "Making init.c" @rm -f init.c-tmp init.l-tmp @touch init.c-tmp @@ -1879,8 +1880,8 @@ init.c: $(INIT_FILES) @echo '{' >>init.c-tmp @sed -e 's/\(.*\)/ _initialize_\1 ();/' >init.c-tmp @echo '}' >>init.c-tmp - @rm init.l-tmp - @mv init.c-tmp init.c + @$(SHELL) $(srcdir)/../move-if-change init.c-tmp init.c + @echo stamp > stamp-init .PRECIOUS: init.c @@ -1947,7 +1948,7 @@ tags: TAGS clean mostlyclean: $(CONFIG_CLEAN) @$(MAKE) $(FLAGS_TO_PASS) DO=clean "DODIRS=$(CLEANDIRS)" subdir_do rm -f *.o *.a $(ADD_FILES) *~ init.c-tmp init.l-tmp version.c-tmp - rm -f init.c version.c + rm -f init.c stamp-init version.c rm -f gdb$(EXEEXT) core make.log rm -f gdb[0-9]$(EXEEXT) rm -f test-cp-name-parser$(EXEEXT)