1#$Id: Makefile.0,v 1.63 2001/06/21 11:59:25 guenther Exp $
2
3PM_OBJ=cstdio.$(O) common.$(O) exopen.$(O) goodies.$(O) locking.$(O) \
4 mailfold.$(O) foldinfo.$(O) misc.$(O) pipes.$(O) regexp.$(O) robust.$(O) \
5 sublib.$(O) acommon.$(O) mcommon.$(O) lastdirsep.$(O) authenticate.$(O) \
6 lmtp.$(O) memblk.$(O) variables.$(O) from.$(O) comsat.$(O)
7LF_OBJ=exopen.$(O) sublib.$(O) acommon.$(O) mcommon.$(O) authenticate.$(O) \
8 lastdirsep.$(O)
9FM_OBJ=common.$(O) fields.$(O) formisc.$(O) sublib.$(O) ecommon.$(O) \
10 acommon.$(O)
11MG_OBJ=sublib.$(O) ecommon.$(O) mcommon.$(O) hsort.$(O) lastdirsep.$(O)
12
13all:	$(BINSS)
14
15make:							# fake target
16	@$(SHELL) -c "exit 0"
17
18.PRECIOUS: Makefile
19
20procmail: procmail.$(O) $(PM_OBJ) setid
21	$(CC) $(CFLAGS) $@.$(O) $(PM_OBJ) -o $@ $(LDFLAGS)
22	@test -z "$(STRIP)" || ( echo $(STRIP) $@; $(STRIP) $@ )
23
24lockfile: lockfile.$(O) $(LF_OBJ)
25	$(CC) $(CFLAGS) $@.$(O) $(LF_OBJ) -o $@ $(LDFLAGS)
26	@test -z "$(STRIP)" || ( echo $(STRIP) $@; $(STRIP) $@ )
27
28formail: formail.$(O) $(FM_OBJ)
29	$(CC) $(CFLAGS) $@.$(O) $(FM_OBJ) -o $@ $(LDFLAGS)
30	@test -z "$(STRIP)" || ( echo $(STRIP) $@; $(STRIP) $@ )
31
32mailstat: ../examples/mailstat
33	cp ../examples/$@ $@
34	@chmod 0755 $@
35
36multigram: multigram.$(O) $(MG_OBJ) setid
37	$(CC) $(CFLAGS) $@.$(O) $(MG_OBJ) -o $@ $(LDFLAGS)
38
39../config.check:
40	@$(MAKE) -C .. config.check
41
42_autotst: _autotst.$(O) sublib.c sublib.h
43	$(CC) $(CFLAGS) $@.$(O) -o $@ $(LDFLAGS)
44
45../autoconf.h: autoconf Makefile ../patchlevel.h
46	@echo No this was not make -n >make_n
47	$(SHELL) ./autoconf $(SHELL) "$(RM)" "$(MV)" $(DEVNULL) \
48 "$(FGREP)" "$(MAKE)" $(O) "$(LOCKINGTEST)" \
49 "$(VISIBLE_BINDIR)" $@
50
51autoconf.h: ../autoconf.h
52
53targetdir.h:
54	echo "You only can/need to make multigram if you are installing"
55	echo "the mailinglist scripts.	Read ../SmartList/INSTALL for"
56	echo "more directions."
57	exit 64
58
59acommon.$(O): ../autoconf.h ../config.h includes.h acommon.h robust.h shell.h
60
61authenticate.$(O): ../autoconf.h ../config.h includes.h robust.h shell.h
62authenticate.$(O): misc.h authenticate.h authenticate.c
63	$(CC) -c -DPROCMAIL $(CFLAGS) $*.c
64
65common.$(O): ../autoconf.h ../config.h includes.h procmail.h sublib.h robust.h
66common.$(O): shell.h misc.h common.h
67
68comsat.$(O): ../autoconf.h ../config.h includes.h procmail.h sublib.h robust.h
69comsat.$(O): shell.h common.h mailfold.h variables.h comsat.h network.h
70
71cstdio.$(O): ../autoconf.h ../config.h includes.h procmail.h robust.h cstdio.h
72cstdio.$(O):  misc.h shell.h variables.h
73
74ecommon.$(O): ../autoconf.h ../config.h includes.h ecommon.h common.h shell.h
75
76exopen.$(O): ../autoconf.h ../config.h includes.h procmail.h acommon.h robust.h
77exopen.$(O): misc.h exopen.h
78
79fields.$(O): ../autoconf.h ../config.h includes.h formail.h sublib.h shell.h
80fields.$(O): common.h fields.h ecommon.h formisc.h
81
82foldinfo.$(O): ../autoconf.h ../config.h includes.h procmail.h misc.h
83foldinfo.$(O): lastdirsep.h robust.h exopen.h foldinfo.h
84
85formail.$(O): ../autoconf.h ../config.h includes.h formail.h acommon.h sublib.h
86formail.$(O): shell.h common.h fields.h ecommon.h formisc.h header.h
87formail.$(O): ../patchlevel.h
88
89formisc.$(O): ../autoconf.h ../config.h includes.h formail.h sublib.h shell.h
90formisc.$(O): common.h ecommon.h formisc.h
91
92goodies.$(O): ../autoconf.h ../config.h includes.h procmail.h sublib.h robust.h
93goodies.$(O): shell.h misc.h pipes.h common.h cstdio.h variables.h goodies.h
94
95hsort.$(O): ../autoconf.h ../config.h includes.h hsort.h
96
97lastdirsep.$(O): ../autoconf.h ../config.h includes.h lastdirsep.h
98
99lmtp.$(O): ../autoconf.h ../config.h includes.h procmail.h sublib.h robust.h
100lmtp.$(O): shell.h misc.h common.h authenticate.h cstdio.h
101lmtp.$(O): mailfold.h lmtp.h memblk.h foldinfo.h from.h
102
103lockfile.$(O): ../autoconf.h ../config.h includes.h sublib.h exopen.h mcommon.h
104lockfile.$(O): authenticate.h ../patchlevel.h
105
106locking.$(O): ../autoconf.h ../config.h includes.h procmail.h robust.h shell.h
107locking.$(O): misc.h pipes.h exopen.h locking.h lastdirsep.h
108
109mailfold.$(O): ../autoconf.h ../config.h includes.h procmail.h acommon.h
110mailfold.$(O): sublib.h robust.h shell.h misc.h pipes.h common.h exopen.h
111mailfold.$(O): variables.h locking.h mailfold.h memblk.h from.h
112
113mcommon.$(O): ../autoconf.h ../config.h includes.h mcommon.h
114
115memblk.$(O): ../autoconf.h ../config.h includes.h procmail.h shell.h
116memblk.$(O): exopen.h memblk.h
117
118misc.$(O): ../autoconf.h ../config.h includes.h procmail.h
119misc.$(O): acommon.h sublib.h robust.h shell.h misc.h pipes.h common.h cstdio.h
120misc.$(O): exopen.h regexp.h mcommon.h goodies.h locking.h comsat.h mailfold.h
121misc.$(O): lastdirsep.h authenticate.h memblk.h foldinfo.h variables.h
122
123multigram.$(O): ../autoconf.h ../config.h includes.h sublib.h hsort.h shell.h
124multigram.$(O): ecommon.h mcommon.h lastdirsep.h targetdir.h
125
126pipes.$(O): ../autoconf.h ../config.h includes.h procmail.h robust.h shell.h
127pipes.$(O): misc.h pipes.h common.h cstdio.h mcommon.h variables.h memblk.h
128pipes.$(O): mailfold.h
129
130procmail.$(O): ../patchlevel.h ../autoconf.h ../config.h includes.h procmail.h
131procmail.$(O): acommon.h sublib.h robust.h shell.h misc.h pipes.h common.h
132procmail.$(O): cstdio.h exopen.h regexp.h mcommon.h goodies.h locking.h
133procmail.$(O): mailfold.h lastdirsep.h authenticate.h lmtp.h memblk.h
134procmail.$(O): variables.h comsat.h from.h
135
136regexp.$(O): ../autoconf.h ../config.h includes.h procmail.h sublib.h robust.h
137regexp.$(O): shell.h misc.h regexp.h variables.h
138
139robust.$(O): ../autoconf.h ../config.h includes.h procmail.h robust.h shell.h
140robust.$(O): misc.h pipes.h common.h mailfold.h shell.h
141
142sublib.$(O): ../autoconf.h ../config.h includes.h sublib.h shell.h
143
144variables.$(O): ../autoconf.h ../config.h includes.h procmail.h shell.h
145variables.$(O): authenticate.h goodies.h misc.h comsat.h variables.h
146
147from.$(O): ../autoconf.h ../config.h includes.h procmail.h robust.h shell.h
148from.$(O): memblk.h from.h
149
150gethome.$(O) setid.$(O) recommend.$(O): ../autoconf.h ../config.h includes.h
151
152gethome.$(O): gethome.c
153	@$(CC) -c $(CFLAGS) $*.c
154
155setid.$(O): setid.c
156	@$(CC) -c $(CFLAGS) $*.c
157
158recommend.$(O): recommend.c
159	@$(CC) -c $(CFLAGS) $*.c
160
161.c.$(O):
162	$(CC) -c $(CFLAGS) $<
163
164gethome: gethome.$(O) setid
165	@$(CC) $(CFLAGS) $@.$(O) -o $@ $(LDFLAGS)
166
167getparams:
168	@echo "ln=\"$(LN)\"" >../SmartList/targetdir.tmp
169
170setid: setid.$(O)
171	@$(CC) $(CFLAGS) $@.$(O) -o $@ $(LDFLAGS)
172
173recommend: recommend.$(O) sublib.$(O)
174	@$(CC) $(CFLAGS) $@.$(O) sublib.$(O) -o $@ $(LDFLAGS)
175
176../man/man.sed: manconf.c ../autoconf.h ../config.h includes.h procmail.h
177../man/man.sed: ../patchlevel.h
178	@$(CC) $(CFLAGS) "-DBINDIR=\"$(VISIBLE_BINDIR)\"" -o _autotst \
179 manconf.c $(LDFLAGS)
180	@./_autotst $@
181	@echo Housekeeping file >$@
182	@$(RM) _autotst
183
184clean:
185	$(RM) -r _locktest
186	$(RM) procmail.$(O) $(PM_OBJ) lockfile.$(O) $(LF_OBJ) formail.$O \
187 $(FM_OBJ) multigram.$(O) $(MG_OBJ) $(BINSS) multigram ../autoconf.h \
188 _autotst* lookfor _locktst* grepfor recommend recommend.$(O) manconf \
189 _Makefile lock.log *core* targetdir.h setid setid.$(O) gethome \
190 gethome.$(O) make_n realloc.log
191
192Makefile: ../Makefile Makefile.0
193	@echo "You have made changes to the master Makefile, in order for"
194	@echo "these changes to show through, you will first have to do:"
195	@echo "$(MAKE) makefiles"
196
197makefiles Makefiles makefile:
198	$(MAKE) -C .. makefiles
199
200init:
201	$(MAKE) -C .. $@
202