Revert patch that disables building libctf for non-ELF based targets.

Revert:
binutls	2019-05-29  Nick Clifton  <nickc@redhat.com>

	* configure.ac (LIBCTF): Export.  Set to empty for non-ELF based
	targets.
	(HAVE_LIBCTF): Define if libctf support is available.
	* Makefile.am (LIBCTF): Set value to @LIBCTF@.
	* objdump.c: Make CTF code conditional upon HAVE_LIBCTF being
	defined.
	* readelf.c: Likewise.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* config.in: Regenerate.

top	2019-05-29  Nick Clifton  <nickc@redhat.com>

	* configure.ac (noconfigdirs): Add libctf if the target does not use
	the ELF file format.
	* configure: Regenerate.
This commit is contained in:
Nick Clifton 2019-06-03 16:28:15 +01:00
parent 4f6d070adb
commit 79b377b3cf
12 changed files with 37 additions and 182 deletions

View File

@ -1,3 +1,12 @@
2019-06-03 Nick Clifton <nickc@redhat.com>
Revert:
2019-05-29 Nick Clifton <nickc@redhat.com>
* configure.ac (noconfigdirs): Add libctf if the target does not use
the ELF file format.
* configure: Regenerate.
2019-05-29 Nick Clifton <nickc@redhat.com>
* src-release.sh (do_proto_toplev): Add libctf to list of

View File

@ -1,3 +1,19 @@
2019-06-03 Nick Clifton <nickc@redhat.com>
Revert:
2019-05-29 Nick Clifton <nickc@redhat.com>
* configure.ac (LIBCTF): Export. Set to empty for non-ELF based
targets.
(HAVE_LIBCTF): Define if libctf support is available.
* Makefile.am (LIBCTF): Set value to @LIBCTF@.
* objdump.c: Make CTF code conditional upon HAVE_LIBCTF being
defined.
* readelf.c: Likewise.
* configure: Regenerate.
* Makefile.in: Regenerate.
* config.in: Regenerate.
2019-05-30 Nick Alcock <nick.alcock@oracle.com>
* objdump.c (make_ctfsect): Drop cts_type, cts_flags, and

View File

@ -161,7 +161,7 @@ BFDLIB = ../bfd/libbfd.la
OPCODES = ../opcodes/libopcodes.la
LIBCTF = @LIBCTF@
LIBCTF = ../libctf/libctf.a
LIBIBERTY = ../libiberty/libiberty.a
@ -229,7 +229,7 @@ windres_DEPENDENCIES = $(LIBINTL_DEP) $(LIBIBERTY) $(BFDLIB)
windmc_DEPENDENCIES = $(LIBINTL_DEP) $(LIBIBERTY) $(BFDLIB)
addr2line_DEPENDENCIES = $(LIBINTL_DEP) $(LIBIBERTY) $(BFDLIB)
readelf_DEPENDENCIES = $(LIBINTL_DEP) $(LIBIBERTY) $(LIBCTF)
elfedit_DEPENDENCIES = $(LIBINTL_DEP) $(LIBIBERTY)
elfedit_DEPENDENCIES = $(LIBINTL_DEP) $(LIBIBERTY)
dllwrap_DEPENDENCIES = $(LIBINTL_DEP) $(LIBIBERTY)
bfdtest1_DEPENDENCIES = $(LIBINTL_DEP) $(LIBIBERTY) $(BFDLIB)
bfdtest2_DEPENDENCIES = $(LIBINTL_DEP) $(LIBIBERTY) $(BFDLIB)

View File

@ -443,7 +443,6 @@ LDFLAGS = @LDFLAGS@
LEX = `if [ -f ../flex/flex ]; then echo ../flex/flex; else echo @LEX@; fi`
LEXLIB = @LEXLIB@
LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
LIBCTF = @LIBCTF@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBINTL_DEP = @LIBINTL_DEP@
@ -649,6 +648,7 @@ BULIBS = bucomm.c version.c filemode.c
ELFLIBS = elfcomm.c
BFDLIB = ../bfd/libbfd.la
OPCODES = ../opcodes/libopcodes.la
LIBCTF = ../libctf/libctf.a
LIBIBERTY = ../libiberty/libiberty.a
POTFILES = $(CFILES) $(DEBUG_SRCS) $(HFILES)
EXPECT = expect

View File

@ -109,9 +109,6 @@
/* Define if your <locale.h> file defines LC_MESSAGES. */
#undef HAVE_LC_MESSAGES
/* Is libctf available? */
#undef HAVE_LIBCTF
/* Define to 1 if you have the <limits.h> header file. */
#undef HAVE_LIMITS_H

64
binutils/configure vendored
View File

@ -636,7 +636,6 @@ LTLIBOBJS
LIBOBJS
EMULATION_VECTOR
EMULATION
LIBCTF
OBJDUMP_PRIVATE_OFILES
OBJDUMP_DEFS
BUILD_INSTALL_MISC
@ -11524,7 +11523,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
#line 11527 "configure"
#line 11526 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@ -11630,7 +11629,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
#line 11633 "configure"
#line 11632 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@ -15083,64 +15082,6 @@ do
fi
done
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libctf support" >&5
$as_echo_n "checking for libctf support... " >&6; }
case "${target}" in
*-*-pe | *-*-*vms* | *-*-darwin | *-*-*coff* | *-*-wince | *-*-mingw*)
if ${bu_cv_libctf_support+:} false; then :
$as_echo_n "(cached) " >&6
else
bu_cv_libctf_support=no
fi
;;
*-*-aout | *-*-osf* | *-*-go32 | *-*-macos* | *-*-rhapsody*)
if ${bu_cv_libctf_support+:} false; then :
$as_echo_n "(cached) " >&6
else
bu_cv_libctf_support=no
fi
;;
*-*-netbsdpe | *-*-cygwin* | *-*-pep | *-*-msdos | *-*-winnt)
if ${bu_cv_libctf_support+:} false; then :
$as_echo_n "(cached) " >&6
else
bu_cv_libctf_support=no
fi
;;
ns32k-*-* | pdp11-*-* | *-*-aix* | *-*-netbsdaout)
if ${bu_cv_libctf_support+:} false; then :
$as_echo_n "(cached) " >&6
else
bu_cv_libctf_support=no
fi
;;
*)
if ${bu_cv_libctf_support+:} false; then :
$as_echo_n "(cached) " >&6
else
bu_cv_libctf_support=yes
fi
;;
esac
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bu_cv_libctf_support" >&5
$as_echo "$bu_cv_libctf_support" >&6; }
if test $bu_cv_libctf_support = yes; then
$as_echo "#define HAVE_LIBCTF 1" >>confdefs.h
fi
LIBCTF=
if test $bu_cv_libctf_support = yes; then
LIBCTF=../libctf/libctf.a
fi
# Uniq objdump private vector, build objdump target ofiles.
od_files=
f=""
@ -15199,7 +15140,6 @@ OBJDUMP_DEFS="${OBJDUMP_DEFS} -DOBJDUMP_PRIVATE_VECTORS=\"${OBJDUMP_PRIVATE_VECT
cat >>confdefs.h <<_ACEOF
#define TARGET "${target}"
_ACEOF

View File

@ -393,35 +393,6 @@ changequote([,])dnl
fi
done
AC_MSG_CHECKING([for libctf support])
case "${target}" in
*-*-pe | *-*-*vms* | *-*-darwin | *-*-*coff* | *-*-wince | *-*-mingw*)
AC_CACHE_VAL(bu_cv_libctf_support, bu_cv_libctf_support=no)
;;
*-*-aout | *-*-osf* | *-*-go32 | *-*-macos* | *-*-rhapsody*)
AC_CACHE_VAL(bu_cv_libctf_support, bu_cv_libctf_support=no)
;;
*-*-netbsdpe | *-*-cygwin* | *-*-pep | *-*-msdos | *-*-winnt)
AC_CACHE_VAL(bu_cv_libctf_support, bu_cv_libctf_support=no)
;;
ns32k-*-* | pdp11-*-* | *-*-aix* | *-*-netbsdaout)
AC_CACHE_VAL(bu_cv_libctf_support, bu_cv_libctf_support=no)
;;
*)
AC_CACHE_VAL(bu_cv_libctf_support, bu_cv_libctf_support=yes)
;;
esac
AC_MSG_RESULT($bu_cv_libctf_support)
if test $bu_cv_libctf_support = yes; then
AC_DEFINE(HAVE_LIBCTF, 1, [Is libctf available?])
fi
LIBCTF=
if test $bu_cv_libctf_support = yes; then
LIBCTF=../libctf/libctf.a
fi
# Uniq objdump private vector, build objdump target ofiles.
od_files=
f=""
@ -478,7 +449,6 @@ AC_SUBST(BUILD_MISC)
AC_SUBST(BUILD_INSTALL_MISC)
AC_SUBST(OBJDUMP_DEFS)
AC_SUBST(OBJDUMP_PRIVATE_OFILES)
AC_SUBST(LIBCTF)
AC_DEFINE_UNQUOTED(TARGET, "${target}", [Configured target name.])

View File

@ -285,7 +285,6 @@ LDFLAGS = @LDFLAGS@
LEX = @LEX@
LEXLIB = @LEXLIB@
LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
LIBCTF = @LIBCTF@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBINTL_DEP = @LIBINTL_DEP@

View File

@ -56,9 +56,7 @@
#include "bucomm.h"
#include "elfcomm.h"
#include "dwarf.h"
#ifdef HAVE_LIBCTF
#include "ctf-api.h"
#endif
#include "getopt.h"
#include "safe-ctype.h"
#include "dis-asm.h"
@ -101,11 +99,9 @@ static bfd_boolean with_source_code; /* -S */
static int show_raw_insn; /* --show-raw-insn */
static int dump_dwarf_section_info; /* --dwarf */
static int dump_stab_section_info; /* --stabs */
#ifdef HAVE_LIBCTF
static int dump_ctf_section_info; /* --ctf */
static char *dump_ctf_section_name;
static char *dump_ctf_parent_name; /* --ctf-parent */
#endif
static int do_demangle; /* -C, --demangle */
static bfd_boolean disassemble; /* -d */
static bfd_boolean disassemble_all; /* -D */
@ -232,12 +228,8 @@ usage (FILE *stream, int status)
=frames-interp,=str,=loc,=Ranges,=pubtypes,\n\
=gdb_index,=trace_info,=trace_abbrev,=trace_aranges,\n\
=addr,=cu_index,=links,=follow-links]\n\
Display DWARF info in the file\n"));
#ifdef HAVE_LIBCTF
fprintf (stream, _("\
--ctf=SECTION Display CTF info from SECTION\n"));
#endif
fprintf (stream, _("\
Display DWARF info in the file\n\
--ctf=SECTION Display CTF info from SECTION\n\
-t, --syms Display the contents of the symbol table(s)\n\
-T, --dynamic-syms Display the contents of the dynamic symbol table\n\
-r, --reloc Display the relocation entries in the file\n\
@ -286,11 +278,8 @@ usage (FILE *stream, int status)
--dwarf-start=N Display DIEs starting with N, at the same depth\n\
or deeper\n\
--dwarf-check Make additional dwarf internal consistency checks.\
\n"));
#ifdef HAVE_LIBCTF
fprintf (stream, _("\
\n\
--ctf-parent=SECTION Use SECTION as the CTF parent\n\n"));
#endif
list_supported_targets (program_name, stream);
list_supported_architectures (program_name, stream);
@ -325,11 +314,9 @@ enum option_values
OPTION_DWARF_START,
OPTION_RECURSE_LIMIT,
OPTION_NO_RECURSE_LIMIT,
#ifdef HAVE_LIBCTF
OPTION_INLINES,
OPTION_CTF,
OPTION_CTF_PARENT,
#endif
OPTION_INLINES
OPTION_CTF_PARENT
};
static struct option long_options[]=
@ -372,10 +359,8 @@ static struct option long_options[]=
{"special-syms", no_argument, &dump_special_syms, 1},
{"include", required_argument, NULL, 'I'},
{"dwarf", optional_argument, NULL, OPTION_DWARF},
#ifdef HAVE_LIBCTF
{"ctf", required_argument, NULL, OPTION_CTF},
{"ctf-parent", required_argument, NULL, OPTION_CTF_PARENT},
#endif
{"stabs", no_argument, NULL, 'G'},
{"start-address", required_argument, NULL, OPTION_START_ADDRESS},
{"stop-address", required_argument, NULL, OPTION_STOP_ADDRESS},
@ -3214,7 +3199,6 @@ dump_bfd_header (bfd *abfd)
}
#ifdef HAVE_LIBCTF
/* Formatting callback function passed to ctf_dump. Returns either the pointer
it is passed, or a pointer to newly-allocated storage, in which case
dump_ctf() will free it when it no longer needs it. */
@ -3232,7 +3216,6 @@ dump_ctf_indent_lines (ctf_sect_names_t sect ATTRIBUTE_UNUSED,
}
/* Make a ctfsect suitable for ctf_bfdopen_ctfsect(). */
static ctf_sect_t
make_ctfsect (const char *name, bfd_byte *data,
bfd_size_type size)
@ -3345,8 +3328,8 @@ dump_ctf (bfd *abfd, const char *sect_name, const char *parent_name)
free (parentdata);
free (ctfdata);
}
#endif /* HAVE_LIBCTF */
static void
dump_bfd_private_header (bfd *abfd)
{
@ -4057,10 +4040,8 @@ dump_bfd (bfd *abfd, bfd_boolean is_mainfile)
dump_symbols (abfd, TRUE);
if (dump_dwarf_section_info)
dump_dwarf (abfd);
#ifdef HAVE_LIBCTF
if (dump_ctf_section_info)
dump_ctf (abfd, dump_ctf_section_name, dump_ctf_parent_name);
#endif
if (dump_stab_section_info)
dump_stabs (abfd);
if (dump_reloc_info && ! disassemble)
@ -4500,7 +4481,6 @@ main (int argc, char **argv)
case OPTION_DWARF_CHECK:
dwarf_check = TRUE;
break;
#ifdef HAVE_LIBCTF
case OPTION_CTF:
dump_ctf_section_info = TRUE;
dump_ctf_section_name = xstrdup (optarg);
@ -4509,7 +4489,6 @@ main (int argc, char **argv)
case OPTION_CTF_PARENT:
dump_ctf_parent_name = xstrdup (optarg);
break;
#endif
case 'G':
dump_stab_section_info = TRUE;
seenflag = TRUE;
@ -4569,10 +4548,9 @@ main (int argc, char **argv)
}
free_only_list ();
#ifdef HAVE_LIBCTF
free (dump_ctf_section_name);
free (dump_ctf_parent_name);
#endif
END_PROGRESS (program_name);
return exit_status;

View File

@ -60,9 +60,7 @@
#include "bucomm.h"
#include "elfcomm.h"
#include "dwarf.h"
#ifdef HAVE_LIBCTF
#include "ctf-api.h"
#endif
#include "elf/common.h"
#include "elf/external.h"
@ -186,9 +184,7 @@ typedef struct elf_section_list
#define DEBUG_DUMP (1 << 2) /* The -w command line switch. */
#define STRING_DUMP (1 << 3) /* The -p command line switch. */
#define RELOC_DUMP (1 << 4) /* The -R command line switch. */
#ifdef HAVE_LIBCTF
#define CTF_DUMP (1 << 5) /* The --ctf command line switch. */
#endif
typedef unsigned char dump_type;
@ -255,20 +251,16 @@ static bfd_boolean do_dump = FALSE;
static bfd_boolean do_version = FALSE;
static bfd_boolean do_histogram = FALSE;
static bfd_boolean do_debugging = FALSE;
#ifdef HAVE_LIBCTF
static bfd_boolean do_ctf = FALSE;
#endif
static bfd_boolean do_arch = FALSE;
static bfd_boolean do_notes = FALSE;
static bfd_boolean do_archive_index = FALSE;
static bfd_boolean is_32bit_elf = FALSE;
static bfd_boolean decompress_dumps = FALSE;
#ifdef HAVE_LIBCTF
static char *dump_ctf_parent_name;
static char *dump_ctf_symtab_name;
static char *dump_ctf_strtab_name;
#endif
struct group_list
{
@ -4409,12 +4401,10 @@ get_section_type_name (Filedata * filedata, unsigned int sh_type)
#define OPTION_DWARF_DEPTH 514
#define OPTION_DWARF_START 515
#define OPTION_DWARF_CHECK 516
#ifdef HAVE_LIBCTF
#define OPTION_CTF_DUMP 517
#define OPTION_CTF_PARENT 518
#define OPTION_CTF_SYMBOLS 519
#define OPTION_CTF_STRINGS 520
#endif
static struct option options[] =
{
@ -4453,13 +4443,11 @@ static struct option options[] =
{"dwarf-start", required_argument, 0, OPTION_DWARF_START},
{"dwarf-check", no_argument, 0, OPTION_DWARF_CHECK},
#ifdef HAVE_LIBCTF
{"ctf", required_argument, 0, OPTION_CTF_DUMP},
{"ctf-symbols", required_argument, 0, OPTION_CTF_SYMBOLS},
{"ctf-strings", required_argument, 0, OPTION_CTF_STRINGS},
{"ctf-parent", required_argument, 0, OPTION_CTF_PARENT},
#endif
{"version", no_argument, 0, 'v'},
{"wide", no_argument, 0, 'W'},
@ -4510,7 +4498,6 @@ usage (FILE * stream)
--dwarf-depth=N Do not display DIEs at depth N or greater\n\
--dwarf-start=N Display DIEs starting with N, at the same depth\n\
or deeper\n"));
#ifdef HAVE_LIBCTF
fprintf (stream, _("\
--ctf=<number|name> Display CTF info from section <number|name>\n\
--ctf-parent=<number|name>\n\
@ -4519,7 +4506,6 @@ usage (FILE * stream)
Use section <number|name> as the CTF external symtab\n\n\
--ctf-strings=<number|name>\n\
Use section <number|name> as the CTF external strtab\n\n"));
#endif
#ifdef SUPPORT_DISASSEMBLY
fprintf (stream, _("\
@ -4748,7 +4734,6 @@ parse_args (Filedata * filedata, int argc, char ** argv)
case OPTION_DWARF_CHECK:
dwarf_check = TRUE;
break;
#ifdef HAVE_LIBCTF
case OPTION_CTF_DUMP:
do_ctf = TRUE;
request_dump (filedata, CTF_DUMP);
@ -4762,7 +4747,6 @@ parse_args (Filedata * filedata, int argc, char ** argv)
case OPTION_CTF_PARENT:
dump_ctf_parent_name = strdup (optarg);
break;
#endif
case OPTION_DYN_SYMS:
do_dyn_syms = TRUE;
break;
@ -13824,7 +13808,6 @@ dump_section_as_bytes (Elf_Internal_Shdr * section,
return TRUE;
}
#ifdef HAVE_LIBCTF
static ctf_sect_t *
shdr_to_ctf_sect (ctf_sect_t *buf, Elf_Internal_Shdr *shdr, Filedata *filedata)
{
@ -13978,7 +13961,6 @@ dump_section_as_ctf (Elf_Internal_Shdr * section, Filedata * filedata)
free (strdata);
return ret;
}
#endif /* HAVE_LIBCTF */
static bfd_boolean
load_specific_debug_section (enum dwarf_section_display_enum debug,
@ -14318,13 +14300,11 @@ process_section_contents (Filedata * filedata)
res = FALSE;
}
#ifdef HAVE_LIBCTF
if (dump & CTF_DUMP)
{
if (! dump_section_as_ctf (section, filedata))
res = FALSE;
}
#endif
}
/* Check to see if the user requested a
@ -20204,11 +20184,9 @@ main (int argc, char ** argv)
if (cmdline.dump_sects != NULL)
free (cmdline.dump_sects);
#ifdef HAVE_LIBCTF
free (dump_ctf_symtab_name);
free (dump_ctf_strtab_name);
free (dump_ctf_parent_name);
#endif
return err ? EXIT_FAILURE : EXIT_SUCCESS;
}

16
configure vendored
View File

@ -3604,22 +3604,6 @@ case "${target}" in
;;
esac
# Targets that do not use the ELF file format cannot support libctf.
case "${target}" in
*-*-pe | *-*-*vms* | *-*-darwin | *-*-*coff* | *-*-wince | *-*-mingw*)
noconfigdirs="$noconfigdirs libctf"
;;
*-*-aout | *-*-osf* | *-*-go32 | *-*-macos* | *-*-rhapsody*)
noconfigdirs="$noconfigdirs libctf"
;;
*-*-netbsdpe | *-*-cygwin* | *-*-pep | *-*-msdos | *-*-winnt)
noconfigdirs="$noconfigdirs libctf"
;;
ns32k-*-* | pdp11-*-* | *-*-aix* | *-*-netbsdaout)
noconfigdirs="$noconfigdirs libctf"
;;
esac
case "${target}" in
*-*-chorusos)
;;

View File

@ -901,22 +901,6 @@ case "${target}" in
;;
esac
# Targets that do not use the ELF file format cannot support libctf.
case "${target}" in
*-*-pe | *-*-*vms* | *-*-darwin | *-*-*coff* | *-*-wince | *-*-mingw*)
noconfigdirs="$noconfigdirs libctf"
;;
*-*-aout | *-*-osf* | *-*-go32 | *-*-macos* | *-*-rhapsody*)
noconfigdirs="$noconfigdirs libctf"
;;
*-*-netbsdpe | *-*-cygwin* | *-*-pep | *-*-msdos | *-*-winnt)
noconfigdirs="$noconfigdirs libctf"
;;
ns32k-*-* | pdp11-*-* | *-*-aix* | *-*-netbsdaout)
noconfigdirs="$noconfigdirs libctf"
;;
esac
case "${target}" in
*-*-chorusos)
;;