Commit Graph

23 Commits

Author SHA1 Message Date
lukem
a93ea220fc Rework how dependency generation is performed:
* DPSRCS contains extra dependencies, but is _NOT_ added to CLEANFILES.
  This is a change of behaviour.  If a Makefile wants the clean semantics
  it must specifically append to CLEANFILES.
  Resolves PR toolchain/5204.

* To recap: .d (depend) files are generated for all files in SRCS and DPSRCS
  that have a suffix of: .c .m .s .S .C .cc .cpp .cxx

* If YHEADER is set, automatically add the .y->.h to DPSRCS & CLEANFILES

* Ensure that ${OBJS} ${POBJS} ${LOBJS} ${SOBJS} *.d  depend upon ${DPSRCS}

* Deprecate the (short lived) DEPENDSRCS


Update the various Makefiles to these new semantics; generally either
adding to CLEANFILES (because DPSRCS doesn't do that anymore), or replacing
specific .o dependencies with DPSRCS entries.

Tested with "make -j 8 distribution" and "make distribution".
2003-08-01 17:03:41 +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
lukem
91d06a031b More use of ${NETBSDSRCDIR}/some/path instead of ${.CURDIR}/../../some/path 2002-08-19 13:35:05 +00:00
lukem
ebb6fc9eb8 Use ${NETBSDSRCDIR}/some/path instead of ${.CURDIR}/../../some/path (etc).
(Reduces make output by ~ 20%)
2002-08-19 09:41:27 +00:00
tv
001067bbd1 Readability cleanups; MKfoo=no -> NOfoo. 2001-12-12 00:51:00 +00:00
tv
dd7ca02987 Make handling of USETOOLS uniform: Don't need to check whether it is
defined, as <bsd.own.mk> always sets it; also, compare only against "yes"
(not "no") for a yes/no check, as there are two negative states ("no" and
"never").
2001-10-31 16:15:00 +00:00
jmc
1b341e36a2 Make asn1_files depend on ${ASN1_COMPILE} which will translate to the right
binary for both the old and new toolchain setups
2001-10-30 09:48:14 +00:00
thorpej
8712835e9c Modifications to allow this to be build as a new style host tool. 2001-10-25 07:42:38 +00:00
mason
8d31b83457 More elegant method of previous change. Thanks to James Chacon for pointing
out my think-o.
2001-10-11 03:56:43 +00:00
mason
058f064635 It appears to be the case that ${COMPILEETOBJ}/compile_et, which is used in
the USETOOLS=no and !defined(USETOOLS) cases, is not guaranteed to exist.
However, the current functionality overrides any potentially correct
hand-set definition of COMPILE_ET, causing build breakage.

Now the line setting COMPILE_ET only happens if COMPILE_ET is not already
set, like so:

.if !defined(COMPILE_ET)
COMPILE_ET=     ${COMPILEETOBJ}/compile_et
.endif
2001-10-11 03:39:02 +00:00
perry
aabb474eb4 test for whether USETOOLS is defined before asking its value 2001-10-06 21:49:32 +00:00
tv
72583e218c .ifndef USE_NEW_TOOLCHAIN => .if ${USETOOLS} == "no"
Allows a new toolchain, but USETOOLS=no, configuration to build properly.
Reported by <martin@duskware.de>.
2001-10-04 16:11:24 +00:00
tv
12661f6606 Prep Heimdal host tools for new toolchain. 2001-09-21 22:58:59 +00:00
assar
4b1c7f1857 update generated heimdal include files for 0.3f
update Makefile infrastructure for 0.3f
bump shared library versions
fix some merge problems
2001-06-20 02:01:18 +00:00
sommerfeld
a0bc06eb92 parallelize (mostly ${MAKE} print-objdir -> ${PRINTOBJDIR}) 2000-12-30 17:21:44 +00:00
jdolecek
b0074dd768 back out majority of rev 1.5, left stuff from rev. 1.5 is:
* () --> {} change
* removal of redundant explicit dependency 'asn1.h: asn1.hx'
2000-11-19 20:29:05 +00:00
veego
4d9226fbc0 Backout parts of rev 1.5.
We need the SUBDIR here to create an obj directory in asn1_compile.
2000-11-19 10:56:05 +00:00
pk
2c7ffcac2f Put back ${SRCS}: asn1.h', so a make depend' is not obligatory. 2000-11-17 09:57:55 +00:00
jdolecek
794898fca8 clean up depends a little, add stuff to force compilation of
asn1_compile as needed, the SUBDIR stuff is no longer used
this is primarily to avoid parsing k5.asn1 on every visit here
2000-11-13 15:08:16 +00:00
jhawk
a022cf9d37 Use
${MAKE}
instead of
  make
2000-08-30 23:51:46 +00:00
assar
187f6e559a update build infrastructure for heimdal 0.3a, including new shlib versions 2000-08-03 03:53:35 +00:00
thorpej
e041ca2c2e Fixup Heimdal library builds. 2000-06-16 22:46:43 +00:00
thorpej
faf5f5eb7a Import Heimdal library build glue from cryptosrc-intl. 2000-06-16 19:27:31 +00:00