aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYao Qi <yao.qi@linaro.org>2017-10-17 12:12:04 +0100
committerYao Qi <yao.qi@linaro.org>2017-10-17 12:12:04 +0100
commit60d6cfc99e67c3f94e31e26112873719b12b738f (patch)
treeee534442b69ce4fc500f265a8740d2e7a8d91659
parent0301ce1486b1450f219202677f30d0fa97335419 (diff)
downloadgdb-60d6cfc99e67c3f94e31e26112873719b12b738f.zip
gdb-60d6cfc99e67c3f94e31e26112873719b12b738f.tar.gz
gdb-60d6cfc99e67c3f94e31e26112873719b12b738f.tar.bz2
[GDBserver] Replicate src dir in build dir
Similar to f38307f5 (Replicate src dir in build dir), this patch change configure and Makefile to generate object files in arch/ directory. gdb/gdbserver: 2017-10-17 Yao Qi <yao.qi@linaro.org> * Makefile.in (CONFIG_SRC_SUBDIR): New variable. (clean): Remove .o files in CONFIG_SRC_SUBDIR. (distclean): Remove DEPDIR in CONFIG_SRC_SUBDIR. (arch-i386.o, arch-amd64.o): Remove rules. (arch/%.o): New rule. Update POSTCOMPILE and COMPILE.pre. * configure.ac: Invoke AC_CONFIG_COMMANDS. * configure: Re-generated. * configure.srv: Replace arch-i386.o with arch/i386.o. Replace arch-amd64.o with arch/amd64.o.
-rw-r--r--gdb/gdbserver/ChangeLog13
-rw-r--r--gdb/gdbserver/Makefile.in23
-rwxr-xr-xgdb/gdbserver/configure16
-rw-r--r--gdb/gdbserver/configure.ac12
-rw-r--r--gdb/gdbserver/configure.srv18
5 files changed, 64 insertions, 18 deletions
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog
index 852936a..2260a6c 100644
--- a/gdb/gdbserver/ChangeLog
+++ b/gdb/gdbserver/ChangeLog
@@ -1,3 +1,16 @@
+2017-10-17 Yao Qi <yao.qi@linaro.org>
+
+ * Makefile.in (CONFIG_SRC_SUBDIR): New variable.
+ (clean): Remove .o files in CONFIG_SRC_SUBDIR.
+ (distclean): Remove DEPDIR in CONFIG_SRC_SUBDIR.
+ (arch-i386.o, arch-amd64.o): Remove rules.
+ (arch/%.o): New rule.
+ Update POSTCOMPILE and COMPILE.pre.
+ * configure.ac: Invoke AC_CONFIG_COMMANDS.
+ * configure: Re-generated.
+ * configure.srv: Replace arch-i386.o with arch/i386.o.
+ Replace arch-amd64.o with arch/amd64.o.
+
2017-10-16 Yao Qi <yao.qi@linaro.org>
* configure: Regenerated.
diff --git a/gdb/gdbserver/Makefile.in b/gdb/gdbserver/Makefile.in
index 6c931ba..eff6fa5 100644
--- a/gdb/gdbserver/Makefile.in
+++ b/gdb/gdbserver/Makefile.in
@@ -43,6 +43,7 @@ man9dir = $(mandir)/man9
infodir = @infodir@
htmldir = $(prefix)/html
includedir = @includedir@
+CONFIG_SRC_SUBDIR = @CONFIG_SRC_SUBDIR@
SHELL = @SHELL@
EXEEXT = @EXEEXT@
@@ -434,6 +435,10 @@ clean:
rm -f *-generated.c
rm -f stamp-xml
rm -f $(DEPDIR)/*.Po
+ for i in $(CONFIG_SRC_SUBDIR); do \
+ rm -f $$i/*.o; \
+ rm -f $$i/$(DEPDIR)/*; \
+ done
@$(MAKE) $(FLAGS_TO_PASS) DO=$@ "DODIRS=$(SUBDIRS)" subdir_do
maintainer-clean realclean distclean: clean
@@ -441,6 +446,9 @@ maintainer-clean realclean distclean: clean
rm -rf $(GNULIB_BUILDDIR)
rm -f Makefile config.status config.h stamp-h config.log
rm -f Makefile
+ for i in $(CONFIG_SRC_SUBDIR); do \
+ rmdir $$i/$(DEPDIR); \
+ done
subdir_do: force
@for i in $(DODIRS); do \
@@ -530,11 +538,7 @@ ax.o: ax.c
$(COMPILE) $(WARN_CFLAGS_NO_FORMAT) $<
$(POSTCOMPILE)
-arch-i386.o: ../arch/i386.c
- $(COMPILE) $<
- $(POSTCOMPILE)
-
-arch-amd64.o: ../arch/amd64.c
+arch/%.o: ../arch/%.c
$(COMPILE) $<
$(POSTCOMPILE)
@@ -617,12 +621,13 @@ 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)/$(basename $(@F)).Tpo
+override POSTCOMPILE = @mv $(@D)/$(DEPDIR)/$(basename $(@F)).Tpo \
+ $(@D)/$(DEPDIR)/$(basename $(@F)).Po
else
override COMPILE.pre = source='$<' object='$@' libtool=no \
- DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC)
+ DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) \
+ $(CXX) -x c++ $(CXX_DIALECT)
# depcomp handles atomicity for us, so we don't need a postcompile
# step.
override POSTCOMPILE =
diff --git a/gdb/gdbserver/configure b/gdb/gdbserver/configure
index dfe3127..abab163 100755
--- a/gdb/gdbserver/configure
+++ b/gdb/gdbserver/configure
@@ -607,6 +607,7 @@ ustinc
ustlibs
ALLOCA
CCDEPMODE
+CONFIG_SRC_SUBDIR
DEPDIR
am__leading_dot
host_noncanonical
@@ -5854,6 +5855,14 @@ DEPDIR="${am__leading_dot}deps"
ac_config_commands="$ac_config_commands depdir"
+
+# Create sub-directories for objects and dependencies.
+CONFIG_SRC_SUBDIR="arch"
+
+
+ac_config_commands="$ac_config_commands gdbdepdir"
+
+
depcc="$CC" am_compiler_list=
am_depcomp=$ac_aux_dir/depcomp
@@ -9144,6 +9153,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
# INIT-COMMANDS
#
ac_aux_dir=$ac_aux_dir DEPDIR=$DEPDIR
+ac_aux_dir=$ac_aux_dir DEPDIR=$DEPDIR CONFIG_SRC_SUBDIR="$CONFIG_SRC_SUBDIR"
_ACEOF
@@ -9155,6 +9165,7 @@ do
case $ac_config_target in
"config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h:config.in" ;;
"depdir") CONFIG_COMMANDS="$CONFIG_COMMANDS depdir" ;;
+ "gdbdepdir") CONFIG_COMMANDS="$CONFIG_COMMANDS gdbdepdir" ;;
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
*) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
@@ -9701,6 +9712,11 @@ $as_echo "$as_me: executing $ac_file commands" >&6;}
case $ac_file$ac_mode in
"depdir":C) $SHELL $ac_aux_dir/mkinstalldirs $DEPDIR ;;
+ "gdbdepdir":C)
+ for subdir in ${CONFIG_SRC_SUBDIR}
+ do
+ $SHELL $ac_aux_dir/mkinstalldirs $subdir/$DEPDIR
+ done ;;
"Makefile":F) case x$CONFIG_HEADERS in
xconfig.h:config.in)
echo > stamp-h ;;
diff --git a/gdb/gdbserver/configure.ac b/gdb/gdbserver/configure.ac
index 36e21c5..60e235d 100644
--- a/gdb/gdbserver/configure.ac
+++ b/gdb/gdbserver/configure.ac
@@ -66,6 +66,18 @@ ACX_NONCANONICAL_HOST
# Dependency checking.
ZW_CREATE_DEPDIR
+
+# Create sub-directories for objects and dependencies.
+CONFIG_SRC_SUBDIR="arch"
+AC_SUBST(CONFIG_SRC_SUBDIR)
+
+AC_CONFIG_COMMANDS([gdbdepdir],[
+ for subdir in ${CONFIG_SRC_SUBDIR}
+ do
+ $SHELL $ac_aux_dir/mkinstalldirs $subdir/$DEPDIR
+ done],
+ [ac_aux_dir=$ac_aux_dir DEPDIR=$DEPDIR CONFIG_SRC_SUBDIR="$CONFIG_SRC_SUBDIR"])
+
ZW_PROG_COMPILER_DEPENDENCIES([CC])
gnulib_extra_configure_args=
diff --git a/gdb/gdbserver/configure.srv b/gdb/gdbserver/configure.srv
index 80b4b37..f412c8d 100644
--- a/gdb/gdbserver/configure.srv
+++ b/gdb/gdbserver/configure.srv
@@ -113,7 +113,7 @@ case "${target}" in
;;
i[34567]86-*-cygwin*) srv_regobj=""
srv_tgtobj="x86-low.o x86-dregs.o win32-low.o win32-i386-low.o"
- srv_tgtobj="${srv_tgtobj} arch-i386.o"
+ srv_tgtobj="${srv_tgtobj} arch/i386.o"
srv_xmlfiles="$srv_i386_xmlfiles"
;;
i[34567]86-*-linux*) srv_regobj="$srv_i386_linux_regobj"
@@ -123,7 +123,7 @@ case "${target}" in
srv_xmlfiles="${srv_xmlfiles} $srv_amd64_linux_xmlfiles"
srv_tgtobj="amd64-linux-siginfo.o"
fi
- srv_tgtobj="${srv_tgtobj} arch-i386.o"
+ srv_tgtobj="${srv_tgtobj} arch/i386.o"
srv_tgtobj="${srv_tgtobj} $srv_linux_obj linux-x86-low.o x86-low.o x86-dregs.o i387-fp.o"
srv_tgtobj="${srv_tgtobj} linux-x86-tdesc.o"
srv_tgtobj="${srv_tgtobj} linux-btrace.o x86-linux.o"
@@ -137,7 +137,7 @@ case "${target}" in
;;
i[34567]86-*-lynxos*) srv_regobj=""
srv_tgtobj="lynx-low.o lynx-i386-low.o fork-child.o fork-inferior.o"
- srv_tgtobj="${srv_tgtobj} arch-i386.o"
+ srv_tgtobj="${srv_tgtobj} arch/i386.o"
srv_xmlfiles="i386/i386.xml"
srv_xmlfiles="${srv_xmlfiles} i386/32bit-core.xml"
srv_xmlfiles="${srv_xmlfiles} i386/32bit-sse.xml"
@@ -146,7 +146,7 @@ case "${target}" in
i[34567]86-*-mingw32ce*)
srv_regobj=""
srv_tgtobj="x86-low.o x86-dregs.o win32-low.o win32-i386-low.o"
- srv_tgtobj="${srv_tgtobj} arch-i386.o"
+ srv_tgtobj="${srv_tgtobj} arch/i386.o"
srv_tgtobj="${srv_tgtobj} wincecompat.o"
srv_xmlfiles="$srv_i386_xmlfiles"
# hostio_last_error implementation is in win32-low.c
@@ -156,12 +156,12 @@ case "${target}" in
;;
i[34567]86-*-mingw*) srv_regobj=""
srv_tgtobj="x86-low.o x86-dregs.o win32-low.o win32-i386-low.o"
- srv_tgtobj="${srv_tgtobj} arch-i386.o"
+ srv_tgtobj="${srv_tgtobj} arch/i386.o"
srv_xmlfiles="$srv_i386_xmlfiles"
srv_mingw=yes
;;
i[34567]86-*-nto*) srv_regobj=""
- srv_tgtobj="nto-low.o nto-x86-low.o arch-i386.o"
+ srv_tgtobj="nto-low.o nto-x86-low.o arch/i386.o"
srv_xmlfiles="$srv_i386_xmlfiles"
srv_qnx="yes"
;;
@@ -372,7 +372,7 @@ case "${target}" in
;;
x86_64-*-linux*) srv_regobj="$srv_amd64_linux_regobj $srv_i386_linux_regobj"
srv_tgtobj="$srv_linux_obj linux-x86-low.o x86-low.o x86-dregs.o i387-fp.o"
- srv_tgtobj="${srv_tgtobj} arch-i386.o arch-amd64.o"
+ srv_tgtobj="${srv_tgtobj} arch/i386.o arch/amd64.o"
srv_tgtobj="${srv_tgtobj} linux-x86-tdesc.o"
srv_tgtobj="${srv_tgtobj} linux-btrace.o x86-linux.o"
srv_tgtobj="${srv_tgtobj} x86-linux-dregs.o"
@@ -387,13 +387,13 @@ case "${target}" in
;;
x86_64-*-mingw*) srv_regobj=""
srv_tgtobj="x86-low.o x86-dregs.o i387-fp.o win32-low.o win32-i386-low.o"
- srv_tgtobj="${srv_tgtobj} arch-amd64.o"
+ srv_tgtobj="${srv_tgtobj} arch/amd64.o"
srv_xmlfiles="$srv_i386_xmlfiles $srv_amd64_xmlfiles"
srv_mingw=yes
;;
x86_64-*-cygwin*) srv_regobj=""
srv_tgtobj="x86-low.o x86-dregs.o i387-fp.o win32-low.o win32-i386-low.o"
- srv_tgtobj="${srv_tgtobj} arch-amd64.o"
+ srv_tgtobj="${srv_tgtobj} arch/amd64.o"
srv_xmlfiles="$srv_i386_xmlfiles"
;;