diff mbox

Better make rules for IPA objects

Message ID 71C283C9-6737-420D-8835-4A2C549FDA6C@arm.com
State New
Headers show

Commit Message

Alan Hayward Nov. 14, 2017, 2:18 p.m. UTC
> On 14 Nov 2017, at 11:14, Yao Qi <qiyaoltc@gmail.com> wrote:

> 

> Alan Hayward <Alan.Hayward@arm.com> writes:

> 

>> -%-ipa.o: ../common/%.c

>> +common/%-ipa.o: ../common/%.c

>> 	$(IPAGENT_COMPILE) $<

>> 	$(POSTCOMPILE)

> 

> We don't have common/ directory in GDBserver build tree, so

> common/%-ipa.o is useless.  Secondly, this "%-ipa.o: ../common/%.c"

> is removed, common/*.c files can't be built for IPA.  Please remove this

> change.

> 

> With your patch applied, fail to build libinproctrace.so on x86_64-linux.

> 

> g++ -std=gnu++11 -shared -fPIC -Wl,--soname=libinproctrace.so -Wl,--no-undefined -g -O2    -I. -I../../../binutils-gdb/gdb/gdbserver -I../../../binutils-gdb/gdb/gdbserver/../common -I../../../binutils-gdb/gdb/gdbserver/../regformats -I../../../binutils-gdb/gdb/gdbserver/.. -I../../../binutils-gdb/gdb/gdbserver/../../include -I../../../binutils-gdb/gdb/gdbserver/../gnulib/import -Ibuild-gnulib-gdbserver/import  -Wall -Wpointer-arith -Wno-unused -Wunused-value -Wunused-function -Wno-switch -Wno-char-subscripts -Wempty-body -Wunused-but-set-parameter -Wunused-but-set-variable -Wno-sign-compare -Wno-narrowing -Wno-error=maybe-uninitialized -Wformat-nonliteral -Werror -DGDBSERVER \

> -static-libstdc++ -static-libgcc  -Wl,--dynamic-list=../../../binutils-gdb/gdb/gdbserver/proc-service.list -o libinproctrace.so ax-ipa.o common-utils-ipa.o errors-ipa.o format-ipa.o print-utils-ipa.o regcache-ipa.o remote-utils-ipa.o rsp-low-ipa.o tdesc-ipa.o tracepoint-ipa.o utils-ipa.o vec-ipa.o linux-amd64-ipa.o linux-x86-tdesc-ipa.o arch/amd64-ipa.o -ldl -pthread

> g++: error: common-utils-ipa.o: No such file or directory

> g++: error: errors-ipa.o: No such file or directory

> g++: error: format-ipa.o: No such file or directory

> g++: error: print-utils-ipa.o: No such file or directory

> g++: error: rsp-low-ipa.o: No such file or directory

> g++: error: vec-ipa.o: No such file or directory

> Makefile:412: recipe for target 'libinproctrace.so’ failed

> 


The idea was that the new common rule was compiling the files from
gdbserver/../common/, e.g. gdbserver/../common/common-utils.c.
...Which I’ve now broken...

Ok, removed this change from the new version below.

> This and (https://sourceware.org/ml/gdb-patches/2017-10/msg00888.html)

> worry me more.  You miss something important in the development

> workflow to make sure your patches posted are well-tested.

> 


Apologies for this. Possibly I didn’t do a complete make clean here.
But it was glaringly obvious when I recompiled again.

Alan.

gdbserver:
	* Makefile.in: Update arch rules.
	* configure.srv: Explicitly mark arch/  files.

Comments

Yao Qi Nov. 15, 2017, 9:16 a.m. UTC | #1
Alan Hayward <Alan.Hayward@arm.com> writes:

> gdbserver:
> 	* Makefile.in: Update arch rules.
> 	* configure.srv: Explicitly mark arch/  files.

Patch is good to me.
diff mbox

Patch

diff --git a/gdb/gdbserver/Makefile.in b/gdb/gdbserver/Makefile.in
index 8e73563b103f720ddd5e77607c3190a2959903f5..1d51819014270e48b6a670e3defa1dc449e3abf5 100644
--- a/gdb/gdbserver/Makefile.in
+++ b/gdb/gdbserver/Makefile.in
@@ -567,7 +567,7 @@  arch/%.o: ../arch/%.c
 	$(IPAGENT_COMPILE) $<
 	$(POSTCOMPILE)

-%-ipa.o: ../arch/%.c
+arch/%-ipa.o: ../arch/%.c
 	$(IPAGENT_COMPILE) $<
 	$(POSTCOMPILE)

diff --git a/gdb/gdbserver/configure.srv b/gdb/gdbserver/configure.srv
index 515c6dc8b3e57574286149ebdca37da149218a35..82c3dc237c3fb6baeb2a72cd9ed66d8c7556d72a 100644
--- a/gdb/gdbserver/configure.srv
+++ b/gdb/gdbserver/configure.srv
@@ -133,7 +133,7 @@  case "${target}" in
 			srv_linux_thread_db=yes
 			srv_linux_btrace=yes
 			ipa_obj="linux-i386-ipa.o linux-x86-tdesc-ipa.o"
-			ipa_obj="${ipa_obj} i386-ipa.o"
+			ipa_obj="${ipa_obj} arch/i386-ipa.o"
 			;;
   i[34567]86-*-lynxos*)	srv_regobj=""
 			srv_tgtobj="lynx-low.o lynx-i386-low.o fork-child.o fork-inferior.o"
@@ -383,7 +383,7 @@  case "${target}" in
 			srv_linux_thread_db=yes
 			srv_linux_btrace=yes
 			ipa_obj="linux-amd64-ipa.o linux-x86-tdesc-ipa.o"
-			ipa_obj="${ipa_obj} amd64-ipa.o"
+			ipa_obj="${ipa_obj} arch/amd64-ipa.o"
 			;;
   x86_64-*-mingw*)	srv_regobj=""
 			srv_tgtobj="x86-low.o x86-dregs.o i387-fp.o win32-low.o win32-i386-low.o"