Commit Graph

28 Commits

Author SHA1 Message Date
lukem d64f87e97a Consistently check MK* variables against "no"
(e.g.,  ${MKFOO} != "no"  instead of  ${MKFOO} == "yes" )
2003-07-18 16:18:28 +00:00
lukem 001c68bd94 Rename a large chunk of the make(1) variables which refer to a
program/tool from "FOO" to "TOOL_FOO".  The new variables are:
	TOOL_ASN1_COMPILE  TOOL_CAP_MKDB  TOOL_CAT  TOOL_CKSUM  TOOL_COMPILE_ET
	TOOL_CONFIG  TOOL_CRUNCHGEN  TOOL_CTAGS  TOOL_DB  TOOL_EQN  TOOL_FGEN
	TOOL_GENCAT  TOOL_GROFF  TOOL_HEXDUMP  TOOL_INDXBIB  TOOL_INSTALLBOOT
	TOOL_INSTALL_INFO  TOOL_M4  TOOL_MAKEFS  TOOL_MAKEINFO  TOOL_MAKEWHATIS
	TOOL_MDSETIMAGE  TOOL_MENUC  TOOL_MKCSMAPPER  TOOL_MKESDB
	TOOL_MKLOCALE  TOOL_MKMAGIC  TOOL_MKTEMP  TOOL_MSGC  TOOL_MTREE
	TOOL_PAX  TOOL_PIC  TOOL_PREPMKBOOTIMAGE  TOOL_PWD_MKDB  TOOL_REFER
	TOOL_ROFF_ASCII  TOOL_ROFF_DVI  TOOL_ROFF_HTML  TOOL_ROFF_PS
	TOOL_ROFF_RAW  TOOL_RPCGEN  TOOL_SOELIM  TOOL_SUNLABEL  TOOL_TBL
	TOOL_UUDECODE  TOOL_VGRIND  TOOL_ZIC

For each, provide default in <bsd.sys.mk> of the form:
	TOOL_FOO?=	foo
and for the ${USETOOLS}=="yes" case in <bsd.own.mk>, provide override:
	TOOL_FOO=	${TOOLDIR}/bin/${_TOOL_PREFIX}foo

Document all of these in bsd.README.

This cleans up a chunk of potential (and actual) namespace collision
within our build infrastructure, as well as improves consistency in
the share/mk documentation and provision of appropriate defaults for
each of these variables.
2003-07-10 10:33:58 +00:00
mrg 94594f5e48 extract the bintils VERSION.
call the new make targets "native-gcc", etc.
2003-03-05 06:17:17 +00:00
mrg 266fa92cbc mknative:
- get man_MANS and TEXINFO from binutils/doc/Makefile now, not
	binutils/Makefile, as all the binutils docs moved.
both:
	- add new "mknative-gcc", "mknative-binutils", and "mknative-gdb"
	targets / mknative options to allow regeneration of just one part
	of the toolchain.
2003-03-05 05:28:29 +00:00
mrg 0e5a502526 update for binutils 2.13.2.1, and a few other changes... 2003-03-01 13:09:09 +00:00
lukem 27c21a917d replace DIST with GNUHOSTDIST, and don't unconditionally define it
in Makefile.gnuhost (use ?= instead of =, to allow overriding)
2003-02-07 01:52:51 +00:00
thorpej c4a72b6436 Centralize the definition of the tool name prefix (i.e. "nb") into
bsd.own.mk, as the _TOOL_PREFIX variable.
2002-12-08 20:19:56 +00:00
tv 569df344d5 * Don't try to get the gdb framework if gdb doesn't configure due to missing
gdb support (determined by GNU configure).

* Be less verbose if there are no existing toolchain framework files to
  compare (suppress grep "file not found" error)
2002-02-27 16:45:11 +00:00
tv 8b54ad2d20 Fix bootstrap-libgcc (should be looking in build/, not .native/), and make
.native/.configure_done depend on the typical _GNU_CFGSRC stuff.
2002-02-27 04:43:22 +00:00
tv 980f1f32fc Complete the mknative method of creating the toolchain metainformation
files.  This version is capable of generating these files Properly from
a cross host (subject to having tools and target libs/includes available
ahead of time; to be documented).
2002-02-26 22:31:59 +00:00
tv 2dc3b09c0b First of two parts to replace toolchain2netbsd and make it more cross-happy:
Provide a target "bootstrap-libgcc", which will create the files
    src/gnu/lib/libgcc/${MACHINE_ARCH}.mk
    src/gnu/usr.bin/gcc/arch/${MACHINE_ARCH}/tconfig.h
    src/gnu/usr.bin/gcc/arch/${MACHINE_ARCH}/tm.h
...enough to allow libgcc to build so that a bootstrap build to DESTDIR can
take place.
2002-02-11 21:24:09 +00:00
tv 87ed89b8e3 Make sure MAKEINFO is defined, as it appears that toolchain/texinfo is not
auto-built.
2002-01-31 15:25:08 +00:00
tv b384b10366 Change .MAKEFLAGS to MAKE_ARGS so MACHINE doesn't get trashed in some
cases.
2001-11-16 01:50:17 +00:00
tv 0911b89ff5 Fix the fix; only install gcc once. 2001-11-15 00:20:26 +00:00
thorpej 2536e6bcf3 Fix a typo in the install target list. 2001-11-15 00:17:54 +00:00
tv d21f3d4a13 Prefix all target-specific things with `${MACHINE_GNU_PLATFORM}-'.
Prefix all non-target-specific things with `nb'.
2001-11-14 22:13:39 +00:00
tv be1b573f6d One More Time: Make _mvcpp work on an UPDATE install (without bombing). 2001-11-13 15:32:15 +00:00
tv 958e3755af Make _mvcpp work on an UPDATE reinstall. 2001-11-13 15:30:06 +00:00
tv 30b6e7538a Re-add cpp; this was lost in the overhaul. (XXX this needs to GO AWAY
and the build system needs to use ${CC} -E...!)
2001-11-13 14:49:00 +00:00
tv b5cd2489b2 Major overhaul of src/tools and host toolchain. Summary of changes:
* Rewrite src/tools Make logic to work like the rest of the tree wrt
  "dependall" and "install".  The old "make build" hack is gone.

* Remove the MKTOOLS logic.  This was linked to the "make build" hack,
  and was only needed because TOOLDIR originally had no writable default.

* Redo the GNU configure/make logic to make it fit reasonably in a
  BSD make wrapper.  Use new ${.ALLTARGETS} variable to scan for
  targets in $(srcdir), and mark them with .MADE: to prevent rebuilding.

* Only build cross tools in src/tools; remove some messy logic in
  src/usr.* and src/gnu/usr.* that would do target filename rewriting
  (improves consistency and readability).

* Add the ability to build cross gdb at tool build time by setting
  MKCROSSGDB (default no) to "yes" in mk.conf.

* Add src/tools/groff and set up paths to work with this cross groff.
2001-11-12 23:16:17 +00:00
thorpej d8c2abc4aa Make *really* sure that MACHINE is set to an empty string so that
it doesn't infect the linker script build (i.e. override any MACHINE=
that might already be in MAKEFLAGS).
2001-11-01 01:52:45 +00:00
tv c9a6a2c359 * Always descend into "tools" regardless of USETOOLS setting. Instead,
just don't build the tools if USETOOLS!=yes.  This permits objdirs to
  be created even when USETOOLS=no.

* Clean up use of "-m" by specifying it to .MAKEFLAGS: if needed.
2001-10-31 01:20:09 +00:00
tv 822fbb0675 Prevent parallelism problemswhen recursing into the GNU makefiles by
disabling parallelism in those builds.
2001-10-08 22:43:56 +00:00
tv 17f50da79a Move the setting of DESTDIR from the environment to the command line, deals
with DESTDIR being set on the command line at the top level (as per MAKEFLAGS
propagation in newer make(1) sources).
2001-10-08 22:19:55 +00:00
bjh21 fe71d89d58 Blank MACHINE in the environment when building the toolchain. This is
necessary to prevent ELF linker scripts' being built incorrectly, and
parallels rev 1.5 of gnu/usr.bin/binutils/ld/Makefile.
2001-10-06 16:38:04 +00:00
tv 848b7208e8 Clear DESTDIR from the environment when invoking make on the toolchain's
GNU makefiles.  Some of these tools are (amazingly) DESTDIR aware, but
we don't want that handling for host tools.

Fixes PR bin/14079.
2001-10-04 17:52:27 +00:00
tv d27286ce34 - Create a real cpp binary.
- Set CC properly in environment for mkdep and lint.
- Add compile_et to TOOLDIR host tools.
2001-09-21 23:00:35 +00:00
tv c5d597ce98 Bootstrap toolchain framework, first pass. 2001-08-14 11:01:55 +00:00