Don't include libbfd.h outside of bfd, part 6
authorAlan Modra <amodra@gmail.com>
Sat, 16 Jul 2016 04:02:16 +0000 (13:32 +0930)
committerAlan Modra <amodra@gmail.com>
Sat, 16 Jul 2016 09:39:00 +0000 (19:09 +0930)
commit7d0b9ebc1e0079271a7c7737b53bc026525eab64
tree975420444ead89bf45f08b8e620da1ce5f0ab6d2
parentaac502f7d7899d96477fbd83f0038235af641def
Don't include libbfd.h outside of bfd, part 6

Some messing with plugin code in order to not need arelt_size in
ld code.  File descriptor handling in ld/plugin.c is tidied too,
simply duping the open fd rather than opening the file again.

bfd/
* elflink.c: Include plugin-api.h.
* plugin.c (bfd_plugin_open_input): New function, extracted from..
(try_claim): ..here.
* plugin.h: Don't include bfd.h.
(bfd_plugin_open_input): Declare.
binutils/
* ar.c: Include plugin-api.h.
* nm.c: Likewise.
ld/
* plugin.c: Don't include libbfd.h.  Include plugin-api.h
before bfd/plugin.h.
(plugin_object_p): Use bfd_plugin_open_input.
bfd/ChangeLog
bfd/elflink.c
bfd/plugin.c
bfd/plugin.h
binutils/ChangeLog
binutils/ar.c
binutils/nm.c
ld/ChangeLog
ld/plugin.c