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