Commit Graph

102 Commits

Author SHA1 Message Date
lukem
094017b449 add _MKMSGCREATE.m 2003-10-19 14:23:02 +00:00
lukem
bef75a2e23 add _MKMSGINSTALL.m 2003-10-19 03:53:33 +00:00
lukem
d2142fb492 fix _MKSHECHO for MAKEVERBOSE=1 2003-10-19 03:21:18 +00:00
lukem
4ccb31e74a Provide _MKMSG{BUILD,CREATE,COMPILE,FORMAT,INSTALL,LINK,LEX,YACC} to display
${_MKMSG} "  ...  {$.TARGET}"  and use appropriately.

Provide _MKMSGLINK.m to provide "link" message by itself (without ${.TARGET})

Replace _MKSHCMD with _MKSHECHO
2003-10-19 03:00:55 +00:00
lukem
e14dfde075 Add rules for .s .s.o .S .S.o to support per-source COPTS,CPUFLAGS,CPPFLAGS
and MAKEVERBOSE
2003-10-19 02:11:29 +00:00
lukem
f1e290c260 implement MAKEVERBOSE for rules which are of the form:
@cmp -s ${.ALLSRC} ${.TARGET} || ( echo cmd && cmd )
2003-10-18 16:41:19 +00:00
lukem
03b6213598 Implement MAKEVERBOSE to control how "verbose" the standard make(1) rules are.
Supported values:
    0	Minimal output ("quiet")
    1	Describe what is occurring
    2	Describe what is occurring and echo the actual command ("verbose")
	This is the default, and is equivalent to the previous behaviour.
2003-10-18 15:33:59 +00:00
christos
4ef8a70c82 Disable -Wtraditional and explain why. 2003-08-22 18:07:21 +00:00
lukem
5e2ad4afcc Be consistent how "multiple include protection" is implemented. I.e,
.if !defined(_BSD_foo_MK_)
	_BSD_foo_MK_=1

	# ...

	.endif	# !defined(_BSD_foo_MK_)
2003-07-28 02:38:33 +00:00
lukem
29c0479a2a Add source-file-specific variables in <bsd.lib.mk> and <bsd.prog.mk>:
COPTS.<fn>	Additional flags to the compiler when creating the C objects
		for <fn>.

CPUFLAGS.<fn>	Additional flags to the compiler/assembler for <fn>.

CPPFLAGS.<fn>	Additional flags to the C pre-processor for <fn>.


(For <fn>.[ly], "<fn>.c" must be used.)
2003-07-22 06:53:21 +00:00
lukem
65668567d3 add TOOL_STAT for stat(1) 2003-07-20 14:36:12 +00:00
lukem
4d63406463 Add MKMANZ; if not set to "no", compress the manual pages at installation time.
This replaces the previous  .if defined (MANZ) behaviour, although the latter
will set MKMANZ=yes for compatibility purposes.

Don't bother with -P-bou in TOOL_ROFF_HTML; it doesn't appear to be
necessary with groff 1.19.

Fix NOHTML implementation to be consistent with other NOxxx / MKxxx
variables, and expose the user-tweakable MKHTML.
2003-07-18 02:52:51 +00:00
lukem
f0dafe0c0e use full path in default TOOL_MAKEWHATIS 2003-07-14 00:41:17 +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
tshiozak
e376aa8308 Citrus iconv support(3)
add host tools : mkcsmapper and mkesdb
  mkcsmapper - coded character set mapping table compiler
  mkesdb - encoding scheme database compiler
2003-06-26 06:30:07 +00:00
thorpej
22791b9867 Add a CPUFLAGS variable which can be set by the user's mk.conf or in
the environment:

CPUFLAGS        Additional flags to the compiler/assembler to select
                CPU instruction set options, CPU tuning options, etc.

Since CPUFLAGS is not implicitly set by any part of the make infrastructure,
it is safe to set in mk.conf, unlike COPTS or DBG.
2003-05-30 18:43:23 +00:00
lukem
65e312f75f Add ${TOOL_DB}; db(1) as a (host) tool.
Note: this is the first tool using a "TOOL_" prefix in the make(1) variable;
other similar "non-standard" variable names will be converted in the future.
2003-05-18 08:09:25 +00:00
christos
b024767c0c Fix _HOST_CYGWIN lossage. 2003-05-08 20:39:00 +00:00
christos
61987b916a Deal with CYGWIN's sh screwage. 2003-05-08 13:02:09 +00:00
lukem
787757666a add SUNLABEL 2002-12-21 12:58:13 +00:00
thorpej
841722bb50 Add -Wno-sign-compare to CFLAGS. 2002-11-25 03:03:13 +00:00
mrg
83a8e86ca3 add -Wa,-Av8plus to CFLAGS if we are building for 32bit sparc 2002-07-20 11:43:34 +00:00
lukem
cbc959037f add CAT here too 2002-06-11 16:25:11 +00:00
msaitoh
0a2fcbab95 remove duplicated -Wpointer-arith when WARNS=2 2002-05-30 21:44:07 +00:00
bjh21
bf9ec67e38 Add fgen as a host tool, used for sys/arch/sparc/bootblk. 2002-05-28 21:56:05 +00:00
simonb
e8fbd2c7f5 Make the ELF2ECOFF assignment an "?=" assignment so it won't override the
setting in bsd.own.mk.
2002-05-02 13:13:53 +00:00
bjh21
93fb47689e Sun Workshop C 5.0 objects to generating object files with suffixes other than
.o.  Work around this by generating host object files with a .lo.o suffix and
then renaming to .lo.
2002-04-23 00:15:45 +00:00
lukem
987817d952 add ELF2ECOFF 2002-04-12 05:08:53 +00:00
lukem
266f41b284 add INSTALLBOOT. sort some entries in bsd.sys.mk 2002-04-03 05:32:58 +00:00
bjh21
15b0cb61a9 Add a default for CAP_MKDB. 2002-04-01 13:30:24 +00:00
bjh21
c3e2abe891 Add CKSUM. 2002-03-31 15:01:39 +00:00
bjh21
407daa978b Provide a default for PWD_MKDB. 2002-03-31 11:48:45 +00:00
ross
de50fe2e64 Drink ALL the Kool-Aid.
(Move -mieee from lib/ to bsd.*.mk; new var MKIEEEFP defaults to yes.)
2002-01-27 23:33:51 +00:00
lukem
47737da33b add $PAX to both, and $MAKEFS to bsd.sys.mk 2002-01-25 05:21:40 +00:00
thorpej
89c7818994 Ah, don't actually need MAKEWHATIS here. 2001-11-29 23:55:33 +00:00
thorpej
79b30cbdeb Provide ${MAKEWHATIS}. 2001-11-29 23:53:23 +00:00
tv
43453698f5 Use :U successfully this time. In an expression such as ${FOO:D:Ubar}, you
end up with empty string if FOO is defined, and `bar' if it is undefined.
2001-11-28 20:12:47 +00:00
jmc
60ec3c749b Revert check for NOGCCERROR back to a .if \!defined as the :U check will break
anyone with NOGCCERROR=1 in their mk.conf
2001-11-26 06:11:20 +00:00
thorpej
72915508bb Protect from multiple inclusion. 2001-11-17 22:55:24 +00:00
thorpej
b78cf94ba5 Make sure MKDEP is defined for the non-USETOOLS case. 2001-11-17 22:48:48 +00:00
wiz
012e08cda6 Re-add check for defined(MKSOFTFLOAT) that got lost in v1.60.
Needed for Makefiles which include bsd.sys.mk, but not bsd.own.mk,
like distrib/macppc/floppies/ramdisk/Makefile.
Okay'd by simonb.
2001-11-15 12:15:09 +00:00
tv
c8c3cf578b Move the DESTDIR-based nostdinc logic to bsd.lib.mk and bsd.prog.mk where
it belongs (with the native target compile rules).
2001-11-14 21:49:53 +00:00
tv
23b305bcfa * Use -isystem instead of -idirafter for ${DESTDIR}/usr/include.
* Provide defaults for HOST_AR and HOST_RANLIB.
* Formatting cleanup.
2001-11-13 20:25:38 +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
tv
80d11d2c09 Provide defaults for MDSETIMAGE and CRUNCHGEN. 2001-11-11 21:41:00 +00:00
lukem
2d79659157 move -Wwrite-strings to WARNS=3 too ... (yech!) 2001-11-01 07:27:35 +00:00
lukem
0e643f61a5 Move -Wcast-qual from WARNS=2 to WARNS=3 (a new level), because it
generates too many false positives that require gross amounts of
workaround, and the other WARNS=2 stuff is quite useful. Per discussion
with simonb & christos.
2001-11-01 07:17:17 +00:00
tv
9bd7c9e744 Better version of previous. Use an .ifdef in this case, so the rule isn't
even defined without YHEADER.  (Otherwise can lead to odd behavior.)
2001-10-19 19:07:48 +00:00
tv
336a299fa4 Make sure .y.h rule knows what to do only if YHEADER is set. 2001-10-19 17:05:26 +00:00
tv
53aa2d95d7 Simplify many .if's by collapsing to make :D and :U conditionals. 2001-10-19 16:28:54 +00:00