[PATCH master + 11] gdb/Makefile.in: remove testsuite from SUBDIRS

Simon Marchi via Gdb-patches
2021-07-07T13:21:13Z

When distclean-ing a configured / built gdb directory, like so:

$ ./configure && make all-gdb && make distclean

The distclean operation fails with:

Missing testsuite/Makefile

If we look at the SUBDIRS variable in the generated gdb/Makefile,
testsuite is there twice:

SUBDIRS = doc testsuite data-directory testsuite

So we try distclean-ing the testsuite directory twice. The second time,
gdb/testsuite/Makefile doesn't exist, so it fails.

The first "testsuite" comes from the @subdirs@ replacement, because of
the `AC_CONFIG_SUBDIRS` macro in gdb/configure.ac. The second one is
hard-coded in gdb/Makefile.in:

SUBDIRS = doc @subdirs@ data-directory testsuite

The hard-coded was added by:

bdbbcd577460 ("Always build 'all' in gdb/testsuite")

which came after `testsuite` was removed from @subdirs@ by:

f99d1d37496f ("Remove gdb/testsuite/configure")

My commit a100a94530eb ("gdb/testsuite: restore configure script")
should have removed the hard-coded `testsuite`, since it added it back
as a "subdir", but I missed it because I only looked f99d1d37496f to
write my patch.

Fix this by removing the hard-coded one.

This patch should be pushed to both master and gdb-11-branch, hence the
ChangeLog entry:

gdb/ChangeLog:

* Makefile.in (SUBDIRS): Remove testsuite.

Change-Id: I63e5590b1a08673c646510b3ecc74600eae9f92d
---
gdb/Makefile.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gdb/Makefile.in b/gdb/Makefile.in
index 1bc97885536e..53beb3ab2542 100644
--- a/gdb/Makefile.in
+++ b/gdb/Makefile.in
@@ -1591,7 +1591,7 @@ COMMON_OBS = $(DEPFILES) $(CONFIG_OBS) $(YYOBJ) \
$(SUBDIR_TARGET_OBS) \
$(SUBDIR_GCC_COMPILE_OBS)

-SUBDIRS = doc @subdirs@ data-directory testsuite
+SUBDIRS = doc @subdirs@ data-directory
CLEANDIRS = $(SUBDIRS)

# List of subdirectories in the build tree that must exist.
--
2.32.0