]> git.ipfire.org Git - thirdparty/squid.git/blame - src/Makefile.am
Don't try chdir("none") for coredump_dir option.
[thirdparty/squid.git] / src / Makefile.am
CommitLineData
a2794549 1#
2# Makefile for the Squid Object Cache server
3#
06b95d10 4# $Id: Makefile.am,v 1.3 2001/09/03 22:59:26 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
14endif
15
16if USE_SNMP
17SNMPSOURCE = snmp_core.c snmp_agent.c
18else
19SNMPSOURCE =
20endif
21
22if USE_DELAY_POOLS
23DELAY_POOL_SOURCE = delay_pools.c
24else
25DELAY_POOL_SOURCE =
26endif
27
28if ENABLE_HTCP
29HTCPSOURCE = htcp.c
30endif
31
32if MAKE_LEAKFINDER
33LEAKFINDERSOURCE = leakfinder.c
34else
35LEAKFINDERSOURCE =
36endif
37
38if ENABLE_UNLINKD
39UNLINKDSOURCE = unlinkd.c
40UNLINKD = unlinkd
41else
42UNLINKDSOURCE =
43UNLINKD =
44endif
45
46if ENABLE_SSL
47SSLSOURCE = ssl_support.c
48else
49SSLSOURCE =
50endif
51
52if ENABLE_WIN32SPECIFIC
53WIN32SOURCE = win32.c
54else
55WIN32SOURCE =
56endif
57
58SUBDIRS = fs repl auth
59#look into pkgsbin..
60libexecdir = ${prefix}/libexec/squid
61
62INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include -I$(top_srcdir)/include
63
64EXTRA_PROGRAMS = unlinkd pinger dnsserver
65noinst_PROGRAMS = cf_gen
66bin_PROGRAMS = squid client
67libexec_PROGRAMS = @OPT_PINGER_EXE@ $(DNSSERVER) $(UNLINKD) cachemgr
68
69cf_gen_SOURCES = cf_gen.c defines.h
70nodist_cf_gen_HEADER = cf_gen_defines.h
71cf_gen.$(OBJEXT): cf_gen_defines.h
72##Makefile defines.h ../include/autoconf.h
73##cf_gen_LDADD = ../lib/libmiscutil.a
74
75EXTRA_squid_SOURCES = delay_pools.c dns.c dnsserver.c dns_internal.c htcp.c \
76leakfinder.c snmp_core.c snmp_agent.c unlinkd.c ssl_support.c win32.c
77squid_SOURCES = \
78access_log.c acl.c asn.c authenticate.c cache_cf.c \
79CacheDigest.c cache_manager.c carp.c cbdata.c client_db.c client_side.c \
80comm.c comm_select.c debug.c defines.h $(DELAY_POOL_SOURCE) disk.c $(DNSSOURCE) enums.h \
81errorpage.c ETag.c event.c fd.c filemap.c forward.c fqdncache.c ftp.c \
82globals.h gopher.c helper.c $(HTCPSOURCE) http.c HttpStatusLine.c HttpHdrCc.c \
83HttpHdrRange.c HttpHdrContRange.c HttpHeader.c HttpHeaderTools.c HttpBody.c \
84HttpMsg.c HttpReply.c HttpRequest.c icmp.c icp_v2.c icp_v3.c ident.c internal.c \
85ipc.c ipcache.c $(LEAKFINDERSOURCE) logfile.c main.c mem.c MemPool.c MemBuf.c \
86mime.c multicast.c neighbors.c net_db.c Packer.c pconn.c peer_digest.c \
87peer_select.c protos.h redirect.c referer.c refresh.c send-announce.c $(SNMPSOURCE) \
88squid.h ssl.c $(SSLSOURCE) stat.c StatHist.c String.c stmem.c store.c store_io.c \
89store_client.c store_digest.c store_dir.c store_key_md5.c store_log.c store_rebuild.c \
90store_swapin.c store_swapmeta.c store_swapout.c structs.h tools.c typedefs.h \
91$(UNLINKDSOURCE) url.c urn.c useragent.c wais.c wccp.c whois.c $(WIN32SOURCE)
92nodist_squid_SOURCES = repl_modules.c auth_modules.c store_modules.c \
93 cf_parser.h globals.c string_arrays.c
94squid_LDADD = @XTRA_OBJS@ @REPL_OBJS@ @STORE_OBJS@ @AUTH_OBJS@ \
95 @CRYPTLIB@ @REGEXLIB@ @SQUID_AIO_LIB@ @SQUID_PTHREAD_LIB@ \
96 @SNMPLIB@ @LIB_MALLOC@ @SSLLIB@ ../lib/libmiscutil.a @XTRA_LIBS@
97
98unlinkd_SOURCES =
99unlinkd_LDADD = unlinkd-daemon.o
100unlinkd-daemon.o: unlinkd.c
101 $(COMPILE) -DUNLINK_DAEMON -c $(srcdir)/unlinkd.c -o $@
102
103pinger_SOURCES = pinger.c debug.c globals.c
104
105BUILT_SOURCES = cf_gen_defines.h cf_parser.h globals.c string_arrays.c \
106 repl_modules.c auth_modules.c store_modules.c
107
108sysconf_DATA = squid.conf.default mib.txt mime.conf.default
109
110LDADD = ../lib/libmiscutil.a @XTRA_LIBS@
111
112EXTRA_DIST = cf_gen_defines cf.data.pre mk-globals-c.pl mk-string-arrays.pl \
113 auth_modules.sh store_modules.sh repl_modules.sh mib.txt mime.conf.default
114
115DEFAULT_PREFIX = $(prefix)
116DEFAULT_CONFIG_FILE = $(sysconfdir)/squid.conf
117DEFAULT_MIME_TABLE = $(sysconfdir)/mime.conf
118DEFAULT_DNSSERVER = $(libexecdir)/$(DNSSERVER_EXE)
119DEFAULT_CACHE_LOG = $(localstatedir)/logs/cache.log
120DEFAULT_ACCESS_LOG = $(localstatedir)/logs/access.log
121DEFAULT_STORE_LOG = $(localstatedir)/logs/store.log
122DEFAULT_PID_FILE = $(localstatedir)/logs/squid.pid
123DEFAULT_SWAP_DIR = $(localstatedir)/cache
124DEFAULT_PINGER = $(libexecdir)/$(PINGER_EXE)
125DEFAULT_UNLINKD = $(libexecdir)/$(UNLINKD_EXE)
126DEFAULT_DISKD = $(libexecdir)/$(DISKD_EXE)
127DEFAULT_ICON_DIR = $(sysconfdir)/icons
128DEFAULT_ERROR_DIR = $(sysconfdir)/errors
129DEFAULT_MIB_PATH = $(sysconfdir)/mib.txt
130
131DEFS = -DDEFAULT_CONFIG_FILE=\"$(DEFAULT_CONFIG_FILE)\"
132
133$(OBJS): $(top_srcdir)/include/version.h ../include/autoconf.h
134
135snmp_core.o snmp_agent.o: ../snmplib/libsnmp.a $(top_srcdir)/include/cache_snmp.h
136
137globals.c: globals.h mk-globals-c.pl
138 $(PERL) $(srcdir)/mk-globals-c.pl < $(srcdir)/globals.h > $@
139
140string_arrays.c: enums.h mk-string-arrays.pl
141 $(PERL) $(srcdir)/mk-string-arrays.pl < $(srcdir)/enums.h > $@
142
143cache_diff: cache_diff.o debug.o globals.o store_key_md5.o
144 $(CC) -o $@ $(LDFLAGS) $@.o debug.o globals.o store_key_md5.o $(STD_APP_LIBS)
145
146test_cache_digest: test_cache_digest.o CacheDigest.o debug.o globals.o store_key_md5.o
147 $(CC) -o $@ $(LDFLAGS) $@.o CacheDigest.o debug.o globals.o store_key_md5.o $(STD_APP_LIBS)
148
149## If autodependency works well this is not needed anymore
150cache_cf.o: cf_parser.h
151
152squid.conf.default: cf_parser.h
153 $(SHELL) -c "test -f squid.conf.default || ./cf_gen cf.data"
154
155cf_parser.h: cf.data cf_gen$(EXEEXT)
156 ./cf_gen cf.data
157
158cf_gen_defines.h: $(srcdir)/cf_gen_defines $(srcdir)/cf.data.pre
159 awk -f $(srcdir)/cf_gen_defines <$(srcdir)/cf.data.pre >cf_gen_defines.h
160
161
162## FIXME: generate a sed command file from configure. Then this doesn't
163## depend on the Makefile.
164cf.data: cf.data.pre Makefile
165 sed "\
166 s%@DEFAULT_MIME_TABLE@%$(DEFAULT_MIME_TABLE)%g;\
167 s%@DEFAULT_DNSSERVER@%$(DEFAULT_DNSSERVER)%g;\
168 s%@DEFAULT_UNLINKD@%$(DEFAULT_UNLINKD)%g;\
169 s%@DEFAULT_PINGER@%$(DEFAULT_PINGER)%g;\
170 s%@DEFAULT_DISKD@%$(DEFAULT_DISKD)%g;\
171 s%@DEFAULT_CACHE_LOG@%$(DEFAULT_CACHE_LOG)%g;\
172 s%@DEFAULT_ACCESS_LOG@%$(DEFAULT_ACCESS_LOG)%g;\
173 s%@DEFAULT_STORE_LOG@%$(DEFAULT_STORE_LOG)%g;\
174 s%@DEFAULT_PID_FILE@%$(DEFAULT_PID_FILE)%g;\
175 s%@DEFAULT_SWAP_DIR@%$(DEFAULT_SWAP_DIR)%g;\
176 s%@DEFAULT_ICON_DIR@%$(DEFAULT_ICON_DIR)%g;\
177 s%@DEFAULT_MIB_PATH@%$(DEFAULT_MIB_PATH)%g;\
178 s%@DEFAULT_ERROR_DIR@%$(DEFAULT_ERROR_DIR)%g;\
179 s%@DEFAULT_PREFIX@%$(DEFAULT_PREFIX)%g;"\
180 < $(srcdir)/cf.data.pre >$@
181
449021e7 182store_modules.c: store_modules.sh Makefile
a2794549 183 $(SHELL) $(srcdir)/store_modules.sh $(STORE_MODULES) >store_modules.c
184
06b95d10 185repl_modules.c: repl_modules.sh Makefile
a2794549 186 $(SHELL) $(srcdir)/repl_modules.sh $(REPL_POLICIES) > repl_modules.c
187
06b95d10 188auth_modules.c: auth_modules.sh Makefile
a2794549 189 @$(SHELL) $(srcdir)/auth_modules.sh $(AUTH_MODULES) >auth_modules.c
190
191install-data-local:
192 @if test -f $(DESTDIR)$(sysconfdir)/mime.conf ; then \
193 echo "$@ will not overwrite existing $(DESTDIR)$(sysconfdir)/mime.conf" ; \
194 else \
195 echo "$(INSTALL_DATA) $(srcdir)/mime.conf.default $(DESTDIR)$(sysconfdir)/mime.conf" ;\
196 $(INSTALL_DATA) $(srcdir)/mime.conf.default $(DESTDIR)$(sysconfdir)/mime.conf; \
197 fi
198 @if test -f $(DESTDIR)$(sysconfdir)/squid.conf ; then \
199 echo "$@ will not overwrite existing $(DESTDIR)$(sysconfdir)/squid.conf" ; \
200 else \
201 echo "$(INSTALL_DATA) squid.conf.default $(DESTDIR)$(sysconfdir)/squid.conf"; \
202 $(INSTALL_DATA) squid.conf.default $(DESTDIR)$(sysconfdir)/squid.conf; \
203 fi
204
205uninstall-local:
206 @if test -f $(DESTDIR)$(sysconfdir)/mime.conf ; then \
207 echo "rm -f $(DESTDIR)$(sysconfdir)/mime.conf"; \
208 $(RM) -f $(DESTDIR)$(sysconfdir)/mime.conf; \
209 fi
210 @if test -f $(DESTDIR)$(sysconfdir)/squid.conf ; then \
211 echo "rm -f $(DESTDIR)$(sysconfdir)/squid.conf"; \
212 $(RM) -f $(DESTDIR)$(sysconfdir)/squid.conf; \
213 fi
214
215DISTCLEANFILES = cf_gen_defines.h cf.data cf_parser.h squid.conf.default \
216 globals.c string_arrays.c repl_modules.c auth_modules.c store_modules.c
217
218##install-pinger:
219## @f=$(PINGER_EXE); \
220## if test -f $(libexecdir)/$$f; then \
221## echo $(MV) $(libexecdir)/$$f $(libexecdir)/-$$f; \
222## $(MV) $(libexecdir)/$$f $(libexecdir)/-$$f; \
223## fi; \
224## echo $(INSTALL_SUID) $$f $(libexecdir); \
225## $(INSTALL_SUID) $$f $(libexecdir) || exit 1; \
226## if test -f $(libexecdir)/-$$f; then \
227## echo $(RM) -f $(libexecdir)/-$$f; \
228## $(RM) -f $(libexecdir)/-$$f; \
229## fi
230