Move gdbserver to top level

This patch moves gdbserver to the top level.

This patch is as close to a pure move as possible -- gdbserver still
builds its own variant of gnulib and gdbsupport.  Changing this will
be done in a separate patch.

[v2] Note that, per Simon's review comment, this patch changes the
tree so that gdbserver is not built for or1k or score.  This makes
sense, because there is apparently not actually a gdbserver port here.

[v3] This version of the patch also splits out some configury into a
new file, gdbserver/configure.host, so that the top-level configure
script can simply rely on it in order to decide whether gdbserver
should be built.

[v4] This version adds documentation and removes some unnecessary
top-level dependencies.

[v5] Update docs to mention "make all-gdbserver" and change how
top-level configure decides whether to build gdbserver, switching to a
single, shared script.

Tested by the buildbot.

ChangeLog
2020-02-07  Tom Tromey  <tom@tromey.com>
	    Pedro Alves  <palves@redhat.com>

	* src-release.sh (GDB_SUPPORT_DIRS): Add gdbserver.
	* gdbserver: New directory, moved from gdb/gdbserver.
	* configure.ac (host_tools): Add gdbserver.
	Only build gdbserver on certain systems.
	* Makefile.in, configure: Rebuild.
	* Makefile.def (host_modules, dependencies): Add gdbserver.
	* MAINTAINERS: Add gdbserver.

gdb/ChangeLog
2020-02-07  Tom Tromey  <tom@tromey.com>

	* README: Update gdbserver documentation.
	* gdbserver: Move to top level.
	* configure.tgt (build_gdbserver): Remove.
	* configure.ac: Remove --enable-gdbserver.
	* configure: Rebuild.
	* Makefile.in (distclean): Don't mention gdbserver.

Change-Id: I826b7565b54604711dc7a11edea0499cd51ff39e
This commit is contained in:
Tom Tromey 2019-12-15 07:37:06 -07:00 committed by Tom Tromey
parent e8319fde71
commit 919adfe840
118 changed files with 652 additions and 215 deletions

View File

@ -1,3 +1,14 @@
2020-02-07 Tom Tromey <tom@tromey.com>
Pedro Alves <palves@redhat.com>
* src-release.sh (GDB_SUPPORT_DIRS): Add gdbserver.
* gdbserver: New directory, moved from gdb/gdbserver.
* configure.ac (host_tools): Add gdbserver.
Only build gdbserver on certain systems.
* Makefile.in, configure: Rebuild.
* Makefile.def (host_modules, dependencies): Add gdbserver.
* MAINTAINERS: Add gdbserver.
2020-01-28 Sergio Durigan Junior <sergiodj@redhat.com>
* src-release.sh (getver): Look for gdbsupport's

View File

@ -41,7 +41,7 @@ config.guess; config.sub; readline/support/config.{sub,guess}
depcomp; mkinstalldirs
Send bug reports and patches to bug-automake@gnu.org.
gdb/; gdbsupport/; gnulib/; readline/; sim/; GDB's part of include/
gdb/; gdbserver/; gdbsupport/; gnulib/; readline/; sim/; GDB's part of include/
GDB: http://www.gnu.org/software/gdb/
Patches to gdb-patches@sourceware.org.
See also gdb/MAINTAINERS and sim/MAINTAINERS.

View File

@ -114,6 +114,7 @@ host_modules= { module= zlib; no_install=true; no_check=true;
extra_configure_flags='@extra_host_zlib_configure_flags@';};
host_modules= { module= gnulib; };
host_modules= { module= gdbsupport; };
host_modules= { module= gdbserver; };
host_modules= { module= gdb; };
host_modules= { module= expect; };
host_modules= { module= guile; };

View File

@ -944,6 +944,7 @@ configure-host: \
maybe-configure-zlib \
maybe-configure-gnulib \
maybe-configure-gdbsupport \
maybe-configure-gdbserver \
maybe-configure-gdb \
maybe-configure-expect \
maybe-configure-guile \
@ -1099,6 +1100,7 @@ all-host: maybe-all-zlib
@endif zlib-no-bootstrap
all-host: maybe-all-gnulib
all-host: maybe-all-gdbsupport
all-host: maybe-all-gdbserver
all-host: maybe-all-gdb
all-host: maybe-all-expect
all-host: maybe-all-guile
@ -1208,6 +1210,7 @@ info-host: maybe-info-texinfo
info-host: maybe-info-zlib
info-host: maybe-info-gnulib
info-host: maybe-info-gdbsupport
info-host: maybe-info-gdbserver
info-host: maybe-info-gdb
info-host: maybe-info-expect
info-host: maybe-info-guile
@ -1296,6 +1299,7 @@ dvi-host: maybe-dvi-texinfo
dvi-host: maybe-dvi-zlib
dvi-host: maybe-dvi-gnulib
dvi-host: maybe-dvi-gdbsupport
dvi-host: maybe-dvi-gdbserver
dvi-host: maybe-dvi-gdb
dvi-host: maybe-dvi-expect
dvi-host: maybe-dvi-guile
@ -1384,6 +1388,7 @@ pdf-host: maybe-pdf-texinfo
pdf-host: maybe-pdf-zlib
pdf-host: maybe-pdf-gnulib
pdf-host: maybe-pdf-gdbsupport
pdf-host: maybe-pdf-gdbserver
pdf-host: maybe-pdf-gdb
pdf-host: maybe-pdf-expect
pdf-host: maybe-pdf-guile
@ -1472,6 +1477,7 @@ html-host: maybe-html-texinfo
html-host: maybe-html-zlib
html-host: maybe-html-gnulib
html-host: maybe-html-gdbsupport
html-host: maybe-html-gdbserver
html-host: maybe-html-gdb
html-host: maybe-html-expect
html-host: maybe-html-guile
@ -1560,6 +1566,7 @@ TAGS-host: maybe-TAGS-texinfo
TAGS-host: maybe-TAGS-zlib
TAGS-host: maybe-TAGS-gnulib
TAGS-host: maybe-TAGS-gdbsupport
TAGS-host: maybe-TAGS-gdbserver
TAGS-host: maybe-TAGS-gdb
TAGS-host: maybe-TAGS-expect
TAGS-host: maybe-TAGS-guile
@ -1648,6 +1655,7 @@ install-info-host: maybe-install-info-texinfo
install-info-host: maybe-install-info-zlib
install-info-host: maybe-install-info-gnulib
install-info-host: maybe-install-info-gdbsupport
install-info-host: maybe-install-info-gdbserver
install-info-host: maybe-install-info-gdb
install-info-host: maybe-install-info-expect
install-info-host: maybe-install-info-guile
@ -1736,6 +1744,7 @@ install-pdf-host: maybe-install-pdf-texinfo
install-pdf-host: maybe-install-pdf-zlib
install-pdf-host: maybe-install-pdf-gnulib
install-pdf-host: maybe-install-pdf-gdbsupport
install-pdf-host: maybe-install-pdf-gdbserver
install-pdf-host: maybe-install-pdf-gdb
install-pdf-host: maybe-install-pdf-expect
install-pdf-host: maybe-install-pdf-guile
@ -1824,6 +1833,7 @@ install-html-host: maybe-install-html-texinfo
install-html-host: maybe-install-html-zlib
install-html-host: maybe-install-html-gnulib
install-html-host: maybe-install-html-gdbsupport
install-html-host: maybe-install-html-gdbserver
install-html-host: maybe-install-html-gdb
install-html-host: maybe-install-html-expect
install-html-host: maybe-install-html-guile
@ -1912,6 +1922,7 @@ installcheck-host: maybe-installcheck-texinfo
installcheck-host: maybe-installcheck-zlib
installcheck-host: maybe-installcheck-gnulib
installcheck-host: maybe-installcheck-gdbsupport
installcheck-host: maybe-installcheck-gdbserver
installcheck-host: maybe-installcheck-gdb
installcheck-host: maybe-installcheck-expect
installcheck-host: maybe-installcheck-guile
@ -2000,6 +2011,7 @@ mostlyclean-host: maybe-mostlyclean-texinfo
mostlyclean-host: maybe-mostlyclean-zlib
mostlyclean-host: maybe-mostlyclean-gnulib
mostlyclean-host: maybe-mostlyclean-gdbsupport
mostlyclean-host: maybe-mostlyclean-gdbserver
mostlyclean-host: maybe-mostlyclean-gdb
mostlyclean-host: maybe-mostlyclean-expect
mostlyclean-host: maybe-mostlyclean-guile
@ -2088,6 +2100,7 @@ clean-host: maybe-clean-texinfo
clean-host: maybe-clean-zlib
clean-host: maybe-clean-gnulib
clean-host: maybe-clean-gdbsupport
clean-host: maybe-clean-gdbserver
clean-host: maybe-clean-gdb
clean-host: maybe-clean-expect
clean-host: maybe-clean-guile
@ -2176,6 +2189,7 @@ distclean-host: maybe-distclean-texinfo
distclean-host: maybe-distclean-zlib
distclean-host: maybe-distclean-gnulib
distclean-host: maybe-distclean-gdbsupport
distclean-host: maybe-distclean-gdbserver
distclean-host: maybe-distclean-gdb
distclean-host: maybe-distclean-expect
distclean-host: maybe-distclean-guile
@ -2264,6 +2278,7 @@ maintainer-clean-host: maybe-maintainer-clean-texinfo
maintainer-clean-host: maybe-maintainer-clean-zlib
maintainer-clean-host: maybe-maintainer-clean-gnulib
maintainer-clean-host: maybe-maintainer-clean-gdbsupport
maintainer-clean-host: maybe-maintainer-clean-gdbserver
maintainer-clean-host: maybe-maintainer-clean-gdb
maintainer-clean-host: maybe-maintainer-clean-expect
maintainer-clean-host: maybe-maintainer-clean-guile
@ -2408,6 +2423,7 @@ check-host: \
maybe-check-zlib \
maybe-check-gnulib \
maybe-check-gdbsupport \
maybe-check-gdbserver \
maybe-check-gdb \
maybe-check-expect \
maybe-check-guile \
@ -2543,6 +2559,7 @@ install-host-nogcc: \
maybe-install-zlib \
maybe-install-gnulib \
maybe-install-gdbsupport \
maybe-install-gdbserver \
maybe-install-gdb \
maybe-install-expect \
maybe-install-guile \
@ -2595,6 +2612,7 @@ install-host: \
maybe-install-zlib \
maybe-install-gnulib \
maybe-install-gdbsupport \
maybe-install-gdbserver \
maybe-install-gdb \
maybe-install-expect \
maybe-install-guile \
@ -2703,6 +2721,7 @@ install-strip-host: \
maybe-install-strip-zlib \
maybe-install-strip-gnulib \
maybe-install-strip-gdbsupport \
maybe-install-strip-gdbserver \
maybe-install-strip-gdb \
maybe-install-strip-expect \
maybe-install-strip-guile \
@ -29005,6 +29024,447 @@ maintainer-clean-gdbsupport:
.PHONY: configure-gdbserver maybe-configure-gdbserver
maybe-configure-gdbserver:
@if gcc-bootstrap
configure-gdbserver: stage_current
@endif gcc-bootstrap
@if gdbserver
maybe-configure-gdbserver: configure-gdbserver
configure-gdbserver:
@: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
test ! -f $(HOST_SUBDIR)/gdbserver/Makefile || exit 0; \
$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gdbserver; \
$(HOST_EXPORTS) \
echo Configuring in $(HOST_SUBDIR)/gdbserver; \
cd "$(HOST_SUBDIR)/gdbserver" || exit 1; \
case $(srcdir) in \
/* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
*) topdir=`echo $(HOST_SUBDIR)/gdbserver/ | \
sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
esac; \
module_srcdir=gdbserver; \
$(SHELL) \
$$s/$$module_srcdir/configure \
--srcdir=$${topdir}/$$module_srcdir \
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} \
|| exit 1
@endif gdbserver
.PHONY: all-gdbserver maybe-all-gdbserver
maybe-all-gdbserver:
@if gcc-bootstrap
all-gdbserver: stage_current
@endif gcc-bootstrap
@if gdbserver
TARGET-gdbserver=all
maybe-all-gdbserver: all-gdbserver
all-gdbserver: configure-gdbserver
@: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \
$(TARGET-gdbserver))
@endif gdbserver
.PHONY: check-gdbserver maybe-check-gdbserver
maybe-check-gdbserver:
@if gdbserver
maybe-check-gdbserver: check-gdbserver
check-gdbserver:
@: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(FLAGS_TO_PASS) check)
@endif gdbserver
.PHONY: install-gdbserver maybe-install-gdbserver
maybe-install-gdbserver:
@if gdbserver
maybe-install-gdbserver: install-gdbserver
install-gdbserver: installdirs
@: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(FLAGS_TO_PASS) install)
@endif gdbserver
.PHONY: install-strip-gdbserver maybe-install-strip-gdbserver
maybe-install-strip-gdbserver:
@if gdbserver
maybe-install-strip-gdbserver: install-strip-gdbserver
install-strip-gdbserver: installdirs
@: $(MAKE); $(unstage)
@r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(FLAGS_TO_PASS) install-strip)
@endif gdbserver
# Other targets (info, dvi, pdf, etc.)
.PHONY: maybe-info-gdbserver info-gdbserver
maybe-info-gdbserver:
@if gdbserver
maybe-info-gdbserver: info-gdbserver
info-gdbserver: \
configure-gdbserver
@: $(MAKE); $(unstage)
@[ -f ./gdbserver/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing info in gdbserver"; \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
"DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
info) \
|| exit 1
@endif gdbserver
.PHONY: maybe-dvi-gdbserver dvi-gdbserver
maybe-dvi-gdbserver:
@if gdbserver
maybe-dvi-gdbserver: dvi-gdbserver
dvi-gdbserver: \
configure-gdbserver
@: $(MAKE); $(unstage)
@[ -f ./gdbserver/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing dvi in gdbserver"; \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
"DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
dvi) \
|| exit 1
@endif gdbserver
.PHONY: maybe-pdf-gdbserver pdf-gdbserver
maybe-pdf-gdbserver:
@if gdbserver
maybe-pdf-gdbserver: pdf-gdbserver
pdf-gdbserver: \
configure-gdbserver
@: $(MAKE); $(unstage)
@[ -f ./gdbserver/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing pdf in gdbserver"; \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
"DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
pdf) \
|| exit 1
@endif gdbserver
.PHONY: maybe-html-gdbserver html-gdbserver
maybe-html-gdbserver:
@if gdbserver
maybe-html-gdbserver: html-gdbserver
html-gdbserver: \
configure-gdbserver
@: $(MAKE); $(unstage)
@[ -f ./gdbserver/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing html in gdbserver"; \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
"DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
html) \
|| exit 1
@endif gdbserver
.PHONY: maybe-TAGS-gdbserver TAGS-gdbserver
maybe-TAGS-gdbserver:
@if gdbserver
maybe-TAGS-gdbserver: TAGS-gdbserver
TAGS-gdbserver: \
configure-gdbserver
@: $(MAKE); $(unstage)
@[ -f ./gdbserver/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing TAGS in gdbserver"; \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
"DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
TAGS) \
|| exit 1
@endif gdbserver
.PHONY: maybe-install-info-gdbserver install-info-gdbserver
maybe-install-info-gdbserver:
@if gdbserver
maybe-install-info-gdbserver: install-info-gdbserver
install-info-gdbserver: \
configure-gdbserver \
info-gdbserver
@: $(MAKE); $(unstage)
@[ -f ./gdbserver/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-info in gdbserver"; \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
"DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
install-info) \
|| exit 1
@endif gdbserver
.PHONY: maybe-install-pdf-gdbserver install-pdf-gdbserver
maybe-install-pdf-gdbserver:
@if gdbserver
maybe-install-pdf-gdbserver: install-pdf-gdbserver
install-pdf-gdbserver: \
configure-gdbserver \
pdf-gdbserver
@: $(MAKE); $(unstage)
@[ -f ./gdbserver/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-pdf in gdbserver"; \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
"DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
install-pdf) \
|| exit 1
@endif gdbserver
.PHONY: maybe-install-html-gdbserver install-html-gdbserver
maybe-install-html-gdbserver:
@if gdbserver
maybe-install-html-gdbserver: install-html-gdbserver
install-html-gdbserver: \
configure-gdbserver \
html-gdbserver
@: $(MAKE); $(unstage)
@[ -f ./gdbserver/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing install-html in gdbserver"; \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
"DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
install-html) \
|| exit 1
@endif gdbserver
.PHONY: maybe-installcheck-gdbserver installcheck-gdbserver
maybe-installcheck-gdbserver:
@if gdbserver
maybe-installcheck-gdbserver: installcheck-gdbserver
installcheck-gdbserver: \
configure-gdbserver
@: $(MAKE); $(unstage)
@[ -f ./gdbserver/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing installcheck in gdbserver"; \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
"DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
installcheck) \
|| exit 1
@endif gdbserver
.PHONY: maybe-mostlyclean-gdbserver mostlyclean-gdbserver
maybe-mostlyclean-gdbserver:
@if gdbserver
maybe-mostlyclean-gdbserver: mostlyclean-gdbserver
mostlyclean-gdbserver:
@: $(MAKE); $(unstage)
@[ -f ./gdbserver/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing mostlyclean in gdbserver"; \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
"DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
mostlyclean) \
|| exit 1
@endif gdbserver
.PHONY: maybe-clean-gdbserver clean-gdbserver
maybe-clean-gdbserver:
@if gdbserver
maybe-clean-gdbserver: clean-gdbserver
clean-gdbserver:
@: $(MAKE); $(unstage)
@[ -f ./gdbserver/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing clean in gdbserver"; \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
"DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
clean) \
|| exit 1
@endif gdbserver
.PHONY: maybe-distclean-gdbserver distclean-gdbserver
maybe-distclean-gdbserver:
@if gdbserver
maybe-distclean-gdbserver: distclean-gdbserver
distclean-gdbserver:
@: $(MAKE); $(unstage)
@[ -f ./gdbserver/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing distclean in gdbserver"; \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
"DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
distclean) \
|| exit 1
@endif gdbserver
.PHONY: maybe-maintainer-clean-gdbserver maintainer-clean-gdbserver
maybe-maintainer-clean-gdbserver:
@if gdbserver
maybe-maintainer-clean-gdbserver: maintainer-clean-gdbserver
maintainer-clean-gdbserver:
@: $(MAKE); $(unstage)
@[ -f ./gdbserver/Makefile ] || exit 0; \
r=`${PWD_COMMAND}`; export r; \
s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
$(HOST_EXPORTS) \
for flag in $(EXTRA_HOST_FLAGS) ; do \
eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
done; \
echo "Doing maintainer-clean in gdbserver"; \
(cd $(HOST_SUBDIR)/gdbserver && \
$(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
"CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
"RANLIB=$${RANLIB}" \
"DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
maintainer-clean) \
|| exit 1
@endif gdbserver
.PHONY: configure-gdb maybe-configure-gdb
maybe-configure-gdb:
@if gcc-bootstrap

21
configure vendored
View File

@ -2831,7 +2831,7 @@ host_libs="intl libiberty opcodes bfd readline tcl tk itcl libgui zlib libbacktr
# binutils, gas and ld appear in that order because it makes sense to run
# "make check" in that particular order.
# If --enable-gold is used, "gold" may replace "ld".
host_tools="texinfo flex bison binutils gas ld fixincludes gcc cgen sid sim gdb gprof etc expect dejagnu m4 utils guile fastjar gnattools libcc1 gotools"
host_tools="texinfo flex bison binutils gas ld fixincludes gcc cgen sid sim gdb gdbserver gprof etc expect dejagnu m4 utils guile fastjar gnattools libcc1 gotools"
# these libraries are built for the target environment, and are built after
# the host libraries and the host tools (which may be a cross compiler)
@ -3538,6 +3538,25 @@ case "${target}" in
;;
esac
# Only allow gdbserver on some systems.
if test -d ${srcdir}/gdbserver; then
if test x$enable_gdbserver = x; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for gdbserver support" >&5
$as_echo_n "checking for gdbserver support... " >&6; }
if (srcdir=${srcdir}/gdbserver; \
. ${srcdir}/configure.srv; \
test -n "$UNSUPPORTED")
then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
noconfigdirs="$noconfigdirs gdbserver"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
fi
fi
fi
# Disable libgo for some systems where it is known to not work.
# For testing, you can easily override this with --enable-libgo.
if test x$enable_libgo = x; then

View File

@ -1,6 +1,6 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
# 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012,
# 2014, 2015, 2016, 2019 Free Software Foundation, Inc.
# 2014, 2015, 2016, 2019, 2020 Free Software Foundation, Inc.
#
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@ -140,7 +140,7 @@ host_libs="intl libiberty opcodes bfd readline tcl tk itcl libgui zlib libbacktr
# binutils, gas and ld appear in that order because it makes sense to run
# "make check" in that particular order.
# If --enable-gold is used, "gold" may replace "ld".
host_tools="texinfo flex bison binutils gas ld fixincludes gcc cgen sid sim gdb gprof etc expect dejagnu m4 utils guile fastjar gnattools libcc1 gotools"
host_tools="texinfo flex bison binutils gas ld fixincludes gcc cgen sid sim gdb gdbserver gprof etc expect dejagnu m4 utils guile fastjar gnattools libcc1 gotools"
# these libraries are built for the target environment, and are built after
# the host libraries and the host tools (which may be a cross compiler)
@ -782,6 +782,22 @@ case "${target}" in
;;
esac
# Only allow gdbserver on some systems.
if test -d ${srcdir}/gdbserver; then
if test x$enable_gdbserver = x; then
AC_MSG_CHECKING([for gdbserver support])
if (srcdir=${srcdir}/gdbserver; \
. ${srcdir}/configure.srv; \
test -n "$UNSUPPORTED")
then
AC_MSG_RESULT([no])
noconfigdirs="$noconfigdirs gdbserver"
else
AC_MSG_RESULT([yes])
fi
fi
fi
# Disable libgo for some systems where it is known to not work.
# For testing, you can easily override this with --enable-libgo.
if test x$enable_libgo = x; then

View File

@ -1,3 +1,12 @@
2020-02-07 Tom Tromey <tom@tromey.com>
* README: Update gdbserver documentation.
* gdbserver: Move to top level.
* configure.tgt (build_gdbserver): Remove.
* configure.ac: Remove --enable-gdbserver.
* configure: Rebuild.
* Makefile.in (distclean): Don't mention gdbserver.
2020-02-06 Shahab Vahedi <shahab@synopsys.com>
* source-cache.c (source_cache::ensure): Surround

View File

@ -1898,13 +1898,8 @@ clean mostlyclean: $(CONFIG_CLEAN)
# I believe this is wrong; the makefile standards for distclean just
# describe removing files; the only sort of "re-create a distribution"
# functionality described is if the distributed files are unmodified.
# NB: While GDBSERVER might be configured on native systems, it isn't
# always included in SUBDIRS. Remove the gdbserver files explicitly.
distclean: clean
@$(MAKE) $(FLAGS_TO_PASS) DO=distclean "DODIRS=$(CLEANDIRS)" subdir_do
rm -f gdbserver/config.status gdbserver/config.log
rm -f gdbserver/tm.h gdbserver/xm.h gdbserver/nm.h
rm -f gdbserver/Makefile gdbserver/config.cache
rm -f nm.h config.status config.h stamp-h b jit-reader.h
rm -f gdb-gdb.py gdb-gdb.gdb
rm -f y.output yacc.acts yacc.tmp y.tab.h

View File

@ -583,12 +583,11 @@ of remote stubs to be used with remote.c. They are designed to run
standalone on an m68k, i386, or SPARC cpu and communicate properly
with the remote.c stub over a serial line.
The directory gdb/gdbserver/ contains `gdbserver', a program that
The directory gdbserver/ contains `gdbserver', a program that
allows remote debugging for Unix applications. GDBserver is only
supported for some native configurations, including Sun 3, Sun 4, and
Linux.
supported for some native configurations.
The file gdb/gdbserver/README includes further notes on GDBserver; in
The file gdbserver/README includes further notes on GDBserver; in
particular, it explains how to build GDBserver for cross-debugging
(where GDBserver runs on the target machine, which is of a different
architecture than the host machine running GDB).

41
gdb/configure vendored
View File

@ -905,7 +905,6 @@ with_tcl
with_tk
with_x
enable_sim
enable_gdbserver
with_babeltrace
with_libbabeltrace_prefix
with_xxhash
@ -930,8 +929,7 @@ YACC
YFLAGS
XMKMF'
ac_subdirs_all='testsuite
gdbtk
gdbserver'
gdbtk'
# Initialize some variables set by options.
ac_init_help=
@ -1575,8 +1573,6 @@ Optional Features:
gcc is used
--enable-ubsan enable undefined behavior sanitizer (auto/yes/no)
--enable-sim link gdb with simulator
--enable-gdbserver automatically build gdbserver (yes/no/auto, default
is auto)
--enable-unit-tests Enable the inclusion of unit tests when compiling
GDB
@ -6738,7 +6734,6 @@ fi
# For other settings, only the main target counts.
gdb_sim=
gdb_osabi=
build_gdbserver=
targ=$target; . ${srcdir}/configure.tgt
# Fetch the default architecture and default target vector from BFD.
@ -17848,40 +17843,6 @@ _ACEOF
fi
# Check whether --enable-gdbserver was given.
if test "${enable_gdbserver+set}" = set; then :
enableval=$enable_gdbserver; case "${enableval}" in
yes| no|auto) ;;
*) as_fn_error $? "bad value ${enableval} for --enable-gdbserver option" "$LINENO" 5 ;;
esac
else
enable_gdbserver=auto
fi
# We only build gdbserver automatically in a native configuration, and
# only if the user did not explicitly disable its build.
if test "$gdb_native" = "yes" -a "$enable_gdbserver" != "no"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gdbserver is supported on this host" >&5
$as_echo_n "checking whether gdbserver is supported on this host... " >&6; }
if test "x$build_gdbserver" = xyes; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
subdirs="$subdirs gdbserver"
gdbserver_build_enabled=yes
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
fi
# If the user explicitly request the gdbserver to be built, verify that
# we were in fact able to enable it.
if test "$enable_gdbserver" = "yes" -a "$gdbserver_build_enabled" != "yes"; then
as_fn_error $? "Automatic gdbserver build is not supported for this configuration" "$LINENO" 5
fi
# Check for babeltrace and babeltrace-ctf
# Check whether --with-babeltrace was given.

View File

@ -254,7 +254,6 @@ AC_SUBST(HAVE_NATIVE_GCORE_TARGET)
# For other settings, only the main target counts.
gdb_sim=
gdb_osabi=
build_gdbserver=
targ=$target; . ${srcdir}/configure.tgt
# Fetch the default architecture and default target vector from BFD.
@ -2001,33 +2000,6 @@ if test x"${gdb_osabi}" != x ; then
[Define to the default OS ABI for this configuration.])
fi
AC_ARG_ENABLE(gdbserver,
AS_HELP_STRING([--enable-gdbserver],
[automatically build gdbserver (yes/no/auto, default is auto)]),
[case "${enableval}" in
yes| no|auto) ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-gdbserver option) ;;
esac],[enable_gdbserver=auto])
# We only build gdbserver automatically in a native configuration, and
# only if the user did not explicitly disable its build.
if test "$gdb_native" = "yes" -a "$enable_gdbserver" != "no"; then
AC_MSG_CHECKING(whether gdbserver is supported on this host)
if test "x$build_gdbserver" = xyes; then
AC_MSG_RESULT(yes)
AC_CONFIG_SUBDIRS(gdbserver)
gdbserver_build_enabled=yes
else
AC_MSG_RESULT(no)
fi
fi
# If the user explicitly request the gdbserver to be built, verify that
# we were in fact able to enable it.
if test "$enable_gdbserver" = "yes" -a "$gdbserver_build_enabled" != "yes"; then
AC_MSG_ERROR(Automatic gdbserver build is not supported for this configuration)
fi
# Check for babeltrace and babeltrace-ctf
AC_ARG_WITH(babeltrace,
AC_HELP_STRING([--with-babeltrace], [include babeltrace support (auto/yes/no)]),

View File

@ -5,7 +5,6 @@
# gdb_target_obs target-specific object files to use
# gdb_sim simulator library for target
# gdb_osabi default OS ABI to use with target
# build_gdbserver set to "yes" if gdbserver supports target
# gdb_have_gcore set to "true"/"false" if this target can run gcore
# NOTE: Every file added to a gdb_target_obs variable for any target here
@ -129,7 +128,6 @@ aarch64*-*-linux*)
arm-tdep.o arm-linux-tdep.o \
glibc-tdep.o linux-tdep.o solib-svr4.o \
symfile-mem.o linux-record.o"
build_gdbserver=yes
;;
alpha*-*-linux*)
@ -162,13 +160,11 @@ arc*-*-elf32)
arm*-wince-pe | arm*-*-mingw32ce*)
# Target: ARM based machine running Windows CE (win32)
gdb_target_obs="arm-wince-tdep.o windows-tdep.o"
build_gdbserver=yes
;;
arm*-*-linux*)
# Target: ARM based machine running GNU/Linux
gdb_target_obs="arch/arm-linux.o arm-linux-tdep.o glibc-tdep.o \
solib-svr4.o symfile-mem.o linux-tdep.o linux-record.o"
build_gdbserver=yes
;;
arm*-*-freebsd*)
# Target: FreeBSD/arm
@ -202,7 +198,6 @@ bfin-*-*linux*)
# Target: Blackfin Linux
gdb_target_obs="bfin-tdep.o bfin-linux-tdep.o linux-tdep.o"
gdb_sim=../sim/bfin/libsim.a
build_gdbserver=yes
;;
bfin-*-*)
# Target: Blackfin processor
@ -285,7 +280,6 @@ i[34567]86-*-nto*)
# Target: Intel 386 running qnx6.
gdb_target_obs="solib-svr4.o \
i386-nto-tdep.o nto-tdep.o"
build_gdbserver=yes
;;
i[34567]86-*-solaris2* | x86_64-*-solaris2*)
# Target: Solaris x86_64
@ -303,7 +297,6 @@ i[34567]86-*-linux*)
# Target: GNU/Linux x86-64
gdb_target_obs="amd64-linux-tdep.o ${gdb_target_obs}"
fi
build_gdbserver=yes
;;
i[34567]86-*-gnu*)
# Target: Intel 386 running the GNU Hurd
@ -312,12 +305,10 @@ i[34567]86-*-gnu*)
i[34567]86-*-cygwin*)
# Target: Intel 386 running win32
gdb_target_obs="i386-cygwin-tdep.o windows-tdep.o"
build_gdbserver=yes
;;
i[34567]86-*-mingw32*)
# Target: Intel 386 running win32
gdb_target_obs="i386-cygwin-tdep.o windows-tdep.o"
build_gdbserver=yes
;;
i[34567]86-*-go32* | i[34567]86-*-msdosdjgpp*)
# Target: i386 running DJGPP/go32.
@ -328,7 +319,6 @@ ia64-*-linux*)
# Target: Intel IA-64 running GNU/Linux
gdb_target_obs="ia64-linux-tdep.o linux-tdep.o \
solib-svr4.o symfile-mem.o"
build_gdbserver=yes
;;
ia64-*-*vms*)
# Target: Intel IA-64 running OpenVMS
@ -359,7 +349,6 @@ m32r*-*-linux*)
glibc-tdep.o solib-svr4.o symfile-mem.o \
linux-tdep.o"
gdb_sim=../sim/m32r/libsim.a
build_gdbserver=yes
;;
m32r*-*-*)
# Target: Renesas m32r processor
@ -382,7 +371,6 @@ m68*-*-linux*)
# Target: Motorola m68k with a.out and ELF
gdb_target_obs="m68k-tdep.o m68k-linux-tdep.o solib-svr4.o \
linux-tdep.o glibc-tdep.o symfile-mem.o"
build_gdbserver=yes
;;
m68*-*-netbsd* | m68*-*-knetbsd*-gnu)
# Target: NetBSD/m68k
@ -416,7 +404,6 @@ mips*-*-linux*)
gdb_target_obs="mips-tdep.o mips-linux-tdep.o glibc-tdep.o \
solib-svr4.o symfile-mem.o linux-tdep.o"
gdb_sim=../sim/mips/libsim.a
build_gdbserver=yes
;;
mips*-*-netbsd* | mips*-*-knetbsd*-gnu)
# Target: MIPS running NetBSD
@ -480,7 +467,6 @@ or1k*-*-linux*)
gdb_target_obs="or1k-tdep.o or1k-linux-tdep.o solib-svr4.o \
symfile-mem.o glibc-tdep.o linux-tdep.o"
gdb_sim=../sim/or1k/libsim.a
build_gdbserver=yes
;;
or1k-*-* | or1knd-*-*)
@ -522,7 +508,6 @@ powerpc*-*-linux*)
linux-record.o \
arch/ppc-linux-common.o"
gdb_sim=../sim/ppc/libsim.a
build_gdbserver=yes
;;
powerpc-*-lynx*178)
# Target: PowerPC running Lynx178.
@ -541,7 +526,6 @@ s390*-*-linux*)
# Target: S390 running Linux
gdb_target_obs="s390-linux-tdep.o s390-tdep.o solib-svr4.o \
linux-tdep.o linux-record.o symfile-mem.o"
build_gdbserver=yes
;;
riscv*-*-freebsd*)
@ -575,7 +559,6 @@ rx-*-elf)
score-*-*)
# Target: S+core embedded system
gdb_target_obs="score-tdep.o"
build_gdbserver=yes
;;
sh*-*-linux*)
@ -584,7 +567,6 @@ sh*-*-linux*)
solib-svr4.o symfile-mem.o \
glibc-tdep.o linux-tdep.o"
gdb_sim=../sim/sh/libsim.a
build_gdbserver=yes
;;
sh*-*-netbsdelf* | sh*-*-knetbsd*-gnu)
# Target: NetBSD/sh
@ -612,7 +594,6 @@ sparc-*-linux*)
gdb_target_obs="sparc64-tdep.o sparc64-sol2-tdep.o \
sparc64-linux-tdep.o ${gdb_target_obs}"
fi
build_gdbserver=yes
;;
sparc64-*-linux*)
# Target: GNU/Linux UltraSPARC
@ -620,7 +601,6 @@ sparc64-*-linux*)
sparc64-linux-tdep.o sparc-tdep.o sparc-sol2-tdep.o \
sparc-linux-tdep.o solib-svr4.o linux-tdep.o \
ravenscar-thread.o sparc-ravenscar-thread.o"
build_gdbserver=yes
;;
sparc*-*-freebsd* | sparc*-*-kfreebsd*-gnu)
# Target: FreeBSD/sparc64
@ -689,7 +669,6 @@ tilegx-*-linux*)
# Target: TILE-Gx
gdb_target_obs="tilegx-tdep.o tilegx-linux-tdep.o solib-svr4.o \
symfile-mem.o glibc-tdep.o linux-tdep.o"
build_gdbserver=yes
;;
xstormy16-*-*)
@ -742,7 +721,6 @@ x86_64-*-linux*)
gdb_target_obs="amd64-linux-tdep.o ${i386_tobjs} \
i386-linux-tdep.o glibc-tdep.o \
solib-svr4.o symfile-mem.o linux-tdep.o linux-record.o"
build_gdbserver=yes
;;
x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
# Target: FreeBSD/amd64
@ -754,7 +732,6 @@ x86_64-*-mingw* | x86_64-*-cygwin*)
gdb_target_obs="amd64-windows-tdep.o \
${i386_tobjs} i386-cygwin-tdep.o \
windows-tdep.o"
build_gdbserver=yes
;;
x86_64-*-netbsd* | x86_64-*-knetbsd*-gnu)
# Target: NetBSD/amd64
@ -772,7 +749,6 @@ x86_64-*-rtems*)
xtensa*-*-*linux*)
# Target: GNU/Linux Xtensa
gdb_target_obs="xtensa-linux-tdep.o symfile-mem.o linux-tdep.o"
build_gdbserver=yes
;;
esac

View File

@ -1,3 +1,20 @@
2020-02-07 Tom Tromey <tom@tromey.com>
Pedro Alves <palves@redhat.com>
* README: Update build documentation.
* configure.srv: Set UNSUPPORTED if host is unsupported. Check
host, not target.
* configure.ac: Update paths.
* configure: Rebuild.
* acinclude.m4: Update paths.
* Makefile.in: Update include paths.
(depcomp, INCLUDE_DIR, INCGNU, INCSUPPORT, INCLUDE_CFLAGS)
(SFILES, XML_DIR, n, $(GNULIB_BUILDDIR)/Makefile, config.status)
(version-generated.c, stamp-xml, regdat_sh, arch/%-ipa.o)
(gdbsupport/%-ipa.o, %-ipa.o, arch/%.o, gdbsupport/%.o, %.o)
(%-generated.c): Update paths.
* Move entire directory from ../gdb/gdbserver.
2020-01-29 Maciej W. Rozycki <macro@wdc.com>
* configure.srv <i[34567]86-*-mingw*>: Fix whitespace damage.

View File

@ -66,7 +66,7 @@ STRIP = @STRIP@
# Dependency tracking information.
DEPMODE = @CCDEPMODE@
DEPDIR = @DEPDIR@
depcomp = $(SHELL) $(srcdir)/../../depcomp
depcomp = $(SHELL) $(srcdir)/../depcomp
# Directory containing source files. Don't clean up the spacing,
# this exact string is matched for by the "configure" script.
@ -75,7 +75,7 @@ abs_top_srcdir = @abs_top_srcdir@
abs_srcdir = @abs_srcdir@
VPATH = @srcdir@
include $(srcdir)/../silent-rules.mk
include $(srcdir)/../gdb/silent-rules.mk
# Note that these are overridden by GNU make-specific code below if
# GNU make is used. The overrides implement dependency tracking.
@ -94,7 +94,7 @@ POSTCOMPILE = @true
CC_LD = $(CXX) $(CXX_DIALECT)
# Where is the "include" directory? Traditionally ../include or ./include
INCLUDE_DIR = ${srcdir}/../../include
INCLUDE_DIR = ${srcdir}/../include
INCLUDE_DEP = $$(INCLUDE_DIR)
LIBIBERTY_BUILDDIR = build-libiberty-gdbserver
@ -107,26 +107,26 @@ ustinc = @ustinc@
# gnulib
GNULIB_BUILDDIR = build-gnulib-gdbserver
LIBGNU = $(GNULIB_BUILDDIR)/import/libgnu.a
INCGNU = -I$(srcdir)/../../gnulib/import -I$(GNULIB_BUILDDIR)/import
INCGNU = -I$(srcdir)/../gnulib/import -I$(GNULIB_BUILDDIR)/import
# Generated headers in the gnulib directory. These must be listed
# so that they are generated before other files are compiled.
GNULIB_H = $(GNULIB_BUILDDIR)/import/string.h @GNULIB_STDINT_H@
INCSUPPORT = -I$(srcdir)/../.. -I../..
INCSUPPORT = -I$(srcdir)/.. -I..
# All the includes used for CFLAGS and for lint.
# -I. for config files.
# -I${srcdir} for our headers.
# -I$(srcdir)/../regformats for regdef.h.
# -I$(srcdir)/../gdb/regformats for regdef.h.
#
# We do not include ../target or ../nat in here because headers
# in those directories should be included with the subdirectory.
# e.g.: "target/wait.h".
#
INCLUDE_CFLAGS = -I. -I${srcdir} \
-I$(srcdir)/../regformats -I$(srcdir)/.. -I$(INCLUDE_DIR) \
$(INCGNU) $(INCSUPPORT)
-I$(srcdir)/../gdb/regformats -I$(srcdir)/.. -I$(INCLUDE_DIR) \
-I$(srcdir)/../gdb $(INCGNU) $(INCSUPPORT)
# M{H,T}_CFLAGS, if defined, has host- and target-dependent CFLAGS
# from the config/ directory.
@ -202,46 +202,46 @@ SFILES = \
$(srcdir)/win32-low.c \
$(srcdir)/wincecompat.c \
$(srcdir)/x86-low.c \
$(srcdir)/../alloc.c \
$(srcdir)/../arch/arm.c \
$(srcdir)/../arch/arm-get-next-pcs.c \
$(srcdir)/../arch/arm-linux.c \
$(srcdir)/../arch/ppc-linux-common.c \
$(srcdir)/../../gdbsupport/btrace-common.c \
$(srcdir)/../../gdbsupport/buffer.c \
$(srcdir)/../../gdbsupport/cleanups.c \
$(srcdir)/../../gdbsupport/common-debug.c \
$(srcdir)/../../gdbsupport/common-exceptions.c \
$(srcdir)/../../gdbsupport/common-inferior.c \
$(srcdir)/../../gdbsupport/common-regcache.c \
$(srcdir)/../../gdbsupport/common-utils.c \
$(srcdir)/../../gdbsupport/errors.c \
$(srcdir)/../../gdbsupport/environ.c \
$(srcdir)/../../gdbsupport/fileio.c \
$(srcdir)/../../gdbsupport/filestuff.c \
$(srcdir)/../../gdbsupport/job-control.c \
$(srcdir)/../../gdbsupport/gdb-dlfcn.c \
$(srcdir)/../../gdbsupport/gdb_tilde_expand.c \
$(srcdir)/../../gdbsupport/gdb_vecs.c \
$(srcdir)/../../gdbsupport/gdb_wait.c \
$(srcdir)/../../gdbsupport/netstuff.c \
$(srcdir)/../../gdbsupport/new-op.c \
$(srcdir)/../../gdbsupport/pathstuff.c \
$(srcdir)/../../gdbsupport/print-utils.c \
$(srcdir)/../../gdbsupport/ptid.c \
$(srcdir)/../../gdbsupport/rsp-low.c \
$(srcdir)/../../gdbsupport/safe-strerror.c \
$(srcdir)/../../gdbsupport/tdesc.c \
$(srcdir)/../../gdbsupport/xml-utils.c \
$(srcdir)/../nat/aarch64-sve-linux-ptrace.c \
$(srcdir)/../nat/linux-btrace.c \
$(srcdir)/../nat/linux-namespaces.c \
$(srcdir)/../nat/linux-osdata.c \
$(srcdir)/../nat/linux-personality.c \
$(srcdir)/../nat/mips-linux-watch.c \
$(srcdir)/../nat/ppc-linux.c \
$(srcdir)/../nat/fork-inferior.c \
$(srcdir)/../target/waitstatus.c
$(srcdir)/../gdb/alloc.c \
$(srcdir)/../gdb/arch/arm.c \
$(srcdir)/../gdb/arch/arm-get-next-pcs.c \
$(srcdir)/../gdb/arch/arm-linux.c \
$(srcdir)/../gdb/arch/ppc-linux-common.c \
$(srcdir)/../gdbsupport/btrace-common.c \
$(srcdir)/../gdbsupport/buffer.c \
$(srcdir)/../gdbsupport/cleanups.c \
$(srcdir)/../gdbsupport/common-debug.c \
$(srcdir)/../gdbsupport/common-exceptions.c \
$(srcdir)/../gdbsupport/common-inferior.c \
$(srcdir)/../gdbsupport/common-regcache.c \
$(srcdir)/../gdbsupport/common-utils.c \
$(srcdir)/../gdbsupport/errors.c \
$(srcdir)/../gdbsupport/environ.c \
$(srcdir)/../gdbsupport/fileio.c \
$(srcdir)/../gdbsupport/filestuff.c \
$(srcdir)/../gdbsupport/job-control.c \
$(srcdir)/../gdbsupport/gdb-dlfcn.c \
$(srcdir)/../gdbsupport/gdb_tilde_expand.c \
$(srcdir)/../gdbsupport/gdb_vecs.c \
$(srcdir)/../gdbsupport/gdb_wait.c \
$(srcdir)/../gdbsupport/netstuff.c \
$(srcdir)/../gdbsupport/new-op.c \
$(srcdir)/../gdbsupport/pathstuff.c \
$(srcdir)/../gdbsupport/print-utils.c \
$(srcdir)/../gdbsupport/ptid.c \
$(srcdir)/../gdbsupport/rsp-low.c \
$(srcdir)/../gdbsupport/safe-strerror.c \
$(srcdir)/../gdbsupport/tdesc.c \
$(srcdir)/../gdbsupport/xml-utils.c \
$(srcdir)/../gdb/nat/aarch64-sve-linux-ptrace.c \
$(srcdir)/../gdb/nat/linux-btrace.c \
$(srcdir)/../gdb/nat/linux-namespaces.c \
$(srcdir)/../gdb/nat/linux-osdata.c \
$(srcdir)/../gdb/nat/linux-personality.c \
$(srcdir)/../gdb/nat/mips-linux-watch.c \
$(srcdir)/../gdb/nat/ppc-linux.c \
$(srcdir)/../gdb/nat/fork-inferior.c \
$(srcdir)/../gdb/target/waitstatus.c
DEPFILES = @GDBSERVER_DEPFILES@
@ -322,7 +322,7 @@ XM_CLIBS = @LIBS@
CDEPS = $(srcdir)/proc-service.list
# XML files to compile in to gdbserver, if any.
XML_DIR = $(srcdir)/../features
XML_DIR = $(srcdir)/../gdb/features
XML_FILES = @srv_xmlfiles@
XML_BUILTIN = @srv_xmlbuiltin@
@ -388,10 +388,10 @@ install-only:
n=`echo gdbserver | sed '$(program_transform_name)'`; \
if [ x$$n = x ]; then n=gdbserver; else true; fi; \
if [ x"$(IPA_DEPFILES)" != x ]; then \
$(SHELL) $(srcdir)/../../mkinstalldirs $(DESTDIR)$(libdir); \
$(SHELL) $(srcdir)/../mkinstalldirs $(DESTDIR)$(libdir); \
$(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $(IPA_LIB) $(DESTDIR)$(libdir)/$(IPA_LIB); \
fi; \
$(SHELL) $(srcdir)/../../mkinstalldirs $(DESTDIR)$(bindir); \
$(SHELL) $(srcdir)/../mkinstalldirs $(DESTDIR)$(bindir); \
$(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) gdbserver$(EXEEXT) $(DESTDIR)$(bindir)/$$n$(EXEEXT)
# Note that we run install and not install-only, as the latter
# is not part of GNU standards and in particular not provided
@ -522,14 +522,14 @@ stamp-h: config.in config.status
Makefile: Makefile.in config.status
$(SHELL) ./config.status $@
$(GNULIB_BUILDDIR)/Makefile: $(srcdir)/../../gnulib/Makefile.in config.status
$(GNULIB_BUILDDIR)/Makefile: $(srcdir)/../gnulib/Makefile.in config.status
@cd $(GNULIB_BUILDDIR); CONFIG_FILES="Makefile" \
CONFIG_COMMANDS="depfiles" \
CONFIG_HEADERS= \
CONFIG_LINKS= \
$(SHELL) config.status
config.status: configure configure.srv $(srcdir)/../../bfd/development.sh
config.status: configure configure.srv $(srcdir)/../bfd/development.sh
$(SHELL) ./config.status --recheck
# automatic rebuilding in automake-generated Makefiles requires
@ -541,8 +541,8 @@ am--refresh:
force:
version-generated.c: Makefile $(srcdir)/../version.in $(srcdir)/../../bfd/version.h $(srcdir)/../../gdbsupport/create-version.sh
$(ECHO_GEN) $(SHELL) $(srcdir)/../../gdbsupport/create-version.sh $(srcdir)/.. \
version-generated.c: Makefile $(srcdir)/../gdb/version.in $(srcdir)/../bfd/version.h $(srcdir)/../gdbsupport/create-version.sh
$(ECHO_GEN) $(SHELL) $(srcdir)/../gdbsupport/create-version.sh $(srcdir)/../gdb \
$(host_alias) $(target_alias) $@
xml-builtin-generated.c: stamp-xml; @true
@ -550,7 +550,7 @@ stamp-xml: $(XML_DIR)/feature_to_c.sh Makefile $(XML_FILES)
$(SILENCE) rm -f xml-builtin.tmp
$(ECHO_GEN_XML_BUILTIN_GENERATED) $(SHELL) $(XML_DIR)/feature_to_c.sh \
xml-builtin.tmp $(XML_FILES)
$(SILENCE) $(SHELL) $(srcdir)/../../move-if-change xml-builtin.tmp xml-builtin-generated.c
$(SILENCE) $(SHELL) $(srcdir)/../move-if-change xml-builtin.tmp xml-builtin-generated.c
$(SILENCE) echo stamp > stamp-xml
.PRECIOUS: xml-builtin.c
@ -566,7 +566,7 @@ stamp-xml: $(XML_DIR)/feature_to_c.sh Makefile $(XML_FILES)
# will remove them.
MAKEOVERRIDES =
regdat_sh = $(srcdir)/../regformats/regdat.sh
regdat_sh = $(srcdir)/../gdb/regformats/regdat.sh
UST_CFLAGS = $(ustinc) -DCONFIG_UST_GDB_INTEGRATION
@ -596,11 +596,11 @@ ax.o: ax.c
# Rules for objects that go in the in-process agent.
arch/%-ipa.o: ../arch/%.c
arch/%-ipa.o: ../gdb/arch/%.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
gdbsupport/%-ipa.o: ../../gdbsupport/%.c
gdbsupport/%-ipa.o: ../gdbsupport/%.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
@ -612,7 +612,7 @@ gdbsupport/%-ipa.o: ../../gdbsupport/%.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
%-ipa.o: ../%.c
%-ipa.o: ../gdb/%.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
@ -629,11 +629,11 @@ gdbsupport/%-ipa.o: ../../gdbsupport/%.c
# Rules for objects that go in the gdbserver binary.
arch/%.o: ../arch/%.c
arch/%.o: ../gdb/arch/%.c
$(COMPILE) $<
$(POSTCOMPILE)
gdbsupport/%.o: ../../gdbsupport/%.c
gdbsupport/%.o: ../gdbsupport/%.c
$(COMPILE) $<
$(POSTCOMPILE)
@ -645,28 +645,28 @@ gdbsupport/%.o: ../../gdbsupport/%.c
$(COMPILE) $<
$(POSTCOMPILE)
nat/%.o: ../nat/%.c
nat/%.o: ../gdb/nat/%.c
$(COMPILE) $<
$(POSTCOMPILE)
target/%.o: ../target/%.c
target/%.o: ../gdb/target/%.c
$(COMPILE) $<
$(POSTCOMPILE)
%.o: ../%.c
%.o: ../gdb/%.c
$(COMPILE) $<
$(POSTCOMPILE)
# Rules for register format descriptions. Suffix destination files with
# -generated to identify and clean them easily.
%-generated.c: ../regformats/%.dat $(regdat_sh)
%-generated.c: ../gdb/regformats/%.dat $(regdat_sh)
$(ECHO_REGDAT) $(SHELL) $(regdat_sh) $< $@
%-generated.c: ../regformats/arm/%.dat $(regdat_sh)
%-generated.c: ../gdb/regformats/arm/%.dat $(regdat_sh)
$(ECHO_REGDAT) $(SHELL) $(regdat_sh) $< $@
%-generated.c: ../regformats/rs6000/%.dat $(regdat_sh)
%-generated.c: ../gdb/regformats/rs6000/%.dat $(regdat_sh)
$(ECHO_REGDAT) $(SHELL) $(regdat_sh) $< $@
#
@ -711,7 +711,7 @@ all_deps_files = $(foreach dep,$(patsubst %.o,%.Po,$(all_object_files)),\
-include $(all_deps_files)
# Disable implicit make rules.
include $(srcdir)/../disable-implicit-rules.mk
include $(srcdir)/../gdb/disable-implicit-rules.mk
# Do not delete intermediate files (e.g. *-generated.c).
.SECONDARY:

View File

@ -100,27 +100,24 @@ The supported targets as of November 2006 are:
spu*-*-*
x86_64-*-linux*
Configuring GDBserver you should specify the same machine for host and
target (which are the machine that GDBserver is going to run on. This
is not the same as the machine that GDB is going to run on; building
GDBserver automatically as part of building a whole tree of tools does
not currently work if cross-compilation is involved (we don't get the
right CC in the Makefile, to start with)).
Building GDBserver for your target is very straightforward. If you build
GDB natively on a target which GDBserver supports, it will be built
Building GDBserver for your host is very straightforward. If you build
GDB natively on a host which GDBserver supports, it will be built
automatically when you build GDB. You can also build just GDBserver:
% mkdir obj
% cd obj
% path-to-gdbserver-sources/configure
% make
% path-to-toplevel-sources/configure --disable-gdb
% make all-gdbserver
(If you have a combined binutils+gdb tree, you may want to also
disable other directories when configuring, e.g., binutils, gas, gold,
gprof, and ld.)
If you prefer to cross-compile to your target, then you can also build
GDBserver that way. In a Bourne shell, for example:
% export CC=your-cross-compiler
% path-to-gdbserver-sources/configure your-target-name
% path-to-topevel-sources/configure your-target-name --disable-gdb
% make
Using GDBreplay:

View File

@ -1,42 +1,42 @@
dnl gdb/gdbserver/configure.in uses BFD_HAVE_SYS_PROCFS_TYPE.
m4_include(../../bfd/bfd.m4)
m4_include(../bfd/bfd.m4)
m4_include(../acx_configure_dir.m4)
m4_include(../gdb/acx_configure_dir.m4)
# This gets AM_GDB_WARNINGS.
m4_include(../warning.m4)
m4_include(../gdb/warning.m4)
dnl This gets autoconf bugfixes
m4_include(../../config/override.m4)
m4_include(../config/override.m4)
dnl For ACX_PKGVERSION and ACX_BUGURL.
m4_include(../../config/acx.m4)
m4_include(../config/acx.m4)
m4_include(../../config/depstand.m4)
m4_include(../../config/lead-dot.m4)
m4_include(../config/depstand.m4)
m4_include(../config/lead-dot.m4)
dnl Needed for common.m4
dnl For AC_LIB_HAVE_LINKFLAGS.
m4_include(../../config/lib-ld.m4)
m4_include(../../config/lib-prefix.m4)
m4_include(../../config/lib-link.m4)
m4_include(../config/lib-ld.m4)
m4_include(../config/lib-prefix.m4)
m4_include(../config/lib-link.m4)
dnl codeset.m4 is needed for common.m4, but not for
dnl anything else in gdbserver.
m4_include(../../config/codeset.m4)
m4_include(../../gdbsupport/common.m4)
m4_include(../config/codeset.m4)
m4_include(../gdbsupport/common.m4)
dnl For libiberty_INIT.
m4_include(../libiberty.m4)
m4_include(../gdb/libiberty.m4)
dnl For GDB_AC_PTRACE.
m4_include(../ptrace.m4)
m4_include(../gdb/ptrace.m4)
m4_include(../ax_cxx_compile_stdcxx.m4)
m4_include(../gdb/ax_cxx_compile_stdcxx.m4)
dnl For GDB_AC_SELFTEST.
m4_include(../selftest.m4)
m4_include(../gdb/selftest.m4)
m4_include([../../config/ax_pthread.m4])
m4_include([../config/ax_pthread.m4])
dnl Check for existence of a type $1 in libthread_db.h
dnl Based on BFD_HAVE_SYS_PROCFS_TYPE in bfd/bfd.m4.

View File

@ -6072,7 +6072,7 @@ fi
# Set the 'development' global.
. $srcdir/../../bfd/development.sh
. $srcdir/../bfd/development.sh
# Check whether we will enable the inclusion of unit tests when
@ -6255,7 +6255,7 @@ fi
# "gnulib", to avoid the problem of both GDB and GDBserver wanting to
# build it in the same directory, when building in the source dir.
in_src="../../gnulib"
in_src="../gnulib"
in_build="build-gnulib-gdbserver"
in_extra_args="$gnulib_extra_configure_args"
@ -6358,7 +6358,7 @@ $as_echo "$as_me: running $SHELL $ac_sub_configure $ac_sub_configure_args --cach
in_src="../../libiberty"
in_src="../libiberty"
in_build="build-libiberty-gdbserver"
in_extra_args=

View File

@ -44,7 +44,7 @@ AX_CXX_COMPILE_STDCXX(11, , mandatory)
AC_HEADER_STDC
# Set the 'development' global.
. $srcdir/../../bfd/development.sh
. $srcdir/../bfd/development.sh
GDB_AC_SELFTEST([
srv_selftest_objs="gdbsupport/selftest.o"
@ -80,10 +80,10 @@ fi
# gdbserver/. We need to build gnulib under some other directory not
# "gnulib", to avoid the problem of both GDB and GDBserver wanting to
# build it in the same directory, when building in the source dir.
ACX_CONFIGURE_DIR(["../../gnulib"], ["build-gnulib-gdbserver"],
ACX_CONFIGURE_DIR(["../gnulib"], ["build-gnulib-gdbserver"],
["$gnulib_extra_configure_args"])
ACX_CONFIGURE_DIR(["../../libiberty"], ["build-libiberty-gdbserver"])
ACX_CONFIGURE_DIR(["../libiberty"], ["build-libiberty-gdbserver"])
AC_CHECK_HEADERS(termios.h sys/reg.h string.h dnl
sys/procfs.h linux/elf.h dnl

View File

@ -1,6 +1,8 @@
# Mappings from configuration triplets to gdbserver build options.
# This is invoked from the autoconf-generated configure script, to
# produce the appropriate Makefile substitutions.
# It is also sourced by the top level configure script, to determine
# whether gdbserver is supported on a given host.
# This file sets the following shell variables:
# srv_regobj The register protocol appropriate for this target.
@ -12,6 +14,7 @@
# gdbserver in this configuration.
# ipa_obj Any other target-specific modules appropriate
# for this target's in-process agent.
# UNSUPPORTED Set to 1 if the host is unsupported.
#
# In addition, on GNU/Linux the following shell variables will be set:
# srv_linux_regsets Set to "yes" if ptrace(PTRACE_GETREGS) and friends
@ -30,9 +33,9 @@ ipa_ppc_linux_regobj="powerpc-32l-ipa.o powerpc-altivec32l-ipa.o powerpc-vsx32l-
# these files over and over again.
srv_linux_obj="linux-low.o nat/linux-osdata.o nat/linux-procfs.o nat/linux-ptrace.o nat/linux-waitpid.o nat/linux-personality.o nat/linux-namespaces.o fork-child.o nat/fork-inferior.o"
# Input is taken from the "${target}" variable.
# Input is taken from the "${host}" variable.
case "${target}" in
case "${host}" in
aarch64*-*-linux*) srv_tgtobj="linux-aarch64-low.o"
srv_tgtobj="$srv_tgtobj nat/aarch64-linux-hw-point.o"
srv_tgtobj="$srv_tgtobj linux-aarch32-low.o"
@ -396,7 +399,8 @@ case "${target}" in
srv_linux_regsets=yes
srv_linux_thread_db=yes
;;
*) echo "Error: target not supported by gdbserver."
exit 1
*)
# Who are you?
UNSUPPORTED=1
;;
esac

Some files were not shown because too many files have changed in this diff Show More