1: AM_CFLAGS = $(FAM_CFLAGS) $(LIBUNWIND_CFLAGS)
2:
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)
6:
7: TESTS=\
8: test_buffer$(EXEEXT) \
9: test_base64$(EXEEXT) \
10: test_configfile$(EXEEXT)
11:
12: lemon_SOURCES=lemon.c
13:
14: lighttpd_angel_SOURCES=lighttpd-angel.c
15:
16: .PHONY: versionstamp parsers
17:
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
40:
41: if CROSS_COMPILING
42: configparser.c configparser.h:
43: mod_ssi_exprparser.c mod_ssi_exprparser.h:
44:
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
51:
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
56:
57: parsers: configparser.c mod_ssi_exprparser.c
58: endif
59:
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
63:
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
86:
87: src = server.c response.c connections.c network.c \
88: configfile.c configparser.c request.c proc_open.c
89:
90: lib_LTLIBRARIES =
91:
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)
109:
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)
114:
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)
119:
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)
125:
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
131:
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
137:
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)
142:
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)
148:
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)
153:
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)
158:
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)
163:
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)
168:
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)
173:
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)
178:
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)
183:
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)
188:
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)
193:
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)
198:
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)
203:
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)
208:
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)
213:
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)
218:
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)
223:
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)
228:
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)
233:
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)
238:
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)
243:
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)
248:
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)
253:
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 = ${MYSQL_LIBS} $(CRYPT_LIB) $(SSL_LIB) $(LDAP_LIB) $(LBER_LIB) $(common_libadd)
258:
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)
263:
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)
268:
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)
273:
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)
278:
279:
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
294:
295: DEFS= @DEFS@ -DHAVE_VERSION_H -DLIBRARY_DIR="\"$(libdir)\"" -DSBIN_DIR="\"$(sbindir)\""
296:
297:
298: if LIGHTTPD_STATIC
299:
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
353:
354: else
355:
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
361:
362: endif
363:
364: proc_open_SOURCES = proc_open.c buffer.c
365: proc_open_LDADD = $(LIBUNWIND_LIBS)
366: proc_open_CPPFLAGS= -DDEBUG_PROC_OPEN
367:
368: test_buffer_SOURCES = test_buffer.c buffer.c
369: test_buffer_LDADD = $(LIBUNWIND_LIBS)
370:
371: test_base64_SOURCES = test_base64.c base64.c buffer.c
372: test_base64_LDADD = $(LIBUNWIND_LIBS)
373:
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)
376:
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
385:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>