comparison miscellany/patch-2.0.12u8/Makefile.SH @ 0:bce86c4163a3

Initial revision
author kono
date Mon, 18 Apr 2005 23:46:02 +0900
parents
children 848621fd0092 441a2190cfae
comparison
equal deleted inserted replaced
-1:000000000000 0:bce86c4163a3
1 case $CONFIG in
2 '') . config.sh ;;
3 esac
4 echo "Extracting Makefile (with variable substitutions)"
5 cat >Makefile <<!GROK!THIS!
6 # $Header$
7 #
8 # $Log$
9 # Revision 1.1 2005/04/18 14:46:05 kono
10 # Initial revision
11 #
12 # Revision 2.0.1.2 88/06/22 20:43:40 lwall
13 # patch12: config.h now depends on config.h.SH
14 #
15 # Revision 2.0.1.1 88/06/03 15:00:48 lwall
16 # patch10: upgraded to match some new metaconfig stuff
17 #
18 # Revision 2.0 86/09/17 15:36:15 lwall
19 # Baseline for netwide release.
20 #
21 # Revision 1.2 86/09/08 14:07:42 lwall
22 # Split up patch.c.
23 #
24 # Revision 1.1 86/08/01 20:18:35 lwall
25 # Initial revision
26 #
27
28 CC = $cc
29 bin = $bin
30 mansrc = $mansrc
31 manext = $manext
32 CFLAGS = $ccflags -O
33 LDFLAGS = $ldflags
34 SMALL = $small
35 LARGE = $large $split
36
37 !GROK!THIS!
38 cat >>Makefile <<'!NO!SUBS!'
39
40 public = patch
41 private =
42 manpages = patch.man
43 util = Makefile
44
45 c = patch.c pch.c inp.c util.c version.c backupfile.c
46
47 obj = patch.o pch.o inp.o util.o version.o backupfile.o
48
49 lintflags = -phbvxac
50
51 addedbyconf = Makefile Makefile.old bsd config.h config.sh eunice loc pdp11 usg v7
52
53 # grrr
54 SHELL = /bin/sh
55
56 .c.o:
57 $(CC) -c $(CFLAGS) $(LARGE) $*.c
58
59 all: $(public) $(private) $(util)
60 @echo Done.
61
62 patch: $(obj)
63 $(CC) $(LDFLAGS) $(obj) $(libs) -o patch
64
65 config.h: config.h.SH
66 sh config.h.SH
67
68 # won't work with csh
69 install: patch
70 export PATH || exit 1
71 -mv $(bin)/patch $(bin)/patch.old
72 cp patch $(bin)/patch
73 chmod 755 $(bin)/patch
74 -cp patch.man $(mansrc)/patch.$(manext)
75
76 uninstall:
77 rm -f $(bin)/patch $(mansrc)/patch.$(manext)
78 test ! -f $(bin)/patch.old || mv $(bin)/patch.old $(bin)/patch
79
80 clean:
81 rm -f patch *.o core
82
83 mostlyclean: clean
84
85 distclean: clean
86 rm -f $(addedbyconf)
87
88 realclean: distclean
89 rm -f *.orig *~
90
91 DISTFILES=ChangeLog Configure EXTERN.h INTERN.h MANIFEST Makefile.SH \
92 README common.h config.H config.h.SH inp.c inp.h malloc.c patch.c patch.man \
93 patchlevel.h pch.c pch.h util.c util.h version.c version.h backupfile.c \
94 backupfile.h
95
96 dist: $(DISTFILES)
97 echo patch-2.0.`sed -e '/PATCHLEVEL/!d' -e 's/[^0-9]*\([0-9a-z.]*\).*/\1/' -e q patchlevel.h` > .fname
98 rm -rf `cat .fname`
99 mkdir `cat .fname`
100 ln $(DISTFILES) `cat .fname`
101 tar chZf `cat .fname`.tar.Z `cat .fname`
102 rm -rf `cat .fname` .fname
103
104 # The following lint has practically everything turned on. Unfortunately,
105 # you have to wade through a lot of mumbo jumbo that can't be suppressed.
106 # If the source file has a /*NOSTRICT*/ somewhere, ignore the lint message
107 # for that spot.
108
109 lint:
110 lint $(lintflags) $(defs) $(c) > patch.fuzz
111
112 patch.o: config.h common.h patch.c inp.h pch.h util.h version.h backupfile.h
113 pch.o: config.h common.h pch.c pch.h util.h
114 inp.o: config.h common.h inp.c inp.h util.h
115 util.o: config.h common.h util.c util.h backupfile.h
116 version.o: config.h common.h version.c version.h patchlevel.h util.h
117 backupfile.o: config.h backupfile.c backupfile.h
118
119 !NO!SUBS!
120 $eunicefix Makefile