This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFC] Replicate src dir in build dir
Simon Marchi <simon.marchi@polymtl.ca> writes:
> I'm always a bit uncomfortable with putting some rm -rf commands in
> scripts, if we can avoid it. Can we replace that with rmdir, since
> the clean target should have emptied that directory just before?
>
> Also I wouldn't silence the commands (the @), it's always good to be
> able to read what's being executed.
>
OK, I'll change to rmdir and remove @.
>>
>> maintainer-clean: local-maintainer-clean do-maintainer-clean distclean
>> realclean: maintainer-clean
>> @@ -2941,9 +2949,9 @@ ifeq ($(DEPMODE),depmode=gcc3)
>> # into place if the compile succeeds. We need this because gcc does
>> # not atomically write the dependency output file.
>> override COMPILE.post = -c -o $@ -MT $@ -MMD -MP \
>> - -MF $(DEPDIR)/$(basename $(@F)).Tpo
>> -override POSTCOMPILE = @mv $(DEPDIR)/$(basename $(@F)).Tpo \
>> - $(DEPDIR)/$(basename $(@F)).Po
>> + -MF $(@D)/$(DEPDIR)/$(@F).Tpo
>> +override POSTCOMPILE = @mv $(@D)/$(DEPDIR)/$(@F).Tpo \
>> + $(@D)/$(DEPDIR)/$(@F).Po
>> else
>> override COMPILE.pre = source='$<' object='$@' libtool=no \
>> DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC)
>
> I have never tested it, but I assume the "depcomp" mode of dependency
> management will have to be updated too.
I don't understand this comment. The only change in on dependency
tracking is that .Po file is moved to a new place (.deps/amd64.Po ->
./arch/.deps/amd64.o.Po). The file contents don't change.
$ diff -u .deps/amd64.Po ./arch/.deps/amd64.o.Po
--- .deps/amd64.Po 2017-09-20 07:57:04.903381133 +0000
+++ ./arch/.deps/amd64.o.Po 2017-09-20 07:40:35.995718460 +0000
@@ -1,4 +1,4 @@
-amd64.o: ../../binutils-gdb/gdb/arch/amd64.c \
+arch/amd64.o: ../../binutils-gdb/gdb/arch/amd64.c \
../../binutils-gdb/gdb/arch/amd64.h ../../binutils-gdb/gdb/arch/tdesc.h \
build-gnulib/import/stdint.h ../../binutils-gdb/gdb/common/x86-xstate.h \
build-gnulib/import/stdlib.h \
--
Yao (齐尧)