diff options
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/Makefile.in | 35 |
2 files changed, 17 insertions, 24 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 33cc257..5c7e98b 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,11 @@ 2018-12-27 Tom Tromey <tom@tromey.com> + * Makefile.in (INIT_FILES): Redefine. + (stamp-init): Remove sed, tr invocations. Use for loop. Don't + set LANG or LC_ALL. + +2018-12-27 Tom Tromey <tom@tromey.com> + * Makefile.in (stamp-init): Remove gdbtypes special case. 2018-12-27 John Baldwin <jhb@FreeBSD.org> diff --git a/gdb/Makefile.in b/gdb/Makefile.in index 1adbbca..713b0d8 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -1830,37 +1830,24 @@ test-cp-name-parser$(EXEEXT): test-cp-name-parser.o $(LIBIBERTY) # # Note that the set of files with init functions might change, or the names # of the functions might change, so this files needs to depend on all the -# object files that will be linked into gdb. +# source files that will be linked into gdb. However, due to the way +# this Makefile has generally been written, we do this indirectly, by +# computing the list of source files from the list of object files. -# FIXME: There is a problem with this approach - init.c may force -# unnecessary files to be linked in. +INIT_FILES = \ + $(patsubst %.o,%.c, \ + $(patsubst %-exp.o,%-exp.y, \ + $(filter-out $(NATDEPFILES) init.o version.o %_S.o %_U.o,\ + $(COMMON_OBS)))) -# NOTE: cagney/2003-03-18: The sed pattern ``s|^\([^ /]...'' is -# anchored on the first column and excludes the ``/'' character so -# that it doesn't add the $(srcdir) prefix to any file that already -# has an absolute path. It turns out that $(DEC)'s True64 make -# automatically adds the $(srcdir) prefixes when it encounters files -# in sub-directories such as cli/ and mi/. - -INIT_FILES = $(COMMON_OBS) 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 - @-LANG=C ; export LANG ; \ - LC_ALL=C ; export LC_ALL ; \ - echo $(INIT_FILES) | \ - tr ' ' '\012' | \ - sed \ - -e '/^init.[co]$$/d' \ - -e '/version.[co]$$/d' \ - -e '/^[a-z0-9A-Z_]*_[SU].[co]$$/d' \ - -e 's/-exp\.o$$/-exp.y/' \ - -e 's/\.o$$/.c/' \ - -e 's|^\([^ /][^ ]*\)|$(srcdir)/\1|g' | \ - while read f; do \ - sed -n -e 's/^_initialize_\([a-z_0-9A-Z]*\).*/\1/p' $$f 2>/dev/null; \ + @-for f in $(INIT_FILES); do \ + sed -n -e 's/^_initialize_\([a-z_0-9A-Z]*\).*/\1/p' \ + $(srcdir)/$$f 2>/dev/null; \ done > init.l-tmp @echo '/* Do not modify this file. */' >>init.c-tmp @echo '/* It is created automatically by the Makefile. */'>>init.c-tmp |