This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
RFA: fix rdi-share subdir selection in configure
- From: Jim Blandy <jimb at redhat dot com>
- To: Richard dot Earnshaw at arm dot com, Scott Bambrough <scottb at netwinder dot org>
- Cc: gdb-patches at sources dot redhat dot com
- Date: 19 Jan 2005 15:31:39 -0500
- Subject: RFA: fix rdi-share subdir selection in configure
In this thread:
http://sources.redhat.com/ml/gdb-patches/2005-01/msg00038.html
the configury for the rdi-share subdirectory was disabled, because the
configure.tgt and configure.ac scripts handled it in a way which is no
longer kosher in Autoconf 2.59. The patch below changes that to work
in a 2.59-friendly way, and allows embedded arm-elf to build again.
Here's the portion of the autoconf 2.59 manual that explains how it
wants us to handle optional subdirectories:
Configuring Other Packages in Subdirectories
============================================
In most situations, calling `AC_OUTPUT' is sufficient to produce
`Makefile's in subdirectories. However, `configure' scripts that
control more than one independent package can use `AC_CONFIG_SUBDIRS'
to run `configure' scripts for other packages in subdirectories.
- Macro: AC_CONFIG_SUBDIRS (DIR ...)
Make `AC_OUTPUT' run `configure' in each subdirectory DIR in the
given whitespace-separated list. Each DIR should be a literal,
i.e., please do not use:
if test "$package_foo_enabled" = yes; then
$my_subdirs="$my_subdirs foo"
fi
AC_CONFIG_SUBDIRS($my_subdirs)
because this prevents `./configure --help=recursive' from
displaying the options of the package `foo'. Rather, you should
write:
if test "$package_foo_enabled" = yes; then
AC_CONFIG_SUBDIRS(foo)
fi
2005-01-19 Jim Blandy <jimb@redhat.com>
* configure.tgt: Set build_rdi_share to "yes" on those targets
that use that debugging protocol.
* configure.ac: If build_rdi_share is "yes", then configure the
rdi-share subdirectory.
Index: gdb/configure.ac
===================================================================
RCS file: /cvs/src/src/gdb/configure.ac,v
retrieving revision 1.3
diff -c -p -r1.3 configure.ac
*** gdb/configure.ac 16 Jan 2005 22:51:49 -0000 1.3
--- gdb/configure.ac 19 Jan 2005 20:28:16 -0000
*************** if test "x$target" = "x$host"; then
*** 1508,1513 ****
--- 1508,1518 ----
fi
fi
+ # We build rdi-share on ARM-based targets, as instructed by configure.tgt.
+ if test "x$build_rdi_share" = xyes; then
+ AC_CONFIG_SUBDIRS(rdi-share)
+ fi
+
# If hostfile (XM_FILE) and/or targetfile (DEPRECATED_TM_FILE) and/or
# nativefile (NAT_FILE) is not set in config/*/*.m[ht] files, we link
# to an empty version.
Index: gdb/configure.tgt
===================================================================
RCS file: /cvs/src/src/gdb/configure.tgt,v
retrieving revision 1.157
diff -c -p -r1.157 configure.tgt
*** gdb/configure.tgt 7 Jan 2005 16:22:33 -0000 1.157
--- gdb/configure.tgt 19 Jan 2005 20:28:16 -0000
*************** arm*-*-netbsd* | arm*-*-knetbsd*-gnu)
*** 56,71 ****
arm-*-nto*) gdb_target=nto ;;
arm*-*-* | thumb*-*-* | strongarm*-*-*)
gdb_target=embed
! # FIXME: cagney/2005-01-07: The configdirs
! # variable doesn't work with autoconf 2.59.
! # Disabled.
! # configdirs="$configdirs rdi-share"
;;
xscale-*-*) gdb_target=embed
! # FIXME: cagney/2005-01-07: The configdirs
! # variable doesn't work with autoconf 2.59.
! # Disabled.
! # configdirs="$configdirs rdi-share"
;;
avr-*-*) gdb_target=avr ;;
--- 56,65 ----
arm-*-nto*) gdb_target=nto ;;
arm*-*-* | thumb*-*-* | strongarm*-*-*)
gdb_target=embed
! build_rdi_share=yes
;;
xscale-*-*) gdb_target=embed
! build_rdi_share=yes
;;
avr-*-*) gdb_target=avr ;;
*************** i[34567]86-*-linux*) gdb_target=linux
*** 96,105 ****
;;
i[34567]86-*-gnu*) gdb_target=i386gnu ;;
i[34567]86-*-netware*) gdb_target=i386
! # FIXME: cagney/2005-01-07: The configdirs
! # variable doesn't work with autoconf 2.59.
! # Disabled.
! # configdirs="${configdirs} nlm"
;;
i[34567]86-*-cygwin*) gdb_target=cygwin ;;
i[34567]86-*-*) gdb_target=i386 ;;
--- 90,96 ----
;;
i[34567]86-*-gnu*) gdb_target=i386gnu ;;
i[34567]86-*-netware*) gdb_target=i386
! build_rdi_share=yes
;;
i[34567]86-*-cygwin*) gdb_target=cygwin ;;
i[34567]86-*-*) gdb_target=i386 ;;