Commit Graph

49 Commits

Author SHA1 Message Date
apb b45673f53b Add a NOSUBDIR variable for bsd.subdir.mk. If NOSUBDIR is defined
then SUBDIR is ignored.
2008-10-25 14:58:00 +00:00
lukem c6ab7e7128 Add MAKEDIRPREFIX shell macro to <bsd.own.mk>.
Usage:  ${MAKEDIRTARGET} dir target [params]
		Runs "cd $${dir} && ${MAKE} [params] $${target}",
		displaying a "pretty" message whilst doing so.

Use MAKEDIRPREFIX to implement the __recurse .USE macro in <bsd.subdir.mk>
2004-04-13 12:25:03 +00:00
lukem 84a4748659 Cosmetically tweak how .PHONY is used by (generally) providing it as a source,
instead of using it as a target with all the rules as its sources.
2004-01-29 01:48:45 +00:00
tv 1129ed4afe Improve readability and reduce redundant redundancy in share/mk; add some
descriptive comments.  The guts of hostprog, lib, and prog are mostly
unchanged; this will be done in another pass.

Make several things work properly with UNPRIVILEGED set, and make the
install-time "cmp" logic work for MANZ.  Also reimplement INCS{DIR,NAME}_foo
(requested by wiz) in a backwards compatible way.

Reviewed by christos.
2001-11-02 05:21:47 +00:00
tv d1a2ff769a Make sure "clean" target is always defined, to compensate for cleandir
now being defined in terms of clean.
2001-10-04 16:29:54 +00:00
tv cda4a8d07c The -m option is automatically propagated by make(1). Don't add yet more
(possibly wrong) `-m' options; this will only make MAKEFLAGS bigger and
bigger with each recursion.
2001-09-22 05:01:26 +00:00
tv 6abadb2b98 Allow for recursion speedups by predefining rules for large subtrees which
don't need to run a particular target (such as "includes-games" at top level,
or "includes-sushi" at share/).
2001-09-21 20:50:23 +00:00
tv 73774cf454 On recursion, don't recurse "clean" if making "cleandir". (Related to
bsd.own.mk change that defined clean as a dependency of cleandir.)
2001-08-14 09:02:26 +00:00
sommerfeld e538aac13b Don't send .WAIT into the bitbucket 2001-01-09 02:08:32 +00:00
sommerfeld bdeb8ccecf Restore the intermediate subdir-${targ} targets since they're
referenced elsewhere; fixes problem of afterinstall running too soon.
2001-01-01 15:27:31 +00:00
sommerfeld 3459e6c590 Change SUBDIR expansions so that a .WAIT in a subdirs list turns into
.WAIT (rather than a ${targ}-.WAIT) in the ${targ}'s subdir dependancy list.

This allows .WAIT to be used in SUBDIR as a synchronization barrier
for recursive parallel builds.
2000-12-30 14:32:04 +00:00
mycroft 9994843c59 Fix some breakage with directory that have no subdirectories. 2000-06-06 08:54:06 +00:00
mycroft 602ebf1e8d Oops; fix a subtle bit of semantics that was broken in the previous. 2000-06-06 06:49:39 +00:00
mycroft 58b1f972c2 Oops. DTRT with directory names with dashes (e.g. for crypto-*). 2000-06-06 05:39:26 +00:00
mycroft d1460458fc A few changes to decrease parsing time and memory usage. 2000-06-06 05:33:58 +00:00
mrg 72cbcc0079 fix an error in the previous 2000-04-16 08:37:27 +00:00
mrg 1ae7478b2a fix long standing bug in `make build' with $DESTDIR:
- during `make build' after /usr/share/mk has been installed, call
  make with `-m $DESTDIR/usr/share/mk'.
2000-04-10 14:47:22 +00:00
aidan 64f6f24aa6 Allow absolute directories in SUBDIR. There's probably a better fix that
can go in 'make'.
2000-03-11 14:51:40 +00:00
tv 1d11758833 Remove `dirname: all-dirname' compatibility hack. It's been long supposed
to go away, and even commented as such....
1999-02-11 05:01:39 +00:00
thorpej f72895d295 Echo the target we're working on while traversing subdirs, so one can
better judge how much longer a build will take.  Patch submitted
by Brian Grayson <bgrayson@ece.utexas.edu> in PR #4419.
1997-11-13 09:18:19 +00:00
drochner 978c73b8c6 Fix the before/after-install ordering problem in a different way.
The old fix broke with multiple targets on the make command line.
1997-10-27 19:41:05 +00:00
mycroft ef2bc499bd Don't include bsd.obj.mk in these two files. 1997-10-11 08:43:34 +00:00
mycroft 1e9e92665f Several changes:
* Allow bsd.man.mk to be included separately.
* Always include bsd.own.mk and bsd.obj.mk.
* Include bsd.man.mk and bsd.nls.mk even if NOMAN or NONLS; just turn off
building of the affected files instead.
* Require bsd.subdir.mk to be included explicitly.
(Will make appropriate changes to Makefiles shortly.)
1997-10-11 08:16:24 +00:00
mycroft b7362c7c30 Move the previous to a different place, because `.if !target(...' sucks. 1997-10-11 07:26:53 +00:00
mycroft 430cf95918 Massively simplify this. Partly from David Holland in PR 3823. 1997-10-10 09:12:28 +00:00
cjs 7a66732d34 Back out BUILDDIR and NOINSTALL changes. 1997-05-31 21:21:13 +00:00
cjs 2fc3406301 Re-add other folks' changes that I accidently reverted when I did my
build system changes commit.
1997-05-27 17:45:57 +00:00
cjs 5fd7ce7066 These updates to the build allow building against include files
and libs in the object tree, if you use a separate object tree,
while maintaining backward compatability with other build methods.
See the notes in src/share/mk/bsd.README for full details. Note
that the `make includes' target now only installs the include files
in the build directory (if you use one--otherwise they go in DESTDIR
just like before); `make install' will install include files in
DESTDIR.
1997-05-26 03:55:19 +00:00
christos 67c5f6f8ee Add a realinstall target so that we recurse to subdirectories making install,
before the our afterinstall target fires.
1997-05-17 16:59:28 +00:00
mycroft b2a77a6aa4 Don't use _SUBDIRUSE outside of bsd.subdir.mk. 1997-05-07 17:06:16 +00:00
mycroft bb8827f7d1 Various simplifications. 1997-05-07 15:53:28 +00:00
mycroft 6a00bc76f3 Set the .MAKE attribute for all recursive targets. 1997-05-06 23:53:40 +00:00
mycroft 5acae7b6ea Add a pile of missing .PHONYs. 1997-05-06 20:54:31 +00:00
christos c9ba10ae4a Annotate missing directories as [skipped: missing] (from Christoph Badura) 1997-04-16 14:09:16 +00:00
christos 9a7df3e0e4 Skip missing subdirectories to enable builds in partial source trees.
Directories being skipped are mentioned as '===> dir [skipped]'
1997-04-15 21:32:40 +00:00
mikel 76cfd073e9 merge lite-2 changes (mostly SCCSids) 1997-03-29 08:02:45 +00:00
christos 25f6ec749f make rules update:
- add UPDATE and BUILD features
- add new FILES, INCS, SCRIPTS variables
- allow man pages source installation
1997-03-24 21:54:12 +00:00
cgd 30f6cf581e changes to allow "make -j N" to more easily parallelize many subdirs 1997-03-21 00:53:02 +00:00
jtc f9ff89048b Added new standard target "includes" (used to install header files) to
bsd.subdir.mk.  Added some documentation to bsd.README.
1996-04-04 02:05:03 +00:00
cgd d136b73088 show the directory depth, by printing out the hierarchy name.
Suggested by Ty Sarna, implemented by me.  Useful, because it tells you
how deep you are, and allows you to paste the pathname in to 'cd' to the
directory.
1995-07-24 04:22:29 +00:00
mycroft 2055209f92 Stop if cd fails. 1994-10-09 16:44:01 +00:00
mycroft 101c02e6db Move the inclusion of bsd.own.mk to a better place. 1994-07-26 19:42:37 +00:00
cgd 61d2ae79f4 RCSID frobbing, and minor sanity adjustments. 1994-06-30 05:31:04 +00:00
cgd b233f19e46 don't be careless with _SUBDIRUSE 1994-06-30 05:21:28 +00:00
cgd c0793f717f have _SUBDIRUSE done in 'realinstall', not in 'install' so that
'afterinstall' actually happens *after* the real install!
since this entire section is in a "!target(install)", having
it done the other way was wrong and unnecessary  (i.e. the
previous change/comment was bogus).
1994-02-09 07:55:08 +00:00
mycroft 30beb79c09 Make sure we don't recurse into subdirectories if Makefile specified `install'
target.  (It's usually blank and is specifically to avoid doing this...)
1993-08-17 17:00:39 +00:00
mycroft 3eebe31396 Move man rules to sys.mk.
Use bsd.subdir.mk for building subdirectories.
Don't forget to remove x.cc and x.C when using SHAREDSTRINGS.
Make ${PROG} always depend on ${LIBCRT0}.
Don't duplicate code between cleandir and clean.
Move tags target to bsd.dep.mk.
Move STRIP to bsd.own.mk.
Remove redundant definitions of {BIN,MAN}{DIR,GRP,OWN,MODE}.
Move {LIB,DOC}{DIR,GRP,OWN,MODE} defaults to bsd.own.mk.
1993-08-15 20:42:39 +00:00
mycroft 6a1bdd6fc0 Abstract out dependency stuff, and add RCS identifiers. 1993-08-15 19:37:04 +00:00
cgd 61f282557f initial import of 386bsd-0.1 sources 1993-03-21 09:45:37 +00:00