Commit Graph

1320 Commits

Author SHA1 Message Date
joerg 76c7fc5f6b Update LLVM to 10.0.0git (01f3a59fb3e2542fce74c768718f594d0debd0da) 2019-11-11 22:44:56 +00:00
mrg 500cd05674 add something to auto-detect when GCC has changed from gcc to gcc.old
or back and auto-cleandir tools/gcc.

based upon the code for PREVIOUSTOOLDIR in tools/Makefile.
2019-11-06 07:26:31 +00:00
joerg ba48f7312c Don't escape ", GNU awk 5 warns about it. 2019-10-29 23:33:06 +00:00
christos eba0817981 arm needs more files 2019-10-24 03:19:14 +00:00
mrg 55a26eb0f8 copy arm-cpu.h and arm-isa.h for arm platforms. 2019-10-16 06:57:24 +00:00
mrg 647857abb4 remove HAVE_GCC == 6 support, add HAVE_GCC == 8 support 2019-09-30 08:40:20 +00:00
bad e768752f39 Exclude more subdirs if TOOLS_BUILDRUMP=yes.
Exclude subdirs added in the last 3 years but not need for rumpkernel builds.
2019-09-26 09:21:34 +00:00
maya da2c419ac4 Fix bugurl. PR toolchain/48712 2019-09-09 13:57:13 +00:00
hannken 8d122c4997 Bring back two lines deleted by accident. From Kamil Rytarowski. 2019-06-22 14:40:33 +00:00
hannken aa8b5122a1 Update tools/compat/configure for new path of "rpc/types.h".
Remove intermediate patch from rpcgen/Makefile.

Patch from Nick Hudson, errors from me.
2019-06-22 13:42:53 +00:00
kamil 8ce1514e5e Instruct tools/rpcgen about new path for rpc headers
Fixes build on Gentoo.
2019-06-21 14:56:39 +00:00
maya 874624a318 Update to working instructions.
thx mrg for the build_install suggestion.
2019-06-21 07:05:02 +00:00
kamil 80b70339c3 regen tools/compat 2019-06-19 23:35:55 +00:00
kamil 08fadea744 Add more SunOS types to tools/compat
Add fallback defintions of: uchar_t, ushort_t, uint_t, ulong_t.

Needed by the libctf code on Ubuntu 16.x.
2019-06-19 23:33:07 +00:00
kamil 1c06c1fef3 Add sys/uio.h & enum uio_seg, enum uio_rw to tools/compat
This is needed for bootstrapping the tools on Ubuntu 16.x.
2019-06-19 03:40:15 +00:00
christos d299b579b0 force libexpat since the autoconfig test are not cross-compile friendly
(they try to link with /usr/lib/libexpat.so in the compiler invocation).
2019-06-02 23:28:32 +00:00
christos b077f17d15 Disable mpfr to make MKCROSSGDB work again. The problem is that the default
(auto) finds the mpfr library in tools, but then when it tries to build using
the proper headers it does not find it anymore since we don't install it
(like the native build does not find it).
2019-06-01 17:02:59 +00:00
christos dad3d2d152 adjust for gdb-8.3 2019-05-29 01:56:06 +00:00
christos 2e45e8b5fb sync with arm. 2019-05-20 18:24:57 +00:00
christos 4f16751b14 sync with latest. 2019-05-19 04:09:22 +00:00
nakayama 43b52312c6 Use ${_TOOL_PREFIX} instead of hardcoding "nb" for consistency. 2019-05-17 13:51:36 +00:00
nakayama 0015932b89 Revert previous.
The binaries created are different, but according to joerg@ there
is no difference in functionality.
2019-05-17 13:44:55 +00:00
nakayama 95541573e2 Rename nb{clang,llvm}-tblgen to ${MACHINE_GNU_PLATFORM}-{clang,llvm}-tblgen
since they contain the default target (e.g. x86_64--netbsd).
2019-05-16 20:00:49 +00:00
thorpej 8319f966d5 Fix building libprop as a host tool library on platforms that don't have
the Matt Thomas rbtree:

- Include rb.c in libnbcompat, and provide a nbcompat sys/rbtree.h
  header.
- Make sure libprop's source file include prop_object_impl.h before
  anything else, and pull in nbtool_config.h from there.

Tested by simulating such a host system by renaming the host's
<sys/rbtree.h> out of the way (which reproduced the build failure)
and verifying that the host-tool installboot contained the rb_*
functions in its own .text segment.
2019-05-08 02:25:50 +00:00
hannken 7ccc083a7e Fix build, "pax" must be built before "libprop".
Ok: Matthew Green mrg@
2019-05-07 10:22:54 +00:00
thorpej 02d67d1066 Add installboot(8) support for evbarm (and, in the future, other evb*)
boards that use u-boot.  A known board database lists boards and their
respective u-boot packages.  u-boot packages are discovered at run-time
(in /usr/pkg/share/u-boot, by default).  These packages contain board
database overlays that describe u-boot installation procedure that's
specific for that board.

Support this as a native tool and as a host tool.  The native tool
will attempt to determine the running board type using OpenFirmware
calls.  Host tool and native tool alike may also specify a board type
directly using the "-o board=xxx option" or have installboot(8) determine
the board type from a device tree blob using "-o dtb=/path/to/board.dtb".
A "-o media=xxx" option is provided for boards that have different u-boot
binaries and/or installation procedures for different media types (e.g.
SDMMC, eMMC, or USB).

This is trivial to extend to other evb* platforms that use u-boot, even if
they don't use FDT for autoconfiguration.
2019-05-07 05:02:41 +00:00
thorpej d380747e98 Add support for libprop as a host tool library. 2019-05-07 04:29:45 +00:00
joerg 0a0d40923d Add MKLLVMRT to build a subset of the LLVM stack for JIT purposes.
Hook up AMDGPU backend for clang.
2019-04-03 15:21:58 +00:00
joerg 0b0ec14911 Undo tools part of the AMDGPU changes for LLVM. 2019-04-03 15:15:16 +00:00
joerg da48f03c8a Revert MKLLVMCMDS changes. 2019-04-03 15:12:44 +00:00
mrg 18e2edb50a split MKLLVM into MKLLVM and MKLLVMCMDS, like MKGCC and MKGCCCMDS:
- only build clang or clang-tblgen if MKLLVMCMDS != "no"
- move HAVE_MESA_VER earlier so we can detect mesa 18 and enable
  MKLLVM on platforms that need it
- move the clang commands and headers into llvmcmds group
- only build the clang specific LLVM libraries if MKLLVMCMDS != "no"

much of this work came from maya@'s github commit
f90685c11d4460d3098fa35f48b58d1893e974e0, reworked for HAVE_MESA_VER
and llvmcmds vs MKCLANG.


build tested on several platforms and on amd64 and i386 with several
different build options (clang build, gcc build, gcc build with llvm
libs).
2019-03-20 22:51:37 +00:00
mrg e5309b49fe bump libstdc++.so.
unfortunately, we attempted to do this for netbsd-8 but we did
not actually end up having any ABI incompatibility with that,
as turning off dual ABI in libstdc++ means *only* enabling the
old ABI.  however, enabling dual ABI with C11 defaults (ie,
a forward looking ABI) *is* an ABI-change for some special
cases and thus we should have bumped this a couple of weeks
ago when we re-enabled dual ABI.

call this "nb3 20190319".

mknative-gcc regen all switched ports and almost all of the
unswitched ports.
2019-03-20 05:09:26 +00:00
mrg 44d3eb23e0 enable the workarounds for cortex a53 errata 835769 and 843419 by default. 2019-03-19 05:55:00 +00:00
mrg 5e9cdbeac0 add most of the AMDGPU target makefiles and stuff that don't
touch the build.  this comes from:

commit f90685c11d4460d3098fa35f48b58d1893e974e0
Author: Maya Rashish <maya@NetBSD.org>
Date:   Sat Feb 23 09:46:14 2019 +0200

    Separate MKCLANG from MKLLVM.

    build LLVM libraries as PIC.
    Add AMDGPU target, and adjust tools accordingly.
2019-03-10 12:14:05 +00:00
mrg 58612d4540 also bump the X in "nbX" with previous 2019-02-27 09:11:01 +00:00
mrg 194a5ab70b bump netbsd gcc version date. 2019-02-27 09:10:38 +00:00
christos 5a888a1653 Remove "--disable-libstdcxx-dual-abi". This option does not do what
it says: Instead of disabling the dual-abi and letting you choose
which one you want, it disables the cxx11 abi and the
"--with-default-libstdcxx-abi=OPTION" becomes a noop. Removing the
old COW compatibility ABI is not easy. For more info see:

https://gcc.gnu.org/onlinedocs/libstdc++/manual/configure.html
https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html
2019-02-26 21:09:18 +00:00
mrg c8eaee5359 pull out libstdc++ config.h as-is, for gnu.ver processing.
pull out the cxx11_sources and cxx98_sources values to avoid hard coding.
2019-02-23 06:54:45 +00:00
mrg f1ac420a3d don't pass --disable-symver to mknative configure. this turns off
the checking for gcc 4.6 and some exception handling routines which
we need on several platforms.

this should fix missing symbol issues seen on current-users.
2019-02-17 00:22:53 +00:00
mrg bbaa4a4045 - build the gthr*.h files to be installed on the fly, instead of
having dozens of copies of the same thing in the tree.
- don't fetch any gthr*.h files.
- delete ancient gthr-tpf.h that was removed in GCC 4.8 or so.

this should fix the call_once tests for real now.
2019-02-09 03:57:00 +00:00
mrg 8d23280937 common-target source list is MD. make it so. 2019-02-04 01:46:59 +00:00
mrg 6f6cffb259 - don't getlinks here, they're no longer used.
- pullout the libcommon, libcommon-target and libgomp source list so they
  don't have to be hard coded in the reachover makefile
2019-02-04 00:55:26 +00:00
mrg 8ffe98c170 add || true to the gthr-default.h copy, it can fail first time around 2019-02-03 11:57:25 +00:00
mrg b42a39b7de - use --with-default-libstdcxx-abi=new for GCC, otherwise we get the
old ABI with --disable-libstdcxx-dual-abi
- fix libbacktrace mknative
- find gthr-default.h for libstdc++ mknative
- fetch FILESYSTEM_SOURCES
2019-02-01 09:27:23 +00:00
dholland 891635253f fix duplicated chunk from merge 2019-01-27 05:16:10 +00:00
dholland 4c5da2b349 Restore comment accidentally lost in merge. 2019-01-27 05:15:32 +00:00
pgoyette d91f98a871 Merge the [pgoyette-compat] branch 2019-01-27 02:08:33 +00:00
mrg cba7a6aaf9 make includes works now.
pull out more data needed for headers and fix gthr-defaults.h.

libgcc_s has multiple symbols.
2019-01-19 20:02:06 +00:00
mrg e521445bd8 also pull out these variables:
enable_execute_stack
	unwind_header
	md_unwind_header
	sfp_machine_header
	thread_header
2019-01-19 17:08:39 +00:00
mrg 0b4f44e237 obsolete gcc 5 support.
add gcc 7 support.  call it "nb1 20190119"
2019-01-19 12:58:37 +00:00