Commit Graph

1191 Commits

Author SHA1 Message Date
christos 8283eb918f add strtoi strtou (Kamil Rytarowski) 2015-01-18 18:09:10 +00:00
christos ee9a7d9469 we have lto... 2015-01-16 20:10:26 +00:00
christos 17972cafc9 regen 2015-01-16 18:44:31 +00:00
christos b89ab6e264 strto{i,u} 2015-01-16 18:44:06 +00:00
skrll b4b886e5d8 Fix gcc PR target/64479 [SH] wrong optimization delayed-branch 2015-01-15 08:42:14 +00:00
joerg 72e6048ca0 Reorganise the way xorg is build. Move build of makestrs into src/tools
as it is needed for the "includes" phase. Make it symlink all necessary
headers in obj to decouple it from "includes" itself, breaking the
dependency cycle. Move the do-x11 target between do-lib and do-build, so
that libraries can get the benefit of build_install (correct .WAIT
behavior) and everything else like "includes" uses the plain SUBDIR
entry in external/mit.
2015-01-07 20:42:01 +00:00
joerg 025900ca94 cleandir-llvm should not exist in the filesystem 2015-01-05 18:41:59 +00:00
apb 5ffb287e29 Update documentation about tools being restricted to C89 (or not).
It's not practical for the C89 restriction to be maintained for
compilers, but it is still desirable for most tools.  The "long long"
data type is in wide use despite not being in C89.  C99 library features
(as opposed to language features) can often be added to the compat
framework when the need becomes apparent.
2015-01-03 13:20:11 +00:00
christos 1741549da9 add __UNVOLATILE 2014-12-24 16:18:46 +00:00
christos acfd168486 remove unused constants (Kamil Rytarowski) 2014-12-22 18:08:39 +00:00
pooka 6c078a85f6 build genassym for TOOLS_BUILDRUMP 2014-12-05 01:50:47 +00:00
mrg e4e7131a68 use --disable-shared on m68000 for mknative. 2014-11-22 19:41:27 +00:00
joerg 706f66c9f4 If the internals are not explicitly requested, use #include_next to pick
up the system version. <locale> from libc++ requires this and is used by
src/tools/elftosb2.
2014-11-12 15:08:52 +00:00
skrll d5fd623ace Note new date for version - this is the import date. 2014-10-20 08:37:30 +00:00
mrg c1ff61510d add --enable-libstdcxx-time=rt for the GCC 4.8 build. 2014-10-10 20:23:22 +00:00
christos 0fe1d114cc add gpt 2014-09-30 19:38:25 +00:00
christos 92e39ddd46 now gpt works under macosx. 2014-09-30 18:00:28 +00:00
apb 8c50b72e75 Say that tools should use C89, not C99; Say that tools may use
HAVE_NBTOOL_CONFIG_H to conditionally exclude features.  Many
other small changes.
2014-09-30 07:34:50 +00:00
christos 0097d76426 add opendisk 2014-09-29 21:05:11 +00:00
christos fe3105d7f6 Not ready for prime time, needs at least proplib. 2014-09-29 20:29:44 +00:00
apb 3512e573be It is usually easy to add new definitions to src/tools/compat, and that
is usually better than adding compatibility definitions to individual
tools.
2014-09-24 16:17:39 +00:00
christos 1ffd7c80d4 put O_CLOEXEC definition here. 2014-09-24 13:17:35 +00:00
matt 58bfd92e80 Add sys/arch/riscv. 2014-09-19 17:30:13 +00:00
christos 17d648a1fc Fix problem reading the last line when it did not contain a delimiter
(Hubert Garavel)
2014-09-16 17:23:50 +00:00
martin 5621a8b94e Avoid overflowing the "year" value by making the field uint64_t. Adapt
arguments and local variables accordingly.
This now fixes PR 49144 for real.
2014-09-07 11:50:23 +00:00
matt e1c4f892b5 or1k does not support --with-float 2014-09-03 19:25:29 +00:00
matt 667791d88d Add or1k 2014-09-03 19:24:52 +00:00
apb 893aa1d4bf Add tools/README, to collect hints like how to use
.if defined(HOSTPROG)

and

#if HAVE_NBTOOL_CONFIG_H
#include "nbtool_config.h"
#endif /* HAVE_NBTOOL_CONFIG_H */
2014-09-01 13:50:15 +00:00
apb 20e1ccfe27 Copy definitions of __type_min(t), __type_max(t), and some related macros,
from <sys/cdefs.h>, for use when building tools.
2014-09-01 11:20:06 +00:00
martin d67a8a7def Add a slightly stripped down version of sys/dev/clock/clock_subr.h to make
this code available for tools.
2014-09-01 07:48:16 +00:00
christos 2b177d3981 switch to the new gmake 2014-08-18 06:58:51 +00:00
joerg f14316bcbc Update build glue for LLVM/Clang 3.6svn r215315. Changes include various
performance improvements across all backends and a much improved PPC32
backend.
2014-08-10 17:32:54 +00:00
matt 547b3a3b01 Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only.  While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.
2014-08-10 05:56:36 +00:00
christos 786e78dabb use host rules for files. 2014-07-15 16:04:35 +00:00
christos 86eb29ab38 descend to vgrind 2014-07-15 13:19:44 +00:00
christos 373bce115f build glue 2014-07-15 13:19:13 +00:00
pooka bb567b2891 Add cat, rpcgen and stat to TOOLS_BUILDRUMP. They're useful for
installing headers for the app stack cases that need it done, and small
enough to not matter for the kernel-only cases that don't.
2014-06-15 14:36:57 +00:00
mrg ac641cb906 remove remaining makefile support for GCC < 45 that i found. 2014-06-14 20:49:36 +00:00
christos 453a5cc5a8 Deal with errc/warnc 2014-06-06 01:40:40 +00:00
joerg b1bb3099bf Update build system for LLVM/Clang snapshot r209886. This brings in the
merged AArch64 backend and the move of eARM to DWARF exception handling
for NetBSD. C++11 is required for building.
2014-05-30 18:28:13 +00:00
skrll bca753667d Don't grab libstdc++-v3/config.h it's not used. 2014-05-29 16:27:50 +00:00
mrg 955b6c1f27 commonize the netbsd local version string. (the native one wasn't
updated, and now that won't be a problem again.)
2014-05-29 07:40:37 +00:00
mrg f6968e3347 two fixes skrll@ pointed out:
- pass --enable-libstdcxx-threads to enable a bunch of tests and thus
  get the right answers
- MKNATIVE_CONFIG_TARGET_LIBS needs to do libgcc before libstdc++-v3,
  for the GCC 4.8 case.

with these we now get the right threading options in the headers.
2014-05-28 07:32:22 +00:00
skrll e0000582f3 Update with-pkgversion date for gcc 4.8.3 import. 2014-05-27 09:19:30 +00:00
joerg 61731496eb Retire USE_COMPILERCRTSTUFF=yes. 2014-04-22 13:20:58 +00:00
apb e9ba37c365 Clarify the NetBSD-specific and Linux-specific code at the top of
compat_defs.h:

* Explain why _NETBSD_SOURCE should not be defined on NetBSD.
* Move NetBSD-specific block to the top of the file.
* Improve comment about Linux <feature.h>.
* Move #undef _POSIX_SOURCE and #undef _POSIX_C_SOURCE to the
  Linux-specific block instead of a place that would affect all
  non-NetBSD platforms.  This makes the code match the comment.

This will need to be re-visited if other platforms also need
#undef _POSIX_SOURCE or #undef _POSIX_C_SOURCE.  At present, I suspect
that they are needed only for Linux.
2014-04-19 19:01:08 +00:00
riastradh 7410f91473 ctfconvert/ctfmerge need libdwarf &c., so build them if MKCTF=yes. 2014-04-03 18:23:38 +00:00
martin aad6ef8bb5 Bring back the playstation2 port - now that a toolchain for it is
available again.
2014-03-31 11:25:47 +00:00
ozaki-r 1339b2cc13 Add MKCTF
This variable separates CTF stuffs from MKDTRACE; we can build DTrace
solely without building and using them. This allows us to use DTrace
even if CTF stuffs have problems (actually they have now).

This variable would be merged into MKDTRACE eventually, once CTF stuffs
work correctly again.
2014-03-25 09:52:55 +00:00
christos c20b670602 switch to the new libelf and libdwarf 2014-03-09 17:12:03 +00:00
christos 9b48ab4fda switch to the new libdwarf 2014-03-09 17:10:38 +00:00
christos 482608c0a5 switch to the new libelf 2014-03-09 17:10:12 +00:00
mrg 4e43797c9f don't collect gthr-default.h anymore. 2014-03-02 04:58:20 +00:00
mrg 4501ec6885 don't collect c++allocator.h. we copy it via G_ALLOCATOR_H we've
already pulled out, and the extra copy can confuse make when it
has an older timestamp than the copy in dist/libstdc++-v3/.
2014-03-02 03:17:14 +00:00
mrg b53d27fc90 define GCCDIST properly for GCC 4.1, and since it is now the same
as GCCSRCDIR remove the latter.
2014-02-27 20:15:53 +00:00
matt c265e52e42 To build elftosb with clang++, it needs more than nl_types.h provides.
XXX to workaround with, if compiling on __NetBSD__ just include the real
nl_types.h
2014-02-27 01:07:52 +00:00
mrg afa90f2bf5 prepare for moving GCC 4.5 into gcc.old:
- convert to using ${EXTERNAL_GCC_SUBDIR}
- define base-external-gpl3-gcc* subdir as GCC_SUBDIR
- use <bsd.init.mk> over <bsd.own.mk> for a bunch of places; mostly
  because it arranges for ../Makefile.inc to be included earlier, and
  don't bother including the latter if the former is already included.
- move all .PATH: settings after <bsd.{own,lib}.mk> so that all
  valid variables are set before it is evaluated
- rename mknative-gcc* to match their subdir name.

XXX the relationship between the Makefile.inc/Makefile.gcc_path files
    is kind of sketchy, it would be great if this was fixed.
2014-02-26 09:54:32 +00:00
skrll 6d3ceb1d61 Rename NetBSD/hp700 to NetBSD/hppa.
Unfortunately our VCS isn't very helpful here.
2014-02-24 07:23:38 +00:00
christos eff9fc76a8 put back some cppflags we lost. 2014-02-18 01:34:18 +00:00
christos 8140d3b7fb Merge gcc-4.8 mknative bits. 2014-02-17 21:39:43 +00:00
skrll 9897c7a624 The mpfr sources moved down into a src directory - deal with this in
mknative.
2014-02-16 11:26:31 +00:00
tsutsui 11b13dddf7 No need to specify ${.OBJDIR} for target files.
It rather fails if MKHOSTOBJ=yes.
2014-02-15 13:34:28 +00:00
joerg 1df17bf6cf 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.
2014-01-29 23:35:13 +00:00
christos 3f604fd430 Add the {v,}{err,warn}c functions 2014-01-16 17:24:56 +00:00
matt 4783f46508 Pass HOST_CXX to llvm configure as CXX=${HOST_CXX:Q} since llvm wants c++
more than cc.
2014-01-16 09:00:55 +00:00
christos 2b043c75b6 eliminate use of bsd.sys.mk from Makefiles 2014-01-16 01:15:32 +00:00
joerg dd255ccea4 Update build glue for LLVM/Clang 3.5svn r199312. Noticable changes
include bug fixes for the loop vectorizer, initial work for assembler
parser/disassembler on SPARC, improvements to ARM assembler and .code16
support on x86.
2014-01-15 22:21:33 +00:00
apb d74d486617 fix prototype for strnlen. 2014-01-09 16:08:46 +00:00
apb c9b2ee2cd1 Declare and define strnlen if necessary. 2014-01-09 11:31:12 +00:00
apb 5318071613 regen 2014-01-09 11:27:31 +00:00
apb fd3f18ac6d Add strnlen to configure tests in tools/compat 2014-01-09 11:26:58 +00:00
joerg 66153a214b Update build system and import script for mdocml 1.12.3. 2014-01-05 19:49:57 +00:00
joerg 6d322f2f45 Update LLVM family to 3.5svn r198450. Interesting changes include:
- Improvements in the SPARC64 support
- ARM backend can almost build a full NetBSD/EABI system with the
  integrated assembler
- PowerPC grows disassembler support
- LLD supports copy relocation, beginning of MIPS backend
- New diagnostic for use of bool expression as size_t argument for
  strncmp and friends
2014-01-05 16:38:05 +00:00
dsl 7c4ad3905a Remove the borked definition of ELF64_Shalf from some more places.
Remove the _KERNEL parts of some clones of sys/elf_exec.h
One might ask why this file has got cloned so many times.
2014-01-03 16:50:54 +00:00
joerg aceb213538 Allow kernel code to access constant databases by moving cdbr(3) and the
required mi_vector_hash(3) into src/common.
2013-12-11 01:24:08 +00:00
mrg 75219f3a01 update to MPC 1.0.1. 2013-11-28 12:08:56 +00:00
apb 3c49568a05 Define __USE for use during a tools build. 2013-10-24 13:59:47 +00:00
skrll 28fd2e75c0 Improve wording and remove typos 2013-10-21 09:02:08 +00:00
skrll c31e8e667f Move the GNUHOSTDIST assignment back to the top of the Makefile. 2013-10-21 08:59:29 +00:00
skrll 2143de4353 Group the mknative stuff together - no functional change 2013-10-20 17:12:23 +00:00
skrll 739e5cb01a g/c VAX_CONFIGURE_ARGS 2013-10-20 17:10:15 +00:00
skrll e0d4b1e3bf Make sure gmake is quiet when grabbing variables. 2013-10-20 16:00:20 +00:00
skrll 02cb02f748 Deleted 1 line too many in previous commit. 2013-10-20 14:55:28 +00:00
skrll cc4d923295 g/c gcc3 goop 2013-10-20 14:14:18 +00:00
christos ff5462c4ef more files needed 2013-10-03 18:58:37 +00:00
skrll 41c37f737d Grab enable_initfini_array from the ld Makefile 2013-10-01 15:41:17 +00:00
joerg 6c440ed37c Update LLVM/Clang snapshot to r189662. This includes many improvements
to the new SLP vectorizer, fast codegen support for PPC and using
terminfo for the color sequences. In addition, add (optional) build
infrastructure for lld to allow easier testing. This is controlled by
MKLLD.
2013-09-02 14:34:55 +00:00
joerg 6bc52dcb42 Preserve -std=* options as they may change the dependency list. 2013-09-02 08:37:11 +00:00
joerg 4879d4747d Support __format_arg. 2013-08-18 20:48:17 +00:00
gsutre f5edbcbeb8 Use makeinfo built from src/tools/texinfo. Fixes PR toolchain/48123.
ok apb@
2013-08-16 10:29:32 +00:00
jmcneill 7184d9f2f5 regen 2013-08-14 10:15:14 +00:00
jmcneill 6d54013fc1 add test for struct tm tm_gmtoff member 2013-08-14 10:14:45 +00:00
drochner 86d6df49cc pass HOST_SH to the build, to keep it from picking up a "bash"
from $PATH
2013-08-13 20:41:25 +00:00
jmcneill b54c1c7c33 regen 2013-08-09 20:13:21 +00:00
jmcneill a46673afc5 makefs_udf uses clock_gettime, and on some versions of linux that lives in librt 2013-08-09 20:12:38 +00:00
apb b042dd28fe Revert previous change to tools/Makefile.gnuhost. When getenv("M4")
contains multiple words, flex fails.

Adjust tools/autoconf/Makefile to pass the necessary extra arguments via
M4=... in CONFIGURE_ENV.  This is similar to what used to be in
revision 1.4 of tools/autoconf/Makefile, but it's now after instead of
before the inclusion of Makefile.gnuhost, because it has to override the
value of M4=...  that Makefile.gnuhost stores in CONFIGURE_ENV.
2013-08-07 17:50:55 +00:00
apb 1f64f4d863 Compile snprintb.c into libnbcompat. The source file is found in the
common/lib/libutil directory.
2013-08-06 22:04:25 +00:00
apb 0c6780a550 declare snptintb_m() and snprintb() if HAVE_SNPRINTB is not defined. 2013-08-06 21:58:46 +00:00
apb 2ee0f9ee2f regen, to pick up the test for snprintb_m. 2013-08-06 21:56:36 +00:00
apb e39e332c37 Add a configure test for snprintb_m. We will assume that
the rpesence of snprintb_m implies the presence of snprintb.
2013-08-06 21:50:19 +00:00
apb 7788a0781f Add the "-g -D__gnu__" flags when invoking M4 via CONFIGURE_ARGS
in tools/Makefile.gnuhost.  This makes the tools version of m4
behave like GNU m4.

Remove similar code from tools/autoconf/Makefile, where it didn't
work because Makefile.gnuhost would previously have overridden it.

This fixes a problem in which the tools version of autoconf complained
"M4sugar requires GNU M4.
Install it before installing M4sugar or set the M4 environment variable to its path name."
2013-08-06 21:47:01 +00:00
christos 78da6e3986 revert socklen_t to int (from dh) 2013-07-20 10:31:19 +00:00
matt 2d336eb8bb Even if we aren't making a crossgdb still make the object dir for it. 2013-07-19 20:58:58 +00:00
christos b865eeeb70 PR/48063: Justin Cormack: incorrect definition of socklen_t 2013-07-19 12:00:30 +00:00
pooka 39da3b933c regen
(XXX: I don't think these files were previously regen'd with the
method documented in configure.ac, and therefore the diffs are now huge)
2013-07-19 11:06:37 +00:00
pooka 0cf7fed87e Fix some tests for musl libc -based systems.
from Justin Cormack and Jens Staal
2013-07-19 10:53:20 +00:00
matt c9855651f8 Add stub port for evbcf which has enough to do a distribution build. 2013-07-18 22:08:59 +00:00
matt 86b93a01b2 m68k doesn't support with-float=soft 2013-07-18 22:00:48 +00:00
joerg 25c7cbb1ed Update LLVM/Clang to snapshot r185778. This brings in a lot of work on
integrated-assembler support on PowerPC as well as support for
compressed DWARF sections in some tools.
2013-07-07 21:36:42 +00:00
mrg 9b70ac591a pass both NEWCONFIGDIR and NETBSDSRCDIR to mknative-gcc. 2013-06-28 08:30:10 +00:00
mrg bbbc9a7e3c use NETBSDSRCDIR to find mpc/mpfr/gmp, not NEWCONFIGDIR, the
latter which is for finding a r/w directory to write to if
we're running from a read-only tree.
2013-06-27 02:38:39 +00:00
tsutsui ccf0f70064 Invoke tools/binstall/mkmanifest for Cygwin via ${HOST_SH}.
Fixes builds using source sets that drop executable bits.
2013-06-14 16:10:02 +00:00
joerg c7c727fae8 Update LLVM/Clang snapshot to r182734. Brings initial support for
integrated PowerPC assembler.
2013-05-28 17:37:33 +00:00
skrll e960d69d35 Create a sanitise_includes function and use it everywhere it's needed. 2013-05-05 07:11:34 +00:00
matt af8f0546ca Make disklabel a MI tool. It will use MACHINE/MACHINE_ARCH to determine
the disklabel params as well as allowing command-line options of -M <machine>
and -B {le,be} to specify MACHINE and byteorder to be used.
2013-05-03 16:05:11 +00:00
kiyohara 4aba7d3a0d Support to build for epoc32 userland. 2013-05-01 13:11:59 +00:00
skrll e75ab118f0 Avoid populating mknative output with gmp,mpfr, and mpc source
directories
2013-04-25 16:18:43 +00:00
joerg af56d1fe99 Update LLVM/Clang snapshot to r180004. This brings in the last pieces of
C++11 support in Clang as well as initial SPARC64 support.
2013-04-25 13:59:54 +00:00
skrll 3aad465ab1 Use --with-{mpc,mpfr,gmp}-{lib,include} to avoid the LIBISPRIVATE=no
dance in mknative and avoid poluting the DESTDIR.

Update the README to reflect this.
2013-04-18 05:20:00 +00:00
uwe a94dff73a7 Some shells have ((expr)) syntax for arithmetic. Add space between
parens of nested (compound-list)s to unconfuse them.

Fixes PR toolchain/47695
2013-03-27 01:03:39 +00:00
christos 747508ddb1 no man pages for tools build. 2013-03-16 22:32:50 +00:00
christos 0cbc48b3cf Put back error checking in a simpler form thanks to uwe 2013-03-16 02:51:56 +00:00
christos 64e869fe87 Fix the real problem, Makefile.host was included before the HOST_MKDEP
setup so it prevented correct CPPFLAGS from being used.
2013-03-16 02:51:25 +00:00
joerg 8f7ae0d2ba Revert 1.25 and 1.26: Breaks build on !NetBSD 2013-03-14 14:55:35 +00:00
christos 93b2a5c31b re-directing once is good enough. 2013-03-12 01:55:33 +00:00
christos 2bc1b2d373 not a good place to include "nbtool_config.h" 2013-03-12 01:52:55 +00:00
christos 621c21b80f Perform shell fd gymnastics to capture the error in the pipeline and exit. 2013-03-12 01:52:20 +00:00
apb 79f461b52c Prevent the tools/gettext build from trying to run emacs. 2013-03-06 14:34:01 +00:00
christos aa85cedebf don't leak on error. 2013-03-05 16:29:09 +00:00
christos 1cf655fddf regen 2013-03-05 16:28:06 +00:00
christos 8fdd0859f5 add dprintf 2013-03-05 16:26:41 +00:00
christos e2a59201c6 account for -vi 2013-03-05 03:06:21 +00:00
joerg db135d737c Add infrastructure for building MCLinker. 2013-02-27 21:25:05 +00:00
joerg 763d7bc79a Work-around for python detection in LLVM's configure script 2013-02-20 14:13:31 +00:00
joerg 4a5bd22048 Replace NETBSDSRCDIR with .PARSEDIR based logic here. bsd.own.mk is
included too early in the tools build, but not including it fails for
standalaone builds.
2013-02-19 18:02:41 +00:00
joerg c1d816d5fd Update LLVM/Clang snapshot to r175373. This improves GNU as
compatibility.
2013-02-19 12:35:41 +00:00
joerg 6936a0d356 Explicitly include bsd.own.mk to allow building without tool make. 2013-02-18 20:30:16 +00:00
christos 8c8d8c331c Arrange for manifest 2013-02-17 01:47:59 +00:00
christos 6a49e1d8c8 Create a manifest on windows if the filename requires it, so that it does
not need UAC to execute.
2013-02-17 00:36:40 +00:00
christos ce5eed14bf regen 2013-02-17 00:34:35 +00:00
christos 1fb8dbfe71 cygwin defines u_quad_t in <rpc/types.h>, so include this to the headers
we include and test by default.
2013-02-17 00:34:11 +00:00
christos e382023f82 - Provide HOSTEXEEXT if NOCOMPATLIB
- merge a variable for readability and add an exe suffix where needed.
2013-02-17 00:32:42 +00:00
christos af9a2d00d7 yes, but include the right file 2013-02-07 20:31:52 +00:00
christos fb6d072e45 add shaX and rmd160 headers, same as mdX 2013-02-07 20:30:29 +00:00
christos a5cb6d21a6 Don't create a crippled mtree with no hashes. We have hash support in
libcompat, use it. If that breaks cross-compilation, we'll fix it.
2013-02-06 01:01:48 +00:00
matt 3ba56103bd There are other little endian arm machine_arches other than "arm"
Use MACHINE_CPU and TARGET_ENDIANNESS instead of MACHINE_ARCH
2013-02-05 07:27:02 +00:00
joerg 96fc3e30a7 Update to LLVM/Clang snapshot r174288. This brings in the new AArch64
backend as well as an import bug fix for pointer compare optimisations.
2013-02-04 15:00:31 +00:00
pooka dc7c452845 Use TOOLS_BUILDRUMP=yes to restrict building of tools to those required
for building rump kernels.  This cuts down the NetBSD source tree required
by buildrump.sh to a fraction and addresses a size/download time concern
from a person packaging rump kernels for Linux.

No change to the normal case (tested with several -j32/-j64 builds).

reviewed by apb
2013-01-31 15:22:50 +00:00
riastradh 33d53fbdf3 Set NOMAN before including <bsd.own.mk> to really fix PR 47500.
(Hi, christos.)
2013-01-27 19:21:12 +00:00
christos 4d8260de85 links for makefs 2013-01-26 16:52:43 +00:00