[core] avoid spurious trace and error abort
[lighttpd.git] / src / Makefile.am
bloba0b2c3032763069a6530050ba093446e29115728
1 AM_CFLAGS = $(FAM_CFLAGS) $(LIBUNWIND_CFLAGS)
3 noinst_PROGRAMS=lemon proc_open test_buffer test_base64 test_configfile
4 sbin_PROGRAMS=lighttpd lighttpd-angel
5 LEMON=$(top_builddir)/src/lemon$(EXEEXT)
7 TESTS=\
8         test_buffer$(EXEEXT) \
9         test_base64$(EXEEXT) \
10         test_configfile$(EXEEXT)
12 lemon_SOURCES=lemon.c
14 lighttpd_angel_SOURCES=lighttpd-angel.c
16 .PHONY: versionstamp parsers
18 versionstamp:
19         @test -f versionstamp.h || touch versionstamp.h; \
20         REVISION=""; \
21         if test -d "$(top_srcdir)/.svn" -a -x "`which svnversion`"; then \
22                 REVISION="$$(LANG= LC_ALL=C svnversion "$(top_srcdir)" 2>/dev/null || echo exported)"; \
23                 if test "$$REVISION" = "exported"; then \
24                         REVISION=""; \
25                 fi; \
26         fi; \
27         if test -z "$$REVISION" -a -d "$(top_srcdir)/.git" -a -x "`which git`"; then \
28                 REVISION="$$(cd "$(top_srcdir)"; LANG= LC_ALL=C git describe --always 2>/dev/null || echo)"; \
29         fi; \
30         if test -n "$$REVISION"; then \
31                 echo "#define REPO_VERSION \"-devel-$$REVISION\"" > versionstamp.h.tmp; \
32         else \
33                 echo "#define REPO_VERSION \"\"" > versionstamp.h.tmp; \
34         fi; \
35         if ! diff versionstamp.h.tmp versionstamp.h >/dev/null 2>/dev/null; then \
36                 mv versionstamp.h.tmp versionstamp.h; \
37         else \
38                 rm versionstamp.h.tmp; \
39         fi
41 if CROSS_COMPILING
42 configparser.c configparser.h:
43 mod_ssi_exprparser.c mod_ssi_exprparser.h:
45 parsers:
46 else
47 configparser.h: configparser.c
48 configparser.c: $(srcdir)/configparser.y $(srcdir)/lempar.c lemon$(EXEEXT)
49         rm -f configparser.h
50         $(LEMON) -q $(srcdir)/configparser.y $(srcdir)/lempar.c
52 mod_ssi_exprparser.h: mod_ssi_exprparser.c
53 mod_ssi_exprparser.c: $(srcdir)/mod_ssi_exprparser.y $(srcdir)/lempar.c lemon$(EXEEXT)
54         rm -f mod_ssi_exprparser.h
55         $(LEMON) -q $(srcdir)/mod_ssi_exprparser.y $(srcdir)/lempar.c
57 parsers: configparser.c mod_ssi_exprparser.c
58 endif
60 BUILT_SOURCES = parsers versionstamp
61 MAINTAINERCLEANFILES = configparser.c configparser.h mod_ssi_exprparser.c mod_ssi_exprparser.h
62 CLEANFILES = versionstamp.h versionstamp.h.tmp
64 common_src=base64.c buffer.c log.c \
65         keyvalue.c chunk.c  \
66         http_chunk.c stream.c fdevent.c \
67         stat_cache.c plugin.c joblist.c etag.c array.c \
68         data_string.c data_count.c data_array.c \
69         data_integer.c md5.c data_fastcgi.c \
70         vector.c \
71         fdevent_select.c fdevent_libev.c \
72         fdevent_poll.c fdevent_linux_sysepoll.c \
73         fdevent_solaris_devpoll.c fdevent_solaris_port.c \
74         fdevent_freebsd_kqueue.c \
75         data_config.c \
76         inet_ntop_cache.c crc32.c \
77         connections-glue.c \
78         configfile-glue.c \
79         http-header-glue.c \
80         network_write.c network_linux_sendfile.c \
81         network_write_mmap.c network_write_no_mmap.c \
82         network_freebsd_sendfile.c network_writev.c \
83         network_solaris_sendfilev.c network_openssl.c \
84         splaytree.c status_counter.c \
85         safe_memclear.c network_darwin_sendfile.c
87 src = server.c response.c connections.c network.c \
88         configfile.c configparser.c request.c proc_open.c
90 lib_LTLIBRARIES =
92 if NO_RDYNAMIC
93 # if the linker doesn't allow referencing symbols of the binary
94 # we have to put everything into a shared-lib and link it into
95 # everything
96 common_ldflags = -avoid-version -no-undefined
97 lib_LTLIBRARIES += liblightcomp.la
98 liblightcomp_la_SOURCES=$(common_src)
99 liblightcomp_la_CFLAGS=$(AM_CFLAGS) $(LIBEV_CFLAGS)
100 liblightcomp_la_LDFLAGS = $(common_ldflags)
101 liblightcomp_la_LIBADD = $(PCRE_LIB) $(SSL_LIB) $(FAM_LIBS) $(LIBEV_LIBS) $(ATTR_LIB)
102 common_libadd = liblightcomp.la
103 else
104 src += $(common_src)
105 common_ldflags = -avoid-version
106 common_libadd =
107 endif
108 common_module_ldflags = -module -export-dynamic $(common_ldflags)
110 lib_LTLIBRARIES += mod_flv_streaming.la
111 mod_flv_streaming_la_SOURCES = mod_flv_streaming.c
112 mod_flv_streaming_la_LDFLAGS = $(common_module_ldflags)
113 mod_flv_streaming_la_LIBADD = $(common_libadd)
115 lib_LTLIBRARIES += mod_evasive.la
116 mod_evasive_la_SOURCES = mod_evasive.c
117 mod_evasive_la_LDFLAGS = $(common_module_ldflags)
118 mod_evasive_la_LIBADD = $(common_libadd)
120 lib_LTLIBRARIES += mod_webdav.la
121 mod_webdav_la_SOURCES = mod_webdav.c
122 mod_webdav_la_CFLAGS = $(AM_CFLAGS) $(XML_CFLAGS) $(SQLITE_CFLAGS) 
123 mod_webdav_la_LDFLAGS = $(common_module_ldflags)
124 mod_webdav_la_LIBADD = $(common_libadd) $(XML_LIBS) $(SQLITE_LIBS) $(UUID_LIBS)
126 lib_LTLIBRARIES += mod_magnet.la
127 mod_magnet_la_SOURCES = mod_magnet.c mod_magnet_cache.c
128 mod_magnet_la_CFLAGS = $(AM_CFLAGS) $(LUA_CFLAGS)
129 mod_magnet_la_LDFLAGS = $(common_module_ldflags)
130 mod_magnet_la_LIBADD = $(common_libadd) $(LUA_LIBS) -lm
132 lib_LTLIBRARIES += mod_cml.la
133 mod_cml_la_SOURCES = mod_cml.c mod_cml_lua.c mod_cml_funcs.c
134 mod_cml_la_CFLAGS = $(AM_CFLAGS) $(LUA_CFLAGS)
135 mod_cml_la_LDFLAGS = $(common_module_ldflags)
136 mod_cml_la_LIBADD = $(MEMCACHED_LIB) $(common_libadd) $(LUA_LIBS) -lm
138 lib_LTLIBRARIES += mod_trigger_b4_dl.la
139 mod_trigger_b4_dl_la_SOURCES = mod_trigger_b4_dl.c
140 mod_trigger_b4_dl_la_LDFLAGS = $(common_module_ldflags)
141 mod_trigger_b4_dl_la_LIBADD = $(GDBM_LIB) $(MEMCACHED_LIB) $(PCRE_LIB) $(common_libadd)
143 lib_LTLIBRARIES += mod_mysql_vhost.la
144 mod_mysql_vhost_la_SOURCES = mod_mysql_vhost.c
145 mod_mysql_vhost_la_LDFLAGS = $(common_module_ldflags)
146 mod_mysql_vhost_la_LIBADD = $(MYSQL_LIBS) $(common_libadd)
147 mod_mysql_vhost_la_CPPFLAGS = $(MYSQL_INCLUDE)
149 lib_LTLIBRARIES += mod_cgi.la
150 mod_cgi_la_SOURCES = mod_cgi.c
151 mod_cgi_la_LDFLAGS = $(common_module_ldflags)
152 mod_cgi_la_LIBADD = $(common_libadd)
154 lib_LTLIBRARIES += mod_scgi.la
155 mod_scgi_la_SOURCES = mod_scgi.c
156 mod_scgi_la_LDFLAGS = $(common_module_ldflags)
157 mod_scgi_la_LIBADD = $(common_libadd)
159 lib_LTLIBRARIES += mod_staticfile.la
160 mod_staticfile_la_SOURCES = mod_staticfile.c
161 mod_staticfile_la_LDFLAGS = $(common_module_ldflags)
162 mod_staticfile_la_LIBADD = $(common_libadd)
164 lib_LTLIBRARIES += mod_dirlisting.la
165 mod_dirlisting_la_SOURCES = mod_dirlisting.c
166 mod_dirlisting_la_LDFLAGS = $(common_module_ldflags)
167 mod_dirlisting_la_LIBADD = $(common_libadd) $(PCRE_LIB)
169 lib_LTLIBRARIES += mod_indexfile.la
170 mod_indexfile_la_SOURCES = mod_indexfile.c
171 mod_indexfile_la_LDFLAGS = $(common_module_ldflags)
172 mod_indexfile_la_LIBADD = $(common_libadd)
174 lib_LTLIBRARIES += mod_setenv.la
175 mod_setenv_la_SOURCES = mod_setenv.c
176 mod_setenv_la_LDFLAGS = $(common_module_ldflags)
177 mod_setenv_la_LIBADD = $(common_libadd)
179 lib_LTLIBRARIES += mod_alias.la
180 mod_alias_la_SOURCES = mod_alias.c
181 mod_alias_la_LDFLAGS = $(common_module_ldflags)
182 mod_alias_la_LIBADD = $(common_libadd)
184 lib_LTLIBRARIES += mod_userdir.la
185 mod_userdir_la_SOURCES = mod_userdir.c
186 mod_userdir_la_LDFLAGS = $(common_module_ldflags)
187 mod_userdir_la_LIBADD = $(common_libadd)
189 lib_LTLIBRARIES += mod_rrdtool.la
190 mod_rrdtool_la_SOURCES = mod_rrdtool.c
191 mod_rrdtool_la_LDFLAGS = $(common_module_ldflags)
192 mod_rrdtool_la_LIBADD = $(common_libadd)
194 lib_LTLIBRARIES += mod_usertrack.la
195 mod_usertrack_la_SOURCES = mod_usertrack.c
196 mod_usertrack_la_LDFLAGS = $(common_module_ldflags)
197 mod_usertrack_la_LIBADD = $(common_libadd)
199 lib_LTLIBRARIES += mod_proxy.la
200 mod_proxy_la_SOURCES = mod_proxy.c
201 mod_proxy_la_LDFLAGS = $(common_module_ldflags)
202 mod_proxy_la_LIBADD = $(common_libadd)
204 lib_LTLIBRARIES += mod_ssi.la
205 mod_ssi_la_SOURCES = mod_ssi_exprparser.c mod_ssi_expr.c mod_ssi.c
206 mod_ssi_la_LDFLAGS = $(common_module_ldflags)
207 mod_ssi_la_LIBADD = $(common_libadd)
209 lib_LTLIBRARIES += mod_secdownload.la
210 mod_secdownload_la_SOURCES = mod_secdownload.c
211 mod_secdownload_la_LDFLAGS = $(common_module_ldflags)
212 mod_secdownload_la_LIBADD = $(common_libadd)
214 #lib_LTLIBRARIES += mod_httptls.la
215 #mod_httptls_la_SOURCES = mod_httptls.c
216 #mod_httptls_la_LDFLAGS = $(common_module_ldflags)
217 #mod_httptls_la_LIBADD = $(common_libadd)
219 lib_LTLIBRARIES += mod_expire.la
220 mod_expire_la_SOURCES = mod_expire.c
221 mod_expire_la_LDFLAGS = $(common_module_ldflags)
222 mod_expire_la_LIBADD = $(common_libadd)
224 lib_LTLIBRARIES += mod_evhost.la
225 mod_evhost_la_SOURCES = mod_evhost.c
226 mod_evhost_la_LDFLAGS = $(common_module_ldflags)
227 mod_evhost_la_LIBADD = $(common_libadd)
229 lib_LTLIBRARIES += mod_simple_vhost.la
230 mod_simple_vhost_la_SOURCES = mod_simple_vhost.c
231 mod_simple_vhost_la_LDFLAGS = $(common_module_ldflags)
232 mod_simple_vhost_la_LIBADD = $(common_libadd)
234 lib_LTLIBRARIES += mod_fastcgi.la
235 mod_fastcgi_la_SOURCES = mod_fastcgi.c
236 mod_fastcgi_la_LDFLAGS = $(common_module_ldflags)
237 mod_fastcgi_la_LIBADD = $(common_libadd)
239 lib_LTLIBRARIES += mod_extforward.la
240 mod_extforward_la_SOURCES = mod_extforward.c
241 mod_extforward_la_LDFLAGS = $(common_module_ldflags)
242 mod_extforward_la_LIBADD = $(common_libadd)
244 lib_LTLIBRARIES += mod_access.la
245 mod_access_la_SOURCES = mod_access.c
246 mod_access_la_LDFLAGS = $(common_module_ldflags)
247 mod_access_la_LIBADD = $(common_libadd)
249 lib_LTLIBRARIES += mod_compress.la
250 mod_compress_la_SOURCES = mod_compress.c
251 mod_compress_la_LDFLAGS = $(common_module_ldflags)
252 mod_compress_la_LIBADD = $(Z_LIB) $(BZ_LIB) $(common_libadd)
254 lib_LTLIBRARIES += mod_auth.la
255 mod_auth_la_SOURCES = mod_auth.c http_auth.c
256 mod_auth_la_LDFLAGS = $(common_module_ldflags)
257 mod_auth_la_LIBADD = $(CRYPT_LIB) $(SSL_LIB) $(LDAP_LIB) $(LBER_LIB) $(common_libadd)
259 lib_LTLIBRARIES += mod_rewrite.la
260 mod_rewrite_la_SOURCES = mod_rewrite.c
261 mod_rewrite_la_LDFLAGS = $(common_module_ldflags)
262 mod_rewrite_la_LIBADD = $(PCRE_LIB) $(common_libadd)
264 lib_LTLIBRARIES += mod_redirect.la
265 mod_redirect_la_SOURCES = mod_redirect.c
266 mod_redirect_la_LDFLAGS = $(common_module_ldflags)
267 mod_redirect_la_LIBADD = $(PCRE_LIB) $(common_libadd)
269 lib_LTLIBRARIES += mod_status.la
270 mod_status_la_SOURCES = mod_status.c
271 mod_status_la_LDFLAGS = $(common_module_ldflags)
272 mod_status_la_LIBADD = $(common_libadd)
274 lib_LTLIBRARIES += mod_accesslog.la
275 mod_accesslog_la_SOURCES = mod_accesslog.c
276 mod_accesslog_la_LDFLAGS = $(common_module_ldflags)
277 mod_accesslog_la_LIBADD = $(common_libadd)
280 hdr = server.h base64.h buffer.h network.h log.h keyvalue.h \
281         response.h request.h fastcgi.h chunk.h \
282         first.h settings.h http_chunk.h \
283         md5.h http_auth.h stream.h \
284         fdevent.h connections.h base.h stat_cache.h \
285         plugin.h mod_auth.h \
286         etag.h joblist.h array.h vector.h crc32.h \
287         network_backends.h configfile.h \
288         mod_ssi.h mod_ssi_expr.h inet_ntop_cache.h \
289         configparser.h mod_ssi_exprparser.h \
290         sys-mmap.h sys-socket.h mod_cml.h mod_cml_funcs.h \
291         safe_memclear.h splaytree.h proc_open.h status_counter.h \
292         mod_magnet_cache.h \
293         version.h
295 DEFS= @DEFS@ -DHAVE_VERSION_H -DLIBRARY_DIR="\"$(libdir)\"" -DSBIN_DIR="\"$(sbindir)\""
298 if LIGHTTPD_STATIC
300 ## static lighttpd server (used in conjunction with -DLIGHTTPD_STATIC)
301 ## (order is not important)
302 lighttpd_SOURCES = \
303   $(src) \
304   mod_access.c \
305   mod_accesslog.c \
306   mod_alias.c \
307   mod_auth.c http_auth.c \
308   mod_cgi.c \
309   mod_cml.c mod_cml_lua.c mod_cml_funcs.c \
310   mod_compress.c \
311   mod_dirlisting.c \
312   mod_evasive.c \
313   mod_expire.c \
314   mod_extforward.c \
315   mod_fastcgi.c \
316   mod_flv_streaming.c \
317   mod_indexfile.c \
318   mod_magnet.c mod_magnet_cache.c \
319   mod_mysql_vhost.c \
320   mod_proxy.c \
321   mod_redirect.c \
322   mod_rewrite.c \
323   mod_rrdtool.c \
324   mod_scgi.c \
325   mod_secdownload.c \
326   mod_setenv.c \
327   mod_simple_vhost.c \
328   mod_ssi_exprparser.c mod_ssi_expr.c mod_ssi.c \
329   mod_staticfile.c \
330   mod_status.c \
331   mod_trigger_b4_dl.c \
332   mod_userdir.c \
333   mod_usertrack.c \
334   mod_webdav.c
335 lighttpd_CPPFLAGS = \
336   -DLIGHTTPD_STATIC \
337   $(LUA_CFLAGS) \
338   $(MYSQL_INCLUDE) \
339   $(MEMCACHED_CFLAGS) \
340   $(XML_CFLAGS) $(SQLITE_CFLAGS) \
341   $(FAM_CFLAGS) $(LIBEV_CFLAGS) $(LIBUNWIND_CFLAGS)
342 lighttpd_LDADD = \
343   $(common_libadd) \
344   $(CRYPT_LIB) $(SSL_LIB) $(LDAP_LIB) $(LBER_LIB) \
345   $(LUA_LIBS) -lm \
346   $(MYSQL_LIBS) \
347   $(MEMCACHED_LIB) \
348   $(GDBM_LIB) \
349   $(XML_LIBS) $(SQLITE_LIBS) $(UUID_LIBS) \
350   $(PCRE_LIB) $(Z_LIB) $(BZ_LIB) $(DL_LIB) $(SENDFILE_LIB) $(ATTR_LIB) \
351   $(FAM_LIBS) $(LIBEV_LIBS) $(LIBUNWIND_LIBS)
352 lighttpd_LDFLAGS = -export-dynamic
354 else
356 ## default lighttpd server
357 lighttpd_SOURCES = $(src)
358 lighttpd_CPPFLAGS = $(FAM_CFLAGS) $(LIBEV_CFLAGS)
359 lighttpd_LDADD = $(PCRE_LIB) $(DL_LIB) $(SENDFILE_LIB) $(ATTR_LIB) $(common_libadd) $(SSL_LIB) $(FAM_LIBS) $(LIBEV_LIBS) $(LIBUNWIND_LIBS)
360 lighttpd_LDFLAGS = -export-dynamic
362 endif
364 proc_open_SOURCES = proc_open.c buffer.c
365 proc_open_LDADD = $(LIBUNWIND_LIBS)
366 proc_open_CPPFLAGS= -DDEBUG_PROC_OPEN
368 test_buffer_SOURCES = test_buffer.c buffer.c
369 test_buffer_LDADD = $(LIBUNWIND_LIBS)
371 test_base64_SOURCES = test_base64.c base64.c buffer.c
372 test_base64_LDADD = $(LIBUNWIND_LIBS)
374 test_configfile_SOURCES = test_configfile.c buffer.c array.c data_string.c keyvalue.c log.c
375 test_configfile_LDADD = $(PCRE_LIB) $(LIBUNWIND_LIBS)
377 noinst_HEADERS   = $(hdr)
378 EXTRA_DIST = \
379         mod_skeleton.c \
380         configparser.y \
381         mod_ssi_exprparser.y \
382         lempar.c \
383         SConscript \
384         CMakeLists.txt config.h.cmake