]> git.ipfire.org Git - thirdparty/squid.git/blame - src/Makefile.am
Bugzilla #224 also present for HTCP
[thirdparty/squid.git] / src / Makefile.am
CommitLineData
a2794549 1#
2# Makefile for the Squid Object Cache server
3#
7fd8dcbb 4# $Id: Makefile.am,v 1.10 2001/10/29 08:10:21 robertc Exp $
a2794549 5#
6# Uncomment and customize the following to suit your needs:
7#
8
9if USE_DNSSERVER
10DNSSOURCE = dns.c
11DNSSERVER = dnsserver
12else
13DNSSOURCE = dns_internal.c
bacca099 14DNSSERVER =
a2794549 15endif
16
17if USE_SNMP
18SNMPSOURCE = snmp_core.c snmp_agent.c
19else
20SNMPSOURCE =
21endif
22
23if USE_DELAY_POOLS
24DELAY_POOL_SOURCE = delay_pools.c
25else
26DELAY_POOL_SOURCE =
27endif
28
29if ENABLE_HTCP
30HTCPSOURCE = htcp.c
31endif
32
33if MAKE_LEAKFINDER
34LEAKFINDERSOURCE = leakfinder.c
35else
36LEAKFINDERSOURCE =
37endif
38
39if ENABLE_UNLINKD
40UNLINKDSOURCE = unlinkd.c
41UNLINKD = unlinkd
bacca099 42UNLINKD_EXE = unlinkd$(EXEEXT)
a2794549 43else
44UNLINKDSOURCE =
45UNLINKD =
bacca099 46UNLINKD_EXE =
a2794549 47endif
48
49if ENABLE_SSL
50SSLSOURCE = ssl_support.c
51else
52SSLSOURCE =
53endif
54
55if ENABLE_WIN32SPECIFIC
56WIN32SOURCE = win32.c
57else
58WIN32SOURCE =
59endif
60
61SUBDIRS = fs repl auth
a2794549 62
63INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include -I$(top_srcdir)/include
64
25a51990 65EXTRA_PROGRAMS = \
66 unlinkd \
67 pinger \
68 dnsserver
69
70noinst_PROGRAMS = \
71 cf_gen
72
73bin_PROGRAMS = \
74 squid \
75 client
76
77libexec_PROGRAMS = \
78 @OPT_PINGER@ \
79 $(DNSSERVER) \
80 $(UNLINKD) \
81 cachemgr
a2794549 82
83cf_gen_SOURCES = cf_gen.c defines.h
84nodist_cf_gen_HEADER = cf_gen_defines.h
85cf_gen.$(OBJEXT): cf_gen_defines.h
a2794549 86
25a51990 87EXTRA_squid_SOURCES = \
88 delay_pools.c \
89 dns.c \
90 dnsserver.c \
91 dns_internal.c \
92 htcp.c \
93 leakfinder.c \
94 snmp_core.c \
95 snmp_agent.c \
96 unlinkd.c \
97 ssl_support.c \
98 win32.c
99
a2794549 100squid_SOURCES = \
25a51990 101 access_log.c \
102 acl.c \
103 asn.c \
104 authenticate.c \
105 cache_cf.c \
106 CacheDigest.c \
107 cache_manager.c \
108 carp.c \
109 cbdata.c \
110 client_db.c \
111 client_side.c \
112 comm.c \
113 comm_select.c \
114 debug.c \
115 defines.h \
116 $(DELAY_POOL_SOURCE) \
117 disk.c \
118 $(DNSSOURCE) \
119 enums.h \
120 errorpage.c \
121 ETag.c \
122 event.c \
123 fd.c \
124 filemap.c \
125 forward.c \
126 fqdncache.c \
127 ftp.c \
128 globals.h \
129 gopher.c \
130 helper.c \
131 $(HTCPSOURCE) \
132 http.c \
133 HttpStatusLine.c \
134 HttpHdrCc.c \
135 HttpHdrRange.c \
136 HttpHdrContRange.c \
137 HttpHeader.c \
138 HttpHeaderTools.c \
139 HttpBody.c \
140 HttpMsg.c \
141 HttpReply.c \
142 HttpRequest.c \
143 icmp.c \
144 icp_v2.c \
145 icp_v3.c \
146 ident.c \
147 internal.c \
148 ipc.c \
149 ipcache.c \
150 $(LEAKFINDERSOURCE) \
151 logfile.c \
152 main.c \
153 mem.c \
154 MemPool.c \
155 MemBuf.c \
156 mime.c \
157 multicast.c \
158 neighbors.c \
159 net_db.c \
160 Packer.c \
161 pconn.c \
162 peer_digest.c \
163 peer_select.c \
164 protos.h \
165 redirect.c \
166 referer.c \
167 refresh.c \
168 send-announce.c \
169 $(SNMPSOURCE) \
170 squid.h \
171 ssl.c \
172 $(SSLSOURCE) \
173 stat.c \
174 StatHist.c \
175 String.c \
176 stmem.c \
177 store.c \
178 store_io.c \
179 store_client.c \
180 store_digest.c \
181 store_dir.c \
182 store_key_md5.c \
183 store_log.c \
184 store_rebuild.c \
185 store_swapin.c \
186 store_swapmeta.c \
187 store_swapout.c \
188 structs.h \
189 tools.c \
190 typedefs.h \
191 $(UNLINKDSOURCE) \
192 url.c \
193 urn.c \
194 useragent.c \
195 wais.c \
196 wccp.c \
197 whois.c \
198 $(WIN32SOURCE)
199
200nodist_squid_SOURCES = \
201 repl_modules.c \
202 auth_modules.c \
203 store_modules.c \
204 cf_parser.h \
205 globals.c \
206 string_arrays.c
207
208squid_LDADD = \
209 @XTRA_OBJS@ \
210 @REPL_OBJS@ \
211 @STORE_OBJS@ \
212 @AUTH_OBJS@ \
213 @CRYPTLIB@ \
214 @REGEXLIB@ \
215 @SQUID_AIO_LIB@ \
216 @SQUID_PTHREAD_LIB@ \
217 @SNMPLIB@ \
218 @LIB_MALLOC@ \
219 @SSLLIB@ \
220 ../lib/libmiscutil.a \
221 @XTRA_LIBS@
a2794549 222
223unlinkd_SOURCES =
224unlinkd_LDADD = unlinkd-daemon.o
225unlinkd-daemon.o: unlinkd.c
226 $(COMPILE) -DUNLINK_DAEMON -c $(srcdir)/unlinkd.c -o $@
227
25a51990 228pinger_SOURCES = \
229 pinger.c \
230 debug.c \
231 globals.c
a2794549 232
25a51990 233BUILT_SOURCES = \
234 cf_gen_defines.h \
235 cf_parser.h \
236 globals.c \
237 string_arrays.c \
238 repl_modules.c \
239 auth_modules.c \
240 store_modules.c
a2794549 241
25a51990 242sysconf_DATA = \
243 squid.conf.default \
244 mib.txt \
245 mime.conf.default
a2794549 246
247LDADD = ../lib/libmiscutil.a @XTRA_LIBS@
248
25a51990 249EXTRA_DIST = \
250 cf_gen_defines \
251 cf.data.pre \
252 mk-globals-c.pl \
253 mk-string-arrays.pl \
254 auth_modules.sh \
255 store_modules.sh \
256 repl_modules.sh \
257 mib.txt \
258 mime.conf.default
a2794549 259
260DEFAULT_PREFIX = $(prefix)
261DEFAULT_CONFIG_FILE = $(sysconfdir)/squid.conf
262DEFAULT_MIME_TABLE = $(sysconfdir)/mime.conf
bacca099 263DEFAULT_DNSSERVER = $(libexecdir)/@OPT_DNSSERVER_EXE@
5367f41f 264DEFAULT_LOG_PREFIX = $(localstatedir)/logs
265DEFAULT_CACHE_LOG = $(DEFAULT_LOG_PREFIX)/cache.log
266DEFAULT_ACCESS_LOG = $(DEFAULT_LOG_PREFIX)/access.log
267DEFAULT_STORE_LOG = $(DEFAULT_LOG_PREFIX)/store.log
268DEFAULT_PID_FILE = $(DEFAULT_LOG_PREFIX)/squid.pid
a2794549 269DEFAULT_SWAP_DIR = $(localstatedir)/cache
8efddab9 270DEFAULT_PINGER = $(libexecdir)/@OPT_PINGER_EXE@
a2794549 271DEFAULT_UNLINKD = $(libexecdir)/$(UNLINKD_EXE)
bacca099 272DEFAULT_DISKD = $(libexecdir)/@OPT_DISKD_EXE@
a2794549 273DEFAULT_ICON_DIR = $(sysconfdir)/icons
274DEFAULT_ERROR_DIR = $(sysconfdir)/errors
275DEFAULT_MIB_PATH = $(sysconfdir)/mib.txt
276
c4ed961a 277DEFS = @DEFS@ -DDEFAULT_CONFIG_FILE=\"$(DEFAULT_CONFIG_FILE)\"
a2794549 278
279$(OBJS): $(top_srcdir)/include/version.h ../include/autoconf.h
280
281snmp_core.o snmp_agent.o: ../snmplib/libsnmp.a $(top_srcdir)/include/cache_snmp.h
282
283globals.c: globals.h mk-globals-c.pl
284 $(PERL) $(srcdir)/mk-globals-c.pl < $(srcdir)/globals.h > $@
285
286string_arrays.c: enums.h mk-string-arrays.pl
287 $(PERL) $(srcdir)/mk-string-arrays.pl < $(srcdir)/enums.h > $@
288
289cache_diff: cache_diff.o debug.o globals.o store_key_md5.o
290 $(CC) -o $@ $(LDFLAGS) $@.o debug.o globals.o store_key_md5.o $(STD_APP_LIBS)
291
292test_cache_digest: test_cache_digest.o CacheDigest.o debug.o globals.o store_key_md5.o
293 $(CC) -o $@ $(LDFLAGS) $@.o CacheDigest.o debug.o globals.o store_key_md5.o $(STD_APP_LIBS)
294
295## If autodependency works well this is not needed anymore
296cache_cf.o: cf_parser.h
297
298squid.conf.default: cf_parser.h
299 $(SHELL) -c "test -f squid.conf.default || ./cf_gen cf.data"
300
301cf_parser.h: cf.data cf_gen$(EXEEXT)
302 ./cf_gen cf.data
303
304cf_gen_defines.h: $(srcdir)/cf_gen_defines $(srcdir)/cf.data.pre
305 awk -f $(srcdir)/cf_gen_defines <$(srcdir)/cf.data.pre >cf_gen_defines.h
306
307
308## FIXME: generate a sed command file from configure. Then this doesn't
309## depend on the Makefile.
310cf.data: cf.data.pre Makefile
311 sed "\
312 s%@DEFAULT_MIME_TABLE@%$(DEFAULT_MIME_TABLE)%g;\
313 s%@DEFAULT_DNSSERVER@%$(DEFAULT_DNSSERVER)%g;\
314 s%@DEFAULT_UNLINKD@%$(DEFAULT_UNLINKD)%g;\
315 s%@DEFAULT_PINGER@%$(DEFAULT_PINGER)%g;\
316 s%@DEFAULT_DISKD@%$(DEFAULT_DISKD)%g;\
317 s%@DEFAULT_CACHE_LOG@%$(DEFAULT_CACHE_LOG)%g;\
318 s%@DEFAULT_ACCESS_LOG@%$(DEFAULT_ACCESS_LOG)%g;\
319 s%@DEFAULT_STORE_LOG@%$(DEFAULT_STORE_LOG)%g;\
320 s%@DEFAULT_PID_FILE@%$(DEFAULT_PID_FILE)%g;\
321 s%@DEFAULT_SWAP_DIR@%$(DEFAULT_SWAP_DIR)%g;\
322 s%@DEFAULT_ICON_DIR@%$(DEFAULT_ICON_DIR)%g;\
323 s%@DEFAULT_MIB_PATH@%$(DEFAULT_MIB_PATH)%g;\
324 s%@DEFAULT_ERROR_DIR@%$(DEFAULT_ERROR_DIR)%g;\
325 s%@DEFAULT_PREFIX@%$(DEFAULT_PREFIX)%g;"\
326 < $(srcdir)/cf.data.pre >$@
327
449021e7 328store_modules.c: store_modules.sh Makefile
a2794549 329 $(SHELL) $(srcdir)/store_modules.sh $(STORE_MODULES) >store_modules.c
330
06b95d10 331repl_modules.c: repl_modules.sh Makefile
a2794549 332 $(SHELL) $(srcdir)/repl_modules.sh $(REPL_POLICIES) > repl_modules.c
333
06b95d10 334auth_modules.c: auth_modules.sh Makefile
a2794549 335 @$(SHELL) $(srcdir)/auth_modules.sh $(AUTH_MODULES) >auth_modules.c
336
7fd8dcbb 337install-data-local: install-sysconfDATA
a2794549 338 @if test -f $(DESTDIR)$(sysconfdir)/mime.conf ; then \
339 echo "$@ will not overwrite existing $(DESTDIR)$(sysconfdir)/mime.conf" ; \
340 else \
341 echo "$(INSTALL_DATA) $(srcdir)/mime.conf.default $(DESTDIR)$(sysconfdir)/mime.conf" ;\
342 $(INSTALL_DATA) $(srcdir)/mime.conf.default $(DESTDIR)$(sysconfdir)/mime.conf; \
343 fi
344 @if test -f $(DESTDIR)$(sysconfdir)/squid.conf ; then \
345 echo "$@ will not overwrite existing $(DESTDIR)$(sysconfdir)/squid.conf" ; \
346 else \
347 echo "$(INSTALL_DATA) squid.conf.default $(DESTDIR)$(sysconfdir)/squid.conf"; \
348 $(INSTALL_DATA) squid.conf.default $(DESTDIR)$(sysconfdir)/squid.conf; \
349 fi
5367f41f 350 $(mkinstalldirs) $(DESTDIR)$(DEFAULT_LOG_PREFIX)
a2794549 351
352uninstall-local:
353 @if test -f $(DESTDIR)$(sysconfdir)/mime.conf ; then \
354 echo "rm -f $(DESTDIR)$(sysconfdir)/mime.conf"; \
355 $(RM) -f $(DESTDIR)$(sysconfdir)/mime.conf; \
356 fi
357 @if test -f $(DESTDIR)$(sysconfdir)/squid.conf ; then \
358 echo "rm -f $(DESTDIR)$(sysconfdir)/squid.conf"; \
359 $(RM) -f $(DESTDIR)$(sysconfdir)/squid.conf; \
360 fi
361
362DISTCLEANFILES = cf_gen_defines.h cf.data cf_parser.h squid.conf.default \
363 globals.c string_arrays.c repl_modules.c auth_modules.c store_modules.c
364
365##install-pinger:
366## @f=$(PINGER_EXE); \
367## if test -f $(libexecdir)/$$f; then \
368## echo $(MV) $(libexecdir)/$$f $(libexecdir)/-$$f; \
369## $(MV) $(libexecdir)/$$f $(libexecdir)/-$$f; \
370## fi; \
371## echo $(INSTALL_SUID) $$f $(libexecdir); \
372## $(INSTALL_SUID) $$f $(libexecdir) || exit 1; \
373## if test -f $(libexecdir)/-$$f; then \
374## echo $(RM) -f $(libexecdir)/-$$f; \
375## $(RM) -f $(libexecdir)/-$$f; \
376## fi
377