diff options
author | Jose E. Marchesi <jose.marchesi@oracle.com> | 2015-02-18 13:52:53 +0100 |
---|---|---|
committer | Jose E. Marchesi <jose.marchesi@oracle.com> | 2015-02-18 13:52:53 +0100 |
commit | f6a88844c36e2c03806563c9703b92af6ba0b345 (patch) | |
tree | bfff03b882790a05676ff142b96f96c2fe77d565 | |
parent | e3ee8ed41b6a4365897d776cc181a1bd813010c6 (diff) | |
download | gdb-f6a88844c36e2c03806563c9703b92af6ba0b345.zip gdb-f6a88844c36e2c03806563c9703b92af6ba0b345.tar.gz gdb-f6a88844c36e2c03806563c9703b92af6ba0b345.tar.bz2 |
Factorize target program transformations in the GDB_AC_TRANSFORM macro.
This patch introduces a new M4 macro GDB_AC_TRANSFORM to avoid repeating
the common idiom which is the transformation of target program names,
i.e. from gdb to sparc64-linux-gnu-gdb. It also makes gdb/configure.ac
and gdb/testsuite/configure.ac to use the new macro.
gdb/ChangeLog:
2015-02-18 Jose E. Marchesi <jose.marchesi@oracle.com>
* configure: Regenerated.
* configure.ac: Use GDB_AC_TRANSFORM.
* Makefile.in (aclocal_m4_deps): Added transform.m4.
* acinclude.m4: sinclude transform.m4.
* transform.m4: New file.
(GDB_AC_TRANSFORM): New macro.
gdb/testsuite/ChangeLog:
2015-02-18 Jose E. Marchesi <jose.marchesi@oracle.com>
* configure: Regenerated.
* configure.ac: Use GDB_AC_TRANSFORM.
* aclocal.m4: sinclude ../transform.m4.
-rw-r--r-- | gdb/ChangeLog | 9 | ||||
-rw-r--r-- | gdb/Makefile.in | 1 | ||||
-rw-r--r-- | gdb/acinclude.m4 | 3 | ||||
-rwxr-xr-x | gdb/configure | 24 | ||||
-rw-r--r-- | gdb/configure.ac | 14 | ||||
-rw-r--r-- | gdb/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/testsuite/aclocal.m4 | 1 | ||||
-rwxr-xr-x | gdb/testsuite/configure | 45 | ||||
-rw-r--r-- | gdb/testsuite/configure.ac | 25 | ||||
-rw-r--r-- | gdb/transform.m4 | 23 |
10 files changed, 91 insertions, 60 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 6a0a316..a21f6df 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,12 @@ +2015-02-18 Jose E. Marchesi <jose.marchesi@oracle.com> + + * configure: Regenerated. + * configure.ac: Use GDB_AC_TRANSFORM. + * Makefile.in (aclocal_m4_deps): Added transform.m4. + * acinclude.m4: sinclude transform.m4. + * transform.m4: New file. + (GDB_AC_TRANSFORM): New macro. + 2015-02-17 Jose E. Marchesi <jose.marchesi@oracle.com> * NEWS: Announce the support for DTrace SDT probes. diff --git a/gdb/Makefile.in b/gdb/Makefile.in index c646ee5..16e2f1c 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -1528,6 +1528,7 @@ aclocal_m4_deps = \ configure.ac \ acx_configure_dir.m4 \ libmcheck.m4 \ + transform.m4 \ ../bfd/bfd.m4 \ ../config/acinclude.m4 \ ../config/plugins.m4 \ diff --git a/gdb/acinclude.m4 b/gdb/acinclude.m4 index 6f71486..1f0b574 100644 --- a/gdb/acinclude.m4 +++ b/gdb/acinclude.m4 @@ -9,6 +9,9 @@ sinclude(acx_configure_dir.m4) # This gets GDB_AC_LIBMCHECK. sinclude(libmcheck.m4) +# This gets GDB_AC_TRANSFORM. +sinclude(transform.m4) + dnl gdb/configure.in uses BFD_NEED_DECLARATION, so get its definition. sinclude(../bfd/bfd.m4) diff --git a/gdb/configure b/gdb/configure index 30a54d2..bb9697d 100755 --- a/gdb/configure +++ b/gdb/configure @@ -15141,17 +15141,21 @@ ac_config_links="$ac_config_links $ac_config_links_1" $as_echo "#define GDB_DEFAULT_HOST_CHARSET \"UTF-8\"" >>confdefs.h -# Undo the $ec_script escaping suitable for Makefile. -transform=`echo "$program_transform_name" | sed -e 's/\\$\\$/\\$/g'` -GDB_TRANSFORM_NAME=`echo gdb | sed -e "$transform"` -if test "x$GDB_TRANSFORM_NAME" = x; then - GDB_TRANSFORM_NAME=gdb -fi -GCORE_TRANSFORM_NAME=`echo gcore | sed -e "$transform"` -if test "x$GCORE_TRANSFORM_NAME" = x; then - GCORE_TRANSFORM_NAME=gcore -fi + gdb_ac_transform=`echo "$program_transform_name" | sed -e 's/\\$\\$/\\$/g'` + GDB_TRANSFORM_NAME=`echo gdb | sed -e "$gdb_ac_transform"` + if test "x$GDB_TRANSFORM_NAME" = x; then + GDB_TRANSFORM_NAME=gdb + fi + + + + gdb_ac_transform=`echo "$program_transform_name" | sed -e 's/\\$\\$/\\$/g'` + GCORE_TRANSFORM_NAME=`echo gcore | sed -e "$gdb_ac_transform"` + if test "x$GCORE_TRANSFORM_NAME" = x; then + GCORE_TRANSFORM_NAME=gcore + fi + ac_config_files="$ac_config_files gcore" diff --git a/gdb/configure.ac b/gdb/configure.ac index 39fcef2..90bf71c 100644 --- a/gdb/configure.ac +++ b/gdb/configure.ac @@ -2444,18 +2444,8 @@ dnl At the moment, we just assume it's UTF-8. AC_DEFINE(GDB_DEFAULT_HOST_CHARSET, "UTF-8", [Define to be a string naming the default host character set.]) -# Undo the $ec_script escaping suitable for Makefile. -transform=`echo "$program_transform_name" | sed -e 's/[\\$][\\$]/\\$/g'` -GDB_TRANSFORM_NAME=`echo gdb | sed -e "$transform"` -if test "x$GDB_TRANSFORM_NAME" = x; then - GDB_TRANSFORM_NAME=gdb -fi -AC_SUBST(GDB_TRANSFORM_NAME) -GCORE_TRANSFORM_NAME=`echo gcore | sed -e "$transform"` -if test "x$GCORE_TRANSFORM_NAME" = x; then - GCORE_TRANSFORM_NAME=gcore -fi -AC_SUBST(GCORE_TRANSFORM_NAME) +GDB_AC_TRANSFORM([gdb], [GDB_TRANSFORM_NAME]) +GDB_AC_TRANSFORM([gcore], [GCORE_TRANSFORM_NAME]) AC_CONFIG_FILES([gcore], [chmod +x gcore]) AC_OUTPUT(Makefile gdb-gdb.gdb doc/Makefile data-directory/Makefile, diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 1e36b45..2fae080 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2015-02-18 Jose E. Marchesi <jose.marchesi@oracle.com> + + * configure: Regenerated. + * configure.ac: Use GDB_AC_TRANSFORM. + * aclocal.m4: sinclude ../transform.m4. + 2015-02-17 Jose E. Marchesi <jose.marchesi@oracle.com> * lib/dtrace.exp: New file. diff --git a/gdb/testsuite/aclocal.m4 b/gdb/testsuite/aclocal.m4 index 2934db2..d40c3a9 100644 --- a/gdb/testsuite/aclocal.m4 +++ b/gdb/testsuite/aclocal.m4 @@ -1,5 +1,6 @@ sinclude(../../config/acx.m4) sinclude(../../config/override.m4) +sinclude(../transform.m4) # AM_CONDITIONAL -*- Autoconf -*- diff --git a/gdb/testsuite/configure b/gdb/testsuite/configure index b593cd3..859f348 100755 --- a/gdb/testsuite/configure +++ b/gdb/testsuite/configure @@ -3479,26 +3479,37 @@ test "$program_suffix" != NONE && ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` -transform=`echo "$program_transform_name" | sed -e 's/\\$\\$/\\$/g'` -STRIP_TRANSFORM_NAME=`echo strip | sed -e "$transform"` -if test "x$STRIP_TRANSFORM_NAME" = x; then - STRIP_TRANSFORM_NAME=strip -fi -READELF_TRANSFORM_NAME=`echo readelf | sed -e "$transform"` -if test "x$READELF_TRANSFORM_NAME" = x; then - READELF_TRANSFORM_NAME=readelf -fi + gdb_ac_transform=`echo "$program_transform_name" | sed -e 's/\\$\\$/\\$/g'` + STRIP_TRANSFORM_NAME=`echo strip | sed -e "$gdb_ac_transform"` + if test "x$STRIP_TRANSFORM_NAME" = x; then + STRIP_TRANSFORM_NAME=strip + fi -GAS_TRANSFORM_NAME=`echo as | sed -e "$transform"` -if test "x$GAS_TRANSFORM_NAME" = x; then - GAS_TRANSFORM_NAME=as -fi -NM_TRANSFORM_NAME=`echo nm | sed -e "$transform"` -if test "x$NM_TRANSFORM_NAME" = x; then - NM_TRANSFORM_NAME=nm -fi + + gdb_ac_transform=`echo "$program_transform_name" | sed -e 's/\\$\\$/\\$/g'` + READELF_TRANSFORM_NAME=`echo readelf | sed -e "$gdb_ac_transform"` + if test "x$READELF_TRANSFORM_NAME" = x; then + READELF_TRANSFORM_NAME=readelf + fi + + + + gdb_ac_transform=`echo "$program_transform_name" | sed -e 's/\\$\\$/\\$/g'` + GAS_TRANSFORM_NAME=`echo as | sed -e "$gdb_ac_transform"` + if test "x$GAS_TRANSFORM_NAME" = x; then + GAS_TRANSFORM_NAME=as + fi + + + + gdb_ac_transform=`echo "$program_transform_name" | sed -e 's/\\$\\$/\\$/g'` + NM_TRANSFORM_NAME=`echo nm | sed -e "$gdb_ac_transform"` + if test "x$NM_TRANSFORM_NAME" = x; then + NM_TRANSFORM_NAME=nm + fi + ac_config_files="$ac_config_files lib/pdtrace" diff --git a/gdb/testsuite/configure.ac b/gdb/testsuite/configure.ac index eed0191..9de9fcc 100644 --- a/gdb/testsuite/configure.ac +++ b/gdb/testsuite/configure.ac @@ -99,27 +99,10 @@ AC_SUBST(EXTRA_RULES) # Transform the name of some programs and generate the lib/pdtrace # test tool. AC_ARG_PROGRAM -transform=`echo "$program_transform_name" | sed -e 's/[\\$][\\$]/\\$/g'` -STRIP_TRANSFORM_NAME=`echo strip | sed -e "$transform"` -if test "x$STRIP_TRANSFORM_NAME" = x; then - STRIP_TRANSFORM_NAME=strip -fi -AC_SUBST(STRIP_TRANSFORM_NAME) -READELF_TRANSFORM_NAME=`echo readelf | sed -e "$transform"` -if test "x$READELF_TRANSFORM_NAME" = x; then - READELF_TRANSFORM_NAME=readelf -fi -AC_SUBST(READELF_TRANSFORM_NAME) -GAS_TRANSFORM_NAME=`echo as | sed -e "$transform"` -if test "x$GAS_TRANSFORM_NAME" = x; then - GAS_TRANSFORM_NAME=as -fi -AC_SUBST(GAS_TRANSFORM_NAME) -NM_TRANSFORM_NAME=`echo nm | sed -e "$transform"` -if test "x$NM_TRANSFORM_NAME" = x; then - NM_TRANSFORM_NAME=nm -fi -AC_SUBST(NM_TRANSFORM_NAME) +GDB_AC_TRANSFORM(strip, STRIP_TRANSFORM_NAME) +GDB_AC_TRANSFORM(readelf, READELF_TRANSFORM_NAME) +GDB_AC_TRANSFORM(as, GAS_TRANSFORM_NAME) +GDB_AC_TRANSFORM(nm, NM_TRANSFORM_NAME) AC_CONFIG_FILES([lib/pdtrace], [chmod +x lib/pdtrace]) AC_OUTPUT([Makefile \ diff --git a/gdb/transform.m4 b/gdb/transform.m4 new file mode 100644 index 0000000..d9079af --- /dev/null +++ b/gdb/transform.m4 @@ -0,0 +1,23 @@ +# Copyright (C) 2015 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation gives +# unlimited permission to copy and/or distribute it, with or without +# modifications, as long as this notice is preserved. + +# GDB_AC_TRANSFORM([PROGRAM], [VAR]) +# +# Transform a tool name to get the installed name of PROGRAM and store +# it in the output variable VAR. +# +# This macro uses the SED command stored in $program_transform_name, +# but it undoes the Makefile-like escaping of $s performed by +# AC_ARG_PROGRAM. + +AC_DEFUN([GDB_AC_TRANSFORM], [ + gdb_ac_transform=`echo "$program_transform_name" | sed -e 's/[\\$][\\$]/\\$/g'` + $2=`echo $1 | sed -e "$gdb_ac_transform"` + if test "x$$2" = x; then + $2=$1 + fi + AC_SUBST($2) +]) |