Home | History | Annotate | only in /src/tools/binutils
History log of /src/tools/binutils
RevisionDateAuthorComments
 1.42 24-Sep-2025  rillig revert binutils: build using GNU make instead of BSD make

The change broke the MIPS builds, with error messages like:
> CC itbl-parse.o
> cc: error: itbl-parse.c: No such file or directory
 1.41 24-Sep-2025  rillig binutils: build using GNU make instead of BSD make

The binutils makefiles use expressions of the form $(filter-out ...),
which are only available in GNU make.

Switching to GNU make reduces the diff to upstream.
 1.40 08-Sep-2025  christos use the same hack as in gcc to clean if the binutils version changed.
 1.39 04-Jul-2024  christos Disable zstd for now (used for compressing debugging symbols). It brings
in /usr/pkg/lib which has bad side effects (if for example libiberty is
installed it picks it twice).
 1.38 25-Nov-2023  rin branches: 1.38.2;
tools/binutils: Add support to mknative for binutils.old
 1.37 18-Jan-2023  christos Disable enabling executable stack when the gnu stack note is missing.
Merge common configure arguments.
 1.36 31-Dec-2022  mrg fix the binutils build with read-only source trees

don't play with m68k-parse.c in tools/binutils/Makefile but disable
the rules that rebuild it so we always use the upstream version,
using the standard "NetBSD_DISABLED" method.

this was necessary to build on linux in 2014 (which may or may not
still ne necessary), but it also avoids triggering rebuild rules
based upon the timestamps on .y vs .c.

tested with amiga, amd64, and i386 "build.sh tools" builds.
 1.35 25-Dec-2022  christos Handle both places where m68k-parse can be found (for 2.34 and 2.39)
 1.34 24-Dec-2022  christos Adjust for binutils-2.39
 1.33 18-Sep-2021  christos Patch the build script and toolchain to allow passing through
HOST_CPPFLAGS, HOST_CXXFLAGS, but not LIBRARY_PATH because it breaks
the build. These variables are necessary to support building NetBSD
from a GNU Guix or NixOS host, where /usr/include, /lib, and all
but /bin/sh do not exist. In many cases, support for HOST_CPPFLAGS
was incomplete. From Ryan Sundberg
 1.32 07-May-2021  christos enable initfini-array since all platforms support it.
 1.31 04-Apr-2020  christos put the binutils include before /usr/include to get the right md5.h
 1.30 27-Dec-2018  christos explicitly disable initfini-array; we don't have it yet.
 1.29 07-Nov-2018  christos Adjust for 2.31.1
 1.28 01-May-2018  christos branches: 1.28.2;
Create a new bsd.hostinit.mk file and put the build definitions for all host
programs there; make all Makefiles that use bsd.hostprog.mk include it.
Namely turn off MKREPRO and don't make lint, man pages, info files etc.
Remove the Makefile.inc files that contained these same settings, and
remove the settings from Makefile.host
 1.27 01-May-2018  christos PR/53238: Robert Elz: Disable MKREPRO in tools; the host compiler might
not support the necessary options. This is done thusly:

1. Set MKREPRO=no in Makefile.host. This handles all the Makefiles that
use it and don't include bsd.own.mk.
2. Create Makefile.inc and set MKREPRO=no in it. Change the Makefiles that
include bsd.own.mk, to include bsd.init.mk which includes Makefile.inc
first. This will also allow us to control other tools options from a
single location if we need to.

XXX: pullup-8
 1.26 11-Oct-2016  mrg branches: 1.26.6; 1.26.12;
pass -L in LDFLAGS. clang complains about it to stderr, and configure
checks for headers fail if there are unexpected stderr.
 1.25 26-Jan-2016  christos branches: 1.25.2;
use EXTERNAL_BINUTILS_SUBDIR
 1.24 15-Feb-2014  tsutsui No need to specify ${.OBJDIR} for target files.

It rather fails if MKHOSTOBJ=yes.
 1.23 29-Jan-2014  joerg For the tools build, always use the Bison-created m68 asm parser.
Fixes build on Linux, where the glibc guards trip up the
"must-be-included-first" check in config.h.
 1.22 15-Apr-2012  mrg branches: 1.22.2;
force set ac_cv_mkdir_path to our install -d program.
fixes the remaining issues with 'sourcesets' and 'tools'.
 1.21 31-Oct-2011  mrg branches: 1.21.2; 1.21.4;
obsolete now useless (and wrongly set to "219" :-) HAVE_BINUTILS.
switch the sense of the gdb and gcc tests to list the platforms not
switched to gcc 4.5 or gdb 7, which is now:

GCC 4.1:
.if ${MACHINE_ARCH} == "alpha" || \
${MACHINE_CPU} == "arm" || \
${MACHINE_CPU} == "m68k" || \
${MACHINE_CPU} == "vax"

GDB 6:
.if ${MACHINE_ARCH} == "alpha" || \
${MACHINE_ARCH} == "hppa" || \
${MACHINE_CPU} == "mips" || \
${MACHINE_CPU} == "sh3" || \
${MACHINE_ARCH} == "vax"

let's go, people! (-:
 1.20 04-Aug-2011  mrg add --disable-werror. GCC 4.6 doesn't like some of the code here and
rather than patching code to fix it (and one case isn't trivially fixable)
simply turn off -Werror by default here. should fix PR#45140.
 1.19 24-Mar-2011  joerg Enable support for --sysroot in binutils and gcc.
 1.18 20-Nov-2009  skrll Pull in fixes from binutils_2_19 branch.

Bump version and re-run mknative to pick up.
 1.17 14-Oct-2009  skrll Only brand newer binutils.
 1.16 12-Oct-2009  skrll Better branding from mrg
 1.15 10-Oct-2009  snj Adjust bug report URL to reflect htdocs changes.
 1.14 10-Oct-2009  skrll Add some NetBSD branding to binutils.
 1.13 18-Aug-2009  skrll Build binutils 2.19.1 if HAVE_BINUTILS is 219
 1.12 19-Nov-2007  uebayasi target:
cmd1 && cmd2 && cmd3

| | |
v v v

target:
cmd1
cmd2
cmd3

This makes the script (cmd1 && cmd2 && cmd3) slightly easier to debug. No
functional change expected.
 1.11 27-Aug-2006  simonb branches: 1.11.8;
Allow for building a crosstools version of gprof.
Disabled by default, can be enabled with MKCROSSGPROF=yes.
 1.10 02-Feb-2006  skrll Adapt native-binutils to new binutils.
 1.9 14-Jan-2005  skrll Revert previous.

We need to fix vax a different way as the move of -B${DESTDIR}/usr/lib/
to CFLAGS filters into the defs.mk files.
 1.8 12-Dec-2004  mrg for mknative, move -B from CC to CFLAGS, fixes vax configs
 1.7 04-Dec-2003  mrg move libaries back to gnu/lib
 1.6 04-Dec-2003  mrg build lib{opcodes,bfd,iberty} back in gnu/lib instead of gnu/usr.bin/binutils
as they are needed earlier than when gnu/usr.bin/binutils is built when
"make -j" is used.
 1.5 01-Dec-2003  mrg fix a bug in previous:
don't pass -L${DESTDIR}/usr/lib twice, pass it once with -L${DESTDIR}/lib.
 1.4 27-Nov-2003  mrg all `tooldir/nbmake-$ARCH native-binutils' support, to regenerate binutils
configury files for the integrated toolchain.
 1.3 26-Oct-2003  lukem Use ${HOST_SH} instead of `sh'.

If necessary, pull in <bsd.sys.mk> to get the definition of HOST_SH;
Makefiles that pull in one of (most of) <bsd.*.mk> will get this anyway.
 1.2 26-Oct-2003  cl add gdb53 as a host tool for use as a crossgdb
replaces gdb50 from toolchain on archs which use gcc3
 1.1 25-Jul-2003  mrg - build "binutils" and "gcc" separately if USE_TOOLS_TOOLCHAIN is not set
to "yes".
- adjust dbsym/mdsetimage to look in the correct place for libbfd.
- new mknative-gcc based in toolchain/mknative
 1.11.8.1 09-Jan-2008  matt sync with HEAD
 1.21.4.1 07-May-2012  riz branches: 1.21.4.1.2;
Pull up following revision(s) (requested by mrg in ticket #207):
tools/gmp/Makefile: revision 1.2
tools/mpfr/Makefile: revision 1.2
tools/file/Makefile: revision 1.7
tools/binutils/Makefile: revision 1.22
tools/mpc/Makefile: revision 1.2
force ac_cv_path_mkdir to be set to nbinstall -d. this will avoid
gmp/configure from trying to use its install-sh for mkdir -p, and
should fix sourcesets created tarball builds.
force set ac_cv_mkdir_path to our install -d program.
fixes the remaining issues with 'sourcesets' and 'tools'.
 1.21.4.1.2.2 20-Nov-2012  matt Make sure binutils is using sysroot regardless of version.
 1.21.4.1.2.1 20-Nov-2012  matt Support building GPL2 versions of binutils, dbsym, gdb, and mdsetimage
 1.21.2.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.21.2.1 17-Apr-2012  yamt sync with head
 1.22.2.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.25.2.1 04-Nov-2016  pgoyette Sync with HEAD
 1.26.12.3 18-Jan-2019  pgoyette Synch with HEAD
 1.26.12.2 26-Nov-2018  pgoyette Sync with HEAD, resolve a couple of conflicts
 1.26.12.1 02-May-2018  pgoyette Synch with HEAD
 1.26.6.1 05-May-2018  martin Pull up following revision(s) (requested by christos in ticket #796):

tools/mdsetimage/Makefile: revision 1.15
tools/compat/Makefile: revision 1.82
tools/gdb/Makefile: revision 1.35
tools/lorder/Makefile: revision 1.13
tools/gcc/Makefile: revision 1.85
tools/dtc/Makefile: revision 1.3
tools/cvslatest/Makefile: revision 1.2
tools/ctfmerge/Makefile: revision 1.8
tools/libelf/Makefile: revision 1.9
tools/libdwarf/Makefile: revision 1.8
tools/ctfconvert/Makefile: revision 1.7
tools/makekeys/Makefile: revision 1.2
tools/gettext/Makefile: revision 1.7
tools/binstall/Makefile: revision 1.12
tools/libfdt/Makefile: revision 1.3
tools/libctf/Makefile: revision 1.7
tools/binutils/Makefile: revision 1.27
tools/mandoc/Makefile: revision 1.11
tools/Makefile.host: revision 1.32
tools/dbsym/Makefile: revision 1.13
tools/genassym/Makefile: revision 1.7
tools/Makefile.inc: revision 1.14

PR/53238: Robert Elz: Disable MKREPRO in tools; the host compiler might
not support the necessary options. This is done thusly:

1. Set MKREPRO=no in Makefile.host. This handles all the Makefiles that
use it and don't include bsd.own.mk.
2. Create Makefile.inc and set MKREPRO=no in it. Change the Makefiles that
include bsd.own.mk, to include bsd.init.mk which includes Makefile.inc
first. This will also allow us to control other tools options from a
single location if we need to.

XXX: pullup-8
 1.28.2.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.28.2.1 10-Jun-2019  christos Sync with HEAD
 1.38.2.1 02-Aug-2025  perseant Sync with HEAD
 1.16 30-Jun-2024  christos 2.39 - mknative-binutils.old
2.42 - mknative-binutils
 1.15 07-Feb-2023  christos branches: 1.15.2;
remap arm directory names, the same way the source does.
 1.14 24-Dec-2022  christos Adjust for binutils-2.39
 1.13 04-Apr-2020  christos rename libctf to libgnuctf
 1.12 04-Apr-2020  christos Handle libctf new in binutils 2.34
 1.11 08-Nov-2018  christos need global replace
 1.10 07-Nov-2018  christos Adjust for 2.31.1
 1.9 01-Oct-2013  skrll branches: 1.9.24; 1.9.26;
Grab enable_initfini_array from the ld Makefile
 1.8 25-Sep-2011  christos branches: 1.8.2; 1.8.8;
adjust for new gas Makefile
 1.7 09-Nov-2009  skrll Collect the branding information.
 1.6 08-Nov-2009  skrll Update for new binutils location, etc.
 1.5 02-Feb-2006  skrll Create MD libiberty files.
 1.4 10-Dec-2004  mrg fix the sed expression that pulls VPATH out of the makefile to work
with any number of tabs or spaces after the equal sign.
 1.3 04-Dec-2003  mrg move libaries back to gnu/lib
 1.2 27-Nov-2003  mrg move binutils lib{iberty,opcodes,bfd} to usr.bin/binutils.
 1.1 27-Nov-2003  mrg all `tooldir/nbmake-$ARCH native-binutils' support, to regenerate binutils
configury files for the integrated toolchain.
 1.8.8.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.8.2.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.9.26.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.9.26.1 10-Jun-2019  christos Sync with HEAD
 1.9.24.1 26-Nov-2018  pgoyette Sync with HEAD, resolve a couple of conflicts
 1.15.2.1 01-Jul-2024  perseant Sync with HEAD.
 1.3 01-Jul-2024  christos sprinkle .old
 1.2 30-Jun-2024  christos 2.39 - mknative-binutils.old
2.42 - mknative-binutils
 1.1 25-Nov-2023  rin branches: 1.1.2;
tools/binutils: Add support to mknative for binutils.old
 1.1.2.2 02-Aug-2025  perseant Sync with HEAD
 1.1.2.1 01-Jul-2024  perseant Sync with HEAD.

RSS XML Feed