Commit Graph

1143 Commits

Author SHA1 Message Date
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
christos
136bcc39cf Pr/47500: Henning Petersen: Don't install man pages for tools 2013-01-24 13:35:52 +00:00
joerg
fa9d9d71df Update LLVM/Clang snapshot to r172366. Catch up with the move past 3.2
release.
2013-01-23 15:02:52 +00:00
christos
af7d92d457 add new file 2013-01-17 22:25:36 +00:00
martin
db54b43cab Note MKRUMP=no and the need to specify HAVE_GCC= explicitly when using
MKGCC=no. Also point at but number 47353.
2012-12-26 19:11:27 +00:00
apb
e3b7b9c4cd If you are going to append things to CPPFLAGS and then transfer
the result to HOST_CPPFLAGS later, then also include the value of
HOST_CPPFLAGS in this process.  This should fix a problem in which the
value of HOST_CPPFLAGS set by compat/defs.mk was lost during a build
with MKDTRACE=yes.

XXX: It would probably be better to just use HOST_CPPFLAGS throughout.
2012-12-16 06:47:39 +00:00
christos
af8c5897ad first define HOSTLIB and then include bsd.own.mk! 2012-12-10 00:34:56 +00:00
christos
5641345b31 forgetting to shift turns this into a cpu burner. 2012-12-09 23:53:39 +00:00
christos
810857e2ff ignore --sysroot=/ 2012-12-09 23:42:16 +00:00
christos
568b7e7cb5 restore the find loop to include files generated by configure 2012-12-09 23:18:30 +00:00
christos
6e077d2764 handle the list of files and directories generated dynamically by configure 2012-12-09 21:48:04 +00:00
christos
df81d8d522 make this work 2012-12-09 19:15:48 +00:00
christos
c3a3a89834 Include <bsd.own.mk> to give a chance to ${TOOLDIR} to be defined before
using it in rules. Before there was another .mk file included before ${TOOLDIR}
was used.
2012-12-09 18:08:08 +00:00
apb
b45c93d77d Use a "find | while read" loop to install all *.h files anywhere
under ${.OBJDIR}/include, and remove the previous hack of touching a
"dummy" file in each subdirectory.  This should fix a problem on some
platforms where include files directly under ${.OBJDIR}/include (not in
a subdirectory) were not installed.
2012-12-09 15:22:54 +00:00
apb
15a61bc010 Change the default value of COMPATLIB_UNINSTALLED to no, now that
all users of comapt/defs.mk have been adjusted.  This is the last
commit related to fixing PR 47188.
2012-12-02 13:05:14 +00:00
apb
e0d2aa9d82 Make most things under src/tools use the TOOLDIR version of compat/defs.mk,
instead of the version in the .OBJDIR of tools/compat.
2012-12-02 12:48:32 +00:00
apb
a2542bc740 Now that tools/Makefile builds tools/binstall before installing
tools/host-mkdep, we can use the newly-built install program
to install host-mkdep.
2012-12-02 12:44:06 +00:00
apb
f996a13f4f In tools/binstall/Makefile, explicitly use the uninstalled copy
of libnbcompat, not the version that's installed under TOOLDIR.
2012-12-02 12:39:55 +00:00
apb
d4a6601b30 Add two variables to tools/compat/defs.mk.in:
COMPATLIB_UNINSTALLED:
		If "yes", then use the files from the .OBJDIR of
		NETBSDSRCDIR/tools/compat.  Otherwise, use the files
		from TOOLDIR.

COMPATLIB_NO_LIB:
		If "yes" then do not use the library (but still use
		the include files).

COMPATLIB_UNINSTALLED defaults to "yes" for now, but this will soon be
changed to "no.
2012-12-02 12:37:08 +00:00
apb
fe5488e7a4 Make tools/compat/Makefile install the library in
${TOOLDIR}/lib/libnbcompat.a, install the include files in
${TOOLDIR}/include/compat/**, and install defs.mk in
${TOOLDIR}/share/compat/defs.mk.  Previously, nothing from
tools/compat was installed under TOOLDIR.

Adjust tools/compat/Makefile to use an uninstalled copy of
host-mkdep from the .OBJDIR of tools/host-mkdep, and an uninstalled
copy of the install program from the .OBJDIR of tools/binstall.
This allows it to be built after tools/host-mkdep is built but
before tools/host-mkdep is installed; and to be installed after
tools/binstall is built but before tools/binstall is installed.
2012-12-02 12:34:51 +00:00
apb
e95f6bc055 Make tools/Makefile build host-mkdep, compat, and binstall in that order,
before installing any of them.  It installs them in any order relative
to each other.  The .WAIT points that used to be between these three
tools are replaced by .ORDER and dependencies.

This is needed in preparation for making tools/compat install
some files into TOOLDIR.
2012-12-02 12:25:25 +00:00
apb
0b3c0236de Use a CONFIGURE_ENV variable instead of in-line code for passing
environment variables to the confifure script for host-mkdep.
Also reword the comment about why TOOL_AWK can't be included.
2012-12-02 12:21:51 +00:00
apb
3a6b21ba52 Teach tools/compat/Makefile to use an uninstalled copy of host-mkdep
from the.OBJDIR of tools/host-mkdep.  This is in preparation for
building all three of tools/host-mkdep, tools/compat, and tools/binstall,
before installing any of them.

While here, also move the regen target to the end.
2012-12-02 12:19:34 +00:00
apb
3b5482ec3a Teach tools/binstall/Makefile to use an uninstalled copy of
host-mkdep from the.OBJDIR of tools/host-mkdep.  This is
in preparation for building all three of tools/host-mkdep,
tools/compat, and tools/binstall, before installing any of them.
2012-12-02 12:18:16 +00:00
apb
9ff9611745 TOOLDIR must be valid, unless MKTOOLS=no.
Add tests and .error directives to enforce this.
2012-12-02 12:10:43 +00:00
apb
326b13ee70 If tools are not wanted, then set SUBDIR= empty instead of
defining all the subdir-related targets to do nothing.  This way,
the targets are not invoked at all, instead of being invoked but
doing nothing.
2012-12-02 11:46:34 +00:00
apb
34072b3232 remove trailing white space 2012-12-02 11:19:45 +00:00
jkunz
32c0cb2823 According to the i.MX23 Reference Manual section 3.1, Page 3-3:
"The i.MX23 always operates in litle-endian mode."
So build elftosb and bootloader for this processor only for evbarm(-el).
2012-11-27 20:00:38 +00:00
pooka
cdb7042197 Build gmake iff we're going to need it. 2012-11-26 16:57:25 +00:00
joerg
54f191bfce Move the build_install logic from lib/Makefile into share/mk and re-use
it for tools. The existing logic broke for the LLVM build with the
recent .ORDER changes in make.
2012-11-15 23:51:53 +00:00
jkunz
993229b6fe Add elftosb tools to evbarm userland and toolchain.
Elftosb is used to create a digitaly signed "secure boot" file.
This sb file can be booted by the first stage boot loader found in
Freescale i.MX23 and i.MX28 application processors.

Copyright (c) 2004-2010 Freescale Semiconductor, Inc.
2012-11-15 19:49:11 +00:00
bouyer
63a0d054cf At last on some linux distros, gmake is needed to build the cross-gdb. 2012-10-01 19:27:04 +00:00
skrll
18ea2c9f55 More tweaks 2012-09-27 11:29:49 +00:00
skrll
35ceab06ed No need to do "obj includes" twice. 2012-09-25 11:12:16 +00:00
skrll
40ecf146db More tweaks. I didn't manage to complete a mknative from scratch run, but
this is a step in the right direction.
2012-09-25 06:55:10 +00:00
joerg
2b3d1ee8a7 Update LLVM/Clang snapshot to r164464. This adopts the GCC options for
the SSP parameters and a not-yet-default rewrite of SROA.
2012-09-23 17:22:22 +00:00
pooka
c978e80017 fix EXTERNAL_TOOLCHAIN build 2012-09-20 15:50:20 +00:00
skrll
9378dd0cd5 Update for gcc 4.5.4 2012-09-18 07:05:15 +00:00
skrll
f26f274521 Attempt to describe the gcc 4.5 method (untested) 2012-09-16 15:09:55 +00:00
jmmv
cdcce7d462 Add a new "-P prefix" option to mkdep(1).
This option prepends the string given in prefix to every target
filename.  This is useful for programs that have source files in
multiple subdirectories and a single Makefile that references all of
them explicitly (without using the VPATH functionality because there
can be files with the same name in each subdirectory).
2012-08-26 22:37:19 +00:00
skrll
c3746f757b Grab CRTSTUFF_T_CFLAGS_S.
Gentlement start your mknative runs.
2012-08-11 16:05:01 +00:00
joerg
2ce6b7d32d Decouple binutils build from HAVE_GCC. Merge common fragments of
HAVE_GCC and HAVE_PCC.
2012-08-10 16:13:36 +00:00
christos
53b6bc587f add -I${TOOLDIR}/include/nbinclude to fix the build (find arm/elf_machdep.h).
Is nbinclude intended here? Why not put the machine files in ${TOOLDIR}/include?
2012-08-05 06:20:14 +00:00
hans
f70d5ee4a9 Don't use -print0/-0 in find | xargs, it is non-standard and not needed at all. 2012-06-19 21:48:33 +00:00
joerg
062cd24989 Fix version string returned by clang --version.
Integrate the in-tree config file generation with the cross-building
toolchain.  Regenerate the files.
Keep version numbers all in one place.
2012-06-17 07:40:25 +00:00
joerg
c9196b81ce Update LLVM/Clang snapshot to r158533. This brings in support for
stack-realignment in functions using alloca on x86. Move to
/usr/include/clang-3.2 to reflect the version.
2012-06-16 17:01:02 +00:00
tsutsui
0532bb776d Use ${DESTDIR}/usr/mdec for DEFAULT_BOOTDIR on tools fdisk(8)
rather than unknown build host's /usr/mdec directory.

XXX: no option to leave MBR bootcode empty on x86 targets
2012-06-05 13:41:23 +00:00
joerg
1fa9b84508 Add cdbr(3) support to tools/compat. 2012-06-04 19:06:45 +00:00
joerg
571103e860 Build getcap.c only once. 2012-06-04 18:53:02 +00:00
joerg
4b38c823d2 Make Alan Barrett happy and add (). 2012-06-04 10:18:01 +00:00
joerg
f7ef3610be Add a special seeder for cdbw_output that gives stable results.
Hook up cdbw(3) for the tool build.
2012-06-03 21:02:50 +00:00
joerg
4f6bb5e029 Add __predict_true / __predict_false definitions. 2012-06-03 21:01:43 +00:00
joerg
b203f35690 Don't depend on __P. 2012-06-02 22:54:52 +00:00
joerg
55a1bc2fcb Always use system zlib. Avoids the need for 32bit build environment when
bootstrapping on some Linux distros. We require zlib to be present anyway.
2012-05-31 21:02:02 +00:00
joerg
2fab7c857c Forcefully override the GNU make configure check. The build system in
NetBSD doesn't need it, so the configure check doesn't have to reject
a prestine NetBSD host.
2012-05-31 18:52:16 +00:00
tsutsui
56ed3d51fc Don't use "#if defined(__i386__) || defined(__x86_64__)" conditionals
in C source file to define option features.
Define proper options in each Makefile per ${MACHINE_ARCH} variable instead.

Previously if a host is x86 and it has /usr/mdec/mbr file in its system,
tools fdisk implicitly installs it as mbr bootcode even for !x86 targets.
2012-05-05 16:03:55 +00:00
tsutsui
07a6a7e726 Replace not only space but also '(' and ')' on generating BUILD_PLATFORM
strings to appease shell's echo.
Cygwin's uname -r returns "1.7.9(0.237/5/3)" etc.
2012-04-18 11:28:30 +00:00
mrg
9ac63422b6 force set ac_cv_mkdir_path to our install -d program.
fixes the remaining issues with 'sourcesets' and 'tools'.
2012-04-15 08:37:32 +00:00
mrg
9ec90b003a 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.
2012-04-12 01:05:31 +00:00
joerg
103b308da9 Update LLVM/Clang snapshot to r153935. This brings in the new inline
cost analysis.
2012-04-04 10:42:00 +00:00
joerg
ead2c0eee3 Update LLVM/Clang snapshot to r151411. This brings in Lambda support for
C++11 and a new literal format string check to catch variadic argument
functions.
2012-02-28 17:09:29 +00:00
njoly
584981b8a8 Adjust libyywrap.c location. 2012-02-18 17:51:21 +00:00
skrll
b7196e474c Disable the sim on mips for next person running gdb7 mknative. 2012-02-09 15:15:58 +00:00
christos
66776cea39 remove dup target. 2012-01-21 22:31:15 +00:00
tsutsui
fdc3c331af Always redefine DEV_BSIZE=512.
All references of DEV_BSIZE in tools are to manipulate target
(i.e. NetBSD's) file images (in installboot(8) and makefs(8) etc.) and
no host's DEV_BSIZE is required for the moment.  Closes PR toolchain/42574.
2012-01-21 20:05:27 +00:00
christos
c300185bd0 Merge the two Makefiles that were mostly copies of each others.
The reason to do this was to add support for cleaning up the config.cache
files when the build environment (as determined by uname -srm) changes.
2012-01-20 23:01:05 +00:00
joerg
e39ef1d61e Update LLVM/Clang snapshot to r148262 for some bugfixes. 2012-01-17 15:51:55 +00:00
skrll
3e6a962380 Fix bootstrap-libgcc for gcc 4.5 2012-01-10 12:27:54 +00:00
skrll
4684600473 Fix (harmless?) HAVE_GCC comparison version. 2012-01-10 12:26:45 +00:00
joerg
3a9ee24e6b Explicitly request TLS support for mknative. 2011-12-12 18:59:06 +00:00
skrll
a273c995fc Pull across the fix for target/50691
ok'ed by mrg@
2011-12-02 09:44:48 +00:00
tsutsui
3093d001cd Pass M4=${TOOL_M4:Q} to CONFIGURE_ENV for tools/gmp.
Fixes configure error on cygwin.
2011-11-21 13:46:37 +00:00
christos
96f71ed699 mkdir the proper sim dirs! 2011-11-06 19:46:12 +00:00
joerg
89e5f5a8b7 Add getline.c here too. 2011-11-03 19:30:05 +00:00
joerg
fe2cc85884 Update LLVM/Clang snapshot to r143571 for the improved optimizer. 2011-11-03 17:52:53 +00:00
joerg
b0027af054 Add getline(3) compat glue. 2011-11-03 14:13:53 +00:00
joerg
6edf2caf7f Revert .WAIT removal and add comment why it is needed between *tblgen. 2011-11-03 07:42:56 +00:00
njoly
2b2cb14012 Do not build tic more than once 2011-11-02 23:47:07 +00:00
christos
9002895fe6 move tic later, after all the tools it needs are built. 2011-11-02 20:36:41 +00:00
yamt
de081393a5 tweak dependencies for tic, which needs nbperf, awk, and sed. 2011-11-02 20:33:18 +00:00
christos
8bfa1d3c54 Handle auto-generating hash.c 2011-11-02 17:49:20 +00:00
joerg
ecc1f89d09 Remove an unnecessary .WAIT between llvm-tblgen and clang-tblgen. 2011-11-01 23:11:55 +00:00
joerg
ac992c4949 Hook up nbperf into the normal tool build. 2011-11-01 21:16:28 +00:00
mrg
c23dc553e9 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!  (-:
2011-10-31 08:14:43 +00:00
matt
e1da7aef13 Fix PPC _SOFT_FLOAT 2011-10-13 19:52:33 +00:00
joerg
9aa0541bdf Update LLVM/Clang snapshot to r141658. This primarily fixes a regression
preventing Qt4 from building.
2011-10-11 13:53:56 +00:00
christos
494dd6b7c3 add psim support 2011-10-09 02:03:30 +00:00
christos
be84a9917e remove pre-gcc-4.5 mknative remnants that have long ceased to function. 2011-09-26 21:16:14 +00:00
christos
97417a67ca mknative for gdb7 2011-09-26 02:36:19 +00:00
christos
544cd45c15 adjust for new gas Makefile 2011-09-25 04:00:58 +00:00
mrg
68568a44b1 since omp.h is part of libgomp, put it in the libgomp files not the
libstdc++ files.
2011-09-23 06:43:46 +00:00
mrg
dc04629559 add libgomp support. needed by "cc -fopenmp", that koffice 2.3 wants to use. 2011-09-21 02:15:18 +00:00
jdc
3d7c729d6b Add PDP_ENDIAN definition, required for makefs (v7fs). 2011-09-05 07:38:52 +00:00
joerg
f4a68476b9 Ensure __printflike exists. 2011-08-27 18:33:22 +00:00
matt
cc8037f3d1 Add an inline ex script to modify configargs.h for powerpc to auto-enable
-msoft-float.
2011-08-17 18:34:13 +00:00
apb
4390b548c2 regen 2011-08-14 20:25:01 +00:00
apb
c2497c0d32 Detect the presence of <pthread.h>, and add a HAVE_PTHREAD_H
variable in defs.mk.
2011-08-14 20:22:42 +00:00
apb
e4189833c9 Prevent expansion of <dollar>NetBSD<dollar> in a string that's
indended to be copied to nbtool_config.h.

Fix most lines longer than 80 columns.  I don't know how to fix the
long lines in the definition of NB_CHECK_INTTYPE.
2011-08-14 20:20:59 +00:00
mrg
b9477da802 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.
2011-08-04 02:38:41 +00:00
joerg
a968e272e0 Partially revert last, keep assertions enabled (but with the correct
spelling of the option).
2011-07-18 19:11:28 +00:00
adam
b878485fea Pass HOST_CC otherwise fails e.g. on Mac OS X; fixed typo in --disable-assertions 2011-07-18 18:37:15 +00:00
joerg
3eb244d801 Retire varargs.h support. Move machine/stdarg.h logic into MI
sys/stdarg.h and expect compiler to provide proper builtins, defaulting
to the GCC interface. lint still has a special fallback.
Reduce abuse of _BSD_VA_LIST_ by defining __va_list by default and
derive va_list as required by standards.
2011-07-17 20:54:30 +00:00
joerg
9777e8c193 Update to Clang/LLVM r135360. Most importantly, this adjusts the
cc -print-search-dirs output to expand sysroot-prefixed library paths to
make live easier for libtool.
2011-07-17 20:07:56 +00:00
tsutsui
a1f5c3dd33 Build nbm68k-elf2aout as a host tool on m68k targets
for an ancient PROM bootloader.
Mostly taken from nbmips-elf2ecoff.
2011-07-16 15:52:01 +00:00
joerg
220d715bdc Update to LLVM/Clang r135100 to get past the type system rewrite. 2011-07-13 23:48:29 +00:00
mrg
fd2a48532a force HAVE_AS_SPARC_GOTDATA_OP to false, since those relocs seem
busted with our binutils.  now sparc64 seems to work fine.
2011-07-10 15:28:26 +00:00
mrg
29bf026bea install elf2ecoff for all mips64 systems. it's needed for stand. 2011-07-10 08:43:50 +00:00
joerg
1cb60d627b Update LLVM/Clang snapshot to r134635. This reduces the memory usage in
preprocessor heavy code and recognizes mipseb as alias for mips.
2011-07-07 21:59:14 +00:00
matt
464af93e1a Fix cleandir-llvm (only remove config if it exists) 2011-07-07 05:41:59 +00:00
joerg
288bb96063 Hook up LLVM's MIPS target. 2011-07-05 19:37:10 +00:00
joerg
04d0160d70 Also enable toolchain build of ARM 2011-07-05 17:30:35 +00:00
joerg
1b9578b8c2 Hook up LLVM's ARM target. 2011-07-05 17:22:20 +00:00
joerg
c8a6f85bd1 Use a different switch to explicitly disable developer-only libraries
for the toolchain build.
2011-07-05 17:15:51 +00:00
joerg
b49cc14919 Hook up LLVM's SPARC target. 2011-07-05 14:15:56 +00:00
joerg
8597eac543 Hook up LLVM's PowerPC. 2011-07-04 22:37:58 +00:00
joerg
b0f1ff448a Update LLVM/Clang to r134374. This brings the xstorerng alias for Via
PadLock, a bugfix for the C++ ABI in one edge condition and various
compiler improvements.
2011-07-04 16:10:38 +00:00
mrg
b2ad2936ae fix the previous 2011-07-03 12:26:02 +00:00
mrg
1f61213386 -I$DESTDIR/usr/include is escaping into the generated files from
the native-gcc run.  add some sed commands to remove them.
2011-07-03 12:11:32 +00:00
mrg
d2d81d57a9 copy sysroot-suffix.h as well, for sh3. 2011-07-03 06:47:12 +00:00
mrg
b9c57fbd15 also pull out LIB2ADD_ST for libgcc. 2011-07-02 13:25:05 +00:00
mrg
0debd27c81 avoid creating an unused directory. 2011-07-01 02:11:14 +00:00
mrg
a8847d182c - call each ${MKNATIVE_CONFIG_TARGET_LIBS} target separately
- comment out maybe-all-target-libgcc
- cope with the special transformation needed for gtyp-input.list
2011-07-01 01:27:17 +00:00
wiz
4cbd24b23f dependant -> dependent 2011-06-30 20:09:15 +00:00
mrg
425b4dd861 fix previous; they belong in _headers1 2011-06-30 07:16:59 +00:00
mrg
2703d75c7b - repurpose MKNATIVE_CONFIG_TARGET_LIBS to list all the targets
- disable building pch for the mknative run
2011-06-30 07:02:17 +00:00
mrg
089e26552b also pull tr1_impl_headers parallel_headers and decimal_headers for libstdc++ 2011-06-30 07:01:14 +00:00
mrg
3e9b4b1af1 fix all-tree.def, and add gtyp-input.list 2011-06-29 05:06:03 +00:00
mrg
8d616c352f fix the path for libdecnumber. 2011-06-29 02:13:59 +00:00
mrg
a4e3e6142c get libdecnumber info out of GCC. 2011-06-29 02:02:38 +00:00
mrg
9897cb288e also need bversion.h 2011-06-28 04:30:32 +00:00
mrg
c86def5214 some more updates for GCC 4.5. 2011-06-28 03:58:55 +00:00
mrg
68a31119f2 output stuff to the right libiberty dir for gcc 4.5. 2011-06-23 12:06:32 +00:00
mrg
64f6248066 get this some what working with GCC 4.5. i at least have managed to
get crtstuff and libgcc to build for amd64, and have linked and tested
/bin/sh with all these GCC 4.5 compiled part.
2011-06-23 05:42:37 +00:00
mrg
63da379d23 use --sysroot with GCC 4.5. (maybe could with 4.1 too? the 4.1 code
here is broken right now, anyway, ever since the sysroot changes were
merged into our tree.)
2011-06-21 09:37:41 +00:00
mrg
2d7ccc14fc initial port to HAVE_GCC = 45. mknative-gcc parts are from me
and are largely untested, most of the rest is from chuq.
2011-06-21 04:11:12 +00:00
mrg
e13b252934 always build gmake if HAVE_GCC.
build gmp, mpfr and then mpc if HAVE_GCC >= 45.
2011-06-21 02:15:41 +00:00
mrg
d25ffa98a4 tools build framework for gmp, mpfr and mpc. from chuq. 2011-06-20 05:56:45 +00:00
plunky
c84ce3700e because we use --sysroot, force the default paths to be normal
while here, enable tls support
2011-06-13 12:29:16 +00:00
matt
865180f6f7 If building the cross gcc for softfloat, add --with-float=soft so it will
default to it.
2011-06-10 16:31:18 +00:00
joerg
d14e81e4ad Update to LLVM/Clang revision 131404. This includes the fix for asm labels
on builtins (broke longjmp usage) and a better cross-compiling support
in combination with -m32/-m64.

Update configuration to include /usr/include/clang-3.0 in the search
path.
2011-05-16 19:27:47 +00:00
joerg
46f5119e40 Update LLVM and Clang snapshot 2011-05-12 14:56:22 +00:00
joerg
1a9a81992d BSD grep is good enough if someone really needs src/tools/grep. 2011-04-21 14:27:11 +00:00
tron
0f152b1dd8 Set "HOSTLIB" before including "bsd.own.mk" to get the destination
directory checks to work properly.
2011-04-17 12:52:26 +00:00
elric
98fbe74f8c Upgrade Heimdal to 1.5pre1 by switching the build from crypto/dist/heimdal
to crypto/external/bsd/heimdal.  The latter was just imported as the head
of the Heimdal tree as of a few days ago.
2011-04-15 18:05:42 +00:00
elric
f6f6e04b4f Tool for slc, a command built during the Heimdal build. 2011-04-14 19:38:21 +00:00
joerg
c28ff146c9 For USETOOLS=yes, use the --sysroot support of the compiler to cut down
the number of hard-coded pathes and magic invocations.
2011-04-10 16:52:36 +00:00
joerg
333ceea9fc Enable support for --sysroot in binutils and gcc. 2011-03-24 13:33:42 +00:00
joerg
97e154c924 --with-clang-resource-dir is no longer needed 2011-03-21 02:10:10 +00:00
christos
7ee5629d5b add a stdio neutral getline/getdelim implementation. 2011-03-20 20:48:57 +00:00
joerg
73a4306de0 Update LLVM snapshot. This allows deriving the target from the binary
name, provides a proper CPP mode and fixes a number of compat issues
in the integrated assembler.

Build the toolchain compiler optimized and without assertions now.
2011-03-18 23:32:01 +00:00
tsutsui
94e49d10f9 tools/mklocale has not required ctype_bits.h since the following fix:
http://mail-index.NetBSD.org/source-changes/2010/06/20/msg011122.html

Tested build.sh tools on CentOS 5.
2011-03-18 15:13:54 +00:00
riz
c8735093ef .WAIT for makefs, because in most builds, it's the first target
which includes Makefile.nbincludes, whose beforedepend: has
some race condition I don't fully understand, and which has been
causing many (but not all!) -j16 builds on the autobuild cluster
to fail in tools since sometime between 201103061600 and 201103070900.

With the proper voodoo, I was able to get 8 builds in a row to fail
without this change, and 16 in a row to succeed with it.

XXX a proper fix likely involves reworking the beforedepend: target
of Makefile.nbincludes, but this should get the build cluster back up
to full functionality in the meanwhile.
2011-03-17 19:06:45 +00:00
he
e078102c8c This tool now depends on updated target includes in the tools build
for an UPDATE build to succeed; ensure that by including
${.CURDIR}/../Makefile.nbincludes.
2011-03-07 13:28:06 +00:00
joerg
3a6bc2a9c4 ufs/ufs/quota.h is now used by makefs 2011-03-07 02:02:36 +00:00
bouyer
fcf38c8c34 merge the bouyer-quota2 branch. This adds a new on-disk format
to store disk quota usage and limits, integrated with ffs
metadata. Usage is checked by fsck_ffs (no more quotacheck)
and is covered by the WAPBL journal. Enabled with kernel
option QUOTA2 (added where QUOTA was enabled in kernel config files),
turned on with tunefs(8) on a per-filesystem
basis. mount_mfs(8) can also turn quotas on.

See http://mail-index.netbsd.org/tech-kern/2011/02/19/msg010025.html
for details.
2011-03-06 18:15:30 +00:00
nakayama
c09c2a7b34 Fix build on Solaris 10. 2011-03-03 14:53:01 +00:00
phx
e1b5cdc215 mkubootimage is certainly useful for sandpoint 2011-02-25 23:29:16 +00:00
joerg
213144e1de Update LLVM/Clang snapshot. This brings improvements for the integrated
assembler and support for -cxx-isystem in the driver.
2011-02-23 03:09:02 +00:00
joerg
daf6c4152f Update LLVM/clang snapshot. This brings in support for
.pushsection/.popsection and fixes clang -B to be incremental.
2011-02-17 18:35:35 +00:00
joerg
48360965f3 Add LLVM and clang build system. It is enabled by MKLLVM=yes.
Upstream sources can be fetched by running "make checkout" in
src/external/bsd/llvm, they will be properly imported once the
integration and missing features are sorted out.
2011-02-06 01:13:42 +00:00
yamt
bf3102ba36 comment 2011-02-05 13:30:26 +00:00
matt
06de5a61bb Make mkubootimage for evbmips and evbppc too. 2011-01-31 03:41:10 +00:00
pooka
5f7e80a834 Add support for the Extensible MIPS ("eMIPS") platform. The
NetBSD/emips port runs on Xilinx and Beecube FPGA systems and the
Giano system simulator.

eMIPS is a platform developed at Microsoft Research for researching
reconfigurable computing.  eMIPS allows dynamic loading and scheduling
of application-specific circuits for the purpose of accelerating
computations based on the current workload.

NetBSD eMIPS support for NetBSD 4.x was written at Microsoft Research
by Alessandro Forin and Neil Pittman.  Microsoft Corporation has
donated full copyright to The NetBSD Foundation.

Platform support for eMIPS is the first part of Microsoft's
contribution.  The second part includes the hardware accelerator
framework and will be proposed on tech-kern soon.
2011-01-26 01:18:43 +00:00
apb
ff7405e5b4 Define PRI[diouxX]8. We previously did this only for
16- and 32-bit type, but now PRIu8 is needed for tools/disklabel.

Also define SCN[diouxX]{8,16,32}, the scanf counterparts
to the PRI[diouxX]{8,16,32} macros.

Tested via "build.sh tools" on a system whose native definitions
or the PRI* and SCN* mcros was disabled.
2011-01-10 20:38:35 +00:00
joerg
762325586d If MKREPRO, transform ${NETBSDSRCDIR} to /usr/src and ${DESTDIR} to /
for the purpose of the C preprocessor.  This avoids leaking the source
path into the final binaries.
2010-12-25 18:56:44 +00:00
njoly
deb4c35e46 Adjust LDFLAGS handling to fix curses detection for mknative-gdb. 2010-12-24 13:12:09 +00:00
christos
6a9b3088d8 hook to the new awk in external 2010-12-12 04:06:19 +00:00
christos
0c40d420be recognize isysroot 2010-11-14 15:18:24 +00:00
joerg
c1e0a5bd50 Replace the current usage of Elf64_Half with Elf64_Word and rename
NetBSD specific Elf64_Quarter to Elf64_Half. This restores compatibility
with the common ELF specifications.
2010-08-28 21:30:02 +00:00
mrg
25c3593d4e add new option to build/use tools/pigz for compressing sets. for now
USE_PIGZGZIP defaults to "no".  (it depends upon local <pthread.h> and -lz.)

you can set it to "yes" on most modern platforms just fine.
2010-08-15 07:27:33 +00:00
mrg
4c92852a80 remove almost all the ability to build netbsd with an a.out target.
we're ELF now, and there are many missing checks against OBJECT_FMT.
if we ever consider switching, the we can figure out what new ones
we need but for now it's just clutter.

this doesn't remove any of the support for exec_aout or any actually
required-for-boot a.out support, only the ability to build a netbsd
release in a.out format.  ie, most of this code has been dead for
over a decade.

i've tested builds on vax, amd64, i386, mac68k, macppc, sparc, atari,
amiga, shark, cats, dreamcast, landisk, mmeye and x68k.  this covers
the 5 MACHINE_ARCH's affected, and all the other arch code touched.
it also includes some actual run-time testing of sparc, i386 and
shark, and i performed binary comparison upon amiga and x68k as well.


some minor details relevant:
- move shlib.[ch] from ld.aout_so into ldconfig proper, and cut them
  down to only the parts ldconfig needs
- remove various unused source files
- switch amiga bootblocks to using elf2bb.h instead of aout2bb.h
2010-07-06 05:59:50 +00:00
riz
5929231814 Rename Makefile.disklabel to Makefile.nbincludes, as this file has
been used by more than disklabel for years.  New name suggestion from
mrg@ .
2010-06-19 23:11:10 +00:00
riz
a7a0c207ec mklocale now requires <sys/ctype_bits.h> to build, so install it
under ${TOOLDIR} when building as a host tool.

XXX Makefile.disklabel is clearly mis-named.  I'll deal with that
shortly.
2010-06-19 22:36:15 +00:00
jmcneill
192740f5f9 hook mkubootimage into the build 2010-06-18 18:57:27 +00:00
mrg
dcf7552621 add support to build pigz as a host tool.
still missing:
- TOOL_PIGZ
- support to use it instead of the host's "gzip"
2010-06-18 05:26:12 +00:00
jmmv
357bd260c3 Bye bye atf-compile, you won't be missed. 2010-06-04 08:34:35 +00:00
hans
31b20c1266 Fix tools build on Solaris with MKCROSSGDB=YES. 2010-05-08 23:18:44 +00:00
jmmv
441d96f6d5 Adjust paths to new location of the atf-compile sources in atf 0.8.
(You may be happy to know that this tool will probably disappear in
the next atf release!)
2010-05-08 08:20:18 +00:00
cegger
8690c1d646 remove OSX specific fix where CLOCK_REALTIME is not defined.
It has been properly fixed in
http://mail-index.netbsd.org/source-changes/2010/03/26/msg008200.html
2010-03-27 07:16:57 +00:00
cegger
1359eca921 toolchain buildfix on OSX with MKDTRACE=yes:
The host <sys/time.h> doesn't provide CLOCK_REALTIME but ctf uses it.
See http://mail-index.netbsd.org/current-users/2010/03/20/msg012963.html

No comments.
2010-03-26 07:16:12 +00:00
hans
ee93caba9c Fix build on Solaris. "seems reasonable" by joerg. 2010-03-07 19:10:10 +00:00
darran
5f2f3d9ce8 DTrace: add libelf, libdwarf, libctf, and CTF tools to the toolchain,
built when MKDTRACE=yes.
2010-03-02 20:47:01 +00:00
darran
ec591d7fd5 DTrace: add CTF tools to the toolchain (not built yet). 2010-02-24 21:34:57 +00:00
roy
fde317d2b1 libterminfo can now compile a single terminfo description which allows
$TERMINFO to be a terminfo description as well as a file reference.

This enables the user to modify the terminfo description on read-only
media.
2010-02-22 23:05:39 +00:00
roy
20fbb1c876 Use HOST_SRCS instead of adding to SRCS for hash.c 2010-02-20 19:04:48 +00:00
roy
47aa05b406 Use the pre-built hash table. 2010-02-20 17:02:33 +00:00
joerg
637b0cffec Rewrite argument processing to deal with spaces and other meta
characters in options. This was exposed by the "NetBSD 5.99" argument of
mandoc.
2010-02-20 15:04:03 +00:00
joerg
2c23e1b113 Add intermediate files to CLEANFILES. Explicitly include bsd.sys.mk to
ensure that HOST_SH is set, even when e.g. cleandir is used.
Noticed by Nicolas Joly.
2010-02-20 13:43:31 +00:00
joerg
1bd975ff5c Build mandoc unconditional if man pages are desirable. All
compatibility issues are supposed to be sorted out.
Build groff conditionally on MKGROFF. It is currently the only component
that requires C++.
2010-02-20 00:35:11 +00:00
joerg
83a16fe245 Update tool version for mdocml 1.9.15. 2010-02-19 23:03:02 +00:00
roy
3dc9dc4362 Store our generated files in CVS and remove nbperf from the toolchain.
This allows us to build consistent libs without an ever changing hash.
2010-02-03 20:56:54 +00:00
roy
98eb889579 Userland now builds and uses terminfo instead of termcap.
OK: core@, jdc@
2010-02-03 15:34:37 +00:00
tsutsui
18ee5820df No need to compile strlcpy.c and strlcat.c here.
They are in libnbcompat.a, not in src/lib/libc/string
(moved into src/common/lib/libc/string), and
strlcpy.c and strlcat.c derived from crypto/dist/heimdal/lib/roken
won't include the target functions if nbtool_config.h defines
HAVE_STRLCPY and HAVE_STRLCAT.
2010-02-03 12:58:53 +00:00
tsutsui
766937a0b1 Regen this properly per procedure described in src/tools/compat/configure.ac. 2010-01-21 12:55:04 +00:00
asau
76d4b3bdab Regenerate. 2010-01-15 11:27:01 +00:00
asau
9f9e90f73c Test for <sys/endian.h> and provide HAVE_SYS_ENDIAN_H.
Fixes FreeBSD hosted builds (PR 42440 and PR 42470).

Approved by <dholland>.
2010-01-15 11:26:25 +00:00
christos
f9076c1664 undef and redefine instead of checking if it is define, from joerg 2010-01-14 21:38:19 +00:00
christos
76aa0f6aa7 provide __arraycount for those that don't have it. 2010-01-14 21:26:56 +00:00
tsutsui
d3724ba41f Add necessary byteswap ops for tools disklabel(8) used with -F option
(treating a target disk as a regular file and suppressing ioctl(2)s)
on reading/writing disklabel in a target file.
This allows cross build enviroment creating bootable disk images
for targets in different endian.
No functional changes to native (non-tools) disklabel(8) command.

Closes PR toolchain/42357.
2010-01-05 15:45:26 +00:00
tsutsui
47ef4e54e9 Include "nbtool_config.h" for src/tools/zic/ and
remove bogus -DNOID to disable __RCSID().

XXX: should we also remove #ifndef lint from scheck.c and zic.c?
2010-01-02 10:42:49 +00:00
he
1058cef38c To unbreak the build, temporarily remove the build of libelf here,
since no other part of the build depends on this yet.

Suggested as a temporary workaround by thorpej@
2009-12-29 22:13:00 +00:00
thorpej
69ceabfc59 Include nbtool_config.h as needed. Should fix missing defn of __unused in
some host tool environments.
2009-12-29 17:32:18 +00:00
cegger
49fd8fe03d Add tooldir include path.
This fixes amd64 toolchain build on OSX.
2009-12-23 20:28:29 +00:00
mrg
8c0cbe863f revert the previous; not intended to be part of that commit, or any commit 2009-12-23 20:17:13 +00:00
mrg
3fa4bcf59c rework the main SUBDIR list here as suggested by enami. put .WAIT on
the same line as the target that needs to wait, but before the target,
rather than on the previous line, which led to confusion and an error
being introduced in the previous change.
2009-12-23 20:15:21 +00:00
mrg
2dc54d1398 move the build of pax before libelf. fixes my build of tools/libelf,
though i didn't look to see why libelf needs pax.
2009-12-21 20:57:36 +00:00
thorpej
aa6d6cf7b8 Add support for building libelf in a host-tool environment.
XXX Makefile.disklabel is really mis-named, but I'm not going to tackle
that problem right now.
2009-12-21 18:21:17 +00:00
uebayasi
656d7ae41f get_libgcc_new: Make previous work for digit only ABI names. 2009-12-17 15:48:13 +00:00
uebayasi
eae6ecc426 get_libgcc_new: Teach multilib. 2009-12-17 15:01:33 +00:00
uebayasi
6d1f240d45 Fix parallel build. Analyzed & patch provided by enami@, thanks! 2009-12-15 11:39:05 +00:00
christos
a31812a3a1 disable only parallel make. 2009-12-14 14:13:16 +00:00
uebayasi
0d144fa114 Disable parallel build, which always fails at compiling itable.c / interp.c.
Only affect MKCROSSGDB=yes.
2009-12-14 08:51:31 +00:00
pooka
d6224f4507 Remove support for NetBSD/playstation2. 2009-12-05 16:29:10 +00:00
uebayasi
83246377bb Revert previous, which caused tools build to fail. 2009-12-01 17:06:34 +00:00
uebayasi
ab788f10b4 Use ${NETBSDSRCDIR} for deep tools/* directories. 2009-12-01 09:08:25 +00:00
uebayasi
ba9e6e8ae6 Add pkg_install as a tool. 2009-12-01 09:01:45 +00:00
uebayasi
3cb0739866 Skip parameters for multilib build for now. 2009-12-01 04:59:24 +00:00
uebayasi
87bb55865b Handle cases where *.asm is listed in LIB2FUNCS_EXTRA (gcc/config/rs6000). 2009-12-01 03:13:26 +00:00
uebayasi
3a3e699038 Handle cases where database text files don't exist. 2009-11-30 14:34:17 +00:00
uebayasi
d77ecd459a Call "template sources" as "tmplsrcs", not "tmpsrcs". Requested by mrg@. 2009-11-30 10:03:57 +00:00
uebayasi
970b30eb96 Prefix per-library *.mk files with libs.*. 2009-11-30 09:57:59 +00:00
uebayasi
d3180e0c9b Now that we know what sources are needed to build a given library, we need
the rules how to build those sources.  Generate makefiles defining ${COPTS},
${CPPFLAGS}, and ${SRCS} (== template).

Note that ${CPPFLAGS} is actually dfined as _CPPFLAGS like
	_CPPFLAGS.tmp___gcc_bcmp.c=-DL__gcc_bcmp
and used to generate wrapper files (e.g. tmp___gcc_bcmp.c).  Otherwise it's
automagically passed to ${CC} by bsd.*.mk.
2009-11-30 09:50:59 +00:00
uebayasi
2c455e268f For each library, generate a makefile of the list of template sources too. 2009-11-30 09:33:36 +00:00
uebayasi
c91d9ec35a For each library, generate a list of sources (*.[cS]).
We create wrapper sources (tmp_*.[cS]) on-the-fly and compile them.  For
example, __gcc_bcmp() is compiled using tmp___gcc_bcmp.c, which #define's
L__gcc_bcmp and #include's libgcc2.c.
2009-11-30 09:32:13 +00:00
uebayasi
263a9a2c47 Move these analyzing functions into one place, get_libgcc_new_analyze(). 2009-11-30 08:20:23 +00:00
uebayasi
b98c239900 Typo. 2009-11-30 08:05:41 +00:00
uebayasi
1380d82f90 Generate lists of template sources ("tmpsrcs") for each libraries. We'll
need these to create wrappers of tmpsrcs and define correct dependencies.
2009-11-30 08:00:20 +00:00
uebayasi
141ef6c4d0 Generate *.o -> template *.[cS] ("tmpsrc") mapping.
Functions are built from a template (tmpsrc).  We create wrapper sources
(src) and define necessary defines and #include tmpsrc.
2009-11-30 07:19:58 +00:00
uebayasi
96a4ab5aed - Generate a list of CPP flags used to build *.o. Some files are build
repeatedly with different -DXXX to generate similar objects (e.g. different
  type size).

- Generate a list of other CC options to build *.o.

(See my sed-fu using hold space in get_libgcc_list_objs_xflags().)
2009-11-30 07:08:03 +00:00
uebayasi
7e684b1d37 - Generate a list of *.o -> lib*.{a,so} mapping. This is also known by
parsing dependency lines in libgcc.mk.

- Generate a list of *.o -> *.{c,S} mapping.  *.S files are known as
  ${LIB1ASMFUNCS}.  Assume other *.o files are built from *.c.  This information
  is needed to generated wrapper sources later.
2009-11-30 06:56:15 +00:00
uebayasi
12ee13e800 Generate lists of functions built in libgcc libraries. This is known by
pattern matching dependency lines in libgcc.mk.
2009-11-30 06:40:17 +00:00
uebayasi
00c7a5b61c Generate a list of functions provided as *.S. 2009-11-30 06:29:58 +00:00
uebayasi
b0edbfb088 Define paths of newly generated files. 2009-11-30 06:13:37 +00:00
uebayasi
ffa99e7e3a Start implementing the new style libgcc "mknative" converter which generates
BSD makefiles to build libgcc.  The goal is to build all functions rather
than managing the set of functions in gnu/lib/libgcc/Makefile.in by hand.

Because of the complexity of the build procedure, I leave not only generated
makefiles but also intermediate, analyzed data so that people can verify that
the conversion is done correctly.
2009-11-30 05:50:07 +00:00
uebayasi
d219709b67 Actually use timestamp file's timestamps so that things rebuild correctly. 2009-11-25 11:49:36 +00:00
uebayasi
912aaddf6c Adjust #line directive paths so that make depend works correctly. 2009-11-24 15:09:10 +00:00
skrll
af515df4eb Pull in fixes from binutils_2_19 branch.
Bump version and re-run mknative to pick up.
2009-11-20 22:51:29 +00:00
he
71b0977302 Point to the new ncdcs directory. 2009-11-13 08:14:53 +00:00
tron
b99b4b6003 Revert most of revision 1.73:
We cannot user_from_uid(3) or group_from_gid(3) unless the system
also supports pwcache_userdb(3) and pwcache_groupdb(3). The build will
use the hosts password and user database otherwise. Switch back to the
old behaviour to only the native functions if they are all present.
This fixes cross builds under Mac OS X and FreeBSD.

Fix based on problem analysis provided by Akihiko Hayashi.
2009-11-11 21:53:46 +00:00
skrll
1cb5794926 Collect the branding information. 2009-11-09 13:50:41 +00:00
skrll
d92e258298 Update for new binutils location, etc. 2009-11-08 15:33:29 +00:00
joerg
14197c258c Define __RCSID and __COPYRIGHT as structure, so that the following
semicolon is consumed.
2009-11-06 18:26:06 +00:00
joerg
133a83e65e Make sure that parser.c and friends can be found. 2009-11-06 15:14:37 +00:00
christos
43c1f29388 prevent $ NetBSD expansion. 2009-11-03 22:52:59 +00:00
joerg
73810e776b Need to provide NOMAN explicitly before bsd.own.mk. 2009-10-30 17:18:51 +00:00
christos
de3c2d224e short circuit lex and yacc rules. 2009-10-30 00:30:20 +00:00
christos
87224eb348 use bootstrap files for yacc too. 2009-10-29 17:16:40 +00:00
christos
39c14eeaaf Give m4 its own .WAIT. Fixes build issue on NetBSD-5. 2009-10-29 13:07:12 +00:00
christos
271138cb3a use new yacc 2009-10-29 01:01:27 +00:00