This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFC 0/2] let gdbserver use libiberty
- From: Pedro Alves <palves at redhat dot com>
- To: Tom Tromey <tromey at redhat dot com>, Marcus Shawcroft <marcus dot shawcroft at gmail dot com>
- Cc: James Greenhalgh <james dot greenhalgh at arm dot com>, "gdb-patches at sourceware dot org" <gdb-patches at sourceware dot org>
- Date: Fri, 20 Jun 2014 11:51:56 +0100
- Subject: Re: [RFC 0/2] let gdbserver use libiberty
- Authentication-results: sourceware.org; auth=none
- References: <1390243792-31176-1-git-send-email-tromey at redhat dot com> <87oaxxrhj4 dot fsf at fleche dot redhat dot com> <20140616132557 dot GA4317 at arm dot com> <CAFqB+Pyp_=QavC0HYOpmZBvHuiCNu8Z_geCaa3-Rm5xC1Or1Lw at mail dot gmail dot com> <87vbrxc5vm dot fsf at fleche dot redhat dot com>
On 06/19/2014 03:48 PM, Tom Tromey wrote:
>>>>>> "Marcus" == Marcus Shawcroft <marcus.shawcroft@gmail.com> writes:
>
> Marcus> An alternative approach to that suggested by James is to have the
> Marcus> gdbserver configure scri[t probe for AR to ensure that something sane
> Marcus> is passed on to the sub-builds.
>
> Marcus> Patch attached.
>
> Marcus> OK ?
>
> Yes, this is ok. Thanks.
>
> Tom
>
I've pushed this.
----------------
>From e1d2394b50c7b174f48e38efb398034d75e67c99 Mon Sep 17 00:00:00 2001
From: Marcus Shawcroft <marcus.shawcroft@arm.com>
Date: Fri, 20 Jun 2014 11:48:15 +0100
Subject: [PATCH] Fix gdbserver cross build.
The recent libiberty patch caused issues when cross building
gdbserver. The Makefile ends invoking the build machine's "ar"
instead of the --host version:
ar ./libiberty.a \
./regex.o (...)
ar: illegal option -- .
Usage: ar [emulation options] [-]{dmpqrstx}[abcfilNoPsSuvV] [member-name] [count] archive-file file...
ar -M [<mri-script]
The libiberty configure script does probe for and finds an appropriate
AR. However, gdbserver's configure does not probe for AR and
overrides the AR used in the libiberty build by explicitly passing AR
to the sub-builds.
gdb/gdbserver/
2014-06-20 Marcus Shawcroft <marcus.shawcroft@arm.com>
* configure.ac: Invoke. AC_CHECK_TOOL(AR, ar).
* Makefile.in (AR, AR_FLAGS): Define.
* configure: Regenerate.
---
gdb/gdbserver/ChangeLog | 6 +++
gdb/gdbserver/Makefile.in | 2 +
gdb/gdbserver/configure | 93 ++++++++++++++++++++++++++++++++++++++++++++++
gdb/gdbserver/configure.ac | 1 +
4 files changed, 102 insertions(+)
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog
index dda84f9..54556f8 100644
--- a/gdb/gdbserver/ChangeLog
+++ b/gdb/gdbserver/ChangeLog
@@ -1,3 +1,9 @@
+2014-06-20 Marcus Shawcroft <marcus.shawcroft@arm.com>
+
+ * configure.ac: Invoke. AC_CHECK_TOOL(AR, ar).
+ * Makefile.in (AR, AR_FLAGS): Define.
+ * configure: Regenerate.
+
2014-06-19 Gary Benson <gbenson@redhat.com>
* Makefile.in (i386-dregs.o): New rule.
diff --git a/gdb/gdbserver/Makefile.in b/gdb/gdbserver/Makefile.in
index 76d8965..3674aed 100644
--- a/gdb/gdbserver/Makefile.in
+++ b/gdb/gdbserver/Makefile.in
@@ -50,6 +50,8 @@ INSTALL_DATA = @INSTALL_DATA@
RANLIB = @RANLIB@
CC = @CC@
+AR = @AR@
+AR_FLAGS = rc
# Dependency tracking information.
DEPMODE = @CCDEPMODE@
diff --git a/gdb/gdbserver/configure b/gdb/gdbserver/configure
index 90930bb..33db6e3 100755
--- a/gdb/gdbserver/configure
+++ b/gdb/gdbserver/configure
@@ -616,6 +616,7 @@ host_noncanonical
target_noncanonical
ALLOCA
RANLIB
+AR
INSTALL_DATA
INSTALL_SCRIPT
INSTALL_PROGRAM
@@ -3916,6 +3917,98 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
+set dummy ${ac_tool_prefix}ar; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_AR+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$AR"; then
+ ac_cv_prog_AR="$AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_AR="${ac_tool_prefix}ar"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+AR=$ac_cv_prog_AR
+if test -n "$AR"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
+$as_echo "$AR" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_AR"; then
+ ac_ct_AR=$AR
+ # Extract the first word of "ar", so it can be a program name with args.
+set dummy ar; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_AR+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_AR"; then
+ ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_AR="ar"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_AR=$ac_cv_prog_ac_ct_AR
+if test -n "$ac_ct_AR"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
+$as_echo "$ac_ct_AR" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_AR" = x; then
+ AR=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ AR=$ac_ct_AR
+ fi
+else
+ AR="$ac_cv_prog_AR"
+fi
+
+if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
diff --git a/gdb/gdbserver/configure.ac b/gdb/gdbserver/configure.ac
index ede38d0..7fa89d6 100644
--- a/gdb/gdbserver/configure.ac
+++ b/gdb/gdbserver/configure.ac
@@ -32,6 +32,7 @@ AC_SYS_LARGEFILE
AC_CANONICAL_SYSTEM
AC_PROG_INSTALL
+AC_CHECK_TOOL(AR, ar)
AC_PROG_RANLIB
AC_ARG_PROGRAM
--
1.9.3