xref: /lighttpd1.4/src/Makefile.am (revision 66698469)
1AM_CFLAGS = $(FAM_CFLAGS) $(LIBUNWIND_CFLAGS)
2
3noinst_PROGRAMS=\
4	t/test_common \
5	t/test_configfile \
6	t/test_mod
7
8sbin_PROGRAMS=lighttpd lighttpd-angel
9LEMON=$(top_builddir)/src/lemon$(BUILD_EXEEXT)
10
11TESTS=\
12	t/test_common$(EXEEXT) \
13	t/test_configfile$(EXEEXT) \
14	t/test_mod$(EXEEXT)
15
16lemon$(BUILD_EXEEXT): lemon.c
17	$(AM_V_CC)$(CC_FOR_BUILD) $(CPPFLAGS_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@ $(srcdir)/lemon.c
18
19lighttpd_angel_SOURCES=lighttpd-angel.c
20
21.PHONY: versionstamp parsers
22
23versionstamp:
24	@test -f versionstamp.h || touch versionstamp.h; \
25	REVISION=""; \
26	if test -z "$$REVISION" -a -d "$(top_srcdir)/.git" -a -x "`which git`"; then \
27		REVISION="$$(cd "$(top_srcdir)"; LANG= LC_ALL=C git describe --always 2>/dev/null || echo)"; \
28	fi; \
29	if test -n "$$REVISION"; then \
30		echo "#define REPO_VERSION \"-devel-$$REVISION\"" > versionstamp.h.tmp; \
31	else \
32		echo "#define REPO_VERSION \"\"" > versionstamp.h.tmp; \
33	fi; \
34	if ! diff versionstamp.h.tmp versionstamp.h >/dev/null 2>/dev/null; then \
35		mv versionstamp.h.tmp versionstamp.h; \
36	else \
37		rm versionstamp.h.tmp; \
38	fi
39
40configparser.h: configparser.c
41configparser.c: $(srcdir)/configparser.y $(srcdir)/lempar.c lemon$(BUILD_EXEEXT)
42	rm -f configparser.h
43	$(LEMON) -q $(srcdir)/configparser.y $(srcdir)/lempar.c
44
45parsers: configparser.c
46
47BUILT_SOURCES = parsers versionstamp
48MAINTAINERCLEANFILES = configparser.c configparser.h
49CLEANFILES = versionstamp.h versionstamp.h.tmp lemon$(BUILD_EXEEXT)
50
51common_src=base64.c buffer.c burl.c log.c \
52	http_header.c http_kv.c keyvalue.c chunk.c  \
53	http_chunk.c fdevent.c fdevent_fdnode.c gw_backend.c \
54	stat_cache.c http_etag.c array.c \
55	algo_md5.c algo_sha1.c algo_splaytree.c \
56	configfile-glue.c \
57	http-header-glue.c \
58	http_cgi.c \
59	http_date.c \
60	rand.c \
61	request.c \
62	sock_addr.c \
63	fdlog_maint.c \
64	fdlog.c \
65	sys-setjmp.c \
66	ck.c
67
68src = server.c response.c connections.c h2.c reqpool.c \
69	plugin.c \
70	sock_addr_cache.c \
71	network.c \
72	network_write.c \
73	ls-hpack/lshpack.c \
74	algo_xxhash.c \
75	fdevent_impl.c \
76	http_range.c \
77	data_config.c \
78	vector.c \
79	configfile.c configparser.c
80
81lib_LTLIBRARIES =
82
83if NO_RDYNAMIC
84# if the linker doesn't allow referencing symbols of the binary
85# we have to put everything into a shared-lib and link it into
86# everything
87common_ldflags = -avoid-version -no-undefined
88lib_LTLIBRARIES += liblightcomp.la
89liblightcomp_la_SOURCES=$(common_src)
90liblightcomp_la_CFLAGS=$(AM_CFLAGS) $(LIBEV_CFLAGS)
91liblightcomp_la_LDFLAGS = $(common_ldflags)
92liblightcomp_la_LIBADD = $(PCRE_LIB) $(CRYPTO_LIB) $(FAM_LIBS) $(LIBEV_LIBS) $(ATTR_LIB)
93common_libadd = liblightcomp.la
94if !LIGHTTPD_STATIC
95common_src += mod_auth_api.c mod_vhostdb_api.c
96endif
97else
98src += $(common_src)
99common_ldflags = -avoid-version
100common_libadd =
101endif
102common_module_ldflags = -module -export-dynamic $(common_ldflags)
103
104if BUILD_WITH_MAXMINDDB
105lib_LTLIBRARIES += mod_maxminddb.la
106mod_maxminddb_la_SOURCES = mod_maxminddb.c
107mod_maxminddb_la_LDFLAGS = $(common_module_ldflags)
108mod_maxminddb_la_LIBADD = $(common_libadd) $(MAXMINDDB_LIB)
109endif
110
111lib_LTLIBRARIES += mod_evasive.la
112mod_evasive_la_SOURCES = mod_evasive.c
113mod_evasive_la_LDFLAGS = $(common_module_ldflags)
114mod_evasive_la_LIBADD = $(common_libadd)
115
116lib_LTLIBRARIES += mod_webdav.la
117mod_webdav_la_SOURCES = mod_webdav.c
118mod_webdav_la_CFLAGS = $(AM_CFLAGS) $(XML_CFLAGS) $(SQLITE_CFLAGS)
119mod_webdav_la_LDFLAGS = $(common_module_ldflags)
120mod_webdav_la_LIBADD = $(common_libadd) $(XML_LIBS) $(SQLITE_LIBS) $(UUID_LIBS) $(ELFTC_LIB)
121
122if BUILD_WITH_LUA
123lib_LTLIBRARIES += mod_magnet.la
124mod_magnet_la_SOURCES = mod_magnet.c mod_magnet_cache.c algo_hmac.c
125mod_magnet_la_CFLAGS = $(AM_CFLAGS) $(LUA_CFLAGS)
126mod_magnet_la_LDFLAGS = $(common_module_ldflags)
127mod_magnet_la_LIBADD = $(common_libadd) $(LUA_LIBS) $(CRYPTO_LIB) -lm
128endif
129
130lib_LTLIBRARIES += mod_vhostdb.la
131mod_vhostdb_la_SOURCES = mod_vhostdb.c
132if !NO_RDYNAMIC
133mod_vhostdb_la_SOURCES += mod_vhostdb_api.c
134endif
135mod_vhostdb_la_LDFLAGS = $(common_module_ldflags)
136mod_vhostdb_la_LIBADD = $(common_libadd)
137
138if BUILD_WITH_LDAP
139lib_LTLIBRARIES += mod_vhostdb_ldap.la
140mod_vhostdb_ldap_la_SOURCES = mod_vhostdb_ldap.c
141mod_vhostdb_ldap_la_LDFLAGS = $(common_module_ldflags)
142mod_vhostdb_ldap_la_LIBADD = $(LDAP_LIB) $(LBER_LIB) $(common_libadd)
143endif
144
145if BUILD_WITH_MYSQL
146lib_LTLIBRARIES += mod_vhostdb_mysql.la
147mod_vhostdb_mysql_la_SOURCES = mod_vhostdb_mysql.c
148mod_vhostdb_mysql_la_LDFLAGS = $(common_module_ldflags)
149mod_vhostdb_mysql_la_LIBADD = $(MYSQL_LIBS) $(common_libadd)
150mod_vhostdb_mysql_la_CPPFLAGS = $(MYSQL_CFLAGS)
151endif
152
153if BUILD_WITH_PGSQL
154lib_LTLIBRARIES += mod_vhostdb_pgsql.la
155mod_vhostdb_pgsql_la_SOURCES = mod_vhostdb_pgsql.c
156mod_vhostdb_pgsql_la_LDFLAGS = $(common_module_ldflags)
157mod_vhostdb_pgsql_la_LIBADD = $(PGSQL_LIBS) $(common_libadd)
158mod_vhostdb_pgsql_la_CPPFLAGS = $(PGSQL_CFLAGS)
159endif
160
161if BUILD_WITH_DBI
162lib_LTLIBRARIES += mod_vhostdb_dbi.la
163mod_vhostdb_dbi_la_SOURCES = mod_vhostdb_dbi.c
164mod_vhostdb_dbi_la_LDFLAGS = $(common_module_ldflags)
165mod_vhostdb_dbi_la_LIBADD = $(DBI_LIBS) $(common_libadd)
166mod_vhostdb_dbi_la_CPPFLAGS = $(DBI_CFLAGS)
167endif
168
169lib_LTLIBRARIES += mod_cgi.la
170mod_cgi_la_SOURCES = mod_cgi.c
171mod_cgi_la_LDFLAGS = $(common_module_ldflags)
172mod_cgi_la_LIBADD = $(common_libadd)
173
174lib_LTLIBRARIES += mod_scgi.la
175mod_scgi_la_SOURCES = mod_scgi.c
176mod_scgi_la_LDFLAGS = $(common_module_ldflags)
177mod_scgi_la_LIBADD = $(common_libadd)
178
179lib_LTLIBRARIES += mod_staticfile.la
180mod_staticfile_la_SOURCES = mod_staticfile.c
181mod_staticfile_la_LDFLAGS = $(common_module_ldflags)
182mod_staticfile_la_LIBADD = $(common_libadd)
183
184lib_LTLIBRARIES += mod_dirlisting.la
185mod_dirlisting_la_SOURCES = mod_dirlisting.c
186mod_dirlisting_la_LDFLAGS = $(common_module_ldflags)
187mod_dirlisting_la_LIBADD = $(common_libadd)
188
189lib_LTLIBRARIES += mod_indexfile.la
190mod_indexfile_la_SOURCES = mod_indexfile.c
191mod_indexfile_la_LDFLAGS = $(common_module_ldflags)
192mod_indexfile_la_LIBADD = $(common_libadd)
193
194lib_LTLIBRARIES += mod_setenv.la
195mod_setenv_la_SOURCES = mod_setenv.c
196mod_setenv_la_LDFLAGS = $(common_module_ldflags)
197mod_setenv_la_LIBADD = $(common_libadd)
198
199lib_LTLIBRARIES += mod_alias.la
200mod_alias_la_SOURCES = mod_alias.c
201mod_alias_la_LDFLAGS = $(common_module_ldflags)
202mod_alias_la_LIBADD = $(common_libadd)
203
204lib_LTLIBRARIES += mod_userdir.la
205mod_userdir_la_SOURCES = mod_userdir.c
206mod_userdir_la_LDFLAGS = $(common_module_ldflags)
207mod_userdir_la_LIBADD = $(common_libadd)
208
209lib_LTLIBRARIES += mod_rrdtool.la
210mod_rrdtool_la_SOURCES = mod_rrdtool.c
211mod_rrdtool_la_LDFLAGS = $(common_module_ldflags)
212mod_rrdtool_la_LIBADD = $(common_libadd)
213
214lib_LTLIBRARIES += mod_usertrack.la
215mod_usertrack_la_SOURCES = mod_usertrack.c
216mod_usertrack_la_LDFLAGS = $(common_module_ldflags)
217mod_usertrack_la_LIBADD = $(common_libadd) $(CRYPTO_LIB)
218
219lib_LTLIBRARIES += mod_proxy.la
220mod_proxy_la_SOURCES = mod_proxy.c
221mod_proxy_la_LDFLAGS = $(common_module_ldflags)
222mod_proxy_la_LIBADD = $(common_libadd)
223
224lib_LTLIBRARIES += mod_sockproxy.la
225mod_sockproxy_la_SOURCES = mod_sockproxy.c
226mod_sockproxy_la_LDFLAGS = $(common_module_ldflags)
227mod_sockproxy_la_LIBADD = $(common_libadd)
228
229lib_LTLIBRARIES += mod_ssi.la
230mod_ssi_la_SOURCES = mod_ssi.c
231mod_ssi_la_LDFLAGS = $(common_module_ldflags)
232mod_ssi_la_LIBADD = $(common_libadd)
233
234lib_LTLIBRARIES += mod_secdownload.la
235mod_secdownload_la_SOURCES = mod_secdownload.c algo_hmac.c
236mod_secdownload_la_LDFLAGS = $(common_module_ldflags)
237mod_secdownload_la_LIBADD = $(common_libadd) $(CRYPTO_LIB)
238
239#lib_LTLIBRARIES += mod_httptls.la
240#mod_httptls_la_SOURCES = mod_httptls.c
241#mod_httptls_la_LDFLAGS = $(common_module_ldflags)
242#mod_httptls_la_LIBADD = $(common_libadd)
243
244lib_LTLIBRARIES += mod_expire.la
245mod_expire_la_SOURCES = mod_expire.c
246mod_expire_la_LDFLAGS = $(common_module_ldflags)
247mod_expire_la_LIBADD = $(common_libadd)
248
249lib_LTLIBRARIES += mod_evhost.la
250mod_evhost_la_SOURCES = mod_evhost.c
251mod_evhost_la_LDFLAGS = $(common_module_ldflags)
252mod_evhost_la_LIBADD = $(common_libadd)
253
254lib_LTLIBRARIES += mod_simple_vhost.la
255mod_simple_vhost_la_SOURCES = mod_simple_vhost.c
256mod_simple_vhost_la_LDFLAGS = $(common_module_ldflags)
257mod_simple_vhost_la_LIBADD = $(common_libadd)
258
259lib_LTLIBRARIES += mod_ajp13.la
260mod_ajp13_la_SOURCES = mod_ajp13.c
261mod_ajp13_la_LDFLAGS = $(common_module_ldflags)
262mod_ajp13_la_LIBADD = $(common_libadd)
263
264lib_LTLIBRARIES += mod_fastcgi.la
265mod_fastcgi_la_SOURCES = mod_fastcgi.c
266mod_fastcgi_la_LDFLAGS = $(common_module_ldflags)
267mod_fastcgi_la_LIBADD = $(common_libadd)
268
269lib_LTLIBRARIES += mod_extforward.la
270mod_extforward_la_SOURCES = mod_extforward.c
271mod_extforward_la_LDFLAGS = $(common_module_ldflags)
272mod_extforward_la_LIBADD = $(common_libadd)
273
274lib_LTLIBRARIES += mod_access.la
275mod_access_la_SOURCES = mod_access.c
276mod_access_la_LDFLAGS = $(common_module_ldflags)
277mod_access_la_LIBADD = $(common_libadd)
278
279lib_LTLIBRARIES += mod_deflate.la
280mod_deflate_la_SOURCES = mod_deflate.c
281mod_deflate_la_LDFLAGS = $(BROTLI_CFLAGS) $(common_module_ldflags)
282mod_deflate_la_LIBADD = $(Z_LIB) $(ZSTD_LIB) $(BZ_LIB) $(BROTLI_LIBS) $(DEFLATE_LIBS) $(common_libadd)
283
284lib_LTLIBRARIES += mod_auth.la
285mod_auth_la_SOURCES = mod_auth.c
286if !NO_RDYNAMIC
287mod_auth_la_SOURCES += mod_auth_api.c
288endif
289mod_auth_la_LDFLAGS = $(common_module_ldflags)
290mod_auth_la_LIBADD = $(CRYPTO_LIB) $(common_libadd)
291
292lib_LTLIBRARIES += mod_authn_file.la
293mod_authn_file_la_SOURCES = mod_authn_file.c
294mod_authn_file_la_LDFLAGS = $(common_module_ldflags)
295mod_authn_file_la_LIBADD = $(CRYPT_LIB) $(CRYPTO_LIB) $(common_libadd)
296
297if BUILD_WITH_DBI
298lib_LTLIBRARIES += mod_authn_dbi.la
299mod_authn_dbi_la_SOURCES = mod_authn_dbi.c
300mod_authn_dbi_la_LDFLAGS = $(common_module_ldflags)
301mod_authn_dbi_la_LIBADD = $(CRYPT_LIB) $(DBI_LIBS) $(CRYPTO_LIB) $(common_libadd)
302mod_authn_dbi_la_CPPFLAGS = $(DBI_CFLAGS)
303endif
304
305if BUILD_WITH_KRB5
306lib_LTLIBRARIES += mod_authn_gssapi.la
307mod_authn_gssapi_la_SOURCES = mod_authn_gssapi.c
308mod_authn_gssapi_la_LDFLAGS = $(common_module_ldflags)
309mod_authn_gssapi_la_LIBADD = $(KRB5_LIB) $(common_libadd)
310endif
311
312if BUILD_WITH_LDAP
313lib_LTLIBRARIES += mod_authn_ldap.la
314mod_authn_ldap_la_SOURCES = mod_authn_ldap.c
315mod_authn_ldap_la_LDFLAGS = $(common_module_ldflags)
316mod_authn_ldap_la_LIBADD = $(LDAP_LIB) $(LBER_LIB) $(common_libadd)
317endif
318
319if BUILD_WITH_PAM
320lib_LTLIBRARIES += mod_authn_pam.la
321mod_authn_pam_la_SOURCES = mod_authn_pam.c
322mod_authn_pam_la_LDFLAGS = $(common_module_ldflags)
323mod_authn_pam_la_LIBADD = $(PAM_LIB) $(common_libadd)
324endif
325
326if BUILD_WITH_SASL
327lib_LTLIBRARIES += mod_authn_sasl.la
328mod_authn_sasl_la_SOURCES = mod_authn_sasl.c
329mod_authn_sasl_la_LDFLAGS = $(common_module_ldflags)
330mod_authn_sasl_la_LIBADD = $(SASL_LIBS) $(common_libadd)
331mod_authn_sasl_la_CPPFLAGS = $(SASL_CFLAGS)
332endif
333
334if BUILD_WITH_OPENSSL
335lib_LTLIBRARIES += mod_openssl.la
336mod_openssl_la_SOURCES = mod_openssl.c
337mod_openssl_la_LDFLAGS = $(common_module_ldflags)
338mod_openssl_la_LIBADD = $(OPENSSL_LIBS) $(common_libadd)
339mod_openssl_la_CPPFLAGS = $(OPENSSL_CFLAGS)
340endif
341
342if BUILD_WITH_MBEDTLS
343lib_LTLIBRARIES += mod_mbedtls.la
344mod_mbedtls_la_SOURCES = mod_mbedtls.c
345mod_mbedtls_la_LDFLAGS = $(common_module_ldflags)
346mod_mbedtls_la_LIBADD = $(MTLS_LIBS) $(common_libadd)
347endif
348
349if BUILD_WITH_GNUTLS
350lib_LTLIBRARIES += mod_gnutls.la
351mod_gnutls_la_SOURCES = mod_gnutls.c
352mod_gnutls_la_LDFLAGS = $(common_module_ldflags)
353mod_gnutls_la_LIBADD = $(GNUTLS_LIBS) $(common_libadd)
354mod_gnutls_la_CPPFLAGS = $(GNUTLS_CFLAGS)
355endif
356
357if BUILD_WITH_NSS
358lib_LTLIBRARIES += mod_nss.la
359mod_nss_la_SOURCES = mod_nss.c
360mod_nss_la_LDFLAGS = $(common_module_ldflags)
361mod_nss_la_LIBADD = $(NSS_LIBS) $(common_libadd)
362mod_nss_la_CPPFLAGS = $(NSS_CFLAGS)
363endif
364
365if BUILD_WITH_WOLFSSL
366lib_LTLIBRARIES += mod_wolfssl.la
367mod_wolfssl_la_SOURCES = mod_wolfssl.c
368mod_wolfssl_la_LDFLAGS = $(common_module_ldflags)
369mod_wolfssl_la_LIBADD = $(WOLFSSL_LIBS) $(common_libadd)
370mod_wolfssl_la_CPPFLAGS = $(WOLFSSL_CFLAGS)
371endif
372
373
374lib_LTLIBRARIES += mod_rewrite.la
375mod_rewrite_la_SOURCES = mod_rewrite.c
376mod_rewrite_la_LDFLAGS = $(common_module_ldflags)
377mod_rewrite_la_LIBADD = $(common_libadd)
378
379lib_LTLIBRARIES += mod_redirect.la
380mod_redirect_la_SOURCES = mod_redirect.c
381mod_redirect_la_LDFLAGS = $(common_module_ldflags)
382mod_redirect_la_LIBADD = $(common_libadd)
383
384lib_LTLIBRARIES += mod_status.la
385mod_status_la_SOURCES = mod_status.c
386mod_status_la_LDFLAGS = $(common_module_ldflags)
387mod_status_la_LIBADD = $(common_libadd)
388
389lib_LTLIBRARIES += mod_accesslog.la
390mod_accesslog_la_SOURCES = mod_accesslog.c
391mod_accesslog_la_LDFLAGS = $(common_module_ldflags)
392mod_accesslog_la_LIBADD = $(common_libadd)
393
394lib_LTLIBRARIES += mod_uploadprogress.la
395mod_uploadprogress_la_SOURCES = mod_uploadprogress.c
396mod_uploadprogress_la_LDFLAGS = $(common_module_ldflags)
397mod_uploadprogress_la_LIBADD = $(common_libadd)
398
399lib_LTLIBRARIES += mod_wstunnel.la
400mod_wstunnel_la_SOURCES = mod_wstunnel.c
401mod_wstunnel_la_LDFLAGS = $(common_module_ldflags)
402mod_wstunnel_la_LIBADD = $(common_libadd) $(CRYPTO_LIB)
403
404
405hdr = base64.h buffer.h burl.h network.h log.h http_kv.h keyvalue.h \
406	response.h request.h reqpool.h chunk.h h2.h \
407	first.h http_chunk.h \
408	algo_hmac.h \
409	algo_md.h algo_md5.h algo_sha1.h algo_splaytree.h algo_xxhash.h \
410	fdlog.h \
411	ck.h \
412	http_cgi.h http_date.h \
413	http_header.h http_range.h \
414	fdevent.h gw_backend.h connections.h base.h base_decls.h stat_cache.h \
415	plugin.h plugins.h plugin_config.h \
416	http_etag.h array.h vector.h \
417	fdevent_impl.h network_write.h configfile.h \
418	sock_addr_cache.h \
419	configparser.h \
420	rand.h \
421	sys-crypto.h sys-crypto-md.h \
422	sys-endian.h sys-mmap.h sys-setjmp.h \
423	sys-socket.h sys-strings.h sys-time.h \
424	sock_addr.h status_counter.h \
425	mod_auth_api.h \
426	mod_magnet_cache.h \
427	mod_vhostdb_api.h \
428	ls-hpack/lshpack.h \
429	ls-hpack/lsxpack_header.h \
430	ls-hpack/huff-tables.h \
431	compat/fastcgi.h
432
433
434DEFS= @DEFS@ -DHAVE_VERSIONSTAMP_H -DLIBRARY_DIR="\"$(libdir)\"" -DSBIN_DIR="\"$(sbindir)\""
435
436
437if LIGHTTPD_STATIC
438
439## static lighttpd server (used in conjunction with -DLIGHTTPD_STATIC)
440## (order is not important)
441lighttpd_SOURCES = \
442  $(src) \
443  mod_access.c \
444  mod_accesslog.c \
445  mod_ajp13.c \
446  mod_alias.c \
447  mod_auth.c \
448  mod_auth_api.c \
449  mod_authn_file.c \
450  mod_cgi.c \
451  mod_deflate.c \
452  mod_dirlisting.c \
453  mod_evasive.c \
454  mod_expire.c \
455  mod_extforward.c \
456  mod_fastcgi.c \
457  mod_indexfile.c \
458  mod_proxy.c \
459  mod_redirect.c \
460  mod_rewrite.c \
461  mod_rrdtool.c \
462  mod_scgi.c \
463  mod_secdownload.c algo_hmac.c \
464  mod_setenv.c \
465  mod_simple_vhost.c \
466  mod_ssi.c \
467  mod_staticfile.c \
468  mod_status.c \
469  mod_uploadprogress.c \
470  mod_userdir.c \
471  mod_usertrack.c \
472  mod_vhostdb.c \
473  mod_vhostdb_api.c \
474  mod_webdav.c
475lighttpd_CPPFLAGS = \
476  -DLIGHTTPD_STATIC \
477  $(XML_CFLAGS) $(SQLITE_CFLAGS) \
478  $(FAM_CFLAGS) $(LIBEV_CFLAGS) $(LIBUNWIND_CFLAGS)
479lighttpd_LDADD = \
480  $(common_libadd) \
481  $(CRYPT_LIB) $(CRYPTO_LIB) $(XXHASH_LIBS) \
482  $(XML_LIBS) $(SQLITE_LIBS) $(UUID_LIBS) $(ELFTC_LIB) \
483  $(PCRE_LIB) $(Z_LIB) $(ZSTD_LIB) $(BZ_LIB) $(BROTLI_LIBS) $(DEFLATE_LIBS) \
484  $(DL_LIB) $(SENDFILE_LIB) $(ATTR_LIB) \
485  $(FAM_LIBS) $(LIBEV_LIBS) $(LIBUNWIND_LIBS)
486lighttpd_LDFLAGS = -export-dynamic
487
488if BUILD_WITH_MAXMINDDB
489lighttpd_SOURCES += mod_maxminddb.c
490lighttpd_LDADD += $(MAXMINDDB_LIB)
491endif
492if BUILD_WITH_LUA
493lighttpd_SOURCES += mod_magnet.c mod_magnet_cache.c
494                    #algo_hmac.c
495lighttpd_CPPFLAGS += $(LUA_CFLAGS)
496lighttpd_LDADD += $(LUA_LIBS) -lm
497endif
498if BUILD_WITH_KRB5
499lighttpd_SOURCES += mod_authn_gssapi.c
500lighttpd_LDADD += $(KRB5_LIB)
501endif
502if BUILD_WITH_LDAP
503lighttpd_SOURCES += mod_authn_ldap.c mod_vhostdb_ldap.c
504lighttpd_LDADD += $(LDAP_LIB) $(LBER_LIB)
505endif
506if BUILD_WITH_PAM
507lighttpd_SOURCES += mod_authn_pam.c
508lighttpd_LDADD += $(PAM_LIB)
509endif
510if BUILD_WITH_MYSQL
511lighttpd_SOURCES += mod_vhostdb_mysql.c
512lighttpd_CPPFLAGS += $(MYSQL_CFLAGS)
513lighttpd_LDADD += $(MYSQL_LIBS)
514endif
515if BUILD_WITH_PGSQL
516lighttpd_SOURCES += mod_vhostdb_pgsql.c
517lighttpd_CPPFLAGS += $(PGSQL_CFLAGS)
518lighttpd_LDADD += $(PGSQL_LIBS)
519endif
520if BUILD_WITH_DBI
521lighttpd_SOURCES += mod_authn_dbi.c mod_vhostdb_dbi.c
522lighttpd_CPPFLAGS += $(DBI_CFLAGS)
523lighttpd_LDADD += $(DBI_LIBS)
524endif
525if BUILD_WITH_OPENSSL
526lighttpd_SOURCES += mod_openssl.c
527lighttpd_CPPFLAGS += $(OPENSSL_CFLAGS)
528lighttpd_LDADD += $(OPENSSL_LIBS)
529endif
530if BUILD_WITH_MBEDTLS
531lighttpd_SOURCES += mod_mbedtls.c
532lighttpd_LDADD += $(MTLS_LIBS)
533endif
534if BUILD_WITH_GNUTLS
535lighttpd_SOURCES += mod_gnutls.c
536lighttpd_CPPFLAGS += $(GNUTLS_CFLAGS)
537lighttpd_LDADD += $(GNUTLS_LIBS)
538endif
539if BUILD_WITH_NSS
540lighttpd_SOURCES += mod_nss.c
541lighttpd_CPPFLAGS += $(NSS_CFLAGS)
542lighttpd_LDADD += $(NSS_LIBS)
543endif
544if BUILD_WITH_WOLFSSL
545lighttpd_SOURCES += mod_wolfssl.c
546lighttpd_CPPFLAGS += $(WOLFSSL_CFLAGS)
547lighttpd_LDADD += $(WOLFSSL_LIBS)
548endif
549
550else
551
552## default lighttpd server
553lighttpd_SOURCES = $(src)
554lighttpd_CPPFLAGS = $(FAM_CFLAGS) $(LIBEV_CFLAGS)
555lighttpd_LDADD = $(PCRE_LIB) $(DL_LIB) $(SENDFILE_LIB) $(ATTR_LIB) $(common_libadd) $(CRYPTO_LIB) $(XXHASH_LIBS) $(FAM_LIBS) $(LIBEV_LIBS) $(LIBUNWIND_LIBS)
556lighttpd_LDFLAGS = -export-dynamic
557
558endif
559
560t_test_common_SOURCES = t/test_common.c \
561                        t/test_array.c \
562                        t/test_base64.c \
563                        t/test_buffer.c \
564                        t/test_burl.c \
565                        t/test_keyvalue.c \
566                        t/test_request.c \
567                        http_header.c \
568                        http_kv.c \
569                        log.c \
570                        fdlog.c \
571                        sock_addr.c \
572                        ck.c
573t_test_common_LDADD   = $(LIBUNWIND_LIBS) $(PCRE_LIB)
574
575t_test_configfile_SOURCES = t/test_configfile.c buffer.c array.c data_config.c http_header.c http_kv.c vector.c log.c fdlog.c sock_addr.c ck.c
576t_test_configfile_LDADD = $(PCRE_LIB) $(LIBUNWIND_LIBS)
577
578t_test_mod_SOURCES = $(common_src) t/test_mod.c \
579                     t/test_mod_access.c \
580                     t/test_mod_alias.c \
581                     t/test_mod_evasive.c \
582                     t/test_mod_evhost.c \
583                     t/test_mod_indexfile.c \
584                     t/test_mod_simple_vhost.c \
585                     t/test_mod_ssi.c \
586                     t/test_mod_staticfile.c \
587                     t/test_mod_userdir.c
588t_test_mod_CFLAGS  = $(AM_CFLAGS) $(LIBEV_CFLAGS)
589t_test_mod_LDADD   = $(LIBUNWIND_LIBS) $(PCRE_LIB) $(CRYPTO_LIB) $(DL_LIB) $(FAM_LIBS) $(LIBEV_LIBS) $(ATTR_LIB)
590
591noinst_HEADERS   = $(hdr)
592EXTRA_DIST = \
593	t/README \
594	mod_skeleton.c \
595	configparser.y \
596	lemon.c \
597	lempar.c \
598	SConscript \
599	CMakeLists.txt config.h.cmake \
600	meson.build
601