Commit Graph

57 Commits

Author SHA1 Message Date
mycroft
09819b05ef Don't use .PHONY for targets that are actually installed. Instead use force
dependencies.  (Among other things, `make -t install' does something vaguely
sensible now.)
2002-02-11 21:14:58 +00:00
tv
8f2c8e583f Fix the :U's used with ${UPDATE} so that stray values don't get put into
the .PHONY: target.
2001-11-28 20:19:08 +00:00
bjh21
dbd735b9b1 Need bsd.sys.mk for the GROFF definition in the non-USETOOLS case. 2001-11-18 15:11:25 +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
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
58290cfc5d Change ROFF?= to be more like other utility macros; make this "groff -Tps"
by default.
2001-08-14 10:38:27 +00:00
tv
d0f9e45413 Rather than explicitly saying "clean cleandir:" all the time, make clean
a dependency of cleandir (so that "make cleandir" implies "make clean").
2001-08-14 07:02:13 +00:00
tv
dd70bf30ad Make "distclean" a REAL synonym for "cleandir" by actually aliasing it
in <bsd.own.mk>, rather than sprinkling it in all the .mk files (and
some Makefiles throughout the tree).
2001-06-01 17:49:32 +00:00
sommerfeld
263f3e581d Suppress duplicate entries in ALLFILES, FILES, INCS, DEPINCS, INFOFILES,
NLSALL, CATPAGES, MANPAGES, HTMLPAGES, and SCRIPTS.
2001-05-08 03:19:51 +00:00
mycroft
b124cdf163 Abuse .USE some more. 2000-06-06 09:53:29 +00:00
mycroft
befa5650d3 Minor rearrangement. 2000-06-06 09:22:00 +00:00
mycroft
34e1bda46a Use ODE make(1) features to eliminate extra variables and move several things
outside of .for loops.  (Needs more work to completely eliminate .for.)

XXX Don't look at this stuff.  It will make your head hurt.
2000-06-06 05:40:47 +00:00
tron
8427714121 Add "dependall" target. 2000-04-28 10:47:34 +00:00
mycroft
3e13200b73 Make dependall' play nicely with SUBDIR, using a hack similar to realinstall'
for both `depend' and `all'.
Also, remove the old hack that invokes an extra shell for .depend, now that
make(1) has been fixed.
2000-01-22 19:31:00 +00:00
fredb
1008436afc Permit "make all install", as well as "make foo install" (where foo would be
installed by "make install") without setting of BUILD. All cases where BUILD
is already set are unchanged from the old behavior.

"make all install" is now practically equivalent to "make BUILD= all install",
but without actually setting build.

Fixes pr's 8313, 3894.
1999-09-04 21:48:33 +00:00
simonb
7987e3b34d Add ${INSTPRIV} to ${INSTALL} commands. 1999-08-21 06:17:45 +00:00
lukem
497d11782a * Add support for MKDOC MKLINKLIB MKLINT MKMAN MKNLS MKOBJ MKPIC MKPICINSTALL
MKPROFILE MKSHARE, which default to `yes' unless an equivalent NOxxx
  variable is defined.
* Add MKCATPAGES, which if "no" prevents catpages from being built or installed

Users should use "MKxxx=no" instead of "NOxxx=" in /etc/mk.conf, because
this allows easy override on the make(1) command line (e.g 'make MKSHARE=yes'
to override MKSHARE=no in /etc/mk.conf).
1999-02-12 01:10:06 +00:00
christos
f16578a952 PR/2936: Brian C. Grayson: Avoid truncating precious files when installing
and the filesystem is full. Added ${RENAME} flag to install, which when set
to -r installs on a temporary file and then renames to the final destination.
${RENAME} is currently set to nothing in bsd.own.mk, but one can turn it
on in /etc/mk.conf.
1999-02-04 11:58:30 +00:00
christos
8e6800cd97 Missed a few preserve flags. 1998-09-29 11:47:51 +00:00
lukem
2eadcee825 don't build/install man pages or docs if NOSHARE defined 1998-09-27 16:31:11 +00:00
lukem
24bd0530c9 add distclean as a synonym for cleandir 1998-08-09 14:46:19 +00:00
christos
ac30d893d8 Add bsd.obj.mk and fix the rules to work with obj dirs. 1997-12-21 15:40:37 +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
christos
14b5e8dbc9 PR/3801: NAKAJIMA Yoshihiro: some documents are installed as executable 1997-06-28 01:22:59 +00:00
mycroft
4e5d05c9cc Automatically add the .c files corresponding to .l and .y files to DPSRCS.
Automatically add DPSRCS to CLEANFILES.
1997-05-09 13:25:46 +00:00
mycroft
413d34c758 Add some dummy targets. 1997-05-07 19:09:47 +00:00
mycroft
b2a77a6aa4 Don't use _SUBDIRUSE outside of bsd.subdir.mk. 1997-05-07 17:06:16 +00:00
mycroft
b475e889d8 Introduce a separate cleandoc target. 1997-05-07 16:35:44 +00:00
mycroft
bb8827f7d1 Various simplifications. 1997-05-07 15:53:28 +00:00
mycroft
2da111c521 Make most of the install targets .PRECIOUS. 1997-05-06 21:29:33 +00:00
mycroft
5acae7b6ea Add a pile of missing .PHONYs. 1997-05-06 20:54:31 +00:00
christos
a2a43b1836 Make the obj' target .PHONY', so that does not get affected by .PATH/VPATH
This is not hurting things right now, and it will help things when path
searching for target nodes is enabled for make.
1997-04-15 21:29:09 +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
perry
57e986e85a add NODOC -- if set, prevents installation of doc files
contributed by Brian de Alwis <bsdealwi@undergrad.math.uwaterloo.ca>
closes pr-2290 (per thorpej)
1997-01-17 01:15:55 +00:00
thorpej
416caa144c Use ${INSTALL} rather than "install".
From Simon J. Gerraty <sjg@zen.void.oz.au>, PR #1458.
1996-10-18 02:34:42 +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
7e8a221a9d Lite doc macros 1994-06-19 01:07:24 +00:00
cgd
38a3d1726d kill install -d's. 1994-02-09 23:50:32 +00:00
cgd
cbb274d091 change "PRINTER" to "PRINTER_TYPE" because people setenv PRINTER 1994-01-24 22:30:32 +00:00
mycroft
d079c3bdfc Add empty depend', tags', and `lint' targets. 1993-08-23 16:44:18 +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
mycroft
0c9bbcf68c Create target directories with install -d', and move obj' targets into one
file.
1993-08-15 19:26:05 +00:00
mycroft
ab127e8ac7 Don't remove obj dir (or link) when doing `make cleandir'. 1993-08-03 23:01:06 +00:00
mycroft
8846a74782 Don't print the `making ...' message if an obj dir already exists.
Also, a minor cleanup.
1993-07-29 22:04:53 +00:00
cgd
b84e2217a4 allow docs to make an obj dir and build properly with it. 1993-07-04 13:01:30 +00:00
cgd
d2f1cebe30 make documentation build into ps files. this works, mostly... 1993-06-09 22:00:27 +00:00