summaryrefslogtreecommitdiff
path: root/pat/Jmakefile
blob: c9ab1047dd1f401784247af8e79c9476852b4d99 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
/*
 * Jmakefile for patching tools.
 */

;# $Id: Jmakefile,v 3.0.1.3 1995/07/24 09:57:21 ram Exp $
;#
;#  Copyright (c) 1991-1993, Raphael Manfredi
;#  
;#  You may redistribute only under the terms of the Artistic Licence,
;#  as specified in the README file that comes with the distribution.
;#  You may reuse parts of this distribution only within the terms of
;#  that same Artistic Licence; a copy of which may be found at the root
;#  of the source tree for dist 3.0.
;#
;# $Log: Jmakefile,v $
;# Revision 3.0.1.3  1995/07/24  09:57:21  ram
;# patch56: was missing an entry for the patlog program
;#
;# Revision 3.0.1.2  1994/01/24  13:42:48  ram
;# patch16: added dependency generation stage
;#
;# Revision 3.0.1.1  1993/08/24  12:09:05  ram
;# patch3: added patnotify and patsnap
;#
;# Revision 3.0  1993/08/18  12:10:32  ram
;# Baseline for dist 3.0 netwide release.
;#

/* BASE is used to give the extensions for pat* files. Usually, '//' can be
 * used to specify a null expansion pattern, but some of those new smart cpp
 * now think it's a up-to-end-of-line comment--why do they do that to us?
 */
BASE = /^^/ cil base diff make clean col name ftp send \
	index post notify snap log

/* PAT is derived from BASE and is the list of all the files to produce */
PAT = \
|expand f!$(BASE)!
	pat!f \
-expand \\

NoManPages()		/* There is a single man page for all tools */
SimpleShellScriptTarget($(PAT))

>SCRIPTDIR		/* Grrr... I have to find a nicer way!! */
>MANSRC			/* Idem!! */

InstallMultipleFlags($(PAT),$(SCRIPTDIR),-m 555)
InstallManPage(pat,$(MANSRC))

PATSH = \
|expand f!$(PAT)!
	!f.SH \
-expand \\

>SED
>RM
>MKDEP

depend::
	($(SED) '/^# DO NOT DELETE/q' Makefile && \
	grep '^\$$grep' $(PATSH) | \
	$(SED) -e "s/^.*' \([^ ]*\) >>\([^ ]*\)/\2: \1/" \
	) > Makefile.new
	cp Makefile Makefile.bak
	cp Makefile.new Makefile
	$(RM) Makefile.new