head 1.7;
access;
symbols
pkgsrc-2026Q3:1.6.0.42
pkgsrc-2026Q3-base:1.6
pkgsrc-2026Q2:1.6.0.40
pkgsrc-2026Q2-base:1.6
pkgsrc-2026Q1:1.6.0.38
pkgsrc-2026Q1-base:1.6
pkgsrc-2025Q4:1.6.0.36
pkgsrc-2025Q4-base:1.6
pkgsrc-2025Q3:1.6.0.34
pkgsrc-2025Q3-base:1.6
pkgsrc-2025Q2:1.6.0.32
pkgsrc-2025Q2-base:1.6
pkgsrc-2025Q1:1.6.0.30
pkgsrc-2025Q1-base:1.6
pkgsrc-2024Q4:1.6.0.28
pkgsrc-2024Q4-base:1.6
pkgsrc-2024Q3:1.6.0.26
pkgsrc-2024Q3-base:1.6
pkgsrc-2024Q2:1.6.0.24
pkgsrc-2024Q2-base:1.6
pkgsrc-2024Q1:1.6.0.22
pkgsrc-2024Q1-base:1.6
pkgsrc-2023Q4:1.6.0.20
pkgsrc-2023Q4-base:1.6
pkgsrc-2023Q3:1.6.0.18
pkgsrc-2023Q3-base:1.6
pkgsrc-2023Q2:1.6.0.16
pkgsrc-2023Q2-base:1.6
pkgsrc-2023Q1:1.6.0.14
pkgsrc-2023Q1-base:1.6
pkgsrc-2022Q4:1.6.0.12
pkgsrc-2022Q4-base:1.6
pkgsrc-2022Q3:1.6.0.10
pkgsrc-2022Q3-base:1.6
pkgsrc-2022Q2:1.6.0.8
pkgsrc-2022Q2-base:1.6
pkgsrc-2022Q1:1.6.0.6
pkgsrc-2022Q1-base:1.6
pkgsrc-2021Q4:1.6.0.4
pkgsrc-2021Q4-base:1.6
pkgsrc-2021Q3:1.6.0.2
pkgsrc-2021Q3-base:1.6
pkgsrc-2021Q2:1.5.0.6
pkgsrc-2021Q2-base:1.5
pkgsrc-2021Q1:1.5.0.4
pkgsrc-2021Q1-base:1.5
pkgsrc-2020Q4:1.5.0.2
pkgsrc-2020Q4-base:1.5
pkgsrc-2020Q3:1.3.0.6
pkgsrc-2020Q3-base:1.3
pkgsrc-2020Q2:1.3.0.4
pkgsrc-2020Q2-base:1.3
pkgsrc-2020Q1:1.3.0.2
pkgsrc-2020Q1-base:1.3
pkgsrc-2019Q4:1.2.0.36
pkgsrc-2019Q4-base:1.2
pkgsrc-2019Q3:1.2.0.32
pkgsrc-2019Q3-base:1.2
pkgsrc-2019Q2:1.2.0.30
pkgsrc-2019Q2-base:1.2
pkgsrc-2019Q1:1.2.0.28
pkgsrc-2019Q1-base:1.2
pkgsrc-2018Q4:1.2.0.26
pkgsrc-2018Q4-base:1.2
pkgsrc-2018Q3:1.2.0.24
pkgsrc-2018Q3-base:1.2
pkgsrc-2018Q2:1.2.0.22
pkgsrc-2018Q2-base:1.2
pkgsrc-2018Q1:1.2.0.20
pkgsrc-2018Q1-base:1.2
pkgsrc-2017Q4:1.2.0.18
pkgsrc-2017Q4-base:1.2
pkgsrc-2017Q3:1.2.0.16
pkgsrc-2017Q3-base:1.2
pkgsrc-2017Q2:1.2.0.12
pkgsrc-2017Q2-base:1.2
pkgsrc-2017Q1:1.2.0.10
pkgsrc-2017Q1-base:1.2
pkgsrc-2016Q4:1.2.0.8
pkgsrc-2016Q4-base:1.2
pkgsrc-2016Q3:1.2.0.6
pkgsrc-2016Q3-base:1.2
pkgsrc-2016Q2:1.2.0.4
pkgsrc-2016Q2-base:1.2
pkgsrc-2016Q1:1.2.0.2
pkgsrc-2016Q1-base:1.2
pkgsrc-2015Q4:1.1.0.14
pkgsrc-2015Q4-base:1.1
pkgsrc-2015Q3:1.1.0.12
pkgsrc-2015Q3-base:1.1
pkgsrc-2015Q2:1.1.0.10
pkgsrc-2015Q2-base:1.1
pkgsrc-2015Q1:1.1.0.8
pkgsrc-2015Q1-base:1.1
pkgsrc-2014Q4:1.1.0.6
pkgsrc-2014Q4-base:1.1
pkgsrc-2014Q3:1.1.0.4
pkgsrc-2014Q3-base:1.1
pkgsrc-2014Q2:1.1.0.2
pkgsrc-2014Q2-base:1.1;
locks; strict;
comment @ * @;
1.7
date 2026.10.12.09.10.09; author jperkin; state dead;
branches;
next 1.6;
commitid GtHPje62iWdnraZG;
1.6
date 2021.09.11.15.54.39; author fcambus; state Exp;
branches;
next 1.5;
commitid 0a2bjiYAHmuuny8D;
1.5
date 2020.12.20.19.07.05; author fcambus; state Exp;
branches;
next 1.4;
commitid 4414LG8UTmnyXvAC;
1.4
date 2020.12.06.18.07.53; author fcambus; state Exp;
branches;
next 1.3;
commitid noF5YFhXR7o75IyC;
1.3
date 2020.02.05.06.18.34; author rillig; state Exp;
branches;
next 1.2;
commitid VvjjmDixZgxEVrVB;
1.2
date 2016.02.03.19.56.34; author jperkin; state Exp;
branches;
next 1.1;
commitid A9YwbyUHfGaKvvTy;
1.1
date 2014.05.12.16.33.20; author marino; state Exp;
branches;
next ;
commitid WMJJB5FcVj3NHgAx;
desc
@@
1.7
log
@binutils: Update to 2.47.
Lots of pkgsrc changes to simplify and clean up the package. Tested on SmartOS
(has been used to build the trunk packages for a number of weeks now), Darwin,
and NetBSD.
Changes since 2.41 below are for binutils only, not including gas and ld.
Changes in 2.47:
* The s390 32-bit target (s390-*) is deprecated and planned for removal in a
future release, along with the elf32-s390 target format. configure emits
an error for this target, which can be overridden using --enable-obsolete.
Linux Kernel 6.19 removed s390 32-bit compatibility support. Glibc 2.43
and GCC 16.1 have deprecated s390 32-bit, both with the intent to remove it
in a future release.
The s390 64-bit target (s390x-*) remains supported.
* The AArch64 disassembler now accepts a command line option of "-M annotate"
which displays the symbol associated with undefined instructions, should
there be one.
* The x86 and x86_64 disassemblers now accept a command line option of
"-M annotate-immediates" which displays the symbol associated with immediate
values, should there be one.
* Objdump and readelf now have a --debug-dir=
option which can be used to
tell them where to find separate debug info files.
* Add --map-global-vars option to objdump which displays the location and type
of global variables in object files. This feature was developed by Guillaume
Vacherias .
Changes in 2.46:
* SFrame stack trace format now represents an undefined return address as
an SFrame FRE without any offsets. libsframe provides a new API to test
for RA undefined, which is used when dumping SFrame information (e.g. using
objdump and readelf) to show such FREs as "RA undefined".
* Add --got-contents option to readelf to display the contents of
Global Offset Table (GOT) sections.
* Internal changes to plugin support, and stricter target checking may result
in some errors being exposed in user options passed to the various binutils.
For example objcopy --target=TARGET now will only work if the input file is
for TARGET whereas prior versions of objcopy accepted other target input
files and produced a TARGET output. If you do in fact want the old
behaviour the correct usage is objcopy --output-target=TARGET.
* NaCl target support is removed.
* New versioned release of libsframe: libsframe.so.3. This release introduces
versioned symbols with version node name LIBSFRAME_3.0.
* objdump and readelf now support displaying SFrame Version 3 information.
The existing --sframe option can be used to display sections in the the new
V3 format. Display of SFrame Version 2 information continues to be supported
(NB: Emission and linking of SFrame Version 2 is discontinued).
Changes in 2.45:
* New versioned release of libsframe: libsframe.so.2. This release introduces
versioned symbols with version node name LIBSFRAME_2.0. Some new symbols
have been added to support the new flag SFRAME_F_FDE_FUNC_START_PCREL and
retrieving flags from SFrame decoder and encoder objects:
- Addition of sframe_decoder_get_flags,
sframe_decoder_get_offsetof_fde_start_addr, sframe_encoder_get_flags,
sframe_encoder_get_offsetof_fde_start_addr.
This release also includes backward-incompatible ABI changes:
- Removal of sframe_get_funcdesc_with_addr.
- Change in the behavior of sframe_decoder_get_funcdesc_v2,
sframe_encoder_add_funcdesc_v2 and sframe_encoder_write.
* On s390 64-bit (s390x), gas, ld, objdump, and readelf now support generating
and processing SFrame V2 stack trace information (.sframe). The assembler
generates SFrame info from CFI directives with option "--gsframe". The
linker generates SFrame info for the linker-generated .plt section and merges
all .sframe sections. Both objdump and readelf dump SFrame info with option
"--sframe[=]".
* For SFrame stack trace format, the function start address in each SFrame
FDE has a changed encoding: The 32-bit signed integer now holds the offset
of the start PC of the associated function from the sfde_func_start_address
field itself (instead of the earlier where it was the offset from the start
of the SFrame section itself). All SFrame sections generated by gas and ld
now default to this new encoding, setting the (new)
SFRAME_F_FDE_FUNC_START_PCREL flag.
Relocatable SFrame links are now fixed.
* Readelf now recognizes RISC-V GNU_PROPERTY_RISCV_FEATURE_1_CFI_SS and
GNU_PROPERTY_RISCV_FEATURE_1_CFI_LP_UNLABELED for zicfiss and zicfilp
extensions.
* For RISC-V dis-assembler, the definition of mapping symbol $x is changed,
so the file needs to be rebuilt since 2.45 once used .option arch directives.
* The LoongArch disassembler now properly accepts multiple disassembly
options given by -M, such as "-M no-aliases,numeric". (Previously only the
first option took effect.)
Changes in 2.44:
* Support for Nios II targets has been removed except in the readelf utility,
as this architecture has been EOL'ed by Intel.
* RISC-V disassembly now supports -M,max option like QEMU to dump instruction
without checking architecture support as usual.
* gprofng:
Support for hardware event counters for Neoverse-N1, Ampere-1, and
Appliedmicro processors.
Changes in 2.43:
* The MIPS port now supports microMIPS MT Application Specific Extension
instructions for assembly and disassembly.
* Readelf now displays RELR relocations in full detail.
* Readelf now has a -j/--display-section option which takes the name or index
of a section and displays its contents according to its type. The option can
be used multiple times on the command line to display multiple sections.
* Base register 0 is now printed as "0" instead of "%r0" in s390 disassembly.
* When objdump or readelf are used to display the contents of a .eh_frame
section they will now also display the contents of the .eh_frame_hdr section,
if present.
* Support for the Maverick co-processor (via -mfpu=maverick) on Arm has been
removed. The CPU name ep9312 is still recognized, but treated as an alias
for arm920t.
* Support for the FPA co-procossor on Arm has been removed. In cases where a
legacy CPU previously defaulted to using this instruction set extension, the
assembler now defaults to no-FPU to avoid quietly misassembling legacy code.
* gprofng:
Improved the support for hardware event counters:
- Re-designed and streamlined the implementation.
- Defined a common set of events for ARM processors.
- Added specific events for AMD ZEN3 / ZEN4, and Intel Ice Lake processors.
Added a minimal support for RISC-V.
Changes in 2.42:
* The objdump program has a new command line option -Z/--decompress which
changes the behaviour of the -s/--full-contents option, forcing it to
decompress the contents of any compressed section before they are displayed.
In addition when objdump is displaying sections headers (via the -h/--headers
command line option) it will now display "COMPRESSED" in the Flags field of
any compressed section.
* The readelf program has a new command line option --extra-sym-info which
extends the information displayed by the --symbols option. When enabled
the display will include the name of the section referenced by a symbol's
index field (st_shndx). In the future more information may also be displayed
when this option is enabled.
* objcopy --set-section-flags now supports "large" to set SHF_X86_64_LARGE
for ELF x86-64 objects.
* objdump --visualize-jumps is now supported on s390 architecture.
* The s390 disassembly now optionally includes the instruction description as
comment with the s390-specific disassembler option "insndesc":
- For objdump it can be enabled with "objdump -M insndesc ...".
- In gdb it can be enabled with "set disassembler-options insndesc".
@
text
@$NetBSD: patch-gold_options.h,v 1.6 2021/09/11 15:54:39 fcambus Exp $
The NetBSD real-time linker do not understand DT_RUNPATH or
DT_INIT_ARRAY. The current gold defaults are not suitable for it.
The last couple of DragonFly, FreeBSD, and OpenBSD releases do
support these tags.
--- gold/options.h.orig 2021-07-08 11:37:20.000000000 +0000
+++ gold/options.h
@@@@ -781,7 +781,11 @@@@ class General_options
N_("Output cross reference table"),
N_("Do not output cross reference table"));
+#if defined(__NetBSD__)
+ DEFINE_bool(ctors_in_init_array, options::TWO_DASHES, '\0', false,
+#else
DEFINE_bool(ctors_in_init_array, options::TWO_DASHES, '\0', true,
+#endif
N_("Use DT_INIT_ARRAY for all constructors"),
N_("Handle constructors as directed by compiler"));
@@@@ -843,7 +847,11 @@@@ class General_options
N_("Do not create exception frame header"));
// Alphabetized under 'e' because the option is spelled --enable-new-dtags.
+#if defined(__NetBSD__)
+ DEFINE_enable(new_dtags, options::EXACTLY_TWO_DASHES, '\0', false,
+#else
DEFINE_enable(new_dtags, options::EXACTLY_TWO_DASHES, '\0', true,
+#endif
N_("Enable use of DT_RUNPATH"),
N_("Disable use of DT_RUNPATH"));
@
1.6
log
@binutils: update to 2.37.
This release contains numerous bug fixes, and also the following
new features:
* The GNU Binutils sources now requires a C99 compiler and library to
build.
* Support for the arm-symbianelf format has been removed.
* Support for Realm Management Extension (RME) for AArch64 has been
added.
* A new linker option '-z report-relative-reloc' for x86 ELF targets
has been added to report dynamic relative relocations.
* A new linker option '-z start-stop-gc' has been added to disable
special treatment of __start_*/__stop_* references when
--gc-sections.
* A new linker options '-Bno-symbolic' has been added which will
cancel the '-Bsymbolic' and '-Bsymbolic-functions' options.
* The readelf tool has a new command line option which can be used to
specify how the numeric values of symbols are reported.
--sym-base=0|8|10|16 tells readelf to display the values in base 8,
base 10 or base 16. A sym base of 0 represents the default action
of displaying values under 10000 in base 10 and values above that in
base 16.
* A new format has been added to the nm program. Specifying
'--format=just-symbols' (or just using -j) will tell the program to
only display symbol names and nothing else.
* A new command line option '--keep-section-symbols' has been added to
objcopy and strip. This stops the removal of unused section symbols
when the file is copied. Removing these symbols saves space, but
sometimes they are needed by other tools.
* The '--weaken', '--weaken-symbol' and '--weaken-symbols' options
supported by objcopy now make undefined symbols weak on targets that
support weak symbols.
* Readelf and objdump can now display and use the contents of .debug_sup
sections.
* Readelf and objdump will now follow links to separate debug info
files by default. This behaviour can be stopped via the use of the
new '-wN' or '--debug-dump=no-follow-links' options for readelf and
the '-WN' or '--dwarf=no-follow-links' options for objdump. Also
the old behaviour can be restored by the use of the
'--enable-follow-debug-links=no' configure time option.
The semantics of the =follow-links option have also been slightly
changed. When enabled, the option allows for the loading of symbol
tables and string tables from the separate files which can be used
to enhance the information displayed when dumping other sections,
but it does not automatically imply that information from the
separate files should be displayed.
If other debug section display options are also enabled (eg
'--debug-dump=info') then the contents of matching sections in both
the main file and the separate debuginfo file *will* be displayed.
This is because in most cases the debug section will only be present
in one of the files.
If however non-debug section display options are enabled (eg
'--sections') then the contents of matching parts of the separate
debuginfo file will *not* be displayed. This is because in most
cases the user probably only wanted to load the symbol information
from the separate debuginfo file. In order to change this behaviour
a new command line option --process-links can be used. This will
allow di0pslay options to applied to both the main file and any
separate debuginfo files.
* Nm has a new command line option: '--quiet'. This suppresses "no
symbols" diagnostic.
@
text
@d1 1
a1 1
$NetBSD: patch-gold_options.h,v 1.5 2020/12/20 19:07:05 fcambus Exp $
@
1.5
log
@binutils: remove now unneeded OpenBSD specific checks in gold.
Support for DT_INIT_ARRAY, DT_FINI_ARRAY and DT_PREINIT_ARRAY was added
in 2016 [1], and support for DT_RUNPATH in 2017 [2].
[1] https://marc.info/?l=openbsd-cvs&m=147193481229072&w=2
[2] https://marc.info/?l=openbsd-cvs&m=148504804104054&w=2
@
text
@d1 1
a1 1
$NetBSD: patch-gold_options.h,v 1.4 2020/12/06 18:07:53 fcambus Exp $
d8 1
a8 1
--- gold/options.h.orig 2020-07-24 09:12:20.000000000 +0000
d10 1
a10 1
@@@@ -772,7 +772,11 @@@@ class General_options
d22 1
a22 1
@@@@ -834,7 +838,11 @@@@ class General_options
@
1.4
log
@binutils: update to 2.35.1.
Looks OK to kamil@@
Changes in 2.35:
* Changed readelf's display of symbol names when wide mode is not enabled.
If the name is too long it will be truncated and the last five characters
replaced with "[...]". The old behaviour of displaying 5 more characters but
not indicating that truncation has happened can be restored by the use of the
-T or --silent-truncation options.
* X86 NaCl target support is removed.
* The readelf tool now has a -L or --lint or --enable-checks option which turns
on warning messages about possible problems with the file(s) being examined.
These checks include things like zero-sized sections, which are allowed by
the ELF standard but which nevertheless might be of concern if the user
was expecting them to actually contain something.
@
text
@d1 1
a1 1
$NetBSD: patch-gold_options.h,v 1.3 2020/02/05 06:18:34 rillig Exp $
d3 4
a6 3
The NetBSD and OpenBSD real-time linkers do not understand DT_RUNPATH
or DT_INIT_ARRAY. The current gold defaults are not suitable for them.
The last couple of DragonFly and FreeBSD releases do support these tags.
d14 1
a14 1
+#if defined(__NetBSD__) || defined(__OpenBSD__)
d26 1
a26 1
+#if defined(__NetBSD__) || defined(__OpenBSD__)
@
1.3
log
@devel/binutils: update to 2.34
pkgsrc changes:
MAKE_JOBS_SAFE=no has been removed since binutils built fine with
MAKE_JOBS=3 on NetBSD-8.0-x86_64.
In some of the patches, all context lines have been removed since the raw
change is expressive enough without any context.
The patch for popcount is no longer necessary since the function has been
renamed in bfd.
upstream changes since 2.26:
Changes in 2.34:
* Binutils now supports debuginfod, an HTTP server for distributing
ELF/DWARF debugging information as well as source code. When built with
debuginfod, readelf and objdump can automatically query debuginfod
servers for separate debug files when they otherwise cannot be found.
To build binutils with debuginfod, pass --with-debuginfod to configure.
This requires libdebuginfod, the debuginfod client library. debuginfod
is distributed with elfutils, starting with version 0.178. For more
information see https://sourceware.org/elfutils.
* Add --output option to the "ar" program. This option can be used to specify
the output directory when extracting members from an archive.
* Add --keep-section option to objcopy and strip. This option keeps the
specified section from being removed.
* Add visualization of jumps inside a function by drawing an ascii character
graph between the address and the disassembler column. Enabled via the
--visualize-jumps command line option for objdump. Currently supported by
the x86, x86_64, and ARM targets. The output looks something like this:
c6: | | \----------> be 00 00 00 00 mov $0x0,%esi
cb: | | /----> 48 8b 3d 00 00 00 00 mov 0x0(%rip),%rdi # d2
d2: | | | 31 c0 xor %eax,%eax
d4: | | | /-- e8 00 00 00 00 callq d9
d9: | | | \-> bf 02 00 00 00 mov $0x2,%edi
de: | +-----------|----- e8 00 00 00 00 callq e3
e3: | \-----------|----> 48 89 da mov %rbx,%rdx
e6: | | be 00 00 00 00 mov $0x0,%esi
eb: | \----- eb de jmp cb
ed: \-------------------> 48 8b 16 mov (%rsi),%rdx
Additional arguments to the --visualize-jumps option add colors to the
output.
Changes in 2.33:
* Add --source-comment[=] option to objdump which if present,
provides a prefix to source code lines displayed in a disassembly.
* Add --set-section-alignment = option to objcopy to allow
the changing of section alignments.
* Add --verilog-data-width option to objcopy for verilog targets to control
width of data elements in verilog hex format.
* Add support for the Armv8.1-M Mainline and M-profile Vector Extension (MVE)
instructions.
* The separate debug info file options of readelf (--debug-dump=links
and --debug-dump=follow) and objdump (--dwarf=links and
--dwarf=follow-links) will now display and/or follow multiple links if
more than one are present in a file. (This usually happens when gcc's
-gsplit-dwarf option is used).
In addition objdump's --dwarf=follow-links now also affects its other
display options, so that for example, when combined with --syms it will
cause the symbol tables in any linked debug info files to also be
displayed. In addition when combined with --disassemble the --dwarf=
follow-links option will ensure that any symbol tables in the linked
files are read and used when disassembling code in the main file.
* Add support for dumping types encoded in the Compact Type Format
to objdump and readelf.
Changes in 2.32:
* The addr2line, c++filt, nm and objdump tools now have a limit on the
maximum amount of recursion that is allowed whilst demangling strings.
The value for this limit is defined by the DEMANGLE_RECRUSE_LIMIT
constant declared in the include/demangle.h header file. At the time
of writing this constant has the value of 2048.
The --no-recurse-limit option can be used to remove the limit, restoring
the behaviour of earlier versions of these tools. This may be needed in
order to dmangle truly complicated names, but it also leaves the tools
vulnerable to stack exhaustion from maliciously constructed mangled names.
* Objdump's --disassemble option can now take a parameter, specifying the
starting symbol for disassembly. Disassembly will continue from this
symbol up to the next symbol or the end of the function.
* The MIPS port now supports the Loongson 2K1000 processor which implements
the MIPS64r2 ISA, the Loongson-mmi ASE, Loongson-cam ASE, Loongson-ext ASE,
Loongson-ext2 ASE and MSA ASE instructions. Add -march=gs264e option for
Loongson 2K1000 processor.
* The MIPS port now supports the Loongson 3A2000/3A3000 processor which
implements the MIPS64r2 ISA, the Loongson-mmi ASE, Loongson-cam ASE,
Loongson-ext ASE and Loongson-ext2 ASE instructions. Add -march=gs464e
option for Loongson 3A2000/3A3000 processor.
* The MIPS port now supports the Loongson 3A1000 processor, aka Loongson3a,
which implements the MIPS64r2 ISA, the Loongson-mmi ASE, Loongson-cam ASE
and Loongson-ext ASE instructions. Add -march=gs464 option for Loongson
3A1000 processor, The -march=loongson3a is an alias of -march=gs464 for
compatibility.
* The size tool now has a new output format '--format=GNU' or '-G'. The
results are displayed in a similar manor to the default berkeley layout,
except read-only data is counted in the data column, not the text column.
Additionally the total is only included once.
Changes in 2.31:
* Add support for disassembling netronome Flow Processor (NFP) firmware files.
* The AArch64 port now supports showing disassembly notes which are emitted
when inconsistencies are found with the instruction that may result in the
instruction being invalid. These can be turned on with the option -M notes
to objdump.
* The AArch64 port now emits warnings when a combination of an instruction and
a named register could be invalid.
* Added O modifier to ar to display member offsets inside an archive
Changes in 2.30:
* Add --debug-dump=links option to readelf and --dwarf=links option to objdump
which displays the contents of any .gnu_debuglink or .gnu_debugaltlink
sections.
Add a --debug-dump=follow-links option to readelf and a --dwarf=follow-links
option to objdump which causes indirect links into separate debug info files
to be followed when dumping other DWARF sections.
Changes in 2.29:
* The MIPS port now supports microMIPS eXtended Physical Addressing (XPA)
instructions for assembly and disassembly.
* The MIPS port now supports the microMIPS Release 5 ISA for assembly and
disassembly.
* The MIPS port now supports the Imagination interAptiv MR2 processor,
which implements the MIPS32r3 ISA, the MIPS16e2 ASE as well as a couple
of implementation-specific regular MIPS and MIPS16e2 ASE instructions.
* The SPARC port now supports the SPARC M8 processor, which implements the
Oracle SPARC Architecture 2017.
* The MIPS port now supports the MIPS16e2 ASE for assembly and disassembly.
* Add support for ELF SHF_GNU_MBIND and PT_GNU_MBIND_XXX.
* Add support for the wasm32 ELF conversion of the WebAssembly file format.
* Add --inlines option to objdump, which extends the --line-numbers option
so that inlined functions will display their nesting information.
* Add --merge-notes options to objcopy to reduce the size of notes in
a binary file by merging and deleting redundant notes.
* Add support for locating separate debug info files using the build-id
method, where the separate file has a name based upon the build-id of
the original file.
Changes in 2.28:
* This version of binutils fixes a problem with PowerPC VLE 16A and 16D
relocations which were functionally swapped, for example,
R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D
performed like R_PPC_VLE_HA16A. This could have been fixed by
renumbering relocations, which would keep object files created by an
older version of gas compatible with a newer ld. However, that would
require an ABI update, affecting other assemblers and linkers that
create and process the relocations correctly. It is recommended that
all VLE object files be recompiled, but ld can modify the relocations
if --vle-reloc-fixup is passed to ld. If the new ld command-line
option is not used, ld will ld warn on finding relocations inconsistent
with the instructions being relocated.
* The nm program has a new command-line option (--with-version-strings)
which will display a symbol's version information, if any, after the
symbol's name.
* The ARC port of objdump now accepts a -M option to specify the extra
instruction class(es) that should be disassembled.
* The --remove-section option for objcopy and strip now accepts section
patterns starting with an exclamation point to indicate a non-matching
section. A non-matching section is removed from the set of sections
matched by an earlier --remove-section pattern.
* The --only-section option for objcopy now accepts section patterns
starting with an exclamation point to indicate a non-matching section.
A non-matching section is removed from the set of sections matched by
an earlier --only-section pattern.
* New --remove-relocations=SECTIONPATTERN option for objcopy and strip.
This option can be used to remove sections containing relocations.
The SECTIONPATTERN is the section to which the relocations apply, not
the relocation section itself.
Changes in 2.27:
* Add a configure option, --enable-64-bit-archive, to force use of a
64-bit format when creating an archive symbol index.
* Add --elf-stt-common= option to objcopy for ELF targets to control
whether to convert common symbols to the STT_COMMON type.
@
text
@d1 1
a1 1
$NetBSD: patch-gold_options.h,v 1.2 2016/02/03 19:56:34 jperkin Exp $
d7 1
a7 1
--- gold/options.h.orig
d9 1
a9 1
@@@@ -772,7 +772,11 @@@@
d21 1
a21 1
@@@@ -830,7 +834,11 @@@@
@
1.2
log
@Backport SunOS 32-bit -mrelax-relocations fix from 2.26.1. Bump PKGREVISION.
@
text
@d1 1
a1 1
$NetBSD: patch-gold_options.h,v 1.1 2014/05/12 16:33:20 marino Exp $
d7 1
a7 1
--- gold/options.h.orig 2015-11-13 08:27:42.000000000 +0000
d9 1
a9 1
@@@@ -713,9 +713,15 @@@@ class General_options
a14 2
+ N_("Use DT_INIT_ARRAY for all constructors"),
+ N_("Handle constructors as directed by compiler (default)"));
d17 2
a18 1
N_("Use DT_INIT_ARRAY for all constructors (default)"),
a19 1
+#endif
d21 2
a22 5
DEFINE_bool(define_common, options::TWO_DASHES, 'd', false,
N_("Define common symbols"),
@@@@ -956,7 +962,11 @@@@ class General_options
N_("Do not page align data, do not make text readonly"),
N_("Page align data, make text readonly"));
d24 1
d30 2
a31 2
N_("Enable use of DT_RUNPATH and DT_FLAGS"),
N_("Disable use of DT_RUNPATH and DT_FLAGS"));
@
1.1
log
@devel/binutils: Change default behavior of gold for NetBSD & OpenBSD
The Gold linker defaults to the use of --new-dtags which uses DT_RUNPATH
instead of DT_RPATH. In previous version of binutils, --new-dtags would
write set both DT_RUNPATH and DT_PATH, but not anymore. The problem is
that neither NetBSD nor OpenBSD runtime linkers properly handle it
AFAICT. Use macros to make DT_RPATH get set when -rpath switch is used
so that linked libraries can get found on these platforms.
Similarly, it appears that DT_INIT_ARRAY tags are also not handled by
rtld, so don't use these tags by default otherwise C++ will not link
on these platforms.
The copy-as-needed attribute has been left at its binutils default of
--no-copy-dt-needed. This has been the default since binutils 2.22.
@
text
@d1 1
a1 1
$NetBSD$
d7 1
a7 1
--- gold/options.h.orig 2013-11-04 15:33:39.000000000 +0000
d9 1
a9 1
@@@@ -716,9 +716,15 @@@@ class General_options
d25 1
a25 1
@@@@ -949,7 +955,11 @@@@ class General_options
@