From 496c0e1ba7bd2b8596d90cc6b2bc87cf5c1cff67 Mon Sep 17 00:00:00 2001 From: Joel Brobecker Date: Wed, 22 Sep 2010 16:15:01 +0000 Subject: [PATCH] Allow disabling of gdbserver build (--enable-gdbserver=yes/no/auto). This patch adds a new --enable-gdbserver=yes/no/auto command-line switch in gdb/configure. The primary purpose is to allow a user to disable the build & install of gdbserver when not desired. It also allows the user to request gdbserver in which case the configure script will abort if automatic building of gdbserver is not supported for that configuration. The default keeps things as is: We automatically build gdbserver if building for a native configuration and if gdbserver is supported for that configuration. gdb/ChangeLog: * configure.ac: Add support for --enable-gdbserver. * configure: Regenerate. At AdaCore, this is mostly intended for ia64-linux, where we currently do not want to distribute gdbserver. This will be useful in the context of I417-033, where we are now using "make install" to determine what needs to be packaged inside the GNAT Pro package. --- gdb/ChangeLog | 5 +++++ gdb/configure | 26 ++++++++++++++++++++++++-- gdb/configure.ac | 20 ++++++++++++++++++-- 3 files changed, 47 insertions(+), 4 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 6939600..20da419 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2010-09-22 Joel Brobecker + + * configure.ac: Add support for --enable-gdbserver. + * configure: Regenerate. + 2010-09-22 Sami Wagiaalla PR C++/12028 diff --git a/gdb/configure b/gdb/configure index 2c7db68..bee391d 100755 --- a/gdb/configure +++ b/gdb/configure @@ -975,6 +975,7 @@ with_tk with_x enable_sim enable_multi_ice +enable_gdbserver ' ac_precious_vars='build_alias host_alias @@ -1635,6 +1636,8 @@ Optional Features: gcc is used --enable-sim link gdb with simulator --enable-multi-ice build the multi-ice-gdb-server + --enable-gdbserver automatically build gdbserver (yes/no/auto, default + is auto) Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] @@ -15816,8 +15819,20 @@ if test "x$enable_multi_ice" = xyes; then fi -# We only build gdbserver automatically in a native configuration. -if test "$gdb_native" = "yes"; then +# 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 @@ -15825,12 +15840,19 @@ $as_echo_n "checking whether gdbserver is supported on this host... " >&6; } $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 + # If nativefile (NAT_FILE) is not set in config/*/*.m[ht] files, we link # to an empty version. diff --git a/gdb/configure.ac b/gdb/configure.ac index 2f8090e..e462274 100644 --- a/gdb/configure.ac +++ b/gdb/configure.ac @@ -2085,17 +2085,33 @@ if test "x$enable_multi_ice" = xyes; then AC_CONFIG_SUBDIRS(multi-ice) fi -# We only build gdbserver automatically in a native configuration. -if test "$gdb_native" = "yes"; then +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 + # If nativefile (NAT_FILE) is not set in config/*/*.m[ht] files, we link # to an empty version. -- 2.7.4