2010-05-07 20:28:50 +08:00
|
|
|
# Makefile.in generated by automake 1.11.1 from Makefile.am.
|
2005-05-16 02:19:45 +08:00
|
|
|
# @configure_input@
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
2009-08-23 00:56:56 +08:00
|
|
|
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
|
|
|
|
# Inc.
|
1999-05-03 15:29:11 +08:00
|
|
|
# This Makefile.in 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.
|
|
|
|
|
|
|
|
# This program is distributed in the hope that it will be useful,
|
|
|
|
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
|
|
|
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
|
|
# PARTICULAR PURPOSE.
|
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
@SET_MAKE@
|
2003-10-30 17:56:26 +08:00
|
|
|
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
|
1999-05-03 15:29:11 +08:00
|
|
|
VPATH = @srcdir@
|
|
|
|
pkgdatadir = $(datadir)/@PACKAGE@
|
|
|
|
pkgincludedir = $(includedir)/@PACKAGE@
|
2009-08-23 00:56:56 +08:00
|
|
|
pkglibdir = $(libdir)/@PACKAGE@
|
|
|
|
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
2005-05-16 02:19:45 +08:00
|
|
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
|
|
|
install_sh_DATA = $(install_sh) -c -m 644
|
|
|
|
install_sh_PROGRAM = $(install_sh) -c
|
|
|
|
install_sh_SCRIPT = $(install_sh) -c
|
|
|
|
INSTALL_HEADER = $(INSTALL_DATA)
|
1999-05-03 15:29:11 +08:00
|
|
|
NORMAL_INSTALL = :
|
|
|
|
PRE_INSTALL = :
|
|
|
|
POST_INSTALL = :
|
|
|
|
NORMAL_UNINSTALL = :
|
|
|
|
PRE_UNINSTALL = :
|
|
|
|
POST_UNINSTALL = :
|
|
|
|
build_triplet = @build@
|
|
|
|
host_triplet = @host@
|
|
|
|
target_triplet = @target@
|
Cleanups in binutils makefiles.
ld/:
* Makefile.am (bin_PROGRAMS): Renamed from ...
(noinst_PROGRAMS): ... this.
(transform): Override, including the renaming of ld-new to ld.
(install-exec-local): Installation of ld in $(bindir) not needed
here any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(MAINTAINERCLEANFILES): Add ld.1.
* Makefile.in: Regenerate.
gold/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
(AM_CPPFLAGS): Renamed from ...
(INCLUDE): ... this.
* Makefile.in, testsuite/Makefile.in: Regenerate.
bfd/:
* Makefile.am (libbfd_la_LDFLAGS): Initialize early, to allow
appending.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES, bfdinclude_HEADERS): Set
only in this condition.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES, libbfd_la_LDFLAGS): New,
to build but not install libbfd.la in this condition.
(install-bfdlibLTLIBRARIES, uninstall-bfdlibLTLIBRARIES)
(install_libbfd, install_libbfd): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(bin2c$(EXEEXT_FOR_BUILD): Adjust rule.
(installcheck-local): Renamed from ...
(installcheck): ... this.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (YFLAGS): Remove, not needed any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
gprof/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (libopcodes_la_LDFLAGS): Initialize early.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES): Set only in this condition.
[INSTALL_LIBBFD] (bfdinclude_DATA): New.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES): New.
[!INSTALL_LIBBFD] (libopcodes_la_LDFLAGS): Ensure libopcodes.la
is built shared even if it is not to be installed.
(install-bfdlibLTLIBRARIES,uninstall-bfdlibLTLIBRARIES)
(install_libopcodes, uninstall_libopcodes): Remove.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
2009-08-23 03:02:57 +08:00
|
|
|
bin_PROGRAMS = ld-new$(EXEEXT)
|
2006-12-11 23:09:46 +08:00
|
|
|
|
|
|
|
# Automake 1.9 will only build info files in the objdir if they are
|
|
|
|
# mentioned in DISTCLEANFILES. It doesn't have to be unconditional,
|
|
|
|
# though, so we use a bogus condition.
|
|
|
|
@GENINSRC_NEVER_TRUE@am__append_1 = ld.info
|
2005-05-16 02:19:45 +08:00
|
|
|
subdir = .
|
2009-08-23 00:56:56 +08:00
|
|
|
DIST_COMMON = NEWS README ChangeLog $(srcdir)/Makefile.in \
|
|
|
|
$(srcdir)/Makefile.am $(top_srcdir)/configure \
|
|
|
|
$(am__configure_deps) $(srcdir)/config.in \
|
|
|
|
$(srcdir)/../mkinstalldirs $(top_srcdir)/po/Make-in ldgram.h \
|
2010-02-11 03:48:16 +08:00
|
|
|
ldgram.c deffilep.h deffilep.c ldlex.c $(srcdir)/../depcomp \
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
$(srcdir)/../ylwrap $(ld_TEXINFOS)
|
2005-05-16 02:19:45 +08:00
|
|
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
2007-06-14 23:31:01 +08:00
|
|
|
am__aclocal_m4_deps = $(top_srcdir)/../bfd/acinclude.m4 \
|
2009-12-11 21:42:17 +08:00
|
|
|
$(top_srcdir)/../config/zlib.m4 \
|
2009-03-17 13:01:26 +08:00
|
|
|
$(top_srcdir)/../bfd/warning.m4 $(top_srcdir)/../config/acx.m4 \
|
2007-06-14 23:31:01 +08:00
|
|
|
$(top_srcdir)/../config/depstand.m4 \
|
2006-05-31 23:14:46 +08:00
|
|
|
$(top_srcdir)/../config/gettext-sister.m4 \
|
2009-12-11 21:42:17 +08:00
|
|
|
$(top_srcdir)/../config/largefile.m4 \
|
2007-06-14 23:31:01 +08:00
|
|
|
$(top_srcdir)/../config/lead-dot.m4 \
|
2008-05-14 14:45:42 +08:00
|
|
|
$(top_srcdir)/../config/nls.m4 \
|
|
|
|
$(top_srcdir)/../config/override.m4 \
|
2009-12-11 21:42:17 +08:00
|
|
|
$(top_srcdir)/../config/plugins.m4 \
|
2008-05-14 14:45:42 +08:00
|
|
|
$(top_srcdir)/../config/po.m4 \
|
2006-05-31 23:14:46 +08:00
|
|
|
$(top_srcdir)/../config/progtest.m4 \
|
2007-06-14 23:31:01 +08:00
|
|
|
$(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \
|
|
|
|
$(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
|
2008-09-29 23:36:22 +08:00
|
|
|
$(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/configure.in
|
2005-05-16 02:19:45 +08:00
|
|
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
|
|
|
$(ACLOCAL_M4)
|
|
|
|
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
|
2009-08-23 00:56:56 +08:00
|
|
|
configure.lineno config.status.lineno
|
2005-05-16 02:19:45 +08:00
|
|
|
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
|
|
|
|
CONFIG_HEADER = config.h
|
|
|
|
CONFIG_CLEAN_FILES = po/Makefile.in
|
2009-08-23 00:56:56 +08:00
|
|
|
CONFIG_CLEAN_VPATH_FILES =
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
LTLIBRARIES = $(noinst_LTLIBRARIES)
|
|
|
|
libldtestplug_la_LIBADD =
|
|
|
|
@ENABLE_PLUGINS_TRUE@am_libldtestplug_la_OBJECTS = \
|
|
|
|
@ENABLE_PLUGINS_TRUE@ libldtestplug_la-testplug.lo
|
|
|
|
libldtestplug_la_OBJECTS = $(am_libldtestplug_la_OBJECTS)
|
|
|
|
libldtestplug_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
|
|
|
|
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(libldtestplug_la_CFLAGS) \
|
|
|
|
$(CFLAGS) $(libldtestplug_la_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
@ENABLE_PLUGINS_TRUE@am_libldtestplug_la_rpath =
|
Cleanups in binutils makefiles.
ld/:
* Makefile.am (bin_PROGRAMS): Renamed from ...
(noinst_PROGRAMS): ... this.
(transform): Override, including the renaming of ld-new to ld.
(install-exec-local): Installation of ld in $(bindir) not needed
here any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(MAINTAINERCLEANFILES): Add ld.1.
* Makefile.in: Regenerate.
gold/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
(AM_CPPFLAGS): Renamed from ...
(INCLUDE): ... this.
* Makefile.in, testsuite/Makefile.in: Regenerate.
bfd/:
* Makefile.am (libbfd_la_LDFLAGS): Initialize early, to allow
appending.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES, bfdinclude_HEADERS): Set
only in this condition.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES, libbfd_la_LDFLAGS): New,
to build but not install libbfd.la in this condition.
(install-bfdlibLTLIBRARIES, uninstall-bfdlibLTLIBRARIES)
(install_libbfd, install_libbfd): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(bin2c$(EXEEXT_FOR_BUILD): Adjust rule.
(installcheck-local): Renamed from ...
(installcheck): ... this.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (YFLAGS): Remove, not needed any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
gprof/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (libopcodes_la_LDFLAGS): Initialize early.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES): Set only in this condition.
[INSTALL_LIBBFD] (bfdinclude_DATA): New.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES): New.
[!INSTALL_LIBBFD] (libopcodes_la_LDFLAGS): Ensure libopcodes.la
is built shared even if it is not to be installed.
(install-bfdlibLTLIBRARIES,uninstall-bfdlibLTLIBRARIES)
(install_libopcodes, uninstall_libopcodes): Remove.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
2009-08-23 03:02:57 +08:00
|
|
|
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(infodir)" \
|
|
|
|
"$(DESTDIR)$(man1dir)"
|
|
|
|
PROGRAMS = $(bin_PROGRAMS)
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
@ENABLE_PLUGINS_TRUE@am__objects_1 = plugin.$(OBJEXT)
|
2010-02-11 03:48:16 +08:00
|
|
|
am_ld_new_OBJECTS = ldgram.$(OBJEXT) ldlex-wrapper.$(OBJEXT) \
|
|
|
|
lexsup.$(OBJEXT) ldlang.$(OBJEXT) mri.$(OBJEXT) \
|
|
|
|
ldctor.$(OBJEXT) ldmain.$(OBJEXT) ldwrite.$(OBJEXT) \
|
|
|
|
ldexp.$(OBJEXT) ldemul.$(OBJEXT) ldver.$(OBJEXT) \
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
ldmisc.$(OBJEXT) ldfile.$(OBJEXT) ldcref.$(OBJEXT) \
|
|
|
|
$(am__objects_1)
|
2005-05-16 02:19:45 +08:00
|
|
|
ld_new_OBJECTS = $(am_ld_new_OBJECTS)
|
|
|
|
am__DEPENDENCIES_1 =
|
2009-08-23 00:56:56 +08:00
|
|
|
DEFAULT_INCLUDES = -I.@am__isrc@
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
depcomp = $(SHELL) $(top_srcdir)/../depcomp
|
|
|
|
am__depfiles_maybe = depfiles
|
|
|
|
am__mv = mv -f
|
2005-05-16 02:19:45 +08:00
|
|
|
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
|
|
|
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
2009-08-23 00:56:56 +08:00
|
|
|
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
|
|
|
--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
|
|
|
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
2005-05-16 02:19:45 +08:00
|
|
|
CCLD = $(CC)
|
2009-08-23 00:56:56 +08:00
|
|
|
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
|
|
|
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
|
|
|
|
$(LDFLAGS) -o $@
|
|
|
|
@MAINTAINER_MODE_FALSE@am__skiplex = test -f $@ ||
|
2005-05-16 02:19:45 +08:00
|
|
|
LEXCOMPILE = $(LEX) $(LFLAGS) $(AM_LFLAGS)
|
2009-08-23 00:56:56 +08:00
|
|
|
LTLEXCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
|
|
|
--mode=compile $(LEX) $(LFLAGS) $(AM_LFLAGS)
|
2005-05-16 02:19:45 +08:00
|
|
|
YLWRAP = $(top_srcdir)/../ylwrap
|
2009-08-23 00:56:56 +08:00
|
|
|
@MAINTAINER_MODE_FALSE@am__skipyacc = test -f $@ ||
|
|
|
|
YACCCOMPILE = $(YACC) $(YFLAGS) $(AM_YFLAGS)
|
|
|
|
LTYACCCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
|
|
|
--mode=compile $(YACC) $(YFLAGS) $(AM_YFLAGS)
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
SOURCES = $(libldtestplug_la_SOURCES) $(ld_new_SOURCES) \
|
|
|
|
$(EXTRA_ld_new_SOURCES)
|
2006-12-11 23:09:46 +08:00
|
|
|
INFO_DEPS = ld.info
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
am__TEXINFO_TEX_DIR = $(srcdir)/$(top_srcdir)/../texinfo
|
2005-05-16 02:19:45 +08:00
|
|
|
DVIS = ld.dvi
|
|
|
|
PDFS = ld.pdf
|
|
|
|
PSS = ld.ps
|
|
|
|
HTMLS = ld.html
|
|
|
|
TEXINFOS = ld.texinfo
|
|
|
|
TEXI2PDF = $(TEXI2DVI) --pdf --batch
|
|
|
|
MAKEINFOHTML = $(MAKEINFO) --html
|
|
|
|
AM_MAKEINFOHTMLFLAGS = $(AM_MAKEINFOFLAGS)
|
|
|
|
DVIPS = dvips
|
|
|
|
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
|
|
|
|
html-recursive info-recursive install-data-recursive \
|
2009-08-23 00:56:56 +08:00
|
|
|
install-dvi-recursive install-exec-recursive \
|
|
|
|
install-html-recursive install-info-recursive \
|
|
|
|
install-pdf-recursive install-ps-recursive install-recursive \
|
|
|
|
installcheck-recursive installdirs-recursive pdf-recursive \
|
|
|
|
ps-recursive uninstall-recursive
|
|
|
|
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
|
|
|
am__vpath_adj = case $$p in \
|
|
|
|
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
|
|
|
*) f=$$p;; \
|
|
|
|
esac;
|
|
|
|
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
|
|
|
|
am__install_max = 40
|
|
|
|
am__nobase_strip_setup = \
|
|
|
|
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
|
|
|
|
am__nobase_strip = \
|
|
|
|
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
|
|
|
|
am__nobase_list = $(am__nobase_strip_setup); \
|
|
|
|
for p in $$list; do echo "$$p $$p"; done | \
|
|
|
|
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
|
|
|
|
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
|
|
|
|
if (++n[$$2] == $(am__install_max)) \
|
|
|
|
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
|
|
|
|
END { for (dir in files) print dir, files[dir] }'
|
|
|
|
am__base_list = \
|
|
|
|
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
|
|
|
|
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
|
2005-05-16 02:19:45 +08:00
|
|
|
man1dir = $(mandir)/man1
|
|
|
|
NROFF = nroff
|
|
|
|
MANS = $(man_MANS)
|
2009-08-23 00:56:56 +08:00
|
|
|
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
|
|
|
|
distclean-recursive maintainer-clean-recursive
|
|
|
|
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
|
|
|
|
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS
|
2005-05-16 02:19:45 +08:00
|
|
|
ETAGS = etags
|
|
|
|
CTAGS = ctags
|
|
|
|
DEJATOOL = $(PACKAGE)
|
|
|
|
RUNTESTDEFAULTFLAGS = --tool $$tool --srcdir $$srcdir
|
|
|
|
DIST_SUBDIRS = $(SUBDIRS)
|
2010-04-27 22:12:32 +08:00
|
|
|
transform = s/^ld-new$$/$(installed_linker)/;@program_transform_name@
|
2005-05-16 02:19:45 +08:00
|
|
|
ACLOCAL = @ACLOCAL@
|
|
|
|
AMTAR = @AMTAR@
|
2007-05-25 02:12:51 +08:00
|
|
|
AR = @AR@
|
2005-05-16 02:19:45 +08:00
|
|
|
AUTOCONF = @AUTOCONF@
|
|
|
|
AUTOHEADER = @AUTOHEADER@
|
|
|
|
AUTOMAKE = @AUTOMAKE@
|
|
|
|
AWK = @AWK@
|
1999-05-03 15:29:11 +08:00
|
|
|
CATALOGS = @CATALOGS@
|
|
|
|
CATOBJEXT = @CATOBJEXT@
|
|
|
|
CC = @CC@
|
2005-05-16 02:19:45 +08:00
|
|
|
CCDEPMODE = @CCDEPMODE@
|
|
|
|
CFLAGS = @CFLAGS@
|
2004-09-17 14:15:39 +08:00
|
|
|
CPP = @CPP@
|
2005-05-16 02:19:45 +08:00
|
|
|
CPPFLAGS = @CPPFLAGS@
|
2011-01-23 03:25:37 +08:00
|
|
|
CXX = @CXX@
|
|
|
|
CXXCPP = @CXXCPP@
|
|
|
|
CXXDEPMODE = @CXXDEPMODE@
|
|
|
|
CXXFLAGS = @CXXFLAGS@
|
2005-05-16 02:19:45 +08:00
|
|
|
CYGPATH_W = @CYGPATH_W@
|
1999-05-03 15:29:11 +08:00
|
|
|
DATADIRNAME = @DATADIRNAME@
|
2005-05-16 02:19:45 +08:00
|
|
|
DEFS = @DEFS@
|
|
|
|
DEPDIR = @DEPDIR@
|
2008-09-29 23:36:22 +08:00
|
|
|
DSYMUTIL = @DSYMUTIL@
|
2007-05-25 02:12:51 +08:00
|
|
|
DUMPBIN = @DUMPBIN@
|
2005-05-16 02:19:45 +08:00
|
|
|
ECHO_C = @ECHO_C@
|
|
|
|
ECHO_N = @ECHO_N@
|
|
|
|
ECHO_T = @ECHO_T@
|
|
|
|
EGREP = @EGREP@
|
|
|
|
EMUL = @EMUL@
|
1999-06-18 23:25:45 +08:00
|
|
|
EMULATION_LIBPATH = @EMULATION_LIBPATH@
|
2005-05-16 02:19:45 +08:00
|
|
|
EMULATION_OFILES = @EMULATION_OFILES@
|
|
|
|
EMUL_EXTRA_OFILES = @EMUL_EXTRA_OFILES@
|
2001-11-23 02:49:12 +08:00
|
|
|
EXEEXT = @EXEEXT@
|
2007-05-25 02:12:51 +08:00
|
|
|
FGREP = @FGREP@
|
2006-05-31 23:14:46 +08:00
|
|
|
GENCAT = @GENCAT@
|
1999-05-03 15:29:11 +08:00
|
|
|
GMSGFMT = @GMSGFMT@
|
2007-05-25 02:12:51 +08:00
|
|
|
GREP = @GREP@
|
1999-05-03 15:29:11 +08:00
|
|
|
HDEFINES = @HDEFINES@
|
2005-05-16 02:19:45 +08:00
|
|
|
|
|
|
|
#stuff for self hosting (can be overridden in config file).
|
|
|
|
HOSTING_CRT0 = @HOSTING_CRT0@
|
|
|
|
HOSTING_LIBS = @HOSTING_LIBS@
|
2006-05-31 23:14:46 +08:00
|
|
|
INCINTL = @INCINTL@
|
2009-08-23 00:56:56 +08:00
|
|
|
INSTALL = @INSTALL@
|
2005-05-16 02:19:45 +08:00
|
|
|
INSTALL_DATA = @INSTALL_DATA@
|
|
|
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
|
|
|
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
|
|
|
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
1999-05-03 15:29:11 +08:00
|
|
|
INSTOBJEXT = @INSTOBJEXT@
|
2007-05-25 02:12:51 +08:00
|
|
|
LD = @LD@
|
2005-05-16 02:19:45 +08:00
|
|
|
LDFLAGS = @LDFLAGS@
|
|
|
|
LEX = `if [ -f ../flex/flex ]; then echo ../flex/flex; else echo @LEX@; fi`
|
|
|
|
LEXLIB = @LEXLIB@
|
|
|
|
LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
|
2006-05-31 23:14:46 +08:00
|
|
|
LIBINTL = @LIBINTL@
|
|
|
|
LIBINTL_DEP = @LIBINTL_DEP@
|
2005-05-16 02:19:45 +08:00
|
|
|
LIBOBJS = @LIBOBJS@
|
|
|
|
LIBS = @LIBS@
|
1999-05-03 15:29:11 +08:00
|
|
|
LIBTOOL = @LIBTOOL@
|
2005-05-16 02:19:45 +08:00
|
|
|
|
|
|
|
# Search path to override the default search path for -lfoo libraries.
|
|
|
|
# If LIB_PATH is empty, the ones in the script (if any) are left alone.
|
|
|
|
# (The default is usually /lib:/usr/lib:/usr/local/lib, unless building
|
|
|
|
# a cross-linker, in which case the default is empty. See genscripts.sh.)
|
|
|
|
# Otherwise, they are replaced with the ones given in LIB_PATH,
|
|
|
|
# which may have the form: LIB_PATH=/lib:/usr/local/lib. This can be set
|
|
|
|
# when the linker is configured via the --with-lib-path configure switch.
|
|
|
|
LIB_PATH = @LIB_PATH@
|
2008-09-29 23:36:22 +08:00
|
|
|
LIPO = @LIPO@
|
1999-05-03 15:29:11 +08:00
|
|
|
LN_S = @LN_S@
|
2005-05-16 02:19:45 +08:00
|
|
|
LTLIBOBJS = @LTLIBOBJS@
|
1999-05-03 15:29:11 +08:00
|
|
|
MAINT = @MAINT@
|
2001-11-23 02:49:12 +08:00
|
|
|
MAKEINFO = @MAKEINFO@
|
2009-08-23 00:56:56 +08:00
|
|
|
MKDIR_P = @MKDIR_P@
|
1999-05-03 15:29:11 +08:00
|
|
|
MKINSTALLDIRS = @MKINSTALLDIRS@
|
|
|
|
MSGFMT = @MSGFMT@
|
2006-05-31 23:14:46 +08:00
|
|
|
MSGMERGE = @MSGMERGE@
|
1999-05-03 15:29:11 +08:00
|
|
|
NATIVE_LIB_DIRS = @NATIVE_LIB_DIRS@
|
2007-05-25 02:12:51 +08:00
|
|
|
NM = @NM@
|
2008-09-29 23:36:22 +08:00
|
|
|
NMEDIT = @NMEDIT@
|
2005-05-16 02:19:45 +08:00
|
|
|
NO_WERROR = @NO_WERROR@
|
2008-09-29 23:36:22 +08:00
|
|
|
OBJDUMP = @OBJDUMP@
|
2000-09-03 04:43:22 +08:00
|
|
|
OBJEXT = @OBJEXT@
|
2008-09-29 23:36:22 +08:00
|
|
|
OTOOL = @OTOOL@
|
|
|
|
OTOOL64 = @OTOOL64@
|
1999-05-03 15:29:11 +08:00
|
|
|
PACKAGE = @PACKAGE@
|
2005-05-16 02:19:45 +08:00
|
|
|
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
|
|
|
PACKAGE_NAME = @PACKAGE_NAME@
|
|
|
|
PACKAGE_STRING = @PACKAGE_STRING@
|
|
|
|
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
2009-08-23 00:56:56 +08:00
|
|
|
PACKAGE_URL = @PACKAGE_URL@
|
2005-05-16 02:19:45 +08:00
|
|
|
PACKAGE_VERSION = @PACKAGE_VERSION@
|
|
|
|
PATH_SEPARATOR = @PATH_SEPARATOR@
|
1999-05-03 15:29:11 +08:00
|
|
|
POSUB = @POSUB@
|
|
|
|
RANLIB = @RANLIB@
|
2007-05-25 02:12:51 +08:00
|
|
|
SED = @SED@
|
2005-05-16 02:19:45 +08:00
|
|
|
SET_MAKE = @SET_MAKE@
|
|
|
|
SHELL = @SHELL@
|
1999-08-07 06:46:03 +08:00
|
|
|
STRINGIFY = @STRINGIFY@
|
2000-09-03 04:43:22 +08:00
|
|
|
STRIP = @STRIP@
|
2003-01-07 00:14:01 +08:00
|
|
|
TARGET_SYSTEM_ROOT = @TARGET_SYSTEM_ROOT@
|
|
|
|
TARGET_SYSTEM_ROOT_DEFINE = @TARGET_SYSTEM_ROOT_DEFINE@
|
2005-05-16 02:19:45 +08:00
|
|
|
|
|
|
|
# This is the real libbfd.a created by libtool.
|
|
|
|
TESTBFDLIB = @TESTBFDLIB@
|
1999-05-03 15:29:11 +08:00
|
|
|
USE_NLS = @USE_NLS@
|
|
|
|
VERSION = @VERSION@
|
2005-05-16 02:19:45 +08:00
|
|
|
WARN_CFLAGS = @WARN_CFLAGS@
|
|
|
|
XGETTEXT = @XGETTEXT@
|
|
|
|
YACC = `if [ -f ../bison/bison ]; then echo ../bison/bison -y -L$(srcdir)/../bison/; else echo @YACC@; fi`
|
2009-08-23 00:56:56 +08:00
|
|
|
YFLAGS = -d
|
|
|
|
abs_builddir = @abs_builddir@
|
|
|
|
abs_srcdir = @abs_srcdir@
|
|
|
|
abs_top_builddir = @abs_top_builddir@
|
|
|
|
abs_top_srcdir = @abs_top_srcdir@
|
2005-05-16 02:19:45 +08:00
|
|
|
ac_ct_CC = @ac_ct_CC@
|
2011-01-23 03:25:37 +08:00
|
|
|
ac_ct_CXX = @ac_ct_CXX@
|
2007-05-25 02:12:51 +08:00
|
|
|
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
2005-05-16 02:19:45 +08:00
|
|
|
am__include = @am__include@
|
|
|
|
am__leading_dot = @am__leading_dot@
|
|
|
|
am__quote = @am__quote@
|
|
|
|
am__tar = @am__tar@
|
|
|
|
am__untar = @am__untar@
|
|
|
|
bindir = @bindir@
|
|
|
|
build = @build@
|
|
|
|
build_alias = @build_alias@
|
|
|
|
build_cpu = @build_cpu@
|
|
|
|
build_os = @build_os@
|
|
|
|
build_vendor = @build_vendor@
|
2009-08-23 00:56:56 +08:00
|
|
|
builddir = @builddir@
|
2005-05-16 02:19:45 +08:00
|
|
|
datadir = @datadir@
|
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.tpl: Add install-html target.
* Makefile.def: Add install-html target.
* Makefile.in: Regenerate.
* configure.in: Add --with-datarootdir, --with-docdir,
and --with-htmldir options.
* configure: Regenerate.
bfd/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* po/Make-in: Add install-html target.
* Makefile.am: Rename docdir to bfddocdir. Add datarootdir, docdir
htmldir. Add install-html and install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST for datarootdir, docdir and htmldir.
* configure: Regenerate.
bfd/doc/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.am: Add install-html and install-html-am targets.
Define datarootdir, docdir and htmldir.
* Makefile.in: Regenerate.
binutils/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* po/Make-in: Add install-html target.
* Makefile.am: Add install-html and install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST datarootdir, docdir and htmldir.
* configure: Regenerate.
* doc/Makefile.am: Add install-html and install-html-am targets.
* doc/Makefile.in: Regenerate.
etc/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.in: Add install-html target. Add htmldir,
docdir and datarootdir.
* configure.texi: Document install-html target.
* configure.in: AC_SUBST datarootdir, docdir, htmldir.
* configure: Regenerate.
gas/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* po/Make-in: Add install-html target.
* Makefile.am: Add install-html and install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST datarootdir, docdir, htmldir.
* configure: Regenerate.
* doc/Makefile.am: Add install-html and install-html-am targets.
* doc/Makefile.in: Regenerate.
gprof/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* po/Make-in: Add install-html target.
* Makefile.am: Add install-html, install-html-am and
install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST datarootdir, docdir, htmldir.
* configure: Regenerate.
intl/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* intl/Makefile.in: Add html info and dvi and install-html to .PHONY
Add install-html target.
ld/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.am: Add install-html, install-html-am, and
install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST datarootdir, docdir, htmldir.
* configure: Regenerate.
* po/Make-in: Add install-html target.
opcodes/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.am: Add install-html target.
* Makefile.in: Regenerate.
2006-04-07 05:49:35 +08:00
|
|
|
datarootdir = @datarootdir@
|
2009-03-17 13:01:26 +08:00
|
|
|
do_compare = @do_compare@
|
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.tpl: Add install-html target.
* Makefile.def: Add install-html target.
* Makefile.in: Regenerate.
* configure.in: Add --with-datarootdir, --with-docdir,
and --with-htmldir options.
* configure: Regenerate.
bfd/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* po/Make-in: Add install-html target.
* Makefile.am: Rename docdir to bfddocdir. Add datarootdir, docdir
htmldir. Add install-html and install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST for datarootdir, docdir and htmldir.
* configure: Regenerate.
bfd/doc/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.am: Add install-html and install-html-am targets.
Define datarootdir, docdir and htmldir.
* Makefile.in: Regenerate.
binutils/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* po/Make-in: Add install-html target.
* Makefile.am: Add install-html and install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST datarootdir, docdir and htmldir.
* configure: Regenerate.
* doc/Makefile.am: Add install-html and install-html-am targets.
* doc/Makefile.in: Regenerate.
etc/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.in: Add install-html target. Add htmldir,
docdir and datarootdir.
* configure.texi: Document install-html target.
* configure.in: AC_SUBST datarootdir, docdir, htmldir.
* configure: Regenerate.
gas/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* po/Make-in: Add install-html target.
* Makefile.am: Add install-html and install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST datarootdir, docdir, htmldir.
* configure: Regenerate.
* doc/Makefile.am: Add install-html and install-html-am targets.
* doc/Makefile.in: Regenerate.
gprof/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* po/Make-in: Add install-html target.
* Makefile.am: Add install-html, install-html-am and
install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST datarootdir, docdir, htmldir.
* configure: Regenerate.
intl/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* intl/Makefile.in: Add html info and dvi and install-html to .PHONY
Add install-html target.
ld/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.am: Add install-html, install-html-am, and
install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST datarootdir, docdir, htmldir.
* configure: Regenerate.
* po/Make-in: Add install-html target.
opcodes/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.am: Add install-html target.
* Makefile.in: Regenerate.
2006-04-07 05:49:35 +08:00
|
|
|
docdir = @docdir@
|
2009-08-23 00:56:56 +08:00
|
|
|
dvidir = @dvidir@
|
2010-12-15 22:56:40 +08:00
|
|
|
enable_initfini_array = @enable_initfini_array@
|
2005-05-16 02:19:45 +08:00
|
|
|
exec_prefix = @exec_prefix@
|
|
|
|
host = @host@
|
|
|
|
host_alias = @host_alias@
|
|
|
|
host_cpu = @host_cpu@
|
|
|
|
host_os = @host_os@
|
|
|
|
host_vendor = @host_vendor@
|
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.tpl: Add install-html target.
* Makefile.def: Add install-html target.
* Makefile.in: Regenerate.
* configure.in: Add --with-datarootdir, --with-docdir,
and --with-htmldir options.
* configure: Regenerate.
bfd/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* po/Make-in: Add install-html target.
* Makefile.am: Rename docdir to bfddocdir. Add datarootdir, docdir
htmldir. Add install-html and install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST for datarootdir, docdir and htmldir.
* configure: Regenerate.
bfd/doc/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.am: Add install-html and install-html-am targets.
Define datarootdir, docdir and htmldir.
* Makefile.in: Regenerate.
binutils/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* po/Make-in: Add install-html target.
* Makefile.am: Add install-html and install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST datarootdir, docdir and htmldir.
* configure: Regenerate.
* doc/Makefile.am: Add install-html and install-html-am targets.
* doc/Makefile.in: Regenerate.
etc/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.in: Add install-html target. Add htmldir,
docdir and datarootdir.
* configure.texi: Document install-html target.
* configure.in: AC_SUBST datarootdir, docdir, htmldir.
* configure: Regenerate.
gas/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* po/Make-in: Add install-html target.
* Makefile.am: Add install-html and install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST datarootdir, docdir, htmldir.
* configure: Regenerate.
* doc/Makefile.am: Add install-html and install-html-am targets.
* doc/Makefile.in: Regenerate.
gprof/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* po/Make-in: Add install-html target.
* Makefile.am: Add install-html, install-html-am and
install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST datarootdir, docdir, htmldir.
* configure: Regenerate.
intl/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* intl/Makefile.in: Add html info and dvi and install-html to .PHONY
Add install-html target.
ld/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.am: Add install-html, install-html-am, and
install-html-recursive targets.
* Makefile.in: Regenerate.
* configure.in: AC_SUBST datarootdir, docdir, htmldir.
* configure: Regenerate.
* po/Make-in: Add install-html target.
opcodes/
2006-04-06 Carlos O'Donell <carlos@codesourcery.com>
* Makefile.am: Add install-html target.
* Makefile.in: Regenerate.
2006-04-07 05:49:35 +08:00
|
|
|
htmldir = @htmldir@
|
2005-05-16 02:19:45 +08:00
|
|
|
includedir = @includedir@
|
|
|
|
infodir = @infodir@
|
2010-04-27 22:12:32 +08:00
|
|
|
install_as_default = @install_as_default@
|
2005-05-16 02:19:45 +08:00
|
|
|
install_sh = @install_sh@
|
2010-04-27 22:12:32 +08:00
|
|
|
installed_linker = @installed_linker@
|
2005-05-16 02:19:45 +08:00
|
|
|
libdir = @libdir@
|
|
|
|
libexecdir = @libexecdir@
|
2009-08-23 00:56:56 +08:00
|
|
|
localedir = @localedir@
|
2005-05-16 02:19:45 +08:00
|
|
|
localstatedir = @localstatedir@
|
|
|
|
mandir = @mandir@
|
|
|
|
mkdir_p = @mkdir_p@
|
|
|
|
oldincludedir = @oldincludedir@
|
2009-02-03 23:54:05 +08:00
|
|
|
pdfdir = @pdfdir@
|
2005-05-16 02:19:45 +08:00
|
|
|
prefix = @prefix@
|
|
|
|
program_transform_name = @program_transform_name@
|
2009-08-23 00:56:56 +08:00
|
|
|
psdir = @psdir@
|
2005-05-16 02:19:45 +08:00
|
|
|
sbindir = @sbindir@
|
|
|
|
sharedstatedir = @sharedstatedir@
|
2009-08-23 00:56:56 +08:00
|
|
|
srcdir = @srcdir@
|
2005-05-16 02:19:45 +08:00
|
|
|
sysconfdir = @sysconfdir@
|
|
|
|
target = @target@
|
|
|
|
target_alias = @target_alias@
|
|
|
|
target_cpu = @target_cpu@
|
|
|
|
target_os = @target_os@
|
|
|
|
target_vendor = @target_vendor@
|
2009-08-23 00:56:56 +08:00
|
|
|
top_build_prefix = @top_build_prefix@
|
|
|
|
top_builddir = @top_builddir@
|
|
|
|
top_srcdir = @top_srcdir@
|
2003-01-07 00:14:01 +08:00
|
|
|
use_sysroot = @use_sysroot@
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
AUTOMAKE_OPTIONS = dejagnu no-texinfo.tex no-dist foreign
|
2007-06-14 23:31:01 +08:00
|
|
|
ACLOCAL_AMFLAGS = -I .. -I ../config -I ../bfd
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
TEXINFO_TEX = $(top_srcdir)/../texinfo/texinfo.tex
|
1999-05-03 15:29:11 +08:00
|
|
|
SUBDIRS = po
|
|
|
|
tooldir = $(exec_prefix)/$(target_alias)
|
2009-08-24 13:55:55 +08:00
|
|
|
|
|
|
|
# Automake 1.10+ disables lex and yacc output file regeneration if
|
|
|
|
# maintainer mode is disabled. Avoid this.
|
|
|
|
am__skiplex =
|
|
|
|
am__skipyacc =
|
2000-04-09 20:17:43 +08:00
|
|
|
AM_CFLAGS = $(WARN_CFLAGS)
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
@ENABLE_PLUGINS_FALSE@PLUGIN_C =
|
|
|
|
|
|
|
|
# Conditionally enable the plugin interface.
|
|
|
|
@ENABLE_PLUGINS_TRUE@PLUGIN_C = plugin.c
|
|
|
|
@ENABLE_PLUGINS_FALSE@PLUGIN_H =
|
|
|
|
@ENABLE_PLUGINS_TRUE@PLUGIN_H = plugin.h
|
|
|
|
@ENABLE_PLUGINS_FALSE@PLUGIN_OBJECT =
|
|
|
|
@ENABLE_PLUGINS_TRUE@PLUGIN_OBJECT = plugin.@OBJEXT@
|
|
|
|
@ENABLE_PLUGINS_FALSE@PLUGIN_CFLAGS =
|
|
|
|
@ENABLE_PLUGINS_TRUE@PLUGIN_CFLAGS = -DENABLE_PLUGINS
|
2000-04-09 20:17:43 +08:00
|
|
|
|
1999-05-03 15:29:11 +08:00
|
|
|
# We put the scripts in the directory $(scriptdir)/ldscripts.
|
|
|
|
# We can't put the scripts in $(datadir) because the SEARCH_DIR
|
|
|
|
# directives need to be different for native and cross linkers.
|
|
|
|
scriptdir = $(tooldir)/lib
|
|
|
|
BASEDIR = $(srcdir)/..
|
|
|
|
BFDDIR = $(BASEDIR)/bfd
|
|
|
|
INCDIR = $(BASEDIR)/include
|
|
|
|
|
|
|
|
# What version of the manual to build
|
|
|
|
DOCVER = gen
|
|
|
|
|
2001-03-26 04:32:31 +08:00
|
|
|
# Options to extract the man page from ld.texinfo
|
|
|
|
MANCONF = -Dman
|
2006-05-02 22:20:46 +08:00
|
|
|
TEXI2POD = perl $(BASEDIR)/etc/texi2pod.pl $(AM_MAKEINFOFLAGS)
|
2005-01-21 03:37:49 +08:00
|
|
|
POD2MAN = pod2man --center="GNU Development Tools" \
|
|
|
|
--release="binutils-$(VERSION)" --section=1
|
2001-03-26 04:32:31 +08:00
|
|
|
|
1999-05-03 15:29:11 +08:00
|
|
|
HOSTING_EMU = -m $(EMUL)
|
|
|
|
|
|
|
|
# Setup the testing framework, if you have one
|
2005-06-30 04:30:00 +08:00
|
|
|
EXPECT = expect
|
|
|
|
RUNTEST = runtest
|
1999-05-03 15:29:11 +08:00
|
|
|
RUNTESTFLAGS =
|
2005-01-21 03:37:49 +08:00
|
|
|
CC_FOR_TARGET = ` \
|
|
|
|
if [ -f $$r/../gcc/xgcc ] ; then \
|
|
|
|
if [ -f $$r/../newlib/Makefile ] ; then \
|
|
|
|
echo $$r/../gcc/xgcc -B$$r/../gcc/ -idirafter $$r/../newlib/targ-include -idirafter $${srcroot}/../newlib/libc/include -nostdinc; \
|
|
|
|
else \
|
|
|
|
echo $$r/../gcc/xgcc -B$$r/../gcc/; \
|
|
|
|
fi; \
|
|
|
|
else \
|
|
|
|
if [ "@host@" = "@target@" ] ; then \
|
|
|
|
echo $(CC); \
|
|
|
|
else \
|
|
|
|
echo gcc | sed '$(transform)'; \
|
|
|
|
fi; \
|
|
|
|
fi`
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2005-01-21 03:37:49 +08:00
|
|
|
CXX_FOR_TARGET = ` \
|
2006-09-08 01:16:34 +08:00
|
|
|
if [ -f $$r/../gcc/g++ ] ; then \
|
2005-01-21 03:37:49 +08:00
|
|
|
if [ -f $$r/../newlib/Makefile ] ; then \
|
2006-09-08 01:16:34 +08:00
|
|
|
echo $$r/../gcc/g++ -B$$r/../gcc/ -idirafter $$r/../newlib/targ-include -idirafter $${srcroot}/../newlib/libc/include -nostdinc; \
|
2005-01-21 03:37:49 +08:00
|
|
|
else \
|
2006-09-08 01:16:34 +08:00
|
|
|
echo $$r/../gcc/g++ -B$$r/../gcc/; \
|
2005-01-21 03:37:49 +08:00
|
|
|
fi; \
|
|
|
|
else \
|
|
|
|
if [ "@host@" = "@target@" ] ; then \
|
|
|
|
echo $(CXX); \
|
|
|
|
else \
|
2006-09-08 01:16:34 +08:00
|
|
|
echo g++ | sed '$(transform)'; \
|
2005-01-21 03:37:49 +08:00
|
|
|
fi; \
|
|
|
|
fi`
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
info_TEXINFOS = ld.texinfo
|
2007-03-15 22:17:20 +08:00
|
|
|
ld_TEXINFOS = configdoc.texi
|
1999-05-03 15:29:11 +08:00
|
|
|
noinst_TEXINFOS = ldint.texinfo
|
|
|
|
man_MANS = ld.1
|
2007-03-15 22:17:20 +08:00
|
|
|
AM_MAKEINFOFLAGS = -I $(srcdir) -I $(BFDDIR)/doc -I ../bfd/doc \
|
|
|
|
-I $(top_srcdir)/../libiberty
|
|
|
|
|
|
|
|
TEXI2DVI = texi2dvi -I $(srcdir) -I $(BFDDIR)/doc -I ../bfd/doc \
|
|
|
|
-I $(top_srcdir)/../libiberty
|
|
|
|
|
Cleanups in binutils makefiles.
ld/:
* Makefile.am (bin_PROGRAMS): Renamed from ...
(noinst_PROGRAMS): ... this.
(transform): Override, including the renaming of ld-new to ld.
(install-exec-local): Installation of ld in $(bindir) not needed
here any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(MAINTAINERCLEANFILES): Add ld.1.
* Makefile.in: Regenerate.
gold/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
(AM_CPPFLAGS): Renamed from ...
(INCLUDE): ... this.
* Makefile.in, testsuite/Makefile.in: Regenerate.
bfd/:
* Makefile.am (libbfd_la_LDFLAGS): Initialize early, to allow
appending.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES, bfdinclude_HEADERS): Set
only in this condition.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES, libbfd_la_LDFLAGS): New,
to build but not install libbfd.la in this condition.
(install-bfdlibLTLIBRARIES, uninstall-bfdlibLTLIBRARIES)
(install_libbfd, install_libbfd): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(bin2c$(EXEEXT_FOR_BUILD): Adjust rule.
(installcheck-local): Renamed from ...
(installcheck): ... this.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (YFLAGS): Remove, not needed any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
gprof/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (libopcodes_la_LDFLAGS): Initialize early.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES): Set only in this condition.
[INSTALL_LIBBFD] (bfdinclude_DATA): New.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES): New.
[!INSTALL_LIBBFD] (libopcodes_la_LDFLAGS): Ensure libopcodes.la
is built shared even if it is not to be installed.
(install-bfdlibLTLIBRARIES,uninstall-bfdlibLTLIBRARIES)
(install_libopcodes, uninstall_libopcodes): Remove.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
2009-08-23 03:02:57 +08:00
|
|
|
AM_CPPFLAGS = -I. -I$(srcdir) -I../bfd -I$(BFDDIR) -I$(INCDIR) \
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
@INCINTL@ $(HDEFINES) $(CFLAGS) $(PLUGIN_CFLAGS) \
|
2007-02-17 21:33:57 +08:00
|
|
|
-DLOCALEDIR="\"$(datadir)/locale\""
|
|
|
|
|
1999-05-03 15:29:11 +08:00
|
|
|
BFDLIB = ../bfd/libbfd.la
|
|
|
|
LIBIBERTY = ../libiberty/libiberty.a
|
2010-10-06 12:58:34 +08:00
|
|
|
ALL_EMULATION_SOURCES = \
|
2011-01-14 10:03:42 +08:00
|
|
|
eaix5ppc.c \
|
|
|
|
eaix5rs6.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eaixppc.c \
|
|
|
|
eaixrs6.c \
|
|
|
|
ealpha.c \
|
|
|
|
ealphavms.c \
|
|
|
|
earcelf.c \
|
|
|
|
earm_epoc_pe.c \
|
|
|
|
earm_wince_pe.c \
|
|
|
|
earmaoutb.c \
|
|
|
|
earmaoutl.c \
|
|
|
|
earmcoff.c \
|
|
|
|
earmelf.c \
|
|
|
|
earmelf_fbsd.c \
|
|
|
|
earmelf_linux.c \
|
|
|
|
earmelf_linux_eabi.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
earmelf_nbsd.c \
|
|
|
|
earmelf_vxworks.c \
|
|
|
|
earmelfb.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
earmelfb_linux.c \
|
|
|
|
earmelfb_linux_eabi.c \
|
|
|
|
earmelfb_nbsd.c \
|
|
|
|
earmnbsd.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
earmnto.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
earmpe.c \
|
|
|
|
earmsymbian.c \
|
|
|
|
eavr1.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eavr2.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eavr25.c \
|
|
|
|
eavr3.c \
|
|
|
|
eavr31.c \
|
|
|
|
eavr35.c \
|
|
|
|
eavr4.c \
|
|
|
|
eavr5.c \
|
|
|
|
eavr51.c \
|
|
|
|
eavr6.c \
|
2011-03-26 02:04:48 +08:00
|
|
|
eavrxmega1.o \
|
|
|
|
eavrxmega2.o \
|
|
|
|
eavrxmega3.o \
|
|
|
|
eavrxmega4.o \
|
|
|
|
eavrxmega5.o \
|
|
|
|
eavrxmega6.o \
|
|
|
|
eavrxmega7.o \
|
2010-10-06 12:58:34 +08:00
|
|
|
ecoff_i860.c \
|
|
|
|
ecoff_sparc.c \
|
|
|
|
ecrisaout.c \
|
|
|
|
ecriself.c \
|
|
|
|
ecrislinux.c \
|
|
|
|
ed10velf.c \
|
|
|
|
ed30v_e.c \
|
|
|
|
ed30v_o.c \
|
|
|
|
ed30velf.c \
|
|
|
|
edelta68.c \
|
|
|
|
eelf32_dlx.c \
|
|
|
|
eelf32_i860.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32_i960.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32_sparc.c \
|
|
|
|
eelf32_sparc_sol2.c \
|
|
|
|
eelf32_sparc_vxworks.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32_spu.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32_tic6x_be.c \
|
|
|
|
eelf32_tic6x_le.c \
|
ld/
(eelf32_tic6x_linux_be.c, eelf32_tic6x_linux_le.c,
eelf32_tic6x_elf_be.c, eelf32_tic6x_elf_le.c): New rules.
* Makefile.am (ALL_EMULATIONS): Add these files.
(eelf32_tic6x_be.c, eelf32_tic6x_le.c): Depend on tic6xdsbt.em.
* Makefile.in: Regenerated.
* emultempl/tic6xdsbt.em (is_tic6x_target): Allow more tic6x target
vectors.
* emulparams/elf32_tic6x_elf_be.sh: New file.
* emulparams/elf32_tic6x_elf_le.sh: New file.
* emulparams/elf32_tic6x_linux_be.sh: New file.
* emulparams/elf32_tic6x_linux_le.sh: New file.
* configure.tgt (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
ld/testsuite/
* ld-tic6x/dsbt.ld (OUTPUT_FORMAT): Add.
* ld-tic6x/tic6x.exp: Add OSABI tests.
bfd/
* config.bfd (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
* elf32-tic6x.c (elf32_tic6x_set_osabi): New static function.
(elf32_tic6x_check_relocs): Create dynamic sections if -shared.
(elf_backend_relocs_compatible, elf_backend_post_process_headers):
Define.
(elf32_bed, TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, TARGET_BIG_SYM,
TARGET_BIG_NAME, ELF_OSABI): Redefine twice, and include
"elf32-target.h" two more times.
* configure.in: Handle bfd_elf32_tic6x_linux_be_vec,
bfd_elf32_tic6x_linux_le_vec, bfd_elf32_tic6x_elf_be_vec and
bfd_elf32_tic6x_elf_le_vec.
* configure: Regenerate.
2011-05-14 02:15:33 +08:00
|
|
|
eelf32_tic6x_linux_be.c \
|
|
|
|
eelf32_tic6x_linux_le.c \
|
|
|
|
eelf32_tic6x_elf_be.c \
|
|
|
|
eelf32_tic6x_elf_le.c \
|
2011-06-03 18:36:39 +08:00
|
|
|
eelf32am33lin.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32b4300.c \
|
|
|
|
eelf32bfin.c \
|
|
|
|
eelf32bfinfd.c \
|
|
|
|
eelf32bmip.c \
|
|
|
|
eelf32bmipn32.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32bsmip.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32btsmip.c \
|
bfd/
2010-12-23 Robert Millan <rmh@gnu.org>
* config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.host: Likewise.
* configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
* configure: Regenerate.
* elf32-mips.c: New target for FreeBSD support
(same as traditional MIPS but overrides ELF_OSABI
with ELFOSABI_FREEBSD).
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.
* targets.c (_bfd_target_vector): Add
`bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
ld/
2010-12-14 Robert Millan <rmh@gnu.org>
* configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu.
* emulparams/elf32btsmip_fbsd.sh: New file.
* emulparams/elf32btsmipn32_fbsd.sh: Likewise.
* emulparams/elf32ltsmip_fbsd.sh: Likewise.
* emulparams/elf32ltsmipn32_fbsd.sh: Likewise.
* emulparams/elf64btsmip_fbsd.sh: Likewise.
* emulparams/elf64ltsmip_fbsd.sh: Likewise.
* Makefile.am: Add build rules for `eelf32btsmip_fbsd.c',
`eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c',
`eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and
`eelf64ltsmip_fbsd.c'.
* Makefile.in: Regenerate.
gas/
2010-12-19 Robert Millan <rmh@gnu.org>
Richard Sandiford <rdsandiford@googlemail.com>
* config/tc-mips.c (ELF_TARGET): New macro. Generates target
names accordingly to whether TE_FreeBSD and whether TE_TMIPS
are defined.
(mips_target_format): Refactor code using ELF_TARGET().
(support_64bit_objects): Likewise.
* configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.tgt: Likewise.
* configure: Regenerate.
binutils/testsuite/
* binutils-all/readelf.exp: Handle MIPS FreeBSD targets.
gas/testsuite/
* gas/mips/e32el-rel2.d: Accept any file format.
* gas/mips/elf-rel.d: Likewise.
* gas/mips/elf-rel2.d: Likewise.
* gas/mips/elf-rel3.d: Likewise.
* gas/mips/elfel-rel.d: Likewise.
* gas/mips/elfel-rel2.d: Likewise.
* gas/mips/elfel-rel3.d: Likewise.
* gas/mips/ldstla-32-mips3-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: Likewise.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/noat-1.d: Likewise.
* gas/mips/set-arch.d: Likewise.
* gas/mips/tls-o32.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets.
* ld-mips-elf/mips-elf.exp: Likewise.
* ld-mips-elf/mips16-call-global.d: Accept any file format.
* ld-mips-elf/mips16-intermix.d: Likewise.
2010-12-31 19:01:00 +08:00
|
|
|
eelf32btsmip_fbsd.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32btsmipn32.c \
|
bfd/
2010-12-23 Robert Millan <rmh@gnu.org>
* config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.host: Likewise.
* configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
* configure: Regenerate.
* elf32-mips.c: New target for FreeBSD support
(same as traditional MIPS but overrides ELF_OSABI
with ELFOSABI_FREEBSD).
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.
* targets.c (_bfd_target_vector): Add
`bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
ld/
2010-12-14 Robert Millan <rmh@gnu.org>
* configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu.
* emulparams/elf32btsmip_fbsd.sh: New file.
* emulparams/elf32btsmipn32_fbsd.sh: Likewise.
* emulparams/elf32ltsmip_fbsd.sh: Likewise.
* emulparams/elf32ltsmipn32_fbsd.sh: Likewise.
* emulparams/elf64btsmip_fbsd.sh: Likewise.
* emulparams/elf64ltsmip_fbsd.sh: Likewise.
* Makefile.am: Add build rules for `eelf32btsmip_fbsd.c',
`eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c',
`eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and
`eelf64ltsmip_fbsd.c'.
* Makefile.in: Regenerate.
gas/
2010-12-19 Robert Millan <rmh@gnu.org>
Richard Sandiford <rdsandiford@googlemail.com>
* config/tc-mips.c (ELF_TARGET): New macro. Generates target
names accordingly to whether TE_FreeBSD and whether TE_TMIPS
are defined.
(mips_target_format): Refactor code using ELF_TARGET().
(support_64bit_objects): Likewise.
* configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.tgt: Likewise.
* configure: Regenerate.
binutils/testsuite/
* binutils-all/readelf.exp: Handle MIPS FreeBSD targets.
gas/testsuite/
* gas/mips/e32el-rel2.d: Accept any file format.
* gas/mips/elf-rel.d: Likewise.
* gas/mips/elf-rel2.d: Likewise.
* gas/mips/elf-rel3.d: Likewise.
* gas/mips/elfel-rel.d: Likewise.
* gas/mips/elfel-rel2.d: Likewise.
* gas/mips/elfel-rel3.d: Likewise.
* gas/mips/ldstla-32-mips3-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: Likewise.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/noat-1.d: Likewise.
* gas/mips/set-arch.d: Likewise.
* gas/mips/tls-o32.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets.
* ld-mips-elf/mips-elf.exp: Likewise.
* ld-mips-elf/mips16-call-global.d: Accept any file format.
* ld-mips-elf/mips16-intermix.d: Likewise.
2010-12-31 19:01:00 +08:00
|
|
|
eelf32btsmipn32_fbsd.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32cr16.c \
|
|
|
|
eelf32cr16c.c \
|
|
|
|
eelf32crx.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32ebmip.c \
|
|
|
|
eelf32ebmipvxworks.c \
|
|
|
|
eelf32elmip.c \
|
|
|
|
eelf32elmipvxworks.c \
|
bfd:
* Makefile.am (ALL_MACHINES): Add cpu-epiphany.lo .
(ALL_MACHINES_CFILES): Add cpu-epiphany.c .
(BFD32_BACKENDS): Add elf32-epiphany.lo .
(BFD32_BACKENDS_CFILES): Add elf32-epiphany.c .
* Makefile.in, bfd-in2.h, configure, libbfd.h: Regenerate.
* archures.c (bfd_arch_epiphany): Add.
(bfd_mach_epiphany16, bfd_mach_epiphany32): Define.
(bfd_epiphany_arch): Declare.
(bfd_archures_list): Add &bfd_epiphany_arch.
* config.bfd (epiphany-*-elf): New target case.
* configure.in (bfd_elf32_epiphany_vec): New target vector case.
* reloc.c (BFD_RELOC_EPIPHANY_SIMM8): New relocation.
(BFD_RELOC_EPIPHANY_SIMM24, BFD_RELOC_EPIPHANY_HIGH): Likewise.
(BFD_RELOC_EPIPHANY_LOW, BFD_RELOC_EPIPHANY_SIMM11): Likewise.
(BFD_RELOC_EPIPHANY_IMM11, BFD_RELOC_EPIPHANY_IMM8): Likewise.
* targets.c (bfd_elf32_epiphany_vec): Declare.
(_bfd_target_vector): Add bfd_elf32_epiphany_vec.
* po/SRC-POTFILES.in, po/bfd.pot: Regenerate.
* cpu-epiphany.c, elf32-epiphany.c: New files.
binutils:
* readelf.c (include "elf/epiphany.h")
(guess_is_rela, dump_relocation): Handle EM_ADAPTEVA_EPIPHANY.
(get_machine_name, is_32bit_abs_reloc, is_32bit_pcrel_reloc): Likewise.
(is_16bit_abs_reloc, is_none_reloc): Likewise.
* po/binutils.pot: Regenerate.
cpu:
* cpu/epiphany.cpu, cpu/epiphany.opc: New files.
gas:
* NEWS: Mention addition of Adapteva Epiphany support.
* config/tc-epiphany.c, config/tc-epiphany.h: New files.
* Makefile.am (TARGET_CPU_CFILES): Add config/tc-epiphany.c .
(TARGET_CPU_HFILES): Add config/tc-epiphany.h .
* Makefile.in, configure, doc/Makefile.in, po/POTFILES.in: Regenerate.
* configure.in: Also set using_cgen for epiphany.
* configure.tgt: Handle epiphany.
* doc/Makefile.am (CPU_DOCS): Add c-epiphany.texi .
* doc/all.texi: Set EPIPHANY.
* doc/as.texinfo: Add EPIPHANY-specific text.
* doc/c-epiphany.texi: New file.
* po/gas.pot: Regenerate.
gas/testsuite:
* gas/epiphany: New directory.
include:
* dis-asm.h (print_insn_epiphany): Declare.
* elf/epiphany.h: New file.
* elf/common.h (EM_ADAPTEVA_EPIPHANY): Define.
ld:
* NEWS: Mention addition of Adapteva Epiphany support.
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32epiphany.c .
(eelf32epiphany.c): New rule.
* Makefile.in: Regenerate.
* configure.tgt: Handle epiphany-*-elf.
* po/ld.pot: Regenerate.
* testsuite/ld-srec/srec.exp: xfail epiphany.
* emulparams/elf32epiphany.sh: New file.
opcodes:
* Makefile.am (HFILES): Add epiphany-desc.h and epiphany-opc.h .
(TARGET_LIBOPCODES_CFILES): Add epiphany-asm.c, epiphany-desc.c,
epiphany-dis.c, epiphany-ibld.c and epiphany-opc.c .
(CLEANFILES): Add stamp-epiphany.
(EPIPHANY_DEPS): Set. Make CGEN-generated Epiphany files depend on it.
(stamp-epiphany): New rule.
* Makefile.in, configure, po/POTFILES.in, po/opcodes.pot: Regenerate.
* configure.in: Handle bfd_epiphany_arch.
* disassemble.c (ARCH_epiphany): Define.
(disassembler): Handle bfd_arch_epiphany.
* epiphany-asm.c, epiphany-desc.c, epiphany-desc.h: New files.
* epiphany-dis.c, epiphany-ibld.c, epiphany-opc.c: Likewise.
* epiphany-opc.h: Likewise.
2011-10-25 19:18:16 +08:00
|
|
|
eelf32epiphany.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32fr30.c \
|
|
|
|
eelf32frv.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32frvfd.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32i370.c \
|
|
|
|
eelf32ip2k.c \
|
|
|
|
eelf32iq10.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32iq2000.c \
|
|
|
|
eelf32l4300.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32lm32.c \
|
|
|
|
eelf32lm32fd.c \
|
|
|
|
eelf32lmip.c \
|
|
|
|
eelf32lppc.c \
|
|
|
|
eelf32lppcnto.c \
|
|
|
|
eelf32lppcsim.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32lsmip.c \
|
|
|
|
eelf32ltsmip.c \
|
|
|
|
eelf32ltsmip_fbsd.c \
|
|
|
|
eelf32ltsmipn32.c \
|
|
|
|
eelf32ltsmipn32_fbsd.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32m32c.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32mb_linux.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32mcore.c \
|
|
|
|
eelf32mep.c \
|
|
|
|
eelf32microblaze.c \
|
|
|
|
eelf32mipswindiss.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32moxie.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32mt.c \
|
|
|
|
eelf32openrisc.c \
|
|
|
|
eelf32ppc.c \
|
|
|
|
eelf32ppc_fbsd.c \
|
|
|
|
eelf32ppclinux.c \
|
|
|
|
eelf32ppcnto.c \
|
|
|
|
eelf32ppcsim.c \
|
|
|
|
eelf32ppcvxworks.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32ppcwindiss.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32rx.c \
|
* Makefile.am (ALL_MACHINES): Add cpu-tilegx.lo and cpu-tilepro.lo.
(ALL_MACHINE_CFILES): Add cpu-tilegx.c and cpu-tilepro.c.
(BFD32_BACKENDS): Add elf32-tilegx.lo, elf32-tilepro.lo,
and elfxx-tilegx.lo.
(BFD32_BACKENDS_CFILES): Add elf32-tilegx.c elf32-tilepro.c, and
elfxx-tilegx.c.
(BFD64_BACKENDS): Add elf64-tilegx.lo.
(BFD64_BACKENDS_CFILES): Add elf64-tilegx.c.
* Makefile.in: Regenerate.
* arctures.c (bfd_architecture): Define bfd_arch_tilepro,
bfd_arch_tilegx, bfd_mach_tilepro, bfd_mach_tilegx.
(bfd_arch_info): Add bfd_tilegx_arch, bfd_tilepro_arch.
(bfd_archures_list): Add bfd_tilegx_arch, bfd_tilepro_arch.
bfd-in2.h: Regenerate.
* config.bfd: Handle tilegx-*-* and tilepro-*-*.
* configure.in: Handle bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec,
and bfd_elf64_tilegx_vec.
* configure: Regenerate.
* elf-bfd.h (enum elf_target_id): Define TILEGX_ELF_DATA and
TILEPRO_ELF_DATA.
* libbfd.h: Regenerate.
* reloc.c: Add BFD_RELOC_TILEPRO_{COPY, GLOB_DAT, JMP_SLOT,
RELATIVE, BROFF_X1, JOFFLONG_X1, JOFFLONG_X1_PLT, IMM8_X0,
IMM8_Y0, IMM8_X1, IMM8_Y1, DEST_IMM8_X1, MT_IMM15_X1, MF_IMM15_X1,
IMM16_X0, IMM16_X1, IMM16_X0_LO, IMM16_X1_LO, IMM16_X0_HI,
IMM16_X1_HI, IMM16_X0_HA, IMM16_X1_HA, IMM16_X0_PCREL,
IMM16_X1_PCREL, IMM16_X0_LO_PCREL, IMM16_X1_LO_PCREL,
IMM16_X0_HI_PCREL, IMM16_X1_HI_PCREL, IMM16_X0_HA_PCREL,
IMM16_X1_HA_PCREL, IMM16_X0_GOT, IMM16_X1_GOT, IMM16_X0_GOT_LO,
IMM16_X1_GOT_LO, IMM16_X0_GOT_HI, IMM16_X1_GOT_HI,
IMM16_X0_GOT_HA, IMM16_X1_GOT_HA, MMSTART_X0, MMEND_X0,
MMSTART_X1, MMEND_X1, SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1,
IMM16_X0_TLS_GD, IMM16_X1_TLS_GD, IMM16_X0_TLS_GD_LO,
IMM16_X1_TLS_GD_LO, IMM16_X0_TLS_GD_HI, IMM16_X1_TLS_GD_HI,
IMM16_X0_TLS_GD_HA, IMM16_X1_TLS_GD_HA, IMM16_X0_TLS_IE,
IMM16_X1_TLS_IE, IMM16_X0_TLS_IE_LO, IMM16_X1_TLS_IE_LO,
IMM16_X0_TLS_IE_HI, IMM16_X1_TLS_IE_HI, IMM16_X0_TLS_IE_HA,
IMM16_X1_TLS_IE_HA, TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32}
Add BFD_RELOC_TILEGX_{HW0, HW1, HW2, HW3, HW0_LAST, HW1_LAST,
HW2_LAST, COPY, GLOB_DAT, JMP_SLOT, RELATIVE, BROFF_X1,
JUMPOFF_X1, JUMPOFF_X1_PLT, IMM8_X0, IMM8_Y0, IMM8_X1, IMM8_Y1,
DEST_IMM8_X1, MT_IMM14_X1, MF_IMM14_X1, MMSTART_X0, MMEND_X0,
SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1, IMM16_X0_HW0,
IMM16_X1_HW0, IMM16_X0_HW1, IMM16_X1_HW1, IMM16_X0_HW2,
IMM16_X1_HW2, IMM16_X0_HW3, IMM16_X1_HW3, IMM16_X0_HW0_LAST,
IMM16_X1_HW0_LAST, IMM16_X0_HW1_LAST, IMM16_X1_HW1_LAST,
IMM16_X0_HW2_LAST, IMM16_X1_HW2_LAST, IMM16_X0_HW0_PCREL,
IMM16_X1_HW0_PCREL, IMM16_X0_HW1_PCREL, IMM16_X1_HW1_PCREL,
IMM16_X0_HW2_PCREL, IMM16_X1_HW2_PCREL, IMM16_X0_HW3_PCREL,
IMM16_X1_HW3_PCREL, IMM16_X0_HW0_LAST_PCREL,
IMM16_X1_HW0_LAST_PCREL, IMM16_X0_HW1_LAST_PCREL,
IMM16_X1_HW1_LAST_PCREL, IMM16_X0_HW2_LAST_PCREL,
IMM16_X1_HW2_LAST_PCREL, IMM16_X0_HW0_GOT, IMM16_X1_HW0_GOT,
IMM16_X0_HW1_GOT, IMM16_X1_HW1_GOT, IMM16_X0_HW2_GOT,
IMM16_X1_HW2_GOT, IMM16_X0_HW3_GOT, IMM16_X1_HW3_GOT,
IMM16_X0_HW0_LAST_GOT, IMM16_X1_HW0_LAST_GOT,
IMM16_X0_HW1_LAST_GOT, IMM16_X1_HW1_LAST_GOT,
IMM16_X0_HW2_LAST_GOT, IMM16_X1_HW2_LAST_GOT, IMM16_X0_HW0_TLS_GD,
IMM16_X1_HW0_TLS_GD, IMM16_X0_HW1_TLS_GD, IMM16_X1_HW1_TLS_GD,
IMM16_X0_HW2_TLS_GD, IMM16_X1_HW2_TLS_GD, IMM16_X0_HW3_TLS_GD,
IMM16_X1_HW3_TLS_GD, IMM16_X0_HW0_LAST_TLS_GD,
IMM16_X1_HW0_LAST_TLS_GD, IMM16_X0_HW1_LAST_TLS_GD,
IMM16_X1_HW1_LAST_TLS_GD, IMM16_X0_HW2_LAST_TLS_GD,
IMM16_X1_HW2_LAST_TLS_GD, IMM16_X0_HW0_TLS_IE,
IMM16_X1_HW0_TLS_IE, IMM16_X0_HW1_TLS_IE, IMM16_X1_HW1_TLS_IE,
IMM16_X0_HW2_TLS_IE, IMM16_X1_HW2_TLS_IE, IMM16_X0_HW3_TLS_IE,
IMM16_X1_HW3_TLS_IE, IMM16_X0_HW0_LAST_TLS_IE,
IMM16_X1_HW0_LAST_TLS_IE, IMM16_X0_HW1_LAST_TLS_IE,
IMM16_X1_HW1_LAST_TLS_IE, IMM16_X0_HW2_LAST_TLS_IE,
IMM16_X1_HW2_LAST_TLS_IE, TLS_DTPMOD64, TLS_DTPOFF64, TLS_TPOFF64,
TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32}
* targets.c (bfd_elf32_tilegx_vec): Declare.
(bfd_elf32_tilepro_vec): Declare.
(bfd_elf64_tilegx_vec): Declare.
(bfd_target_vector): Add bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec,
and bfd_elf64_tilegx_vec.
* cpu-tilegx.c: New file.
* cpu-tilepro.c: New file.
* elf32-tilepro.h: New file.
* elf32-tilepro.c: New file.
* elf32-tilegx.c: New file.
* elf32-tilegx.h: New file.
* elf64-tilegx.c: New file.
* elf64-tilegx.h: New file.
* elfxx-tilegx.c: New file.
* elfxx-tilegx.h: New file.
* Makefile.am (TARGET_CPU_CFILES): Add config/tc-tilegx.c and
config/tc-tilepro.c.
(TARGET_CPU_HFILES): Add config/tc-tilegx.h and
config/tc-tilepro.h.
* Makefile.in: Regenerate.
* configure.tgt (tilepro-*-*): New.
(tilegx-*-*): Likewise.
* config/tc-tilegx.c: New file.
* config/tc-tilegx.h: Likewise.
* config/tc-tilepro.h: Likewise.
* config/tc-tilepro.c: Likewise.
* doc/Makefile.am (CPU_DOCS): Add c-tilegx.texi and
c-tilepro.texi.
* doc/Makefile.in: Regenerate.
* doc/all.texi (TILEGX): Define.
(TILEPRO): Define.
* doc/as.texinfo: Add Tile-Gx and TILEPro documentation. Include
c-tilegx.texi and c-tilepro.texi.
* doc/c-tilegx.texi: New.
* doc/c-tilepro.texi: New.
* gas/tilepro/t_constants.s: New file.
* gas/tilepro/t_constants.d: Likewise.
* gas/tilepro/t_insns.s: Likewise.
* gas/tilepro/tilepro.exp: Likewise.
* gas/tilepro/t_insns.d: Likewise.
* gas/tilegx/tilegx.exp: Likewise.
* gas/tilegx/t_insns.d: Likewise.
* gas/tilegx/t_insns.s: Likewise.
* dis-asm.h (print_insn_tilegx): Declare.
(print_insn_tilepro): Likewise.
* tilegx.h: New file.
* tilepro.h: New file.
* common.h: Add EM_TILEGX.
* tilegx.h: New file.
* tilepro.h: New file.
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx.c and
eelf32tilepro.c.
(ALL_64_EMULATION_SOURCES): Add eelf64tilegx.c.
(eelf32tilegx.c): New target.
(eelf32tilepro.c): Likewise.
(eelf64tilegx.c): Likewise.
* Makefile.in: Regenerate.
* configure.tgt: Handle tilegx-*-* and tilepro-*-*.
* emulparams/elf32tilegx.sh: New file.
* emulparams/elf64tilegx.sh: New file.
* emulparams/elf32tilepro.sh: New file.
* ld-elf/eh5.d: Don't run on tile*.
* ld-srec/srec.exp: xfail on tile*.
* ld-tilegx/external.s: New file.
* ld-tilegx/reloc.d: New file.
* ld-tilegx/reloc.s: New file.
* ld-tilegx/tilegx.exp: New file.
* ld-tilepro/external.s: New file.
* ld-tilepro/reloc.d: New file.
* ld-tilepro/reloc.s: New file.
* ld-tilepro/tilepro.exp: New file.
* Makefile.am (TARGET_LIBOPCODES_CFILES): Add tilegx-dis.c,
tilegx-opc.c, tilepro-dis.c, and tilepro-opc.c.
* Makefile.in: Regenerate.
* configure.in: Handle bfd_tilegx_arch and bfd_tilepro_arch.
* configure: Regenerate.
* disassemble.c (disassembler): Add ARCH_tilegx and ARCH_tilepro.
* po/POTFILES.in: Regenerate.
* tilegx-dis.c: New file.
* tilegx-opc.c: New file.
* tilepro-dis.c: New file.
* tilepro-opc.c: New file.
2011-06-13 23:18:54 +08:00
|
|
|
eelf32tilegx.c \
|
|
|
|
eelf32tilepro.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32vax.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32xc16x.c \
|
|
|
|
eelf32xc16xl.c \
|
|
|
|
eelf32xc16xs.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf32xstormy16.c \
|
|
|
|
eelf32xtensa.c \
|
|
|
|
eelf_i386.c \
|
|
|
|
eelf_i386_be.c \
|
|
|
|
eelf_i386_chaos.c \
|
|
|
|
eelf_i386_fbsd.c \
|
|
|
|
eelf_i386_ldso.c \
|
|
|
|
eelf_i386_sol2.c \
|
|
|
|
eelf_i386_vxworks.c \
|
|
|
|
eelf_s390.c \
|
|
|
|
egld960.c \
|
|
|
|
egld960coff.c \
|
|
|
|
eh8300.c \
|
|
|
|
eh8300elf.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eh8300h.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eh8300helf.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eh8300hn.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eh8300hnelf.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eh8300s.c \
|
|
|
|
eh8300self.c \
|
|
|
|
eh8300sn.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eh8300snelf.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eh8300sx.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eh8300sxelf.c \
|
|
|
|
eh8300sxn.c \
|
|
|
|
eh8300sxnelf.c \
|
|
|
|
eh8500.c \
|
|
|
|
eh8500b.c \
|
|
|
|
eh8500c.c \
|
|
|
|
eh8500m.c \
|
|
|
|
eh8500s.c \
|
|
|
|
ehp300bsd.c \
|
|
|
|
ehp3hpux.c \
|
|
|
|
ehppaelf.c \
|
|
|
|
ehppalinux.c \
|
|
|
|
ehppanbsd.c \
|
|
|
|
ehppaobsd.c \
|
|
|
|
ei386aout.c \
|
|
|
|
ei386beos.c \
|
|
|
|
ei386bsd.c \
|
|
|
|
ei386coff.c \
|
|
|
|
ei386go32.c \
|
|
|
|
ei386linux.c \
|
|
|
|
ei386lynx.c \
|
|
|
|
ei386mach.c \
|
|
|
|
ei386moss.c \
|
|
|
|
ei386msdos.c \
|
|
|
|
ei386nbsd.c \
|
|
|
|
ei386nto.c \
|
|
|
|
ei386nw.c \
|
|
|
|
ei386pe.c \
|
|
|
|
ei386pe_posix.c \
|
|
|
|
ei386pep.c \
|
|
|
|
elnk960.c \
|
|
|
|
em32relf.c \
|
|
|
|
em32relf_linux.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
em32rlelf.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
em32rlelf_linux.c \
|
|
|
|
em68hc11elf.c \
|
|
|
|
em68hc11elfb.c \
|
|
|
|
em68hc12elf.c \
|
|
|
|
em68hc12elfb.c \
|
|
|
|
em68k4knbsd.c \
|
|
|
|
em68kaout.c \
|
|
|
|
em68kaux.c \
|
|
|
|
em68kcoff.c \
|
|
|
|
em68kelf.c \
|
|
|
|
em68kelfnbsd.c \
|
|
|
|
em68klinux.c \
|
|
|
|
em68knbsd.c \
|
|
|
|
em68kpsos.c \
|
|
|
|
em88kbcs.c \
|
|
|
|
emcorepe.c \
|
|
|
|
emipsbig.c \
|
|
|
|
emipsbsd.c \
|
|
|
|
emipsidt.c \
|
|
|
|
emipsidtl.c \
|
|
|
|
emipslit.c \
|
|
|
|
emipslnews.c \
|
|
|
|
emipspe.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
emn10200.c \
|
|
|
|
emn10300.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
emsp430x110.c \
|
|
|
|
emsp430x1101.c \
|
|
|
|
emsp430x1111.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
emsp430x112.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
emsp430x1121.c \
|
|
|
|
emsp430x1122.c \
|
|
|
|
emsp430x1132.c \
|
|
|
|
emsp430x122.c \
|
|
|
|
emsp430x1222.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
emsp430x123.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
emsp430x1232.c \
|
|
|
|
emsp430x133.c \
|
|
|
|
emsp430x1331.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
emsp430x135.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
emsp430x1351.c \
|
|
|
|
emsp430x147.c \
|
|
|
|
emsp430x148.c \
|
|
|
|
emsp430x149.c \
|
|
|
|
emsp430x155.c \
|
|
|
|
emsp430x156.c \
|
|
|
|
emsp430x157.c \
|
|
|
|
emsp430x1610.c \
|
|
|
|
emsp430x1611.c \
|
|
|
|
emsp430x1612.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
emsp430x167.c \
|
|
|
|
emsp430x168.c \
|
|
|
|
emsp430x169.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
emsp430x2101.c \
|
|
|
|
emsp430x2111.c \
|
|
|
|
emsp430x2121.c \
|
|
|
|
emsp430x2131.c \
|
|
|
|
emsp430x311.c \
|
|
|
|
emsp430x312.c \
|
|
|
|
emsp430x313.c \
|
|
|
|
emsp430x314.c \
|
|
|
|
emsp430x315.c \
|
|
|
|
emsp430x323.c \
|
|
|
|
emsp430x325.c \
|
|
|
|
emsp430x336.c \
|
|
|
|
emsp430x337.c \
|
|
|
|
emsp430x412.c \
|
|
|
|
emsp430x413.c \
|
|
|
|
emsp430x415.c \
|
|
|
|
emsp430x417.c \
|
|
|
|
emsp430x435.c \
|
|
|
|
emsp430x436.c \
|
|
|
|
emsp430x437.c \
|
|
|
|
emsp430x447.c \
|
|
|
|
emsp430x448.c \
|
|
|
|
emsp430x449.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
emsp430xE423.c \
|
|
|
|
emsp430xE425.c \
|
|
|
|
emsp430xE427.c \
|
|
|
|
emsp430xG437.c \
|
|
|
|
emsp430xG438.c \
|
|
|
|
emsp430xG439.c \
|
|
|
|
emsp430xW423.c \
|
|
|
|
emsp430xW425.c \
|
|
|
|
emsp430xW427.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
enews.c \
|
|
|
|
ens32knbsd.c \
|
|
|
|
eor32.c \
|
|
|
|
eor32elf.c \
|
|
|
|
epc532macha.c \
|
|
|
|
epdp11.c \
|
|
|
|
epjelf.c \
|
|
|
|
epjlelf.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eppclynx.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eppcmacos.c \
|
|
|
|
eppcnw.c \
|
|
|
|
eppcpe.c \
|
|
|
|
eriscix.c \
|
|
|
|
escore3_elf.c \
|
|
|
|
escore7_elf.c \
|
|
|
|
esh.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eshelf.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eshelf32.c \
|
|
|
|
eshelf32_linux.c \
|
|
|
|
eshelf32_nbsd.c \
|
|
|
|
eshelf_fd.c \
|
|
|
|
eshelf_linux.c \
|
|
|
|
eshelf_nbsd.c \
|
|
|
|
eshelf_nto.c \
|
|
|
|
eshelf_uclinux.c \
|
|
|
|
eshelf_vxworks.c \
|
|
|
|
eshl.c \
|
|
|
|
eshlelf.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eshlelf32.c \
|
|
|
|
eshlelf32_linux.c \
|
|
|
|
eshlelf32_nbsd.c \
|
|
|
|
eshlelf_fd.c \
|
|
|
|
eshlelf_linux.c \
|
|
|
|
eshlelf_nbsd.c \
|
|
|
|
eshlelf_nto.c \
|
|
|
|
eshlelf_vxworks.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eshlsymbian.c \
|
|
|
|
eshpe.c \
|
|
|
|
esparcaout.c \
|
|
|
|
esparclinux.c \
|
|
|
|
esparcnbsd.c \
|
|
|
|
est2000.c \
|
|
|
|
esun3.c \
|
|
|
|
esun4.c \
|
|
|
|
etic30aout.c \
|
|
|
|
etic30coff.c \
|
|
|
|
etic3xcoff.c \
|
|
|
|
etic3xcoff_onchip.c \
|
|
|
|
etic4xcoff.c \
|
|
|
|
etic54xcoff.c \
|
|
|
|
etic80coff.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
ev850.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
evanilla.c \
|
|
|
|
evax.c \
|
|
|
|
evaxnbsd.c \
|
|
|
|
evsta.c \
|
|
|
|
ew65.c \
|
|
|
|
ez80.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
ez8001.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
ez8002.c
|
|
|
|
|
|
|
|
ALL_EMULATIONS = $(ALL_EMULATION_SOURCES:.c=.@OBJEXT@)
|
|
|
|
ALL_64_EMULATION_SOURCES = \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32_x86_64.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf64_aix.c \
|
|
|
|
eelf64_ia64.c \
|
|
|
|
eelf64_ia64_fbsd.c \
|
|
|
|
eelf64_s390.c \
|
|
|
|
eelf64_sparc.c \
|
|
|
|
eelf64_sparc_fbsd.c \
|
|
|
|
eelf64_sparc_sol2.c \
|
|
|
|
eelf64alpha.c \
|
|
|
|
eelf64alpha_fbsd.c \
|
|
|
|
eelf64alpha_nbsd.c \
|
|
|
|
eelf64bmip.c \
|
|
|
|
eelf64btsmip.c \
|
bfd/
2010-12-23 Robert Millan <rmh@gnu.org>
* config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.host: Likewise.
* configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
* configure: Regenerate.
* elf32-mips.c: New target for FreeBSD support
(same as traditional MIPS but overrides ELF_OSABI
with ELFOSABI_FREEBSD).
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.
* targets.c (_bfd_target_vector): Add
`bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
ld/
2010-12-14 Robert Millan <rmh@gnu.org>
* configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu.
* emulparams/elf32btsmip_fbsd.sh: New file.
* emulparams/elf32btsmipn32_fbsd.sh: Likewise.
* emulparams/elf32ltsmip_fbsd.sh: Likewise.
* emulparams/elf32ltsmipn32_fbsd.sh: Likewise.
* emulparams/elf64btsmip_fbsd.sh: Likewise.
* emulparams/elf64ltsmip_fbsd.sh: Likewise.
* Makefile.am: Add build rules for `eelf32btsmip_fbsd.c',
`eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c',
`eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and
`eelf64ltsmip_fbsd.c'.
* Makefile.in: Regenerate.
gas/
2010-12-19 Robert Millan <rmh@gnu.org>
Richard Sandiford <rdsandiford@googlemail.com>
* config/tc-mips.c (ELF_TARGET): New macro. Generates target
names accordingly to whether TE_FreeBSD and whether TE_TMIPS
are defined.
(mips_target_format): Refactor code using ELF_TARGET().
(support_64bit_objects): Likewise.
* configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.tgt: Likewise.
* configure: Regenerate.
binutils/testsuite/
* binutils-all/readelf.exp: Handle MIPS FreeBSD targets.
gas/testsuite/
* gas/mips/e32el-rel2.d: Accept any file format.
* gas/mips/elf-rel.d: Likewise.
* gas/mips/elf-rel2.d: Likewise.
* gas/mips/elf-rel3.d: Likewise.
* gas/mips/elfel-rel.d: Likewise.
* gas/mips/elfel-rel2.d: Likewise.
* gas/mips/elfel-rel3.d: Likewise.
* gas/mips/ldstla-32-mips3-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: Likewise.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/noat-1.d: Likewise.
* gas/mips/set-arch.d: Likewise.
* gas/mips/tls-o32.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets.
* ld-mips-elf/mips-elf.exp: Likewise.
* ld-mips-elf/mips16-call-global.d: Accept any file format.
* ld-mips-elf/mips16-intermix.d: Likewise.
2010-12-31 19:01:00 +08:00
|
|
|
eelf64btsmip_fbsd.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf64hppa.c \
|
|
|
|
eelf64lppc.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf64ltsmip.c \
|
bfd/
2010-12-23 Robert Millan <rmh@gnu.org>
* config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.host: Likewise.
* configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
* configure: Regenerate.
* elf32-mips.c: New target for FreeBSD support
(same as traditional MIPS but overrides ELF_OSABI
with ELFOSABI_FREEBSD).
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.
* targets.c (_bfd_target_vector): Add
`bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
ld/
2010-12-14 Robert Millan <rmh@gnu.org>
* configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu.
* emulparams/elf32btsmip_fbsd.sh: New file.
* emulparams/elf32btsmipn32_fbsd.sh: Likewise.
* emulparams/elf32ltsmip_fbsd.sh: Likewise.
* emulparams/elf32ltsmipn32_fbsd.sh: Likewise.
* emulparams/elf64btsmip_fbsd.sh: Likewise.
* emulparams/elf64ltsmip_fbsd.sh: Likewise.
* Makefile.am: Add build rules for `eelf32btsmip_fbsd.c',
`eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c',
`eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and
`eelf64ltsmip_fbsd.c'.
* Makefile.in: Regenerate.
gas/
2010-12-19 Robert Millan <rmh@gnu.org>
Richard Sandiford <rdsandiford@googlemail.com>
* config/tc-mips.c (ELF_TARGET): New macro. Generates target
names accordingly to whether TE_FreeBSD and whether TE_TMIPS
are defined.
(mips_target_format): Refactor code using ELF_TARGET().
(support_64bit_objects): Likewise.
* configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.tgt: Likewise.
* configure: Regenerate.
binutils/testsuite/
* binutils-all/readelf.exp: Handle MIPS FreeBSD targets.
gas/testsuite/
* gas/mips/e32el-rel2.d: Accept any file format.
* gas/mips/elf-rel.d: Likewise.
* gas/mips/elf-rel2.d: Likewise.
* gas/mips/elf-rel3.d: Likewise.
* gas/mips/elfel-rel.d: Likewise.
* gas/mips/elfel-rel2.d: Likewise.
* gas/mips/elfel-rel3.d: Likewise.
* gas/mips/ldstla-32-mips3-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: Likewise.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/noat-1.d: Likewise.
* gas/mips/set-arch.d: Likewise.
* gas/mips/tls-o32.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets.
* ld-mips-elf/mips-elf.exp: Likewise.
* ld-mips-elf/mips16-call-global.d: Accept any file format.
* ld-mips-elf/mips16-intermix.d: Likewise.
2010-12-31 19:01:00 +08:00
|
|
|
eelf64ltsmip_fbsd.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
eelf64mmix.c \
|
|
|
|
eelf64ppc.c \
|
* Makefile.am (ALL_MACHINES): Add cpu-tilegx.lo and cpu-tilepro.lo.
(ALL_MACHINE_CFILES): Add cpu-tilegx.c and cpu-tilepro.c.
(BFD32_BACKENDS): Add elf32-tilegx.lo, elf32-tilepro.lo,
and elfxx-tilegx.lo.
(BFD32_BACKENDS_CFILES): Add elf32-tilegx.c elf32-tilepro.c, and
elfxx-tilegx.c.
(BFD64_BACKENDS): Add elf64-tilegx.lo.
(BFD64_BACKENDS_CFILES): Add elf64-tilegx.c.
* Makefile.in: Regenerate.
* arctures.c (bfd_architecture): Define bfd_arch_tilepro,
bfd_arch_tilegx, bfd_mach_tilepro, bfd_mach_tilegx.
(bfd_arch_info): Add bfd_tilegx_arch, bfd_tilepro_arch.
(bfd_archures_list): Add bfd_tilegx_arch, bfd_tilepro_arch.
bfd-in2.h: Regenerate.
* config.bfd: Handle tilegx-*-* and tilepro-*-*.
* configure.in: Handle bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec,
and bfd_elf64_tilegx_vec.
* configure: Regenerate.
* elf-bfd.h (enum elf_target_id): Define TILEGX_ELF_DATA and
TILEPRO_ELF_DATA.
* libbfd.h: Regenerate.
* reloc.c: Add BFD_RELOC_TILEPRO_{COPY, GLOB_DAT, JMP_SLOT,
RELATIVE, BROFF_X1, JOFFLONG_X1, JOFFLONG_X1_PLT, IMM8_X0,
IMM8_Y0, IMM8_X1, IMM8_Y1, DEST_IMM8_X1, MT_IMM15_X1, MF_IMM15_X1,
IMM16_X0, IMM16_X1, IMM16_X0_LO, IMM16_X1_LO, IMM16_X0_HI,
IMM16_X1_HI, IMM16_X0_HA, IMM16_X1_HA, IMM16_X0_PCREL,
IMM16_X1_PCREL, IMM16_X0_LO_PCREL, IMM16_X1_LO_PCREL,
IMM16_X0_HI_PCREL, IMM16_X1_HI_PCREL, IMM16_X0_HA_PCREL,
IMM16_X1_HA_PCREL, IMM16_X0_GOT, IMM16_X1_GOT, IMM16_X0_GOT_LO,
IMM16_X1_GOT_LO, IMM16_X0_GOT_HI, IMM16_X1_GOT_HI,
IMM16_X0_GOT_HA, IMM16_X1_GOT_HA, MMSTART_X0, MMEND_X0,
MMSTART_X1, MMEND_X1, SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1,
IMM16_X0_TLS_GD, IMM16_X1_TLS_GD, IMM16_X0_TLS_GD_LO,
IMM16_X1_TLS_GD_LO, IMM16_X0_TLS_GD_HI, IMM16_X1_TLS_GD_HI,
IMM16_X0_TLS_GD_HA, IMM16_X1_TLS_GD_HA, IMM16_X0_TLS_IE,
IMM16_X1_TLS_IE, IMM16_X0_TLS_IE_LO, IMM16_X1_TLS_IE_LO,
IMM16_X0_TLS_IE_HI, IMM16_X1_TLS_IE_HI, IMM16_X0_TLS_IE_HA,
IMM16_X1_TLS_IE_HA, TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32}
Add BFD_RELOC_TILEGX_{HW0, HW1, HW2, HW3, HW0_LAST, HW1_LAST,
HW2_LAST, COPY, GLOB_DAT, JMP_SLOT, RELATIVE, BROFF_X1,
JUMPOFF_X1, JUMPOFF_X1_PLT, IMM8_X0, IMM8_Y0, IMM8_X1, IMM8_Y1,
DEST_IMM8_X1, MT_IMM14_X1, MF_IMM14_X1, MMSTART_X0, MMEND_X0,
SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1, IMM16_X0_HW0,
IMM16_X1_HW0, IMM16_X0_HW1, IMM16_X1_HW1, IMM16_X0_HW2,
IMM16_X1_HW2, IMM16_X0_HW3, IMM16_X1_HW3, IMM16_X0_HW0_LAST,
IMM16_X1_HW0_LAST, IMM16_X0_HW1_LAST, IMM16_X1_HW1_LAST,
IMM16_X0_HW2_LAST, IMM16_X1_HW2_LAST, IMM16_X0_HW0_PCREL,
IMM16_X1_HW0_PCREL, IMM16_X0_HW1_PCREL, IMM16_X1_HW1_PCREL,
IMM16_X0_HW2_PCREL, IMM16_X1_HW2_PCREL, IMM16_X0_HW3_PCREL,
IMM16_X1_HW3_PCREL, IMM16_X0_HW0_LAST_PCREL,
IMM16_X1_HW0_LAST_PCREL, IMM16_X0_HW1_LAST_PCREL,
IMM16_X1_HW1_LAST_PCREL, IMM16_X0_HW2_LAST_PCREL,
IMM16_X1_HW2_LAST_PCREL, IMM16_X0_HW0_GOT, IMM16_X1_HW0_GOT,
IMM16_X0_HW1_GOT, IMM16_X1_HW1_GOT, IMM16_X0_HW2_GOT,
IMM16_X1_HW2_GOT, IMM16_X0_HW3_GOT, IMM16_X1_HW3_GOT,
IMM16_X0_HW0_LAST_GOT, IMM16_X1_HW0_LAST_GOT,
IMM16_X0_HW1_LAST_GOT, IMM16_X1_HW1_LAST_GOT,
IMM16_X0_HW2_LAST_GOT, IMM16_X1_HW2_LAST_GOT, IMM16_X0_HW0_TLS_GD,
IMM16_X1_HW0_TLS_GD, IMM16_X0_HW1_TLS_GD, IMM16_X1_HW1_TLS_GD,
IMM16_X0_HW2_TLS_GD, IMM16_X1_HW2_TLS_GD, IMM16_X0_HW3_TLS_GD,
IMM16_X1_HW3_TLS_GD, IMM16_X0_HW0_LAST_TLS_GD,
IMM16_X1_HW0_LAST_TLS_GD, IMM16_X0_HW1_LAST_TLS_GD,
IMM16_X1_HW1_LAST_TLS_GD, IMM16_X0_HW2_LAST_TLS_GD,
IMM16_X1_HW2_LAST_TLS_GD, IMM16_X0_HW0_TLS_IE,
IMM16_X1_HW0_TLS_IE, IMM16_X0_HW1_TLS_IE, IMM16_X1_HW1_TLS_IE,
IMM16_X0_HW2_TLS_IE, IMM16_X1_HW2_TLS_IE, IMM16_X0_HW3_TLS_IE,
IMM16_X1_HW3_TLS_IE, IMM16_X0_HW0_LAST_TLS_IE,
IMM16_X1_HW0_LAST_TLS_IE, IMM16_X0_HW1_LAST_TLS_IE,
IMM16_X1_HW1_LAST_TLS_IE, IMM16_X0_HW2_LAST_TLS_IE,
IMM16_X1_HW2_LAST_TLS_IE, TLS_DTPMOD64, TLS_DTPOFF64, TLS_TPOFF64,
TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32}
* targets.c (bfd_elf32_tilegx_vec): Declare.
(bfd_elf32_tilepro_vec): Declare.
(bfd_elf64_tilegx_vec): Declare.
(bfd_target_vector): Add bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec,
and bfd_elf64_tilegx_vec.
* cpu-tilegx.c: New file.
* cpu-tilepro.c: New file.
* elf32-tilepro.h: New file.
* elf32-tilepro.c: New file.
* elf32-tilegx.c: New file.
* elf32-tilegx.h: New file.
* elf64-tilegx.c: New file.
* elf64-tilegx.h: New file.
* elfxx-tilegx.c: New file.
* elfxx-tilegx.h: New file.
* Makefile.am (TARGET_CPU_CFILES): Add config/tc-tilegx.c and
config/tc-tilepro.c.
(TARGET_CPU_HFILES): Add config/tc-tilegx.h and
config/tc-tilepro.h.
* Makefile.in: Regenerate.
* configure.tgt (tilepro-*-*): New.
(tilegx-*-*): Likewise.
* config/tc-tilegx.c: New file.
* config/tc-tilegx.h: Likewise.
* config/tc-tilepro.h: Likewise.
* config/tc-tilepro.c: Likewise.
* doc/Makefile.am (CPU_DOCS): Add c-tilegx.texi and
c-tilepro.texi.
* doc/Makefile.in: Regenerate.
* doc/all.texi (TILEGX): Define.
(TILEPRO): Define.
* doc/as.texinfo: Add Tile-Gx and TILEPro documentation. Include
c-tilegx.texi and c-tilepro.texi.
* doc/c-tilegx.texi: New.
* doc/c-tilepro.texi: New.
* gas/tilepro/t_constants.s: New file.
* gas/tilepro/t_constants.d: Likewise.
* gas/tilepro/t_insns.s: Likewise.
* gas/tilepro/tilepro.exp: Likewise.
* gas/tilepro/t_insns.d: Likewise.
* gas/tilegx/tilegx.exp: Likewise.
* gas/tilegx/t_insns.d: Likewise.
* gas/tilegx/t_insns.s: Likewise.
* dis-asm.h (print_insn_tilegx): Declare.
(print_insn_tilepro): Likewise.
* tilegx.h: New file.
* tilepro.h: New file.
* common.h: Add EM_TILEGX.
* tilegx.h: New file.
* tilepro.h: New file.
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx.c and
eelf32tilepro.c.
(ALL_64_EMULATION_SOURCES): Add eelf64tilegx.c.
(eelf32tilegx.c): New target.
(eelf32tilepro.c): Likewise.
(eelf64tilegx.c): Likewise.
* Makefile.in: Regenerate.
* configure.tgt: Handle tilegx-*-* and tilepro-*-*.
* emulparams/elf32tilegx.sh: New file.
* emulparams/elf64tilegx.sh: New file.
* emulparams/elf32tilepro.sh: New file.
* ld-elf/eh5.d: Don't run on tile*.
* ld-srec/srec.exp: xfail on tile*.
* ld-tilegx/external.s: New file.
* ld-tilegx/reloc.d: New file.
* ld-tilegx/reloc.s: New file.
* ld-tilegx/tilegx.exp: New file.
* ld-tilepro/external.s: New file.
* ld-tilepro/reloc.d: New file.
* ld-tilepro/reloc.s: New file.
* ld-tilepro/tilepro.exp: New file.
* Makefile.am (TARGET_LIBOPCODES_CFILES): Add tilegx-dis.c,
tilegx-opc.c, tilepro-dis.c, and tilepro-opc.c.
* Makefile.in: Regenerate.
* configure.in: Handle bfd_tilegx_arch and bfd_tilepro_arch.
* configure: Regenerate.
* disassemble.c (disassembler): Add ARCH_tilegx and ARCH_tilepro.
* po/POTFILES.in: Regenerate.
* tilegx-dis.c: New file.
* tilegx-opc.c: New file.
* tilepro-dis.c: New file.
* tilepro-opc.c: New file.
2011-06-13 23:18:54 +08:00
|
|
|
eelf64tilegx.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf_l1om.c \
|
|
|
|
eelf_l1om_fbsd.c \
|
2011-07-23 04:22:38 +08:00
|
|
|
eelf_k1om.c \
|
|
|
|
eelf_k1om_fbsd.c \
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf_x86_64.c \
|
|
|
|
eelf_x86_64_fbsd.c \
|
|
|
|
eelf_x86_64_sol2.c \
|
|
|
|
ehppa64linux.c \
|
|
|
|
emmo.c \
|
|
|
|
eshelf64.c \
|
|
|
|
eshelf64_nbsd.c \
|
|
|
|
eshlelf64.c \
|
|
|
|
eshlelf64_nbsd.c
|
2010-10-06 12:58:34 +08:00
|
|
|
|
2010-10-06 14:01:53 +08:00
|
|
|
ALL_64_EMULATIONS = $(ALL_64_EMULATION_SOURCES:.c=.@OBJEXT@)
|
2005-01-21 03:37:49 +08:00
|
|
|
ALL_EMUL_EXTRA_OFILES = \
|
2010-05-25 22:02:38 +08:00
|
|
|
deffilep.@OBJEXT@ \
|
|
|
|
pe-dll.@OBJEXT@ \
|
|
|
|
pep-dll.@OBJEXT@
|
2005-01-21 03:37:49 +08:00
|
|
|
|
|
|
|
CFILES = ldctor.c ldemul.c ldexp.c ldfile.c ldlang.c \
|
|
|
|
ldmain.c ldmisc.c ldver.c ldwrite.c lexsup.c \
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
mri.c ldcref.c pe-dll.c pep-dll.c ldlex-wrapper.c \
|
|
|
|
$(PLUGIN_C)
|
2005-01-21 03:37:49 +08:00
|
|
|
|
|
|
|
HFILES = ld.h ldctor.h ldemul.h ldexp.h ldfile.h \
|
|
|
|
ldlang.h ldlex.h ldmain.h ldmisc.h ldver.h \
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
ldwrite.h mri.h deffile.h pe-dll.h pep-dll.h \
|
|
|
|
elf-hints-local.h $(PLUGIN_H)
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
GENERATED_CFILES = ldgram.c ldlex.c deffilep.c
|
|
|
|
GENERATED_HFILES = ldgram.h ldemul-list.h deffilep.h
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
|
|
|
|
# Require an early dependency on the generated headers, as the dependency
|
|
|
|
# tracking will not cause them to be built beforehand.
|
|
|
|
BUILT_SOURCES = $(GENERATED_HFILES)
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
OFILES = ldgram.@OBJEXT@ ldlex-wrapper.@OBJEXT@ lexsup.@OBJEXT@ ldlang.@OBJEXT@ \
|
|
|
|
mri.@OBJEXT@ ldctor.@OBJEXT@ ldmain.@OBJEXT@ $(PLUGIN_OBJECT) \
|
2010-05-25 22:02:38 +08:00
|
|
|
ldwrite.@OBJEXT@ ldexp.@OBJEXT@ ldemul.@OBJEXT@ ldver.@OBJEXT@ ldmisc.@OBJEXT@ \
|
|
|
|
ldfile.@OBJEXT@ ldcref.@OBJEXT@ ${EMULATION_OFILES} ${EMUL_EXTRA_OFILES}
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2010-05-25 22:02:38 +08:00
|
|
|
STAGESTUFF = *.@OBJEXT@ ldscripts/* e*.c
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
# At the moment this is just a list of those emulation template files
|
|
|
|
# that contain internationalised strings.
|
|
|
|
EMULATION_FILES = emultempl/pe.em emultempl/armcoff.em
|
|
|
|
POTFILES = $(CFILES) $(HFILES) $(EMULATION_FILES)
|
|
|
|
|
2003-10-30 17:47:15 +08:00
|
|
|
# These all start with e so 'make clean' can find them.
|
2010-12-15 22:56:40 +08:00
|
|
|
GENSCRIPTS = LIB_PATH='${LIB_PATH}' $(SHELL) $(srcdir)/genscripts.sh "${srcdir}" "${libdir}" "${prefix}" "${exec_prefix}" @host@ @target@ @target_alias@ "@EMULATION_LIBPATH@" "@NATIVE_LIB_DIRS@" @use_sysroot@ @enable_initfini_array@
|
1999-08-07 06:46:03 +08:00
|
|
|
GEN_DEPENDS = $(srcdir)/genscripts.sh stringify.sed
|
2006-06-20 10:22:16 +08:00
|
|
|
ELF_DEPS = $(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/elf-generic.em
|
2006-06-21 00:37:29 +08:00
|
|
|
ELF_GEN_DEPS = $(srcdir)/emultempl/generic.em $(srcdir)/emultempl/elf-generic.em $(srcdir)/emultempl/genelf.em
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2000-07-02 03:26:41 +08:00
|
|
|
# We need this for automake to use YLWRAP.
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
# Allow dependency tracking to work for these files, too.
|
|
|
|
|
|
|
|
# Dependency tracking for the generated emulation files.
|
2010-02-11 03:48:16 +08:00
|
|
|
EXTRA_ld_new_SOURCES = deffilep.y ldlex.l pep-dll.c pe-dll.c \
|
2010-10-06 12:58:34 +08:00
|
|
|
$(ALL_EMULATION_SOURCES) $(ALL_64_EMULATION_SOURCES)
|
2010-02-11 03:48:16 +08:00
|
|
|
ld_new_SOURCES = ldgram.y ldlex-wrapper.c lexsup.c ldlang.c mri.c ldctor.c ldmain.c \
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
ldwrite.c ldexp.c ldemul.c ldver.c ldmisc.c ldfile.c ldcref.c $(PLUGIN_C)
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2006-05-31 23:14:46 +08:00
|
|
|
ld_new_DEPENDENCIES = $(EMULATION_OFILES) $(EMUL_EXTRA_OFILES) $(BFDLIB) $(LIBIBERTY) $(LIBINTL_DEP)
|
|
|
|
ld_new_LDADD = $(EMULATION_OFILES) $(EMUL_EXTRA_OFILES) $(BFDLIB) $(LIBIBERTY) $(LIBINTL)
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
|
|
|
|
# A test program for C++ constructors and destructors.
|
|
|
|
# This test is now in the testsuite.
|
|
|
|
#
|
|
|
|
#cdtest: cdtest-main.@OBJEXT@ cdtest-bar.@OBJEXT@ cdtest-foo.@OBJEXT@ ld.new
|
|
|
|
# ./ld.new $(HOSTING_EMU) -o cdtest $(HOSTING_CRT0) \
|
|
|
|
# cdtest-main.@OBJEXT@ cdtest-bar.@OBJEXT@ cdtest-foo.@OBJEXT@ $(HOSTING_LIBS)
|
|
|
|
#
|
|
|
|
#cdtest.out: cdtest
|
|
|
|
# ./cdtest > cdtest.tmp
|
|
|
|
# mv cdtest.tmp cdtest.out
|
|
|
|
#
|
|
|
|
#cdtest-ur.@OBJEXT@: cdtest-main.@OBJEXT@ cdtest-bar.@OBJEXT@ cdtest-foo.@OBJEXT@ ld.new
|
|
|
|
# ./ld.new $(HOSTING_EMU) -o cdtest-ur.@OBJEXT@ -Ur cdtest-main.@OBJEXT@ \
|
|
|
|
# cdtest-bar.@OBJEXT@ cdtest-foo.@OBJEXT@
|
|
|
|
#
|
|
|
|
#cdtest-ur: cdtest-ur.@OBJEXT@
|
|
|
|
# ./ld.new $(HOSTING_EMU) -o cdtest-ur $(HOSTING_CRT0) cdtest-ur.@OBJEXT@ \
|
|
|
|
# $(HOSTING_LIBS)
|
|
|
|
#
|
|
|
|
#cdtest-ur.out: cdtest-ur
|
|
|
|
# ./cdtest-ur > cdtest-ur.tmp
|
|
|
|
# mv cdtest-ur.tmp cdtest-ur.out
|
|
|
|
#
|
|
|
|
#check-cdtest: cdtest.out cdtest-ur.out $(srcdir)/cdtest.exp
|
|
|
|
# diff $(srcdir)/cdtest.exp cdtest.out
|
|
|
|
# diff $(srcdir)/cdtest.exp cdtest-ur.out
|
|
|
|
#
|
|
|
|
#.PHONY: check-cdtest
|
|
|
|
|
|
|
|
# END OF CHECK TARGETS
|
|
|
|
|
|
|
|
#
|
|
|
|
# Build a dummy plugin using libtool.
|
|
|
|
#
|
|
|
|
@ENABLE_PLUGINS_TRUE@noinst_LTLIBRARIES = libldtestplug.la
|
|
|
|
@ENABLE_PLUGINS_TRUE@libldtestplug_la_SOURCES = testplug.c
|
|
|
|
@ENABLE_PLUGINS_TRUE@libldtestplug_la_CFLAGS = -g -O2
|
|
|
|
@ENABLE_PLUGINS_TRUE@libldtestplug_la_LDFLAGS = -no-undefined -rpath /nowhere
|
Cleanups in binutils makefiles.
ld/:
* Makefile.am (bin_PROGRAMS): Renamed from ...
(noinst_PROGRAMS): ... this.
(transform): Override, including the renaming of ld-new to ld.
(install-exec-local): Installation of ld in $(bindir) not needed
here any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(MAINTAINERCLEANFILES): Add ld.1.
* Makefile.in: Regenerate.
gold/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
(AM_CPPFLAGS): Renamed from ...
(INCLUDE): ... this.
* Makefile.in, testsuite/Makefile.in: Regenerate.
bfd/:
* Makefile.am (libbfd_la_LDFLAGS): Initialize early, to allow
appending.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES, bfdinclude_HEADERS): Set
only in this condition.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES, libbfd_la_LDFLAGS): New,
to build but not install libbfd.la in this condition.
(install-bfdlibLTLIBRARIES, uninstall-bfdlibLTLIBRARIES)
(install_libbfd, install_libbfd): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(bin2c$(EXEEXT_FOR_BUILD): Adjust rule.
(installcheck-local): Renamed from ...
(installcheck): ... this.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (YFLAGS): Remove, not needed any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
gprof/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (libopcodes_la_LDFLAGS): Initialize early.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES): Set only in this condition.
[INSTALL_LIBBFD] (bfdinclude_DATA): New.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES): New.
[!INSTALL_LIBBFD] (libopcodes_la_LDFLAGS): Ensure libopcodes.la
is built shared even if it is not to be installed.
(install-bfdlibLTLIBRARIES,uninstall-bfdlibLTLIBRARIES)
(install_libopcodes, uninstall_libopcodes): Remove.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
2009-08-23 03:02:57 +08:00
|
|
|
MAINTAINERCLEANFILES = configdoc.texi ld.1 ld.info
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
# We want to reconfigure if configure.host or configure.tgt changes. We
|
|
|
|
# extract version from bfd/configure.in, so we must depend on that also.
|
|
|
|
CONFIG_STATUS_DEPENDENCIES = $(srcdir)/configure.host $(srcdir)/configure.tgt \
|
|
|
|
$(srcdir)/../bfd/configure.in
|
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
(config.status): Delete rule.
Add extra dependencies to cover sourced emulparams files.
* Makefile.in: Regenerate.
* scripttempl/elf.sc: Order <section>, <section>.* and
corresponding linkonce sections as seen in input files.
Formatting fixes. Zero vma of all sections if not relocating.
(STACK): Define and insert if STACK_ADDR defined.
(OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
(OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
(OTHER_READWRITE_SECTIONS): Likewise.
(OTHER_GOT_SECTIONS): Likewise.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_BSS_SECTIONS): Likewise.
* scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise.
* scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise
* emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
(STACK_ADDR): Define.
* emulparams/armelf_oabi.sh: As for armelf.sh.
* emulparams/elf32mcore.sh: As for armelf.sh.
* emulparams/h8300elf.sh: As for armelf.sh.
* emulparams/mn10200.sh: As for armelf.sh.
* emulparams/shelf.sh: As for armelf.sh.
* emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
* emulparams/m32relf.sh: As for elf32fr30.sh.
* emulparams/h8300helf.sh: As for elf32fr30.sh.
* emulparams/h8300self.sh: As for elf32fr30.sh.
* emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
defines with RELOCATING test.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_END_SYMBOLS): ..this.
* emulparams/crislinux.sh: As for criself.sh.
* emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
if not relocating.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
normal and linkonce sections as seen in input files.
* emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
(TEXT_DYNAMIC): Likewise.
(INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
(OTHER_SDATA_SECTIONS): Likewise.
* emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
(OTHER_PLT_RELOC_SECTIONS): Likewise.
(OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
sections as seen in input files.
* emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
* emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
if not relocating.
(OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
(OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
* emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_SECTIONS): Instead, use this..
(OTHER_END_SYMBOLS): ..and this.
* emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
* emulparams/elf32bsmip.sh: Likewise.
* emulparams/elf32btsmip.sh: Likewise.
* emulparams/elf32ebmip.sh: Likewise.
* emulparams/elf32lmip.sh: Likewise.
* emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
* emulparams/elf32lsmip.sh: Likewise.
* emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
* emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
* emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
* emulparams/elf64btsmip.sh: Likewise.
* emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
* emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
* emulparams/elf32ppclinux.sh: Likewise.
* emulparams/elf32ppcsim.sh: Likewise.
* emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
* emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
* emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
* emulparams/h8300self.sh: Likewise.
* emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
* emulparams/sh.sh: Comment.
* emulparams/shl.sh: Source sh.sh, remove duplicates.
* emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
* emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
2001-11-22 17:08:05 +08:00
|
|
|
|
2005-01-21 03:37:49 +08:00
|
|
|
MOSTLYCLEANFILES = $(STAGESTUFF) ld1$(EXEEXT) ld2$(EXEEXT) ld3$(EXEEXT) \
|
2010-05-25 22:02:38 +08:00
|
|
|
ldemul-list.h crtbegin.@OBJEXT@ crtend.@OBJEXT@ ld.log ld.sum
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2010-05-25 22:02:38 +08:00
|
|
|
CLEANFILES = dep.sed DEP DEPA DEP1 DEP2 spu_ovl.s spu_ovl.@OBJEXT@ spu_icache.s spu_icache.@OBJEXT@
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
# Stuff that should be included in a distribution. The diststuff
|
|
|
|
# target is run by the taz target in ../Makefile.in.
|
2010-05-25 22:02:38 +08:00
|
|
|
EXTRA_DIST = ldgram.c ldgram.h ldlex.c emultempl/spu_ovl.@OBJEXT@_c \
|
|
|
|
emultempl/spu_icache.@OBJEXT@_c deffilep.c deffilep.h $(man_MANS)
|
2008-12-23 21:52:58 +08:00
|
|
|
|
2006-12-11 23:09:46 +08:00
|
|
|
DISTCLEANFILES = tdirs site.exp site.bak stringify.sed $(am__append_1)
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
all: $(BUILT_SOURCES) config.h
|
2005-05-16 02:19:45 +08:00
|
|
|
$(MAKE) $(AM_MAKEFLAGS) all-recursive
|
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
(config.status): Delete rule.
Add extra dependencies to cover sourced emulparams files.
* Makefile.in: Regenerate.
* scripttempl/elf.sc: Order <section>, <section>.* and
corresponding linkonce sections as seen in input files.
Formatting fixes. Zero vma of all sections if not relocating.
(STACK): Define and insert if STACK_ADDR defined.
(OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
(OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
(OTHER_READWRITE_SECTIONS): Likewise.
(OTHER_GOT_SECTIONS): Likewise.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_BSS_SECTIONS): Likewise.
* scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise.
* scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise
* emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
(STACK_ADDR): Define.
* emulparams/armelf_oabi.sh: As for armelf.sh.
* emulparams/elf32mcore.sh: As for armelf.sh.
* emulparams/h8300elf.sh: As for armelf.sh.
* emulparams/mn10200.sh: As for armelf.sh.
* emulparams/shelf.sh: As for armelf.sh.
* emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
* emulparams/m32relf.sh: As for elf32fr30.sh.
* emulparams/h8300helf.sh: As for elf32fr30.sh.
* emulparams/h8300self.sh: As for elf32fr30.sh.
* emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
defines with RELOCATING test.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_END_SYMBOLS): ..this.
* emulparams/crislinux.sh: As for criself.sh.
* emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
if not relocating.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
normal and linkonce sections as seen in input files.
* emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
(TEXT_DYNAMIC): Likewise.
(INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
(OTHER_SDATA_SECTIONS): Likewise.
* emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
(OTHER_PLT_RELOC_SECTIONS): Likewise.
(OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
sections as seen in input files.
* emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
* emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
if not relocating.
(OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
(OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
* emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_SECTIONS): Instead, use this..
(OTHER_END_SYMBOLS): ..and this.
* emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
* emulparams/elf32bsmip.sh: Likewise.
* emulparams/elf32btsmip.sh: Likewise.
* emulparams/elf32ebmip.sh: Likewise.
* emulparams/elf32lmip.sh: Likewise.
* emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
* emulparams/elf32lsmip.sh: Likewise.
* emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
* emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
* emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
* emulparams/elf64btsmip.sh: Likewise.
* emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
* emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
* emulparams/elf32ppclinux.sh: Likewise.
* emulparams/elf32ppcsim.sh: Likewise.
* emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
* emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
* emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
* emulparams/h8300self.sh: Likewise.
* emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
* emulparams/sh.sh: Comment.
* emulparams/shl.sh: Source sh.sh, remove duplicates.
* emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
* emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
2001-11-22 17:08:05 +08:00
|
|
|
|
2003-10-30 17:47:15 +08:00
|
|
|
.SUFFIXES:
|
2006-12-11 23:09:46 +08:00
|
|
|
.SUFFIXES: .c .dvi .l .lo .o .obj .ps .y
|
2005-05-16 02:19:45 +08:00
|
|
|
am--refresh:
|
|
|
|
@:
|
|
|
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
|
|
|
@for dep in $?; do \
|
|
|
|
case '$(am__configure_deps)' in \
|
|
|
|
*$$dep*) \
|
2009-08-23 00:56:56 +08:00
|
|
|
echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
|
|
|
|
$(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
|
2005-05-16 02:19:45 +08:00
|
|
|
&& exit 0; \
|
|
|
|
exit 1;; \
|
|
|
|
esac; \
|
|
|
|
done; \
|
2009-08-23 00:56:56 +08:00
|
|
|
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
|
|
|
|
$(am__cd) $(top_srcdir) && \
|
|
|
|
$(AUTOMAKE) --foreign Makefile
|
2005-05-16 02:19:45 +08:00
|
|
|
.PRECIOUS: Makefile
|
|
|
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
|
|
|
@case '$?' in \
|
|
|
|
*config.status*) \
|
|
|
|
echo ' $(SHELL) ./config.status'; \
|
|
|
|
$(SHELL) ./config.status;; \
|
|
|
|
*) \
|
|
|
|
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
|
|
|
|
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
|
|
|
|
esac;
|
|
|
|
|
|
|
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
(config.status): Delete rule.
Add extra dependencies to cover sourced emulparams files.
* Makefile.in: Regenerate.
* scripttempl/elf.sc: Order <section>, <section>.* and
corresponding linkonce sections as seen in input files.
Formatting fixes. Zero vma of all sections if not relocating.
(STACK): Define and insert if STACK_ADDR defined.
(OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
(OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
(OTHER_READWRITE_SECTIONS): Likewise.
(OTHER_GOT_SECTIONS): Likewise.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_BSS_SECTIONS): Likewise.
* scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise.
* scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise
* emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
(STACK_ADDR): Define.
* emulparams/armelf_oabi.sh: As for armelf.sh.
* emulparams/elf32mcore.sh: As for armelf.sh.
* emulparams/h8300elf.sh: As for armelf.sh.
* emulparams/mn10200.sh: As for armelf.sh.
* emulparams/shelf.sh: As for armelf.sh.
* emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
* emulparams/m32relf.sh: As for elf32fr30.sh.
* emulparams/h8300helf.sh: As for elf32fr30.sh.
* emulparams/h8300self.sh: As for elf32fr30.sh.
* emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
defines with RELOCATING test.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_END_SYMBOLS): ..this.
* emulparams/crislinux.sh: As for criself.sh.
* emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
if not relocating.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
normal and linkonce sections as seen in input files.
* emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
(TEXT_DYNAMIC): Likewise.
(INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
(OTHER_SDATA_SECTIONS): Likewise.
* emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
(OTHER_PLT_RELOC_SECTIONS): Likewise.
(OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
sections as seen in input files.
* emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
* emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
if not relocating.
(OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
(OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
* emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_SECTIONS): Instead, use this..
(OTHER_END_SYMBOLS): ..and this.
* emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
* emulparams/elf32bsmip.sh: Likewise.
* emulparams/elf32btsmip.sh: Likewise.
* emulparams/elf32ebmip.sh: Likewise.
* emulparams/elf32lmip.sh: Likewise.
* emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
* emulparams/elf32lsmip.sh: Likewise.
* emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
* emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
* emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
* emulparams/elf64btsmip.sh: Likewise.
* emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
* emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
* emulparams/elf32ppclinux.sh: Likewise.
* emulparams/elf32ppcsim.sh: Likewise.
* emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
* emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
* emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
* emulparams/h8300self.sh: Likewise.
* emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
* emulparams/sh.sh: Comment.
* emulparams/shl.sh: Source sh.sh, remove duplicates.
* emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
* emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
2001-11-22 17:08:05 +08:00
|
|
|
$(SHELL) ./config.status --recheck
|
2005-05-16 02:19:45 +08:00
|
|
|
|
|
|
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
2009-08-23 00:56:56 +08:00
|
|
|
$(am__cd) $(srcdir) && $(AUTOCONF)
|
2005-05-16 02:19:45 +08:00
|
|
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
2009-08-23 00:56:56 +08:00
|
|
|
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
|
|
|
|
$(am__aclocal_m4_deps):
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
config.h: stamp-h1
|
1999-05-03 15:29:11 +08:00
|
|
|
@if test ! -f $@; then \
|
2005-05-16 02:19:45 +08:00
|
|
|
rm -f stamp-h1; \
|
2009-08-23 00:56:56 +08:00
|
|
|
$(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
|
1999-05-03 15:29:11 +08:00
|
|
|
else :; fi
|
2001-11-23 02:49:12 +08:00
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
stamp-h1: $(srcdir)/config.in $(top_builddir)/config.status
|
|
|
|
@rm -f stamp-h1
|
|
|
|
cd $(top_builddir) && $(SHELL) ./config.status config.h
|
|
|
|
$(srcdir)/config.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
2009-08-23 00:56:56 +08:00
|
|
|
($(am__cd) $(top_srcdir) && $(AUTOHEADER))
|
2005-05-16 02:19:45 +08:00
|
|
|
rm -f stamp-h1
|
|
|
|
touch $@
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
distclean-hdr:
|
2005-05-16 02:19:45 +08:00
|
|
|
-rm -f config.h stamp-h1
|
|
|
|
po/Makefile.in: $(top_builddir)/config.status $(top_srcdir)/po/Make-in
|
|
|
|
cd $(top_builddir) && $(SHELL) ./config.status $@
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
|
|
|
|
clean-noinstLTLIBRARIES:
|
|
|
|
-test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
|
|
|
|
@list='$(noinst_LTLIBRARIES)'; for p in $$list; do \
|
|
|
|
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
|
|
|
test "$$dir" != "$$p" || dir=.; \
|
|
|
|
echo "rm -f \"$${dir}/so_locations\""; \
|
|
|
|
rm -f "$${dir}/so_locations"; \
|
|
|
|
done
|
|
|
|
libldtestplug.la: $(libldtestplug_la_OBJECTS) $(libldtestplug_la_DEPENDENCIES)
|
|
|
|
$(libldtestplug_la_LINK) $(am_libldtestplug_la_rpath) $(libldtestplug_la_OBJECTS) $(libldtestplug_la_LIBADD) $(LIBS)
|
Cleanups in binutils makefiles.
ld/:
* Makefile.am (bin_PROGRAMS): Renamed from ...
(noinst_PROGRAMS): ... this.
(transform): Override, including the renaming of ld-new to ld.
(install-exec-local): Installation of ld in $(bindir) not needed
here any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(MAINTAINERCLEANFILES): Add ld.1.
* Makefile.in: Regenerate.
gold/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
(AM_CPPFLAGS): Renamed from ...
(INCLUDE): ... this.
* Makefile.in, testsuite/Makefile.in: Regenerate.
bfd/:
* Makefile.am (libbfd_la_LDFLAGS): Initialize early, to allow
appending.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES, bfdinclude_HEADERS): Set
only in this condition.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES, libbfd_la_LDFLAGS): New,
to build but not install libbfd.la in this condition.
(install-bfdlibLTLIBRARIES, uninstall-bfdlibLTLIBRARIES)
(install_libbfd, install_libbfd): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(bin2c$(EXEEXT_FOR_BUILD): Adjust rule.
(installcheck-local): Renamed from ...
(installcheck): ... this.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (YFLAGS): Remove, not needed any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
gprof/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (libopcodes_la_LDFLAGS): Initialize early.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES): Set only in this condition.
[INSTALL_LIBBFD] (bfdinclude_DATA): New.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES): New.
[!INSTALL_LIBBFD] (libopcodes_la_LDFLAGS): Ensure libopcodes.la
is built shared even if it is not to be installed.
(install-bfdlibLTLIBRARIES,uninstall-bfdlibLTLIBRARIES)
(install_libopcodes, uninstall_libopcodes): Remove.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
2009-08-23 03:02:57 +08:00
|
|
|
install-binPROGRAMS: $(bin_PROGRAMS)
|
|
|
|
@$(NORMAL_INSTALL)
|
|
|
|
test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
|
|
|
|
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
|
|
|
|
for p in $$list; do echo "$$p $$p"; done | \
|
|
|
|
sed 's/$(EXEEXT)$$//' | \
|
|
|
|
while read p p1; do if test -f $$p || test -f $$p1; \
|
|
|
|
then echo "$$p"; echo "$$p"; else :; fi; \
|
|
|
|
done | \
|
|
|
|
sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
|
|
|
|
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
|
|
|
|
sed 'N;N;N;s,\n, ,g' | \
|
|
|
|
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
|
|
|
|
{ d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
|
|
|
|
if ($$2 == $$4) files[d] = files[d] " " $$1; \
|
|
|
|
else { print "f", $$3 "/" $$4, $$1; } } \
|
|
|
|
END { for (d in files) print "f", d, files[d] }' | \
|
|
|
|
while read type dir files; do \
|
|
|
|
if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
|
|
|
|
test -z "$$files" || { \
|
|
|
|
echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
|
|
|
|
$(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
|
|
|
|
} \
|
|
|
|
; done
|
|
|
|
|
|
|
|
uninstall-binPROGRAMS:
|
|
|
|
@$(NORMAL_UNINSTALL)
|
|
|
|
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
|
|
|
|
files=`for p in $$list; do echo "$$p"; done | \
|
|
|
|
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
|
|
|
|
-e 's/$$/$(EXEEXT)/' `; \
|
|
|
|
test -n "$$list" || exit 0; \
|
|
|
|
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
|
|
|
|
cd "$(DESTDIR)$(bindir)" && rm -f $$files
|
|
|
|
|
|
|
|
clean-binPROGRAMS:
|
|
|
|
@list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \
|
2009-08-23 00:56:56 +08:00
|
|
|
echo " rm -f" $$list; \
|
|
|
|
rm -f $$list || exit $$?; \
|
|
|
|
test -n "$(EXEEXT)" || exit 0; \
|
|
|
|
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
|
|
|
|
echo " rm -f" $$list; \
|
|
|
|
rm -f $$list
|
2005-05-16 02:19:45 +08:00
|
|
|
ldgram.h: ldgram.c
|
|
|
|
@if test ! -f $@; then \
|
|
|
|
rm -f ldgram.c; \
|
2009-08-23 00:56:56 +08:00
|
|
|
$(MAKE) $(AM_MAKEFLAGS) ldgram.c; \
|
2005-05-16 02:19:45 +08:00
|
|
|
else :; fi
|
|
|
|
deffilep.h: deffilep.c
|
|
|
|
@if test ! -f $@; then \
|
|
|
|
rm -f deffilep.c; \
|
2009-08-23 00:56:56 +08:00
|
|
|
$(MAKE) $(AM_MAKEFLAGS) deffilep.c; \
|
2005-05-16 02:19:45 +08:00
|
|
|
else :; fi
|
|
|
|
ld-new$(EXEEXT): $(ld_new_OBJECTS) $(ld_new_DEPENDENCIES)
|
|
|
|
@rm -f ld-new$(EXEEXT)
|
2009-08-23 00:56:56 +08:00
|
|
|
$(LINK) $(ld_new_OBJECTS) $(ld_new_LDADD) $(LIBS)
|
2003-10-30 17:56:26 +08:00
|
|
|
|
|
|
|
mostlyclean-compile:
|
|
|
|
-rm -f *.$(OBJEXT)
|
|
|
|
|
|
|
|
distclean-compile:
|
|
|
|
-rm -f *.tab.c
|
|
|
|
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/deffilep.Po@am__quote@
|
2011-01-14 10:03:42 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaix5ppc.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaix5rs6.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaixppc.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaixrs6.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ealpha.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ealphavms.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earcelf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earm_epoc_pe.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earm_wince_pe.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmaoutb.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmaoutl.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmcoff.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_fbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_linux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_linux_eabi.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_nbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_vxworks.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelfb.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelfb_linux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelfb_linux_eabi.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelfb_nbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmnbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmnto.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmpe.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmsymbian.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eavr1.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eavr2.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eavr25.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eavr3.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eavr31.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eavr35.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eavr4.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eavr5.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eavr51.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eavr6.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ecoff_i860.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ecoff_sparc.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ecrisaout.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ecriself.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ecrislinux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ed10velf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ed30v_e.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ed30v_o.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ed30velf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/edelta68.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32_dlx.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32_i860.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32_i960.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32_sparc.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32_sparc_sol2.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32_sparc_vxworks.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32_spu.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32_tic6x_be.Po@am__quote@
|
ld/
(eelf32_tic6x_linux_be.c, eelf32_tic6x_linux_le.c,
eelf32_tic6x_elf_be.c, eelf32_tic6x_elf_le.c): New rules.
* Makefile.am (ALL_EMULATIONS): Add these files.
(eelf32_tic6x_be.c, eelf32_tic6x_le.c): Depend on tic6xdsbt.em.
* Makefile.in: Regenerated.
* emultempl/tic6xdsbt.em (is_tic6x_target): Allow more tic6x target
vectors.
* emulparams/elf32_tic6x_elf_be.sh: New file.
* emulparams/elf32_tic6x_elf_le.sh: New file.
* emulparams/elf32_tic6x_linux_be.sh: New file.
* emulparams/elf32_tic6x_linux_le.sh: New file.
* configure.tgt (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
ld/testsuite/
* ld-tic6x/dsbt.ld (OUTPUT_FORMAT): Add.
* ld-tic6x/tic6x.exp: Add OSABI tests.
bfd/
* config.bfd (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
* elf32-tic6x.c (elf32_tic6x_set_osabi): New static function.
(elf32_tic6x_check_relocs): Create dynamic sections if -shared.
(elf_backend_relocs_compatible, elf_backend_post_process_headers):
Define.
(elf32_bed, TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, TARGET_BIG_SYM,
TARGET_BIG_NAME, ELF_OSABI): Redefine twice, and include
"elf32-target.h" two more times.
* configure.in: Handle bfd_elf32_tic6x_linux_be_vec,
bfd_elf32_tic6x_linux_le_vec, bfd_elf32_tic6x_elf_be_vec and
bfd_elf32_tic6x_elf_le_vec.
* configure: Regenerate.
2011-05-14 02:15:33 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32_tic6x_elf_be.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32_tic6x_elf_le.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32_tic6x_le.Po@am__quote@
|
ld/
(eelf32_tic6x_linux_be.c, eelf32_tic6x_linux_le.c,
eelf32_tic6x_elf_be.c, eelf32_tic6x_elf_le.c): New rules.
* Makefile.am (ALL_EMULATIONS): Add these files.
(eelf32_tic6x_be.c, eelf32_tic6x_le.c): Depend on tic6xdsbt.em.
* Makefile.in: Regenerated.
* emultempl/tic6xdsbt.em (is_tic6x_target): Allow more tic6x target
vectors.
* emulparams/elf32_tic6x_elf_be.sh: New file.
* emulparams/elf32_tic6x_elf_le.sh: New file.
* emulparams/elf32_tic6x_linux_be.sh: New file.
* emulparams/elf32_tic6x_linux_le.sh: New file.
* configure.tgt (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
ld/testsuite/
* ld-tic6x/dsbt.ld (OUTPUT_FORMAT): Add.
* ld-tic6x/tic6x.exp: Add OSABI tests.
bfd/
* config.bfd (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
* elf32-tic6x.c (elf32_tic6x_set_osabi): New static function.
(elf32_tic6x_check_relocs): Create dynamic sections if -shared.
(elf_backend_relocs_compatible, elf_backend_post_process_headers):
Define.
(elf32_bed, TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, TARGET_BIG_SYM,
TARGET_BIG_NAME, ELF_OSABI): Redefine twice, and include
"elf32-target.h" two more times.
* configure.in: Handle bfd_elf32_tic6x_linux_be_vec,
bfd_elf32_tic6x_linux_le_vec, bfd_elf32_tic6x_elf_be_vec and
bfd_elf32_tic6x_elf_le_vec.
* configure: Regenerate.
2011-05-14 02:15:33 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32_tic6x_linux_be.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32_tic6x_linux_le.Po@am__quote@
|
2010-12-31 08:33:36 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32_x86_64.Po@am__quote@
|
2011-06-03 18:36:39 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32am33lin.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32b4300.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32bfin.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32bfinfd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32bmip.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32bmipn32.Po@am__quote@
|
2011-01-14 10:03:42 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32bsmip.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32btsmip.Po@am__quote@
|
bfd/
2010-12-23 Robert Millan <rmh@gnu.org>
* config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.host: Likewise.
* configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
* configure: Regenerate.
* elf32-mips.c: New target for FreeBSD support
(same as traditional MIPS but overrides ELF_OSABI
with ELFOSABI_FREEBSD).
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.
* targets.c (_bfd_target_vector): Add
`bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
ld/
2010-12-14 Robert Millan <rmh@gnu.org>
* configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu.
* emulparams/elf32btsmip_fbsd.sh: New file.
* emulparams/elf32btsmipn32_fbsd.sh: Likewise.
* emulparams/elf32ltsmip_fbsd.sh: Likewise.
* emulparams/elf32ltsmipn32_fbsd.sh: Likewise.
* emulparams/elf64btsmip_fbsd.sh: Likewise.
* emulparams/elf64ltsmip_fbsd.sh: Likewise.
* Makefile.am: Add build rules for `eelf32btsmip_fbsd.c',
`eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c',
`eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and
`eelf64ltsmip_fbsd.c'.
* Makefile.in: Regenerate.
gas/
2010-12-19 Robert Millan <rmh@gnu.org>
Richard Sandiford <rdsandiford@googlemail.com>
* config/tc-mips.c (ELF_TARGET): New macro. Generates target
names accordingly to whether TE_FreeBSD and whether TE_TMIPS
are defined.
(mips_target_format): Refactor code using ELF_TARGET().
(support_64bit_objects): Likewise.
* configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.tgt: Likewise.
* configure: Regenerate.
binutils/testsuite/
* binutils-all/readelf.exp: Handle MIPS FreeBSD targets.
gas/testsuite/
* gas/mips/e32el-rel2.d: Accept any file format.
* gas/mips/elf-rel.d: Likewise.
* gas/mips/elf-rel2.d: Likewise.
* gas/mips/elf-rel3.d: Likewise.
* gas/mips/elfel-rel.d: Likewise.
* gas/mips/elfel-rel2.d: Likewise.
* gas/mips/elfel-rel3.d: Likewise.
* gas/mips/ldstla-32-mips3-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: Likewise.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/noat-1.d: Likewise.
* gas/mips/set-arch.d: Likewise.
* gas/mips/tls-o32.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets.
* ld-mips-elf/mips-elf.exp: Likewise.
* ld-mips-elf/mips16-call-global.d: Accept any file format.
* ld-mips-elf/mips16-intermix.d: Likewise.
2010-12-31 19:01:00 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32btsmip_fbsd.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32btsmipn32.Po@am__quote@
|
bfd/
2010-12-23 Robert Millan <rmh@gnu.org>
* config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.host: Likewise.
* configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
* configure: Regenerate.
* elf32-mips.c: New target for FreeBSD support
(same as traditional MIPS but overrides ELF_OSABI
with ELFOSABI_FREEBSD).
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.
* targets.c (_bfd_target_vector): Add
`bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
ld/
2010-12-14 Robert Millan <rmh@gnu.org>
* configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu.
* emulparams/elf32btsmip_fbsd.sh: New file.
* emulparams/elf32btsmipn32_fbsd.sh: Likewise.
* emulparams/elf32ltsmip_fbsd.sh: Likewise.
* emulparams/elf32ltsmipn32_fbsd.sh: Likewise.
* emulparams/elf64btsmip_fbsd.sh: Likewise.
* emulparams/elf64ltsmip_fbsd.sh: Likewise.
* Makefile.am: Add build rules for `eelf32btsmip_fbsd.c',
`eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c',
`eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and
`eelf64ltsmip_fbsd.c'.
* Makefile.in: Regenerate.
gas/
2010-12-19 Robert Millan <rmh@gnu.org>
Richard Sandiford <rdsandiford@googlemail.com>
* config/tc-mips.c (ELF_TARGET): New macro. Generates target
names accordingly to whether TE_FreeBSD and whether TE_TMIPS
are defined.
(mips_target_format): Refactor code using ELF_TARGET().
(support_64bit_objects): Likewise.
* configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.tgt: Likewise.
* configure: Regenerate.
binutils/testsuite/
* binutils-all/readelf.exp: Handle MIPS FreeBSD targets.
gas/testsuite/
* gas/mips/e32el-rel2.d: Accept any file format.
* gas/mips/elf-rel.d: Likewise.
* gas/mips/elf-rel2.d: Likewise.
* gas/mips/elf-rel3.d: Likewise.
* gas/mips/elfel-rel.d: Likewise.
* gas/mips/elfel-rel2.d: Likewise.
* gas/mips/elfel-rel3.d: Likewise.
* gas/mips/ldstla-32-mips3-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: Likewise.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/noat-1.d: Likewise.
* gas/mips/set-arch.d: Likewise.
* gas/mips/tls-o32.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets.
* ld-mips-elf/mips-elf.exp: Likewise.
* ld-mips-elf/mips16-call-global.d: Accept any file format.
* ld-mips-elf/mips16-intermix.d: Likewise.
2010-12-31 19:01:00 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32btsmipn32_fbsd.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32cr16.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32cr16c.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32crx.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ebmip.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ebmipvxworks.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32elmip.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32elmipvxworks.Po@am__quote@
|
bfd:
* Makefile.am (ALL_MACHINES): Add cpu-epiphany.lo .
(ALL_MACHINES_CFILES): Add cpu-epiphany.c .
(BFD32_BACKENDS): Add elf32-epiphany.lo .
(BFD32_BACKENDS_CFILES): Add elf32-epiphany.c .
* Makefile.in, bfd-in2.h, configure, libbfd.h: Regenerate.
* archures.c (bfd_arch_epiphany): Add.
(bfd_mach_epiphany16, bfd_mach_epiphany32): Define.
(bfd_epiphany_arch): Declare.
(bfd_archures_list): Add &bfd_epiphany_arch.
* config.bfd (epiphany-*-elf): New target case.
* configure.in (bfd_elf32_epiphany_vec): New target vector case.
* reloc.c (BFD_RELOC_EPIPHANY_SIMM8): New relocation.
(BFD_RELOC_EPIPHANY_SIMM24, BFD_RELOC_EPIPHANY_HIGH): Likewise.
(BFD_RELOC_EPIPHANY_LOW, BFD_RELOC_EPIPHANY_SIMM11): Likewise.
(BFD_RELOC_EPIPHANY_IMM11, BFD_RELOC_EPIPHANY_IMM8): Likewise.
* targets.c (bfd_elf32_epiphany_vec): Declare.
(_bfd_target_vector): Add bfd_elf32_epiphany_vec.
* po/SRC-POTFILES.in, po/bfd.pot: Regenerate.
* cpu-epiphany.c, elf32-epiphany.c: New files.
binutils:
* readelf.c (include "elf/epiphany.h")
(guess_is_rela, dump_relocation): Handle EM_ADAPTEVA_EPIPHANY.
(get_machine_name, is_32bit_abs_reloc, is_32bit_pcrel_reloc): Likewise.
(is_16bit_abs_reloc, is_none_reloc): Likewise.
* po/binutils.pot: Regenerate.
cpu:
* cpu/epiphany.cpu, cpu/epiphany.opc: New files.
gas:
* NEWS: Mention addition of Adapteva Epiphany support.
* config/tc-epiphany.c, config/tc-epiphany.h: New files.
* Makefile.am (TARGET_CPU_CFILES): Add config/tc-epiphany.c .
(TARGET_CPU_HFILES): Add config/tc-epiphany.h .
* Makefile.in, configure, doc/Makefile.in, po/POTFILES.in: Regenerate.
* configure.in: Also set using_cgen for epiphany.
* configure.tgt: Handle epiphany.
* doc/Makefile.am (CPU_DOCS): Add c-epiphany.texi .
* doc/all.texi: Set EPIPHANY.
* doc/as.texinfo: Add EPIPHANY-specific text.
* doc/c-epiphany.texi: New file.
* po/gas.pot: Regenerate.
gas/testsuite:
* gas/epiphany: New directory.
include:
* dis-asm.h (print_insn_epiphany): Declare.
* elf/epiphany.h: New file.
* elf/common.h (EM_ADAPTEVA_EPIPHANY): Define.
ld:
* NEWS: Mention addition of Adapteva Epiphany support.
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32epiphany.c .
(eelf32epiphany.c): New rule.
* Makefile.in: Regenerate.
* configure.tgt: Handle epiphany-*-elf.
* po/ld.pot: Regenerate.
* testsuite/ld-srec/srec.exp: xfail epiphany.
* emulparams/elf32epiphany.sh: New file.
opcodes:
* Makefile.am (HFILES): Add epiphany-desc.h and epiphany-opc.h .
(TARGET_LIBOPCODES_CFILES): Add epiphany-asm.c, epiphany-desc.c,
epiphany-dis.c, epiphany-ibld.c and epiphany-opc.c .
(CLEANFILES): Add stamp-epiphany.
(EPIPHANY_DEPS): Set. Make CGEN-generated Epiphany files depend on it.
(stamp-epiphany): New rule.
* Makefile.in, configure, po/POTFILES.in, po/opcodes.pot: Regenerate.
* configure.in: Handle bfd_epiphany_arch.
* disassemble.c (ARCH_epiphany): Define.
(disassembler): Handle bfd_arch_epiphany.
* epiphany-asm.c, epiphany-desc.c, epiphany-desc.h: New files.
* epiphany-dis.c, epiphany-ibld.c, epiphany-opc.c: Likewise.
* epiphany-opc.h: Likewise.
2011-10-25 19:18:16 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32epiphany.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32fr30.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32frv.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32frvfd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32i370.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ip2k.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32iq10.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32iq2000.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32l4300.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32lm32.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32lm32fd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32lmip.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32lppc.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32lppcnto.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32lppcsim.Po@am__quote@
|
2011-01-14 10:03:42 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32lsmip.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ltsmip.Po@am__quote@
|
bfd/
2010-12-23 Robert Millan <rmh@gnu.org>
* config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.host: Likewise.
* configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
* configure: Regenerate.
* elf32-mips.c: New target for FreeBSD support
(same as traditional MIPS but overrides ELF_OSABI
with ELFOSABI_FREEBSD).
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.
* targets.c (_bfd_target_vector): Add
`bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
ld/
2010-12-14 Robert Millan <rmh@gnu.org>
* configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu.
* emulparams/elf32btsmip_fbsd.sh: New file.
* emulparams/elf32btsmipn32_fbsd.sh: Likewise.
* emulparams/elf32ltsmip_fbsd.sh: Likewise.
* emulparams/elf32ltsmipn32_fbsd.sh: Likewise.
* emulparams/elf64btsmip_fbsd.sh: Likewise.
* emulparams/elf64ltsmip_fbsd.sh: Likewise.
* Makefile.am: Add build rules for `eelf32btsmip_fbsd.c',
`eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c',
`eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and
`eelf64ltsmip_fbsd.c'.
* Makefile.in: Regenerate.
gas/
2010-12-19 Robert Millan <rmh@gnu.org>
Richard Sandiford <rdsandiford@googlemail.com>
* config/tc-mips.c (ELF_TARGET): New macro. Generates target
names accordingly to whether TE_FreeBSD and whether TE_TMIPS
are defined.
(mips_target_format): Refactor code using ELF_TARGET().
(support_64bit_objects): Likewise.
* configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.tgt: Likewise.
* configure: Regenerate.
binutils/testsuite/
* binutils-all/readelf.exp: Handle MIPS FreeBSD targets.
gas/testsuite/
* gas/mips/e32el-rel2.d: Accept any file format.
* gas/mips/elf-rel.d: Likewise.
* gas/mips/elf-rel2.d: Likewise.
* gas/mips/elf-rel3.d: Likewise.
* gas/mips/elfel-rel.d: Likewise.
* gas/mips/elfel-rel2.d: Likewise.
* gas/mips/elfel-rel3.d: Likewise.
* gas/mips/ldstla-32-mips3-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: Likewise.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/noat-1.d: Likewise.
* gas/mips/set-arch.d: Likewise.
* gas/mips/tls-o32.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets.
* ld-mips-elf/mips-elf.exp: Likewise.
* ld-mips-elf/mips16-call-global.d: Accept any file format.
* ld-mips-elf/mips16-intermix.d: Likewise.
2010-12-31 19:01:00 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ltsmip_fbsd.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ltsmipn32.Po@am__quote@
|
bfd/
2010-12-23 Robert Millan <rmh@gnu.org>
* config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.host: Likewise.
* configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
* configure: Regenerate.
* elf32-mips.c: New target for FreeBSD support
(same as traditional MIPS but overrides ELF_OSABI
with ELFOSABI_FREEBSD).
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.
* targets.c (_bfd_target_vector): Add
`bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
ld/
2010-12-14 Robert Millan <rmh@gnu.org>
* configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu.
* emulparams/elf32btsmip_fbsd.sh: New file.
* emulparams/elf32btsmipn32_fbsd.sh: Likewise.
* emulparams/elf32ltsmip_fbsd.sh: Likewise.
* emulparams/elf32ltsmipn32_fbsd.sh: Likewise.
* emulparams/elf64btsmip_fbsd.sh: Likewise.
* emulparams/elf64ltsmip_fbsd.sh: Likewise.
* Makefile.am: Add build rules for `eelf32btsmip_fbsd.c',
`eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c',
`eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and
`eelf64ltsmip_fbsd.c'.
* Makefile.in: Regenerate.
gas/
2010-12-19 Robert Millan <rmh@gnu.org>
Richard Sandiford <rdsandiford@googlemail.com>
* config/tc-mips.c (ELF_TARGET): New macro. Generates target
names accordingly to whether TE_FreeBSD and whether TE_TMIPS
are defined.
(mips_target_format): Refactor code using ELF_TARGET().
(support_64bit_objects): Likewise.
* configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.tgt: Likewise.
* configure: Regenerate.
binutils/testsuite/
* binutils-all/readelf.exp: Handle MIPS FreeBSD targets.
gas/testsuite/
* gas/mips/e32el-rel2.d: Accept any file format.
* gas/mips/elf-rel.d: Likewise.
* gas/mips/elf-rel2.d: Likewise.
* gas/mips/elf-rel3.d: Likewise.
* gas/mips/elfel-rel.d: Likewise.
* gas/mips/elfel-rel2.d: Likewise.
* gas/mips/elfel-rel3.d: Likewise.
* gas/mips/ldstla-32-mips3-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: Likewise.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/noat-1.d: Likewise.
* gas/mips/set-arch.d: Likewise.
* gas/mips/tls-o32.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets.
* ld-mips-elf/mips-elf.exp: Likewise.
* ld-mips-elf/mips16-call-global.d: Accept any file format.
* ld-mips-elf/mips16-intermix.d: Likewise.
2010-12-31 19:01:00 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ltsmipn32_fbsd.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32m32c.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32mb_linux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32mcore.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32mep.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32microblaze.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32mipswindiss.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32moxie.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32mt.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32openrisc.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ppc.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ppc_fbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ppclinux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ppcnto.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ppcsim.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ppcvxworks.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32ppcwindiss.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32rx.Po@am__quote@
|
2011-07-15 09:45:50 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32tilegx.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32tilepro.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32vax.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32xc16x.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32xc16xl.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32xc16xs.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32xstormy16.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf32xtensa.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64_aix.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64_ia64.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64_ia64_fbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64_s390.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64_sparc.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64_sparc_fbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64_sparc_sol2.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64alpha.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64alpha_fbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64alpha_nbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64bmip.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64btsmip.Po@am__quote@
|
bfd/
2010-12-23 Robert Millan <rmh@gnu.org>
* config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.host: Likewise.
* configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
* configure: Regenerate.
* elf32-mips.c: New target for FreeBSD support
(same as traditional MIPS but overrides ELF_OSABI
with ELFOSABI_FREEBSD).
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.
* targets.c (_bfd_target_vector): Add
`bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
ld/
2010-12-14 Robert Millan <rmh@gnu.org>
* configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu.
* emulparams/elf32btsmip_fbsd.sh: New file.
* emulparams/elf32btsmipn32_fbsd.sh: Likewise.
* emulparams/elf32ltsmip_fbsd.sh: Likewise.
* emulparams/elf32ltsmipn32_fbsd.sh: Likewise.
* emulparams/elf64btsmip_fbsd.sh: Likewise.
* emulparams/elf64ltsmip_fbsd.sh: Likewise.
* Makefile.am: Add build rules for `eelf32btsmip_fbsd.c',
`eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c',
`eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and
`eelf64ltsmip_fbsd.c'.
* Makefile.in: Regenerate.
gas/
2010-12-19 Robert Millan <rmh@gnu.org>
Richard Sandiford <rdsandiford@googlemail.com>
* config/tc-mips.c (ELF_TARGET): New macro. Generates target
names accordingly to whether TE_FreeBSD and whether TE_TMIPS
are defined.
(mips_target_format): Refactor code using ELF_TARGET().
(support_64bit_objects): Likewise.
* configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.tgt: Likewise.
* configure: Regenerate.
binutils/testsuite/
* binutils-all/readelf.exp: Handle MIPS FreeBSD targets.
gas/testsuite/
* gas/mips/e32el-rel2.d: Accept any file format.
* gas/mips/elf-rel.d: Likewise.
* gas/mips/elf-rel2.d: Likewise.
* gas/mips/elf-rel3.d: Likewise.
* gas/mips/elfel-rel.d: Likewise.
* gas/mips/elfel-rel2.d: Likewise.
* gas/mips/elfel-rel3.d: Likewise.
* gas/mips/ldstla-32-mips3-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: Likewise.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/noat-1.d: Likewise.
* gas/mips/set-arch.d: Likewise.
* gas/mips/tls-o32.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets.
* ld-mips-elf/mips-elf.exp: Likewise.
* ld-mips-elf/mips16-call-global.d: Accept any file format.
* ld-mips-elf/mips16-intermix.d: Likewise.
2010-12-31 19:01:00 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64btsmip_fbsd.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64hppa.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64lppc.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64ltsmip.Po@am__quote@
|
bfd/
2010-12-23 Robert Millan <rmh@gnu.org>
* config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.host: Likewise.
* configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
* configure: Regenerate.
* elf32-mips.c: New target for FreeBSD support
(same as traditional MIPS but overrides ELF_OSABI
with ELFOSABI_FREEBSD).
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.
* targets.c (_bfd_target_vector): Add
`bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
ld/
2010-12-14 Robert Millan <rmh@gnu.org>
* configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu.
* emulparams/elf32btsmip_fbsd.sh: New file.
* emulparams/elf32btsmipn32_fbsd.sh: Likewise.
* emulparams/elf32ltsmip_fbsd.sh: Likewise.
* emulparams/elf32ltsmipn32_fbsd.sh: Likewise.
* emulparams/elf64btsmip_fbsd.sh: Likewise.
* emulparams/elf64ltsmip_fbsd.sh: Likewise.
* Makefile.am: Add build rules for `eelf32btsmip_fbsd.c',
`eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c',
`eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and
`eelf64ltsmip_fbsd.c'.
* Makefile.in: Regenerate.
gas/
2010-12-19 Robert Millan <rmh@gnu.org>
Richard Sandiford <rdsandiford@googlemail.com>
* config/tc-mips.c (ELF_TARGET): New macro. Generates target
names accordingly to whether TE_FreeBSD and whether TE_TMIPS
are defined.
(mips_target_format): Refactor code using ELF_TARGET().
(support_64bit_objects): Likewise.
* configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.tgt: Likewise.
* configure: Regenerate.
binutils/testsuite/
* binutils-all/readelf.exp: Handle MIPS FreeBSD targets.
gas/testsuite/
* gas/mips/e32el-rel2.d: Accept any file format.
* gas/mips/elf-rel.d: Likewise.
* gas/mips/elf-rel2.d: Likewise.
* gas/mips/elf-rel3.d: Likewise.
* gas/mips/elfel-rel.d: Likewise.
* gas/mips/elfel-rel2.d: Likewise.
* gas/mips/elfel-rel3.d: Likewise.
* gas/mips/ldstla-32-mips3-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: Likewise.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/noat-1.d: Likewise.
* gas/mips/set-arch.d: Likewise.
* gas/mips/tls-o32.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets.
* ld-mips-elf/mips-elf.exp: Likewise.
* ld-mips-elf/mips16-call-global.d: Accept any file format.
* ld-mips-elf/mips16-intermix.d: Likewise.
2010-12-31 19:01:00 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64ltsmip_fbsd.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64mmix.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64ppc.Po@am__quote@
|
2011-07-15 09:45:50 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf64tilegx.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_be.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_chaos.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_fbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_ldso.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_sol2.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_i386_vxworks.Po@am__quote@
|
2011-07-23 04:22:38 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_k1om.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_k1om_fbsd.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_l1om.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_l1om_fbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_s390.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_x86_64.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_x86_64_fbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_x86_64_sol2.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/egld960.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/egld960coff.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300elf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300h.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300helf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300hn.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300hnelf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300s.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300self.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300sn.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300snelf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300sx.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300sxelf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300sxn.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8300sxnelf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8500.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8500b.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8500c.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8500m.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eh8500s.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ehp300bsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ehp3hpux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ehppa64linux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ehppaelf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ehppalinux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ehppanbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ehppaobsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386aout.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386beos.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386bsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386coff.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386go32.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386linux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386lynx.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386mach.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386moss.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386msdos.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386nbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386nto.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386nw.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386pe.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386pe_posix.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ei386pep.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elnk960.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em32relf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em32relf_linux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em32rlelf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em32rlelf_linux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em68hc11elf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em68hc11elfb.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em68hc12elf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em68hc12elfb.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em68k4knbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em68kaout.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em68kaux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em68kcoff.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em68kelf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em68kelfnbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em68klinux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em68knbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em68kpsos.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em88kbcs.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emcorepe.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emipsbig.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emipsbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emipsidt.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emipsidtl.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emipslit.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emipslnews.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emipspe.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emmo.Po@am__quote@
|
2011-01-14 10:03:42 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emn10200.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emn10300.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x110.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x1101.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x1111.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x112.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x1121.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x1122.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x1132.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x122.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x1222.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x123.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x1232.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x133.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x1331.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x135.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x1351.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x147.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x148.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x149.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x155.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x156.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x157.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x1610.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x1611.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x1612.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x167.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x168.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x169.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x2101.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x2111.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x2121.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x2131.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x311.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x312.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x313.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x314.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x315.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x323.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x325.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x336.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x337.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x412.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x413.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x415.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x417.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x435.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x436.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x437.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x447.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x448.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430x449.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430xE423.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430xE425.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430xE427.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430xG437.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430xG438.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430xG439.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430xW423.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430xW425.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/emsp430xW427.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/enews.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ens32knbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eor32.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eor32elf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/epc532macha.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/epdp11.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/epjelf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/epjlelf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eppclynx.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eppcmacos.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eppcnw.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eppcpe.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eriscix.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/escore3_elf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/escore7_elf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/esh.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshelf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshelf32.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshelf32_linux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshelf32_nbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshelf64.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshelf64_nbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshelf_fd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshelf_linux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshelf_nbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshelf_nto.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshelf_uclinux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshelf_vxworks.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshl.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshlelf.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshlelf32.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshlelf32_linux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshlelf32_nbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshlelf64.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshlelf64_nbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshlelf_fd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshlelf_linux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshlelf_nbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshlelf_nto.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshlelf_vxworks.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshlsymbian.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eshpe.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/esparcaout.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/esparclinux.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/esparcnbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/est2000.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/esun3.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/esun4.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/etic30aout.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/etic30coff.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/etic3xcoff.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/etic3xcoff_onchip.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/etic4xcoff.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/etic54xcoff.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/etic80coff.Po@am__quote@
|
2011-01-14 10:03:42 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ev850.Po@am__quote@
|
2010-10-06 12:58:34 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/evanilla.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/evax.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/evaxnbsd.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/evsta.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ew65.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ez80.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ez8001.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ez8002.Po@am__quote@
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldcref.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldctor.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldemul.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldexp.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldfile.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldgram.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldlang.Po@am__quote@
|
2010-02-11 03:48:16 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldlex-wrapper.Po@am__quote@
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldlex.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldmain.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldmisc.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldver.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldwrite.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lexsup.Po@am__quote@
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libldtestplug_la-testplug.Plo@am__quote@
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mri.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pe-dll.Po@am__quote@
|
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pep-dll.Po@am__quote@
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/plugin.Po@am__quote@
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
.c.o:
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
|
|
|
@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
|
|
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
|
2005-05-16 02:19:45 +08:00
|
|
|
|
|
|
|
.c.obj:
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
|
|
|
@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
|
|
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
2001-11-23 02:49:12 +08:00
|
|
|
|
2000-04-09 20:17:43 +08:00
|
|
|
.c.lo:
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
|
|
|
@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
|
|
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
|
1999-05-03 15:29:11 +08:00
|
|
|
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
libldtestplug_la-testplug.lo: testplug.c
|
|
|
|
@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libldtestplug_la_CFLAGS) $(CFLAGS) -MT libldtestplug_la-testplug.lo -MD -MP -MF $(DEPDIR)/libldtestplug_la-testplug.Tpo -c -o libldtestplug_la-testplug.lo `test -f 'testplug.c' || echo '$(srcdir)/'`testplug.c
|
|
|
|
@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libldtestplug_la-testplug.Tpo $(DEPDIR)/libldtestplug_la-testplug.Plo
|
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='testplug.c' object='libldtestplug_la-testplug.lo' libtool=yes @AMDEPBACKSLASH@
|
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
|
|
@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libldtestplug_la_CFLAGS) $(CFLAGS) -c -o libldtestplug_la-testplug.lo `test -f 'testplug.c' || echo '$(srcdir)/'`testplug.c
|
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
.l.c:
|
2009-08-23 00:56:56 +08:00
|
|
|
$(am__skiplex) $(SHELL) $(YLWRAP) $< $(LEX_OUTPUT_ROOT).c $@ -- $(LEXCOMPILE)
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
.y.c:
|
2009-08-23 00:56:56 +08:00
|
|
|
$(am__skipyacc) $(SHELL) $(YLWRAP) $< y.tab.c $@ y.tab.h $*.h y.output $*.output -- $(YACCCOMPILE)
|
2001-11-23 02:49:12 +08:00
|
|
|
|
|
|
|
mostlyclean-libtool:
|
|
|
|
-rm -f *.lo
|
|
|
|
|
|
|
|
clean-libtool:
|
|
|
|
-rm -rf .libs _libs
|
|
|
|
|
|
|
|
distclean-libtool:
|
2009-08-23 00:56:56 +08:00
|
|
|
-rm -f libtool config.lt
|
2001-11-23 02:49:12 +08:00
|
|
|
|
2006-12-12 22:31:48 +08:00
|
|
|
ld.info: ld.texinfo $(ld_TEXINFOS)
|
2005-05-16 02:19:45 +08:00
|
|
|
restore=: && backupdir="$(am__leading_dot)am$$$$" && \
|
|
|
|
rm -rf $$backupdir && mkdir $$backupdir && \
|
2006-05-02 22:20:46 +08:00
|
|
|
if ($(MAKEINFO) --version) >/dev/null 2>&1; then \
|
|
|
|
for f in $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]; do \
|
|
|
|
if test -f $$f; then mv $$f $$backupdir; restore=mv; else :; fi; \
|
|
|
|
done; \
|
|
|
|
else :; fi && \
|
2005-05-16 02:19:45 +08:00
|
|
|
if $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
|
2006-12-11 23:09:46 +08:00
|
|
|
-o $@ `test -f 'ld.texinfo' || echo '$(srcdir)/'`ld.texinfo; \
|
2005-05-16 02:19:45 +08:00
|
|
|
then \
|
|
|
|
rc=0; \
|
|
|
|
else \
|
|
|
|
rc=$$?; \
|
2006-05-02 22:20:46 +08:00
|
|
|
$$restore $$backupdir/* `echo "./$@" | sed 's|[^/]*$$||'`; \
|
2005-05-16 02:19:45 +08:00
|
|
|
fi; \
|
|
|
|
rm -rf $$backupdir; exit $$rc
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2006-12-12 22:31:48 +08:00
|
|
|
ld.dvi: ld.texinfo $(ld_TEXINFOS)
|
2005-05-16 02:19:45 +08:00
|
|
|
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
|
|
|
|
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
|
2006-12-11 23:09:46 +08:00
|
|
|
$(TEXI2DVI) -o $@ `test -f 'ld.texinfo' || echo '$(srcdir)/'`ld.texinfo
|
2005-05-16 02:19:45 +08:00
|
|
|
|
2006-12-12 22:31:48 +08:00
|
|
|
ld.pdf: ld.texinfo $(ld_TEXINFOS)
|
2005-05-16 02:19:45 +08:00
|
|
|
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
|
|
|
|
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
|
2006-12-11 23:09:46 +08:00
|
|
|
$(TEXI2PDF) -o $@ `test -f 'ld.texinfo' || echo '$(srcdir)/'`ld.texinfo
|
2005-05-16 02:19:45 +08:00
|
|
|
|
2006-12-12 22:31:48 +08:00
|
|
|
ld.html: ld.texinfo $(ld_TEXINFOS)
|
2005-05-16 02:19:45 +08:00
|
|
|
rm -rf $(@:.html=.htp)
|
|
|
|
if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
|
2006-12-11 23:09:46 +08:00
|
|
|
-o $(@:.html=.htp) `test -f 'ld.texinfo' || echo '$(srcdir)/'`ld.texinfo; \
|
2005-05-16 02:19:45 +08:00
|
|
|
then \
|
|
|
|
rm -rf $@; \
|
|
|
|
if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
|
|
|
|
mv $(@:.html=) $@; else mv $(@:.html=.htp) $@; fi; \
|
|
|
|
else \
|
|
|
|
if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
|
|
|
|
rm -rf $(@:.html=); else rm -Rf $(@:.html=.htp) $@; fi; \
|
|
|
|
exit 1; \
|
|
|
|
fi
|
1999-05-03 15:29:11 +08:00
|
|
|
.dvi.ps:
|
2006-05-02 22:20:46 +08:00
|
|
|
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
|
2005-05-16 02:19:45 +08:00
|
|
|
$(DVIPS) -o $@ $<
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2009-08-23 00:56:56 +08:00
|
|
|
uninstall-dvi-am:
|
|
|
|
@$(NORMAL_UNINSTALL)
|
|
|
|
@list='$(DVIS)'; test -n "$(dvidir)" || list=; \
|
|
|
|
for p in $$list; do \
|
|
|
|
$(am__strip_dir) \
|
|
|
|
echo " rm -f '$(DESTDIR)$(dvidir)/$$f'"; \
|
|
|
|
rm -f "$(DESTDIR)$(dvidir)/$$f"; \
|
|
|
|
done
|
|
|
|
|
|
|
|
uninstall-html-am:
|
|
|
|
@$(NORMAL_UNINSTALL)
|
|
|
|
@list='$(HTMLS)'; test -n "$(htmldir)" || list=; \
|
|
|
|
for p in $$list; do \
|
|
|
|
$(am__strip_dir) \
|
|
|
|
echo " rm -rf '$(DESTDIR)$(htmldir)/$$f'"; \
|
|
|
|
rm -rf "$(DESTDIR)$(htmldir)/$$f"; \
|
|
|
|
done
|
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
uninstall-info-am:
|
2005-10-01 02:59:46 +08:00
|
|
|
@$(PRE_UNINSTALL)
|
2009-08-23 00:56:56 +08:00
|
|
|
@if test -d '$(DESTDIR)$(infodir)' && \
|
|
|
|
(install-info --version && \
|
2005-05-16 02:19:45 +08:00
|
|
|
install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
|
1999-05-03 15:29:11 +08:00
|
|
|
list='$(INFO_DEPS)'; \
|
|
|
|
for file in $$list; do \
|
2005-05-16 02:19:45 +08:00
|
|
|
relfile=`echo "$$file" | sed 's|^.*/||'`; \
|
|
|
|
echo " install-info --info-dir='$(DESTDIR)$(infodir)' --remove '$(DESTDIR)$(infodir)/$$relfile'"; \
|
2009-08-23 00:56:56 +08:00
|
|
|
if install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$relfile"; \
|
|
|
|
then :; else test ! -f "$(DESTDIR)$(infodir)/$$relfile" || exit 1; fi; \
|
1999-05-03 15:29:11 +08:00
|
|
|
done; \
|
2005-05-16 02:19:45 +08:00
|
|
|
else :; fi
|
1999-05-03 15:29:11 +08:00
|
|
|
@$(NORMAL_UNINSTALL)
|
2005-05-16 02:19:45 +08:00
|
|
|
@list='$(INFO_DEPS)'; \
|
1999-05-03 15:29:11 +08:00
|
|
|
for file in $$list; do \
|
2005-05-16 02:19:45 +08:00
|
|
|
relfile=`echo "$$file" | sed 's|^.*/||'`; \
|
|
|
|
relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \
|
2009-08-23 00:56:56 +08:00
|
|
|
(if test -d "$(DESTDIR)$(infodir)" && cd "$(DESTDIR)$(infodir)"; then \
|
2005-10-01 02:59:46 +08:00
|
|
|
echo " cd '$(DESTDIR)$(infodir)' && rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]"; \
|
2005-05-16 02:19:45 +08:00
|
|
|
rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \
|
|
|
|
else :; fi); \
|
1999-05-03 15:29:11 +08:00
|
|
|
done
|
|
|
|
|
2009-08-23 00:56:56 +08:00
|
|
|
uninstall-pdf-am:
|
|
|
|
@$(NORMAL_UNINSTALL)
|
|
|
|
@list='$(PDFS)'; test -n "$(pdfdir)" || list=; \
|
|
|
|
for p in $$list; do \
|
|
|
|
$(am__strip_dir) \
|
|
|
|
echo " rm -f '$(DESTDIR)$(pdfdir)/$$f'"; \
|
|
|
|
rm -f "$(DESTDIR)$(pdfdir)/$$f"; \
|
|
|
|
done
|
|
|
|
|
|
|
|
uninstall-ps-am:
|
|
|
|
@$(NORMAL_UNINSTALL)
|
|
|
|
@list='$(PSS)'; test -n "$(psdir)" || list=; \
|
|
|
|
for p in $$list; do \
|
|
|
|
$(am__strip_dir) \
|
|
|
|
echo " rm -f '$(DESTDIR)$(psdir)/$$f'"; \
|
|
|
|
rm -f "$(DESTDIR)$(psdir)/$$f"; \
|
|
|
|
done
|
|
|
|
|
1999-05-03 15:29:11 +08:00
|
|
|
dist-info: $(INFO_DEPS)
|
2005-05-16 02:19:45 +08:00
|
|
|
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
1999-05-03 15:29:11 +08:00
|
|
|
list='$(INFO_DEPS)'; \
|
|
|
|
for base in $$list; do \
|
2005-05-16 02:19:45 +08:00
|
|
|
case $$base in \
|
|
|
|
$(srcdir)/*) base=`echo "$$base" | sed "s|^$$srcdirstrip/||"`;; \
|
|
|
|
esac; \
|
1999-05-03 15:29:11 +08:00
|
|
|
if test -f $$base; then d=.; else d=$(srcdir); fi; \
|
2009-08-23 00:56:56 +08:00
|
|
|
base_i=`echo "$$base" | sed 's|\.info$$||;s|$$|.i|'`; \
|
|
|
|
for file in $$d/$$base $$d/$$base-[0-9] $$d/$$base-[0-9][0-9] $$d/$$base_i[0-9] $$d/$$base_i[0-9][0-9]; do \
|
|
|
|
if test -f $$file; then \
|
|
|
|
relfile=`expr "$$file" : "$$d/\(.*\)"`; \
|
|
|
|
test -f "$(distdir)/$$relfile" || \
|
|
|
|
cp -p $$file "$(distdir)/$$relfile"; \
|
|
|
|
else :; fi; \
|
1999-05-03 15:29:11 +08:00
|
|
|
done; \
|
|
|
|
done
|
|
|
|
|
|
|
|
mostlyclean-aminfo:
|
2005-05-16 02:19:45 +08:00
|
|
|
-rm -rf ld.aux ld.cp ld.cps ld.fn ld.fns ld.ky ld.log ld.pg ld.pgs ld.tmp \
|
2009-08-23 00:56:56 +08:00
|
|
|
ld.toc ld.tp ld.tps ld.vr ld.vrs
|
|
|
|
|
|
|
|
clean-aminfo:
|
|
|
|
-test -z "ld.dvi ld.pdf ld.ps ld.html" \
|
|
|
|
|| rm -rf ld.dvi ld.pdf ld.ps ld.html
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
maintainer-clean-aminfo:
|
2005-05-16 02:19:45 +08:00
|
|
|
@list='$(INFO_DEPS)'; for i in $$list; do \
|
|
|
|
i_i=`echo "$$i" | sed 's|\.info$$||;s|$$|.i|'`; \
|
|
|
|
echo " rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]"; \
|
|
|
|
rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]; \
|
1999-05-03 15:29:11 +08:00
|
|
|
done
|
2009-08-23 00:56:56 +08:00
|
|
|
install-man1: $(man_MANS)
|
2005-05-16 02:19:45 +08:00
|
|
|
@$(NORMAL_INSTALL)
|
2009-08-23 00:56:56 +08:00
|
|
|
test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
|
|
|
|
@list=''; test -n "$(man1dir)" || exit 0; \
|
|
|
|
{ for i in $$list; do echo "$$i"; done; \
|
|
|
|
l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
|
|
|
|
sed -n '/\.1[a-z]*$$/p'; \
|
|
|
|
} | while read p; do \
|
|
|
|
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
|
|
|
|
echo "$$d$$p"; echo "$$p"; \
|
|
|
|
done | \
|
|
|
|
sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
|
|
|
|
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
|
|
|
|
sed 'N;N;s,\n, ,g' | { \
|
|
|
|
list=; while read file base inst; do \
|
|
|
|
if test "$$base" = "$$inst"; then list="$$list $$file"; else \
|
|
|
|
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
|
|
|
|
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
|
|
|
|
fi; \
|
1999-05-03 15:29:11 +08:00
|
|
|
done; \
|
2009-08-23 00:56:56 +08:00
|
|
|
for i in $$list; do echo "$$i"; done | $(am__base_list) | \
|
|
|
|
while read files; do \
|
|
|
|
test -z "$$files" || { \
|
|
|
|
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
|
|
|
|
$(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
|
|
|
|
done; }
|
|
|
|
|
1999-05-03 15:29:11 +08:00
|
|
|
uninstall-man1:
|
2005-05-16 02:19:45 +08:00
|
|
|
@$(NORMAL_UNINSTALL)
|
2009-08-23 00:56:56 +08:00
|
|
|
@list=''; test -n "$(man1dir)" || exit 0; \
|
|
|
|
files=`{ for i in $$list; do echo "$$i"; done; \
|
|
|
|
l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
|
|
|
|
sed -n '/\.1[a-z]*$$/p'; \
|
|
|
|
} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
|
|
|
|
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
|
|
|
|
test -z "$$files" || { \
|
|
|
|
echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \
|
|
|
|
cd "$(DESTDIR)$(man1dir)" && rm -f $$files; }
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
# This directory's subdirectories are mostly independent; you can cd
|
|
|
|
# into them and run `make' without going through this Makefile.
|
|
|
|
# To change the values of `make' variables: instead of editing Makefiles,
|
|
|
|
# (1) if the variable is set in `config.status', edit `config.status'
|
|
|
|
# (which will cause the Makefiles to be regenerated when you run `make');
|
|
|
|
# (2) otherwise, pass the desired values on the `make' command line.
|
2005-05-16 02:19:45 +08:00
|
|
|
$(RECURSIVE_TARGETS):
|
2010-05-07 20:28:50 +08:00
|
|
|
@fail= failcom='exit 1'; \
|
2005-10-01 02:59:46 +08:00
|
|
|
for f in x $$MAKEFLAGS; do \
|
|
|
|
case $$f in \
|
|
|
|
*=* | --[!k]*);; \
|
|
|
|
*k*) failcom='fail=yes';; \
|
|
|
|
esac; \
|
|
|
|
done; \
|
1999-05-03 15:29:11 +08:00
|
|
|
dot_seen=no; \
|
|
|
|
target=`echo $@ | sed s/-recursive//`; \
|
|
|
|
list='$(SUBDIRS)'; for subdir in $$list; do \
|
|
|
|
echo "Making $$target in $$subdir"; \
|
|
|
|
if test "$$subdir" = "."; then \
|
|
|
|
dot_seen=yes; \
|
|
|
|
local_target="$$target-am"; \
|
|
|
|
else \
|
|
|
|
local_target="$$target"; \
|
|
|
|
fi; \
|
2009-08-23 00:56:56 +08:00
|
|
|
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
2005-10-01 02:59:46 +08:00
|
|
|
|| eval $$failcom; \
|
1999-05-03 15:29:11 +08:00
|
|
|
done; \
|
|
|
|
if test "$$dot_seen" = "no"; then \
|
|
|
|
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
|
|
|
|
fi; test -z "$$fail"
|
|
|
|
|
2009-08-23 00:56:56 +08:00
|
|
|
$(RECURSIVE_CLEAN_TARGETS):
|
2010-05-07 20:28:50 +08:00
|
|
|
@fail= failcom='exit 1'; \
|
2005-10-01 02:59:46 +08:00
|
|
|
for f in x $$MAKEFLAGS; do \
|
|
|
|
case $$f in \
|
|
|
|
*=* | --[!k]*);; \
|
|
|
|
*k*) failcom='fail=yes';; \
|
|
|
|
esac; \
|
|
|
|
done; \
|
1999-05-03 15:29:11 +08:00
|
|
|
dot_seen=no; \
|
2005-05-16 02:19:45 +08:00
|
|
|
case "$@" in \
|
|
|
|
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
|
|
|
|
*) list='$(SUBDIRS)' ;; \
|
|
|
|
esac; \
|
|
|
|
rev=''; for subdir in $$list; do \
|
|
|
|
if test "$$subdir" = "."; then :; else \
|
|
|
|
rev="$$subdir $$rev"; \
|
|
|
|
fi; \
|
1999-05-03 15:29:11 +08:00
|
|
|
done; \
|
2005-05-16 02:19:45 +08:00
|
|
|
rev="$$rev ."; \
|
1999-05-03 15:29:11 +08:00
|
|
|
target=`echo $@ | sed s/-recursive//`; \
|
|
|
|
for subdir in $$rev; do \
|
|
|
|
echo "Making $$target in $$subdir"; \
|
|
|
|
if test "$$subdir" = "."; then \
|
|
|
|
local_target="$$target-am"; \
|
|
|
|
else \
|
|
|
|
local_target="$$target"; \
|
|
|
|
fi; \
|
2009-08-23 00:56:56 +08:00
|
|
|
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
2005-10-01 02:59:46 +08:00
|
|
|
|| eval $$failcom; \
|
1999-05-03 15:29:11 +08:00
|
|
|
done && test -z "$$fail"
|
|
|
|
tags-recursive:
|
|
|
|
list='$(SUBDIRS)'; for subdir in $$list; do \
|
2009-08-23 00:56:56 +08:00
|
|
|
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
|
1999-05-03 15:29:11 +08:00
|
|
|
done
|
2005-05-16 02:19:45 +08:00
|
|
|
ctags-recursive:
|
|
|
|
list='$(SUBDIRS)'; for subdir in $$list; do \
|
2009-08-23 00:56:56 +08:00
|
|
|
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
|
2005-05-16 02:19:45 +08:00
|
|
|
done
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
|
|
|
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
|
|
|
unique=`for i in $$list; do \
|
|
|
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
|
|
|
done | \
|
2009-08-23 00:56:56 +08:00
|
|
|
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
|
|
|
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
2005-05-16 02:19:45 +08:00
|
|
|
mkid -fID $$unique
|
|
|
|
tags: TAGS
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
TAGS: tags-recursive $(HEADERS) $(SOURCES) config.in $(TAGS_DEPENDENCIES) \
|
|
|
|
$(TAGS_FILES) $(LISP)
|
2009-08-23 00:56:56 +08:00
|
|
|
set x; \
|
1999-05-03 15:29:11 +08:00
|
|
|
here=`pwd`; \
|
2005-05-16 02:19:45 +08:00
|
|
|
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
|
|
|
|
include_option=--etags-include; \
|
|
|
|
empty_fix=.; \
|
|
|
|
else \
|
|
|
|
include_option=--include; \
|
|
|
|
empty_fix=; \
|
|
|
|
fi; \
|
1999-05-03 15:29:11 +08:00
|
|
|
list='$(SUBDIRS)'; for subdir in $$list; do \
|
2005-05-16 02:19:45 +08:00
|
|
|
if test "$$subdir" = .; then :; else \
|
|
|
|
test ! -f $$subdir/TAGS || \
|
2009-08-23 00:56:56 +08:00
|
|
|
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
|
2005-05-16 02:19:45 +08:00
|
|
|
fi; \
|
1999-05-03 15:29:11 +08:00
|
|
|
done; \
|
2005-05-16 02:19:45 +08:00
|
|
|
list='$(SOURCES) $(HEADERS) config.in $(LISP) $(TAGS_FILES)'; \
|
|
|
|
unique=`for i in $$list; do \
|
|
|
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
|
|
|
done | \
|
2009-08-23 00:56:56 +08:00
|
|
|
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
|
|
|
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
|
|
|
shift; \
|
|
|
|
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
2005-05-16 02:19:45 +08:00
|
|
|
test -n "$$unique" || unique=$$empty_fix; \
|
2009-08-23 00:56:56 +08:00
|
|
|
if test $$# -gt 0; then \
|
|
|
|
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
|
|
|
"$$@" $$unique; \
|
|
|
|
else \
|
|
|
|
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
|
|
|
$$unique; \
|
|
|
|
fi; \
|
2005-05-16 02:19:45 +08:00
|
|
|
fi
|
|
|
|
ctags: CTAGS
|
|
|
|
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.in $(TAGS_DEPENDENCIES) \
|
|
|
|
$(TAGS_FILES) $(LISP)
|
|
|
|
list='$(SOURCES) $(HEADERS) config.in $(LISP) $(TAGS_FILES)'; \
|
|
|
|
unique=`for i in $$list; do \
|
|
|
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
|
|
|
done | \
|
2009-08-23 00:56:56 +08:00
|
|
|
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
|
|
|
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
|
|
|
test -z "$(CTAGS_ARGS)$$unique" \
|
2005-05-16 02:19:45 +08:00
|
|
|
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
2009-08-23 00:56:56 +08:00
|
|
|
$$unique
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
GTAGS:
|
|
|
|
here=`$(am__cd) $(top_builddir) && pwd` \
|
2009-08-23 00:56:56 +08:00
|
|
|
&& $(am__cd) $(top_srcdir) \
|
|
|
|
&& gtags -i $(GTAGS_ARGS) "$$here"
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
distclean-tags:
|
2005-05-16 02:19:45 +08:00
|
|
|
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
2000-04-09 20:17:43 +08:00
|
|
|
site.exp: Makefile
|
|
|
|
@echo 'Making a new site.exp file...'
|
2005-05-16 02:19:45 +08:00
|
|
|
@echo '## these variables are automatically generated by make ##' >site.tmp
|
|
|
|
@echo '# Do not edit here. If you wish to override these values' >>site.tmp
|
|
|
|
@echo '# edit the last section' >>site.tmp
|
|
|
|
@echo 'set srcdir $(srcdir)' >>site.tmp
|
|
|
|
@echo "set objdir `pwd`" >>site.tmp
|
|
|
|
@echo 'set build_alias "$(build_alias)"' >>site.tmp
|
|
|
|
@echo 'set build_triplet $(build_triplet)' >>site.tmp
|
|
|
|
@echo 'set host_alias "$(host_alias)"' >>site.tmp
|
|
|
|
@echo 'set host_triplet $(host_triplet)' >>site.tmp
|
|
|
|
@echo 'set target_alias "$(target_alias)"' >>site.tmp
|
|
|
|
@echo 'set target_triplet $(target_triplet)' >>site.tmp
|
|
|
|
@echo '## All variables above are generated by configure. Do Not Edit ##' >>site.tmp
|
|
|
|
@test ! -f site.exp || \
|
|
|
|
sed '1,/^## All variables above are.*##/ d' site.exp >> site.tmp
|
|
|
|
@-rm -f site.bak
|
2000-04-09 20:17:43 +08:00
|
|
|
@test ! -f site.exp || mv site.exp site.bak
|
2005-05-16 02:19:45 +08:00
|
|
|
@mv site.tmp site.exp
|
|
|
|
|
|
|
|
distclean-DEJAGNU:
|
|
|
|
-rm -f site.exp site.bak
|
|
|
|
-l='$(DEJATOOL)'; for tool in $$l; do \
|
|
|
|
rm -f $$tool.sum $$tool.log; \
|
|
|
|
done
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
check-am: all-am
|
1999-05-03 15:29:11 +08:00
|
|
|
$(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
check: $(BUILT_SOURCES)
|
|
|
|
$(MAKE) $(AM_MAKEFLAGS) check-recursive
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
all-am: Makefile $(INFO_DEPS) $(LTLIBRARIES) $(PROGRAMS) $(MANS) \
|
|
|
|
config.h
|
2005-05-16 02:19:45 +08:00
|
|
|
installdirs: installdirs-recursive
|
|
|
|
installdirs-am:
|
Cleanups in binutils makefiles.
ld/:
* Makefile.am (bin_PROGRAMS): Renamed from ...
(noinst_PROGRAMS): ... this.
(transform): Override, including the renaming of ld-new to ld.
(install-exec-local): Installation of ld in $(bindir) not needed
here any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(MAINTAINERCLEANFILES): Add ld.1.
* Makefile.in: Regenerate.
gold/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
(AM_CPPFLAGS): Renamed from ...
(INCLUDE): ... this.
* Makefile.in, testsuite/Makefile.in: Regenerate.
bfd/:
* Makefile.am (libbfd_la_LDFLAGS): Initialize early, to allow
appending.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES, bfdinclude_HEADERS): Set
only in this condition.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES, libbfd_la_LDFLAGS): New,
to build but not install libbfd.la in this condition.
(install-bfdlibLTLIBRARIES, uninstall-bfdlibLTLIBRARIES)
(install_libbfd, install_libbfd): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(bin2c$(EXEEXT_FOR_BUILD): Adjust rule.
(installcheck-local): Renamed from ...
(installcheck): ... this.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (YFLAGS): Remove, not needed any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
gprof/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (libopcodes_la_LDFLAGS): Initialize early.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES): Set only in this condition.
[INSTALL_LIBBFD] (bfdinclude_DATA): New.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES): New.
[!INSTALL_LIBBFD] (libopcodes_la_LDFLAGS): Ensure libopcodes.la
is built shared even if it is not to be installed.
(install-bfdlibLTLIBRARIES,uninstall-bfdlibLTLIBRARIES)
(install_libopcodes, uninstall_libopcodes): Remove.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
2009-08-23 03:02:57 +08:00
|
|
|
for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(infodir)" "$(DESTDIR)$(man1dir)"; do \
|
2009-08-23 00:56:56 +08:00
|
|
|
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
2005-05-16 02:19:45 +08:00
|
|
|
done
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
install: $(BUILT_SOURCES)
|
|
|
|
$(MAKE) $(AM_MAKEFLAGS) install-recursive
|
1999-05-03 15:29:11 +08:00
|
|
|
install-exec: install-exec-recursive
|
|
|
|
install-data: install-data-recursive
|
2005-05-16 02:19:45 +08:00
|
|
|
uninstall: uninstall-recursive
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
install-am: all-am
|
|
|
|
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
2003-10-30 17:56:26 +08:00
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
installcheck: installcheck-recursive
|
|
|
|
install-strip:
|
|
|
|
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
|
|
|
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
|
|
|
`test -z '$(STRIP)' || \
|
|
|
|
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
1999-05-03 15:29:11 +08:00
|
|
|
mostlyclean-generic:
|
|
|
|
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
|
|
|
|
|
|
|
|
clean-generic:
|
|
|
|
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
|
|
|
|
|
|
|
|
distclean-generic:
|
2005-05-16 02:19:45 +08:00
|
|
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
2009-08-23 00:56:56 +08:00
|
|
|
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
1999-05-03 15:29:11 +08:00
|
|
|
-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
|
|
|
|
|
|
|
|
maintainer-clean-generic:
|
2005-05-16 02:19:45 +08:00
|
|
|
@echo "This command is intended for maintainers to use"
|
|
|
|
@echo "it deletes files that may require special tools to rebuild."
|
|
|
|
-rm -f deffilep.c
|
|
|
|
-rm -f deffilep.h
|
|
|
|
-rm -f ldgram.c
|
|
|
|
-rm -f ldgram.h
|
|
|
|
-rm -f ldlex.c
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
|
2005-05-16 02:19:45 +08:00
|
|
|
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
|
|
|
|
clean: clean-recursive
|
2003-10-30 17:47:15 +08:00
|
|
|
|
Cleanups in binutils makefiles.
ld/:
* Makefile.am (bin_PROGRAMS): Renamed from ...
(noinst_PROGRAMS): ... this.
(transform): Override, including the renaming of ld-new to ld.
(install-exec-local): Installation of ld in $(bindir) not needed
here any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(MAINTAINERCLEANFILES): Add ld.1.
* Makefile.in: Regenerate.
gold/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
(AM_CPPFLAGS): Renamed from ...
(INCLUDE): ... this.
* Makefile.in, testsuite/Makefile.in: Regenerate.
bfd/:
* Makefile.am (libbfd_la_LDFLAGS): Initialize early, to allow
appending.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES, bfdinclude_HEADERS): Set
only in this condition.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES, libbfd_la_LDFLAGS): New,
to build but not install libbfd.la in this condition.
(install-bfdlibLTLIBRARIES, uninstall-bfdlibLTLIBRARIES)
(install_libbfd, install_libbfd): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(bin2c$(EXEEXT_FOR_BUILD): Adjust rule.
(installcheck-local): Renamed from ...
(installcheck): ... this.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (YFLAGS): Remove, not needed any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
gprof/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (libopcodes_la_LDFLAGS): Initialize early.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES): Set only in this condition.
[INSTALL_LIBBFD] (bfdinclude_DATA): New.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES): New.
[!INSTALL_LIBBFD] (libopcodes_la_LDFLAGS): Ensure libopcodes.la
is built shared even if it is not to be installed.
(install-bfdlibLTLIBRARIES,uninstall-bfdlibLTLIBRARIES)
(install_libopcodes, uninstall_libopcodes): Remove.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
2009-08-23 03:02:57 +08:00
|
|
|
clean-am: clean-aminfo clean-binPROGRAMS clean-generic clean-libtool \
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
clean-noinstLTLIBRARIES mostlyclean-am
|
2003-10-30 17:47:15 +08:00
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
distclean: distclean-recursive
|
|
|
|
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
-rm -rf ./$(DEPDIR)
|
2005-05-16 02:19:45 +08:00
|
|
|
-rm -f Makefile
|
|
|
|
distclean-am: clean-am distclean-DEJAGNU distclean-compile \
|
|
|
|
distclean-generic distclean-hdr distclean-libtool \
|
|
|
|
distclean-local distclean-tags
|
2003-10-30 17:47:15 +08:00
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
dvi: dvi-recursive
|
2003-10-30 17:47:15 +08:00
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
dvi-am: $(DVIS)
|
2003-10-30 17:47:15 +08:00
|
|
|
|
2005-05-16 02:19:45 +08:00
|
|
|
html: html-recursive
|
|
|
|
|
|
|
|
html-am: $(HTMLS)
|
|
|
|
|
|
|
|
info: info-recursive
|
|
|
|
|
|
|
|
info-am: $(INFO_DEPS)
|
|
|
|
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
install-data-am: install-data-local install-info-am install-man
|
2005-05-16 02:19:45 +08:00
|
|
|
|
2009-08-23 00:56:56 +08:00
|
|
|
install-dvi: install-dvi-recursive
|
|
|
|
|
|
|
|
install-dvi-am: $(DVIS)
|
|
|
|
@$(NORMAL_INSTALL)
|
|
|
|
test -z "$(dvidir)" || $(MKDIR_P) "$(DESTDIR)$(dvidir)"
|
|
|
|
@list='$(DVIS)'; test -n "$(dvidir)" || list=; \
|
|
|
|
for p in $$list; do \
|
|
|
|
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
|
|
|
echo "$$d$$p"; \
|
|
|
|
done | $(am__base_list) | \
|
|
|
|
while read files; do \
|
|
|
|
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(dvidir)'"; \
|
|
|
|
$(INSTALL_DATA) $$files "$(DESTDIR)$(dvidir)" || exit $$?; \
|
|
|
|
done
|
Cleanups in binutils makefiles.
ld/:
* Makefile.am (bin_PROGRAMS): Renamed from ...
(noinst_PROGRAMS): ... this.
(transform): Override, including the renaming of ld-new to ld.
(install-exec-local): Installation of ld in $(bindir) not needed
here any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(MAINTAINERCLEANFILES): Add ld.1.
* Makefile.in: Regenerate.
gold/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
(AM_CPPFLAGS): Renamed from ...
(INCLUDE): ... this.
* Makefile.in, testsuite/Makefile.in: Regenerate.
bfd/:
* Makefile.am (libbfd_la_LDFLAGS): Initialize early, to allow
appending.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES, bfdinclude_HEADERS): Set
only in this condition.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES, libbfd_la_LDFLAGS): New,
to build but not install libbfd.la in this condition.
(install-bfdlibLTLIBRARIES, uninstall-bfdlibLTLIBRARIES)
(install_libbfd, install_libbfd): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(bin2c$(EXEEXT_FOR_BUILD): Adjust rule.
(installcheck-local): Renamed from ...
(installcheck): ... this.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (YFLAGS): Remove, not needed any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
gprof/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (libopcodes_la_LDFLAGS): Initialize early.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES): Set only in this condition.
[INSTALL_LIBBFD] (bfdinclude_DATA): New.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES): New.
[!INSTALL_LIBBFD] (libopcodes_la_LDFLAGS): Ensure libopcodes.la
is built shared even if it is not to be installed.
(install-bfdlibLTLIBRARIES,uninstall-bfdlibLTLIBRARIES)
(install_libopcodes, uninstall_libopcodes): Remove.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
2009-08-23 03:02:57 +08:00
|
|
|
install-exec-am: install-binPROGRAMS install-exec-local
|
2005-05-16 02:19:45 +08:00
|
|
|
|
Cleanups after the update to Autoconf 2.64, Automake 1.11.
/:
* README-maintainer-mode: Point directly to upstream locations
for autoconf, automake, libtool, gettext, instead of copies on
sources.redhat.com. Document required versions.
* configure.ac: Do not substitute datarootdir, htmldir,
pdfdir, docdir. Do not process --with-datarootdir,
--with-htmldir, --with-pdfdir, --with-docdir.
* configure: Regenerate.
gdb/:
* CONTRIBUTE: Bump documented Autoconf version.
* configure.ac: Do not substitute datarootdir, htmldir,
pdfdir, docdir. Do not process --with-datarootdir,
--with-htmldir, --with-pdfdir, --with-docdir.
* configure: Regenerate.
gdb/doc/:
* gdbint.texinfo (Releasing GDB): Point to
README-maintainer-mode file for required autoconf version.
* configure.ac: Do not substitute datarootdir, htmldir,
pdfdir, docdir. Do not process --with-datarootdir,
--with-htmldir, --with-pdfdir, --with-docdir.
* configure: Regenerate.
gprof/:
* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(install-pdf-recursive, html__strip_dir, install-html)
(install-html-am, install-html-recursive): Remove.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (install-pdf, install-html): Remove.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (install-pdf, install-pdf-recursive, install-html)
(install-html-recursive): Remove.
* Makefile.in: Regenerate.
* doc/Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(html__strip_dir, install-html, install-html-am): Remove.
* doc/Makefile.in: Regenerate.
ld/:
* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(install-pdf-recursive, html__strip_dir, install-html)
(install-html-am, install-html-recursive): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (install-pdf, install-pdf-recursive, install-html)
(install-html-recursive): Remove.
* Makefile.in: Regenerate.
* doc/Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(html__strip_dir, install-html, install-html-am): Remove.
* doc/Makefile.in: Regenerate.
bfd/:
* Makefile.am (datarootdir, docdir, htmldor, pdfdir)
(install-pdf, install-pdf-recursive, install-html)
(install-html-recursive): Remove.
* Makefile.in: Regenerate.
bfd/doc/:
* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(html__strip_dir, install-html, install-html-am): Remove.
* Makefile.in: Regenerate.
2009-08-23 01:08:11 +08:00
|
|
|
install-html: install-html-recursive
|
|
|
|
|
|
|
|
install-html-am: $(HTMLS)
|
|
|
|
@$(NORMAL_INSTALL)
|
|
|
|
test -z "$(htmldir)" || $(MKDIR_P) "$(DESTDIR)$(htmldir)"
|
|
|
|
@list='$(HTMLS)'; list2=; test -n "$(htmldir)" || list=; \
|
|
|
|
for p in $$list; do \
|
|
|
|
if test -f "$$p" || test -d "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
|
|
|
$(am__strip_dir) \
|
|
|
|
if test -d "$$d$$p"; then \
|
|
|
|
echo " $(MKDIR_P) '$(DESTDIR)$(htmldir)/$$f'"; \
|
|
|
|
$(MKDIR_P) "$(DESTDIR)$(htmldir)/$$f" || exit 1; \
|
|
|
|
echo " $(INSTALL_DATA) '$$d$$p'/* '$(DESTDIR)$(htmldir)/$$f'"; \
|
|
|
|
$(INSTALL_DATA) "$$d$$p"/* "$(DESTDIR)$(htmldir)/$$f" || exit $$?; \
|
|
|
|
else \
|
|
|
|
list2="$$list2 $$d$$p"; \
|
|
|
|
fi; \
|
|
|
|
done; \
|
|
|
|
test -z "$$list2" || { echo "$$list2" | $(am__base_list) | \
|
|
|
|
while read files; do \
|
|
|
|
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(htmldir)'"; \
|
|
|
|
$(INSTALL_DATA) $$files "$(DESTDIR)$(htmldir)" || exit $$?; \
|
|
|
|
done; }
|
2005-05-16 02:19:45 +08:00
|
|
|
install-info: install-info-recursive
|
|
|
|
|
|
|
|
install-info-am: $(INFO_DEPS)
|
|
|
|
@$(NORMAL_INSTALL)
|
2009-08-23 00:56:56 +08:00
|
|
|
test -z "$(infodir)" || $(MKDIR_P) "$(DESTDIR)$(infodir)"
|
2005-05-16 02:19:45 +08:00
|
|
|
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
2009-08-23 00:56:56 +08:00
|
|
|
list='$(INFO_DEPS)'; test -n "$(infodir)" || list=; \
|
2005-05-16 02:19:45 +08:00
|
|
|
for file in $$list; do \
|
|
|
|
case $$file in \
|
|
|
|
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
|
|
|
|
esac; \
|
|
|
|
if test -f $$file; then d=.; else d=$(srcdir); fi; \
|
|
|
|
file_i=`echo "$$file" | sed 's|\.info$$||;s|$$|.i|'`; \
|
|
|
|
for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9] \
|
2009-08-23 00:56:56 +08:00
|
|
|
$$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \
|
2005-05-16 02:19:45 +08:00
|
|
|
if test -f $$ifile; then \
|
2009-08-23 00:56:56 +08:00
|
|
|
echo "$$ifile"; \
|
2005-05-16 02:19:45 +08:00
|
|
|
else : ; fi; \
|
|
|
|
done; \
|
2009-08-23 00:56:56 +08:00
|
|
|
done | $(am__base_list) | \
|
|
|
|
while read files; do \
|
|
|
|
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(infodir)'"; \
|
|
|
|
$(INSTALL_DATA) $$files "$(DESTDIR)$(infodir)" || exit $$?; done
|
2005-05-16 02:19:45 +08:00
|
|
|
@$(POST_INSTALL)
|
|
|
|
@if (install-info --version && \
|
|
|
|
install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
|
2009-08-23 00:56:56 +08:00
|
|
|
list='$(INFO_DEPS)'; test -n "$(infodir)" || list=; \
|
2005-05-16 02:19:45 +08:00
|
|
|
for file in $$list; do \
|
|
|
|
relfile=`echo "$$file" | sed 's|^.*/||'`; \
|
|
|
|
echo " install-info --info-dir='$(DESTDIR)$(infodir)' '$(DESTDIR)$(infodir)/$$relfile'";\
|
|
|
|
install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$(infodir)/$$relfile" || :;\
|
|
|
|
done; \
|
|
|
|
else : ; fi
|
|
|
|
install-man: install-man1
|
|
|
|
|
Cleanups after the update to Autoconf 2.64, Automake 1.11.
/:
* README-maintainer-mode: Point directly to upstream locations
for autoconf, automake, libtool, gettext, instead of copies on
sources.redhat.com. Document required versions.
* configure.ac: Do not substitute datarootdir, htmldir,
pdfdir, docdir. Do not process --with-datarootdir,
--with-htmldir, --with-pdfdir, --with-docdir.
* configure: Regenerate.
gdb/:
* CONTRIBUTE: Bump documented Autoconf version.
* configure.ac: Do not substitute datarootdir, htmldir,
pdfdir, docdir. Do not process --with-datarootdir,
--with-htmldir, --with-pdfdir, --with-docdir.
* configure: Regenerate.
gdb/doc/:
* gdbint.texinfo (Releasing GDB): Point to
README-maintainer-mode file for required autoconf version.
* configure.ac: Do not substitute datarootdir, htmldir,
pdfdir, docdir. Do not process --with-datarootdir,
--with-htmldir, --with-pdfdir, --with-docdir.
* configure: Regenerate.
gprof/:
* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(install-pdf-recursive, html__strip_dir, install-html)
(install-html-am, install-html-recursive): Remove.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (install-pdf, install-html): Remove.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (install-pdf, install-pdf-recursive, install-html)
(install-html-recursive): Remove.
* Makefile.in: Regenerate.
* doc/Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(html__strip_dir, install-html, install-html-am): Remove.
* doc/Makefile.in: Regenerate.
ld/:
* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(install-pdf-recursive, html__strip_dir, install-html)
(install-html-am, install-html-recursive): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (install-pdf, install-pdf-recursive, install-html)
(install-html-recursive): Remove.
* Makefile.in: Regenerate.
* doc/Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(html__strip_dir, install-html, install-html-am): Remove.
* doc/Makefile.in: Regenerate.
bfd/:
* Makefile.am (datarootdir, docdir, htmldor, pdfdir)
(install-pdf, install-pdf-recursive, install-html)
(install-html-recursive): Remove.
* Makefile.in: Regenerate.
bfd/doc/:
* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(html__strip_dir, install-html, install-html-am): Remove.
* Makefile.in: Regenerate.
2009-08-23 01:08:11 +08:00
|
|
|
install-pdf: install-pdf-recursive
|
|
|
|
|
|
|
|
install-pdf-am: $(PDFS)
|
|
|
|
@$(NORMAL_INSTALL)
|
|
|
|
test -z "$(pdfdir)" || $(MKDIR_P) "$(DESTDIR)$(pdfdir)"
|
|
|
|
@list='$(PDFS)'; test -n "$(pdfdir)" || list=; \
|
|
|
|
for p in $$list; do \
|
|
|
|
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
|
|
|
echo "$$d$$p"; \
|
|
|
|
done | $(am__base_list) | \
|
|
|
|
while read files; do \
|
|
|
|
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pdfdir)'"; \
|
|
|
|
$(INSTALL_DATA) $$files "$(DESTDIR)$(pdfdir)" || exit $$?; done
|
2009-08-23 00:56:56 +08:00
|
|
|
install-ps: install-ps-recursive
|
|
|
|
|
|
|
|
install-ps-am: $(PSS)
|
|
|
|
@$(NORMAL_INSTALL)
|
|
|
|
test -z "$(psdir)" || $(MKDIR_P) "$(DESTDIR)$(psdir)"
|
|
|
|
@list='$(PSS)'; test -n "$(psdir)" || list=; \
|
|
|
|
for p in $$list; do \
|
|
|
|
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
|
|
|
echo "$$d$$p"; \
|
|
|
|
done | $(am__base_list) | \
|
|
|
|
while read files; do \
|
|
|
|
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(psdir)'"; \
|
|
|
|
$(INSTALL_DATA) $$files "$(DESTDIR)$(psdir)" || exit $$?; done
|
2005-05-16 02:19:45 +08:00
|
|
|
installcheck-am:
|
2003-10-30 17:47:15 +08:00
|
|
|
|
2003-10-30 17:56:26 +08:00
|
|
|
maintainer-clean: maintainer-clean-recursive
|
2005-05-16 02:19:45 +08:00
|
|
|
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
|
|
|
|
-rm -rf $(top_srcdir)/autom4te.cache
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
-rm -rf ./$(DEPDIR)
|
2005-05-16 02:19:45 +08:00
|
|
|
-rm -f Makefile
|
|
|
|
maintainer-clean-am: distclean-am maintainer-clean-aminfo \
|
|
|
|
maintainer-clean-generic
|
|
|
|
|
|
|
|
mostlyclean: mostlyclean-recursive
|
|
|
|
|
|
|
|
mostlyclean-am: mostlyclean-aminfo mostlyclean-compile \
|
|
|
|
mostlyclean-generic mostlyclean-libtool mostlyclean-local
|
|
|
|
|
|
|
|
pdf: pdf-recursive
|
|
|
|
|
|
|
|
pdf-am: $(PDFS)
|
|
|
|
|
|
|
|
ps: ps-recursive
|
|
|
|
|
|
|
|
ps-am: $(PSS)
|
|
|
|
|
Cleanups in binutils makefiles.
ld/:
* Makefile.am (bin_PROGRAMS): Renamed from ...
(noinst_PROGRAMS): ... this.
(transform): Override, including the renaming of ld-new to ld.
(install-exec-local): Installation of ld in $(bindir) not needed
here any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(MAINTAINERCLEANFILES): Add ld.1.
* Makefile.in: Regenerate.
gold/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
(AM_CPPFLAGS): Renamed from ...
(INCLUDE): ... this.
* Makefile.in, testsuite/Makefile.in: Regenerate.
bfd/:
* Makefile.am (libbfd_la_LDFLAGS): Initialize early, to allow
appending.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES, bfdinclude_HEADERS): Set
only in this condition.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES, libbfd_la_LDFLAGS): New,
to build but not install libbfd.la in this condition.
(install-bfdlibLTLIBRARIES, uninstall-bfdlibLTLIBRARIES)
(install_libbfd, install_libbfd): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(bin2c$(EXEEXT_FOR_BUILD): Adjust rule.
(installcheck-local): Renamed from ...
(installcheck): ... this.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (YFLAGS): Remove, not needed any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
gprof/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (libopcodes_la_LDFLAGS): Initialize early.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES): Set only in this condition.
[INSTALL_LIBBFD] (bfdinclude_DATA): New.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES): New.
[!INSTALL_LIBBFD] (libopcodes_la_LDFLAGS): Ensure libopcodes.la
is built shared even if it is not to be installed.
(install-bfdlibLTLIBRARIES,uninstall-bfdlibLTLIBRARIES)
(install_libopcodes, uninstall_libopcodes): Remove.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
2009-08-23 03:02:57 +08:00
|
|
|
uninstall-am: uninstall-binPROGRAMS uninstall-dvi-am uninstall-html-am \
|
|
|
|
uninstall-info-am uninstall-man uninstall-pdf-am \
|
|
|
|
uninstall-ps-am
|
2005-05-16 02:19:45 +08:00
|
|
|
|
|
|
|
uninstall-man: uninstall-man1
|
|
|
|
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all check \
|
|
|
|
check-am ctags-recursive install install-am install-strip \
|
|
|
|
tags-recursive
|
2009-08-23 00:56:56 +08:00
|
|
|
|
|
|
|
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
|
|
|
|
all all-am am--refresh check check-DEJAGNU check-am clean \
|
Cleanups in binutils makefiles.
ld/:
* Makefile.am (bin_PROGRAMS): Renamed from ...
(noinst_PROGRAMS): ... this.
(transform): Override, including the renaming of ld-new to ld.
(install-exec-local): Installation of ld in $(bindir) not needed
here any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(MAINTAINERCLEANFILES): Add ld.1.
* Makefile.in: Regenerate.
gold/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
(AM_CPPFLAGS): Renamed from ...
(INCLUDE): ... this.
* Makefile.in, testsuite/Makefile.in: Regenerate.
bfd/:
* Makefile.am (libbfd_la_LDFLAGS): Initialize early, to allow
appending.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES, bfdinclude_HEADERS): Set
only in this condition.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES, libbfd_la_LDFLAGS): New,
to build but not install libbfd.la in this condition.
(install-bfdlibLTLIBRARIES, uninstall-bfdlibLTLIBRARIES)
(install_libbfd, install_libbfd): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(bin2c$(EXEEXT_FOR_BUILD): Adjust rule.
(installcheck-local): Renamed from ...
(installcheck): ... this.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (YFLAGS): Remove, not needed any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
gprof/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (libopcodes_la_LDFLAGS): Initialize early.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES): Set only in this condition.
[INSTALL_LIBBFD] (bfdinclude_DATA): New.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES): New.
[!INSTALL_LIBBFD] (libopcodes_la_LDFLAGS): Ensure libopcodes.la
is built shared even if it is not to be installed.
(install-bfdlibLTLIBRARIES,uninstall-bfdlibLTLIBRARIES)
(install_libopcodes, uninstall_libopcodes): Remove.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
2009-08-23 03:02:57 +08:00
|
|
|
clean-aminfo clean-binPROGRAMS clean-generic clean-libtool \
|
Applied patch series for LD plugin interface (six parts).
[PATCH] Add infrastructure for plugin API; functionality to follow.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* plugin-api.h (LDPT_GNU_LD_VERSION): New ld_plugin_tag enum member.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* configure.in: Add AC_CHECKs for file io and dlfcn headers and
functions and AC_SEARCH for -ldl.
(enable_plugins): New shell variable set if above tests find dlopen
functionality.
(ENABLE_PLUGINS): Add related automake conditional.
* configure: Regenerate.
* config.in: Likewise.
* Makefile.am (PLUGIN_C): Declare plugin C source file, conditional
on ENABLE_PLUGINS being defined.
(PLUGIN_H): Likewise for header file.
(PLUGIN_OBJECT): Likewise for object file.
(PLUGIN_CFLAGS): Likewise -D flag required to compile plugin support.
(AM_CPPFLAGS): Use PLUGIN_CFLAGS.
(CFILES): Use PLUGIN_C.
(HFILES): Use PLUGIN_H.
(OFILES): Use PLUGIN_OBJECT.
(ld_new_SOURCES): Use PLUGIN_C.
(noinst_LTLIBRARIES)[ENABLE_PLUGINS]: Declare test plugin.
(libldtestplug_la_SOURCES)[ENABLE_PLUGINS]: Add automake definition
for test plugin.
(libldtestplug_la_CFLAGS)[ENABLE_PLUGINS]: Likewise.
(libldtestplug_la_LDFLAGS)[ENABLE_PLUGINS]: Likewise.
* Makefile.in: Regenerate.
* sysdep.h: Include stdarg.h, unistd.h and one of fcntl.h or
sys/file.h where available. Include dlfcn.h when ENABLE_PLUGINS.
(O_RDONLY): Supply default definition likewise to bfd's sysdep.h
(O_WRONLY): Likewise.
(O_RDWR): Likewise.
(O_ACCMODE): Likewise.
(O_BINARY): Likewise.
(SEEK_SET): Likewise.
(SEEK_CUR): Likewise.
(SEEK_END): Likewise.
* ldmisc.c (vfinfo): Make non-static. Add %p format char.
* ldmisc.h (vfinfo): Declare extern prototype.
* lexsup.c (enum option_values)[ENABLE_PLUGINS]: Add new entries for
OPTION_PLUGIN and OPTION_PLUGIN_OPT.
(ld_options[])[ENABLE_PLUGINS]: Add option data for the above two.
(parse_args)[ENABLE_PLUGINS]: Handle them, and load all plugins once
option parsing is complete.
* ldmain.c (main)[ENABLE_PLUGINS]: Call plugin cleanup hooks just
after lang_finish.
* plugin.c: New source file.
* plugin.h: Likewise new header.
* testplug.c: New source file.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 1/6).
* ld-bootstrap/bootstrap.exp: Skip static tests also if LD plugins
are enabled.
* lib/ld-lib.exp (proc regexp_diff): Extend verbose debug output.
(proc set_file_contents): Write a file with the supplied content.
(run_ld_link_tests): Add new 'ld' action to test linker output.
(proc check_plugin_api_available): Return true if linker under test
supports the plugin API.
* ld-plugin/func.c: New test source file.
* ld-plugin/main.c: Likewise.
* ld-plugin/text.c: Likewise.
* ld-plugin/plugin-1.d: New dump test output pattern script.
* ld-plugin/plugin-2.d: Likewise.
* ld-plugin/plugin-3.d: Likewise.
* ld-plugin/plugin-4.d: Likewise.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin.exp: New test control script.
---
[PATCH] Implement claim file and all symbols read hooks and add symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ldfile.c (ldfile_try_open_bfd)[ENABLE_PLUGINS]: Don't return early
during compat checks if they pass, instead offer any successfully
opened and accepted file to the plugin claim file hooks chain. Create
a dummy bfd to accept symbols added by the plugin, if the plugin
claims the file.
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Call plugin all symbols
read hook chain before ldemul_after_open.
* ldlang.h (struct lang_input_statement_struct): Add new single-bit
'claimed' flag.
* plugin.c (IRONLY_SUFFIX): New macro for dummy bfd file suffix.
(IRONLY_SUFFIX_LEN): Length of the above string.
(plugin_get_ir_dummy_bfd): New function to create the dummy bfd used
to store symbols for ir-only files.
(is_ir_dummy_bfd): New function to check if a bfd is ir-only.
(asymbol_from_plugin_symbol): New function converts symbol formats.
(add_symbols): Call it to convert plugin syms to bfd syms and add
them to the dummy bfd.
* plugin.h: Add missing include guards.
(plugin_get_ir_dummy_bfd): Add prototype.
(is_ir_dummy_bfd): Likewise.
* testplug.c (TV_MESSAGE): New helper macro.
(struct claim_file): New struct.
(claim_file_t): New typedef.
(tag_names[]): Make static and const.
(claimfiles_list): New variable.
(claimfiles_tail_chain_ptr): Likewise.
(last_claimfile): Likewise.
(record_claim_file): Record a file to claim on a singly-linked list.
(parse_symdefstr): Parse an ASCII representation of a symbol from a
plugin option into the fields of a struct ld_plugin_symbol.
(record_claimed_file_symbol): Use it to parse plugin option for
adding a symbol.
(parse_option): Parse claim file and add symbol options.
(dump_tv_tag): Use TV_MESSAGE.
(onload): Likewise.
(onclaim_file): Make static. Use TV_MESSAGE. Scan list of files to
claim and claim this file if required, adding any symbols specified.
(onall_symbols_read): Make static and use TV_MESSAGE.
(oncleanup): Likewise.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 2/6).
* ld-plugin/plugin-3.d: Enable regexes for new functionality.
* ld-plugin/plugin-5.d: Likewise.
* ld-plugin/plugin-6.d: New testcase.
* ld-plugin/plugin-7.d: Likewise.
* ld-plugin/plugin.exp: Use 'nm' on compiled test objects to determine
whether symbols in plugin arguments need an underscore prefix. Add
new plugin-6.d and plugin-7.d testcases.
---
[PATCH] Implement get symbols callback.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ldmain.c (notice)[ENABLE_PLUGINS]: Call plugin_notice.
* plugin.c (non_ironly_hash): Add new bfd hash table.
(plugin_load_plugins): Exit early if no plugins to load. If plugins
do load successfully, set notice_all flag in link info.
(get_symbols): Implement.
(plugin_load_plugins): Exit early if no plugins to load, else after
loading plugins successfully enable notice_all mode.
(init_non_ironly_hash): Lazily init non_ironly_hash table.
(plugin_notice): Record symbols referenced from non-IR files in the
non_ironly_hash. Suppress tracing, cref generation and nocrossrefs
tracking for symbols from dummy IR bfds.
* plugin.h: Fix formatting.
(plugin_notice): Add prototype.
* testplug.c (dumpresolutions): New global var.
(parse_options): Accept "dumpresolutions".
(onall_symbols_read): Get syms and dump resolutions if it was given.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 3/6).
* ld-plugin/plugin-8.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Implement add input file, add input lib and set extra lib path callbacks.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ldlang.c (lang_process)[ENABLE_PLUGINS]: Move invocation of
plugin_call_all_symbols_read to before setting of gc_sym_list, and
open any new input files that may have been added during it.
* ldmain.c (multiple_definition)[ENABLE_PLUGINS]: Call out to
plugin_multiple_definition and let it have first say over what to do
with the clashing definitions.
* plugin.c (no_more_claiming): New boolean variable.
(plugin_cached_allow_multiple_defs): Likewise.
(add_input_file): Implement.
(add_input_library): Likewise.
(set_extra_library_path): Likewise.
(plugin_call_claim_file): Don't do anything when no_more_claiming set.
(plugin_call_all_symbols_read): Set it. Disable link info
"allow_multiple_definition" flag, but cache its value.
(plugin_multiple_definition): New function.
* plugin.h (plugin_multiple_definition): Add prototype.
* testplug.c (addfile_enum_t): New enumerated typedef.
(add_file_t): New struct typedef.
(addfiles_list): New variable.
(addfiles_tail_chain_ptr): Likewise.
(record_add_file): New function.
(parse_option): Parse "add:", "lib:" and "dir:" options and call it.
(onall_symbols_read): Iterate the list of new files, libs and dirs,
adding them.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 4/6).
* ld-plugin/plugin-9.d: New testcase.
* ld-plugin/plugin.exp: Invoke it.
---
[PATCH] Add ELF symbol visibility support to plugin interface.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* plugin.c (asymbol_from_plugin_symbol): If the bfd is an ELF bfd,
find the elf symbol data and set the visibility in the st_other field.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 5/6).
* ld-plugin/plugin-ignore.d: New dump test control script.
* ld-plugin/plugin-vis-1.d: Likewise.
* ld-plugin/plugin.exp: Add list of ELF-only tests and run them if
testing on an ELF target.
---
[PATCH] Add archive support to plugin interface.
bfd/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* aoutx.h (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* cofflink.c (coff_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(coff_link_check_archive_element): Handle substitute bfd if it
was set during add_archive_element callback in the above.
* ecoff.c (read_ext_syms_and_strs): New function holds symbol-reading
code factored-out from ecoff_link_check_archive_element.
(reread_ext_syms_and_strs): Clear old symbols and call it.
(ecoff_link_check_archive_element): Use the above. Handle substitute
BFD if one is set by add_archive_element callback.
(ecoff_link_add_archive_symbols): Likewise allow bfd substitution.
* elflink.c (elf_link_add_archive_symbols): Likewise.
* linker.c (generic_link_check_archive_element): Likewise.
* pdp11.c (aout_link_check_ar_symbols): Take new "subsbfd" reference
parameter and pass it when invoking add_archive_element callback.
(aout_link_check_archive_element): Handle substitute bfd if it was
set during add_archive_element callback in the above.
* vms-alpha.c (alpha_vms_link_add_archive_symbols): Handle substitute
BFD if one is set by add_archive_element callback.
* xcofflink.c (xcoff_link_check_dynamic_ar_symbols): Take new "subsbfd"
reference parameter and pass it when invoking add_archive_element
callback.
(xcoff_link_check_ar_symbols): Likewise.
(xcoff_link_check_archive_element): Handle bfd substitution if it was
set by callback in the above.
include/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* bfdlink.h (struct_bfd_link_callbacks): Document new argument
to add_archive_element callback used to return a replacement bfd which
is to be added to the hash table in place of the original element.
ld/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ldlang.c (load_symbols): Handle bfd subsitution when calling the
add_archive_element callback.
* ldmain.c (add_archive_element)[ENABLE_PLUGINS]: Offer the archive
member to the plugins and if claimed set "subsbfd" output parameter to
point to the dummy IR-only BFD.
ld/testsuite/ChangeLog:
2010-10-14 Dave Korn <dave.korn.cygwin@gmail.com>
Apply LD plugin patch series (part 6/6).
* ld-plugin/plugin-10.d: New dump test control script.
* ld-plugin/plugin-11.d: Likewise.
* ld-plugin/plugin.exp: Run them.
---
2010-10-14 09:31:33 +08:00
|
|
|
clean-noinstLTLIBRARIES ctags ctags-recursive dist-info \
|
|
|
|
distclean distclean-DEJAGNU distclean-compile \
|
|
|
|
distclean-generic distclean-hdr distclean-libtool \
|
|
|
|
distclean-local distclean-tags dvi dvi-am html html-am info \
|
|
|
|
info-am install install-am install-binPROGRAMS install-data \
|
|
|
|
install-data-am install-data-local install-dvi install-dvi-am \
|
|
|
|
install-exec install-exec-am install-exec-local install-html \
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
install-html-am install-info install-info-am install-man \
|
|
|
|
install-man1 install-pdf install-pdf-am install-ps \
|
2009-08-23 00:56:56 +08:00
|
|
|
install-ps-am install-strip installcheck installcheck-am \
|
|
|
|
installdirs installdirs-am maintainer-clean \
|
|
|
|
maintainer-clean-aminfo maintainer-clean-generic mostlyclean \
|
|
|
|
mostlyclean-aminfo mostlyclean-compile mostlyclean-generic \
|
|
|
|
mostlyclean-libtool mostlyclean-local pdf pdf-am ps ps-am tags \
|
Cleanups in binutils makefiles.
ld/:
* Makefile.am (bin_PROGRAMS): Renamed from ...
(noinst_PROGRAMS): ... this.
(transform): Override, including the renaming of ld-new to ld.
(install-exec-local): Installation of ld in $(bindir) not needed
here any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(MAINTAINERCLEANFILES): Add ld.1.
* Makefile.in: Regenerate.
gold/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
(AM_CPPFLAGS): Renamed from ...
(INCLUDE): ... this.
* Makefile.in, testsuite/Makefile.in: Regenerate.
bfd/:
* Makefile.am (libbfd_la_LDFLAGS): Initialize early, to allow
appending.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES, bfdinclude_HEADERS): Set
only in this condition.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES, libbfd_la_LDFLAGS): New,
to build but not install libbfd.la in this condition.
(install-bfdlibLTLIBRARIES, uninstall-bfdlibLTLIBRARIES)
(install_libbfd, install_libbfd): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(bin2c$(EXEEXT_FOR_BUILD): Adjust rule.
(installcheck-local): Renamed from ...
(installcheck): ... this.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (YFLAGS): Remove, not needed any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
gprof/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (libopcodes_la_LDFLAGS): Initialize early.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES): Set only in this condition.
[INSTALL_LIBBFD] (bfdinclude_DATA): New.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES): New.
[!INSTALL_LIBBFD] (libopcodes_la_LDFLAGS): Ensure libopcodes.la
is built shared even if it is not to be installed.
(install-bfdlibLTLIBRARIES,uninstall-bfdlibLTLIBRARIES)
(install_libopcodes, uninstall_libopcodes): Remove.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
2009-08-23 03:02:57 +08:00
|
|
|
tags-recursive uninstall uninstall-am uninstall-binPROGRAMS \
|
|
|
|
uninstall-dvi-am uninstall-html-am uninstall-info-am \
|
|
|
|
uninstall-man uninstall-man1 uninstall-pdf-am uninstall-ps-am
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
|
2005-04-12 10:50:28 +08:00
|
|
|
# Disable -Werror, if it has been enabled, since old versions of bison/
|
2007-07-13 18:44:28 +08:00
|
|
|
# yacc will produce working code which contain compile time warnings.
|
2010-05-25 22:02:38 +08:00
|
|
|
ldgram.@OBJEXT@: ldgram.c
|
Fix VPATH search for generated sources in binutils, gas, ld.
binutils/:
* Makefile.am (arparse.o, arlex.o, sysroff.o, defparse.o)
(deflex.o, nlmheaders.o, rcparse.o, mcparse.o): Supply correct
source file name for generated files which may be in $(srcdir).
* Makefile.in: Regenerate.
gas/:
* Makefile.am (m68k-parse.o, bfin-lex.o, itbl-lex.o, itbl-parse.o):
Supply correct source file name for generated files which may be
in $(srcdir).
* Makefile.in: Regenerate.
ld/:
* Makefile.am (ldgram.o, ldlex.o, deffilep.o): Supply correct
source file name for generated files which may be in $(srcdir).
* Makefile.in: Regenerate.
2009-09-02 04:56:51 +08:00
|
|
|
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `test -f ldgram.c || echo $(srcdir)/`ldgram.c $(NO_WERROR)
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='ldgram.c' object='$@' libtool=no @AMDEPBACKSLASH@
|
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
Fix VPATH search for generated sources in binutils, gas, ld.
binutils/:
* Makefile.am (arparse.o, arlex.o, sysroff.o, defparse.o)
(deflex.o, nlmheaders.o, rcparse.o, mcparse.o): Supply correct
source file name for generated files which may be in $(srcdir).
* Makefile.in: Regenerate.
gas/:
* Makefile.am (m68k-parse.o, bfin-lex.o, itbl-lex.o, itbl-parse.o):
Supply correct source file name for generated files which may be
in $(srcdir).
* Makefile.in: Regenerate.
ld/:
* Makefile.am (ldgram.o, ldlex.o, deffilep.o): Supply correct
source file name for generated files which may be in $(srcdir).
* Makefile.in: Regenerate.
2009-09-02 04:56:51 +08:00
|
|
|
@am__fastdepCC_FALSE@ $(COMPILE) -c `test -f ldgram.c || echo $(srcdir)/`ldgram.c $(NO_WERROR)
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
|
2010-05-25 22:02:38 +08:00
|
|
|
ldlex-wrapper.@OBJEXT@: ldlex-wrapper.c ldlex.c
|
2010-02-11 03:48:16 +08:00
|
|
|
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $(srcdir)/ldlex-wrapper.c $(NO_WERROR)
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
2010-02-11 03:48:16 +08:00
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='ldlex-wrapper.c' object='$@' libtool=no @AMDEPBACKSLASH@
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
2010-02-11 03:48:16 +08:00
|
|
|
@am__fastdepCC_FALSE@ $(COMPILE) -c $(srcdir)/ldlex-wrapper.c $(NO_WERROR)
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
|
2010-05-25 22:02:38 +08:00
|
|
|
deffilep.@OBJEXT@: deffilep.c
|
Fix VPATH search for generated sources in binutils, gas, ld.
binutils/:
* Makefile.am (arparse.o, arlex.o, sysroff.o, defparse.o)
(deflex.o, nlmheaders.o, rcparse.o, mcparse.o): Supply correct
source file name for generated files which may be in $(srcdir).
* Makefile.in: Regenerate.
gas/:
* Makefile.am (m68k-parse.o, bfin-lex.o, itbl-lex.o, itbl-parse.o):
Supply correct source file name for generated files which may be
in $(srcdir).
* Makefile.in: Regenerate.
ld/:
* Makefile.am (ldgram.o, ldlex.o, deffilep.o): Supply correct
source file name for generated files which may be in $(srcdir).
* Makefile.in: Regenerate.
2009-09-02 04:56:51 +08:00
|
|
|
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `test -f deffilep.c || echo $(srcdir)/`deffilep.c $(NO_WERROR)
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='deffilep.c' object='$@' libtool=no @AMDEPBACKSLASH@
|
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
Fix VPATH search for generated sources in binutils, gas, ld.
binutils/:
* Makefile.am (arparse.o, arlex.o, sysroff.o, defparse.o)
(deflex.o, nlmheaders.o, rcparse.o, mcparse.o): Supply correct
source file name for generated files which may be in $(srcdir).
* Makefile.in: Regenerate.
gas/:
* Makefile.am (m68k-parse.o, bfin-lex.o, itbl-lex.o, itbl-parse.o):
Supply correct source file name for generated files which may be
in $(srcdir).
* Makefile.in: Regenerate.
ld/:
* Makefile.am (ldgram.o, ldlex.o, deffilep.o): Supply correct
source file name for generated files which may be in $(srcdir).
* Makefile.in: Regenerate.
2009-09-02 04:56:51 +08:00
|
|
|
@am__fastdepCC_FALSE@ $(COMPILE) -c `test -f deffilep.c || echo $(srcdir)/`deffilep.c $(NO_WERROR)
|
2005-04-12 10:50:28 +08:00
|
|
|
|
1999-05-03 15:29:11 +08:00
|
|
|
po/POTFILES.in: @MAINT@ Makefile
|
2008-08-04 14:55:33 +08:00
|
|
|
for f in $(POTFILES); do echo $$f; done | LC_ALL=C sort > tmp \
|
1999-05-03 15:29:11 +08:00
|
|
|
&& mv tmp $(srcdir)/po/POTFILES.in
|
|
|
|
|
2010-05-25 22:02:38 +08:00
|
|
|
ldmain.@OBJEXT@: ldmain.c config.status
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ \
|
|
|
|
@am__fastdepCC_TRUE@ -DDEFAULT_EMULATION='"$(EMUL)"' \
|
|
|
|
@am__fastdepCC_TRUE@ -DBINDIR='"$(bindir)"' -DTOOLBINDIR='"$(tooldir)/bin"' \
|
|
|
|
@am__fastdepCC_TRUE@ -DTARGET='"@target@"' @TARGET_SYSTEM_ROOT_DEFINE@ \
|
|
|
|
@am__fastdepCC_TRUE@ $(srcdir)/ldmain.c
|
|
|
|
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
2009-08-24 13:57:44 +08:00
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='ldmain.c' object='$@' libtool=no @AMDEPBACKSLASH@
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
|
|
@am__fastdepCC_FALSE@ $(COMPILE) -c -DDEFAULT_EMULATION='"$(EMUL)"' \
|
|
|
|
@am__fastdepCC_FALSE@ -DBINDIR='"$(bindir)"' -DTOOLBINDIR='"$(tooldir)/bin"' \
|
|
|
|
@am__fastdepCC_FALSE@ -DTARGET='"@target@"' @TARGET_SYSTEM_ROOT_DEFINE@ \
|
|
|
|
@am__fastdepCC_FALSE@ $(srcdir)/ldmain.c
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2010-05-25 22:02:38 +08:00
|
|
|
ldfile.@OBJEXT@: ldfile.c config.status
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ \
|
|
|
|
@am__fastdepCC_TRUE@ -DSCRIPTDIR='"$(scriptdir)"' -DBINDIR='"$(bindir)"' -DTOOLBINDIR='"$(tooldir)/bin"' \
|
|
|
|
@am__fastdepCC_TRUE@ $(srcdir)/ldfile.c
|
|
|
|
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
2009-08-24 13:57:44 +08:00
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='ldfile.c' object='$@' libtool=no @AMDEPBACKSLASH@
|
dependency tracking in ld
ld/:
* Makefile.am (AUTOMAKE_OPTIONS): Remove cygnus. Add
no-texinfo.tex, no-dist, foreign.
(TEXINFO_TEX): New variable.
(install-data-local): Removed, not needed any more.
(all): Dependencies upon info and ld.1 not needed any more.
(MKDEP, DEP, DEP1, dep.sed, dep, dep-in, dep-am): Removed.
(mkdep generated section): Removed.
(ldgram.o, ldlex.o, deffilep.o, ldmain.o, ldfile.o): Rewrite to
use automake dependency tracking mechanism.
(EXTRA_ld_new_SOURCES): Add pep-dll.c, pe-dll.c, and
$(ALL_EMULATIONS:.o=.c) $(ALL_64_EMULATIONS:.o=.c) so their
dependencies are tracked too.
(BUILT_SOURCES): New, list $(GENERATED_HFILES) to ensure they
are built early.
* configure.in: Use AM_MAINTAINER_MODE.
* configure, Makefile.in: Regenerate.
2009-08-23 01:59:33 +08:00
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
|
|
@am__fastdepCC_FALSE@ $(COMPILE) -c -DSCRIPTDIR='"$(scriptdir)"' -DBINDIR='"$(bindir)"' \
|
|
|
|
@am__fastdepCC_FALSE@ -DTOOLBINDIR='"$(tooldir)/bin"' \
|
|
|
|
@am__fastdepCC_FALSE@ $(srcdir)/ldfile.c
|
2008-08-09 18:15:39 +08:00
|
|
|
|
2010-05-25 22:02:38 +08:00
|
|
|
eelf32_spu.@OBJEXT@: eelf32_spu.c
|
2009-08-24 13:57:44 +08:00
|
|
|
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ \
|
|
|
|
@am__fastdepCC_TRUE@ -DEMBEDSPU="\"`echo embedspu | sed '$(transform)'`\"" eelf32_spu.c
|
|
|
|
@am__fastdepCC_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='eelf32_spu.c' object='$@' libtool=no @AMDEPBACKSLASH@
|
|
|
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
|
|
|
@am__fastdepCC_FALSE@ $(COMPILE) -c -DEMBEDSPU="\"`echo embedspu | sed '$(transform)'`\"" \
|
|
|
|
@am__fastdepCC_FALSE@ eelf32_spu.c
|
2007-06-18 18:58:07 +08:00
|
|
|
|
1999-05-03 15:29:11 +08:00
|
|
|
ldemul-list.h: Makefile
|
|
|
|
(echo "/* This file is automatically generated. DO NOT EDIT! */";\
|
|
|
|
for f in `echo " " ${EMULATION_OFILES} "" \
|
|
|
|
| sed -e 's/ e/ ld/g' -e 's/ ld/ /g' -e 's/[.]o//g'`; do \
|
|
|
|
echo "extern ld_emulation_xfer_type ld_$${f}_emulation;"; \
|
|
|
|
done;\
|
|
|
|
echo "";\
|
|
|
|
echo "#define EMULATION_LIST \\";\
|
|
|
|
for f in `echo " " ${EMULATION_OFILES} "" \
|
|
|
|
| sed -e 's/ e/ ld/g' -e 's/ ld/ /g' -e 's/[.]o//g'`; do \
|
|
|
|
echo " &ld_$${f}_emulation, \\"; \
|
|
|
|
done;\
|
|
|
|
echo " 0") >ldemul-tmp.h
|
|
|
|
mv ldemul-tmp.h ldemul-list.h
|
1999-08-07 06:46:03 +08:00
|
|
|
|
|
|
|
stringify.sed: ${srcdir}/emultempl/$(STRINGIFY)
|
|
|
|
cp ${srcdir}/emultempl/$(STRINGIFY) stringify.sed
|
2003-08-16 01:04:48 +08:00
|
|
|
|
1999-05-03 15:29:11 +08:00
|
|
|
@TDIRS@
|
|
|
|
|
2002-03-18 20:46:27 +08:00
|
|
|
eaix5ppc.c: $(srcdir)/emulparams/aix5ppc.sh \
|
|
|
|
$(srcdir)/emultempl/aix.em $(srcdir)/scripttempl/aix.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} aix5ppc "$(tdir_aixppc)"
|
|
|
|
eaix5rs6.c: $(srcdir)/emulparams/aix5rs6.sh \
|
|
|
|
$(srcdir)/emultempl/aix.em $(srcdir)/scripttempl/aix.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} aix5rs6 "$(tdir_aixrs6)"
|
1999-05-03 15:29:11 +08:00
|
|
|
eaixppc.c: $(srcdir)/emulparams/aixppc.sh \
|
|
|
|
$(srcdir)/emultempl/aix.em $(srcdir)/scripttempl/aix.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} aixppc "$(tdir_aixppc)"
|
|
|
|
eaixrs6.c: $(srcdir)/emulparams/aixrs6.sh \
|
|
|
|
$(srcdir)/emultempl/aix.em $(srcdir)/scripttempl/aix.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} aixrs6 "$(tdir_aixrs6)"
|
|
|
|
ealpha.c: $(srcdir)/emulparams/alpha.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/alpha.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} alpha "$(tdir_alpha)"
|
2010-04-14 17:27:27 +08:00
|
|
|
ealphavms.c: $(srcdir)/emulparams/alphavms.sh \
|
|
|
|
$(srcdir)/emultempl/vms.em $(srcdir)/scripttempl/alphavms.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} alphavms "$(tdir_alphavms)"
|
2006-06-21 00:37:29 +08:00
|
|
|
earcelf.c: $(srcdir)/emulparams/arcelf.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} arcelf "$(tdir_arcelf)"
|
2011-01-14 10:03:42 +08:00
|
|
|
earm_epoc_pe.c: $(srcdir)/emulparams/arm_epoc_pe.sh \
|
|
|
|
$(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/epocpe.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} arm_epoc_pe "$(tdir_armpe)"
|
|
|
|
earm_wince_pe.c: $(srcdir)/emulparams/arm_wince_pe.sh \
|
|
|
|
$(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/pe.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} arm_wince_pe "$(tdir_armpe)"
|
|
|
|
earmaoutb.c: $(srcdir)/emulparams/armaoutb.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/armaout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armaoutb "$(tdir_armaoutb)"
|
|
|
|
earmaoutl.c: $(srcdir)/emulparams/armaoutl.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/armaout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armaoutl "$(tdir_armaoutl)"
|
|
|
|
earmcoff.c: $(srcdir)/emulparams/armcoff.sh \
|
|
|
|
$(srcdir)/emultempl/armcoff.em $(srcdir)/scripttempl/armcoff.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armcoff "$(tdir_armcoff)"
|
1999-05-03 15:29:11 +08:00
|
|
|
earmelf.c: $(srcdir)/emulparams/armelf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/armelf.em \
|
2000-09-05 11:21:16 +08:00
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} armelf "$(tdir_armelf)"
|
2002-02-18 David O'Brien <obrien@FreeBSD.org>
* Makefile.in: Add new files earmelf_fbsd, eelf32ppc_fbsd,
eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd,
and eelf64alpha_fbsd.
* configure.tgt(sparc64-*-freebsd, ia64-*-freebsd, i[3456]86-*-freebsd,
x86_64-*-freebsd, arm-*-freebsd, alpha*-*-freebsd, powerpc-*-freebsd):
use a FreeBSD-specific emulation rather than the psABI one.
* emulparams/elf_fbsd.sh (ELF_INTERPRETER_NAME): Set appropriate value
for all FreeBSD ELF systems.
* emulparams/armelf_fbsd.sh: Bridge elf_fbsd.sh and the "native" psABI
emulation.
* emulparams/elf32ppc_fbsd.sh: Likewise.
* emulparams/elf64_ia64_fbsd.sh: Likewise.
* emulparams/elf64_sparc_fbsd.sh: Likewise.
* emulparams/elf64alpha_fbsd.sh: Likewise.
* emulparams/elf_i386_fbsd.sh: Likewise.
* emulparams/elf_x86_64_fbsd.sh: Likewise.
Approved by: Nick Clifton <nickc@cambridge.redhat.com>
<m3pu33yy0b.fsf@north-pole.nickc.cambridge.redhat.com>
2002-02-18 17:38:01 +08:00
|
|
|
earmelf_fbsd.c: $(srcdir)/emulparams/armelf_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/armelf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/armelf.em \
|
2002-02-18 David O'Brien <obrien@FreeBSD.org>
* Makefile.in: Add new files earmelf_fbsd, eelf32ppc_fbsd,
eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd,
and eelf64alpha_fbsd.
* configure.tgt(sparc64-*-freebsd, ia64-*-freebsd, i[3456]86-*-freebsd,
x86_64-*-freebsd, arm-*-freebsd, alpha*-*-freebsd, powerpc-*-freebsd):
use a FreeBSD-specific emulation rather than the psABI one.
* emulparams/elf_fbsd.sh (ELF_INTERPRETER_NAME): Set appropriate value
for all FreeBSD ELF systems.
* emulparams/armelf_fbsd.sh: Bridge elf_fbsd.sh and the "native" psABI
emulation.
* emulparams/elf32ppc_fbsd.sh: Likewise.
* emulparams/elf64_ia64_fbsd.sh: Likewise.
* emulparams/elf64_sparc_fbsd.sh: Likewise.
* emulparams/elf64alpha_fbsd.sh: Likewise.
* emulparams/elf_i386_fbsd.sh: Likewise.
* emulparams/elf_x86_64_fbsd.sh: Likewise.
Approved by: Nick Clifton <nickc@cambridge.redhat.com>
<m3pu33yy0b.fsf@north-pole.nickc.cambridge.redhat.com>
2002-02-18 17:38:01 +08:00
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armelf_fbsd "$(tdir_armelf_fbsd)"
|
1999-05-03 15:29:11 +08:00
|
|
|
earmelf_linux.c: $(srcdir)/emulparams/armelf_linux.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/armelf.em \
|
2000-09-05 11:21:16 +08:00
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} armelf_linux "$(tdir_armelf_linux)"
|
2004-11-20 03:28:40 +08:00
|
|
|
earmelf_linux_eabi.c: $(srcdir)/emulparams/armelf_linux_eabi.sh \
|
|
|
|
$(srcdir)/emulparams/armelf_linux.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/armelf.em \
|
2004-11-20 03:28:40 +08:00
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armelf_linux_eabi "$(tdir_armelf_linux_abi)"
|
2011-01-14 10:03:42 +08:00
|
|
|
earmelf_nbsd.c: $(srcdir)/emulparams/armelf_nbsd.sh \
|
|
|
|
$(srcdir)/emulparams/armelf.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/armelf.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armelf_nbsd "$(tdir_armelf_nbsd)"
|
|
|
|
earmelf_vxworks.c: $(srcdir)/emulparams/armelf_vxworks.sh \
|
|
|
|
$(srcdir)/emulparams/vxworks.sh $(srcdir)/emulparams/armelf.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/vxworks.em \
|
|
|
|
$(srcdir)/emultempl/armelf.em $(srcdir)/scripttempl/elf.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armelf_vxworks "$(tdir_armelf)"
|
|
|
|
earmelfb.c: $(srcdir)/emulparams/armelfb.sh $(srcdir)/emulparams/armelf.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/armelf.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armelfb "$(tdir_armelfb)"
|
2003-05-10 04:05:04 +08:00
|
|
|
earmelfb_linux.c: $(srcdir)/emulparams/armelfb_linux.sh \
|
|
|
|
$(srcdir)/emulparams/armelf_linux.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/armelf.em \
|
2003-05-10 04:05:04 +08:00
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armelfb_linux "$(tdir_armelfb_linux)"
|
2005-01-21 03:37:49 +08:00
|
|
|
earmelfb_linux_eabi.c: $(srcdir)/emulparams/armelfb_linux_eabi.sh \
|
|
|
|
$(srcdir)/emulparams/armelf_linux_eabi.sh \
|
|
|
|
$(srcdir)/emulparams/armelf_linux.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/armelf.em \
|
2005-01-21 03:37:49 +08:00
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armelfb_linux_eabi "$(tdir_armelfb_linux_abi)"
|
2002-05-21 23:11:04 +08:00
|
|
|
earmelfb_nbsd.c: $(srcdir)/emulparams/armelfb_nbsd.sh \
|
|
|
|
$(srcdir)/emulparams/armelf_nbsd.sh \
|
|
|
|
$(srcdir)/emulparams/armelf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/armelf.em \
|
2002-05-21 23:11:04 +08:00
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armelfb_nbsd "$(tdir_armelfb_nbsd)"
|
1999-08-24 23:17:23 +08:00
|
|
|
earmnbsd.c: $(srcdir)/emulparams/armnbsd.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armnbsd "$(tdir_armnbsd)"
|
2002-07-31 01:32:30 +08:00
|
|
|
earmnto.c: $(srcdir)/emulparams/armnto.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/armelf.em \
|
2002-07-31 01:32:30 +08:00
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armnto "$(tdir_armnto)"
|
1999-05-03 15:29:11 +08:00
|
|
|
earmpe.c: $(srcdir)/emulparams/armpe.sh \
|
|
|
|
$(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/pe.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armpe "$(tdir_armpe)"
|
2004-09-04 01:15:44 +08:00
|
|
|
earmsymbian.c: $(srcdir)/emulparams/armsymbian.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(srcdir)/emulparams/armelf.sh $(ELF_DEPS) \
|
2005-01-04 23:16:25 +08:00
|
|
|
$(srcdir)/emultempl/armelf.em $(srcdir)/scripttempl/armbpabi.sc \
|
2004-09-04 01:15:44 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} armsymbian "$(tdir_armelf)"
|
2006-06-20 10:22:16 +08:00
|
|
|
eavr1.c: $(srcdir)/emulparams/avr1.sh $(srcdir)/emultempl/avrelf.em \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
2002-05-17 13:55:14 +08:00
|
|
|
${GEN_DEPENDS}
|
2003-10-20 00:46:14 +08:00
|
|
|
${GENSCRIPTS} avr1 "$(tdir_avr2)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eavr2.c: $(srcdir)/emulparams/avr2.sh $(srcdir)/emultempl/avrelf.em \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} avr2 "$(tdir_avr2)"
|
Add AVR architectures avr25, avr31, avr35, and avr51 to match GCC.
bfd/
* archures.c (bfd_mach_avr25, bfd_mach_avr31, bfd_mach_avr35,
bfd_mach_avr51): New.
* bfd-in2.h: Regenerate.
* cpu-avr.c (arch_info_struct): Add avr25, avr31, avr35, and avr51
architectures. Change comments to match architecture comments in GCC.
(compatible): Add test for new AVR architectures.
* elf32-avr.c (bfd_elf_avr_final_write_processing): Recognize
bfd_mach_avr25, bfd_mach_avr31, bfd_mach_avr35 and bfd_mach_avr51.
(elf32_avr_object_p): Recognize E_AVR_MACH_AVR25, E_AVR_MACH_AVR31,
E_AVR_MACH_AVR35 and E_AVR_MACH_AVR51.
gas/
* config/tc-avr.c (mcu_types): Add avr25, avr31, avr35, and avr51
architectures. Reorganize list to put mcu types in correct architectures
and to order list same as in GCC. Use new ISA definitions in
include/opcode/avr.h.
* doc/c-avr.texi: Add avr25, avr31, avr35, and avr51 architecture
descriptions. Reorganize descriptions to put mcu types in correct
architectures and to order lists same as in GCC.
include/
* elf/avr.h (E_AVR_MACH_AVR25, E_AVR_MACH_AVR31,
E_AVR_MACH_AVR35, E_AVR_MACH_AVR51): Define.
(EF_AVR_MACH): Redefine to 0x7F.
* opcode/avr.h (AVR_ISA_TINY3, AVR_ISA_ALL, AVR_ISA_USB162): Remove.
(AVR_ISA_AVR3): Redefine.
(AVR_ISA_AVR1, AVR_ISA_AVR2, AVR_ISA_AVR31, AVR_ISA_AVR35,
AVR_ISA_AVR3_ALL, AVR_ISA_AVR4, AVR_ISA_AVR5, AVR_ISA_AVR51,
AVR_ISA_AVR6): Define.
ld/
* Makefile.am (ALL_EMULATIONS): Add eavr25.o, eavr31.o, eavr35.o,
and eavr51.o.
Add rules for eavr25.c, eavr31.c, eavr35.c, eavr51.c.
* Makefile.in: Regenerate.
* configure.tgt (avr-*-*, targ_extra_emuls): Add avr25, avr31, avr35
and avr51.
* emulparams/avr25.sh: New file.
* emulparams/avr31.sh: New file.
* emulparams/avr35.sh: New file.
* emulparams/avr51.sh: New file.
2008-08-09 13:35:13 +08:00
|
|
|
eavr25.c: $(srcdir)/emulparams/avr25.sh $(srcdir)/emultempl/avrelf.em \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} avr25 "$(tdir_avr2)"
|
2006-06-20 10:22:16 +08:00
|
|
|
eavr3.c: $(srcdir)/emulparams/avr3.sh $(srcdir)/emultempl/avrelf.em \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
2002-05-17 13:55:14 +08:00
|
|
|
${GEN_DEPENDS}
|
2003-10-20 00:46:14 +08:00
|
|
|
${GENSCRIPTS} avr3 "$(tdir_avr2)"
|
Add AVR architectures avr25, avr31, avr35, and avr51 to match GCC.
bfd/
* archures.c (bfd_mach_avr25, bfd_mach_avr31, bfd_mach_avr35,
bfd_mach_avr51): New.
* bfd-in2.h: Regenerate.
* cpu-avr.c (arch_info_struct): Add avr25, avr31, avr35, and avr51
architectures. Change comments to match architecture comments in GCC.
(compatible): Add test for new AVR architectures.
* elf32-avr.c (bfd_elf_avr_final_write_processing): Recognize
bfd_mach_avr25, bfd_mach_avr31, bfd_mach_avr35 and bfd_mach_avr51.
(elf32_avr_object_p): Recognize E_AVR_MACH_AVR25, E_AVR_MACH_AVR31,
E_AVR_MACH_AVR35 and E_AVR_MACH_AVR51.
gas/
* config/tc-avr.c (mcu_types): Add avr25, avr31, avr35, and avr51
architectures. Reorganize list to put mcu types in correct architectures
and to order list same as in GCC. Use new ISA definitions in
include/opcode/avr.h.
* doc/c-avr.texi: Add avr25, avr31, avr35, and avr51 architecture
descriptions. Reorganize descriptions to put mcu types in correct
architectures and to order lists same as in GCC.
include/
* elf/avr.h (E_AVR_MACH_AVR25, E_AVR_MACH_AVR31,
E_AVR_MACH_AVR35, E_AVR_MACH_AVR51): Define.
(EF_AVR_MACH): Redefine to 0x7F.
* opcode/avr.h (AVR_ISA_TINY3, AVR_ISA_ALL, AVR_ISA_USB162): Remove.
(AVR_ISA_AVR3): Redefine.
(AVR_ISA_AVR1, AVR_ISA_AVR2, AVR_ISA_AVR31, AVR_ISA_AVR35,
AVR_ISA_AVR3_ALL, AVR_ISA_AVR4, AVR_ISA_AVR5, AVR_ISA_AVR51,
AVR_ISA_AVR6): Define.
ld/
* Makefile.am (ALL_EMULATIONS): Add eavr25.o, eavr31.o, eavr35.o,
and eavr51.o.
Add rules for eavr25.c, eavr31.c, eavr35.c, eavr51.c.
* Makefile.in: Regenerate.
* configure.tgt (avr-*-*, targ_extra_emuls): Add avr25, avr31, avr35
and avr51.
* emulparams/avr25.sh: New file.
* emulparams/avr31.sh: New file.
* emulparams/avr35.sh: New file.
* emulparams/avr51.sh: New file.
2008-08-09 13:35:13 +08:00
|
|
|
eavr31.c: $(srcdir)/emulparams/avr31.sh $(srcdir)/emultempl/avrelf.em \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} avr31 "$(tdir_avr2)"
|
|
|
|
eavr35.c: $(srcdir)/emulparams/avr35.sh $(srcdir)/emultempl/avrelf.em \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} avr35 "$(tdir_avr2)"
|
2006-06-20 10:22:16 +08:00
|
|
|
eavr4.c: $(srcdir)/emulparams/avr4.sh $(srcdir)/emultempl/avrelf.em \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
2002-05-17 13:55:14 +08:00
|
|
|
${GEN_DEPENDS}
|
2003-10-20 00:46:14 +08:00
|
|
|
${GENSCRIPTS} avr4 "$(tdir_avr2)"
|
2006-06-20 10:22:16 +08:00
|
|
|
eavr5.c: $(srcdir)/emulparams/avr5.sh $(srcdir)/emultempl/avrelf.em \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
2002-05-17 13:55:14 +08:00
|
|
|
${GEN_DEPENDS}
|
2003-10-20 00:46:14 +08:00
|
|
|
${GENSCRIPTS} avr5 "$(tdir_avr2)"
|
Add AVR architectures avr25, avr31, avr35, and avr51 to match GCC.
bfd/
* archures.c (bfd_mach_avr25, bfd_mach_avr31, bfd_mach_avr35,
bfd_mach_avr51): New.
* bfd-in2.h: Regenerate.
* cpu-avr.c (arch_info_struct): Add avr25, avr31, avr35, and avr51
architectures. Change comments to match architecture comments in GCC.
(compatible): Add test for new AVR architectures.
* elf32-avr.c (bfd_elf_avr_final_write_processing): Recognize
bfd_mach_avr25, bfd_mach_avr31, bfd_mach_avr35 and bfd_mach_avr51.
(elf32_avr_object_p): Recognize E_AVR_MACH_AVR25, E_AVR_MACH_AVR31,
E_AVR_MACH_AVR35 and E_AVR_MACH_AVR51.
gas/
* config/tc-avr.c (mcu_types): Add avr25, avr31, avr35, and avr51
architectures. Reorganize list to put mcu types in correct architectures
and to order list same as in GCC. Use new ISA definitions in
include/opcode/avr.h.
* doc/c-avr.texi: Add avr25, avr31, avr35, and avr51 architecture
descriptions. Reorganize descriptions to put mcu types in correct
architectures and to order lists same as in GCC.
include/
* elf/avr.h (E_AVR_MACH_AVR25, E_AVR_MACH_AVR31,
E_AVR_MACH_AVR35, E_AVR_MACH_AVR51): Define.
(EF_AVR_MACH): Redefine to 0x7F.
* opcode/avr.h (AVR_ISA_TINY3, AVR_ISA_ALL, AVR_ISA_USB162): Remove.
(AVR_ISA_AVR3): Redefine.
(AVR_ISA_AVR1, AVR_ISA_AVR2, AVR_ISA_AVR31, AVR_ISA_AVR35,
AVR_ISA_AVR3_ALL, AVR_ISA_AVR4, AVR_ISA_AVR5, AVR_ISA_AVR51,
AVR_ISA_AVR6): Define.
ld/
* Makefile.am (ALL_EMULATIONS): Add eavr25.o, eavr31.o, eavr35.o,
and eavr51.o.
Add rules for eavr25.c, eavr31.c, eavr35.c, eavr51.c.
* Makefile.in: Regenerate.
* configure.tgt (avr-*-*, targ_extra_emuls): Add avr25, avr31, avr35
and avr51.
* emulparams/avr25.sh: New file.
* emulparams/avr31.sh: New file.
* emulparams/avr35.sh: New file.
* emulparams/avr51.sh: New file.
2008-08-09 13:35:13 +08:00
|
|
|
eavr51.c: $(srcdir)/emulparams/avr51.sh $(srcdir)/emultempl/avrelf.em \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} avr51 "$(tdir_avr2)"
|
2006-06-20 10:22:16 +08:00
|
|
|
eavr6.c: $(srcdir)/emulparams/avr6.sh $(srcdir)/emultempl/avrelf.em \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
2006-05-24 15:36:12 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} avr6 "$(tdir_avr2)"
|
2011-03-26 02:04:48 +08:00
|
|
|
eavrxmega1.c: $(srcdir)/emulparams/avrxmega1.sh \
|
|
|
|
$(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} avrxmega1 "$(tdir_avr2)"
|
|
|
|
eavrxmega2.c: $(srcdir)/emulparams/avrxmega2.sh \
|
|
|
|
$(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} avrxmega2 "$(tdir_avr2)"
|
|
|
|
eavrxmega3.c: $(srcdir)/emulparams/avrxmega3.sh \
|
|
|
|
$(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} avrxmega3 "$(tdir_avr2)"
|
|
|
|
eavrxmega4.c: $(srcdir)/emulparams/avrxmega4.sh \
|
|
|
|
$(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} avrxmega4 "$(tdir_avr2)"
|
|
|
|
eavrxmega5.c: $(srcdir)/emulparams/avrxmega5.sh \
|
|
|
|
$(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} avrxmega5 "$(tdir_avr2)"
|
|
|
|
eavrxmega6.c: $(srcdir)/emulparams/avrxmega6.sh \
|
|
|
|
$(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} avrxmega6 "$(tdir_avr2)"
|
|
|
|
eavrxmega7.c: $(srcdir)/emulparams/avrxmega7.sh \
|
|
|
|
$(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} avrxmega7 "$(tdir_avr2)"
|
2003-08-06 10:19:05 +08:00
|
|
|
ecoff_i860.c: $(srcdir)/emulparams/coff_i860.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/i860coff.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} coff_i860 "$(tdir_coff_i860)"
|
1999-05-03 15:29:11 +08:00
|
|
|
ecoff_sparc.c: $(srcdir)/emulparams/coff_sparc.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/sparccoff.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} coff_sparc "$(tdir_coff_sparc)"
|
2000-07-21 01:16:06 +08:00
|
|
|
ecrisaout.c: $(srcdir)/emulparams/crisaout.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/crisaout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} crisaout "$(tdir_cris)"
|
|
|
|
ecriself.c: $(srcdir)/emulparams/criself.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2000-07-21 01:16:06 +08:00
|
|
|
${GENSCRIPTS} criself "$(tdir_cris)"
|
|
|
|
ecrislinux.c: $(srcdir)/emulparams/crislinux.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2000-07-21 01:16:06 +08:00
|
|
|
${GENSCRIPTS} crislinux "$(tdir_cris)"
|
1999-05-03 15:29:11 +08:00
|
|
|
ed10velf.c: $(srcdir)/emulparams/d10velf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elfd10v.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} d10velf "$(tdir_d10v)"
|
2011-01-14 10:03:42 +08:00
|
|
|
ed30v_e.c: $(srcdir)/emulparams/d30v_e.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elfd30v.sc ${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} d30v_e "$(tdir_d30v)"
|
2006-06-21 00:37:29 +08:00
|
|
|
ed30v_o.c: $(srcdir)/emulparams/d30v_o.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elfd30v.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} d30v_o "$(tdir_d30v)"
|
2011-01-14 10:03:42 +08:00
|
|
|
ed30velf.c: $(srcdir)/emulparams/d30velf.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elfd30v.sc ${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} d30velf "$(tdir_d30v)"
|
1999-05-03 15:29:11 +08:00
|
|
|
edelta68.c: $(srcdir)/emulparams/delta68.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/delta68.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} delta68 "$(tdir_delta68)"
|
2002-05-28 22:08:47 +08:00
|
|
|
eelf32_dlx.c: $(srcdir)/emulparams/elf32_dlx.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/dlx.sc ${GEN_DEPENDS}
|
2002-05-28 22:08:47 +08:00
|
|
|
${GENSCRIPTS} elf32_dlx "$(tdir_elf32_dlx)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32_i860.c: $(srcdir)/emulparams/elf32_i860.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32_i860 "$(tdir_elf32_i860)"
|
|
|
|
eelf32_i960.c: $(srcdir)/emulparams/elf32_i960.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32_i960 "$(tdir_elf32_i960)"
|
|
|
|
eelf32_sparc.c: $(srcdir)/emulparams/elf32_sparc.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32_sparc "$(tdir_elf32_sparc)"
|
|
|
|
eelf32_sparc_sol2.c: $(srcdir)/emulparams/elf32_sparc_sol2.sh \
|
|
|
|
$(srcdir)/emulparams/elf32_sparc.sh \
|
|
|
|
$(srcdir)/emulparams/solaris2.sh \
|
|
|
|
$(srcdir)/emultempl/solaris2.em $(ELF_DEPS) \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32_sparc_sol2 "$(tdir_elf32_sparc_sol2)"
|
|
|
|
eelf32_sparc_vxworks.c: $(srcdir)/emulparams/elf32_sparc_vxworks.sh \
|
|
|
|
$(srcdir)/emulparams/vxworks.sh $(srcdir)/emulparams/elf32_sparc.sh \
|
|
|
|
$(srcdir)/emultempl/vxworks.em $(ELF_DEPS) \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32_sparc_vxworks "$(tdir_elf32_sparc_vxworks)"
|
|
|
|
eelf32_spu.c: $(srcdir)/emulparams/elf32_spu.sh $(srcdir)/emultempl/spuelf.em \
|
|
|
|
$(srcdir)/emultempl/spu_ovl.@OBJEXT@_c $(srcdir)/emultempl/spu_icache.@OBJEXT@_c \
|
|
|
|
ldemul-list.h \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32_spu "$(tdir_elf32_spu)"
|
|
|
|
$(srcdir)/emultempl/spu_ovl.@OBJEXT@_c: @MAINT@ $(srcdir)/emultempl/spu_ovl.S
|
|
|
|
if ../gas/as-new --version \
|
|
|
|
| grep 'target.*spu' >/dev/null 2>/dev/null; then \
|
|
|
|
cpp -DOVLY_IRQ_SAVE $(srcdir)/emultempl/spu_ovl.S spu_ovl.s; \
|
|
|
|
../gas/as-new -o spu_ovl.@OBJEXT@ spu_ovl.s; \
|
|
|
|
../binutils/bin2c <spu_ovl.@OBJEXT@ >$@; \
|
|
|
|
fi
|
|
|
|
$(srcdir)/emultempl/spu_icache.@OBJEXT@_c: @MAINT@ $(srcdir)/emultempl/spu_icache.S
|
|
|
|
if ../gas/as-new --version \
|
|
|
|
| grep 'target.*spu' >/dev/null 2>/dev/null; then \
|
|
|
|
cpp -DOVLY_IRQ_SAVE $(srcdir)/emultempl/spu_icache.S spu_icache.s; \
|
|
|
|
../gas/as-new -o spu_icache.@OBJEXT@ spu_icache.s; \
|
|
|
|
../binutils/bin2c <spu_icache.@OBJEXT@ >$@; \
|
|
|
|
fi
|
bfd:
* Makefile.am (ALL_MACHINES): Add cpu-tic6x.lo.
(ALL_MACHINES_CFILES): Add cpu-tic6x.c.
(BFD32_BACKENDS): Add elf32-tic6x.lo.
(BFD32_BACKENDS_CFILES): Add elf32-tic6x.c.
* Makefile.in: Regenerate.
* archures.c (bfd_arch_tic6x, bfd_tic6x_arch): New.
(bfd_archures_list): Update.
* config.bfd (tic6x-*-elf): New.
* configure.in (bfd_elf32_tic6x_be_vec, bfd_elf32_tic6x_le_vec):
New.
* configure: Regenerate.
* cpu-tic6x.c, elf32-tic6x.c: New.
* reloc.c (BFD_RELOC_C6000_PCR_S21, BFD_RELOC_C6000_PCR_S12,
BFD_RELOC_C6000_PCR_S10, BFD_RELOC_C6000_PCR_S7,
BFD_RELOC_C6000_ABS_S16, BFD_RELOC_C6000_ABS_L16,
BFD_RELOC_C6000_ABS_H16, BFD_RELOC_C6000_SBR_U15_B,
BFD_RELOC_C6000_SBR_U15_H, BFD_RELOC_C6000_SBR_U15_W,
BFD_RELOC_C6000_SBR_S16, BFD_RELOC_C6000_SBR_L16_B,
BFD_RELOC_C6000_SBR_L16_H, BFD_RELOC_C6000_SBR_L16_W,
BFD_RELOC_C6000_SBR_H16_B, BFD_RELOC_C6000_SBR_H16_H,
BFD_RELOC_C6000_SBR_H16_W, BFD_RELOC_C6000_SBR_GOT_U15_W,
BFD_RELOC_C6000_SBR_GOT_L16_W, BFD_RELOC_C6000_SBR_GOT_H16_W,
BFD_RELOC_C6000_DSBT_INDEX, BFD_RELOC_C6000_PREL31,
BFD_RELOC_C6000_COPY, BFD_RELOC_C6000_ALIGN,
BFD_RELOC_C6000_FPHEAD, BFD_RELOC_C6000_NOCMP): New.
* targets.c (bfd_elf32_tic6x_be_vec, bfd_elf32_tic6x_le_vec): New.
(_bfd_target_vector): Update.
* bfd-in2.h, libbfd.h: Regenerate.
binutils:
* MAINTAINERS: Add self as TI C6X maintainer.
* NEWS: Add news entry for TI C6X support.
* readelf.c: Include elf/tic6x.h.
(guess_is_rela): Handle EM_TI_C6000.
(dump_relocations): Likewise.
(get_tic6x_dynamic_type): New.
(get_dynamic_type): Call it.
(get_machine_flags): Handle EF_C6000_REL.
(get_osabi_name): Handle machine-specific values only for relevant
machines. Handle C6X values.
(get_tic6x_segment_type): New.
(get_segment_type): Call it.
(get_tic6x_section_type_name): New.
(get_section_type_name): Call it.
(is_32bit_abs_reloc, is_16bit_abs_reloc, is_none_reloc): Handle
EM_TI_C6000.
gas:
* Makefile.am (TARGET_CPU_CFILES): Add config/tc-tic6x.c.
(TARGET_CPU_HFILES): Add config/tc-tic6x.h.
* Makefile.in: Regenerate.
* NEWS: Add news entry for TI C6X support.
* app.c (do_scrub_chars): Handle "||^" for TI C6X. Handle
TC_PREDICATE_START_CHAR and TC_PREDICATE_END_CHAR. Keep spaces in
operands if TC_KEEP_OPERAND_SPACES.
* configure.tgt (tic6x-*-*): New.
* config/tc-ia64.h (TC_PREDICATE_START_CHAR,
TC_PREDICATE_END_CHAR): Define.
* config/tc-tic6x.c, config/tc-tic6x.h: New.
* doc/Makefile.am (CPU_DOCS): Add c-tic6x.texi.
* doc/Makefile.in: Regenerate.
* doc/all.texi (TIC6X): Define.
* doc/as.texinfo: Add TI C6X documentation. Include c-tic6x.texi.
* doc/c-tic6x.texi: New.
gas/testsuite:
* gas/tic6x: New directory and testcases.
include:
* dis-asm.h (print_insn_tic6x): Declare.
include/elf:
* common.h (ELFOSABI_C6000_ELFABI, ELFOSABI_C6000_LINUX): Define.
* tic6x.h: New.
include/opcode:
* tic6x-control-registers.h, tic6x-insn-formats.h,
tic6x-opcode-table.h, tic6x.h: New.
ld:
* Makefile.am (ALL_EMULATIONS): Add eelf32_tic6x_be.o and
eelf32_tic6x_le.o.
(eelf32_tic6x_be.c, eelf32_tic6x_le.c): New.
* NEWS: Add news entry for TI C6X support.
* configure.tgt (tic6x-*-*): New.
* emulparams/elf32_tic6x_be.sh, emulparams/elf32_tic6x_le.sh: New.
ld/testsuite:
* ld-elf/flags1.d, ld-elf/merge.d: XFAIL for tic6x-*-*.
* ld-elf/sec-to-seg.exp: Set B_test_same_seg to 0 for tic6x-*-*.
* ld-tic6x: New directory and testcases.
opcodes:
* Makefile.am (TARGET_LIBOPCODES_CFILES): Add tic6x-dis.c.
* Makefile.in: Regenerate.
* configure.in (bfd_tic6x_arch): New.
* configure: Regenerate.
* disassemble.c (ARCH_tic6x): Define if ARCH_all.
(disassembler): Handle TI C6X.
* tic6x-dis.c: New.
2010-03-26 05:12:36 +08:00
|
|
|
eelf32_tic6x_be.c: $(srcdir)/emulparams/elf32_tic6x_be.sh \
|
ld/
(eelf32_tic6x_linux_be.c, eelf32_tic6x_linux_le.c,
eelf32_tic6x_elf_be.c, eelf32_tic6x_elf_le.c): New rules.
* Makefile.am (ALL_EMULATIONS): Add these files.
(eelf32_tic6x_be.c, eelf32_tic6x_le.c): Depend on tic6xdsbt.em.
* Makefile.in: Regenerated.
* emultempl/tic6xdsbt.em (is_tic6x_target): Allow more tic6x target
vectors.
* emulparams/elf32_tic6x_elf_be.sh: New file.
* emulparams/elf32_tic6x_elf_le.sh: New file.
* emulparams/elf32_tic6x_linux_be.sh: New file.
* emulparams/elf32_tic6x_linux_le.sh: New file.
* configure.tgt (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
ld/testsuite/
* ld-tic6x/dsbt.ld (OUTPUT_FORMAT): Add.
* ld-tic6x/tic6x.exp: Add OSABI tests.
bfd/
* config.bfd (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
* elf32-tic6x.c (elf32_tic6x_set_osabi): New static function.
(elf32_tic6x_check_relocs): Create dynamic sections if -shared.
(elf_backend_relocs_compatible, elf_backend_post_process_headers):
Define.
(elf32_bed, TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, TARGET_BIG_SYM,
TARGET_BIG_NAME, ELF_OSABI): Redefine twice, and include
"elf32-target.h" two more times.
* configure.in: Handle bfd_elf32_tic6x_linux_be_vec,
bfd_elf32_tic6x_linux_le_vec, bfd_elf32_tic6x_elf_be_vec and
bfd_elf32_tic6x_elf_le_vec.
* configure: Regenerate.
2011-05-14 02:15:33 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc $(srcdir)/emultempl/tic6xdsbt.em \
|
|
|
|
${GEN_DEPENDS}
|
bfd:
* Makefile.am (ALL_MACHINES): Add cpu-tic6x.lo.
(ALL_MACHINES_CFILES): Add cpu-tic6x.c.
(BFD32_BACKENDS): Add elf32-tic6x.lo.
(BFD32_BACKENDS_CFILES): Add elf32-tic6x.c.
* Makefile.in: Regenerate.
* archures.c (bfd_arch_tic6x, bfd_tic6x_arch): New.
(bfd_archures_list): Update.
* config.bfd (tic6x-*-elf): New.
* configure.in (bfd_elf32_tic6x_be_vec, bfd_elf32_tic6x_le_vec):
New.
* configure: Regenerate.
* cpu-tic6x.c, elf32-tic6x.c: New.
* reloc.c (BFD_RELOC_C6000_PCR_S21, BFD_RELOC_C6000_PCR_S12,
BFD_RELOC_C6000_PCR_S10, BFD_RELOC_C6000_PCR_S7,
BFD_RELOC_C6000_ABS_S16, BFD_RELOC_C6000_ABS_L16,
BFD_RELOC_C6000_ABS_H16, BFD_RELOC_C6000_SBR_U15_B,
BFD_RELOC_C6000_SBR_U15_H, BFD_RELOC_C6000_SBR_U15_W,
BFD_RELOC_C6000_SBR_S16, BFD_RELOC_C6000_SBR_L16_B,
BFD_RELOC_C6000_SBR_L16_H, BFD_RELOC_C6000_SBR_L16_W,
BFD_RELOC_C6000_SBR_H16_B, BFD_RELOC_C6000_SBR_H16_H,
BFD_RELOC_C6000_SBR_H16_W, BFD_RELOC_C6000_SBR_GOT_U15_W,
BFD_RELOC_C6000_SBR_GOT_L16_W, BFD_RELOC_C6000_SBR_GOT_H16_W,
BFD_RELOC_C6000_DSBT_INDEX, BFD_RELOC_C6000_PREL31,
BFD_RELOC_C6000_COPY, BFD_RELOC_C6000_ALIGN,
BFD_RELOC_C6000_FPHEAD, BFD_RELOC_C6000_NOCMP): New.
* targets.c (bfd_elf32_tic6x_be_vec, bfd_elf32_tic6x_le_vec): New.
(_bfd_target_vector): Update.
* bfd-in2.h, libbfd.h: Regenerate.
binutils:
* MAINTAINERS: Add self as TI C6X maintainer.
* NEWS: Add news entry for TI C6X support.
* readelf.c: Include elf/tic6x.h.
(guess_is_rela): Handle EM_TI_C6000.
(dump_relocations): Likewise.
(get_tic6x_dynamic_type): New.
(get_dynamic_type): Call it.
(get_machine_flags): Handle EF_C6000_REL.
(get_osabi_name): Handle machine-specific values only for relevant
machines. Handle C6X values.
(get_tic6x_segment_type): New.
(get_segment_type): Call it.
(get_tic6x_section_type_name): New.
(get_section_type_name): Call it.
(is_32bit_abs_reloc, is_16bit_abs_reloc, is_none_reloc): Handle
EM_TI_C6000.
gas:
* Makefile.am (TARGET_CPU_CFILES): Add config/tc-tic6x.c.
(TARGET_CPU_HFILES): Add config/tc-tic6x.h.
* Makefile.in: Regenerate.
* NEWS: Add news entry for TI C6X support.
* app.c (do_scrub_chars): Handle "||^" for TI C6X. Handle
TC_PREDICATE_START_CHAR and TC_PREDICATE_END_CHAR. Keep spaces in
operands if TC_KEEP_OPERAND_SPACES.
* configure.tgt (tic6x-*-*): New.
* config/tc-ia64.h (TC_PREDICATE_START_CHAR,
TC_PREDICATE_END_CHAR): Define.
* config/tc-tic6x.c, config/tc-tic6x.h: New.
* doc/Makefile.am (CPU_DOCS): Add c-tic6x.texi.
* doc/Makefile.in: Regenerate.
* doc/all.texi (TIC6X): Define.
* doc/as.texinfo: Add TI C6X documentation. Include c-tic6x.texi.
* doc/c-tic6x.texi: New.
gas/testsuite:
* gas/tic6x: New directory and testcases.
include:
* dis-asm.h (print_insn_tic6x): Declare.
include/elf:
* common.h (ELFOSABI_C6000_ELFABI, ELFOSABI_C6000_LINUX): Define.
* tic6x.h: New.
include/opcode:
* tic6x-control-registers.h, tic6x-insn-formats.h,
tic6x-opcode-table.h, tic6x.h: New.
ld:
* Makefile.am (ALL_EMULATIONS): Add eelf32_tic6x_be.o and
eelf32_tic6x_le.o.
(eelf32_tic6x_be.c, eelf32_tic6x_le.c): New.
* NEWS: Add news entry for TI C6X support.
* configure.tgt (tic6x-*-*): New.
* emulparams/elf32_tic6x_be.sh, emulparams/elf32_tic6x_le.sh: New.
ld/testsuite:
* ld-elf/flags1.d, ld-elf/merge.d: XFAIL for tic6x-*-*.
* ld-elf/sec-to-seg.exp: Set B_test_same_seg to 0 for tic6x-*-*.
* ld-tic6x: New directory and testcases.
opcodes:
* Makefile.am (TARGET_LIBOPCODES_CFILES): Add tic6x-dis.c.
* Makefile.in: Regenerate.
* configure.in (bfd_tic6x_arch): New.
* configure: Regenerate.
* disassemble.c (ARCH_tic6x): Define if ARCH_all.
(disassembler): Handle TI C6X.
* tic6x-dis.c: New.
2010-03-26 05:12:36 +08:00
|
|
|
${GENSCRIPTS} elf32_tic6x_be "$(tdir_elf32_tic6x_be)"
|
2011-07-15 09:45:50 +08:00
|
|
|
eelf32_tic6x_elf_be.c: $(srcdir)/emulparams/elf32_tic6x_elf_be.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc $(srcdir)/emultempl/tic6xdsbt.em \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32_tic6x_elf_be "$(tdir_elf32_tic6x_elf_be)"
|
|
|
|
eelf32_tic6x_elf_le.c: $(srcdir)/emulparams/elf32_tic6x_elf_le.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc $(srcdir)/emultempl/tic6xdsbt.em \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32_tic6x_elf_le "$(tdir_elf32_tic6x_elf_le)"
|
bfd:
* Makefile.am (ALL_MACHINES): Add cpu-tic6x.lo.
(ALL_MACHINES_CFILES): Add cpu-tic6x.c.
(BFD32_BACKENDS): Add elf32-tic6x.lo.
(BFD32_BACKENDS_CFILES): Add elf32-tic6x.c.
* Makefile.in: Regenerate.
* archures.c (bfd_arch_tic6x, bfd_tic6x_arch): New.
(bfd_archures_list): Update.
* config.bfd (tic6x-*-elf): New.
* configure.in (bfd_elf32_tic6x_be_vec, bfd_elf32_tic6x_le_vec):
New.
* configure: Regenerate.
* cpu-tic6x.c, elf32-tic6x.c: New.
* reloc.c (BFD_RELOC_C6000_PCR_S21, BFD_RELOC_C6000_PCR_S12,
BFD_RELOC_C6000_PCR_S10, BFD_RELOC_C6000_PCR_S7,
BFD_RELOC_C6000_ABS_S16, BFD_RELOC_C6000_ABS_L16,
BFD_RELOC_C6000_ABS_H16, BFD_RELOC_C6000_SBR_U15_B,
BFD_RELOC_C6000_SBR_U15_H, BFD_RELOC_C6000_SBR_U15_W,
BFD_RELOC_C6000_SBR_S16, BFD_RELOC_C6000_SBR_L16_B,
BFD_RELOC_C6000_SBR_L16_H, BFD_RELOC_C6000_SBR_L16_W,
BFD_RELOC_C6000_SBR_H16_B, BFD_RELOC_C6000_SBR_H16_H,
BFD_RELOC_C6000_SBR_H16_W, BFD_RELOC_C6000_SBR_GOT_U15_W,
BFD_RELOC_C6000_SBR_GOT_L16_W, BFD_RELOC_C6000_SBR_GOT_H16_W,
BFD_RELOC_C6000_DSBT_INDEX, BFD_RELOC_C6000_PREL31,
BFD_RELOC_C6000_COPY, BFD_RELOC_C6000_ALIGN,
BFD_RELOC_C6000_FPHEAD, BFD_RELOC_C6000_NOCMP): New.
* targets.c (bfd_elf32_tic6x_be_vec, bfd_elf32_tic6x_le_vec): New.
(_bfd_target_vector): Update.
* bfd-in2.h, libbfd.h: Regenerate.
binutils:
* MAINTAINERS: Add self as TI C6X maintainer.
* NEWS: Add news entry for TI C6X support.
* readelf.c: Include elf/tic6x.h.
(guess_is_rela): Handle EM_TI_C6000.
(dump_relocations): Likewise.
(get_tic6x_dynamic_type): New.
(get_dynamic_type): Call it.
(get_machine_flags): Handle EF_C6000_REL.
(get_osabi_name): Handle machine-specific values only for relevant
machines. Handle C6X values.
(get_tic6x_segment_type): New.
(get_segment_type): Call it.
(get_tic6x_section_type_name): New.
(get_section_type_name): Call it.
(is_32bit_abs_reloc, is_16bit_abs_reloc, is_none_reloc): Handle
EM_TI_C6000.
gas:
* Makefile.am (TARGET_CPU_CFILES): Add config/tc-tic6x.c.
(TARGET_CPU_HFILES): Add config/tc-tic6x.h.
* Makefile.in: Regenerate.
* NEWS: Add news entry for TI C6X support.
* app.c (do_scrub_chars): Handle "||^" for TI C6X. Handle
TC_PREDICATE_START_CHAR and TC_PREDICATE_END_CHAR. Keep spaces in
operands if TC_KEEP_OPERAND_SPACES.
* configure.tgt (tic6x-*-*): New.
* config/tc-ia64.h (TC_PREDICATE_START_CHAR,
TC_PREDICATE_END_CHAR): Define.
* config/tc-tic6x.c, config/tc-tic6x.h: New.
* doc/Makefile.am (CPU_DOCS): Add c-tic6x.texi.
* doc/Makefile.in: Regenerate.
* doc/all.texi (TIC6X): Define.
* doc/as.texinfo: Add TI C6X documentation. Include c-tic6x.texi.
* doc/c-tic6x.texi: New.
gas/testsuite:
* gas/tic6x: New directory and testcases.
include:
* dis-asm.h (print_insn_tic6x): Declare.
include/elf:
* common.h (ELFOSABI_C6000_ELFABI, ELFOSABI_C6000_LINUX): Define.
* tic6x.h: New.
include/opcode:
* tic6x-control-registers.h, tic6x-insn-formats.h,
tic6x-opcode-table.h, tic6x.h: New.
ld:
* Makefile.am (ALL_EMULATIONS): Add eelf32_tic6x_be.o and
eelf32_tic6x_le.o.
(eelf32_tic6x_be.c, eelf32_tic6x_le.c): New.
* NEWS: Add news entry for TI C6X support.
* configure.tgt (tic6x-*-*): New.
* emulparams/elf32_tic6x_be.sh, emulparams/elf32_tic6x_le.sh: New.
ld/testsuite:
* ld-elf/flags1.d, ld-elf/merge.d: XFAIL for tic6x-*-*.
* ld-elf/sec-to-seg.exp: Set B_test_same_seg to 0 for tic6x-*-*.
* ld-tic6x: New directory and testcases.
opcodes:
* Makefile.am (TARGET_LIBOPCODES_CFILES): Add tic6x-dis.c.
* Makefile.in: Regenerate.
* configure.in (bfd_tic6x_arch): New.
* configure: Regenerate.
* disassemble.c (ARCH_tic6x): Define if ARCH_all.
(disassembler): Handle TI C6X.
* tic6x-dis.c: New.
2010-03-26 05:12:36 +08:00
|
|
|
eelf32_tic6x_le.c: $(srcdir)/emulparams/elf32_tic6x_le.sh \
|
ld/
(eelf32_tic6x_linux_be.c, eelf32_tic6x_linux_le.c,
eelf32_tic6x_elf_be.c, eelf32_tic6x_elf_le.c): New rules.
* Makefile.am (ALL_EMULATIONS): Add these files.
(eelf32_tic6x_be.c, eelf32_tic6x_le.c): Depend on tic6xdsbt.em.
* Makefile.in: Regenerated.
* emultempl/tic6xdsbt.em (is_tic6x_target): Allow more tic6x target
vectors.
* emulparams/elf32_tic6x_elf_be.sh: New file.
* emulparams/elf32_tic6x_elf_le.sh: New file.
* emulparams/elf32_tic6x_linux_be.sh: New file.
* emulparams/elf32_tic6x_linux_le.sh: New file.
* configure.tgt (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
ld/testsuite/
* ld-tic6x/dsbt.ld (OUTPUT_FORMAT): Add.
* ld-tic6x/tic6x.exp: Add OSABI tests.
bfd/
* config.bfd (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
* elf32-tic6x.c (elf32_tic6x_set_osabi): New static function.
(elf32_tic6x_check_relocs): Create dynamic sections if -shared.
(elf_backend_relocs_compatible, elf_backend_post_process_headers):
Define.
(elf32_bed, TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, TARGET_BIG_SYM,
TARGET_BIG_NAME, ELF_OSABI): Redefine twice, and include
"elf32-target.h" two more times.
* configure.in: Handle bfd_elf32_tic6x_linux_be_vec,
bfd_elf32_tic6x_linux_le_vec, bfd_elf32_tic6x_elf_be_vec and
bfd_elf32_tic6x_elf_le_vec.
* configure: Regenerate.
2011-05-14 02:15:33 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc $(srcdir)/emultempl/tic6xdsbt.em \
|
|
|
|
${GEN_DEPENDS}
|
bfd:
* Makefile.am (ALL_MACHINES): Add cpu-tic6x.lo.
(ALL_MACHINES_CFILES): Add cpu-tic6x.c.
(BFD32_BACKENDS): Add elf32-tic6x.lo.
(BFD32_BACKENDS_CFILES): Add elf32-tic6x.c.
* Makefile.in: Regenerate.
* archures.c (bfd_arch_tic6x, bfd_tic6x_arch): New.
(bfd_archures_list): Update.
* config.bfd (tic6x-*-elf): New.
* configure.in (bfd_elf32_tic6x_be_vec, bfd_elf32_tic6x_le_vec):
New.
* configure: Regenerate.
* cpu-tic6x.c, elf32-tic6x.c: New.
* reloc.c (BFD_RELOC_C6000_PCR_S21, BFD_RELOC_C6000_PCR_S12,
BFD_RELOC_C6000_PCR_S10, BFD_RELOC_C6000_PCR_S7,
BFD_RELOC_C6000_ABS_S16, BFD_RELOC_C6000_ABS_L16,
BFD_RELOC_C6000_ABS_H16, BFD_RELOC_C6000_SBR_U15_B,
BFD_RELOC_C6000_SBR_U15_H, BFD_RELOC_C6000_SBR_U15_W,
BFD_RELOC_C6000_SBR_S16, BFD_RELOC_C6000_SBR_L16_B,
BFD_RELOC_C6000_SBR_L16_H, BFD_RELOC_C6000_SBR_L16_W,
BFD_RELOC_C6000_SBR_H16_B, BFD_RELOC_C6000_SBR_H16_H,
BFD_RELOC_C6000_SBR_H16_W, BFD_RELOC_C6000_SBR_GOT_U15_W,
BFD_RELOC_C6000_SBR_GOT_L16_W, BFD_RELOC_C6000_SBR_GOT_H16_W,
BFD_RELOC_C6000_DSBT_INDEX, BFD_RELOC_C6000_PREL31,
BFD_RELOC_C6000_COPY, BFD_RELOC_C6000_ALIGN,
BFD_RELOC_C6000_FPHEAD, BFD_RELOC_C6000_NOCMP): New.
* targets.c (bfd_elf32_tic6x_be_vec, bfd_elf32_tic6x_le_vec): New.
(_bfd_target_vector): Update.
* bfd-in2.h, libbfd.h: Regenerate.
binutils:
* MAINTAINERS: Add self as TI C6X maintainer.
* NEWS: Add news entry for TI C6X support.
* readelf.c: Include elf/tic6x.h.
(guess_is_rela): Handle EM_TI_C6000.
(dump_relocations): Likewise.
(get_tic6x_dynamic_type): New.
(get_dynamic_type): Call it.
(get_machine_flags): Handle EF_C6000_REL.
(get_osabi_name): Handle machine-specific values only for relevant
machines. Handle C6X values.
(get_tic6x_segment_type): New.
(get_segment_type): Call it.
(get_tic6x_section_type_name): New.
(get_section_type_name): Call it.
(is_32bit_abs_reloc, is_16bit_abs_reloc, is_none_reloc): Handle
EM_TI_C6000.
gas:
* Makefile.am (TARGET_CPU_CFILES): Add config/tc-tic6x.c.
(TARGET_CPU_HFILES): Add config/tc-tic6x.h.
* Makefile.in: Regenerate.
* NEWS: Add news entry for TI C6X support.
* app.c (do_scrub_chars): Handle "||^" for TI C6X. Handle
TC_PREDICATE_START_CHAR and TC_PREDICATE_END_CHAR. Keep spaces in
operands if TC_KEEP_OPERAND_SPACES.
* configure.tgt (tic6x-*-*): New.
* config/tc-ia64.h (TC_PREDICATE_START_CHAR,
TC_PREDICATE_END_CHAR): Define.
* config/tc-tic6x.c, config/tc-tic6x.h: New.
* doc/Makefile.am (CPU_DOCS): Add c-tic6x.texi.
* doc/Makefile.in: Regenerate.
* doc/all.texi (TIC6X): Define.
* doc/as.texinfo: Add TI C6X documentation. Include c-tic6x.texi.
* doc/c-tic6x.texi: New.
gas/testsuite:
* gas/tic6x: New directory and testcases.
include:
* dis-asm.h (print_insn_tic6x): Declare.
include/elf:
* common.h (ELFOSABI_C6000_ELFABI, ELFOSABI_C6000_LINUX): Define.
* tic6x.h: New.
include/opcode:
* tic6x-control-registers.h, tic6x-insn-formats.h,
tic6x-opcode-table.h, tic6x.h: New.
ld:
* Makefile.am (ALL_EMULATIONS): Add eelf32_tic6x_be.o and
eelf32_tic6x_le.o.
(eelf32_tic6x_be.c, eelf32_tic6x_le.c): New.
* NEWS: Add news entry for TI C6X support.
* configure.tgt (tic6x-*-*): New.
* emulparams/elf32_tic6x_be.sh, emulparams/elf32_tic6x_le.sh: New.
ld/testsuite:
* ld-elf/flags1.d, ld-elf/merge.d: XFAIL for tic6x-*-*.
* ld-elf/sec-to-seg.exp: Set B_test_same_seg to 0 for tic6x-*-*.
* ld-tic6x: New directory and testcases.
opcodes:
* Makefile.am (TARGET_LIBOPCODES_CFILES): Add tic6x-dis.c.
* Makefile.in: Regenerate.
* configure.in (bfd_tic6x_arch): New.
* configure: Regenerate.
* disassemble.c (ARCH_tic6x): Define if ARCH_all.
(disassembler): Handle TI C6X.
* tic6x-dis.c: New.
2010-03-26 05:12:36 +08:00
|
|
|
${GENSCRIPTS} elf32_tic6x_le "$(tdir_elf32_tic6x_le)"
|
ld/
(eelf32_tic6x_linux_be.c, eelf32_tic6x_linux_le.c,
eelf32_tic6x_elf_be.c, eelf32_tic6x_elf_le.c): New rules.
* Makefile.am (ALL_EMULATIONS): Add these files.
(eelf32_tic6x_be.c, eelf32_tic6x_le.c): Depend on tic6xdsbt.em.
* Makefile.in: Regenerated.
* emultempl/tic6xdsbt.em (is_tic6x_target): Allow more tic6x target
vectors.
* emulparams/elf32_tic6x_elf_be.sh: New file.
* emulparams/elf32_tic6x_elf_le.sh: New file.
* emulparams/elf32_tic6x_linux_be.sh: New file.
* emulparams/elf32_tic6x_linux_le.sh: New file.
* configure.tgt (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
ld/testsuite/
* ld-tic6x/dsbt.ld (OUTPUT_FORMAT): Add.
* ld-tic6x/tic6x.exp: Add OSABI tests.
bfd/
* config.bfd (tic6x-*-elf, tic6x-*-uclinux): New.
(tic6x-*-*): Replaced by these.
* elf32-tic6x.c (elf32_tic6x_set_osabi): New static function.
(elf32_tic6x_check_relocs): Create dynamic sections if -shared.
(elf_backend_relocs_compatible, elf_backend_post_process_headers):
Define.
(elf32_bed, TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, TARGET_BIG_SYM,
TARGET_BIG_NAME, ELF_OSABI): Redefine twice, and include
"elf32-target.h" two more times.
* configure.in: Handle bfd_elf32_tic6x_linux_be_vec,
bfd_elf32_tic6x_linux_le_vec, bfd_elf32_tic6x_elf_be_vec and
bfd_elf32_tic6x_elf_le_vec.
* configure: Regenerate.
2011-05-14 02:15:33 +08:00
|
|
|
eelf32_tic6x_linux_be.c: $(srcdir)/emulparams/elf32_tic6x_linux_be.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc $(srcdir)/emultempl/tic6xdsbt.em \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32_tic6x_linux_be "$(tdir_elf32_tic6x_linux_be)"
|
|
|
|
eelf32_tic6x_linux_le.c: $(srcdir)/emulparams/elf32_tic6x_linux_le.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc $(srcdir)/emultempl/tic6xdsbt.em \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32_tic6x_linux_le "$(tdir_elf32_tic6x_linux_le)"
|
2011-06-03 18:36:39 +08:00
|
|
|
eelf32am33lin.c: $(srcdir)/emulparams/elf32am33lin.sh \
|
|
|
|
$(srcdir)/emulparams/elf32am33lin.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32am33lin "$(tdir_elf32am33lin)"
|
1999-05-03 15:29:11 +08:00
|
|
|
eelf32b4300.c: $(srcdir)/emulparams/elf32b4300.sh \
|
2006-07-29 16:48:15 +08:00
|
|
|
$(srcdir)/emulparams/elf32bmip.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} elf32b4300 "$(tdir_elf32b4300)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32bfin.c: $(srcdir)/emulparams/bfin.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/bfin.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32bfin "$(tdir_elf32bfin)" bfin
|
|
|
|
eelf32bfinfd.c: $(srcdir)/emulparams/elf32bfinfd.sh \
|
|
|
|
$(srcdir)/emulparams/bfin.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/bfin.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32bfinfd "$(tdir_elf32bfinfd)" elf32bfinfd
|
2006-07-29 16:48:15 +08:00
|
|
|
eelf32bmip.c: $(srcdir)/emulparams/elf32bmip.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} elf32bmip "$(tdir_elf32bmip)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32bmipn32.c: $(srcdir)/emulparams/elf32bmipn32.sh \
|
|
|
|
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/irix.em $(srcdir)/emultempl/mipself.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32bmipn32 "$(tdir_elf32bmipn32)"
|
1999-05-03 15:29:11 +08:00
|
|
|
eelf32bsmip.c: $(srcdir)/emulparams/elf32bsmip.sh \
|
2006-07-29 16:48:15 +08:00
|
|
|
$(srcdir)/emulparams/elf32bmip.sh $(ELF_DEPS) $(srcdir)/emultempl/irix.em \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} elf32bsmip "$(tdir_elf32bsmip)"
|
2000-07-02 09:15:56 +08:00
|
|
|
eelf32btsmip.c: $(srcdir)/emulparams/elf32btsmip.sh \
|
2006-07-29 16:48:15 +08:00
|
|
|
$(srcdir)/emulparams/elf32bmip.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2000-07-02 09:15:56 +08:00
|
|
|
${GENSCRIPTS} elf32btsmip "$(tdir_elf32btsmip)"
|
bfd/
2010-12-23 Robert Millan <rmh@gnu.org>
* config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.host: Likewise.
* configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
* configure: Regenerate.
* elf32-mips.c: New target for FreeBSD support
(same as traditional MIPS but overrides ELF_OSABI
with ELFOSABI_FREEBSD).
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.
* targets.c (_bfd_target_vector): Add
`bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
ld/
2010-12-14 Robert Millan <rmh@gnu.org>
* configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu.
* emulparams/elf32btsmip_fbsd.sh: New file.
* emulparams/elf32btsmipn32_fbsd.sh: Likewise.
* emulparams/elf32ltsmip_fbsd.sh: Likewise.
* emulparams/elf32ltsmipn32_fbsd.sh: Likewise.
* emulparams/elf64btsmip_fbsd.sh: Likewise.
* emulparams/elf64ltsmip_fbsd.sh: Likewise.
* Makefile.am: Add build rules for `eelf32btsmip_fbsd.c',
`eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c',
`eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and
`eelf64ltsmip_fbsd.c'.
* Makefile.in: Regenerate.
gas/
2010-12-19 Robert Millan <rmh@gnu.org>
Richard Sandiford <rdsandiford@googlemail.com>
* config/tc-mips.c (ELF_TARGET): New macro. Generates target
names accordingly to whether TE_FreeBSD and whether TE_TMIPS
are defined.
(mips_target_format): Refactor code using ELF_TARGET().
(support_64bit_objects): Likewise.
* configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.tgt: Likewise.
* configure: Regenerate.
binutils/testsuite/
* binutils-all/readelf.exp: Handle MIPS FreeBSD targets.
gas/testsuite/
* gas/mips/e32el-rel2.d: Accept any file format.
* gas/mips/elf-rel.d: Likewise.
* gas/mips/elf-rel2.d: Likewise.
* gas/mips/elf-rel3.d: Likewise.
* gas/mips/elfel-rel.d: Likewise.
* gas/mips/elfel-rel2.d: Likewise.
* gas/mips/elfel-rel3.d: Likewise.
* gas/mips/ldstla-32-mips3-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: Likewise.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/noat-1.d: Likewise.
* gas/mips/set-arch.d: Likewise.
* gas/mips/tls-o32.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets.
* ld-mips-elf/mips-elf.exp: Likewise.
* ld-mips-elf/mips16-call-global.d: Accept any file format.
* ld-mips-elf/mips16-intermix.d: Likewise.
2010-12-31 19:01:00 +08:00
|
|
|
eelf32btsmip_fbsd.c: $(srcdir)/emulparams/elf32btsmip_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf32bmip.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32btsmip_fbsd "$(tdir_elf32btsmip_fbsd)"
|
2002-07-31 07:48:30 +08:00
|
|
|
eelf32btsmipn32.c: $(srcdir)/emulparams/elf32btsmipn32.sh \
|
2006-07-29 16:48:15 +08:00
|
|
|
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2002-07-31 07:48:30 +08:00
|
|
|
${GENSCRIPTS} elf32btsmipn32 "$(tdir_elf32btsmipn32)"
|
bfd/
2010-12-23 Robert Millan <rmh@gnu.org>
* config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.host: Likewise.
* configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
* configure: Regenerate.
* elf32-mips.c: New target for FreeBSD support
(same as traditional MIPS but overrides ELF_OSABI
with ELFOSABI_FREEBSD).
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.
* targets.c (_bfd_target_vector): Add
`bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
ld/
2010-12-14 Robert Millan <rmh@gnu.org>
* configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu.
* emulparams/elf32btsmip_fbsd.sh: New file.
* emulparams/elf32btsmipn32_fbsd.sh: Likewise.
* emulparams/elf32ltsmip_fbsd.sh: Likewise.
* emulparams/elf32ltsmipn32_fbsd.sh: Likewise.
* emulparams/elf64btsmip_fbsd.sh: Likewise.
* emulparams/elf64ltsmip_fbsd.sh: Likewise.
* Makefile.am: Add build rules for `eelf32btsmip_fbsd.c',
`eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c',
`eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and
`eelf64ltsmip_fbsd.c'.
* Makefile.in: Regenerate.
gas/
2010-12-19 Robert Millan <rmh@gnu.org>
Richard Sandiford <rdsandiford@googlemail.com>
* config/tc-mips.c (ELF_TARGET): New macro. Generates target
names accordingly to whether TE_FreeBSD and whether TE_TMIPS
are defined.
(mips_target_format): Refactor code using ELF_TARGET().
(support_64bit_objects): Likewise.
* configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.tgt: Likewise.
* configure: Regenerate.
binutils/testsuite/
* binutils-all/readelf.exp: Handle MIPS FreeBSD targets.
gas/testsuite/
* gas/mips/e32el-rel2.d: Accept any file format.
* gas/mips/elf-rel.d: Likewise.
* gas/mips/elf-rel2.d: Likewise.
* gas/mips/elf-rel3.d: Likewise.
* gas/mips/elfel-rel.d: Likewise.
* gas/mips/elfel-rel2.d: Likewise.
* gas/mips/elfel-rel3.d: Likewise.
* gas/mips/ldstla-32-mips3-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: Likewise.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/noat-1.d: Likewise.
* gas/mips/set-arch.d: Likewise.
* gas/mips/tls-o32.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets.
* ld-mips-elf/mips-elf.exp: Likewise.
* ld-mips-elf/mips16-call-global.d: Accept any file format.
* ld-mips-elf/mips16-intermix.d: Likewise.
2010-12-31 19:01:00 +08:00
|
|
|
eelf32btsmipn32_fbsd.c: $(srcdir)/emulparams/elf32btsmipn32_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32btsmipn32_fbsd "$(tdir_elf32btsmipn32_fbsd)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32cr16.c: $(srcdir)/emulparams/elf32cr16.sh \
|
|
|
|
$(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/cr16elf.em \
|
|
|
|
$(srcdir)/scripttempl/elf32cr16.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32cr16 "$(tdir_elf32crx)"
|
|
|
|
eelf32cr16c.c: $(srcdir)/emulparams/elf32cr16c.sh \
|
|
|
|
$(ELF_DEPS) \
|
|
|
|
$(srcdir)/scripttempl/elf32cr16c.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32cr16c "$(tdir_elf32cr16c)"
|
|
|
|
eelf32crx.c: $(srcdir)/emulparams/elf32crx.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/crxelf.em \
|
|
|
|
$(srcdir)/scripttempl/elf32crx.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32crx "$(tdir_elf32crx)"
|
1999-05-03 15:29:11 +08:00
|
|
|
eelf32ebmip.c: $(srcdir)/emulparams/elf32ebmip.sh \
|
2006-07-29 16:48:15 +08:00
|
|
|
$(srcdir)/emulparams/elf32bmip.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} elf32ebmip "$(tdir_elf32ebmip)"
|
Richard Sandiford <richard@codesourcery.com>
Daniel Jacobowitz <dan@codesourcery.com>
Phil Edwards <phil@codesourcery.com>
Zack Weinberg <zack@codesourcery.com>
Mark Mitchell <mark@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
bfd/
* bfd-in2.h: Regenerate.
* config.bfd (mips*-*-vxworks*, mips*el-*-vxworks*): New stanzas.
* configure.in (bfd_elf32_bigmips_vxworks_vec): New stanza.
(bfd_elf32_littlemips_vxworks_vec): Likewise.
(bfd_elf32_bigmips_vec): Add elf-vxworks.lo.
(bfd_elf32_littlemips_vec): Likewise.
(bfd_elf32_nbigmips_vec): Likewise.
(bfd_elf32_nlittlemips_vec): Likewise.
(bfd_elf32_ntradbigmips_vec): Likewise.
(bfd_elf32_ntradlittlemips_vec): Likewise.
(bfd_elf32_tradbigmips_vec): Likewise.
(bfd_elf32_tradlittlemips_vec): Likewise.
(bfd_elf64_bigmips_vec): Likewise.
(bfd_elf64_littlemips_vec): Likewise.
(bfd_elf64_tradbigmips_vec): Likewise.
(bfd_elf64_tradlittlemips_vec): Likewise.
* elf32-mips.c: Include elf-vxworks.h.
(mips_info_to_howto_rel): Use elf_backend_mips_rtype_to_howto
instead of calling mips_elf32_rtype_to_howto directly.
(mips_vxworks_copy_howto_rela): New reloc howto.
(mips_vxworks_jump_slot_howto_rela): Likewise.
(mips_vxworks_bfd_reloc_type_lookup): New function.
(mips_vxworks_rtype_to_howto): Likewise.
(mips_vxworks_final_write_processing): Likewise.
(TARGET_LITTLE_SYM, TARGET_LITTLE_NAME): Override for VxWorks.
(TARGET_BIG_SYM, TARGET_BIG_NAME, elf_bed, ELF_MAXPAGESIZE): Likewise.
(elf_backend_want_got_plt): Likewise.
(elf_backend_want_plt_sym): Likewise.
(elf_backend_got_symbol_offset): Likewise.
(elf_backend_want_dynbss): Likewise.
(elf_backend_may_use_rel_p): Likewise.
(elf_backend_may_use_rela_p): Likewise.
(elf_backend_default_use_rela_p): Likewise.
(elf_backend_got_header_size: Likewise.
(elf_backend_plt_readonly): Likewise.
(bfd_elf32_bfd_reloc_type_lookup): Likewise.
(elf_backend_mips_rtype_to_howto): Likewise.
(elf_backend_adjust_dynamic_symbol): Likewise.
(elf_backend_finish_dynamic_symbol): Likewise.
(bfd_elf32_bfd_link_hash_table_create): Likewise.
(elf_backend_add_symbol_hook): Likewise.
(elf_backend_link_output_symbol_hook): Likewise.
(elf_backend_emit_relocs): Likewise.
(elf_backend_final_write_processing: Likewise.
(elf_backend_additional_program_headers): Likewise.
(elf_backend_modify_segment_map): Likewise.
(elf_backend_symbol_processing): Likewise.
* elfxx-mips.c: Include elf-vxworks.h.
(mips_elf_link_hash_entry): Add is_relocation_target and
is_branch_target fields.
(mips_elf_link_hash_table): Add is_vxworks, srelbss, sdynbss, srelplt,
srelplt2, sgotplt, splt, plt_header_size and plt_entry_size fields.
(MIPS_ELF_RELA_SIZE, MIPS_ELF_REL_DYN_NAME): New macros.
(MIPS_RESERVED_GOTNO): Take a mips_elf_link_hash_table argument.
Return 3 for VxWorks.
(ELF_MIPS_GP_OFFSET): Change the argument from a bfd to a
mips_elf_link_hash_table. Return 0 for VxWorks.
(MIPS_ELF_GOT_MAX_SIZE): Change the argument from a bfd to a
mips_elf_link_hash_table. Update the call to ELF_MIPS_GP_OFFSET.
(mips_vxworks_exec_plt0_entry): New variable.
(mips_vxworks_exec_plt_entry): Likewise.
(mips_vxworks_shared_plt0_entry): Likewise.
(mips_vxworks_shared_plt_entry): Likewise.
(mips_elf_link_hash_newfunc): Initialize the new hash_entry fields.
(mips_elf_rel_dyn_section): Change the bfd argument to a
mips_elf_link_hash_table. Use MIPS_ELF_REL_DYN_NAME to get
the name of the section.
(mips_elf_initialize_tls_slots): Update the call to
mips_elf_rel_dyn_section.
(mips_elf_gotplt_index): New function.
(mips_elf_local_got_index): Add an input_section argument.
Update the call to mips_elf_create_local_got_entry.
(mips_elf_got_page): Likewise.
(mips_elf_got16_entry): Likewise.
(mips_elf_create_local_got_entry): Add bfd_link_info and input_section
arguments. Create dynamic relocations for each entry on VxWorks.
(mips_elf_merge_gots): Update the use of MIPS_ELF_GOT_MAX_SIZE.
(mips_elf_multi_got): Update the uses of MIPS_ELF_GOT_MAX_SIZE
and MIPS_RESERVED_GOTNO.
(mips_elf_create_got_section): Update the uses of
MIPS_ELF_GOT_MAX_SIZE. Create .got.plt on VxWorks.
(is_gott_symbol): New function.
(mips_elf_calculate_relocation): Use a dynobj local variable.
Update the calls to mips_elf_local_got_index, mips_elf_got16_entry and
mips_elf_got_page_entry. Set G to the .got.plt entry when calculating
VxWorks R_MIPS_CALL* relocations. Calculate and use G for all GOT
relocations on VxWorks. Add dynamic relocations for references
to the VxWorks __GOTT_BASE__ and __GOTT_INDEX__ symbols. Don't
create dynamic relocations for R_MIPS_32, R_MIPS_REL32 or R_MIPS_64
in VxWorks executables.
(mips_elf_allocate_dynamic_relocations): Add a bfd_link_info argument.
Use MIPS_ELF_RELA_SIZE to calculate the size of a VxWorks entry.
Don't allocate a null entry on VxWorks.
(mips_elf_create_dynamic_relocation): Update the call to
mips_elf_rel_dyn_section. Use absolute rather than relative
relocations for VxWorks, and make them RELA rather than REL.
(_bfd_mips_elf_create_dynamic_sections): Don't make .dynamic
read-only on VxWorks. Update the call to mips_elf_rel_dyn_section.
Create the .plt, .rela.plt, .dynbss and .rela.bss sections on
VxWorks. Likewise create the _PROCEDURE_LINKAGE_TABLE symbol.
Call elf_vxworks_create_dynamic_sections for VxWorks and
initialize the plt_header_size and plt_entry_size fields.
(_bfd_mips_elf_check_relocs): Don't allow GOT relocations to be
used in VxWorks executables. Don't allocate dynamic relocations
for R_MIPS_32, R_MIPS_REL32 or R_MIPS_64 in VxWorks executables.
Set is_relocation_target for each symbol referenced by a relocation.
Allocate .rela.dyn entries for relocations against the special
VxWorks __GOTT_BASE__ and __GOTT_INDEX__ symbols. Create GOT
entries for all VxWorks R_MIPS_GOT16 relocations. Don't allocate
a global GOT entry for symbols mentioned in VxWorks R_MIPS_CALL*,
R_MIPS_32, R_MIPS_REL32 or R_MIPS_64 relocations. Update the calls
to mips_elf_rel_dyn_section and mips_elf_allocate_dynamic_relocations.
Set is_branch_target for symbols mentioned in R_MIPS_PC16 or R_MIPS_26
relocations. Don't set no_fn_stub on VxWorks.
(_bfd_mips_elf_adjust_dynamic_symbol): Update the call to
mips_elf_allocate_dynamic_relocations.
(_bfd_mips_vxworks_adjust_dynamic_symbol): New function.
(_bfd_mips_elf_always_size_sections): Do not allocate GOT page
entries for VxWorks, and do not create multiple GOTs.
(_bfd_mips_elf_size_dynamic_sections): Use MIPS_ELF_REL_DYN_NAME.
Handle .got specially for VxWorks. Update the uses of
MIPS_RESERVED_GOTNO and mips_elf_allocate_dynamic_relocations.
Check for sgotplt and splt. Allocate the .rel(a).dyn contents last,
once its final size is known. Set DF_TEXTREL for VxWorks. Add
DT_RELA, DT_RELASZ, DT_RELAENT, DT_PLTREL, DT_PLTRELSZ and DT_JMPREL
tags on VxWorks. Do not add the MIPS-specific tags for VxWorks.
(_bfd_mips_vxworks_finish_dynamic_symbol): New function.
(mips_vxworks_finish_exec_plt): Likewise.
(mips_vxworks_finish_shared_plt): Likewise.
(_bfd_mips_elf_finish_dynamic_sections): Remove an unncessary call
to mips_elf_rel_dyn_section. Use a VxWorks-specific value of
DT_PLTGOT. Handle DT_RELA, DT_RELASZ, DT_RELAENT, DT_PLTREL,
DT_PLTRELSZ and DT_JMPREL. Update the uses of MIPS_RESERVED_GOTNO
and mips_elf_rel_dyn_section. Use a different GOT header for
VxWorks. Don't sort .rela.dyn on VxWorks. Finish the PLT on VxWorks.
(_bfd_mips_elf_link_hash_table_create): Initialize the new
mips_elf_link_hash_table fields.
(_bfd_mips_vxworks_link_hash_table_create): New function.
(_bfd_mips_elf_final_link): Set the GP value to _GLOBAL_OFFSET_TABLE_
on VxWorks. Update the call to ELF_MIPS_GP_OFFSET.
* elfxx-mips.h (_bfd_mips_vxworks_adjust_dynamic_symbol): Declare.
(_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
(_bfd_mips_vxworks_link_hash_table_create): Likewise.
* libbfd.h: Regenerate.
* Makefile.am (elfxx-mips.lo): Depend on elf-vxworks.h.
(elf32-mips.lo): Likewise.
* Makefile.in: Regenerate.
* reloc.c (BFD_RELOC_MIPS_COPY, BFD_RELOC_MIPS_JUMP_SLOT): Declare.
* targets.c (bfd_elf32_bigmips_vxworks_vec): Declare.
(bfd_elf32_littlemips_vxworks_vec): Likewise.
(_bfd_target_vector): Add entries for them.
gas/
* config/tc-mips.c (mips_target_format): Handle vxworks targets.
(md_begin): Complain about -G being used for PIC. Don't change
the text, data and bss alignments on VxWorks.
(reloc_needs_lo_p): Don't return true for R_MIPS_GOT16 when
generating VxWorks PIC.
(load_address): Extend SVR4_PIC handling to VXWORKS_PIC.
(macro): Likewise, but do not treat la $25 specially for
VxWorks PIC, and do not handle jal.
(OPTION_MVXWORKS_PIC): New macro.
(md_longopts): Add -mvxworks-pic.
(md_parse_option): Don't complain about using PIC and -G together here.
Handle OPTION_MVXWORKS_PIC.
(md_estimate_size_before_relax): Always use the first relaxation
sequence on VxWorks.
* config/tc-mips.h (VXWORKS_PIC): New.
gas/testsuite/
* gas/mips/vxworks1.s, gas/mips/vxworks1.d,
* gas/mips/vxworks1-xgot.d: New tests.
* gas/mips/mips.exp: Run them. Do not run other tests on VxWorks.
include/elf/
* mips.h (R_MIPS_COPY, R_MIPS_JUMP_SLOT): New relocs.
ld/
* configure.tgt (mips*el-*-vxworks*, mips*-*-vxworks*): Use
separate VxWorks emulations.
* emulparams/elf32ebmipvxworks.sh: New file.
* emulparams/elf32elmipvxworks.sh: New file.
* Makefile.am (ALL_EMULATIONS): Add eelf32ebmipvxworks.o and
eelf32elmipvxworks.o.
(eelf32ebmipvxworks.c, eelf32elmipvxworks.c): New rules.
* Makefile.in: Regenerate.
ld/testsuite/
* ld-mips/vxworks1.dd, ld-mips/vxworks1.ld, ld-mips/vxworks1-lib.dd,
* ld-mips/vxworks1-lib.nd, ld-mips/vxworks1-lib.rd,
* ld-mips/vxworks1-lib.s, ld-mips/vxworks1.rd, ld-mips/vxworks1.s,
* ld-mips/vxworks1-static.d, ld-mips/vxworks2.s, ld-mips/vxworks2.sd,
* ld-mips/vxworks2-static.sd: New tests.
* ld-mips/mips-elf.exp: Run them.
2006-03-22 17:28:15 +08:00
|
|
|
eelf32ebmipvxworks.c: $(srcdir)/emulparams/elf32ebmipvxworks.sh \
|
2006-07-29 16:48:15 +08:00
|
|
|
$(srcdir)/emulparams/elf32bmip.sh $(srcdir)/emulparams/vxworks.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/generic.em $(srcdir)/emultempl/mipself.em \
|
|
|
|
$(srcdir)/emultempl/vxworks.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
Richard Sandiford <richard@codesourcery.com>
Daniel Jacobowitz <dan@codesourcery.com>
Phil Edwards <phil@codesourcery.com>
Zack Weinberg <zack@codesourcery.com>
Mark Mitchell <mark@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
bfd/
* bfd-in2.h: Regenerate.
* config.bfd (mips*-*-vxworks*, mips*el-*-vxworks*): New stanzas.
* configure.in (bfd_elf32_bigmips_vxworks_vec): New stanza.
(bfd_elf32_littlemips_vxworks_vec): Likewise.
(bfd_elf32_bigmips_vec): Add elf-vxworks.lo.
(bfd_elf32_littlemips_vec): Likewise.
(bfd_elf32_nbigmips_vec): Likewise.
(bfd_elf32_nlittlemips_vec): Likewise.
(bfd_elf32_ntradbigmips_vec): Likewise.
(bfd_elf32_ntradlittlemips_vec): Likewise.
(bfd_elf32_tradbigmips_vec): Likewise.
(bfd_elf32_tradlittlemips_vec): Likewise.
(bfd_elf64_bigmips_vec): Likewise.
(bfd_elf64_littlemips_vec): Likewise.
(bfd_elf64_tradbigmips_vec): Likewise.
(bfd_elf64_tradlittlemips_vec): Likewise.
* elf32-mips.c: Include elf-vxworks.h.
(mips_info_to_howto_rel): Use elf_backend_mips_rtype_to_howto
instead of calling mips_elf32_rtype_to_howto directly.
(mips_vxworks_copy_howto_rela): New reloc howto.
(mips_vxworks_jump_slot_howto_rela): Likewise.
(mips_vxworks_bfd_reloc_type_lookup): New function.
(mips_vxworks_rtype_to_howto): Likewise.
(mips_vxworks_final_write_processing): Likewise.
(TARGET_LITTLE_SYM, TARGET_LITTLE_NAME): Override for VxWorks.
(TARGET_BIG_SYM, TARGET_BIG_NAME, elf_bed, ELF_MAXPAGESIZE): Likewise.
(elf_backend_want_got_plt): Likewise.
(elf_backend_want_plt_sym): Likewise.
(elf_backend_got_symbol_offset): Likewise.
(elf_backend_want_dynbss): Likewise.
(elf_backend_may_use_rel_p): Likewise.
(elf_backend_may_use_rela_p): Likewise.
(elf_backend_default_use_rela_p): Likewise.
(elf_backend_got_header_size: Likewise.
(elf_backend_plt_readonly): Likewise.
(bfd_elf32_bfd_reloc_type_lookup): Likewise.
(elf_backend_mips_rtype_to_howto): Likewise.
(elf_backend_adjust_dynamic_symbol): Likewise.
(elf_backend_finish_dynamic_symbol): Likewise.
(bfd_elf32_bfd_link_hash_table_create): Likewise.
(elf_backend_add_symbol_hook): Likewise.
(elf_backend_link_output_symbol_hook): Likewise.
(elf_backend_emit_relocs): Likewise.
(elf_backend_final_write_processing: Likewise.
(elf_backend_additional_program_headers): Likewise.
(elf_backend_modify_segment_map): Likewise.
(elf_backend_symbol_processing): Likewise.
* elfxx-mips.c: Include elf-vxworks.h.
(mips_elf_link_hash_entry): Add is_relocation_target and
is_branch_target fields.
(mips_elf_link_hash_table): Add is_vxworks, srelbss, sdynbss, srelplt,
srelplt2, sgotplt, splt, plt_header_size and plt_entry_size fields.
(MIPS_ELF_RELA_SIZE, MIPS_ELF_REL_DYN_NAME): New macros.
(MIPS_RESERVED_GOTNO): Take a mips_elf_link_hash_table argument.
Return 3 for VxWorks.
(ELF_MIPS_GP_OFFSET): Change the argument from a bfd to a
mips_elf_link_hash_table. Return 0 for VxWorks.
(MIPS_ELF_GOT_MAX_SIZE): Change the argument from a bfd to a
mips_elf_link_hash_table. Update the call to ELF_MIPS_GP_OFFSET.
(mips_vxworks_exec_plt0_entry): New variable.
(mips_vxworks_exec_plt_entry): Likewise.
(mips_vxworks_shared_plt0_entry): Likewise.
(mips_vxworks_shared_plt_entry): Likewise.
(mips_elf_link_hash_newfunc): Initialize the new hash_entry fields.
(mips_elf_rel_dyn_section): Change the bfd argument to a
mips_elf_link_hash_table. Use MIPS_ELF_REL_DYN_NAME to get
the name of the section.
(mips_elf_initialize_tls_slots): Update the call to
mips_elf_rel_dyn_section.
(mips_elf_gotplt_index): New function.
(mips_elf_local_got_index): Add an input_section argument.
Update the call to mips_elf_create_local_got_entry.
(mips_elf_got_page): Likewise.
(mips_elf_got16_entry): Likewise.
(mips_elf_create_local_got_entry): Add bfd_link_info and input_section
arguments. Create dynamic relocations for each entry on VxWorks.
(mips_elf_merge_gots): Update the use of MIPS_ELF_GOT_MAX_SIZE.
(mips_elf_multi_got): Update the uses of MIPS_ELF_GOT_MAX_SIZE
and MIPS_RESERVED_GOTNO.
(mips_elf_create_got_section): Update the uses of
MIPS_ELF_GOT_MAX_SIZE. Create .got.plt on VxWorks.
(is_gott_symbol): New function.
(mips_elf_calculate_relocation): Use a dynobj local variable.
Update the calls to mips_elf_local_got_index, mips_elf_got16_entry and
mips_elf_got_page_entry. Set G to the .got.plt entry when calculating
VxWorks R_MIPS_CALL* relocations. Calculate and use G for all GOT
relocations on VxWorks. Add dynamic relocations for references
to the VxWorks __GOTT_BASE__ and __GOTT_INDEX__ symbols. Don't
create dynamic relocations for R_MIPS_32, R_MIPS_REL32 or R_MIPS_64
in VxWorks executables.
(mips_elf_allocate_dynamic_relocations): Add a bfd_link_info argument.
Use MIPS_ELF_RELA_SIZE to calculate the size of a VxWorks entry.
Don't allocate a null entry on VxWorks.
(mips_elf_create_dynamic_relocation): Update the call to
mips_elf_rel_dyn_section. Use absolute rather than relative
relocations for VxWorks, and make them RELA rather than REL.
(_bfd_mips_elf_create_dynamic_sections): Don't make .dynamic
read-only on VxWorks. Update the call to mips_elf_rel_dyn_section.
Create the .plt, .rela.plt, .dynbss and .rela.bss sections on
VxWorks. Likewise create the _PROCEDURE_LINKAGE_TABLE symbol.
Call elf_vxworks_create_dynamic_sections for VxWorks and
initialize the plt_header_size and plt_entry_size fields.
(_bfd_mips_elf_check_relocs): Don't allow GOT relocations to be
used in VxWorks executables. Don't allocate dynamic relocations
for R_MIPS_32, R_MIPS_REL32 or R_MIPS_64 in VxWorks executables.
Set is_relocation_target for each symbol referenced by a relocation.
Allocate .rela.dyn entries for relocations against the special
VxWorks __GOTT_BASE__ and __GOTT_INDEX__ symbols. Create GOT
entries for all VxWorks R_MIPS_GOT16 relocations. Don't allocate
a global GOT entry for symbols mentioned in VxWorks R_MIPS_CALL*,
R_MIPS_32, R_MIPS_REL32 or R_MIPS_64 relocations. Update the calls
to mips_elf_rel_dyn_section and mips_elf_allocate_dynamic_relocations.
Set is_branch_target for symbols mentioned in R_MIPS_PC16 or R_MIPS_26
relocations. Don't set no_fn_stub on VxWorks.
(_bfd_mips_elf_adjust_dynamic_symbol): Update the call to
mips_elf_allocate_dynamic_relocations.
(_bfd_mips_vxworks_adjust_dynamic_symbol): New function.
(_bfd_mips_elf_always_size_sections): Do not allocate GOT page
entries for VxWorks, and do not create multiple GOTs.
(_bfd_mips_elf_size_dynamic_sections): Use MIPS_ELF_REL_DYN_NAME.
Handle .got specially for VxWorks. Update the uses of
MIPS_RESERVED_GOTNO and mips_elf_allocate_dynamic_relocations.
Check for sgotplt and splt. Allocate the .rel(a).dyn contents last,
once its final size is known. Set DF_TEXTREL for VxWorks. Add
DT_RELA, DT_RELASZ, DT_RELAENT, DT_PLTREL, DT_PLTRELSZ and DT_JMPREL
tags on VxWorks. Do not add the MIPS-specific tags for VxWorks.
(_bfd_mips_vxworks_finish_dynamic_symbol): New function.
(mips_vxworks_finish_exec_plt): Likewise.
(mips_vxworks_finish_shared_plt): Likewise.
(_bfd_mips_elf_finish_dynamic_sections): Remove an unncessary call
to mips_elf_rel_dyn_section. Use a VxWorks-specific value of
DT_PLTGOT. Handle DT_RELA, DT_RELASZ, DT_RELAENT, DT_PLTREL,
DT_PLTRELSZ and DT_JMPREL. Update the uses of MIPS_RESERVED_GOTNO
and mips_elf_rel_dyn_section. Use a different GOT header for
VxWorks. Don't sort .rela.dyn on VxWorks. Finish the PLT on VxWorks.
(_bfd_mips_elf_link_hash_table_create): Initialize the new
mips_elf_link_hash_table fields.
(_bfd_mips_vxworks_link_hash_table_create): New function.
(_bfd_mips_elf_final_link): Set the GP value to _GLOBAL_OFFSET_TABLE_
on VxWorks. Update the call to ELF_MIPS_GP_OFFSET.
* elfxx-mips.h (_bfd_mips_vxworks_adjust_dynamic_symbol): Declare.
(_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
(_bfd_mips_vxworks_link_hash_table_create): Likewise.
* libbfd.h: Regenerate.
* Makefile.am (elfxx-mips.lo): Depend on elf-vxworks.h.
(elf32-mips.lo): Likewise.
* Makefile.in: Regenerate.
* reloc.c (BFD_RELOC_MIPS_COPY, BFD_RELOC_MIPS_JUMP_SLOT): Declare.
* targets.c (bfd_elf32_bigmips_vxworks_vec): Declare.
(bfd_elf32_littlemips_vxworks_vec): Likewise.
(_bfd_target_vector): Add entries for them.
gas/
* config/tc-mips.c (mips_target_format): Handle vxworks targets.
(md_begin): Complain about -G being used for PIC. Don't change
the text, data and bss alignments on VxWorks.
(reloc_needs_lo_p): Don't return true for R_MIPS_GOT16 when
generating VxWorks PIC.
(load_address): Extend SVR4_PIC handling to VXWORKS_PIC.
(macro): Likewise, but do not treat la $25 specially for
VxWorks PIC, and do not handle jal.
(OPTION_MVXWORKS_PIC): New macro.
(md_longopts): Add -mvxworks-pic.
(md_parse_option): Don't complain about using PIC and -G together here.
Handle OPTION_MVXWORKS_PIC.
(md_estimate_size_before_relax): Always use the first relaxation
sequence on VxWorks.
* config/tc-mips.h (VXWORKS_PIC): New.
gas/testsuite/
* gas/mips/vxworks1.s, gas/mips/vxworks1.d,
* gas/mips/vxworks1-xgot.d: New tests.
* gas/mips/mips.exp: Run them. Do not run other tests on VxWorks.
include/elf/
* mips.h (R_MIPS_COPY, R_MIPS_JUMP_SLOT): New relocs.
ld/
* configure.tgt (mips*el-*-vxworks*, mips*-*-vxworks*): Use
separate VxWorks emulations.
* emulparams/elf32ebmipvxworks.sh: New file.
* emulparams/elf32elmipvxworks.sh: New file.
* Makefile.am (ALL_EMULATIONS): Add eelf32ebmipvxworks.o and
eelf32elmipvxworks.o.
(eelf32ebmipvxworks.c, eelf32elmipvxworks.c): New rules.
* Makefile.in: Regenerate.
ld/testsuite/
* ld-mips/vxworks1.dd, ld-mips/vxworks1.ld, ld-mips/vxworks1-lib.dd,
* ld-mips/vxworks1-lib.nd, ld-mips/vxworks1-lib.rd,
* ld-mips/vxworks1-lib.s, ld-mips/vxworks1.rd, ld-mips/vxworks1.s,
* ld-mips/vxworks1-static.d, ld-mips/vxworks2.s, ld-mips/vxworks2.sd,
* ld-mips/vxworks2-static.sd: New tests.
* ld-mips/mips-elf.exp: Run them.
2006-03-22 17:28:15 +08:00
|
|
|
${GENSCRIPTS} elf32ebmipvxworks "$(tdir_elf32ebmipvxworks)"
|
1999-05-03 15:29:11 +08:00
|
|
|
eelf32elmip.c: $(srcdir)/emulparams/elf32elmip.sh \
|
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
(config.status): Delete rule.
Add extra dependencies to cover sourced emulparams files.
* Makefile.in: Regenerate.
* scripttempl/elf.sc: Order <section>, <section>.* and
corresponding linkonce sections as seen in input files.
Formatting fixes. Zero vma of all sections if not relocating.
(STACK): Define and insert if STACK_ADDR defined.
(OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
(OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
(OTHER_READWRITE_SECTIONS): Likewise.
(OTHER_GOT_SECTIONS): Likewise.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_BSS_SECTIONS): Likewise.
* scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise.
* scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise
* emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
(STACK_ADDR): Define.
* emulparams/armelf_oabi.sh: As for armelf.sh.
* emulparams/elf32mcore.sh: As for armelf.sh.
* emulparams/h8300elf.sh: As for armelf.sh.
* emulparams/mn10200.sh: As for armelf.sh.
* emulparams/shelf.sh: As for armelf.sh.
* emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
* emulparams/m32relf.sh: As for elf32fr30.sh.
* emulparams/h8300helf.sh: As for elf32fr30.sh.
* emulparams/h8300self.sh: As for elf32fr30.sh.
* emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
defines with RELOCATING test.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_END_SYMBOLS): ..this.
* emulparams/crislinux.sh: As for criself.sh.
* emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
if not relocating.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
normal and linkonce sections as seen in input files.
* emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
(TEXT_DYNAMIC): Likewise.
(INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
(OTHER_SDATA_SECTIONS): Likewise.
* emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
(OTHER_PLT_RELOC_SECTIONS): Likewise.
(OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
sections as seen in input files.
* emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
* emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
if not relocating.
(OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
(OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
* emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_SECTIONS): Instead, use this..
(OTHER_END_SYMBOLS): ..and this.
* emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
* emulparams/elf32bsmip.sh: Likewise.
* emulparams/elf32btsmip.sh: Likewise.
* emulparams/elf32ebmip.sh: Likewise.
* emulparams/elf32lmip.sh: Likewise.
* emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
* emulparams/elf32lsmip.sh: Likewise.
* emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
* emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
* emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
* emulparams/elf64btsmip.sh: Likewise.
* emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
* emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
* emulparams/elf32ppclinux.sh: Likewise.
* emulparams/elf32ppcsim.sh: Likewise.
* emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
* emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
* emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
* emulparams/h8300self.sh: Likewise.
* emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
* emulparams/sh.sh: Comment.
* emulparams/shl.sh: Source sh.sh, remove duplicates.
* emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
* emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
2001-11-22 17:08:05 +08:00
|
|
|
$(srcdir)/emulparams/elf32lmip.sh $(srcdir)/emulparams/elf32bmip.sh \
|
2006-07-29 16:48:15 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc \
|
|
|
|
${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} elf32elmip "$(tdir_elf32elmip)"
|
Richard Sandiford <richard@codesourcery.com>
Daniel Jacobowitz <dan@codesourcery.com>
Phil Edwards <phil@codesourcery.com>
Zack Weinberg <zack@codesourcery.com>
Mark Mitchell <mark@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
bfd/
* bfd-in2.h: Regenerate.
* config.bfd (mips*-*-vxworks*, mips*el-*-vxworks*): New stanzas.
* configure.in (bfd_elf32_bigmips_vxworks_vec): New stanza.
(bfd_elf32_littlemips_vxworks_vec): Likewise.
(bfd_elf32_bigmips_vec): Add elf-vxworks.lo.
(bfd_elf32_littlemips_vec): Likewise.
(bfd_elf32_nbigmips_vec): Likewise.
(bfd_elf32_nlittlemips_vec): Likewise.
(bfd_elf32_ntradbigmips_vec): Likewise.
(bfd_elf32_ntradlittlemips_vec): Likewise.
(bfd_elf32_tradbigmips_vec): Likewise.
(bfd_elf32_tradlittlemips_vec): Likewise.
(bfd_elf64_bigmips_vec): Likewise.
(bfd_elf64_littlemips_vec): Likewise.
(bfd_elf64_tradbigmips_vec): Likewise.
(bfd_elf64_tradlittlemips_vec): Likewise.
* elf32-mips.c: Include elf-vxworks.h.
(mips_info_to_howto_rel): Use elf_backend_mips_rtype_to_howto
instead of calling mips_elf32_rtype_to_howto directly.
(mips_vxworks_copy_howto_rela): New reloc howto.
(mips_vxworks_jump_slot_howto_rela): Likewise.
(mips_vxworks_bfd_reloc_type_lookup): New function.
(mips_vxworks_rtype_to_howto): Likewise.
(mips_vxworks_final_write_processing): Likewise.
(TARGET_LITTLE_SYM, TARGET_LITTLE_NAME): Override for VxWorks.
(TARGET_BIG_SYM, TARGET_BIG_NAME, elf_bed, ELF_MAXPAGESIZE): Likewise.
(elf_backend_want_got_plt): Likewise.
(elf_backend_want_plt_sym): Likewise.
(elf_backend_got_symbol_offset): Likewise.
(elf_backend_want_dynbss): Likewise.
(elf_backend_may_use_rel_p): Likewise.
(elf_backend_may_use_rela_p): Likewise.
(elf_backend_default_use_rela_p): Likewise.
(elf_backend_got_header_size: Likewise.
(elf_backend_plt_readonly): Likewise.
(bfd_elf32_bfd_reloc_type_lookup): Likewise.
(elf_backend_mips_rtype_to_howto): Likewise.
(elf_backend_adjust_dynamic_symbol): Likewise.
(elf_backend_finish_dynamic_symbol): Likewise.
(bfd_elf32_bfd_link_hash_table_create): Likewise.
(elf_backend_add_symbol_hook): Likewise.
(elf_backend_link_output_symbol_hook): Likewise.
(elf_backend_emit_relocs): Likewise.
(elf_backend_final_write_processing: Likewise.
(elf_backend_additional_program_headers): Likewise.
(elf_backend_modify_segment_map): Likewise.
(elf_backend_symbol_processing): Likewise.
* elfxx-mips.c: Include elf-vxworks.h.
(mips_elf_link_hash_entry): Add is_relocation_target and
is_branch_target fields.
(mips_elf_link_hash_table): Add is_vxworks, srelbss, sdynbss, srelplt,
srelplt2, sgotplt, splt, plt_header_size and plt_entry_size fields.
(MIPS_ELF_RELA_SIZE, MIPS_ELF_REL_DYN_NAME): New macros.
(MIPS_RESERVED_GOTNO): Take a mips_elf_link_hash_table argument.
Return 3 for VxWorks.
(ELF_MIPS_GP_OFFSET): Change the argument from a bfd to a
mips_elf_link_hash_table. Return 0 for VxWorks.
(MIPS_ELF_GOT_MAX_SIZE): Change the argument from a bfd to a
mips_elf_link_hash_table. Update the call to ELF_MIPS_GP_OFFSET.
(mips_vxworks_exec_plt0_entry): New variable.
(mips_vxworks_exec_plt_entry): Likewise.
(mips_vxworks_shared_plt0_entry): Likewise.
(mips_vxworks_shared_plt_entry): Likewise.
(mips_elf_link_hash_newfunc): Initialize the new hash_entry fields.
(mips_elf_rel_dyn_section): Change the bfd argument to a
mips_elf_link_hash_table. Use MIPS_ELF_REL_DYN_NAME to get
the name of the section.
(mips_elf_initialize_tls_slots): Update the call to
mips_elf_rel_dyn_section.
(mips_elf_gotplt_index): New function.
(mips_elf_local_got_index): Add an input_section argument.
Update the call to mips_elf_create_local_got_entry.
(mips_elf_got_page): Likewise.
(mips_elf_got16_entry): Likewise.
(mips_elf_create_local_got_entry): Add bfd_link_info and input_section
arguments. Create dynamic relocations for each entry on VxWorks.
(mips_elf_merge_gots): Update the use of MIPS_ELF_GOT_MAX_SIZE.
(mips_elf_multi_got): Update the uses of MIPS_ELF_GOT_MAX_SIZE
and MIPS_RESERVED_GOTNO.
(mips_elf_create_got_section): Update the uses of
MIPS_ELF_GOT_MAX_SIZE. Create .got.plt on VxWorks.
(is_gott_symbol): New function.
(mips_elf_calculate_relocation): Use a dynobj local variable.
Update the calls to mips_elf_local_got_index, mips_elf_got16_entry and
mips_elf_got_page_entry. Set G to the .got.plt entry when calculating
VxWorks R_MIPS_CALL* relocations. Calculate and use G for all GOT
relocations on VxWorks. Add dynamic relocations for references
to the VxWorks __GOTT_BASE__ and __GOTT_INDEX__ symbols. Don't
create dynamic relocations for R_MIPS_32, R_MIPS_REL32 or R_MIPS_64
in VxWorks executables.
(mips_elf_allocate_dynamic_relocations): Add a bfd_link_info argument.
Use MIPS_ELF_RELA_SIZE to calculate the size of a VxWorks entry.
Don't allocate a null entry on VxWorks.
(mips_elf_create_dynamic_relocation): Update the call to
mips_elf_rel_dyn_section. Use absolute rather than relative
relocations for VxWorks, and make them RELA rather than REL.
(_bfd_mips_elf_create_dynamic_sections): Don't make .dynamic
read-only on VxWorks. Update the call to mips_elf_rel_dyn_section.
Create the .plt, .rela.plt, .dynbss and .rela.bss sections on
VxWorks. Likewise create the _PROCEDURE_LINKAGE_TABLE symbol.
Call elf_vxworks_create_dynamic_sections for VxWorks and
initialize the plt_header_size and plt_entry_size fields.
(_bfd_mips_elf_check_relocs): Don't allow GOT relocations to be
used in VxWorks executables. Don't allocate dynamic relocations
for R_MIPS_32, R_MIPS_REL32 or R_MIPS_64 in VxWorks executables.
Set is_relocation_target for each symbol referenced by a relocation.
Allocate .rela.dyn entries for relocations against the special
VxWorks __GOTT_BASE__ and __GOTT_INDEX__ symbols. Create GOT
entries for all VxWorks R_MIPS_GOT16 relocations. Don't allocate
a global GOT entry for symbols mentioned in VxWorks R_MIPS_CALL*,
R_MIPS_32, R_MIPS_REL32 or R_MIPS_64 relocations. Update the calls
to mips_elf_rel_dyn_section and mips_elf_allocate_dynamic_relocations.
Set is_branch_target for symbols mentioned in R_MIPS_PC16 or R_MIPS_26
relocations. Don't set no_fn_stub on VxWorks.
(_bfd_mips_elf_adjust_dynamic_symbol): Update the call to
mips_elf_allocate_dynamic_relocations.
(_bfd_mips_vxworks_adjust_dynamic_symbol): New function.
(_bfd_mips_elf_always_size_sections): Do not allocate GOT page
entries for VxWorks, and do not create multiple GOTs.
(_bfd_mips_elf_size_dynamic_sections): Use MIPS_ELF_REL_DYN_NAME.
Handle .got specially for VxWorks. Update the uses of
MIPS_RESERVED_GOTNO and mips_elf_allocate_dynamic_relocations.
Check for sgotplt and splt. Allocate the .rel(a).dyn contents last,
once its final size is known. Set DF_TEXTREL for VxWorks. Add
DT_RELA, DT_RELASZ, DT_RELAENT, DT_PLTREL, DT_PLTRELSZ and DT_JMPREL
tags on VxWorks. Do not add the MIPS-specific tags for VxWorks.
(_bfd_mips_vxworks_finish_dynamic_symbol): New function.
(mips_vxworks_finish_exec_plt): Likewise.
(mips_vxworks_finish_shared_plt): Likewise.
(_bfd_mips_elf_finish_dynamic_sections): Remove an unncessary call
to mips_elf_rel_dyn_section. Use a VxWorks-specific value of
DT_PLTGOT. Handle DT_RELA, DT_RELASZ, DT_RELAENT, DT_PLTREL,
DT_PLTRELSZ and DT_JMPREL. Update the uses of MIPS_RESERVED_GOTNO
and mips_elf_rel_dyn_section. Use a different GOT header for
VxWorks. Don't sort .rela.dyn on VxWorks. Finish the PLT on VxWorks.
(_bfd_mips_elf_link_hash_table_create): Initialize the new
mips_elf_link_hash_table fields.
(_bfd_mips_vxworks_link_hash_table_create): New function.
(_bfd_mips_elf_final_link): Set the GP value to _GLOBAL_OFFSET_TABLE_
on VxWorks. Update the call to ELF_MIPS_GP_OFFSET.
* elfxx-mips.h (_bfd_mips_vxworks_adjust_dynamic_symbol): Declare.
(_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
(_bfd_mips_vxworks_link_hash_table_create): Likewise.
* libbfd.h: Regenerate.
* Makefile.am (elfxx-mips.lo): Depend on elf-vxworks.h.
(elf32-mips.lo): Likewise.
* Makefile.in: Regenerate.
* reloc.c (BFD_RELOC_MIPS_COPY, BFD_RELOC_MIPS_JUMP_SLOT): Declare.
* targets.c (bfd_elf32_bigmips_vxworks_vec): Declare.
(bfd_elf32_littlemips_vxworks_vec): Likewise.
(_bfd_target_vector): Add entries for them.
gas/
* config/tc-mips.c (mips_target_format): Handle vxworks targets.
(md_begin): Complain about -G being used for PIC. Don't change
the text, data and bss alignments on VxWorks.
(reloc_needs_lo_p): Don't return true for R_MIPS_GOT16 when
generating VxWorks PIC.
(load_address): Extend SVR4_PIC handling to VXWORKS_PIC.
(macro): Likewise, but do not treat la $25 specially for
VxWorks PIC, and do not handle jal.
(OPTION_MVXWORKS_PIC): New macro.
(md_longopts): Add -mvxworks-pic.
(md_parse_option): Don't complain about using PIC and -G together here.
Handle OPTION_MVXWORKS_PIC.
(md_estimate_size_before_relax): Always use the first relaxation
sequence on VxWorks.
* config/tc-mips.h (VXWORKS_PIC): New.
gas/testsuite/
* gas/mips/vxworks1.s, gas/mips/vxworks1.d,
* gas/mips/vxworks1-xgot.d: New tests.
* gas/mips/mips.exp: Run them. Do not run other tests on VxWorks.
include/elf/
* mips.h (R_MIPS_COPY, R_MIPS_JUMP_SLOT): New relocs.
ld/
* configure.tgt (mips*el-*-vxworks*, mips*-*-vxworks*): Use
separate VxWorks emulations.
* emulparams/elf32ebmipvxworks.sh: New file.
* emulparams/elf32elmipvxworks.sh: New file.
* Makefile.am (ALL_EMULATIONS): Add eelf32ebmipvxworks.o and
eelf32elmipvxworks.o.
(eelf32ebmipvxworks.c, eelf32elmipvxworks.c): New rules.
* Makefile.in: Regenerate.
ld/testsuite/
* ld-mips/vxworks1.dd, ld-mips/vxworks1.ld, ld-mips/vxworks1-lib.dd,
* ld-mips/vxworks1-lib.nd, ld-mips/vxworks1-lib.rd,
* ld-mips/vxworks1-lib.s, ld-mips/vxworks1.rd, ld-mips/vxworks1.s,
* ld-mips/vxworks1-static.d, ld-mips/vxworks2.s, ld-mips/vxworks2.sd,
* ld-mips/vxworks2-static.sd: New tests.
* ld-mips/mips-elf.exp: Run them.
2006-03-22 17:28:15 +08:00
|
|
|
eelf32elmipvxworks.c: $(srcdir)/emulparams/elf32elmipvxworks.sh \
|
2006-07-29 16:48:15 +08:00
|
|
|
$(srcdir)/emulparams/elf32bmip.sh $(srcdir)/emulparams/vxworks.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/generic.em $(srcdir)/emultempl/mipself.em \
|
|
|
|
$(srcdir)/emultempl/vxworks.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
Richard Sandiford <richard@codesourcery.com>
Daniel Jacobowitz <dan@codesourcery.com>
Phil Edwards <phil@codesourcery.com>
Zack Weinberg <zack@codesourcery.com>
Mark Mitchell <mark@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
bfd/
* bfd-in2.h: Regenerate.
* config.bfd (mips*-*-vxworks*, mips*el-*-vxworks*): New stanzas.
* configure.in (bfd_elf32_bigmips_vxworks_vec): New stanza.
(bfd_elf32_littlemips_vxworks_vec): Likewise.
(bfd_elf32_bigmips_vec): Add elf-vxworks.lo.
(bfd_elf32_littlemips_vec): Likewise.
(bfd_elf32_nbigmips_vec): Likewise.
(bfd_elf32_nlittlemips_vec): Likewise.
(bfd_elf32_ntradbigmips_vec): Likewise.
(bfd_elf32_ntradlittlemips_vec): Likewise.
(bfd_elf32_tradbigmips_vec): Likewise.
(bfd_elf32_tradlittlemips_vec): Likewise.
(bfd_elf64_bigmips_vec): Likewise.
(bfd_elf64_littlemips_vec): Likewise.
(bfd_elf64_tradbigmips_vec): Likewise.
(bfd_elf64_tradlittlemips_vec): Likewise.
* elf32-mips.c: Include elf-vxworks.h.
(mips_info_to_howto_rel): Use elf_backend_mips_rtype_to_howto
instead of calling mips_elf32_rtype_to_howto directly.
(mips_vxworks_copy_howto_rela): New reloc howto.
(mips_vxworks_jump_slot_howto_rela): Likewise.
(mips_vxworks_bfd_reloc_type_lookup): New function.
(mips_vxworks_rtype_to_howto): Likewise.
(mips_vxworks_final_write_processing): Likewise.
(TARGET_LITTLE_SYM, TARGET_LITTLE_NAME): Override for VxWorks.
(TARGET_BIG_SYM, TARGET_BIG_NAME, elf_bed, ELF_MAXPAGESIZE): Likewise.
(elf_backend_want_got_plt): Likewise.
(elf_backend_want_plt_sym): Likewise.
(elf_backend_got_symbol_offset): Likewise.
(elf_backend_want_dynbss): Likewise.
(elf_backend_may_use_rel_p): Likewise.
(elf_backend_may_use_rela_p): Likewise.
(elf_backend_default_use_rela_p): Likewise.
(elf_backend_got_header_size: Likewise.
(elf_backend_plt_readonly): Likewise.
(bfd_elf32_bfd_reloc_type_lookup): Likewise.
(elf_backend_mips_rtype_to_howto): Likewise.
(elf_backend_adjust_dynamic_symbol): Likewise.
(elf_backend_finish_dynamic_symbol): Likewise.
(bfd_elf32_bfd_link_hash_table_create): Likewise.
(elf_backend_add_symbol_hook): Likewise.
(elf_backend_link_output_symbol_hook): Likewise.
(elf_backend_emit_relocs): Likewise.
(elf_backend_final_write_processing: Likewise.
(elf_backend_additional_program_headers): Likewise.
(elf_backend_modify_segment_map): Likewise.
(elf_backend_symbol_processing): Likewise.
* elfxx-mips.c: Include elf-vxworks.h.
(mips_elf_link_hash_entry): Add is_relocation_target and
is_branch_target fields.
(mips_elf_link_hash_table): Add is_vxworks, srelbss, sdynbss, srelplt,
srelplt2, sgotplt, splt, plt_header_size and plt_entry_size fields.
(MIPS_ELF_RELA_SIZE, MIPS_ELF_REL_DYN_NAME): New macros.
(MIPS_RESERVED_GOTNO): Take a mips_elf_link_hash_table argument.
Return 3 for VxWorks.
(ELF_MIPS_GP_OFFSET): Change the argument from a bfd to a
mips_elf_link_hash_table. Return 0 for VxWorks.
(MIPS_ELF_GOT_MAX_SIZE): Change the argument from a bfd to a
mips_elf_link_hash_table. Update the call to ELF_MIPS_GP_OFFSET.
(mips_vxworks_exec_plt0_entry): New variable.
(mips_vxworks_exec_plt_entry): Likewise.
(mips_vxworks_shared_plt0_entry): Likewise.
(mips_vxworks_shared_plt_entry): Likewise.
(mips_elf_link_hash_newfunc): Initialize the new hash_entry fields.
(mips_elf_rel_dyn_section): Change the bfd argument to a
mips_elf_link_hash_table. Use MIPS_ELF_REL_DYN_NAME to get
the name of the section.
(mips_elf_initialize_tls_slots): Update the call to
mips_elf_rel_dyn_section.
(mips_elf_gotplt_index): New function.
(mips_elf_local_got_index): Add an input_section argument.
Update the call to mips_elf_create_local_got_entry.
(mips_elf_got_page): Likewise.
(mips_elf_got16_entry): Likewise.
(mips_elf_create_local_got_entry): Add bfd_link_info and input_section
arguments. Create dynamic relocations for each entry on VxWorks.
(mips_elf_merge_gots): Update the use of MIPS_ELF_GOT_MAX_SIZE.
(mips_elf_multi_got): Update the uses of MIPS_ELF_GOT_MAX_SIZE
and MIPS_RESERVED_GOTNO.
(mips_elf_create_got_section): Update the uses of
MIPS_ELF_GOT_MAX_SIZE. Create .got.plt on VxWorks.
(is_gott_symbol): New function.
(mips_elf_calculate_relocation): Use a dynobj local variable.
Update the calls to mips_elf_local_got_index, mips_elf_got16_entry and
mips_elf_got_page_entry. Set G to the .got.plt entry when calculating
VxWorks R_MIPS_CALL* relocations. Calculate and use G for all GOT
relocations on VxWorks. Add dynamic relocations for references
to the VxWorks __GOTT_BASE__ and __GOTT_INDEX__ symbols. Don't
create dynamic relocations for R_MIPS_32, R_MIPS_REL32 or R_MIPS_64
in VxWorks executables.
(mips_elf_allocate_dynamic_relocations): Add a bfd_link_info argument.
Use MIPS_ELF_RELA_SIZE to calculate the size of a VxWorks entry.
Don't allocate a null entry on VxWorks.
(mips_elf_create_dynamic_relocation): Update the call to
mips_elf_rel_dyn_section. Use absolute rather than relative
relocations for VxWorks, and make them RELA rather than REL.
(_bfd_mips_elf_create_dynamic_sections): Don't make .dynamic
read-only on VxWorks. Update the call to mips_elf_rel_dyn_section.
Create the .plt, .rela.plt, .dynbss and .rela.bss sections on
VxWorks. Likewise create the _PROCEDURE_LINKAGE_TABLE symbol.
Call elf_vxworks_create_dynamic_sections for VxWorks and
initialize the plt_header_size and plt_entry_size fields.
(_bfd_mips_elf_check_relocs): Don't allow GOT relocations to be
used in VxWorks executables. Don't allocate dynamic relocations
for R_MIPS_32, R_MIPS_REL32 or R_MIPS_64 in VxWorks executables.
Set is_relocation_target for each symbol referenced by a relocation.
Allocate .rela.dyn entries for relocations against the special
VxWorks __GOTT_BASE__ and __GOTT_INDEX__ symbols. Create GOT
entries for all VxWorks R_MIPS_GOT16 relocations. Don't allocate
a global GOT entry for symbols mentioned in VxWorks R_MIPS_CALL*,
R_MIPS_32, R_MIPS_REL32 or R_MIPS_64 relocations. Update the calls
to mips_elf_rel_dyn_section and mips_elf_allocate_dynamic_relocations.
Set is_branch_target for symbols mentioned in R_MIPS_PC16 or R_MIPS_26
relocations. Don't set no_fn_stub on VxWorks.
(_bfd_mips_elf_adjust_dynamic_symbol): Update the call to
mips_elf_allocate_dynamic_relocations.
(_bfd_mips_vxworks_adjust_dynamic_symbol): New function.
(_bfd_mips_elf_always_size_sections): Do not allocate GOT page
entries for VxWorks, and do not create multiple GOTs.
(_bfd_mips_elf_size_dynamic_sections): Use MIPS_ELF_REL_DYN_NAME.
Handle .got specially for VxWorks. Update the uses of
MIPS_RESERVED_GOTNO and mips_elf_allocate_dynamic_relocations.
Check for sgotplt and splt. Allocate the .rel(a).dyn contents last,
once its final size is known. Set DF_TEXTREL for VxWorks. Add
DT_RELA, DT_RELASZ, DT_RELAENT, DT_PLTREL, DT_PLTRELSZ and DT_JMPREL
tags on VxWorks. Do not add the MIPS-specific tags for VxWorks.
(_bfd_mips_vxworks_finish_dynamic_symbol): New function.
(mips_vxworks_finish_exec_plt): Likewise.
(mips_vxworks_finish_shared_plt): Likewise.
(_bfd_mips_elf_finish_dynamic_sections): Remove an unncessary call
to mips_elf_rel_dyn_section. Use a VxWorks-specific value of
DT_PLTGOT. Handle DT_RELA, DT_RELASZ, DT_RELAENT, DT_PLTREL,
DT_PLTRELSZ and DT_JMPREL. Update the uses of MIPS_RESERVED_GOTNO
and mips_elf_rel_dyn_section. Use a different GOT header for
VxWorks. Don't sort .rela.dyn on VxWorks. Finish the PLT on VxWorks.
(_bfd_mips_elf_link_hash_table_create): Initialize the new
mips_elf_link_hash_table fields.
(_bfd_mips_vxworks_link_hash_table_create): New function.
(_bfd_mips_elf_final_link): Set the GP value to _GLOBAL_OFFSET_TABLE_
on VxWorks. Update the call to ELF_MIPS_GP_OFFSET.
* elfxx-mips.h (_bfd_mips_vxworks_adjust_dynamic_symbol): Declare.
(_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
(_bfd_mips_vxworks_link_hash_table_create): Likewise.
* libbfd.h: Regenerate.
* Makefile.am (elfxx-mips.lo): Depend on elf-vxworks.h.
(elf32-mips.lo): Likewise.
* Makefile.in: Regenerate.
* reloc.c (BFD_RELOC_MIPS_COPY, BFD_RELOC_MIPS_JUMP_SLOT): Declare.
* targets.c (bfd_elf32_bigmips_vxworks_vec): Declare.
(bfd_elf32_littlemips_vxworks_vec): Likewise.
(_bfd_target_vector): Add entries for them.
gas/
* config/tc-mips.c (mips_target_format): Handle vxworks targets.
(md_begin): Complain about -G being used for PIC. Don't change
the text, data and bss alignments on VxWorks.
(reloc_needs_lo_p): Don't return true for R_MIPS_GOT16 when
generating VxWorks PIC.
(load_address): Extend SVR4_PIC handling to VXWORKS_PIC.
(macro): Likewise, but do not treat la $25 specially for
VxWorks PIC, and do not handle jal.
(OPTION_MVXWORKS_PIC): New macro.
(md_longopts): Add -mvxworks-pic.
(md_parse_option): Don't complain about using PIC and -G together here.
Handle OPTION_MVXWORKS_PIC.
(md_estimate_size_before_relax): Always use the first relaxation
sequence on VxWorks.
* config/tc-mips.h (VXWORKS_PIC): New.
gas/testsuite/
* gas/mips/vxworks1.s, gas/mips/vxworks1.d,
* gas/mips/vxworks1-xgot.d: New tests.
* gas/mips/mips.exp: Run them. Do not run other tests on VxWorks.
include/elf/
* mips.h (R_MIPS_COPY, R_MIPS_JUMP_SLOT): New relocs.
ld/
* configure.tgt (mips*el-*-vxworks*, mips*-*-vxworks*): Use
separate VxWorks emulations.
* emulparams/elf32ebmipvxworks.sh: New file.
* emulparams/elf32elmipvxworks.sh: New file.
* Makefile.am (ALL_EMULATIONS): Add eelf32ebmipvxworks.o and
eelf32elmipvxworks.o.
(eelf32ebmipvxworks.c, eelf32elmipvxworks.c): New rules.
* Makefile.in: Regenerate.
ld/testsuite/
* ld-mips/vxworks1.dd, ld-mips/vxworks1.ld, ld-mips/vxworks1-lib.dd,
* ld-mips/vxworks1-lib.nd, ld-mips/vxworks1-lib.rd,
* ld-mips/vxworks1-lib.s, ld-mips/vxworks1.rd, ld-mips/vxworks1.s,
* ld-mips/vxworks1-static.d, ld-mips/vxworks2.s, ld-mips/vxworks2.sd,
* ld-mips/vxworks2-static.sd: New tests.
* ld-mips/mips-elf.exp: Run them.
2006-03-22 17:28:15 +08:00
|
|
|
${GENSCRIPTS} elf32elmipvxworks "$(tdir_elf32elmipvxworks)"
|
bfd:
* Makefile.am (ALL_MACHINES): Add cpu-epiphany.lo .
(ALL_MACHINES_CFILES): Add cpu-epiphany.c .
(BFD32_BACKENDS): Add elf32-epiphany.lo .
(BFD32_BACKENDS_CFILES): Add elf32-epiphany.c .
* Makefile.in, bfd-in2.h, configure, libbfd.h: Regenerate.
* archures.c (bfd_arch_epiphany): Add.
(bfd_mach_epiphany16, bfd_mach_epiphany32): Define.
(bfd_epiphany_arch): Declare.
(bfd_archures_list): Add &bfd_epiphany_arch.
* config.bfd (epiphany-*-elf): New target case.
* configure.in (bfd_elf32_epiphany_vec): New target vector case.
* reloc.c (BFD_RELOC_EPIPHANY_SIMM8): New relocation.
(BFD_RELOC_EPIPHANY_SIMM24, BFD_RELOC_EPIPHANY_HIGH): Likewise.
(BFD_RELOC_EPIPHANY_LOW, BFD_RELOC_EPIPHANY_SIMM11): Likewise.
(BFD_RELOC_EPIPHANY_IMM11, BFD_RELOC_EPIPHANY_IMM8): Likewise.
* targets.c (bfd_elf32_epiphany_vec): Declare.
(_bfd_target_vector): Add bfd_elf32_epiphany_vec.
* po/SRC-POTFILES.in, po/bfd.pot: Regenerate.
* cpu-epiphany.c, elf32-epiphany.c: New files.
binutils:
* readelf.c (include "elf/epiphany.h")
(guess_is_rela, dump_relocation): Handle EM_ADAPTEVA_EPIPHANY.
(get_machine_name, is_32bit_abs_reloc, is_32bit_pcrel_reloc): Likewise.
(is_16bit_abs_reloc, is_none_reloc): Likewise.
* po/binutils.pot: Regenerate.
cpu:
* cpu/epiphany.cpu, cpu/epiphany.opc: New files.
gas:
* NEWS: Mention addition of Adapteva Epiphany support.
* config/tc-epiphany.c, config/tc-epiphany.h: New files.
* Makefile.am (TARGET_CPU_CFILES): Add config/tc-epiphany.c .
(TARGET_CPU_HFILES): Add config/tc-epiphany.h .
* Makefile.in, configure, doc/Makefile.in, po/POTFILES.in: Regenerate.
* configure.in: Also set using_cgen for epiphany.
* configure.tgt: Handle epiphany.
* doc/Makefile.am (CPU_DOCS): Add c-epiphany.texi .
* doc/all.texi: Set EPIPHANY.
* doc/as.texinfo: Add EPIPHANY-specific text.
* doc/c-epiphany.texi: New file.
* po/gas.pot: Regenerate.
gas/testsuite:
* gas/epiphany: New directory.
include:
* dis-asm.h (print_insn_epiphany): Declare.
* elf/epiphany.h: New file.
* elf/common.h (EM_ADAPTEVA_EPIPHANY): Define.
ld:
* NEWS: Mention addition of Adapteva Epiphany support.
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32epiphany.c .
(eelf32epiphany.c): New rule.
* Makefile.in: Regenerate.
* configure.tgt: Handle epiphany-*-elf.
* po/ld.pot: Regenerate.
* testsuite/ld-srec/srec.exp: xfail epiphany.
* emulparams/elf32epiphany.sh: New file.
opcodes:
* Makefile.am (HFILES): Add epiphany-desc.h and epiphany-opc.h .
(TARGET_LIBOPCODES_CFILES): Add epiphany-asm.c, epiphany-desc.c,
epiphany-dis.c, epiphany-ibld.c and epiphany-opc.c .
(CLEANFILES): Add stamp-epiphany.
(EPIPHANY_DEPS): Set. Make CGEN-generated Epiphany files depend on it.
(stamp-epiphany): New rule.
* Makefile.in, configure, po/POTFILES.in, po/opcodes.pot: Regenerate.
* configure.in: Handle bfd_epiphany_arch.
* disassemble.c (ARCH_epiphany): Define.
(disassembler): Handle bfd_arch_epiphany.
* epiphany-asm.c, epiphany-desc.c, epiphany-desc.h: New files.
* epiphany-dis.c, epiphany-ibld.c, epiphany-opc.c: Likewise.
* epiphany-opc.h: Likewise.
2011-10-25 19:18:16 +08:00
|
|
|
eelf32epiphany.c: $(srcdir)/emulparams/elf32epiphany.sh \
|
|
|
|
$(ELF_DEPS) ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32epiphany "$(tdir_epiphany)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32fr30.c: $(srcdir)/emulparams/elf32fr30.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32fr30 "$(tdir_fr30)"
|
|
|
|
eelf32frv.c: $(srcdir)/emulparams/elf32frv.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32frv "$(tdir_frv)"
|
|
|
|
eelf32frvfd.c: $(srcdir)/emulparams/elf32frvfd.sh \
|
|
|
|
$(srcdir)/emulparams/elf32frv.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32frvfd "$(tdir_frv)"
|
|
|
|
eelf32i370.c: $(srcdir)/emulparams/elf32i370.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elfi370.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32i370 "$(tdir_elf32i370)"
|
|
|
|
eelf32ip2k.c: $(srcdir)/emulparams/elf32ip2k.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32ip2k "$(tdir_ip2k)"
|
|
|
|
eelf32iq10.c: $(srcdir)/emulparams/elf32iq10.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/iq2000.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32iq10 "$(tdir_iq10)"
|
|
|
|
eelf32iq2000.c: $(srcdir)/emulparams/elf32iq2000.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/iq2000.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32iq2000 "$(tdir_iq2000)"
|
1999-05-03 15:29:11 +08:00
|
|
|
eelf32l4300.c: $(srcdir)/emulparams/elf32l4300.sh \
|
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
(config.status): Delete rule.
Add extra dependencies to cover sourced emulparams files.
* Makefile.in: Regenerate.
* scripttempl/elf.sc: Order <section>, <section>.* and
corresponding linkonce sections as seen in input files.
Formatting fixes. Zero vma of all sections if not relocating.
(STACK): Define and insert if STACK_ADDR defined.
(OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
(OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
(OTHER_READWRITE_SECTIONS): Likewise.
(OTHER_GOT_SECTIONS): Likewise.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_BSS_SECTIONS): Likewise.
* scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise.
* scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise
* emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
(STACK_ADDR): Define.
* emulparams/armelf_oabi.sh: As for armelf.sh.
* emulparams/elf32mcore.sh: As for armelf.sh.
* emulparams/h8300elf.sh: As for armelf.sh.
* emulparams/mn10200.sh: As for armelf.sh.
* emulparams/shelf.sh: As for armelf.sh.
* emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
* emulparams/m32relf.sh: As for elf32fr30.sh.
* emulparams/h8300helf.sh: As for elf32fr30.sh.
* emulparams/h8300self.sh: As for elf32fr30.sh.
* emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
defines with RELOCATING test.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_END_SYMBOLS): ..this.
* emulparams/crislinux.sh: As for criself.sh.
* emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
if not relocating.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
normal and linkonce sections as seen in input files.
* emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
(TEXT_DYNAMIC): Likewise.
(INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
(OTHER_SDATA_SECTIONS): Likewise.
* emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
(OTHER_PLT_RELOC_SECTIONS): Likewise.
(OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
sections as seen in input files.
* emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
* emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
if not relocating.
(OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
(OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
* emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_SECTIONS): Instead, use this..
(OTHER_END_SYMBOLS): ..and this.
* emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
* emulparams/elf32bsmip.sh: Likewise.
* emulparams/elf32btsmip.sh: Likewise.
* emulparams/elf32ebmip.sh: Likewise.
* emulparams/elf32lmip.sh: Likewise.
* emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
* emulparams/elf32lsmip.sh: Likewise.
* emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
* emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
* emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
* emulparams/elf64btsmip.sh: Likewise.
* emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
* emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
* emulparams/elf32ppclinux.sh: Likewise.
* emulparams/elf32ppcsim.sh: Likewise.
* emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
* emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
* emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
* emulparams/h8300self.sh: Likewise.
* emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
* emulparams/sh.sh: Comment.
* emulparams/shl.sh: Source sh.sh, remove duplicates.
* emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
* emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
2001-11-22 17:08:05 +08:00
|
|
|
$(srcdir)/emulparams/elf32b4300.sh $(srcdir)/emulparams/elf32bmip.sh \
|
2006-07-29 16:48:15 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc \
|
|
|
|
${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} elf32l4300 "$(tdir_elf32l4300)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32lm32.c: $(srcdir)/emulparams/elf32lm32.sh \
|
|
|
|
$(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32lm32 "$(tdir_elf32lm32)"
|
|
|
|
eelf32lm32fd.c: $(srcdir)/emulparams/elf32lm32fd.sh \
|
|
|
|
$(srcdir)/emulparams/elf32lm32.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32lm32fd "$(tdir_elf32lm32fd)"
|
1999-05-03 15:29:11 +08:00
|
|
|
eelf32lmip.c: $(srcdir)/emulparams/elf32lmip.sh \
|
2006-07-29 16:48:15 +08:00
|
|
|
$(srcdir)/emulparams/elf32bmip.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} elf32lmip "$(tdir_elf32lmip)"
|
|
|
|
eelf32lppc.c: $(srcdir)/emulparams/elf32lppc.sh \
|
bfd/
* elf32-ppc.c (ppc_elf_plt_type): New enumeration.
(ppc_elf_link_hash_table): Replace old_got and new_got with
plt_type and can_use_new_plt.
(ppc_elf_create_dynamic_sections): Add SEC_HAS_CONTENTS,
SEC_LOAD and SEC_READONLY to the VxWorks .plt flags.
(ppc_elf_check_relocs): Set can_use_new_plt instead of new_plt.
Move from plt_type == PLT_UNSET to PLT_OLD instead of setting old_plt.
(ppc_elf_select_plt_layout): Move from plt_type == PLT_UNSET to
either plt_type == PLT_OLD or plt_type == PLT_NEW. Assert that
this function should not be called for VxWorks targets.
(ppc_elf_tls_setup): Use plt_type instead of old_got.
(allocate_got): Likewise. Rearrange so that max_before_header
is only used for PLT_OLD and PLT_NEW.
(allocate_dynrelocs): Use plt_type instead of old_got and is_vxworks.
(ppc_elf_size_dynamic_sections): Likewise.
(ppc_elf_relax_section): Likewise.
(ppc_elf_relocate_section): Likewise.
(ppc_elf_finish_dynamic_symbol): Likewise.
(ppc_elf_vxworks_link_hash_table_create): Initialize plt_type.
ld/
* emulparams/elf32ppccommon.sh: New file, extracted from...
* emulparams/elf32ppc.sh: ...here.
* emulparams/elf32ppcvxworks.sh: Include elf32ppccommon.sh
instead of elf32ppc.sh.
(BSS_PLT): Remove override.
* Makefile.am (eelf32lppc.c): Depend on elf32ppccommons.h.
(eelf32lppcnto.c, eelf32lppcsim.c, eelf32ppcnto.c): Likewise.
(eelf32ppc.c, eelf32ppc_fbsd.c, eelf32ppcsimm): Likewise.
(eelf32ppclinux.c): Likewise.
(eelf32ppcvxworks.c): Likewise. Add missing vxworks.sh dependency.
* Makefile.in: Regenerate.
ld/testsuite/
* ld-powerpc/vxworks1-lib.s, ld-powerpc/vxworks1-lib.dd,
* ld-powerpc/vxworks1-lib.rd, ld-powerpc/vxworks1.s,
* ld-powerpc/vxworks1.dd, ld-powerpc/vxworks1.rd,
* ld-powerpc/vxworks1.ld, ld-powerpc/vxworks1.sd: New test.
* ld-powerpc/powerpc.exp: Run it.
2006-03-02 16:50:04 +08:00
|
|
|
$(srcdir)/emulparams/elf32ppccommon.sh \
|
2003-02-18 14:05:07 +08:00
|
|
|
$(srcdir)/emulparams/elf32ppc.sh $(srcdir)/emultempl/ppc32elf.em \
|
2007-03-26 19:10:44 +08:00
|
|
|
ldemul-list.h \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} elf32lppc "$(tdir_elf32lppc)"
|
2002-08-09 23:38:24 +08:00
|
|
|
eelf32lppcnto.c: $(srcdir)/emulparams/elf32lppcnto.sh \
|
bfd/
* elf32-ppc.c (ppc_elf_plt_type): New enumeration.
(ppc_elf_link_hash_table): Replace old_got and new_got with
plt_type and can_use_new_plt.
(ppc_elf_create_dynamic_sections): Add SEC_HAS_CONTENTS,
SEC_LOAD and SEC_READONLY to the VxWorks .plt flags.
(ppc_elf_check_relocs): Set can_use_new_plt instead of new_plt.
Move from plt_type == PLT_UNSET to PLT_OLD instead of setting old_plt.
(ppc_elf_select_plt_layout): Move from plt_type == PLT_UNSET to
either plt_type == PLT_OLD or plt_type == PLT_NEW. Assert that
this function should not be called for VxWorks targets.
(ppc_elf_tls_setup): Use plt_type instead of old_got.
(allocate_got): Likewise. Rearrange so that max_before_header
is only used for PLT_OLD and PLT_NEW.
(allocate_dynrelocs): Use plt_type instead of old_got and is_vxworks.
(ppc_elf_size_dynamic_sections): Likewise.
(ppc_elf_relax_section): Likewise.
(ppc_elf_relocate_section): Likewise.
(ppc_elf_finish_dynamic_symbol): Likewise.
(ppc_elf_vxworks_link_hash_table_create): Initialize plt_type.
ld/
* emulparams/elf32ppccommon.sh: New file, extracted from...
* emulparams/elf32ppc.sh: ...here.
* emulparams/elf32ppcvxworks.sh: Include elf32ppccommon.sh
instead of elf32ppc.sh.
(BSS_PLT): Remove override.
* Makefile.am (eelf32lppc.c): Depend on elf32ppccommons.h.
(eelf32lppcnto.c, eelf32lppcsim.c, eelf32ppcnto.c): Likewise.
(eelf32ppc.c, eelf32ppc_fbsd.c, eelf32ppcsimm): Likewise.
(eelf32ppclinux.c): Likewise.
(eelf32ppcvxworks.c): Likewise. Add missing vxworks.sh dependency.
* Makefile.in: Regenerate.
ld/testsuite/
* ld-powerpc/vxworks1-lib.s, ld-powerpc/vxworks1-lib.dd,
* ld-powerpc/vxworks1-lib.rd, ld-powerpc/vxworks1.s,
* ld-powerpc/vxworks1.dd, ld-powerpc/vxworks1.rd,
* ld-powerpc/vxworks1.ld, ld-powerpc/vxworks1.sd: New test.
* ld-powerpc/powerpc.exp: Run it.
2006-03-02 16:50:04 +08:00
|
|
|
$(srcdir)/emulparams/elf32ppc.sh $(srcdir)/emulparams/elf32ppccommon.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(srcdir)/emultempl/ppc32elf.em $(ELF_DEPS) \
|
2007-03-26 19:10:44 +08:00
|
|
|
ldemul-list.h \
|
bfd/
* elf32-ppc.c (ppc_elf_plt_type): New enumeration.
(ppc_elf_link_hash_table): Replace old_got and new_got with
plt_type and can_use_new_plt.
(ppc_elf_create_dynamic_sections): Add SEC_HAS_CONTENTS,
SEC_LOAD and SEC_READONLY to the VxWorks .plt flags.
(ppc_elf_check_relocs): Set can_use_new_plt instead of new_plt.
Move from plt_type == PLT_UNSET to PLT_OLD instead of setting old_plt.
(ppc_elf_select_plt_layout): Move from plt_type == PLT_UNSET to
either plt_type == PLT_OLD or plt_type == PLT_NEW. Assert that
this function should not be called for VxWorks targets.
(ppc_elf_tls_setup): Use plt_type instead of old_got.
(allocate_got): Likewise. Rearrange so that max_before_header
is only used for PLT_OLD and PLT_NEW.
(allocate_dynrelocs): Use plt_type instead of old_got and is_vxworks.
(ppc_elf_size_dynamic_sections): Likewise.
(ppc_elf_relax_section): Likewise.
(ppc_elf_relocate_section): Likewise.
(ppc_elf_finish_dynamic_symbol): Likewise.
(ppc_elf_vxworks_link_hash_table_create): Initialize plt_type.
ld/
* emulparams/elf32ppccommon.sh: New file, extracted from...
* emulparams/elf32ppc.sh: ...here.
* emulparams/elf32ppcvxworks.sh: Include elf32ppccommon.sh
instead of elf32ppc.sh.
(BSS_PLT): Remove override.
* Makefile.am (eelf32lppc.c): Depend on elf32ppccommons.h.
(eelf32lppcnto.c, eelf32lppcsim.c, eelf32ppcnto.c): Likewise.
(eelf32ppc.c, eelf32ppc_fbsd.c, eelf32ppcsimm): Likewise.
(eelf32ppclinux.c): Likewise.
(eelf32ppcvxworks.c): Likewise. Add missing vxworks.sh dependency.
* Makefile.in: Regenerate.
ld/testsuite/
* ld-powerpc/vxworks1-lib.s, ld-powerpc/vxworks1-lib.dd,
* ld-powerpc/vxworks1-lib.rd, ld-powerpc/vxworks1.s,
* ld-powerpc/vxworks1.dd, ld-powerpc/vxworks1.rd,
* ld-powerpc/vxworks1.ld, ld-powerpc/vxworks1.sd: New test.
* ld-powerpc/powerpc.exp: Run it.
2006-03-02 16:50:04 +08:00
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2002-08-09 23:38:24 +08:00
|
|
|
${GENSCRIPTS} elf32lppcnto "$(tdir_elf32lppcnto)"
|
2000-04-15 05:18:23 +08:00
|
|
|
eelf32lppcsim.c: $(srcdir)/emulparams/elf32lppcsim.sh \
|
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
(config.status): Delete rule.
Add extra dependencies to cover sourced emulparams files.
* Makefile.in: Regenerate.
* scripttempl/elf.sc: Order <section>, <section>.* and
corresponding linkonce sections as seen in input files.
Formatting fixes. Zero vma of all sections if not relocating.
(STACK): Define and insert if STACK_ADDR defined.
(OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
(OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
(OTHER_READWRITE_SECTIONS): Likewise.
(OTHER_GOT_SECTIONS): Likewise.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_BSS_SECTIONS): Likewise.
* scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise.
* scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise
* emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
(STACK_ADDR): Define.
* emulparams/armelf_oabi.sh: As for armelf.sh.
* emulparams/elf32mcore.sh: As for armelf.sh.
* emulparams/h8300elf.sh: As for armelf.sh.
* emulparams/mn10200.sh: As for armelf.sh.
* emulparams/shelf.sh: As for armelf.sh.
* emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
* emulparams/m32relf.sh: As for elf32fr30.sh.
* emulparams/h8300helf.sh: As for elf32fr30.sh.
* emulparams/h8300self.sh: As for elf32fr30.sh.
* emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
defines with RELOCATING test.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_END_SYMBOLS): ..this.
* emulparams/crislinux.sh: As for criself.sh.
* emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
if not relocating.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
normal and linkonce sections as seen in input files.
* emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
(TEXT_DYNAMIC): Likewise.
(INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
(OTHER_SDATA_SECTIONS): Likewise.
* emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
(OTHER_PLT_RELOC_SECTIONS): Likewise.
(OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
sections as seen in input files.
* emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
* emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
if not relocating.
(OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
(OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
* emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_SECTIONS): Instead, use this..
(OTHER_END_SYMBOLS): ..and this.
* emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
* emulparams/elf32bsmip.sh: Likewise.
* emulparams/elf32btsmip.sh: Likewise.
* emulparams/elf32ebmip.sh: Likewise.
* emulparams/elf32lmip.sh: Likewise.
* emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
* emulparams/elf32lsmip.sh: Likewise.
* emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
* emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
* emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
* emulparams/elf64btsmip.sh: Likewise.
* emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
* emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
* emulparams/elf32ppclinux.sh: Likewise.
* emulparams/elf32ppcsim.sh: Likewise.
* emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
* emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
* emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
* emulparams/h8300self.sh: Likewise.
* emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
* emulparams/sh.sh: Comment.
* emulparams/shl.sh: Source sh.sh, remove duplicates.
* emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
* emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
2001-11-22 17:08:05 +08:00
|
|
|
$(srcdir)/emulparams/elf32lppc.sh $(srcdir)/emulparams/elf32ppc.sh \
|
bfd/
* elf32-ppc.c (ppc_elf_plt_type): New enumeration.
(ppc_elf_link_hash_table): Replace old_got and new_got with
plt_type and can_use_new_plt.
(ppc_elf_create_dynamic_sections): Add SEC_HAS_CONTENTS,
SEC_LOAD and SEC_READONLY to the VxWorks .plt flags.
(ppc_elf_check_relocs): Set can_use_new_plt instead of new_plt.
Move from plt_type == PLT_UNSET to PLT_OLD instead of setting old_plt.
(ppc_elf_select_plt_layout): Move from plt_type == PLT_UNSET to
either plt_type == PLT_OLD or plt_type == PLT_NEW. Assert that
this function should not be called for VxWorks targets.
(ppc_elf_tls_setup): Use plt_type instead of old_got.
(allocate_got): Likewise. Rearrange so that max_before_header
is only used for PLT_OLD and PLT_NEW.
(allocate_dynrelocs): Use plt_type instead of old_got and is_vxworks.
(ppc_elf_size_dynamic_sections): Likewise.
(ppc_elf_relax_section): Likewise.
(ppc_elf_relocate_section): Likewise.
(ppc_elf_finish_dynamic_symbol): Likewise.
(ppc_elf_vxworks_link_hash_table_create): Initialize plt_type.
ld/
* emulparams/elf32ppccommon.sh: New file, extracted from...
* emulparams/elf32ppc.sh: ...here.
* emulparams/elf32ppcvxworks.sh: Include elf32ppccommon.sh
instead of elf32ppc.sh.
(BSS_PLT): Remove override.
* Makefile.am (eelf32lppc.c): Depend on elf32ppccommons.h.
(eelf32lppcnto.c, eelf32lppcsim.c, eelf32ppcnto.c): Likewise.
(eelf32ppc.c, eelf32ppc_fbsd.c, eelf32ppcsimm): Likewise.
(eelf32ppclinux.c): Likewise.
(eelf32ppcvxworks.c): Likewise. Add missing vxworks.sh dependency.
* Makefile.in: Regenerate.
ld/testsuite/
* ld-powerpc/vxworks1-lib.s, ld-powerpc/vxworks1-lib.dd,
* ld-powerpc/vxworks1-lib.rd, ld-powerpc/vxworks1.s,
* ld-powerpc/vxworks1.dd, ld-powerpc/vxworks1.rd,
* ld-powerpc/vxworks1.ld, ld-powerpc/vxworks1.sd: New test.
* ld-powerpc/powerpc.exp: Run it.
2006-03-02 16:50:04 +08:00
|
|
|
$(srcdir)/emulparams/elf32ppccommon.sh $(srcdir)/emultempl/ppc32elf.em \
|
2007-03-26 19:10:44 +08:00
|
|
|
ldemul-list.h \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2000-04-15 05:18:23 +08:00
|
|
|
${GENSCRIPTS} elf32lppcsim "$(tdir_elf32lppcsim)"
|
1999-05-03 15:29:11 +08:00
|
|
|
eelf32lsmip.c: $(srcdir)/emulparams/elf32lsmip.sh \
|
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
(config.status): Delete rule.
Add extra dependencies to cover sourced emulparams files.
* Makefile.in: Regenerate.
* scripttempl/elf.sc: Order <section>, <section>.* and
corresponding linkonce sections as seen in input files.
Formatting fixes. Zero vma of all sections if not relocating.
(STACK): Define and insert if STACK_ADDR defined.
(OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
(OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
(OTHER_READWRITE_SECTIONS): Likewise.
(OTHER_GOT_SECTIONS): Likewise.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_BSS_SECTIONS): Likewise.
* scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise.
* scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise
* emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
(STACK_ADDR): Define.
* emulparams/armelf_oabi.sh: As for armelf.sh.
* emulparams/elf32mcore.sh: As for armelf.sh.
* emulparams/h8300elf.sh: As for armelf.sh.
* emulparams/mn10200.sh: As for armelf.sh.
* emulparams/shelf.sh: As for armelf.sh.
* emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
* emulparams/m32relf.sh: As for elf32fr30.sh.
* emulparams/h8300helf.sh: As for elf32fr30.sh.
* emulparams/h8300self.sh: As for elf32fr30.sh.
* emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
defines with RELOCATING test.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_END_SYMBOLS): ..this.
* emulparams/crislinux.sh: As for criself.sh.
* emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
if not relocating.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
normal and linkonce sections as seen in input files.
* emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
(TEXT_DYNAMIC): Likewise.
(INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
(OTHER_SDATA_SECTIONS): Likewise.
* emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
(OTHER_PLT_RELOC_SECTIONS): Likewise.
(OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
sections as seen in input files.
* emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
* emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
if not relocating.
(OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
(OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
* emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_SECTIONS): Instead, use this..
(OTHER_END_SYMBOLS): ..and this.
* emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
* emulparams/elf32bsmip.sh: Likewise.
* emulparams/elf32btsmip.sh: Likewise.
* emulparams/elf32ebmip.sh: Likewise.
* emulparams/elf32lmip.sh: Likewise.
* emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
* emulparams/elf32lsmip.sh: Likewise.
* emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
* emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
* emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
* emulparams/elf64btsmip.sh: Likewise.
* emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
* emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
* emulparams/elf32ppclinux.sh: Likewise.
* emulparams/elf32ppcsim.sh: Likewise.
* emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
* emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
* emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
* emulparams/h8300self.sh: Likewise.
* emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
* emulparams/sh.sh: Comment.
* emulparams/shl.sh: Source sh.sh, remove duplicates.
* emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
* emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
2001-11-22 17:08:05 +08:00
|
|
|
$(srcdir)/emulparams/elf32lmip.sh $(srcdir)/emulparams/elf32bmip.sh \
|
2006-07-29 16:48:15 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc \
|
|
|
|
${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} elf32lsmip "$(tdir_elf32lsmip)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32ltsmip.c: $(srcdir)/emulparams/elf32ltsmip.sh \
|
|
|
|
$(srcdir)/emulparams/elf32btsmip.sh $(srcdir)/emulparams/elf32bmip.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32ltsmip "$(tdir_elf32ltsmip)"
|
|
|
|
eelf32ltsmip_fbsd.c: $(srcdir)/emulparams/elf32ltsmip_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf32btsmip.sh $(srcdir)/emulparams/elf32bmip.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32ltsmip_fbsd "$(tdir_elf32ltsmip_fbsd)"
|
|
|
|
eelf32ltsmipn32.c: $(srcdir)/emulparams/elf32ltsmipn32.sh \
|
|
|
|
$(srcdir)/emulparams/elf32btsmipn32.sh \
|
2006-07-29 16:48:15 +08:00
|
|
|
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} elf32ltsmipn32 "$(tdir_elf32ltsmipn32)"
|
|
|
|
eelf32ltsmipn32_fbsd.c: $(srcdir)/emulparams/elf32ltsmipn32_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf32btsmipn32.sh \
|
bfd/
2010-12-23 Robert Millan <rmh@gnu.org>
* config.bfd: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.host: Likewise.
* configure.in: Support for `bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
* configure: Regenerate.
* elf32-mips.c: New target for FreeBSD support
(same as traditional MIPS but overrides ELF_OSABI
with ELFOSABI_FREEBSD).
* elf64-mips.c: Likewise.
* elfn32-mips.c: Likewise.
* targets.c (_bfd_target_vector): Add
`bfd_elf32_ntradbigmips_freebsd_vec',
`bfd_elf32_ntradlittlemips_freebsd_vec',
`bfd_elf32_tradbigmips_freebsd_vec',
`bfd_elf32_tradlittlemips_freebsd_vec',
`bfd_elf64_tradbigmips_freebsd_vec' and
`bfd_elf64_tradlittlemips_freebsd_vec'.
ld/
2010-12-14 Robert Millan <rmh@gnu.org>
* configure.tgt: Recognize mips-freebsd and mips-kfreebsd-gnu.
* emulparams/elf32btsmip_fbsd.sh: New file.
* emulparams/elf32btsmipn32_fbsd.sh: Likewise.
* emulparams/elf32ltsmip_fbsd.sh: Likewise.
* emulparams/elf32ltsmipn32_fbsd.sh: Likewise.
* emulparams/elf64btsmip_fbsd.sh: Likewise.
* emulparams/elf64ltsmip_fbsd.sh: Likewise.
* Makefile.am: Add build rules for `eelf32btsmip_fbsd.c',
`eelf32btsmipn32_fbsd.c', `eelf32ltsmip_fbsd.c',
`eelf32ltsmipn32_fbsd.c', `eelf64btsmip_fbsd.c' and
`eelf64ltsmip_fbsd.c'.
* Makefile.in: Regenerate.
gas/
2010-12-19 Robert Millan <rmh@gnu.org>
Richard Sandiford <rdsandiford@googlemail.com>
* config/tc-mips.c (ELF_TARGET): New macro. Generates target
names accordingly to whether TE_FreeBSD and whether TE_TMIPS
are defined.
(mips_target_format): Refactor code using ELF_TARGET().
(support_64bit_objects): Likewise.
* configure.in: Recognize mips-freebsd and mips-kfreebsd-gnu.
* configure.tgt: Likewise.
* configure: Regenerate.
binutils/testsuite/
* binutils-all/readelf.exp: Handle MIPS FreeBSD targets.
gas/testsuite/
* gas/mips/e32el-rel2.d: Accept any file format.
* gas/mips/elf-rel.d: Likewise.
* gas/mips/elf-rel2.d: Likewise.
* gas/mips/elf-rel3.d: Likewise.
* gas/mips/elfel-rel.d: Likewise.
* gas/mips/elfel-rel2.d: Likewise.
* gas/mips/elfel-rel3.d: Likewise.
* gas/mips/ldstla-32-mips3-shared.d: Likewise.
* gas/mips/ldstla-32-mips3.d: Likewise.
* gas/mips/ldstla-32-shared.d: Likewise.
* gas/mips/ldstla-32.d: Likewise.
* gas/mips/ldstla-n64-shared.d: Likewise.
* gas/mips/ldstla-n64.d: Likewise.
* gas/mips/noat-1.d: Likewise.
* gas/mips/set-arch.d: Likewise.
* gas/mips/tls-o32.d: Likewise.
ld/testsuite/
* ld-mips-elf/mips-elf-flags.exp: Handle FreeBSD targets.
* ld-mips-elf/mips-elf.exp: Likewise.
* ld-mips-elf/mips16-call-global.d: Accept any file format.
* ld-mips-elf/mips16-intermix.d: Likewise.
2010-12-31 19:01:00 +08:00
|
|
|
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} elf32ltsmipn32_fbsd "$(tdir_elf32ltsmipn32_fbsd)"
|
|
|
|
eelf32m32c.c: $(srcdir)/emulparams/elf32m32c.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/needrelax.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32m32c "$(tdir_m32c)"
|
|
|
|
eelf32mb_linux.c: $(srcdir)/emulparams/elf32mb_linux.sh \
|
|
|
|
$(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32mb_linux "$(tdir_microblaze)"
|
|
|
|
eelf32mcore.c: $(srcdir)/emulparams/elf32mcore.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} elf32mcore "$(tdir_mcore)"
|
|
|
|
eelf32mep.c: $(srcdir)/emulparams/elf32mep.sh \
|
|
|
|
$(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/mep.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32mep "$(tdir_mep)"
|
|
|
|
eelf32microblaze.c: $(srcdir)/emulparams/elf32microblaze.sh \
|
|
|
|
$(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elfmicroblaze.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32microblaze "$(tdir_microblaze)"
|
|
|
|
eelf32mipswindiss.c: $(srcdir)/emulparams/elf32mipswindiss.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32mipswindiss "$(tdir_elf32mipswindiss)"
|
|
|
|
eelf32moxie.c: $(srcdir)/emulparams/elf32moxie.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32moxie "$(tdir_moxie)"
|
|
|
|
eelf32mt.c: $(srcdir)/emulparams/elf32mt.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32mt "$(tdir_mt)"
|
|
|
|
eelf32openrisc.c: $(srcdir)/emulparams/elf32openrisc.sh \
|
2010-12-31 08:33:36 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} elf32openrisc "$(tdir_openrisc)"
|
|
|
|
eelf32ppc.c: $(srcdir)/emulparams/elf32ppc.sh \
|
|
|
|
$(srcdir)/emulparams/elf32ppccommon.sh $(srcdir)/emultempl/ppc32elf.em \
|
|
|
|
ldemul-list.h \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} elf32ppc "$(tdir_elf32ppc)"
|
|
|
|
eelf32ppc_fbsd.c: $(srcdir)/emulparams/elf32ppc_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf32ppc.sh $(srcdir)/emulparams/elf32ppccommon.sh \
|
|
|
|
$(srcdir)/emultempl/ppc32elf.em $(ELF_DEPS) \
|
|
|
|
ldemul-list.h \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32ppc_fbsd "$(tdir_elf32ppc_fbsd)"
|
|
|
|
eelf32ppclinux.c: $(srcdir)/emulparams/elf32ppclinux.sh \
|
|
|
|
$(srcdir)/emulparams/elf32ppc.sh $(srcdir)/emulparams/elf32ppccommon.sh \
|
|
|
|
$(srcdir)/emultempl/ppc32elf.em $(ELF_DEPS) \
|
|
|
|
ldemul-list.h \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32ppclinux "$(tdir_elf32ppclinux)"
|
|
|
|
eelf32ppcnto.c: $(srcdir)/emulparams/elf32ppcnto.sh \
|
|
|
|
$(srcdir)/emulparams/elf32ppc.sh $(srcdir)/emulparams/elf32ppccommon.sh \
|
|
|
|
$(srcdir)/emultempl/ppc32elf.em $(ELF_DEPS) \
|
|
|
|
ldemul-list.h \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32ppcnto "$(tdir_elf32ppcnto)"
|
|
|
|
eelf32ppcsim.c: $(srcdir)/emulparams/elf32ppcsim.sh \
|
|
|
|
$(srcdir)/emulparams/elf32ppc.sh $(srcdir)/emulparams/elf32ppccommon.sh \
|
|
|
|
$(srcdir)/emultempl/ppc32elf.em $(ELF_DEPS) \
|
|
|
|
ldemul-list.h \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32ppcsim "$(tdir_elf32ppcsim)"
|
|
|
|
eelf32ppcvxworks.c: $(srcdir)/emulparams/elf32ppcvxworks.sh \
|
|
|
|
$(srcdir)/emulparams/elf32ppccommon.sh $(srcdir)/emulparams/vxworks.sh \
|
|
|
|
$(srcdir)/emultempl/vxworks.em $(ELF_DEPS) \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32ppcvxworks "$(tdir_elf32ppcvxworks)"
|
|
|
|
eelf32ppcwindiss.c: $(srcdir)/emulparams/elf32ppcwindiss.sh \
|
2010-03-06 03:49:00 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} elf32ppcwindiss "$(tdir_elf32ppcwindiss)"
|
|
|
|
eelf32rx.c: $(srcdir)/emulparams/elf32rx.sh \
|
|
|
|
$(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32rx "$(tdir_elf32rx)"
|
* Makefile.am (ALL_MACHINES): Add cpu-tilegx.lo and cpu-tilepro.lo.
(ALL_MACHINE_CFILES): Add cpu-tilegx.c and cpu-tilepro.c.
(BFD32_BACKENDS): Add elf32-tilegx.lo, elf32-tilepro.lo,
and elfxx-tilegx.lo.
(BFD32_BACKENDS_CFILES): Add elf32-tilegx.c elf32-tilepro.c, and
elfxx-tilegx.c.
(BFD64_BACKENDS): Add elf64-tilegx.lo.
(BFD64_BACKENDS_CFILES): Add elf64-tilegx.c.
* Makefile.in: Regenerate.
* arctures.c (bfd_architecture): Define bfd_arch_tilepro,
bfd_arch_tilegx, bfd_mach_tilepro, bfd_mach_tilegx.
(bfd_arch_info): Add bfd_tilegx_arch, bfd_tilepro_arch.
(bfd_archures_list): Add bfd_tilegx_arch, bfd_tilepro_arch.
bfd-in2.h: Regenerate.
* config.bfd: Handle tilegx-*-* and tilepro-*-*.
* configure.in: Handle bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec,
and bfd_elf64_tilegx_vec.
* configure: Regenerate.
* elf-bfd.h (enum elf_target_id): Define TILEGX_ELF_DATA and
TILEPRO_ELF_DATA.
* libbfd.h: Regenerate.
* reloc.c: Add BFD_RELOC_TILEPRO_{COPY, GLOB_DAT, JMP_SLOT,
RELATIVE, BROFF_X1, JOFFLONG_X1, JOFFLONG_X1_PLT, IMM8_X0,
IMM8_Y0, IMM8_X1, IMM8_Y1, DEST_IMM8_X1, MT_IMM15_X1, MF_IMM15_X1,
IMM16_X0, IMM16_X1, IMM16_X0_LO, IMM16_X1_LO, IMM16_X0_HI,
IMM16_X1_HI, IMM16_X0_HA, IMM16_X1_HA, IMM16_X0_PCREL,
IMM16_X1_PCREL, IMM16_X0_LO_PCREL, IMM16_X1_LO_PCREL,
IMM16_X0_HI_PCREL, IMM16_X1_HI_PCREL, IMM16_X0_HA_PCREL,
IMM16_X1_HA_PCREL, IMM16_X0_GOT, IMM16_X1_GOT, IMM16_X0_GOT_LO,
IMM16_X1_GOT_LO, IMM16_X0_GOT_HI, IMM16_X1_GOT_HI,
IMM16_X0_GOT_HA, IMM16_X1_GOT_HA, MMSTART_X0, MMEND_X0,
MMSTART_X1, MMEND_X1, SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1,
IMM16_X0_TLS_GD, IMM16_X1_TLS_GD, IMM16_X0_TLS_GD_LO,
IMM16_X1_TLS_GD_LO, IMM16_X0_TLS_GD_HI, IMM16_X1_TLS_GD_HI,
IMM16_X0_TLS_GD_HA, IMM16_X1_TLS_GD_HA, IMM16_X0_TLS_IE,
IMM16_X1_TLS_IE, IMM16_X0_TLS_IE_LO, IMM16_X1_TLS_IE_LO,
IMM16_X0_TLS_IE_HI, IMM16_X1_TLS_IE_HI, IMM16_X0_TLS_IE_HA,
IMM16_X1_TLS_IE_HA, TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32}
Add BFD_RELOC_TILEGX_{HW0, HW1, HW2, HW3, HW0_LAST, HW1_LAST,
HW2_LAST, COPY, GLOB_DAT, JMP_SLOT, RELATIVE, BROFF_X1,
JUMPOFF_X1, JUMPOFF_X1_PLT, IMM8_X0, IMM8_Y0, IMM8_X1, IMM8_Y1,
DEST_IMM8_X1, MT_IMM14_X1, MF_IMM14_X1, MMSTART_X0, MMEND_X0,
SHAMT_X0, SHAMT_X1, SHAMT_Y0, SHAMT_Y1, IMM16_X0_HW0,
IMM16_X1_HW0, IMM16_X0_HW1, IMM16_X1_HW1, IMM16_X0_HW2,
IMM16_X1_HW2, IMM16_X0_HW3, IMM16_X1_HW3, IMM16_X0_HW0_LAST,
IMM16_X1_HW0_LAST, IMM16_X0_HW1_LAST, IMM16_X1_HW1_LAST,
IMM16_X0_HW2_LAST, IMM16_X1_HW2_LAST, IMM16_X0_HW0_PCREL,
IMM16_X1_HW0_PCREL, IMM16_X0_HW1_PCREL, IMM16_X1_HW1_PCREL,
IMM16_X0_HW2_PCREL, IMM16_X1_HW2_PCREL, IMM16_X0_HW3_PCREL,
IMM16_X1_HW3_PCREL, IMM16_X0_HW0_LAST_PCREL,
IMM16_X1_HW0_LAST_PCREL, IMM16_X0_HW1_LAST_PCREL,
IMM16_X1_HW1_LAST_PCREL, IMM16_X0_HW2_LAST_PCREL,
IMM16_X1_HW2_LAST_PCREL, IMM16_X0_HW0_GOT, IMM16_X1_HW0_GOT,
IMM16_X0_HW1_GOT, IMM16_X1_HW1_GOT, IMM16_X0_HW2_GOT,
IMM16_X1_HW2_GOT, IMM16_X0_HW3_GOT, IMM16_X1_HW3_GOT,
IMM16_X0_HW0_LAST_GOT, IMM16_X1_HW0_LAST_GOT,
IMM16_X0_HW1_LAST_GOT, IMM16_X1_HW1_LAST_GOT,
IMM16_X0_HW2_LAST_GOT, IMM16_X1_HW2_LAST_GOT, IMM16_X0_HW0_TLS_GD,
IMM16_X1_HW0_TLS_GD, IMM16_X0_HW1_TLS_GD, IMM16_X1_HW1_TLS_GD,
IMM16_X0_HW2_TLS_GD, IMM16_X1_HW2_TLS_GD, IMM16_X0_HW3_TLS_GD,
IMM16_X1_HW3_TLS_GD, IMM16_X0_HW0_LAST_TLS_GD,
IMM16_X1_HW0_LAST_TLS_GD, IMM16_X0_HW1_LAST_TLS_GD,
IMM16_X1_HW1_LAST_TLS_GD, IMM16_X0_HW2_LAST_TLS_GD,
IMM16_X1_HW2_LAST_TLS_GD, IMM16_X0_HW0_TLS_IE,
IMM16_X1_HW0_TLS_IE, IMM16_X0_HW1_TLS_IE, IMM16_X1_HW1_TLS_IE,
IMM16_X0_HW2_TLS_IE, IMM16_X1_HW2_TLS_IE, IMM16_X0_HW3_TLS_IE,
IMM16_X1_HW3_TLS_IE, IMM16_X0_HW0_LAST_TLS_IE,
IMM16_X1_HW0_LAST_TLS_IE, IMM16_X0_HW1_LAST_TLS_IE,
IMM16_X1_HW1_LAST_TLS_IE, IMM16_X0_HW2_LAST_TLS_IE,
IMM16_X1_HW2_LAST_TLS_IE, TLS_DTPMOD64, TLS_DTPOFF64, TLS_TPOFF64,
TLS_DTPMOD32, TLS_DTPOFF32, TLS_TPOFF32}
* targets.c (bfd_elf32_tilegx_vec): Declare.
(bfd_elf32_tilepro_vec): Declare.
(bfd_elf64_tilegx_vec): Declare.
(bfd_target_vector): Add bfd_elf32_tilegx_vec, bfd_elf32_tilepro_vec,
and bfd_elf64_tilegx_vec.
* cpu-tilegx.c: New file.
* cpu-tilepro.c: New file.
* elf32-tilepro.h: New file.
* elf32-tilepro.c: New file.
* elf32-tilegx.c: New file.
* elf32-tilegx.h: New file.
* elf64-tilegx.c: New file.
* elf64-tilegx.h: New file.
* elfxx-tilegx.c: New file.
* elfxx-tilegx.h: New file.
* Makefile.am (TARGET_CPU_CFILES): Add config/tc-tilegx.c and
config/tc-tilepro.c.
(TARGET_CPU_HFILES): Add config/tc-tilegx.h and
config/tc-tilepro.h.
* Makefile.in: Regenerate.
* configure.tgt (tilepro-*-*): New.
(tilegx-*-*): Likewise.
* config/tc-tilegx.c: New file.
* config/tc-tilegx.h: Likewise.
* config/tc-tilepro.h: Likewise.
* config/tc-tilepro.c: Likewise.
* doc/Makefile.am (CPU_DOCS): Add c-tilegx.texi and
c-tilepro.texi.
* doc/Makefile.in: Regenerate.
* doc/all.texi (TILEGX): Define.
(TILEPRO): Define.
* doc/as.texinfo: Add Tile-Gx and TILEPro documentation. Include
c-tilegx.texi and c-tilepro.texi.
* doc/c-tilegx.texi: New.
* doc/c-tilepro.texi: New.
* gas/tilepro/t_constants.s: New file.
* gas/tilepro/t_constants.d: Likewise.
* gas/tilepro/t_insns.s: Likewise.
* gas/tilepro/tilepro.exp: Likewise.
* gas/tilepro/t_insns.d: Likewise.
* gas/tilegx/tilegx.exp: Likewise.
* gas/tilegx/t_insns.d: Likewise.
* gas/tilegx/t_insns.s: Likewise.
* dis-asm.h (print_insn_tilegx): Declare.
(print_insn_tilepro): Likewise.
* tilegx.h: New file.
* tilepro.h: New file.
* common.h: Add EM_TILEGX.
* tilegx.h: New file.
* tilepro.h: New file.
* Makefile.am (ALL_EMULATION_SOURCES): Add eelf32tilegx.c and
eelf32tilepro.c.
(ALL_64_EMULATION_SOURCES): Add eelf64tilegx.c.
(eelf32tilegx.c): New target.
(eelf32tilepro.c): Likewise.
(eelf64tilegx.c): Likewise.
* Makefile.in: Regenerate.
* configure.tgt: Handle tilegx-*-* and tilepro-*-*.
* emulparams/elf32tilegx.sh: New file.
* emulparams/elf64tilegx.sh: New file.
* emulparams/elf32tilepro.sh: New file.
* ld-elf/eh5.d: Don't run on tile*.
* ld-srec/srec.exp: xfail on tile*.
* ld-tilegx/external.s: New file.
* ld-tilegx/reloc.d: New file.
* ld-tilegx/reloc.s: New file.
* ld-tilegx/tilegx.exp: New file.
* ld-tilepro/external.s: New file.
* ld-tilepro/reloc.d: New file.
* ld-tilepro/reloc.s: New file.
* ld-tilepro/tilepro.exp: New file.
* Makefile.am (TARGET_LIBOPCODES_CFILES): Add tilegx-dis.c,
tilegx-opc.c, tilepro-dis.c, and tilepro-opc.c.
* Makefile.in: Regenerate.
* configure.in: Handle bfd_tilegx_arch and bfd_tilepro_arch.
* configure: Regenerate.
* disassemble.c (disassembler): Add ARCH_tilegx and ARCH_tilepro.
* po/POTFILES.in: Regenerate.
* tilegx-dis.c: New file.
* tilegx-opc.c: New file.
* tilepro-dis.c: New file.
* tilepro-opc.c: New file.
2011-06-13 23:18:54 +08:00
|
|
|
eelf32tilegx.c: $(srcdir)/emulparams/elf32tilegx.sh \
|
|
|
|
$(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32tilegx "$(tdir_tilegx)"
|
|
|
|
eelf32tilepro.c: $(srcdir)/emulparams/elf32tilepro.sh \
|
|
|
|
$(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32tilepro "$(tdir_tilepro)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32vax.c: $(srcdir)/emulparams/elf32vax.sh \
|
2009-07-25 22:58:58 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} elf32vax "$(tdir_elf32vax)"
|
|
|
|
eelf32xc16x.c: $(srcdir)/emulparams/elf32xc16x.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/needrelax.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32xc16x "$(tdir_xc16x)"
|
|
|
|
eelf32xc16xl.c: $(srcdir)/emulparams/elf32xc16xl.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/needrelax.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32xc16xl "$(tdir_xc16xl)"
|
|
|
|
eelf32xc16xs.c: $(srcdir)/emulparams/elf32xc16xs.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/needrelax.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32xc16xs "$(tdir_xc16xs)"
|
|
|
|
eelf32xstormy16.c: $(srcdir)/emulparams/elf32xstormy16.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/needrelax.em \
|
|
|
|
$(srcdir)/scripttempl/xstormy16.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32xstormy16 "$(tdir_xstormy16)"
|
|
|
|
eelf32xtensa.c: $(srcdir)/emulparams/elf32xtensa.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/xtensaelf.em $(INCDIR)/xtensa-config.h \
|
|
|
|
$(BFDDIR)/elf-bfd.h $(BFDDIR)/libbfd.h $(INCDIR)/elf/xtensa.h \
|
|
|
|
$(srcdir)/scripttempl/elfxtensa.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32xtensa "$(tdir_elf32xtensa)"
|
|
|
|
eelf_i386.c: $(srcdir)/emulparams/elf_i386.sh \
|
2009-07-25 22:58:58 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} elf_i386 "$(tdir_elf_i386)"
|
1999-05-03 15:29:11 +08:00
|
|
|
eelf_i386_be.c: $(srcdir)/emulparams/elf_i386_be.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} elf_i386_be "$(tdir_elf_i386_be)"
|
2000-11-03 07:03:24 +08:00
|
|
|
eelf_i386_chaos.c: $(srcdir)/emulparams/elf_i386_chaos.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf_chaos.sc ${GEN_DEPENDS}
|
2000-11-03 07:03:24 +08:00
|
|
|
${GENSCRIPTS} elf_i386_chaos "$(tdir_elf_i386_chaos)"
|
2002-02-18 David O'Brien <obrien@FreeBSD.org>
* Makefile.in: Add new files earmelf_fbsd, eelf32ppc_fbsd,
eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd,
and eelf64alpha_fbsd.
* configure.tgt(sparc64-*-freebsd, ia64-*-freebsd, i[3456]86-*-freebsd,
x86_64-*-freebsd, arm-*-freebsd, alpha*-*-freebsd, powerpc-*-freebsd):
use a FreeBSD-specific emulation rather than the psABI one.
* emulparams/elf_fbsd.sh (ELF_INTERPRETER_NAME): Set appropriate value
for all FreeBSD ELF systems.
* emulparams/armelf_fbsd.sh: Bridge elf_fbsd.sh and the "native" psABI
emulation.
* emulparams/elf32ppc_fbsd.sh: Likewise.
* emulparams/elf64_ia64_fbsd.sh: Likewise.
* emulparams/elf64_sparc_fbsd.sh: Likewise.
* emulparams/elf64alpha_fbsd.sh: Likewise.
* emulparams/elf_i386_fbsd.sh: Likewise.
* emulparams/elf_x86_64_fbsd.sh: Likewise.
Approved by: Nick Clifton <nickc@cambridge.redhat.com>
<m3pu33yy0b.fsf@north-pole.nickc.cambridge.redhat.com>
2002-02-18 17:38:01 +08:00
|
|
|
eelf_i386_fbsd.c: $(srcdir)/emulparams/elf_i386_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf_i386.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2002-02-18 David O'Brien <obrien@FreeBSD.org>
* Makefile.in: Add new files earmelf_fbsd, eelf32ppc_fbsd,
eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd,
and eelf64alpha_fbsd.
* configure.tgt(sparc64-*-freebsd, ia64-*-freebsd, i[3456]86-*-freebsd,
x86_64-*-freebsd, arm-*-freebsd, alpha*-*-freebsd, powerpc-*-freebsd):
use a FreeBSD-specific emulation rather than the psABI one.
* emulparams/elf_fbsd.sh (ELF_INTERPRETER_NAME): Set appropriate value
for all FreeBSD ELF systems.
* emulparams/armelf_fbsd.sh: Bridge elf_fbsd.sh and the "native" psABI
emulation.
* emulparams/elf32ppc_fbsd.sh: Likewise.
* emulparams/elf64_ia64_fbsd.sh: Likewise.
* emulparams/elf64_sparc_fbsd.sh: Likewise.
* emulparams/elf64alpha_fbsd.sh: Likewise.
* emulparams/elf_i386_fbsd.sh: Likewise.
* emulparams/elf_x86_64_fbsd.sh: Likewise.
Approved by: Nick Clifton <nickc@cambridge.redhat.com>
<m3pu33yy0b.fsf@north-pole.nickc.cambridge.redhat.com>
2002-02-18 17:38:01 +08:00
|
|
|
${GENSCRIPTS} elf_i386_fbsd "$(tdir_elf_i386_fbsd)"
|
2001-05-22 22:00:18 +08:00
|
|
|
eelf_i386_ldso.c: $(srcdir)/emulparams/elf_i386_ldso.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2001-05-22 22:00:18 +08:00
|
|
|
${GENSCRIPTS} elf_i386_ldso "$(tdir_elf_i386_ldso)"
|
2010-03-06 03:49:00 +08:00
|
|
|
eelf_i386_sol2.c: $(srcdir)/emulparams/elf_i386_sol2.sh \
|
2010-10-13 02:39:36 +08:00
|
|
|
$(srcdir)/emulparams/solaris2.sh \
|
2010-03-06 03:49:00 +08:00
|
|
|
$(srcdir)/emultempl/solaris2.em \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf_i386_sol2 "$(tdir_elf_i386_sol2)"
|
2005-05-05 22:37:27 +08:00
|
|
|
eelf_i386_vxworks.c: $(srcdir)/emulparams/elf_i386_vxworks.sh \
|
2006-03-03 17:32:01 +08:00
|
|
|
$(srcdir)/emulparams/vxworks.sh $(srcdir)/emultempl/vxworks.em \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2005-05-05 22:37:27 +08:00
|
|
|
${GENSCRIPTS} elf_i386_vxworks "$(tdir_elf_i386_vxworks)"
|
2001-02-10 08:58:38 +08:00
|
|
|
eelf_s390.c: $(srcdir)/emulparams/elf_s390.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2001-02-10 08:58:38 +08:00
|
|
|
${GENSCRIPTS} elf_s390 "$(tdir_elf_s390)"
|
1999-05-03 15:29:11 +08:00
|
|
|
egld960.c: $(srcdir)/emulparams/gld960.sh \
|
|
|
|
$(srcdir)/emultempl/gld960.em $(srcdir)/scripttempl/i960.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} gld960 "$(tdir_gld960)"
|
|
|
|
egld960coff.c: $(srcdir)/emulparams/gld960coff.sh \
|
|
|
|
$(srcdir)/emultempl/gld960c.em $(srcdir)/scripttempl/i960.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} gld960coff "$(tdir_gld960coff)"
|
|
|
|
eh8300.c: $(srcdir)/emulparams/h8300.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8300.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} h8300 "$(tdir_h8300)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eh8300elf.c: $(srcdir)/emulparams/h8300elf.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} h8300elf "$(tdir_h8300elf)"
|
1999-05-03 15:29:11 +08:00
|
|
|
eh8300h.c: $(srcdir)/emulparams/h8300h.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8300h.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} h8300h "$(tdir_h8300h)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eh8300helf.c: $(srcdir)/emulparams/h8300helf.sh \
|
|
|
|
$(srcdir)/emulparams/h8300elf.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} h8300helf "$(tdir_h8300helf)"
|
2003-04-24 20:36:08 +08:00
|
|
|
eh8300hn.c: $(srcdir)/emulparams/h8300hn.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8300hn.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} h8300hn "$(tdir_h8300hn)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eh8300hnelf.c: $(srcdir)/emulparams/h8300hnelf.sh \
|
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
(config.status): Delete rule.
Add extra dependencies to cover sourced emulparams files.
* Makefile.in: Regenerate.
* scripttempl/elf.sc: Order <section>, <section>.* and
corresponding linkonce sections as seen in input files.
Formatting fixes. Zero vma of all sections if not relocating.
(STACK): Define and insert if STACK_ADDR defined.
(OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
(OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
(OTHER_READWRITE_SECTIONS): Likewise.
(OTHER_GOT_SECTIONS): Likewise.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_BSS_SECTIONS): Likewise.
* scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise.
* scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise
* emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
(STACK_ADDR): Define.
* emulparams/armelf_oabi.sh: As for armelf.sh.
* emulparams/elf32mcore.sh: As for armelf.sh.
* emulparams/h8300elf.sh: As for armelf.sh.
* emulparams/mn10200.sh: As for armelf.sh.
* emulparams/shelf.sh: As for armelf.sh.
* emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
* emulparams/m32relf.sh: As for elf32fr30.sh.
* emulparams/h8300helf.sh: As for elf32fr30.sh.
* emulparams/h8300self.sh: As for elf32fr30.sh.
* emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
defines with RELOCATING test.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_END_SYMBOLS): ..this.
* emulparams/crislinux.sh: As for criself.sh.
* emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
if not relocating.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
normal and linkonce sections as seen in input files.
* emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
(TEXT_DYNAMIC): Likewise.
(INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
(OTHER_SDATA_SECTIONS): Likewise.
* emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
(OTHER_PLT_RELOC_SECTIONS): Likewise.
(OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
sections as seen in input files.
* emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
* emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
if not relocating.
(OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
(OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
* emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_SECTIONS): Instead, use this..
(OTHER_END_SYMBOLS): ..and this.
* emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
* emulparams/elf32bsmip.sh: Likewise.
* emulparams/elf32btsmip.sh: Likewise.
* emulparams/elf32ebmip.sh: Likewise.
* emulparams/elf32lmip.sh: Likewise.
* emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
* emulparams/elf32lsmip.sh: Likewise.
* emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
* emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
* emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
* emulparams/elf64btsmip.sh: Likewise.
* emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
* emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
* emulparams/elf32ppclinux.sh: Likewise.
* emulparams/elf32ppcsim.sh: Likewise.
* emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
* emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
* emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
* emulparams/h8300self.sh: Likewise.
* emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
* emulparams/sh.sh: Comment.
* emulparams/shl.sh: Source sh.sh, remove duplicates.
* emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
* emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
2001-11-22 17:08:05 +08:00
|
|
|
$(srcdir)/emulparams/h8300elf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} h8300hnelf "$(tdir_h8300hnelf)"
|
|
|
|
eh8300s.c: $(srcdir)/emulparams/h8300s.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8300s.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} h8300s "$(tdir_h8300s)"
|
2001-08-29 20:51:26 +08:00
|
|
|
eh8300self.c: $(srcdir)/emulparams/h8300self.sh \
|
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
(config.status): Delete rule.
Add extra dependencies to cover sourced emulparams files.
* Makefile.in: Regenerate.
* scripttempl/elf.sc: Order <section>, <section>.* and
corresponding linkonce sections as seen in input files.
Formatting fixes. Zero vma of all sections if not relocating.
(STACK): Define and insert if STACK_ADDR defined.
(OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
(OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
(OTHER_READWRITE_SECTIONS): Likewise.
(OTHER_GOT_SECTIONS): Likewise.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_BSS_SECTIONS): Likewise.
* scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise.
* scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise
* emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
(STACK_ADDR): Define.
* emulparams/armelf_oabi.sh: As for armelf.sh.
* emulparams/elf32mcore.sh: As for armelf.sh.
* emulparams/h8300elf.sh: As for armelf.sh.
* emulparams/mn10200.sh: As for armelf.sh.
* emulparams/shelf.sh: As for armelf.sh.
* emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
* emulparams/m32relf.sh: As for elf32fr30.sh.
* emulparams/h8300helf.sh: As for elf32fr30.sh.
* emulparams/h8300self.sh: As for elf32fr30.sh.
* emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
defines with RELOCATING test.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_END_SYMBOLS): ..this.
* emulparams/crislinux.sh: As for criself.sh.
* emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
if not relocating.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
normal and linkonce sections as seen in input files.
* emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
(TEXT_DYNAMIC): Likewise.
(INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
(OTHER_SDATA_SECTIONS): Likewise.
* emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
(OTHER_PLT_RELOC_SECTIONS): Likewise.
(OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
sections as seen in input files.
* emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
* emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
if not relocating.
(OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
(OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
* emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_SECTIONS): Instead, use this..
(OTHER_END_SYMBOLS): ..and this.
* emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
* emulparams/elf32bsmip.sh: Likewise.
* emulparams/elf32btsmip.sh: Likewise.
* emulparams/elf32ebmip.sh: Likewise.
* emulparams/elf32lmip.sh: Likewise.
* emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
* emulparams/elf32lsmip.sh: Likewise.
* emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
* emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
* emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
* emulparams/elf64btsmip.sh: Likewise.
* emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
* emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
* emulparams/elf32ppclinux.sh: Likewise.
* emulparams/elf32ppcsim.sh: Likewise.
* emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
* emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
* emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
* emulparams/h8300self.sh: Likewise.
* emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
* emulparams/sh.sh: Comment.
* emulparams/shl.sh: Source sh.sh, remove duplicates.
* emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
* emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
2001-11-22 17:08:05 +08:00
|
|
|
$(srcdir)/emulparams/h8300elf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2001-08-29 20:51:26 +08:00
|
|
|
${GENSCRIPTS} h8300self "$(tdir_h8300self)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eh8300sn.c: $(srcdir)/emulparams/h8300sn.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8300sn.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} h8300sn "$(tdir_h8300sn)"
|
2003-04-24 20:36:08 +08:00
|
|
|
eh8300snelf.c: $(srcdir)/emulparams/h8300snelf.sh \
|
|
|
|
$(srcdir)/emulparams/h8300elf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2003-04-24 20:36:08 +08:00
|
|
|
${GENSCRIPTS} h8300snelf "$(tdir_h8300snelf)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eh8300sx.c: $(srcdir)/emulparams/h8300sx.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8300sx.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} h8300sx "$(tdir_h8300sx)"
|
2003-06-04 05:43:52 +08:00
|
|
|
eh8300sxelf.c: $(srcdir)/emulparams/h8300sxelf.sh \
|
|
|
|
$(srcdir)/emulparams/h8300elf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2003-06-04 05:43:52 +08:00
|
|
|
${GENSCRIPTS} h8300sxelf "$(tdir_h8300sxelf)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eh8300sxn.c: $(srcdir)/emulparams/h8300sxn.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8300sxn.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} h8300sxn "$(tdir_h8300sxn)"
|
2003-06-10 15:09:31 +08:00
|
|
|
eh8300sxnelf.c: $(srcdir)/emulparams/h8300sxnelf.sh \
|
|
|
|
$(srcdir)/emulparams/h8300elf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2003-06-10 15:09:31 +08:00
|
|
|
${GENSCRIPTS} h8300sxnelf "$(tdir_h8300sxnelf)"
|
1999-05-03 15:29:11 +08:00
|
|
|
eh8500.c: $(srcdir)/emulparams/h8500.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8500.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} h8500 "$(tdir_h8500)"
|
|
|
|
eh8500b.c: $(srcdir)/emulparams/h8500b.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8500b.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} h8500b "$(tdir_h8500b)"
|
|
|
|
eh8500c.c: $(srcdir)/emulparams/h8500c.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8500c.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} h8500c "$(tdir_h8500c)"
|
|
|
|
eh8500m.c: $(srcdir)/emulparams/h8500m.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8500m.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} h8500m "$(tdir_h8500m)"
|
|
|
|
eh8500s.c: $(srcdir)/emulparams/h8500s.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/h8500s.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} h8500s "$(tdir_h8500s)"
|
|
|
|
ehp300bsd.c: $(srcdir)/emulparams/hp300bsd.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} hp300bsd "$(tdir_hp300bsd)"
|
|
|
|
ehp3hpux.c: $(srcdir)/emulparams/hp3hpux.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} hp3hpux "$(tdir_hp3hpux)"
|
2000-04-26 01:21:28 +08:00
|
|
|
ehppaelf.c: $(srcdir)/emulparams/hppaelf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/hppaelf.em \
|
2000-09-05 11:21:16 +08:00
|
|
|
$(srcdir)/scripttempl/hppaelf.sc ${GEN_DEPENDS}
|
2000-04-26 01:21:28 +08:00
|
|
|
${GENSCRIPTS} hppaelf "$(tdir_hppaelf)"
|
2000-07-09 16:45:29 +08:00
|
|
|
ehppalinux.c: $(srcdir)/emulparams/hppalinux.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/hppaelf.em \
|
2000-09-05 11:21:16 +08:00
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2000-07-09 16:45:29 +08:00
|
|
|
${GENSCRIPTS} hppalinux "$(tdir_hppalinux)"
|
2002-02-03 02:36:04 +08:00
|
|
|
ehppanbsd.c: $(srcdir)/emulparams/hppanbsd.sh \
|
|
|
|
$(srcdir)/emulparams/hppaelf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/hppaelf.em \
|
2002-02-03 02:36:04 +08:00
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} hppanbsd "$(tdir_hppanbsd)"
|
2002-07-09 10:42:13 +08:00
|
|
|
ehppaobsd.c: $(srcdir)/emulparams/hppaobsd.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/hppaelf.em \
|
2002-07-09 10:42:13 +08:00
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} hppaobsd "$(tdir_hppaobsd)"
|
1999-05-03 15:29:11 +08:00
|
|
|
ei386aout.c: $(srcdir)/emulparams/i386aout.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} i386aout "$(tdir_i386aout)"
|
|
|
|
ei386beos.c: $(srcdir)/emulparams/i386beos.sh \
|
|
|
|
$(srcdir)/emultempl/beos.em $(srcdir)/scripttempl/i386beos.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} i386beos "$(tdir_i386beos)"
|
|
|
|
ei386bsd.c: $(srcdir)/emulparams/i386bsd.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} i386bsd "$(tdir_i386bsd)"
|
|
|
|
ei386coff.c: $(srcdir)/emulparams/i386coff.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/i386coff.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} i386coff "$(tdir_i386coff)"
|
|
|
|
ei386go32.c: $(srcdir)/emulparams/i386go32.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/i386go32.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} i386go32 "$(tdir_i386go32)"
|
|
|
|
ei386linux.c: $(srcdir)/emulparams/i386linux.sh \
|
|
|
|
$(srcdir)/emultempl/linux.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} i386linux "$(tdir_i386linux)"
|
|
|
|
ei386lynx.c: $(srcdir)/emulparams/i386lynx.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} i386lynx "$(tdir_i386lynx)"
|
|
|
|
ei386mach.c: $(srcdir)/emulparams/i386mach.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} i386mach "$(tdir_i386mach)"
|
|
|
|
ei386moss.c: $(srcdir)/emulparams/i386moss.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} i386moss "$(tdir_i386moss)"
|
|
|
|
ei386msdos.c: $(srcdir)/emulparams/i386msdos.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/i386msdos.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} i386msdos "$(tdir_i386msdos)"
|
|
|
|
ei386nbsd.c: $(srcdir)/emulparams/i386nbsd.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} i386nbsd "$(tdir_i386nbsd)"
|
2002-05-31 12:33:55 +08:00
|
|
|
ei386nto.c: $(srcdir)/emulparams/i386nto.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2002-05-31 12:33:55 +08:00
|
|
|
${GENSCRIPTS} i386nto "$(tdir_i386nto)"
|
1999-05-03 15:29:11 +08:00
|
|
|
ei386nw.c: $(srcdir)/emulparams/i386nw.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/nw.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} i386nw "$(tdir_i386nw)"
|
|
|
|
ei386pe.c: $(srcdir)/emulparams/i386pe.sh \
|
|
|
|
$(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/pe.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} i386pe "$(tdir_i386pe)"
|
1999-08-06 00:03:56 +08:00
|
|
|
ei386pe_posix.c: $(srcdir)/emulparams/i386pe_posix.sh \
|
|
|
|
$(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/pe.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} i386pe_posix "$(tdir_i386pe_posix)"
|
2006-09-20 19:35:11 +08:00
|
|
|
ei386pep.c: $(srcdir)/emulparams/i386pep.sh \
|
|
|
|
$(srcdir)/emultempl/pep.em $(srcdir)/scripttempl/pep.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} i386pep "$(tdir_i386pe)"
|
1999-05-03 15:29:11 +08:00
|
|
|
elnk960.c: $(srcdir)/emulparams/lnk960.sh \
|
|
|
|
$(srcdir)/emultempl/lnk960.em $(srcdir)/scripttempl/i960.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} lnk960 "$(tdir_lnk960)"
|
2011-01-14 10:03:42 +08:00
|
|
|
em32relf.c: $(srcdir)/emulparams/m32relf.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} m32relf "$(tdir_m32r)"
|
|
|
|
em32relf_linux.c: $(srcdir)/emulparams/m32relf_linux.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} m32relf_linux "$(tdir_m32relf_linux)"
|
|
|
|
em32rlelf.c: $(srcdir)/emulparams/m32rlelf.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} m32rlelf "$(tdir_m32rlelf)"
|
|
|
|
em32rlelf_linux.c: $(srcdir)/emulparams/m32rlelf_linux.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} m32rlelf_linux "$(tdir_m32rlelf_linux)"
|
2000-06-19 09:22:44 +08:00
|
|
|
em68hc11elf.c: $(srcdir)/emulparams/m68hc11elf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(srcdir)/emultempl/m68hc1xelf.em $(ELF_DEPS) \
|
2003-06-27 08:38:25 +08:00
|
|
|
$(srcdir)/scripttempl/elfm68hc11.sc ${GEN_DEPENDS}
|
2000-06-19 09:22:44 +08:00
|
|
|
${GENSCRIPTS} m68hc11elf "$(tdir_m68hc11)"
|
|
|
|
em68hc11elfb.c: $(srcdir)/emulparams/m68hc11elfb.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(srcdir)/emultempl/m68hc1xelf.em $(ELF_DEPS) \
|
2003-06-27 08:38:25 +08:00
|
|
|
$(srcdir)/scripttempl/elfm68hc11.sc ${GEN_DEPENDS}
|
2000-06-19 09:22:44 +08:00
|
|
|
${GENSCRIPTS} m68hc11elfb "$(tdir_m68hc11b)"
|
|
|
|
em68hc12elf.c: $(srcdir)/emulparams/m68hc12elf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(srcdir)/emultempl/m68hc1xelf.em $(ELF_DEPS) \
|
2003-06-27 08:38:25 +08:00
|
|
|
$(srcdir)/scripttempl/elfm68hc12.sc ${GEN_DEPENDS}
|
2000-06-19 09:22:44 +08:00
|
|
|
${GENSCRIPTS} m68hc12elf "$(tdir_m68hc12)"
|
|
|
|
em68hc12elfb.c: $(srcdir)/emulparams/m68hc12elfb.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(srcdir)/emultempl/m68hc1xelf.em $(ELF_DEPS) \
|
2003-06-27 08:38:25 +08:00
|
|
|
$(srcdir)/scripttempl/elfm68hc12.sc ${GEN_DEPENDS}
|
2000-06-19 09:22:44 +08:00
|
|
|
${GENSCRIPTS} m68hc12elfb "$(tdir_m68hc12b)"
|
1999-05-03 15:29:11 +08:00
|
|
|
em68k4knbsd.c: $(srcdir)/emulparams/m68k4knbsd.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} m68k4knbsd "$(tdir_m68k4knbsd)"
|
|
|
|
em68kaout.c: $(srcdir)/emulparams/m68kaout.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} m68kaout "$(tdir_m68kaout)"
|
|
|
|
em68kaux.c: $(srcdir)/emulparams/m68kaux.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/m68kaux.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} m68kaux "$(tdir_m68kaux)"
|
|
|
|
em68kcoff.c: $(srcdir)/emulparams/m68kcoff.sh \
|
2000-07-22 07:31:53 +08:00
|
|
|
$(srcdir)/emultempl/m68kcoff.em $(srcdir)/scripttempl/m68kcoff.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} m68kcoff "$(tdir_m68kcoff)"
|
|
|
|
em68kelf.c: $(srcdir)/emulparams/m68kelf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/m68kelf.em \
|
2000-09-16 02:52:52 +08:00
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} m68kelf "$(tdir_m68kelf)"
|
2001-12-18 21:26:26 +08:00
|
|
|
em68kelfnbsd.c: $(srcdir)/emulparams/m68kelfnbsd.sh \
|
|
|
|
$(srcdir)/emulparams/m68kelf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/m68kelf.em \
|
2001-12-18 21:26:26 +08:00
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} m68kelfnbsd "$(tdir_m68kelfnbsd)"
|
1999-05-03 15:29:11 +08:00
|
|
|
em68klinux.c: $(srcdir)/emulparams/m68klinux.sh \
|
|
|
|
$(srcdir)/emultempl/linux.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} m68klinux "$(tdir_m68klinux)"
|
|
|
|
em68knbsd.c: $(srcdir)/emulparams/m68knbsd.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} m68knbsd "$(tdir_m68knbsd)"
|
|
|
|
em68kpsos.c: $(srcdir)/emulparams/m68kpsos.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/psos.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} m68kpsos "$(tdir_m68kpsos)"
|
|
|
|
em88kbcs.c: $(srcdir)/emulparams/m88kbcs.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/m88kbcs.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} m88kbcs "$(tdir_m88kbcs)"
|
1999-05-07 15:40:05 +08:00
|
|
|
emcorepe.c: $(srcdir)/emulparams/mcorepe.sh \
|
|
|
|
$(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/pe.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} mcorepe "$(tdir_mcorepe)"
|
2006-07-29 16:48:15 +08:00
|
|
|
emipsbig.c: $(srcdir)/emulparams/mipsbig.sh $(srcdir)/emultempl/generic.em \
|
2005-07-16 10:03:55 +08:00
|
|
|
$(srcdir)/scripttempl/mips.sc ${GEN_DEPENDS}
|
2006-07-29 16:48:15 +08:00
|
|
|
${GENSCRIPTS} mipsbig "$(tdir_mipsbig)"
|
|
|
|
emipsbsd.c: $(srcdir)/emulparams/mipsbsd.sh $(srcdir)/emultempl/generic.em \
|
|
|
|
$(srcdir)/scripttempl/mipsbsd.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} mipsbsd "$(tdir_mipsbsd)"
|
|
|
|
emipsidt.c: $(srcdir)/emulparams/mipsidt.sh $(srcdir)/emultempl/generic.em \
|
|
|
|
$(srcdir)/emultempl/mipsecoff.em $(srcdir)/scripttempl/mips.sc \
|
|
|
|
${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} mipsidt "$(tdir_mipsidt)"
|
2006-07-29 16:48:15 +08:00
|
|
|
emipsidtl.c: $(srcdir)/emulparams/mipsidtl.sh $(srcdir)/emultempl/generic.em \
|
|
|
|
$(srcdir)/emultempl/mipsecoff.em $(srcdir)/scripttempl/mips.sc \
|
|
|
|
${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} mipsidtl "$(tdir_mipsidtl)"
|
2006-07-29 16:48:15 +08:00
|
|
|
emipslit.c: $(srcdir)/emulparams/mipslit.sh $(srcdir)/emultempl/generic.em \
|
|
|
|
$(srcdir)/scripttempl/mips.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} mipslit "$(tdir_mipslit)"
|
2006-07-29 16:48:15 +08:00
|
|
|
emipslnews.c: $(srcdir)/emulparams/mipslnews.sh \
|
1999-05-03 15:29:11 +08:00
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/mips.sc ${GEN_DEPENDS}
|
2006-07-29 16:48:15 +08:00
|
|
|
${GENSCRIPTS} mipslnews "$(tdir_mipslnews)"
|
|
|
|
emipspe.c: $(srcdir)/emulparams/mipspe.sh $(srcdir)/emultempl/pe.em \
|
|
|
|
$(srcdir)/scripttempl/pe.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} mipspe "$(tdir_mipspe)"
|
2011-01-14 10:03:42 +08:00
|
|
|
emn10200.c: $(srcdir)/emulparams/mn10200.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} mn10200 "$(tdir_mn10200)"
|
1999-05-03 15:29:11 +08:00
|
|
|
emn10300.c: $(srcdir)/emulparams/mn10300.sh \
|
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
(config.status): Delete rule.
Add extra dependencies to cover sourced emulparams files.
* Makefile.in: Regenerate.
* scripttempl/elf.sc: Order <section>, <section>.* and
corresponding linkonce sections as seen in input files.
Formatting fixes. Zero vma of all sections if not relocating.
(STACK): Define and insert if STACK_ADDR defined.
(OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
(OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
(OTHER_READWRITE_SECTIONS): Likewise.
(OTHER_GOT_SECTIONS): Likewise.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_BSS_SECTIONS): Likewise.
* scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise.
* scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise
* emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
(STACK_ADDR): Define.
* emulparams/armelf_oabi.sh: As for armelf.sh.
* emulparams/elf32mcore.sh: As for armelf.sh.
* emulparams/h8300elf.sh: As for armelf.sh.
* emulparams/mn10200.sh: As for armelf.sh.
* emulparams/shelf.sh: As for armelf.sh.
* emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
* emulparams/m32relf.sh: As for elf32fr30.sh.
* emulparams/h8300helf.sh: As for elf32fr30.sh.
* emulparams/h8300self.sh: As for elf32fr30.sh.
* emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
defines with RELOCATING test.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_END_SYMBOLS): ..this.
* emulparams/crislinux.sh: As for criself.sh.
* emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
if not relocating.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
normal and linkonce sections as seen in input files.
* emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
(TEXT_DYNAMIC): Likewise.
(INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
(OTHER_SDATA_SECTIONS): Likewise.
* emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
(OTHER_PLT_RELOC_SECTIONS): Likewise.
(OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
sections as seen in input files.
* emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
* emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
if not relocating.
(OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
(OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
* emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_SECTIONS): Instead, use this..
(OTHER_END_SYMBOLS): ..and this.
* emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
* emulparams/elf32bsmip.sh: Likewise.
* emulparams/elf32btsmip.sh: Likewise.
* emulparams/elf32ebmip.sh: Likewise.
* emulparams/elf32lmip.sh: Likewise.
* emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
* emulparams/elf32lsmip.sh: Likewise.
* emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
* emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
* emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
* emulparams/elf64btsmip.sh: Likewise.
* emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
* emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
* emulparams/elf32ppclinux.sh: Likewise.
* emulparams/elf32ppcsim.sh: Likewise.
* emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
* emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
* emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
* emulparams/h8300self.sh: Likewise.
* emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
* emulparams/sh.sh: Comment.
* emulparams/shl.sh: Source sh.sh, remove duplicates.
* emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
* emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
2001-11-22 17:08:05 +08:00
|
|
|
$(srcdir)/emulparams/mn10200.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} mn10300 "$(tdir_mn10300)"
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x110.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x110 "$(tdir_msp430x110)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x1101.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x1101 "$(tdir_msp430x1101)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x1111.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x1111 "$(tdir_msp430x1111)" msp430all
|
2011-01-14 10:03:42 +08:00
|
|
|
emsp430x112.c: $(srcdir)/emulparams/msp430all.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x112 "$(tdir_msp430x112)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x1121.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x1121 "$(tdir_msp430x1121)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x1122.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x1122 "$(tdir_msp430x1122)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x1132.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x1132 "$(tdir_msp430x1132)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x122.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x122 "$(tdir_msp430x122)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x1222.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x1222 "$(tdir_msp430x1222)" msp430all
|
2011-01-14 10:03:42 +08:00
|
|
|
emsp430x123.c: $(srcdir)/emulparams/msp430all.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x123 "$(tdir_msp430x123)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x1232.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x1232 "$(tdir_msp430x1232)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x133.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x133 "$(tdir_msp430x133)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x1331.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x1331 "$(tdir_msp430x1331)" msp430all
|
2011-01-14 10:03:42 +08:00
|
|
|
emsp430x135.c: $(srcdir)/emulparams/msp430all.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x135 "$(tdir_msp430x135)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x1351.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x1351 "$(tdir_msp430x1351)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x147.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x147 "$(tdir_msp430x147)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x148.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x148 "$(tdir_msp430x148)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x149.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x149 "$(tdir_msp430x149)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x155.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x155 "$(tdir_msp430x155)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x156.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x156 "$(tdir_msp430x156)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x157.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x157 "$(tdir_msp430x157)" msp430all
|
2004-07-26 20:29:02 +08:00
|
|
|
emsp430x1610.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2004-07-26 20:29:02 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x1610 "$(tdir_msp430x1610)" msp430all
|
|
|
|
emsp430x1611.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2004-07-26 20:29:02 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x1611 "$(tdir_msp430x1611)" msp430all
|
|
|
|
emsp430x1612.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2004-07-26 20:29:02 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x1612 "$(tdir_msp430x1612)" msp430all
|
2011-01-14 10:03:42 +08:00
|
|
|
emsp430x167.c: $(srcdir)/emulparams/msp430all.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x167 "$(tdir_msp430x167)" msp430all
|
|
|
|
emsp430x168.c: $(srcdir)/emulparams/msp430all.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x168 "$(tdir_msp430x168)" msp430all
|
|
|
|
emsp430x169.c: $(srcdir)/emulparams/msp430all.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x169 "$(tdir_msp430x169)" msp430all
|
2005-08-09 01:08:04 +08:00
|
|
|
emsp430x2101.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2005-08-09 01:08:04 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x2101 "$(tdir_msp430x2101)" msp430all
|
|
|
|
emsp430x2111.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2005-08-09 01:08:04 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x2111 "$(tdir_msp430x2111)" msp430all
|
|
|
|
emsp430x2121.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2005-08-09 01:08:04 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x2121 "$(tdir_msp430x2121)" msp430all
|
|
|
|
emsp430x2131.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2005-08-09 01:08:04 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x2131 "$(tdir_msp430x2131)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x311.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430_3.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x311 "$(tdir_msp430x311)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x312.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430_3.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x312 "$(tdir_msp430x312)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x313.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430_3.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x313 "$(tdir_msp430x313)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x314.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430_3.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x314 "$(tdir_msp430x314)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x315.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430_3.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x315 "$(tdir_msp430x315)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x323.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430_3.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x323 "$(tdir_msp430x323)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x325.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430_3.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x325 "$(tdir_msp430x325)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x336.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430_3.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x336 "$(tdir_msp430x336)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x337.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430_3.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x337 "$(tdir_msp430x337)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x412.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x412 "$(tdir_msp430x412)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430x413.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x413 "$(tdir_msp430x413)" msp430all
|
2004-07-26 20:29:02 +08:00
|
|
|
emsp430x415.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2004-07-26 20:29:02 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x415 "$(tdir_msp430x415)" msp430all
|
|
|
|
emsp430x417.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2004-07-26 20:29:02 +08:00
|
|
|
${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} msp430x417 "$(tdir_msp430x417)" msp430all
|
|
|
|
emsp430x435.c: $(srcdir)/emulparams/msp430all.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x435 "$(tdir_msp430x435)" msp430all
|
|
|
|
emsp430x436.c: $(srcdir)/emulparams/msp430all.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x436 "$(tdir_msp430x436)" msp430all
|
|
|
|
emsp430x437.c: $(srcdir)/emulparams/msp430all.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x437 "$(tdir_msp430x437)" msp430all
|
|
|
|
emsp430x447.c: $(srcdir)/emulparams/msp430all.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x447 "$(tdir_msp430x447)" msp430all
|
|
|
|
emsp430x448.c: $(srcdir)/emulparams/msp430all.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x448 "$(tdir_msp430x448)" msp430all
|
|
|
|
emsp430x449.c: $(srcdir)/emulparams/msp430all.sh \
|
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430x449 "$(tdir_msp430x449)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430xE423.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430xE423 "$(tdir_msp430xE423)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430xE425.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430xE425 "$(tdir_msp430xE425)" msp430all
|
2003-08-16 01:04:48 +08:00
|
|
|
emsp430xE427.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430xE427 "$(tdir_msp430xE427)" msp430all
|
2004-07-26 20:29:02 +08:00
|
|
|
emsp430xG437.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2004-07-26 20:29:02 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430xG437 "$(tdir_msp430xG437)" msp430all
|
|
|
|
emsp430xG438.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2004-07-26 20:29:02 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430xG438 "$(tdir_msp430xG438)" msp430all
|
|
|
|
emsp430xG439.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2004-07-26 20:29:02 +08:00
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} msp430xG439 "$(tdir_msp430xG439)" msp430all
|
2011-01-14 10:03:42 +08:00
|
|
|
emsp430xW423.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} msp430xW423 "$(tdir_msp430xW423)" msp430all
|
|
|
|
emsp430xW425.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} msp430xW425 "$(tdir_msp430xW425)" msp430all
|
|
|
|
emsp430xW427.c: $(srcdir)/emulparams/msp430all.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf32msp430.sc \
|
2003-10-16 16:46:35 +08:00
|
|
|
${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} msp430xW427 "$(tdir_msp430xW427)" msp430all
|
1999-05-03 15:29:11 +08:00
|
|
|
enews.c: $(srcdir)/emulparams/news.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} news "$(tdir_news)"
|
|
|
|
ens32knbsd.c: $(srcdir)/emulparams/ns32knbsd.sh \
|
2003-12-04 20:09:25 +08:00
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/emultempl/netbsd.em \
|
|
|
|
$(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} ns32knbsd "$(tdir_ns32knbsd)"
|
2002-02-01 01:33:08 +08:00
|
|
|
eor32.c: $(srcdir)/emulparams/or32.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/or32.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} or32 "$(tdir_or32)"
|
|
|
|
eor32elf.c: $(srcdir)/emulparams/or32elf.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2002-02-01 01:33:08 +08:00
|
|
|
${GENSCRIPTS} or32elf "$(tdir_or32elf)"
|
1999-05-03 15:29:11 +08:00
|
|
|
epc532macha.c: $(srcdir)/emulparams/pc532macha.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} pc532macha "$(tdir_pc532macha)"
|
2001-02-19 07:33:11 +08:00
|
|
|
epdp11.c: $(srcdir)/emulparams/pdp11.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} pdp11 "$(tdir_pdp11)"
|
1999-09-05 01:37:36 +08:00
|
|
|
epjelf.c: $(srcdir)/emulparams/pjelf.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-09-05 01:37:36 +08:00
|
|
|
${GENSCRIPTS} pjelf "$(tdir_pjelf)"
|
2006-06-20 10:22:16 +08:00
|
|
|
epjlelf.c: $(srcdir)/emulparams/pjlelf.sh $(srcdir)/emulparams/pjelf.sh \
|
2006-06-21 00:37:29 +08:00
|
|
|
$(ELF_GEN_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-09-05 01:37:36 +08:00
|
|
|
${GENSCRIPTS} pjlelf "$(tdir_pjlelf)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eppclynx.c: $(srcdir)/emulparams/ppclynx.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} ppclynx "$(tdir_ppclynx)"
|
1999-05-03 15:29:11 +08:00
|
|
|
eppcmacos.c: $(srcdir)/emulparams/ppcmacos.sh \
|
|
|
|
$(srcdir)/emultempl/aix.em $(srcdir)/scripttempl/aix.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} ppcmacos "$(tdir_ppcmacos)"
|
|
|
|
eppcnw.c: $(srcdir)/emulparams/ppcnw.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/nw.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} ppcnw "$(tdir_ppcnw)"
|
|
|
|
eppcpe.c: $(srcdir)/emulparams/ppcpe.sh \
|
|
|
|
$(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/ppcpe.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} ppcpe "$(tdir_ppcpe)"
|
|
|
|
eriscix.c: $(srcdir)/emulparams/riscix.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} riscix "$(tdir_riscix)"
|
2009-03-02 18:33:08 +08:00
|
|
|
escore3_elf.c: $(srcdir)/emulparams/scoreelf.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/scoreelf.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} score3_elf "$(tdir_score3_elf)" scoreelf
|
|
|
|
escore7_elf.c: $(srcdir)/emulparams/scoreelf.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/scoreelf.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} score7_elf "$(tdir_score7_elf)" scoreelf
|
1999-05-03 15:29:11 +08:00
|
|
|
esh.c: $(srcdir)/emulparams/sh.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/sh.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} sh "$(tdir_sh)"
|
|
|
|
eshelf.c: $(srcdir)/emulparams/shelf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} shelf "$(tdir_shelf)"
|
Contribute sh64-elf.
2002-01-24 Alexandre Oliva <aoliva@redhat.com>
* emulparams/shelf32.sh (STACK_ADDR): Define as formerly defined
in OTHER_RELOCATABLE_SECTIONS.
2002-01-18 Alexandre Oliva <aoliva@redhat.com>
* emulparams/shelf32.sh (STACK_ADDR): Define.
(OTHER_RELOCATABLE_SECTIONS): Renamed to...
(OTHER_SECTIONS): this. Removed stack settings.
* emulparams/shelf64.sh (OTHER_RELOCATABLE_SECTIONS): Do not set.
(OTHER_SECTIONS): Reset after sourcing shelf32.sh.
2001-03-12 DJ Delorie <dj@redhat.com>
* emultempl/sh64elf.em (sh64_elf_$_before_allocation): Disable
relaxing if any shmedia or mixed sections are found.
2001-03-07 DJ Delorie <dj@redhat.com>
* emultempl/sh64elf.em (sh64_elf_before_allocation): Pass f to
einfo. Gracefully decline to output to non-elf formats.
2001-03-06 Hans-Peter Nilsson <hpn@redhat.com>
* emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS) <.stack>:
Default to _end aligned to next multiple of 0x40000, plus 0x40000.
* emulparams/shelf32.sh: Ditto.
2001-01-14 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Tweak
comment.
2001-01-10 Ben Elliston <bje@redhat.com>
* emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Avoid
non-portable shell constructs. From Hans-Peter Nilsson.
2001-01-09 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf64.sh (EXTRA_EM_FILE): Define empty.
* Makefile.am (eshelf64.c, eshlelf64.c, eshlelf32.c): Adjust
dependencies to the shell script include chain.
* Makefile.in: Regenerate.
2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em: Update and tweak comments.
(sh64_elf_${EMULATION_NAME}_after_allocation): Always allocate and
make a .cranges section SEC_IN_MEMORY.
2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em
(sh64_elf_${EMULATION_NAME}_before_allocation): Don't stop when
.cranges section found to be necessary; continue and set stored
section contents flags for sections with non-mixed contents.
Use a struct sh64_section_data container and sh64_elf_section_data
to store contents-type flags.
Remove unused update of "isec".
(sh64_elf_${EMULATION_NAME}_after_allocation): Only process
sections marked SHF_SH5_ISA32_MIXED. Use sh64_elf_section_data to
access contents-type flags. Assert that the associated container
is initialized. Use that container, not elf_gp_size, to hold size
of linker-generated cranges contents.
2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em
(sh64_elf_${EMULATION_NAME}_before_allocation): Exit early if
there's already a .cranges section. When section flag difference
is found, don't NULL-check cranges a second time. Tweak comments.
(sh64_elf_${EMULATION_NAME}_after_allocation): Use size after
merging, not max size, as size of ld-generated .cranges contents.
Don't set ELF section flags in output section. When checking for
needed .cranges descriptors, don't use a variable; compare
incoming ELF section flags directly to SHF_SH5_ISA32_MIXED. Tweak
comments.
2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em: New file.
* Makefile.am (eshelf32.c, eshlelf32.c): Adjust dependencies.
* Makefile.in: Regenerate.
* emulparams/shelf32.sh (OUTPUT_FORMAT): Only set if not set.
(OTHER_RELOCATING_SECTIONS): Ditto.
(EXTRA_EM_FILE): New, set to sh64elf if not set.
* emulparams/shlelf32.sh: Stub out all settings except
OUTPUT_FORMAT. Source shelf32.sh.
* emulparams/shelf64.sh: Similar, but also keep ELF_SIZE and
OTHER_RELOCATING_SECTIONS.
(OTHER_RELOCATING_SECTIONS): Remove .cranges.
* emulparams/shlelf64.sh: Stub out all settings except
OUTPUT_FORMAT. Source shelf64.sh.
2000-12-15 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS): Include
.cranges section.
(DATA_START_SYMBOLS): Define, provide ___data.
(OTHER_READONLY_SYMBOLS): Define, provide ___rodata and align to 8
for consecutive .data section.
(OTHER_GOT_SECTIONS): Define, align to 8 for consecutive .bss
section after .data section.
* emulparams/shlelf64.sh: Ditto.
* emulparams/shelf32.sh: Ditto.
(ALIGNMENT): Define to 8.
* emulparams/shelf32.sh: Ditto.
2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com>
* configure.tgt (sh64-*-elf*): Assign targ_extra_libpath to get
built-in linker scripts.
2000-11-30 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shlelf64.sh: New.
* emulparams/shelf64.sh: New.
* configure.tgt (sh64-*-elf*): Add shelf64 and shlelf64 to
targ_extra_emuls.
* Makefile.am: Add support for shlelf64 and shelf64.
* Makefile.in: Regenerate.
2000-11-29 Hans-Peter Nilsson <hpn@cygnus.com>
* configure.tgt (sh64-*-elf*): Add shelf as default.
Add shlelf to targ_extra_emuls.
2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf32.sh: New file.
* emulparams/shlelf32.sh: New file.
* Makefile.am: Add support for shlelf32 and shelf32.
* configure.tgt: Map sh64-*-elf* to shlelf32 and shelf32.
* Makefile.in: Regenerate.
2002-02-08 14:39:01 +08:00
|
|
|
eshelf32.c: $(srcdir)/emulparams/shelf32.sh \
|
|
|
|
$(BFDDIR)/libbfd.h $(INCDIR)/libiberty.h \
|
|
|
|
$(srcdir)/emultempl/sh64elf.em $(INCDIR)/elf/sh.h $(BFDDIR)/elf-bfd.h \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
Contribute sh64-elf.
2002-01-24 Alexandre Oliva <aoliva@redhat.com>
* emulparams/shelf32.sh (STACK_ADDR): Define as formerly defined
in OTHER_RELOCATABLE_SECTIONS.
2002-01-18 Alexandre Oliva <aoliva@redhat.com>
* emulparams/shelf32.sh (STACK_ADDR): Define.
(OTHER_RELOCATABLE_SECTIONS): Renamed to...
(OTHER_SECTIONS): this. Removed stack settings.
* emulparams/shelf64.sh (OTHER_RELOCATABLE_SECTIONS): Do not set.
(OTHER_SECTIONS): Reset after sourcing shelf32.sh.
2001-03-12 DJ Delorie <dj@redhat.com>
* emultempl/sh64elf.em (sh64_elf_$_before_allocation): Disable
relaxing if any shmedia or mixed sections are found.
2001-03-07 DJ Delorie <dj@redhat.com>
* emultempl/sh64elf.em (sh64_elf_before_allocation): Pass f to
einfo. Gracefully decline to output to non-elf formats.
2001-03-06 Hans-Peter Nilsson <hpn@redhat.com>
* emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS) <.stack>:
Default to _end aligned to next multiple of 0x40000, plus 0x40000.
* emulparams/shelf32.sh: Ditto.
2001-01-14 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Tweak
comment.
2001-01-10 Ben Elliston <bje@redhat.com>
* emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Avoid
non-portable shell constructs. From Hans-Peter Nilsson.
2001-01-09 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf64.sh (EXTRA_EM_FILE): Define empty.
* Makefile.am (eshelf64.c, eshlelf64.c, eshlelf32.c): Adjust
dependencies to the shell script include chain.
* Makefile.in: Regenerate.
2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em: Update and tweak comments.
(sh64_elf_${EMULATION_NAME}_after_allocation): Always allocate and
make a .cranges section SEC_IN_MEMORY.
2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em
(sh64_elf_${EMULATION_NAME}_before_allocation): Don't stop when
.cranges section found to be necessary; continue and set stored
section contents flags for sections with non-mixed contents.
Use a struct sh64_section_data container and sh64_elf_section_data
to store contents-type flags.
Remove unused update of "isec".
(sh64_elf_${EMULATION_NAME}_after_allocation): Only process
sections marked SHF_SH5_ISA32_MIXED. Use sh64_elf_section_data to
access contents-type flags. Assert that the associated container
is initialized. Use that container, not elf_gp_size, to hold size
of linker-generated cranges contents.
2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em
(sh64_elf_${EMULATION_NAME}_before_allocation): Exit early if
there's already a .cranges section. When section flag difference
is found, don't NULL-check cranges a second time. Tweak comments.
(sh64_elf_${EMULATION_NAME}_after_allocation): Use size after
merging, not max size, as size of ld-generated .cranges contents.
Don't set ELF section flags in output section. When checking for
needed .cranges descriptors, don't use a variable; compare
incoming ELF section flags directly to SHF_SH5_ISA32_MIXED. Tweak
comments.
2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em: New file.
* Makefile.am (eshelf32.c, eshlelf32.c): Adjust dependencies.
* Makefile.in: Regenerate.
* emulparams/shelf32.sh (OUTPUT_FORMAT): Only set if not set.
(OTHER_RELOCATING_SECTIONS): Ditto.
(EXTRA_EM_FILE): New, set to sh64elf if not set.
* emulparams/shlelf32.sh: Stub out all settings except
OUTPUT_FORMAT. Source shelf32.sh.
* emulparams/shelf64.sh: Similar, but also keep ELF_SIZE and
OTHER_RELOCATING_SECTIONS.
(OTHER_RELOCATING_SECTIONS): Remove .cranges.
* emulparams/shlelf64.sh: Stub out all settings except
OUTPUT_FORMAT. Source shelf64.sh.
2000-12-15 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS): Include
.cranges section.
(DATA_START_SYMBOLS): Define, provide ___data.
(OTHER_READONLY_SYMBOLS): Define, provide ___rodata and align to 8
for consecutive .data section.
(OTHER_GOT_SECTIONS): Define, align to 8 for consecutive .bss
section after .data section.
* emulparams/shlelf64.sh: Ditto.
* emulparams/shelf32.sh: Ditto.
(ALIGNMENT): Define to 8.
* emulparams/shelf32.sh: Ditto.
2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com>
* configure.tgt (sh64-*-elf*): Assign targ_extra_libpath to get
built-in linker scripts.
2000-11-30 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shlelf64.sh: New.
* emulparams/shelf64.sh: New.
* configure.tgt (sh64-*-elf*): Add shelf64 and shlelf64 to
targ_extra_emuls.
* Makefile.am: Add support for shlelf64 and shelf64.
* Makefile.in: Regenerate.
2000-11-29 Hans-Peter Nilsson <hpn@cygnus.com>
* configure.tgt (sh64-*-elf*): Add shelf as default.
Add shlelf to targ_extra_emuls.
2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf32.sh: New file.
* emulparams/shlelf32.sh: New file.
* Makefile.am: Add support for shlelf32 and shelf32.
* configure.tgt: Map sh64-*-elf* to shlelf32 and shelf32.
* Makefile.in: Regenerate.
2002-02-08 14:39:01 +08:00
|
|
|
${GENSCRIPTS} shelf32 "$(tdir_shelf32)"
|
2002-10-10 03:09:59 +08:00
|
|
|
eshelf32_linux.c: $(srcdir)/emulparams/shelf32_linux.sh \
|
|
|
|
$(srcdir)/emulparams/shelf32.sh \
|
|
|
|
$(BFDDIR)/libbfd.h $(INCDIR)/libiberty.h \
|
|
|
|
$(srcdir)/emultempl/sh64elf.em $(INCDIR)/elf/sh.h $(BFDDIR)/elf-bfd.h \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2002-10-10 03:09:59 +08:00
|
|
|
${GENSCRIPTS} shelf32_linux "$(tdir_shelf32_linux)"
|
bfd:
* Makefile.am (BFD32_BACKENDS): Add elf32-sh64-nbsd.lo.
(BFD32_BACKENDS_CFILES): Add elf32-sh64-nbsd.c.
(BFD64_BACKENDS): Add elf64-sh64-nbsd.lo.
(BFD64_BACKENDS_CFILES): Add elf64-sh64-nbsd.c.
(elf32-sh64-nbsd.lo, elf64-sh64-nbsd.lo): New rules.
* Makefile.in: Regenerate.
* config.bfd (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* configure.in: Add bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec,
bfd_elf64_sh64nbsd_vec, and bfd_elf64_sh64lnbsd_vec.
* configure: Regenerate.
* elf32-sh64-nbsd.c: New file.
* elf64-sh64-nbsd.c: New file.
* targets.c: Add extern decls for bfd_elf32_sh64nbsd_vec,
bfd_elf32_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec, and
bfd_elf64_sh64lnbsd_vec.
gas:
* configure.in (sh5*): Set cpu_type to sh64 and endian to big.
(sh5le*, sh64le*): Set cpu_type to sh64 and endian to little.
(sh5*-*-netbsd*, sh64*-*-netbsd*): New targets.
* configure: Regenerate.
* config/tc-sh64.c (sh64_target_format): Add support for NetBSD
environment.
ld:
* Makefile.am (ALL_EMULATIONS): Add eshelf32_nbsd.o,
eshlelf32_nbsd.o, eshelf64_nbsd.o, and eshlelf64_nbsd.o.
(eshelf32_nbsd.c, eshelf64_nbsd.c, eshlelf32_nbsd.c)
(eshlelf64_nbsd.c): New rules.
* Makefile.in: Regenerate.
* configure.tgt (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* emulparams/shelf32_nbsd.sh: New file.
* emulparams/shelf64_nbsd.sh: New file.
* emulparams/shlelf32_nbsd.sh: New file.
* emulparams/shlelf64_nbsd.sh: New file.
opcodes:
* configure.in: Add "sh5*-*" to list of targets which include
sh64 support.
* configure: Regenerate.
2002-06-04 10:57:44 +08:00
|
|
|
eshelf32_nbsd.c: $(srcdir)/emulparams/shelf32_nbsd.sh \
|
|
|
|
$(srcdir)/emulparams/shelf32.sh \
|
|
|
|
$(BFDDIR)/libbfd.h $(INCDIR)/libiberty.h \
|
|
|
|
$(srcdir)/emultempl/sh64elf.em $(INCDIR)/elf/sh.h $(BFDDIR)/elf-bfd.h \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
bfd:
* Makefile.am (BFD32_BACKENDS): Add elf32-sh64-nbsd.lo.
(BFD32_BACKENDS_CFILES): Add elf32-sh64-nbsd.c.
(BFD64_BACKENDS): Add elf64-sh64-nbsd.lo.
(BFD64_BACKENDS_CFILES): Add elf64-sh64-nbsd.c.
(elf32-sh64-nbsd.lo, elf64-sh64-nbsd.lo): New rules.
* Makefile.in: Regenerate.
* config.bfd (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* configure.in: Add bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec,
bfd_elf64_sh64nbsd_vec, and bfd_elf64_sh64lnbsd_vec.
* configure: Regenerate.
* elf32-sh64-nbsd.c: New file.
* elf64-sh64-nbsd.c: New file.
* targets.c: Add extern decls for bfd_elf32_sh64nbsd_vec,
bfd_elf32_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec, and
bfd_elf64_sh64lnbsd_vec.
gas:
* configure.in (sh5*): Set cpu_type to sh64 and endian to big.
(sh5le*, sh64le*): Set cpu_type to sh64 and endian to little.
(sh5*-*-netbsd*, sh64*-*-netbsd*): New targets.
* configure: Regenerate.
* config/tc-sh64.c (sh64_target_format): Add support for NetBSD
environment.
ld:
* Makefile.am (ALL_EMULATIONS): Add eshelf32_nbsd.o,
eshlelf32_nbsd.o, eshelf64_nbsd.o, and eshlelf64_nbsd.o.
(eshelf32_nbsd.c, eshelf64_nbsd.c, eshlelf32_nbsd.c)
(eshlelf64_nbsd.c): New rules.
* Makefile.in: Regenerate.
* configure.tgt (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* emulparams/shelf32_nbsd.sh: New file.
* emulparams/shelf64_nbsd.sh: New file.
* emulparams/shlelf32_nbsd.sh: New file.
* emulparams/shlelf64_nbsd.sh: New file.
opcodes:
* configure.in: Add "sh5*-*" to list of targets which include
sh64 support.
* configure: Regenerate.
2002-06-04 10:57:44 +08:00
|
|
|
${GENSCRIPTS} shelf32_nbsd "$(tdir_shelf32_nbsd)"
|
2010-05-25 22:02:38 +08:00
|
|
|
eshelf_fd.c: $(srcdir)/emulparams/shelf_fd.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} shelf_fd "$(tdir_shelf_fd)"
|
2000-09-07 12:32:05 +08:00
|
|
|
eshelf_linux.c: $(srcdir)/emulparams/shelf_linux.sh \
|
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
(config.status): Delete rule.
Add extra dependencies to cover sourced emulparams files.
* Makefile.in: Regenerate.
* scripttempl/elf.sc: Order <section>, <section>.* and
corresponding linkonce sections as seen in input files.
Formatting fixes. Zero vma of all sections if not relocating.
(STACK): Define and insert if STACK_ADDR defined.
(OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
(OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
(OTHER_READWRITE_SECTIONS): Likewise.
(OTHER_GOT_SECTIONS): Likewise.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_BSS_SECTIONS): Likewise.
* scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise.
* scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise
* emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
(STACK_ADDR): Define.
* emulparams/armelf_oabi.sh: As for armelf.sh.
* emulparams/elf32mcore.sh: As for armelf.sh.
* emulparams/h8300elf.sh: As for armelf.sh.
* emulparams/mn10200.sh: As for armelf.sh.
* emulparams/shelf.sh: As for armelf.sh.
* emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
* emulparams/m32relf.sh: As for elf32fr30.sh.
* emulparams/h8300helf.sh: As for elf32fr30.sh.
* emulparams/h8300self.sh: As for elf32fr30.sh.
* emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
defines with RELOCATING test.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_END_SYMBOLS): ..this.
* emulparams/crislinux.sh: As for criself.sh.
* emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
if not relocating.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
normal and linkonce sections as seen in input files.
* emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
(TEXT_DYNAMIC): Likewise.
(INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
(OTHER_SDATA_SECTIONS): Likewise.
* emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
(OTHER_PLT_RELOC_SECTIONS): Likewise.
(OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
sections as seen in input files.
* emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
* emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
if not relocating.
(OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
(OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
* emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_SECTIONS): Instead, use this..
(OTHER_END_SYMBOLS): ..and this.
* emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
* emulparams/elf32bsmip.sh: Likewise.
* emulparams/elf32btsmip.sh: Likewise.
* emulparams/elf32ebmip.sh: Likewise.
* emulparams/elf32lmip.sh: Likewise.
* emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
* emulparams/elf32lsmip.sh: Likewise.
* emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
* emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
* emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
* emulparams/elf64btsmip.sh: Likewise.
* emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
* emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
* emulparams/elf32ppclinux.sh: Likewise.
* emulparams/elf32ppcsim.sh: Likewise.
* emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
* emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
* emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
* emulparams/h8300self.sh: Likewise.
* emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
* emulparams/sh.sh: Comment.
* emulparams/shl.sh: Source sh.sh, remove duplicates.
* emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
* emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
2001-11-22 17:08:05 +08:00
|
|
|
$(srcdir)/emulparams/shlelf_linux.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2000-09-07 12:32:05 +08:00
|
|
|
${GENSCRIPTS} shelf_linux "$(tdir_shelf_linux)"
|
2002-01-08 12:23:02 +08:00
|
|
|
eshelf_nbsd.c: $(srcdir)/emulparams/shelf_nbsd.sh \
|
|
|
|
$(srcdir)/emulparams/shelf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2002-01-08 12:23:02 +08:00
|
|
|
${GENSCRIPTS} shelf_nbsd "$(tdir_shelf_nbsd)"
|
2002-08-23 01:27:20 +08:00
|
|
|
eshelf_nto.c: $(srcdir)/emulparams/shelf_nto.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2002-08-23 01:27:20 +08:00
|
|
|
${GENSCRIPTS} shelf_nto "$(tdir_shelf_nto)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eshelf_uclinux.c: $(srcdir)/emulparams/shelf_uclinux.sh \
|
|
|
|
$(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} shelf_uclinux "$(tdir_shelf_uclinux)"
|
bfd/
2006-08-02 Richard Sandiford <richard@codesourcery.com>
Kazu Hirata <kazu@codesourcery.com>
Phil Edwards <phil@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
* config.bfd (sh-*-vxworks): Use bfd_elf32_shvxworks_vec and
bfd_elf32_shlvxworks_vec.
* configure.in (bfd_elf32_sh64_vec): Add elf-vxworks.lo.
(bfd_elf32_sh64l_vec, bfd_elf32_sh64lin_vec): Likewise.
(bfd_elf32_sh64blin_vec, bfd_elf32_sh64lnbsd_vec): Likewise.
(bfd_elf32_sh64nbsd_vec, bfd_elf32_sh_vec): Likewise.
(bfd_elf32_shblin_vec, bfd_elf32_shl_vec): Likewise.
(bfd_elf32_shl_symbian_vec, bfd_elf32_shlin_vec): Likewise.
(bfd_elf32_shlnbsd_vec, bfd_elf32_shnbsd_vec): Likewise.
(bfd_elf32_shlvxworks_vec, bfd_elf32_shvxworks_vec): New stanzas.
* configure: Regenerate.
* Makefile.am: Regenerate dependencies.
* Makefile.in: Regenerate.
* elf-vxworks.c (elf_vxworks_gott_symbol_p): New function.
(elf_vxworks_add_symbol_hook): Use it.
(elf_vxworks_link_output_symbol_hook): Likewise. Use the hash
table entry to check for weak undefined symbols and to obtain
the original bfd.
(elf_vxworks_emit_relocs): Use target_index instead of this_idx.
* elf32-sh-relocs.h: New file, split from elf32-sh.c.
(R_SH_DIR32): Use SH_PARTIAL32 for the partial_inplace field,
SH_SRC_MASK32 for the src_mask field, and SH_ELF_RELOC for the
special_function field.
(R_SH_REL32): Use SH_PARTIAL32 and SH_SRC_MASK32 here too.
(R_SH_REL32, R_SH_TLS_GD_32, R_SH_TLS_LD_32): Likewise.
(R_SH_TLS_LDO_32, R_SH_TLS_IE_32, R_SH_TLS_LE_32): Likewise.
(R_SH_TLS_DTPMOD32, R_SH_TLS_DTPOFF32, R_SH_TLS_TPOFF32): Likewise.
(R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT): Likewise.
(R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): Likewise.
(SH_PARTIAL32, SH_SRC_MASK32, SH_ELF_RELOC): Undefine at end of file.
* elf32-sh.c: Include elf32-vxworks.h.
(MINUS_ONE): Define.
(sh_elf_howto_table): Include elf32-sh-relocs.h with SH_PARTIAL32
set to TRUE, SH_SRC_MASK32 set to 0xffffffff, and SH_ELF_RELOC set
to sh_elf_reloc.
(sh_vxworks_howto_table): New variable. Include elf32-sh-relocs.h
with SH_PARTIAL32 set to FALSE, SH_SRC_MASK32 set to 0, and
SH_ELF_RELOC set to bfd_elf_generic_reloc.
(vxworks_object_p, get_howto_table): New functions.
(sh_elf_reloc_type_lookup): Fix typo. Use get_howto_table.
(sh_elf_info_to_howto): Use get_howto_table.
(sh_elf_relax_section): Honor the partial_inplace field of the
R_SH_DIR32 howto.
(sh_elf_relax_delete_bytes): Likewise.
(elf_sh_plt_info): New structure.
(PLT_ENTRY_SIZE): Replace both definitions with...
(ELF_PLT_ENTRY_SIZE): ...this new macro, with separate definitions for
INCLUDE_SHMEDIA and !INCLUDE_SHMEDIA.
(elf_sh_plt0_entry_be): Update sizes of both definitions accordingly.
(elf_sh_plt0_entry_le): Likewise.
(elf_sh_plt_entry_be, elf_sh_plt_entry_le): Likewise.
(elf_sh_pic_plt_entry_be, elf_sh_pic_plt_entry_le): Likewise.
(elf_sh_plts): New structure, with separate definitions for
INCLUDE_SHMEDIA and !INCLUDE_SHMEDIA.
(elf_sh_plt0_entry): Delete both definitions.
(elf_sh_plt_entry, elf_sh_pic_plt_entry): Likewise.
(elf_sh_sizeof_plt, elf_sh_plt_plt0_offset): Likewise.
(elf_sh_plt_temp_offset, elf_sh_plt_symbol_offset): Likewise.
(elf_sh_plt_reloc_offset): Likewise.
(movi_shori_putval): Delete in favor of...
(install_plt_field): ...this new function, with separate definitions
for INCLUDE_SHMEDIA and !INCLUDE_SHMEDIA.
(get_plt_info): New function, with separate definitions
for INCLUDE_SHMEDIA and !INCLUDE_SHMEDIA.
(elf_sh_plt0_linker_offset, elf_sh_plt0_gotid_offset): Delete.
(VXWORKS_PLT_HEADER_SIZE, VXWORKS_PLT_ENTRY_SIZE): New macros.
(vxworks_sh_plt0_entry_be, vxworks_sh_plt0_entry_le): New constants.
(vxworks_sh_plt_entry_be, vxworks_sh_plt_entry_le): Likewise.
(vxworks_sh_pic_plt_entry_be, vxworks_sh_pic_plt_entry_le): Likewise.
(get_plt_index, get_plt_offset): New functions.
(elf_sh_link_hash_table): Add srelplt2, plt_info and vxworks_p fields.
(sh_elf_link_hash_table_create): Initialize them.
(sh_elf_create_dynamic_sections): Call
elf_vxworks_create_dynamic_sections for VxWorks.
(allocate_dynrelocs): Use htab->plt_info to get the size of PLT
entries. Allocate relocation entries in .rela.plt.unloaded if
generating a VxWorks executable.
(sh_elf_always_size_sections): New function.
(sh_elf_size_dynamic_sections): Extend .rela.plt handling to
.rela.plt.unloaded.
(sh_elf_relocate_section): Use get_howto_table. Honor
partial_inplace when calculating the addend for dynamic
relocations. Use get_plt_index.
(sh_elf_finish_dynamic_symbol): Use get_plt_index, install_plt_field
and htab->plt_info. Fill in the bra .plt offset for VxWorks
executables. Populate .rela.plt.unloaded. Do not make
_GLOBAL_OFFSET_TABLE_ absolute on VxWorks.
(sh_elf_finish_dynamic_sections): Use install_plt_field and
htab->plt_info. Handle cases where there is no special PLT header.
Populate the first relocation in .rela.plt.unloaded and fix up
the remaining entries.
(sh_elf_plt_sym_val): Use get_plt_info.
(elf_backend_always_size_sections): Define.
(TARGET_BIG_SYM, TARGET_BIG_NAME): Override for VxWorks.
(TARGET_LITTLE_SYM, TARGET_BIG_SYM): Likewise.
(elf32_bed, elf_backend_want_plt_sym): Likewise.
(elf_symbol_leading_char, elf_backend_want_got_underscore): Likewise.
(elf_backend_grok_prstatus, elf_backend_grok_psinfo): Likewise.
(elf_backend_add_symbol_hook): Likewise.
(elf_backend_link_output_symbol_hook): Likewise.
(elf_backend_emit_relocs): Likewise.
(elf_backend_final_write_processing): Likewise.
(ELF_MAXPAGESIZE, ELF_COMMONPAGESIZE): Likewise.
* targets.c (bfd_elf32_shlvxworks_vec): Declare.
(bfd_elf32_shvxworks_vec): Likewise.
(_bfd_target_vector): Include bfd_elf32_shlvxworks_vec and
bfd_elf32_shvxworks_vec.
gas/
* config/tc-sh.c (apply_full_field_fix): New function.
(md_apply_fix): Use it instead of md_number_to_chars. Do not fill
in fx_addnumber for BFD_RELOC_32_PLT_PCREL.
(tc_gen_reloc): Use fx_addnumber rather than 0 as the default case.
* config/tc-sh.h (TARGET_FORMAT): Override for TE_VXWORKS.
ld/
2006-08-02 Richard Sandiford <richard@codesourcery.com>
Kazu Hirata <kazu@codesourcery.com>
Phil Edwards <phil@codesourcery.com>
* Makefile.am (ALL_EMULATIONS): Add eshelf_vxworks.o and
eshlelf_vxworks.o.
(eshelf_vxworks.c, eshlelf_vxworks.c): New rules.
* Makefile.in: Regenerate.
* configure.tgt (sh-*-vxworks): Use shelf_vxworks and
shlelf_vxworks.
* emulparams/shelf_vxworks.sh: New file.
* emulparams/shlelf_vxworks.sh: Likewise.
* emulparams/vxworks.sh (FINI): Prefix _etext with ${SYMPREFIX}.
(OTHER_END_SYMBOLS): Likewise _ehdr.
(DATA_END_SYMBOLS): Likewise _edata.
* emultempl/vxworks.em (vxworks_after_open): Check whether output_bfd
is indeed an ELF file before dealing with --force-dynamic.
ld/testsuite/
* ld-sh/rd-sh.exp: Treat vxworks1-static.d specially.
* ld-sh/sh-vxworks.exp: New file.
* ld-sh/sh.exp: Extend sh-linux SIZEOF_HEADERS handling to
sh-*-vxworks.
* ld-sh/vxworks1-le.dd, ld-sh/vxworks1-lib-le.dd,
* ld-sh/vxworks1-lib.dd, ld-sh/vxworks1-lib.nd,
* ld-sh/vxworks1-lib.rd, ld-sh/vxworks1-lib.s,
* ld-sh/vxworks1-static.d, ld-sh/vxworks1.dd,
* ld-sh/vxworks1.ld, ld-sh/vxworks1.rd, ld-sh/vxworks1.s,
* ld-sh/vxworks2-static.sd, ld-sh/vxworks2.s,
* ld-sh/vxworks2.sd, ld-sh/vxworks3-le.dd,
* ld-sh/vxworks3-lib-le.dd, ld-sh/vxworks3-lib.dd,
* ld-sh/vxworks3-lib.s, ld-sh/vxworks3.dd, ld-sh/vxworks3.s,
* ld-sh/vxworks4.d, ld-sh/vxworks4a.s, ld-sh/vxworks4b.s,
* ld-sh/reloc1.s, ld-sh/reloc1.d: New tests.
2006-08-04 21:13:56 +08:00
|
|
|
eshelf_vxworks.c: $(srcdir)/emulparams/shelf_vxworks.sh \
|
|
|
|
$(srcdir)/emulparams/vxworks.sh $(ELF_DEPS) $(srcdir)/scripttempl/elf.sc \
|
|
|
|
$(srcdir)/emultempl/vxworks.em ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} shelf_vxworks "$(tdir_shelf_vxworks)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eshl.c: $(srcdir)/emulparams/shl.sh \
|
|
|
|
$(srcdir)/emulparams/sh.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/sh.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} shl "$(tdir_shl)"
|
1999-05-03 15:29:11 +08:00
|
|
|
eshlelf.c: $(srcdir)/emulparams/shlelf.sh \
|
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Define.
(config.status): Delete rule.
Add extra dependencies to cover sourced emulparams files.
* Makefile.in: Regenerate.
* scripttempl/elf.sc: Order <section>, <section>.* and
corresponding linkonce sections as seen in input files.
Formatting fixes. Zero vma of all sections if not relocating.
(STACK): Define and insert if STACK_ADDR defined.
(OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
(OTHER_READONLY_SECTIONS): Always insert, not just when relocating.
(OTHER_READWRITE_SECTIONS): Likewise.
(OTHER_GOT_SECTIONS): Likewise.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_BSS_SECTIONS): Likewise.
* scripttempl/elfi370.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise.
* scripttempl/nw.sc (OTHER_READONLY_SECTIONS): Likewise.
(OTHER_READWRITE_SECTIONS): Likewise
* emulparams/armelf.sh (OTHER_RELOCATING_SECTIONS): Delete.
(STACK_ADDR): Define.
* emulparams/armelf_oabi.sh: As for armelf.sh.
* emulparams/elf32mcore.sh: As for armelf.sh.
* emulparams/h8300elf.sh: As for armelf.sh.
* emulparams/mn10200.sh: As for armelf.sh.
* emulparams/shelf.sh: As for armelf.sh.
* emulparams/elf32fr30.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_END_SYMBOLS): Define.
* emulparams/m32relf.sh: As for elf32fr30.sh.
* emulparams/h8300helf.sh: As for elf32fr30.sh.
* emulparams/h8300self.sh: As for elf32fr30.sh.
* emulparams/criself.sh (OTHER_READONLY_SECTIONS): Protect symbol
defines with RELOCATING test.
(OTHER_SDATA_SECTIONS): Likewise.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_END_SYMBOLS): ..this.
* emulparams/crislinux.sh: As for criself.sh.
* emulparams/elf32bmipn32.sh (OTHER_SDATA_SECTIONS): Zero vma
if not relocating.
(OTHER_RELOCATING_SECTIONS): Delete, replacing with..
(OTHER_SECTIONS): ..this. Zero vma if not relocating. Order
normal and linkonce sections as seen in input files.
* emulparams/elf32bmip.sh (DATA_ADDR): Don't define if EMBEDDED.
(TEXT_DYNAMIC): Likewise.
(INITIAL_READONLY_SECTIONS): Zero vma if not relocating.
(OTHER_SDATA_SECTIONS): Likewise.
* emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/shlelf_linux.sh (OTHER_READWRITE_SECTIONS): Likewise.
* emulparams/elf64alpha.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/hppalinux.sh (OTHER_READONLY_SECTIONS): Likewise.
* emulparams/elf64_aix.sh (OTHER_GOT_SECTIONS): Likewise.
(OTHER_PLT_RELOC_SECTIONS): Likewise.
(OTHER_READONLY_SECTIONS): Likewise. Order normal and linkonce
sections as seen in input files.
* emulparams/elf64_ia64.sh: As for emulparams/elf64_aix.sh.
* emulparams/hppa64linux.sh (OTHER_READONLY_SECTIONS): Zero vma
if not relocating.
(OTHER_READWRITE_SECTIONS, OTHER_BSS_SECTIONS): Likewise.
(OTHER_BSS_END_SYMBOLS): Merge from elf64hppa.sh.
* emulparams/elf64mmix.sh (OTHER_RELOCATING_SECTIONS): Delete.
(OTHER_SECTIONS): Instead, use this..
(OTHER_END_SYMBOLS): ..and this.
* emulparams/elf32b4300.sh: Source elf32bmip.sh, remove duplicates.
* emulparams/elf32bsmip.sh: Likewise.
* emulparams/elf32btsmip.sh: Likewise.
* emulparams/elf32ebmip.sh: Likewise.
* emulparams/elf32lmip.sh: Likewise.
* emulparams/elf32elmip.sh: Source elf32lmip.sh, remove duplicates.
* emulparams/elf32lsmip.sh: Likewise.
* emulparams/elf32ltsmip.sh: Source elf32btsmip.sh, remove duplicates.
* emulparams/elf32l4300.sh: Source elf32b4300.sh, remove duplicates.
* emulparams/elf64bmip.sh: Source elf32bmipn32.sh, remove duplicates.
* emulparams/elf64btsmip.sh: Likewise.
* emulparams/elf64ltsmip.sh: Source elf64btsmip.sh, remove duplicates.
* emulparams/elf32lppc.sh: Source elf32ppc.sh, remove duplicates.
* emulparams/elf32ppclinux.sh: Likewise.
* emulparams/elf32ppcsim.sh: Likewise.
* emulparams/elf32lppcsim.sh: Source elf32lppc.sh, remove duplicates.
* emulparams/elf64hppa.sh: Source hppa64linux.sh, remove duplicates.
* emulparams/h8300helf.sh: Source h8300elf.sh, remove duplicates.
* emulparams/h8300self.sh: Likewise.
* emulparams/mn10300.sh: Source mn10200.sh, remove duplicates.
* emulparams/sh.sh: Comment.
* emulparams/shl.sh: Source sh.sh, remove duplicates.
* emulparams/shlelf.sh: Source shelf.sh, remove duplicates.
* emulparams/shelf_linux.sh: Source shlelf_linux.sh, remove duplicates.
2001-11-22 17:08:05 +08:00
|
|
|
$(srcdir)/emulparams/shelf.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
1999-05-03 15:29:11 +08:00
|
|
|
${GENSCRIPTS} shlelf "$(tdir_shlelf)"
|
Contribute sh64-elf.
2002-01-24 Alexandre Oliva <aoliva@redhat.com>
* emulparams/shelf32.sh (STACK_ADDR): Define as formerly defined
in OTHER_RELOCATABLE_SECTIONS.
2002-01-18 Alexandre Oliva <aoliva@redhat.com>
* emulparams/shelf32.sh (STACK_ADDR): Define.
(OTHER_RELOCATABLE_SECTIONS): Renamed to...
(OTHER_SECTIONS): this. Removed stack settings.
* emulparams/shelf64.sh (OTHER_RELOCATABLE_SECTIONS): Do not set.
(OTHER_SECTIONS): Reset after sourcing shelf32.sh.
2001-03-12 DJ Delorie <dj@redhat.com>
* emultempl/sh64elf.em (sh64_elf_$_before_allocation): Disable
relaxing if any shmedia or mixed sections are found.
2001-03-07 DJ Delorie <dj@redhat.com>
* emultempl/sh64elf.em (sh64_elf_before_allocation): Pass f to
einfo. Gracefully decline to output to non-elf formats.
2001-03-06 Hans-Peter Nilsson <hpn@redhat.com>
* emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS) <.stack>:
Default to _end aligned to next multiple of 0x40000, plus 0x40000.
* emulparams/shelf32.sh: Ditto.
2001-01-14 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Tweak
comment.
2001-01-10 Ben Elliston <bje@redhat.com>
* emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Avoid
non-portable shell constructs. From Hans-Peter Nilsson.
2001-01-09 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf64.sh (EXTRA_EM_FILE): Define empty.
* Makefile.am (eshelf64.c, eshlelf64.c, eshlelf32.c): Adjust
dependencies to the shell script include chain.
* Makefile.in: Regenerate.
2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em: Update and tweak comments.
(sh64_elf_${EMULATION_NAME}_after_allocation): Always allocate and
make a .cranges section SEC_IN_MEMORY.
2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em
(sh64_elf_${EMULATION_NAME}_before_allocation): Don't stop when
.cranges section found to be necessary; continue and set stored
section contents flags for sections with non-mixed contents.
Use a struct sh64_section_data container and sh64_elf_section_data
to store contents-type flags.
Remove unused update of "isec".
(sh64_elf_${EMULATION_NAME}_after_allocation): Only process
sections marked SHF_SH5_ISA32_MIXED. Use sh64_elf_section_data to
access contents-type flags. Assert that the associated container
is initialized. Use that container, not elf_gp_size, to hold size
of linker-generated cranges contents.
2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em
(sh64_elf_${EMULATION_NAME}_before_allocation): Exit early if
there's already a .cranges section. When section flag difference
is found, don't NULL-check cranges a second time. Tweak comments.
(sh64_elf_${EMULATION_NAME}_after_allocation): Use size after
merging, not max size, as size of ld-generated .cranges contents.
Don't set ELF section flags in output section. When checking for
needed .cranges descriptors, don't use a variable; compare
incoming ELF section flags directly to SHF_SH5_ISA32_MIXED. Tweak
comments.
2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em: New file.
* Makefile.am (eshelf32.c, eshlelf32.c): Adjust dependencies.
* Makefile.in: Regenerate.
* emulparams/shelf32.sh (OUTPUT_FORMAT): Only set if not set.
(OTHER_RELOCATING_SECTIONS): Ditto.
(EXTRA_EM_FILE): New, set to sh64elf if not set.
* emulparams/shlelf32.sh: Stub out all settings except
OUTPUT_FORMAT. Source shelf32.sh.
* emulparams/shelf64.sh: Similar, but also keep ELF_SIZE and
OTHER_RELOCATING_SECTIONS.
(OTHER_RELOCATING_SECTIONS): Remove .cranges.
* emulparams/shlelf64.sh: Stub out all settings except
OUTPUT_FORMAT. Source shelf64.sh.
2000-12-15 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS): Include
.cranges section.
(DATA_START_SYMBOLS): Define, provide ___data.
(OTHER_READONLY_SYMBOLS): Define, provide ___rodata and align to 8
for consecutive .data section.
(OTHER_GOT_SECTIONS): Define, align to 8 for consecutive .bss
section after .data section.
* emulparams/shlelf64.sh: Ditto.
* emulparams/shelf32.sh: Ditto.
(ALIGNMENT): Define to 8.
* emulparams/shelf32.sh: Ditto.
2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com>
* configure.tgt (sh64-*-elf*): Assign targ_extra_libpath to get
built-in linker scripts.
2000-11-30 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shlelf64.sh: New.
* emulparams/shelf64.sh: New.
* configure.tgt (sh64-*-elf*): Add shelf64 and shlelf64 to
targ_extra_emuls.
* Makefile.am: Add support for shlelf64 and shelf64.
* Makefile.in: Regenerate.
2000-11-29 Hans-Peter Nilsson <hpn@cygnus.com>
* configure.tgt (sh64-*-elf*): Add shelf as default.
Add shlelf to targ_extra_emuls.
2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf32.sh: New file.
* emulparams/shlelf32.sh: New file.
* Makefile.am: Add support for shlelf32 and shelf32.
* configure.tgt: Map sh64-*-elf* to shlelf32 and shelf32.
* Makefile.in: Regenerate.
2002-02-08 14:39:01 +08:00
|
|
|
eshlelf32.c: $(srcdir)/emulparams/shlelf32.sh \
|
|
|
|
$(BFDDIR)/libbfd.h $(INCDIR)/libiberty.h $(srcdir)/emulparams/shelf32.sh \
|
|
|
|
$(srcdir)/emultempl/sh64elf.em $(INCDIR)/elf/sh.h $(BFDDIR)/elf-bfd.h \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
Contribute sh64-elf.
2002-01-24 Alexandre Oliva <aoliva@redhat.com>
* emulparams/shelf32.sh (STACK_ADDR): Define as formerly defined
in OTHER_RELOCATABLE_SECTIONS.
2002-01-18 Alexandre Oliva <aoliva@redhat.com>
* emulparams/shelf32.sh (STACK_ADDR): Define.
(OTHER_RELOCATABLE_SECTIONS): Renamed to...
(OTHER_SECTIONS): this. Removed stack settings.
* emulparams/shelf64.sh (OTHER_RELOCATABLE_SECTIONS): Do not set.
(OTHER_SECTIONS): Reset after sourcing shelf32.sh.
2001-03-12 DJ Delorie <dj@redhat.com>
* emultempl/sh64elf.em (sh64_elf_$_before_allocation): Disable
relaxing if any shmedia or mixed sections are found.
2001-03-07 DJ Delorie <dj@redhat.com>
* emultempl/sh64elf.em (sh64_elf_before_allocation): Pass f to
einfo. Gracefully decline to output to non-elf formats.
2001-03-06 Hans-Peter Nilsson <hpn@redhat.com>
* emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS) <.stack>:
Default to _end aligned to next multiple of 0x40000, plus 0x40000.
* emulparams/shelf32.sh: Ditto.
2001-01-14 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Tweak
comment.
2001-01-10 Ben Elliston <bje@redhat.com>
* emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Avoid
non-portable shell constructs. From Hans-Peter Nilsson.
2001-01-09 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf64.sh (EXTRA_EM_FILE): Define empty.
* Makefile.am (eshelf64.c, eshlelf64.c, eshlelf32.c): Adjust
dependencies to the shell script include chain.
* Makefile.in: Regenerate.
2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em: Update and tweak comments.
(sh64_elf_${EMULATION_NAME}_after_allocation): Always allocate and
make a .cranges section SEC_IN_MEMORY.
2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em
(sh64_elf_${EMULATION_NAME}_before_allocation): Don't stop when
.cranges section found to be necessary; continue and set stored
section contents flags for sections with non-mixed contents.
Use a struct sh64_section_data container and sh64_elf_section_data
to store contents-type flags.
Remove unused update of "isec".
(sh64_elf_${EMULATION_NAME}_after_allocation): Only process
sections marked SHF_SH5_ISA32_MIXED. Use sh64_elf_section_data to
access contents-type flags. Assert that the associated container
is initialized. Use that container, not elf_gp_size, to hold size
of linker-generated cranges contents.
2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em
(sh64_elf_${EMULATION_NAME}_before_allocation): Exit early if
there's already a .cranges section. When section flag difference
is found, don't NULL-check cranges a second time. Tweak comments.
(sh64_elf_${EMULATION_NAME}_after_allocation): Use size after
merging, not max size, as size of ld-generated .cranges contents.
Don't set ELF section flags in output section. When checking for
needed .cranges descriptors, don't use a variable; compare
incoming ELF section flags directly to SHF_SH5_ISA32_MIXED. Tweak
comments.
2000-12-18 Hans-Peter Nilsson <hpn@cygnus.com>
* emultempl/sh64elf.em: New file.
* Makefile.am (eshelf32.c, eshlelf32.c): Adjust dependencies.
* Makefile.in: Regenerate.
* emulparams/shelf32.sh (OUTPUT_FORMAT): Only set if not set.
(OTHER_RELOCATING_SECTIONS): Ditto.
(EXTRA_EM_FILE): New, set to sh64elf if not set.
* emulparams/shlelf32.sh: Stub out all settings except
OUTPUT_FORMAT. Source shelf32.sh.
* emulparams/shelf64.sh: Similar, but also keep ELF_SIZE and
OTHER_RELOCATING_SECTIONS.
(OTHER_RELOCATING_SECTIONS): Remove .cranges.
* emulparams/shlelf64.sh: Stub out all settings except
OUTPUT_FORMAT. Source shelf64.sh.
2000-12-15 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS): Include
.cranges section.
(DATA_START_SYMBOLS): Define, provide ___data.
(OTHER_READONLY_SYMBOLS): Define, provide ___rodata and align to 8
for consecutive .data section.
(OTHER_GOT_SECTIONS): Define, align to 8 for consecutive .bss
section after .data section.
* emulparams/shlelf64.sh: Ditto.
* emulparams/shelf32.sh: Ditto.
(ALIGNMENT): Define to 8.
* emulparams/shelf32.sh: Ditto.
2000-12-12 Hans-Peter Nilsson <hpn@cygnus.com>
* configure.tgt (sh64-*-elf*): Assign targ_extra_libpath to get
built-in linker scripts.
2000-11-30 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shlelf64.sh: New.
* emulparams/shelf64.sh: New.
* configure.tgt (sh64-*-elf*): Add shelf64 and shlelf64 to
targ_extra_emuls.
* Makefile.am: Add support for shlelf64 and shelf64.
* Makefile.in: Regenerate.
2000-11-29 Hans-Peter Nilsson <hpn@cygnus.com>
* configure.tgt (sh64-*-elf*): Add shelf as default.
Add shlelf to targ_extra_emuls.
2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com>
* emulparams/shelf32.sh: New file.
* emulparams/shlelf32.sh: New file.
* Makefile.am: Add support for shlelf32 and shelf32.
* configure.tgt: Map sh64-*-elf* to shlelf32 and shelf32.
* Makefile.in: Regenerate.
2002-02-08 14:39:01 +08:00
|
|
|
${GENSCRIPTS} shlelf32 "$(tdir_shlelf32)"
|
2002-10-10 03:09:59 +08:00
|
|
|
eshlelf32_linux.c: $(srcdir)/emulparams/shlelf32_linux.sh \
|
|
|
|
$(srcdir)/emulparams/shelf32_linux.sh $(srcdir)/emulparams/shelf32.sh \
|
|
|
|
$(BFDDIR)/libbfd.h $(INCDIR)/libiberty.h \
|
|
|
|
$(srcdir)/emultempl/sh64elf.em $(INCDIR)/elf/sh.h $(BFDDIR)/elf-bfd.h \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2002-10-10 03:09:59 +08:00
|
|
|
${GENSCRIPTS} shlelf32_linux "$(tdir_shlelf32_linux)"
|
bfd:
* Makefile.am (BFD32_BACKENDS): Add elf32-sh64-nbsd.lo.
(BFD32_BACKENDS_CFILES): Add elf32-sh64-nbsd.c.
(BFD64_BACKENDS): Add elf64-sh64-nbsd.lo.
(BFD64_BACKENDS_CFILES): Add elf64-sh64-nbsd.c.
(elf32-sh64-nbsd.lo, elf64-sh64-nbsd.lo): New rules.
* Makefile.in: Regenerate.
* config.bfd (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* configure.in: Add bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec,
bfd_elf64_sh64nbsd_vec, and bfd_elf64_sh64lnbsd_vec.
* configure: Regenerate.
* elf32-sh64-nbsd.c: New file.
* elf64-sh64-nbsd.c: New file.
* targets.c: Add extern decls for bfd_elf32_sh64nbsd_vec,
bfd_elf32_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec, and
bfd_elf64_sh64lnbsd_vec.
gas:
* configure.in (sh5*): Set cpu_type to sh64 and endian to big.
(sh5le*, sh64le*): Set cpu_type to sh64 and endian to little.
(sh5*-*-netbsd*, sh64*-*-netbsd*): New targets.
* configure: Regenerate.
* config/tc-sh64.c (sh64_target_format): Add support for NetBSD
environment.
ld:
* Makefile.am (ALL_EMULATIONS): Add eshelf32_nbsd.o,
eshlelf32_nbsd.o, eshelf64_nbsd.o, and eshlelf64_nbsd.o.
(eshelf32_nbsd.c, eshelf64_nbsd.c, eshlelf32_nbsd.c)
(eshlelf64_nbsd.c): New rules.
* Makefile.in: Regenerate.
* configure.tgt (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* emulparams/shelf32_nbsd.sh: New file.
* emulparams/shelf64_nbsd.sh: New file.
* emulparams/shlelf32_nbsd.sh: New file.
* emulparams/shlelf64_nbsd.sh: New file.
opcodes:
* configure.in: Add "sh5*-*" to list of targets which include
sh64 support.
* configure: Regenerate.
2002-06-04 10:57:44 +08:00
|
|
|
eshlelf32_nbsd.c: $(srcdir)/emulparams/shlelf32_nbsd.sh \
|
|
|
|
$(srcdir)/emulparams/shelf32_nbsd.sh $(srcdir)/emulparams/shelf32.sh \
|
|
|
|
$(BFDDIR)/libbfd.h $(INCDIR)/libiberty.h \
|
|
|
|
$(srcdir)/emultempl/sh64elf.em $(INCDIR)/elf/sh.h $(BFDDIR)/elf-bfd.h \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
bfd:
* Makefile.am (BFD32_BACKENDS): Add elf32-sh64-nbsd.lo.
(BFD32_BACKENDS_CFILES): Add elf32-sh64-nbsd.c.
(BFD64_BACKENDS): Add elf64-sh64-nbsd.lo.
(BFD64_BACKENDS_CFILES): Add elf64-sh64-nbsd.c.
(elf32-sh64-nbsd.lo, elf64-sh64-nbsd.lo): New rules.
* Makefile.in: Regenerate.
* config.bfd (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* configure.in: Add bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec,
bfd_elf64_sh64nbsd_vec, and bfd_elf64_sh64lnbsd_vec.
* configure: Regenerate.
* elf32-sh64-nbsd.c: New file.
* elf64-sh64-nbsd.c: New file.
* targets.c: Add extern decls for bfd_elf32_sh64nbsd_vec,
bfd_elf32_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec, and
bfd_elf64_sh64lnbsd_vec.
gas:
* configure.in (sh5*): Set cpu_type to sh64 and endian to big.
(sh5le*, sh64le*): Set cpu_type to sh64 and endian to little.
(sh5*-*-netbsd*, sh64*-*-netbsd*): New targets.
* configure: Regenerate.
* config/tc-sh64.c (sh64_target_format): Add support for NetBSD
environment.
ld:
* Makefile.am (ALL_EMULATIONS): Add eshelf32_nbsd.o,
eshlelf32_nbsd.o, eshelf64_nbsd.o, and eshlelf64_nbsd.o.
(eshelf32_nbsd.c, eshelf64_nbsd.c, eshlelf32_nbsd.c)
(eshlelf64_nbsd.c): New rules.
* Makefile.in: Regenerate.
* configure.tgt (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* emulparams/shelf32_nbsd.sh: New file.
* emulparams/shelf64_nbsd.sh: New file.
* emulparams/shlelf32_nbsd.sh: New file.
* emulparams/shlelf64_nbsd.sh: New file.
opcodes:
* configure.in: Add "sh5*-*" to list of targets which include
sh64 support.
* configure: Regenerate.
2002-06-04 10:57:44 +08:00
|
|
|
${GENSCRIPTS} shlelf32_nbsd "$(tdir_shlelf32_nbsd)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eshlelf_fd.c: $(srcdir)/emulparams/shlelf_fd.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} shlelf_fd "$(tdir_shlelf_fd)"
|
|
|
|
eshlelf_linux.c: $(srcdir)/emulparams/shlelf_linux.sh \
|
2006-06-20 10:22:16 +08:00
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
2011-01-14 10:03:42 +08:00
|
|
|
${GENSCRIPTS} shlelf_linux "$(tdir_shlelf_linux)"
|
|
|
|
eshlelf_nbsd.c: $(srcdir)/emulparams/shlelf_nbsd.sh \
|
|
|
|
$(srcdir)/emulparams/shelf_nbsd.sh \
|
|
|
|
$(srcdir)/emulparams/shelf.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} shlelf_nbsd "$(tdir_shlelf_nbsd)"
|
|
|
|
eshlelf_nto.c: $(srcdir)/emulparams/shlelf_nto.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} shlelf_nto "$(tdir_shlelf_nto)"
|
|
|
|
eshlelf_vxworks.c: $(srcdir)/emulparams/shlelf_vxworks.sh \
|
|
|
|
$(srcdir)/emulparams/shelf_vxworks.sh $(srcdir)/emulparams/vxworks.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc $(srcdir)/emultempl/vxworks.em \
|
|
|
|
${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} shlelf_vxworks "$(tdir_shlelf_vxworks)"
|
|
|
|
eshlsymbian.c: $(srcdir)/emulparams/shlsymbian.sh \
|
|
|
|
$(srcdir)/emulparams/shelf.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf32sh-symbian.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} shlsymbian "$(tdir_shlelf)"
|
2000-02-25 01:53:12 +08:00
|
|
|
eshpe.c: $(srcdir)/emulparams/shpe.sh \
|
|
|
|
$(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/pe.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} shpe "$(tdir_shl)"
|
1999-05-03 15:29:11 +08:00
|
|
|
esparcaout.c: $(srcdir)/emulparams/sparcaout.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} sparcaout "$(tdir_sparcaout)"
|
|
|
|
esparclinux.c: $(srcdir)/emulparams/sparclinux.sh \
|
|
|
|
$(srcdir)/emultempl/linux.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} sparclinux "$(tdir_sparclinux)"
|
|
|
|
esparcnbsd.c: $(srcdir)/emulparams/sparcnbsd.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} sparcnbsd "$(tdir_sparcnbsd)"
|
|
|
|
est2000.c: $(srcdir)/emulparams/st2000.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/st2000.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} st2000 "$(tdir_st2000)"
|
|
|
|
esun3.c: $(srcdir)/emulparams/sun3.sh \
|
|
|
|
$(srcdir)/emultempl/sunos.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} sun3 "$(tdir_sun3)"
|
|
|
|
esun4.c: $(srcdir)/emulparams/sun4.sh \
|
|
|
|
$(srcdir)/emultempl/sunos.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} sun4 "$(tdir_sun4)"
|
|
|
|
etic30aout.c: $(srcdir)/emulparams/tic30aout.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/tic30aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} tic30aout "$(tdir_tic30aout)"
|
|
|
|
etic30coff.c: $(srcdir)/emulparams/tic30coff.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/tic30coff.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} tic30coff "$(tdir_tic30coff)"
|
2003-01-21 06:34:39 +08:00
|
|
|
etic3xcoff.c: $(srcdir)/emulparams/tic3xcoff.sh \
|
|
|
|
$(srcdir)/emultempl/ticoff.em $(srcdir)/scripttempl/tic4xcoff.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} tic3xcoff "$(tdir_tic4xcoff)"
|
|
|
|
etic3xcoff_onchip.c: $(srcdir)/emulparams/tic3xcoff_onchip.sh \
|
|
|
|
$(srcdir)/emultempl/ticoff.em $(srcdir)/scripttempl/tic4xcoff.sc ${GEN_DEPENDS}
|
2003-01-22 01:09:47 +08:00
|
|
|
${GENSCRIPTS} tic3xcoff_onchip "$(tdir_tic4xcoff)"
|
2002-08-28 18:38:51 +08:00
|
|
|
etic4xcoff.c: $(srcdir)/emulparams/tic4xcoff.sh \
|
|
|
|
$(srcdir)/emultempl/ticoff.em $(srcdir)/scripttempl/tic4xcoff.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} tic4xcoff "$(tdir_tic4xcoff)"
|
2000-06-20 21:29:07 +08:00
|
|
|
etic54xcoff.c: $(srcdir)/emulparams/tic54xcoff.sh \
|
|
|
|
$(srcdir)/emultempl/ticoff.em $(srcdir)/scripttempl/tic54xcoff.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} tic54xcoff "$(tdir_tic54xcoff)"
|
1999-05-03 15:29:11 +08:00
|
|
|
etic80coff.c: $(srcdir)/emulparams/tic80coff.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/tic80coff.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} tic80coff "$(tdir_tic80coff)"
|
2011-01-14 10:03:42 +08:00
|
|
|
ev850.c: $(srcdir)/emulparams/v850.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/v850.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} v850 "$(tdir_v850)"
|
1999-05-03 15:29:11 +08:00
|
|
|
evanilla.c: $(srcdir)/emulparams/vanilla.sh \
|
|
|
|
$(srcdir)/emultempl/vanilla.em $(srcdir)/scripttempl/vanilla.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} vanilla "$(tdir_vanilla)"
|
|
|
|
evax.c: $(srcdir)/emulparams/vax.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} vax "$(tdir_vax)"
|
2002-05-30 10:40:03 +08:00
|
|
|
evaxnbsd.c: $(srcdir)/emulparams/vaxnbsd.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} vaxnbsd "$(tdir_vaxnbsd)"
|
1999-05-03 15:29:11 +08:00
|
|
|
evsta.c: $(srcdir)/emulparams/vsta.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} vsta "$(tdir_vsta)"
|
|
|
|
ew65.c: $(srcdir)/emulparams/w65.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/w65.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} w65 "$(tdir_w65)"
|
2005-10-26 01:40:19 +08:00
|
|
|
ez80.c: $(srcdir)/emulparams/z80.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/emultempl/z80.em \
|
|
|
|
$(srcdir)/scripttempl/z80.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} z80 "$(tdir_z80)"
|
1999-05-03 15:29:11 +08:00
|
|
|
ez8001.c: $(srcdir)/emulparams/z8001.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/z8000.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} z8001 "$(tdir_z8001)"
|
|
|
|
ez8002.c: $(srcdir)/emulparams/z8002.sh \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/z8000.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} z8002 "$(tdir_z8002)"
|
|
|
|
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf32_x86_64.c: $(srcdir)/emulparams/elf32_x86_64.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf32_x86_64 "$(tdir_elf32_x86_64)"
|
|
|
|
eelf64_aix.c: $(srcdir)/emulparams/elf64_aix.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64_aix "$(tdir_elf64_aix)"
|
|
|
|
eelf64_ia64.c: $(srcdir)/emulparams/elf64_ia64.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/ia64elf.em \
|
|
|
|
$(srcdir)/emultempl/needrelax.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64_ia64 "$(tdir_elf64_ia64)"
|
|
|
|
eelf64_ia64_fbsd.c: $(srcdir)/emulparams/elf64_ia64_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf64_ia64.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/ia64elf.em \
|
|
|
|
$(srcdir)/emultempl/needrelax.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64_ia64_fbsd "$(tdir_elf64_ia64_fbsd)"
|
|
|
|
eelf64_s390.c: $(srcdir)/emulparams/elf64_s390.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64_s390 "$(tdir_elf64_s390)"
|
|
|
|
eelf64_sparc.c: $(srcdir)/emulparams/elf64_sparc.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64_sparc "$(tdir_elf64_sparc)"
|
|
|
|
eelf64_sparc_fbsd.c: $(srcdir)/emulparams/elf64_sparc_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf64_sparc.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64_sparc_fbsd "$(tdir_elf64_sparc_fbsd)"
|
|
|
|
eelf64_sparc_sol2.c: $(srcdir)/emulparams/elf64_sparc_sol2.sh \
|
|
|
|
$(srcdir)/emulparams/elf64_sparc.sh \
|
|
|
|
$(srcdir)/emulparams/solaris2.sh \
|
|
|
|
$(srcdir)/emultempl/solaris2.em \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64_sparc_sol2 "$(tdir_elf64_sparc_sol2)"
|
|
|
|
eelf64alpha.c: $(srcdir)/emulparams/elf64alpha.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/alphaelf.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64alpha "$(tdir_elf64alpha)"
|
|
|
|
eelf64alpha_fbsd.c: $(srcdir)/emulparams/elf64alpha_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf64alpha.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/alphaelf.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64alpha_fbsd "$(tdir_elf64alpha_fbsd)"
|
|
|
|
eelf64alpha_nbsd.c: $(srcdir)/emulparams/elf64alpha_nbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf64alpha.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/alphaelf.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64alpha_nbsd "$(tdir_elf64alpha_nbsd)"
|
|
|
|
eelf64bmip.c: $(srcdir)/emulparams/elf64bmip.sh \
|
|
|
|
$(srcdir)/emulparams/elf64bmip-defs.sh \
|
|
|
|
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/irix.em $(srcdir)/emultempl/mipself.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64bmip "$(tdir_elf64bmip)"
|
|
|
|
eelf64btsmip.c: $(srcdir)/emulparams/elf64btsmip.sh \
|
|
|
|
$(srcdir)/emulparams/elf64bmip-defs.sh \
|
|
|
|
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64btsmip "$(tdir_elf64btsmip)"
|
|
|
|
eelf64btsmip_fbsd.c: $(srcdir)/emulparams/elf64btsmip_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf64bmip-defs.sh \
|
|
|
|
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64btsmip_fbsd "$(tdir_elf64btsmip_fbsd)"
|
|
|
|
eelf64hppa.c: $(srcdir)/emulparams/elf64hppa.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf64hppa.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64hppa "$(tdir_elf64hppa)"
|
|
|
|
eelf64lppc.c: $(srcdir)/emulparams/elf64lppc.sh \
|
|
|
|
$(srcdir)/emulparams/elf64ppc.sh $(srcdir)/emultempl/ppc64elf.em \
|
|
|
|
ldemul-list.h \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64lppc "$(tdir_elf64lppc)"
|
|
|
|
eelf64ltsmip.c: $(srcdir)/emulparams/elf64ltsmip.sh \
|
|
|
|
$(srcdir)/emulparams/elf64btsmip.sh $(srcdir)/emulparams/elf64bmip-defs.sh \
|
|
|
|
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64ltsmip "$(tdir_elf64ltsmip)"
|
|
|
|
eelf64ltsmip_fbsd.c: $(srcdir)/emulparams/elf64ltsmip_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf64btsmip_fbsd.sh $(srcdir)/emulparams/elf64bmip-defs.sh \
|
|
|
|
$(srcdir)/emulparams/elf32bmipn32-defs.sh $(ELF_DEPS) \
|
|
|
|
$(srcdir)/emultempl/mipself.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64ltsmip_fbsd "$(tdir_elf64ltsmip_fbsd)"
|
|
|
|
eelf64mmix.c: $(srcdir)/emulparams/elf64mmix.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/emultempl/mmix-elfnmmo.em \
|
|
|
|
$(srcdir)/emultempl/mmixelf.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64mmix "$(tdir_elf64mmix)"
|
|
|
|
eelf64ppc.c: $(srcdir)/emulparams/elf64ppc.sh $(srcdir)/emultempl/ppc64elf.em \
|
|
|
|
ldemul-list.h \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64ppc "$(tdir_elf64ppc)"
|
2011-07-15 09:45:50 +08:00
|
|
|
eelf64tilegx.c: $(srcdir)/emulparams/elf64tilegx.sh \
|
|
|
|
$(srcdir)/emultempl/elf32.em $(srcdir)/emultempl/needrelax.em \
|
|
|
|
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf64tilegx "$(tdir_tilegx)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf_l1om.c: $(srcdir)/emulparams/elf_l1om.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf_l1om "$(tdir_elf_l1om)"
|
|
|
|
eelf_l1om_fbsd.c: $(srcdir)/emulparams/elf_l1om_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf_l1om.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf_l1om_fbsd "$(tdir_elf_l1om_fbsd)"
|
2011-07-23 04:22:38 +08:00
|
|
|
eelf_k1om.c: $(srcdir)/emulparams/elf_k1om.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf_k1om "$(tdir_elf_k1om)"
|
|
|
|
eelf_k1om_fbsd.c: $(srcdir)/emulparams/elf_k1om_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf_k1om.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf_k1om_fbsd "$(tdir_elf_k1om_fbsd)"
|
2011-01-14 10:03:42 +08:00
|
|
|
eelf_x86_64.c: $(srcdir)/emulparams/elf_x86_64.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf_x86_64 "$(tdir_elf_x86_64)"
|
|
|
|
eelf_x86_64_fbsd.c: $(srcdir)/emulparams/elf_x86_64_fbsd.sh \
|
|
|
|
$(srcdir)/emulparams/elf_x86_64.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf_x86_64_fbsd "$(tdir_elf_x86_64_fbsd)"
|
|
|
|
eelf_x86_64_sol2.c: $(srcdir)/emulparams/elf_x86_64_sol2.sh \
|
|
|
|
$(srcdir)/emulparams/elf_x86_64.sh \
|
|
|
|
$(srcdir)/emulparams/solaris2.sh \
|
|
|
|
$(srcdir)/emultempl/solaris2.em \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} elf_x86_64_sol2 "$(tdir_elf_x86_64_sol2)"
|
|
|
|
ehppa64linux.c: $(srcdir)/emulparams/hppa64linux.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} hppa64linux "$(tdir_hppa64linux)"
|
|
|
|
emmo.c: $(srcdir)/emulparams/mmo.sh $(srcdir)/emultempl/mmix-elfnmmo.em \
|
|
|
|
$(srcdir)/emultempl/generic.em $(srcdir)/emultempl/elf-generic.em \
|
|
|
|
$(srcdir)/emultempl/mmo.em \
|
|
|
|
$(srcdir)/scripttempl/mmo.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} mmo "$(tdir_mmo)"
|
|
|
|
eshelf64.c: $(srcdir)/emulparams/shelf64.sh $(srcdir)/emulparams/shelf32.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} shelf64 "$(tdir_shelf64)"
|
|
|
|
eshelf64_nbsd.c: $(srcdir)/emulparams/shelf64_nbsd.sh \
|
|
|
|
$(srcdir)/emulparams/shelf32_nbsd.sh $(srcdir)/emulparams/shelf32.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} shelf64_nbsd "$(tdir_shelf64_nbsd)"
|
|
|
|
eshlelf64.c: $(srcdir)/emulparams/shlelf64.sh \
|
|
|
|
$(srcdir)/emulparams/shelf64.sh $(srcdir)/emulparams/shelf32.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} shlelf64 "$(tdir_shlelf64)"
|
|
|
|
eshlelf64_nbsd.c: $(srcdir)/emulparams/shlelf64_nbsd.sh \
|
|
|
|
$(srcdir)/emulparams/shelf64_nbsd.sh \
|
|
|
|
$(srcdir)/emulparams/shelf32_nbsd.sh $(srcdir)/emulparams/shelf32.sh \
|
|
|
|
$(ELF_DEPS) $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
|
|
|
|
${GENSCRIPTS} shlelf64_nbsd "$(tdir_shlelf64_nbsd)"
|
|
|
|
|
1999-05-03 15:29:11 +08:00
|
|
|
check-DEJAGNU: site.exp
|
|
|
|
srcroot=`cd $(srcdir) && pwd`; export srcroot; \
|
|
|
|
r=`pwd`; export r; \
|
2000-03-10 00:41:21 +08:00
|
|
|
LC_COLLATE=; LC_ALL=; LANG=; export LC_COLLATE LC_ALL LANG; \
|
1999-05-03 15:29:11 +08:00
|
|
|
EXPECT=$(EXPECT); export EXPECT; \
|
|
|
|
runtest=$(RUNTEST); \
|
|
|
|
if $(SHELL) -c "$$runtest --version" > /dev/null 2>&1; then \
|
|
|
|
$$runtest --tool $(DEJATOOL) --srcdir $${srcroot}/testsuite \
|
|
|
|
CC="$(CC_FOR_TARGET)" CFLAGS="$(CFLAGS)" \
|
|
|
|
CXX="$(CXX_FOR_TARGET)" CXXFLAGS="$(CXXFLAGS)" \
|
|
|
|
CC_FOR_HOST="$(CC)" CFLAGS_FOR_HOST="$(CFLAGS)" \
|
|
|
|
OFILES="$(OFILES)" BFDLIB="$(TESTBFDLIB)" \
|
2006-05-31 23:14:46 +08:00
|
|
|
LIBIBERTY="$(LIBIBERTY) $(LIBINTL)" LIBS="$(LIBS)" \
|
2009-03-17 13:01:26 +08:00
|
|
|
DO_COMPARE="`echo '$(do_compare)' | sed -e 's,\\$$,,g'`" \
|
1999-05-03 15:29:11 +08:00
|
|
|
$(RUNTESTFLAGS); \
|
|
|
|
else echo "WARNING: could not find \`runtest'" 1>&2; :;\
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Rules for testing by relinking ld itself.
|
|
|
|
# A similar test is in the testsuite. This target is for ease of use
|
|
|
|
# when porting ld.
|
|
|
|
|
2010-05-25 22:02:38 +08:00
|
|
|
ld-partial.@OBJEXT@: ld-new$(EXEEXT)
|
|
|
|
./ld-new$(EXEEXT) $(HOSTING_EMU) -o ld-partial.@OBJEXT@ -r $(OFILES)
|
|
|
|
ld1$(EXEEXT): ld-partial.@OBJEXT@
|
|
|
|
./ld-new$(EXEEXT) $(HOSTING_EMU) -o ld1$(EXEEXT) $(HOSTING_CRT0) ld-partial.@OBJEXT@ $(TESTBFDLIB) $(LIBIBERTY) $(HOSTING_LIBS) $(LIBS)
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
ld1-full$(EXEEXT): ld-new
|
2000-03-01 03:52:31 +08:00
|
|
|
./ld-new$(EXEEXT) $(HOSTING_EMU) -o ld1-full$(EXEEXT) $(HOSTING_CRT0) $(OFILES) $(TESTBFDLIB) $(LIBIBERTY) $(HOSTING_LIBS) $(LIBS)
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
ld2$(EXEEXT): ld1$(EXEEXT)
|
2000-03-01 03:52:31 +08:00
|
|
|
./ld1$(EXEEXT) $(HOSTING_EMU) -o ld2$(EXEEXT) $(HOSTING_CRT0) $(OFILES) $(TESTBFDLIB) $(LIBIBERTY) $(HOSTING_LIBS) $(LIBS)
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
ld3$(EXEEXT): ld2$(EXEEXT)
|
2000-03-01 03:52:31 +08:00
|
|
|
./ld2$(EXEEXT) $(HOSTING_EMU) -o ld3$(EXEEXT) $(HOSTING_CRT0) $(OFILES) $(TESTBFDLIB) $(LIBIBERTY) $(HOSTING_LIBS) $(LIBS)
|
1999-05-03 15:29:11 +08:00
|
|
|
|
|
|
|
bootstrap: ld3$(EXEEXT)
|
|
|
|
cmp ld2$(EXEEXT) ld3$(EXEEXT)
|
|
|
|
|
|
|
|
.PHONY: bootstrap
|
|
|
|
|
|
|
|
# DOCUMENTATION TARGETS
|
|
|
|
# Manual configuration file; not usually attached to normal configuration,
|
|
|
|
# because almost all configs use "gen" version of manual.
|
|
|
|
# Set DOCVER above to change.
|
|
|
|
configdoc.texi: ${DOCVER}-doc.texi
|
2005-11-17 09:01:05 +08:00
|
|
|
cp ${srcdir}/${DOCVER}-doc.texi ./configdoc.texi
|
2005-11-25 17:21:42 +08:00
|
|
|
chmod u+w ./configdoc.texi
|
1999-05-03 15:29:11 +08:00
|
|
|
|
2001-03-26 04:32:31 +08:00
|
|
|
# Build the man page from the texinfo file
|
|
|
|
# The sed command removes the no-adjust Nroff command so that
|
|
|
|
# the man output looks standard.
|
2007-03-15 22:17:20 +08:00
|
|
|
ld.1: $(srcdir)/ld.texinfo configdoc.texi
|
2001-06-19 19:57:29 +08:00
|
|
|
touch $@
|
2001-03-26 04:32:31 +08:00
|
|
|
-$(TEXI2POD) $(MANCONF) < $(srcdir)/ld.texinfo > ld.pod
|
|
|
|
-($(POD2MAN) ld.pod | \
|
2001-06-19 19:57:29 +08:00
|
|
|
sed -e '/^.if n .na/d' > $@.T$$$$ && \
|
|
|
|
mv -f $@.T$$$$ $@) || \
|
|
|
|
(rm -f $@.T$$$$ && exit 1)
|
|
|
|
rm -f ld.pod
|
1999-05-03 15:29:11 +08:00
|
|
|
mostlyclean-local:
|
|
|
|
-rm -rf tmpdir
|
|
|
|
|
|
|
|
.PHONY: install-exec-local install-data-local
|
|
|
|
|
2010-04-27 22:12:32 +08:00
|
|
|
install-exec-local: ld-new$(EXEEXT) install-binPROGRAMS
|
Cleanups in binutils makefiles.
ld/:
* Makefile.am (bin_PROGRAMS): Renamed from ...
(noinst_PROGRAMS): ... this.
(transform): Override, including the renaming of ld-new to ld.
(install-exec-local): Installation of ld in $(bindir) not needed
here any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(MAINTAINERCLEANFILES): Add ld.1.
* Makefile.in: Regenerate.
gold/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
(AM_CPPFLAGS): Renamed from ...
(INCLUDE): ... this.
* Makefile.in, testsuite/Makefile.in: Regenerate.
bfd/:
* Makefile.am (libbfd_la_LDFLAGS): Initialize early, to allow
appending.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES, bfdinclude_HEADERS): Set
only in this condition.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES, libbfd_la_LDFLAGS): New,
to build but not install libbfd.la in this condition.
(install-bfdlibLTLIBRARIES, uninstall-bfdlibLTLIBRARIES)
(install_libbfd, install_libbfd): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
(bin2c$(EXEEXT_FOR_BUILD): Adjust rule.
(installcheck-local): Renamed from ...
(installcheck): ... this.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (YFLAGS): Remove, not needed any more.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
gprof/:
* Makefile.am (AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (libopcodes_la_LDFLAGS): Initialize early.
[INSTALL_LIBBFD] (bfdlib_LTLIBRARIES): Set only in this condition.
[INSTALL_LIBBFD] (bfdinclude_DATA): New.
[!INSTALL_LIBBFD] (noinst_LTLIBRARIES): New.
[!INSTALL_LIBBFD] (libopcodes_la_LDFLAGS): Ensure libopcodes.la
is built shared even if it is not to be installed.
(install-bfdlibLTLIBRARIES,uninstall-bfdlibLTLIBRARIES)
(install_libopcodes, uninstall_libopcodes): Remove.
(AM_CPPFLAGS): Renamed from ...
(INCLUDES): ... this.
* Makefile.in: Regenerate.
2009-08-23 03:02:57 +08:00
|
|
|
$(mkinstalldirs) $(DESTDIR)$(tooldir)/bin
|
2010-04-27 22:12:32 +08:00
|
|
|
n=`echo $(installed_linker) | sed '$(transform)'`; \
|
|
|
|
if test "$(bindir)" != "$(tooldir)/bin"; then \
|
|
|
|
rm -f $(DESTDIR)$(tooldir)/bin/$(installed_linker)$(EXEEXT); \
|
|
|
|
ln $(DESTDIR)$(bindir)/$$n$(EXEEXT) $(DESTDIR)$(tooldir)/bin/$(installed_linker)$(EXEEXT) >/dev/null 2>/dev/null \
|
|
|
|
|| $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) ld-new$(EXEEXT) $(DESTDIR)$(tooldir)/bin/$(installed_linker)$(EXEEXT); \
|
|
|
|
fi; \
|
|
|
|
if test "x$(install_as_default)" = "xyes"; then \
|
2010-04-28 00:05:54 +08:00
|
|
|
ld=`echo ld | sed '$(transform)'`; \
|
|
|
|
rm -f $(DESTDIR)$(bindir)/$$ld$(EXEEXT); \
|
|
|
|
ln $(DESTDIR)$(bindir)/$$n$(EXEEXT) $(DESTDIR)$(bindir)/$$ld$(EXEEXT) >/dev/null 2>/dev/null \
|
|
|
|
|| $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) ld-new$(EXEEXT) $(DESTDIR)$(bindir)/$$ld$(EXEEXT); \
|
2010-04-27 22:12:32 +08:00
|
|
|
if test "$(bindir)" != "$(tooldir)/bin"; then \
|
|
|
|
rm -f $(DESTDIR)$(tooldir)/bin/ld$(EXEEXT); \
|
|
|
|
ln $(DESTDIR)$(bindir)/$$n$(EXEEXT) $(DESTDIR)$(tooldir)/bin/ld$(EXEEXT) >/dev/null 2>/dev/null \
|
|
|
|
|| $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) ld-new$(EXEEXT) $(DESTDIR)$(tooldir)/bin/ld$(EXEEXT); \
|
|
|
|
fi; \
|
1999-05-03 15:29:11 +08:00
|
|
|
fi
|
|
|
|
|
|
|
|
install-data-local:
|
2002-05-08 01:22:20 +08:00
|
|
|
$(mkinstalldirs) $(DESTDIR)$(scriptdir)/ldscripts
|
1999-05-03 15:29:11 +08:00
|
|
|
for f in ldscripts/*; do \
|
2002-05-08 01:22:20 +08:00
|
|
|
$(INSTALL_DATA) $$f $(DESTDIR)$(scriptdir)/$$f ; \
|
1999-05-03 15:29:11 +08:00
|
|
|
done
|
2001-06-19 19:57:29 +08:00
|
|
|
diststuff: info $(EXTRA_DIST)
|
2005-05-22 07:43:59 +08:00
|
|
|
|
2007-03-15 22:17:20 +08:00
|
|
|
# Both info (ld.info) and ld.1 depend on configdoc.texi.
|
2005-05-22 07:43:59 +08:00
|
|
|
# But info isn't a direct target. Make info-recursive to depend on
|
|
|
|
# ld.1 to support parallel build.
|
|
|
|
info-recursive: ld.1
|
1999-05-03 15:29:11 +08:00
|
|
|
distclean-local:
|
|
|
|
rm -rf ldscripts
|
|
|
|
|
|
|
|
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
|
|
|
# Otherwise a system limit (for SysV at least) may be exceeded.
|
|
|
|
.NOEXPORT:
|