Commit Graph

1082 Commits

Author SHA1 Message Date
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
christos e05dbd930c Add a Makefile to rebuild the bootstrap files. 2009-10-27 18:50:31 +00:00
christos 41ebfbe2a9 break cyclical dependency of lex depending on m4 and m4 depending on lex,
by providing pre-built lex and yacc files for m4.
2009-10-27 18:35:09 +00:00
tsutsui 0de065d369 Use HOST_SRCDIR=external/gpl3/binutils/usr.sbin/foo
in $(HAVE_BINUTILS)=="219" case.
Fixes build failures on Cygwin. (new libbfd depends on libz)

BTW, should we revive old ones under src/usr.sbin for
native dbsym(8)/mdsetimage(8) binaries which don't need libbfd?
2009-10-27 14:20:21 +00:00
christos 4f376672fe switch to new lex 2009-10-26 21:32:14 +00:00
joerg f56301292d Hard-wire NetBSD major+minor version for the tool version of mandoc.
This gives "NetBSD 5.99" for .Os in -current and "NetBSD 6.0" for the
next release.
2009-10-26 21:17:19 +00:00
christos 4958d088d0 back to old lex 2009-10-26 04:08:25 +00:00
christos 74e6715321 use new lex. 2009-10-26 01:19:02 +00:00
joerg 3b68c94681 Add MKMANDOC option to trigger building cat pages and HTML pages with
mdocml.  Add a lintmanpages target for developers to check man pages
with the strictest settings of mandoc.
2009-10-23 22:14:37 +00:00
joerg c2dba7fe45 Build glue for mdocml and for mandoc as standalone tool. 2009-10-21 18:04:52 +00:00
skrll df133fffea Only brand newer binutils. 2009-10-14 07:30:47 +00:00
skrll 699c28bc09 Better branding from mrg 2009-10-12 08:00:41 +00:00
snj 823426b32c Adjust bug report URL to reflect htdocs changes. 2009-10-10 14:46:02 +00:00
skrll f92d679b89 Add some NetBSD branding to binutils. 2009-10-10 10:21:22 +00:00
christos 2802d8b5af split all the password and group translation functions into individual
ifdefs instead of having a large one.
2009-10-02 18:03:19 +00:00
he c88a33f1f2 We need to install disklabel_rdb.h here as well, so that the
toolized disklabel for amiga (at least) can be allowed to build.
2009-09-14 13:44:05 +00:00
skrll 8a770313a3 Rename MKBFD to MKBINUTILS and support HAVE_BINUTILS for set lists. This
makes {MK,HAVE_}BINUTILS consistent with {MK,HAVE_}{GCC,GDB}.

Allow MKBFD to defines MKBINUTILS as a backwards compatibility hook.

Update the sets lists and add conditionals for lib{bfd,opcodes}.
2009-09-08 07:08:00 +00:00
skrll 6d622a3f1b Build binutils 2.19.1 if HAVE_BINUTILS is 219 2009-08-18 15:08:51 +00:00
christos 6709212e45 add fpurge 2009-06-17 23:34:45 +00:00
christos fb04944064 add fpurge; needed by awk. 2009-06-16 22:35:34 +00:00
christos 35eb44d139 use new file 2009-05-08 17:45:22 +00:00
ad e8f7cd4ed0 Enable -mtune=nocona by default on x86. I have tested on a range of CPUs
and this seems to give the best results.
2009-05-04 21:32:31 +00:00
drochner f3b654a431 -introduce a "COMMON_CONFIGURE_ARGS" variable which is included by
both CONFIGURE_ARGS and NATIVE_CONFIGURE_ARGS to reduce duplication
 between tool and native configuration
-allow to pass a "--with-arch" argument to both configurations
2009-03-27 19:19:49 +00:00
sketch 0ed32f1081 Disable grep host tool and unbreak NetBSD build until I can come up with a
clean fix.
2009-02-25 22:28:36 +00:00
sketch 0d9ab2b40e Make grep a host tool. 2009-02-25 20:36:44 +00:00
sketch 7ce9d1c8ea Make 'build.sh tools' work with the Sun Studio compiler, although bugs in
some of the generated tools still prevent building a full release using them.
2009-02-24 22:25:24 +00:00
abs 515e52158b Convert more MACHINE tests to MACHINE_ARCH 2009-02-14 13:50:50 +00:00
joerg a9ecd753f2 Explicitly disable C# support. Mono is known to have issues at time, so
don't try to look for it.
2009-02-10 19:50:47 +00:00
dbj 5ae3d13a2f do not require sys/mtio.h for a tools build of pax 2009-02-03 05:22:40 +00:00
dbj 117ba68f3f avoid including grp.h 2009-02-03 05:18:42 +00:00
jmmv da998a842e Adjust path to sources, now that ATF lives in external/bsd/atf/dist instead
of dist/atf.
2009-01-19 07:14:46 +00:00
apb a0e618bba1 Use hex instead of decimal in #if FOO_MAX == 0xffff.... tests, and
append "U" to make the constants unsigned.
2009-01-18 21:59:19 +00:00
apb 270cb3d9e7 Provide definitions for PRI{d,i,o,u,x,X}{16,32,64}. Many tools
already use [u]int{16,32,64}_t types, and a few already had their own
#ifndef/#define/#endif code for a few of these macros.  A future commit
will remove that now-redundant code in the affected tools.
2009-01-18 21:09:47 +00:00
christos f5c11c0781 Fix struct passwd time fields. From Shin'ichiro TAYA 2009-01-18 01:44:09 +00:00
agc 0d5ba1b500 Apply part of the patch from Julio M. Merino Vidal in
http://mail-index.netbsd.org/source-changes/2009/01/05/msg214884.html

to make the toolchain cross-build on Mac OS X. Nozaki-san has addressed
the other issues.
2009-01-06 19:15:39 +00:00
tnozaki 2af58f1cce 1. reworking PR lib/40317:
libnbcompat already contains empty fparseln.lo
so previous fix doesn't work correctly.
i've just added broken fparseln check to configure script.

2. reworking cross build breakage under FreeBSD/MacOS X.
FreeBSD/MacOS X still have public /usr/include/runetype.h
derived from 4.4BSD-Lite.  so i renamed out private header from
src/lib/libc/locale/runetype.h to src/lib/libc/locale/runetype_local.h
to solve this problems.

3. fix build breakage when CITRUS=no was set.
2009-01-05 06:11:43 +00:00
mrg c4cf5842aa MACHINE_CPU is "mips" not "xxmips". 2008-12-05 05:12:02 +00:00
christos 2e31951ce3 enable extensions for isblank() and solaris 2008-11-25 18:41:57 +00:00
dbj 9e00aa9431 include unistd.h where getmode is traditionally declared 2008-11-04 23:31:32 +00:00
apb 0f98f9af22 HOST_SH should always be an absolute path, so don't bother searching for
/bin/${HOST_SH} or /usr/bin/${HOST_SH}.

If the HOST_SH sanity check fails, do not continue regardless.
2008-10-26 15:54:19 +00:00
apb bcc847fb86 Use ${TOOL_SED} instead of just "sed" while building other tools.
Where sed is used in a != assignment, use
.if make(depend) || make(all) || make(dependall) || make(install)
to ensure the command doesn't run at "make obj" time when TOOL_SED will
not have been built.
2008-10-25 22:15:28 +00:00
apb 4f24e44506 Build sed earlier, just after mktemp. Note that sed and mktemp do not
depend on each other, but the .WAIT is needed to get them both installed
before the remainder of the tools build.
2008-10-25 22:12:41 +00:00
apb 9e166e6cc9 Remove the local handling of the NOSUBDIR variable. We can rely
on bsd.subdir.mk's handling of the NOSUBDIR variable.

Also add some comment to .if/.else/.endif and .for/.endfor lines.
2008-10-25 14:59:35 +00:00
apb debdeec730 The tools/compat versions of mkstemp() and mkdtemp() need to call the
internal function that's usually named "__gettemp".  However in a cross
build, "__gettemp" is in a namespace reserved for the host system, so we
can't use that.  Use "__nbcompat_gettemp" instead, following the example
of several other functions or macros in tools/compat.  Previously, this
was handled by using the name "gettemp", but that conflicts with the
local gettemp() function in dist/nawk.
2008-10-20 10:28:38 +00:00
dogcow 13a2178397 Define __USE_ISOC99 for linux, making the isblank() proto appear.
This is probably not the Right Thing, but it seems to not break anything.
2008-10-20 07:48:21 +00:00
apb d1cf36b114 Add a comment to the Makefile explaining that we do not use HOST_AWK
here, because tools/host-mkdep is built before tools/awk.
2008-10-19 22:05:22 +00:00
apb 96230fab84 Use ${TOOL_AWK} instead of ${AWK} or plain "awk" in make commands.
Pass AWK=${TOOL_AWK:Q} to shell scripts that use awk.
2008-10-19 22:05:19 +00:00
apb 74809f044a Add awk as a host tool. 2008-10-19 19:40:19 +00:00
apb ce47df9797 Define NOINFO, so that we don't try to build info files for host tools. 2008-10-19 19:38:55 +00:00
tsutsui e610f24a9a Regen from configure.ac rev 1.67:
> Prepare dummy <resolv.h> and <arpa/nameser.h> to make asn1_compile and
> compile_et compile on systems which don't have these BIND headers like Cygwin.
2008-10-18 16:27:19 +00:00
tsutsui 0dbe1e872b Prepare dummy <resolv.h> and <arpa/nameser.h> to make asn1_compile and
compile_et compile on systems which don't have these BIND headers like Cygwin.

Tested by "build.sh -m i386 -U release" on CYGWIN_NT-5.1-1.5.25,
and should close PR toolchain/29032.
2008-10-18 16:25:04 +00:00
tsutsui 9f5daccbf0 Regen autoconf stuff using tools version of autoconf (in src/tools/autoconf),
as per suggestion from apb@ on tech-toolchain.
Tested 'build.sh -U release iso-image' on NetBSD/i386 4.99.73.
2008-10-14 15:23:26 +00:00
dyoung 5e0c4c784c Per uwe@'s suggestion, build nbgroff under wider circumstances.
I choose to build it if MKDOC != no or if MKHTML != no.  It used
to be built only when MKMAN != no.
2008-10-13 18:11:15 +00:00
mrg 9917d709a8 - add a i386/t-netbsd64 makefile fragment to build 32/64 bit
libgcc/multilib on amd64
- enable the 32/64 bit libgcc/multilib support on sparc64
- adapt mknative-gcc to grab multilib.h
- use --enable-multilib on amd64 and sparc64

none of this affects the installed tools yet, just the src/tools one.
2008-10-11 05:03:43 +00:00
apb 85f76ee71a Remove the definitions of BUILD_OSTYPE and BUILD_OSVERSION, which have
been unused since the TOOL_JOIN change made in revision 1.9.
2008-10-07 15:10:35 +00:00
apb 1817eadbb8 Use TOOL_SED, not HOST_SED. Also use && to catch errors in
building atf-host-compile.
2008-10-05 20:14:14 +00:00
apb 4344eb9766 Add a .WAIT to ensure that sed is installed early, so that TOOL_SED can
be used during the build of other tools.
2008-10-05 20:11:54 +00:00
apb 520cbbf81f Build strfile both as a host tool and as an installed program:
* in games/fortune/strfile/Makefile, build strfile as a
  regular program instead of as a host tool;
* add tools/strfile directory to build strfile as a host tool;
* in tools/Makefile, add strfile to SUBDIR list;
* in BSD.*.mk, define TOOL_STRFILE variable;
* in games/fortune/datfiles/Makefile, use TOOL_STRFILE when creating
  databases at build time;
* in distrib/sets/lists/games/mi, mention usr/games/strfile.
2008-09-26 18:23:09 +00:00
skrll 9bb781168b Grab libgcov stuff. 2008-09-19 13:18:28 +00:00
lukem 83079ea51d Configure with --disable-warnings; cross-compiling on NetBSD 3.1
with gcc 3.3.3 doesn't support -Wextra
2008-08-31 00:31:22 +00:00
gmcgarry 3d3450222a Build pcc as host tool if requested. 2008-08-24 05:53:36 +00:00
apb d9a401e5bc Verify that MAKEFLAGS contains "-j" before trying to manipulate it
with :C///.
2008-07-07 10:57:03 +00:00