libmicrohttpd

HTTP/1.x server C library (MHD 1.x, stable)
Log | Files | Refs | Submodules | README | LICENSE

commit 21ee7de991140681bc29f8a24323237769d97856
parent aa12189a4b26393302b800dc2e5374d108cc34a9
Author: Christian Grothoff <christian@grothoff.org>
Date:   Sun, 18 Feb 2018 13:00:11 +0100

add lib to ordinary build process, rename lib output to libmicrohttpd2.so, do not link libmicrohttpd2.so against gnutls/libgcrypt

Diffstat:
Mconfigure.ac | 39++++++++++++++++++++++-----------------
Msrc/Makefile.am | 3+++
Msrc/gnutls/init.c | 73++++++++-----------------------------------------------------------------
Msrc/gnutls/init.h | 6+++---
Msrc/lib/Makefile.am | 74+++++++++++++++++++++++++++++++++++++-------------------------------------
Msrc/microhttpd/Makefile.am | 8++++----
6 files changed, 77 insertions(+), 126 deletions(-)

diff --git a/configure.ac b/configure.ac @@ -1692,7 +1692,7 @@ AS_IF([test "x$have_gnutls" != "xyes" && test "x$with_gnutls" = "xyes"], [AC_MSG gnutls_free(data.data); ]])], [[have_gnutls_sni=yes]], [[have_gnutls_sni=no]]) AC_MSG_RESULT([[$have_gnutls_sni]]) - AC_CACHE_CHECK([[whether GnuTLS require libgcrypt initialisaion]], [mhd_cv_grypt_required], + AC_CACHE_CHECK([[whether GnuTLS require libgcrypt initialisaion]], [mhd_cv_gcrypt_required], [ AC_COMPILE_IFELSE( [ @@ -1708,7 +1708,7 @@ choke me now ] ) ], - [[mhd_cv_grypt_required='no']], [[mhd_cv_grypt_required='yes']] + [[mhd_cv_gcrypt_required='no']], [[mhd_cv_gcrypt_required='yes']] ) ] ) @@ -1723,7 +1723,7 @@ choke me now ] ) - AS_IF([[test "x$mhd_cv_grypt_required" = "xyes" && test "x$have_gcrypt" = "xunknown"]], + AS_IF([[test "x$mhd_cv_gcrypt_required" = "xyes" && test "x$have_gcrypt" = "xunknown"]], [ AM_PATH_LIBGCRYPT([1.2.2], [have_gcrypt=yes], [have_gcrypt=no]) AS_IF([[test "x$have_gcrypt" = "xyes"]], @@ -1744,7 +1744,7 @@ choke me now AS_UNSET([[crypt_missing]]) AS_IF([[test "x$have_gnutls" = "xyes"]], [ - AS_IF([[test "x$mhd_cv_grypt_required" = "xyes" && test "x$have_gcrypt" != "xyes"]], + AS_IF([[test "x$mhd_cv_gcrypt_required" = "xyes" && test "x$have_gcrypt" != "xyes"]], [ crypt_missing="required libgcrypt" AS_IF([[test "x$enable_https" = "xyes" ]], [AC_MSG_ERROR([[HTTPS support cannot be enabled without $crypt_missing.]])]) @@ -1760,35 +1760,35 @@ choke me now [ AC_DEFINE([[HTTPS_SUPPORT]],[[1]],[Define to 1 if libmicrohttpd is compiled with HTTPS support.]) enable_https=yes - AS_IF([[test "x$mhd_cv_grypt_required" = "xyes"]], + AS_IF([[test "x$mhd_cv_gcrypt_required" = "xyes"]], [ MSG_HTTPS="yes (using libgnutls and libgcrypt)" - MHD_LIB_CPPFLAGS="$MHD_LIB_CPPFLAGS $LIBGCRYPT_CFLAGS $GNUTLS_CPPFLAGS" - MHD_LIB_CFLAGS="$MHD_LIB_CFLAGS $LIBGCRYPT_CFLAGS $GNUTLS_CFLAGS" - MHD_LIB_LDFLAGS="$MHD_LIB_LDFLAGS $GNUTLS_LDFLAGS" - MHD_LIBDEPS="$GNUTLS_LIBS $LIBGCRYPT_LIBS $MHD_LIBDEPS" - AC_DEFINE([[MHD_HTTPS_REQUIRE_GRYPT]], [[1]], [Define to `1' if HTTPS require initialisation of libgcrypt]) + MHD_TLS_LIB_CPPFLAGS="$LIBGCRYPT_CFLAGS $GNUTLS_CPPFLAGS" + MHD_TLS_LIB_CFLAGS="$LIBGCRYPT_CFLAGS $GNUTLS_CFLAGS" + MHD_TLS_LIB_LDFLAGS="$GNUTLS_LDFLAGS" + MHD_TLS_LIBDEPS="$GNUTLS_LIBS $LIBGCRYPT_LIBS" + AC_DEFINE([[MHD_HTTPS_REQUIRE_GCRYPT]], [[1]], [Define to `1' if HTTPS require initialisation of libgcrypt]) ], [ MSG_HTTPS="yes (using libgnutls)" AS_UNSET([LIBGCRYPT_CFLAGS]) AS_UNSET([LIBGCRYPT_LIBS]) - MHD_LIB_CPPFLAGS="$MHD_LIB_CPPFLAGS $GNUTLS_CPPFLAGS" - MHD_LIB_CFLAGS="$MHD_LIB_CFLAGS $GNUTLS_CFLAGS" - MHD_LIB_LDFLAGS="$MHD_LIB_LDFLAGS $GNUTLS_LDFLAGS" - MHD_LIBDEPS="$GNUTLS_LIBS $MHD_LIBDEPS" + MHD_TLS_LIB_CPPFLAGS="$GNUTLS_CPPFLAGS" + MHD_TLS_LIB_CFLAGS="$GNUTLS_CFLAGS" + MHD_TLS_LIB_LDFLAGS="$GNUTLS_LDFLAGS" + MHD_TLS_LIBDEPS="$GNUTLS_LIBS" ] ) AS_IF([[ test "x$have_gnutls_pkgcfg" = "xyes" ]], [ # remove GnuTLS from private libs in .pc file as it defined in Requires.private MHD_REQ_PRIVATE='gnutls' - AS_IF([[test "x$mhd_cv_grypt_required" = "xyes"]], + AS_IF([[test "x$mhd_cv_gcrypt_required" = "xyes"]], [[MHD_LIBDEPS_PKGCFG="$LIBGCRYPT_LIBS $MHD_LIBDEPS_PKGCFG"]] ) ], [ MHD_REQ_PRIVATE='' - AS_IF([[test "x$mhd_cv_grypt_required" = "xyes"]], + AS_IF([[test "x$mhd_cv_gcrypt_required" = "xyes"]], [[MHD_LIBDEPS_PKGCFG="$LIBGCRYPT_LIBS $MHD_LIBDEPS_PKGCFG"]] ) MHD_LIBDEPS_PKGCFG="$GNUTLS_LIBS $MHD_LIBDEPS_PKGCFG" @@ -1818,7 +1818,7 @@ AC_MSG_RESULT([$MSG_HTTPS]) AM_CONDITIONAL([HAVE_GNUTLS], [[test "x$have_gnutls" = "xyes"]]) AM_CONDITIONAL([HAVE_GNUTLS_SNI], [[test "x$have_gnutls_sni" = "xyes"]]) AM_CONDITIONAL([ENABLE_HTTPS], [test "x$enable_https" = "xyes"]) -AM_CONDITIONAL([HTTPS_REQUIRE_GRYPT], [[test "x$enable_https" = "xyes" && test "x$mhd_cv_grypt_required" = "xyes"]]) +AM_CONDITIONAL([HTTPS_REQUIRE_GCRYPT], [[test "x$enable_https" = "xyes" && test "x$mhd_cv_gcrypt_required" = "xyes"]]) AC_SUBST([GNUTLS_CPPFLAGS]) AC_SUBST([GNUTLS_CFLAGS]) AC_SUBST([GNUTLS_LDFLAGS]) @@ -1990,6 +1990,10 @@ AC_SUBST(MHD_LIB_CPPFLAGS) AC_SUBST(MHD_LIB_CFLAGS) AC_SUBST(MHD_LIB_LDFLAGS) AC_SUBST(MHD_LIBDEPS) +AC_SUBST(MHD_TLS_LIB_CPPFLAGS) +AC_SUBST(MHD_TLS_LIB_CFLAGS) +AC_SUBST(MHD_TLS_LIB_LDFLAGS) +AC_SUBST(MHD_TLS_LIBDEPS) # for pkg-config AC_SUBST([MHD_REQ_PRIVATE]) @@ -2022,6 +2026,7 @@ doc/examples/Makefile m4/Makefile src/Makefile src/include/Makefile +src/lib/Makefile src/microhttpd/Makefile src/examples/Makefile src/testcurl/Makefile diff --git a/src/Makefile.am b/src/Makefile.am @@ -14,6 +14,9 @@ if BUILD_EXAMPLES SUBDIRS += examples endif +# Finally (last!) also build experimental lib... +SUBDIRS += lib + EXTRA_DIST = \ datadir/cert-and-key.pem \ datadir/cert-and-key-for-wireshark.pem diff --git a/src/gnutls/init.c b/src/gnutls/init.c @@ -18,12 +18,9 @@ */ /** - * @file lib/init.c - * @brief initialization routines + * @file gnutls/init.c + * @brief gnutls-specific initialization routines * @author Christian Grothoff - * - * TODO: most of this is only required for gcrypt/GNUtls, - * should probably be moved to TLS plugin! */ #include "internal.h" #include "init.h" @@ -35,6 +32,7 @@ GCRY_THREAD_OPTION_PTHREAD_IMPL; #elif defined(MHD_W32_MUTEX_) + static int gcry_w32_mutex_init (void **ppmtx) { @@ -42,13 +40,12 @@ gcry_w32_mutex_init (void **ppmtx) if (NULL == *ppmtx) return ENOMEM; - if (!MHD_mutex_init_ ((MHD_mutex_*)*ppmtx)) + if (! MHD_mutex_init_ ((MHD_mutex_*)*ppmtx)) { free (*ppmtx); *ppmtx = NULL; return EPERM; } - return 0; } @@ -108,7 +105,7 @@ MHD_MUTEX_STATIC_DEFN_INIT_(global_init_mutex_); * and call initialiser if necessary. */ void -MHD_check_global_init_ (void) +MHD_TLS_check_global_init_ (void) { #ifdef MHD_MUTEX_STATIC_DEFN_INIT_ MHD_mutex_lock_chk_(&global_init_mutex_); @@ -122,57 +119,15 @@ MHD_check_global_init_ (void) /** - * Default implementation of the panic function, - * prints an error message and aborts. - * - * @param cls unused - * @param file name of the file with the problem - * @param line line number with the problem - * @param reason error message with details - */ -static void -mhd_panic_std (void *cls, - const char *file, - unsigned int line, - const char *reason) -{ - (void)cls; /* Mute compiler warning. */ -#ifdef HAVE_MESSAGES - fprintf (stderr, - _("Fatal error in GNU libmicrohttpd %s:%u: %s\n"), - file, - line, - reason); -#else /* ! HAVE_MESSAGES */ - (void)file; /* Mute compiler warning. */ - (void)line; /* Mute compiler warning. */ - (void)reason; /* Mute compiler warning. */ -#endif - abort (); -} - - -/** * Initialize do setup work. */ void -MHD_init(void) +MHD_TLS_init (void) { #if defined(_WIN32) && ! defined(__CYGWIN__) WSADATA wsd; #endif /* _WIN32 && ! __CYGWIN__ */ - if (NULL == mhd_panic) - mhd_panic = &mhd_panic_std; - -#if defined(_WIN32) && ! defined(__CYGWIN__) - if (0 != WSAStartup(MAKEWORD(2, 2), &wsd)) - MHD_PANIC (_("Failed to initialize winsock\n")); - mhd_winsock_inited_ = 1; - if (2 != LOBYTE(wsd.wVersion) && 2 != HIBYTE(wsd.wVersion)) - MHD_PANIC (_("Winsock version 2.2 is not available\n")); -#endif -#ifdef HTTPS_SUPPORT #ifdef MHD_HTTPS_REQUIRE_GRYPT #if GCRYPT_VERSION_NUMBER < 0x010600 #if defined(MHD_USE_POSIX_THREADS) @@ -191,27 +146,15 @@ MHD_init(void) #endif #endif /* MHD_HTTPS_REQUIRE_GRYPT */ gnutls_global_init (); -#endif /* HTTPS_SUPPORT */ - MHD_monotonic_sec_counter_init(); -#ifdef HAVE_FREEBSD_SENDFILE - MHD_conn_init_static_ (); -#endif /* HAVE_FREEBSD_SENDFILE */ } void -MHD_fini(void) +MHD_TLS_fini(void) { -#ifdef HTTPS_SUPPORT gnutls_global_deinit (); -#endif /* HTTPS_SUPPORT */ -#if defined(_WIN32) && ! defined(__CYGWIN__) - if (mhd_winsock_inited_) - WSACleanup(); -#endif - MHD_monotonic_sec_counter_finish(); } #ifdef _AUTOINIT_FUNCS_ARE_SUPPORTED -_SET_INIT_AND_DEINIT_FUNCS(MHD_init, MHD_fini); +_SET_INIT_AND_DEINIT_FUNCS(MHD_TLS_init, MHD_TLS_fini); #endif /* _AUTOINIT_FUNCS_ARE_SUPPORTED */ diff --git a/src/gnutls/init.h b/src/gnutls/init.h @@ -17,7 +17,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ /** - * @file lib/init.h + * @file gnutls/init.h * @brief functions to initialize library * @author Christian Grothoff */ @@ -31,14 +31,14 @@ * Do nothing - global initialisation is * performed by library constructor. */ -#define MHD_check_global_init_() (void)0 +#define MHD_TLS_check_global_init_() (void)0 #else /* ! _AUTOINIT_FUNCS_ARE_SUPPORTED */ /** * Check whether global initialisation was performed * and call initialiser if necessary. */ void -MHD_check_global_init_ (void); +MHD_TLS_check_global_init_ (void); #endif /* ! _AUTOINIT_FUNCS_ARE_SUPPORTED */ diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am @@ -5,54 +5,56 @@ AM_CPPFLAGS = \ AM_CFLAGS = $(HIDDEN_VISIBILITY_CFLAGS) -lib_LTLIBRARIES = \ - libmicrohttpd.la +# Call "libmicrohttpd2" for now, but only while under +# development. Once we have 'compat' working, this should be changed! +noinst_LTLIBRARIES = \ + libmicrohttpd2.la noinst_DATA = MOSTLYCLEANFILES = if W32_SHARED_LIB_EXP -W32_MHD_LIB_LDFLAGS = -Wl,--output-def,$(lt_cv_objdir)/libmicrohttpd.def -XCClinker -static-libgcc -noinst_DATA += $(lt_cv_objdir)/libmicrohttpd.lib $(lt_cv_objdir)/libmicrohttpd.def $(lt_cv_objdir)/libmicrohttpd.exp -MOSTLYCLEANFILES += $(lt_cv_objdir)/libmicrohttpd.lib $(lt_cv_objdir)/libmicrohttpd.def $(lt_cv_objdir)/libmicrohttpd.exp +W32_MHD_LIB_LDFLAGS = -Wl,--output-def,$(lt_cv_objdir)/libmicrohttpd2.def -XCClinker -static-libgcc +noinst_DATA += $(lt_cv_objdir)/libmicrohttpd2.lib $(lt_cv_objdir)/libmicrohttpd2.def $(lt_cv_objdir)/libmicrohttpd2.exp +MOSTLYCLEANFILES += $(lt_cv_objdir)/libmicrohttpd2.lib $(lt_cv_objdir)/libmicrohttpd2.def $(lt_cv_objdir)/libmicrohttpd2.exp -$(lt_cv_objdir)/libmicrohttpd.def: libmicrohttpd.la +$(lt_cv_objdir)/libmicrohttpd2.def: libmicrohttpd2.la -$(lt_cv_objdir)/libmicrohttpd.exp: $(lt_cv_objdir)/libmicrohttpd.lib +$(lt_cv_objdir)/libmicrohttpd2.exp: $(lt_cv_objdir)/libmicrohttpd2.lib -$(lt_cv_objdir)/libmicrohttpd.lib: $(lt_cv_objdir)/libmicrohttpd.def libmicrohttpd.la $(libmicrohttpd_la_OBJECTS) +$(lt_cv_objdir)/libmicrohttpd2.lib: $(lt_cv_objdir)/libmicrohttpd2.def libmicrohttpd2.la $(libmicrohttpd2_la_OBJECTS) if USE_MS_LIB_TOOL - @echo Creating $@ and libmicrohttpd.exp by $(MS_LIB_TOOL)... && \ - dll_name=`$(EGREP) -o dlname=\'.+\' libmicrohttpd.la` && \ + @echo Creating $@ and libmicrohttpd2.exp by $(MS_LIB_TOOL)... && \ + dll_name=`$(EGREP) -o dlname=\'.+\' libmicrohttpd2.la` && \ dll_name=$${dll_name#*\'} && dll_name=$${dll_name%\'} && test -n "$$dll_name" && \ echo Creating $$dll_name by $(MS_LIB_TOOL).. && cd "$(lt_cv_objdir)" && \ - $(MS_LIB_TOOL) -def:libmicrohttpd.def -name:$$dll_name -out:libmicrohttpd.lib $(libmicrohttpd_la_OBJECTS:.lo=.o) && cd .. + $(MS_LIB_TOOL) -def:libmicrohttpd2.def -name:$$dll_name -out:libmicrohttpd2.lib $(libmicrohttpd2_la_OBJECTS:.lo=.o) && cd .. else - @echo Creating $@ and libmicrohttpd.exp by $(DLLTOOL)... && \ - dll_name=`$(EGREP) -o dlname=\'.+\' libmicrohttpd.la` && \ + @echo Creating $@ and libmicrohttpd2.exp by $(DLLTOOL)... && \ + dll_name=`$(EGREP) -o dlname=\'.+\' libmicrohttpd2.la` && \ dll_name=$${dll_name#*\'} && dll_name=$${dll_name%\'} && test -n "$$dll_name" && \ echo Creating $$dll_name by $(DLLTOOL).. && cd "$(lt_cv_objdir)" && \ - $(DLLTOOL) -d ./libmicrohttpd.def -D $$dll_name -l libmicrohttpd.lib $(libmicrohttpd_la_OBJECTS:.lo=.o) -e ./libmicrohttpd.exp && cd .. &&\ - echo Created libmicrohttpd.exp and libmicrohttpd.lib. + $(DLLTOOL) -d ./libmicrohttpd2.def -D $$dll_name -l libmicrohttpd2.lib $(libmicrohttpd2_la_OBJECTS:.lo=.o) -e ./libmicrohttpd2.exp && cd .. &&\ + echo Created libmicrohttpd2.exp and libmicrohttpd2.lib. endif else W32_MHD_LIB_LDFLAGS = endif if W32_STATIC_LIB -noinst_DATA += $(lt_cv_objdir)/libmicrohttpd-static.lib -MOSTLYCLEANFILES += $(lt_cv_objdir)/libmicrohttpd-static.lib +noinst_DATA += $(lt_cv_objdir)/libmicrohttpd2-static.lib +MOSTLYCLEANFILES += $(lt_cv_objdir)/libmicrohttpd2-static.lib -$(lt_cv_objdir)/libmicrohttpd-static.lib: libmicrohttpd.la $(libmicrohttpd_la_OBJECTS) +$(lt_cv_objdir)/libmicrohttpd2-static.lib: libmicrohttpd2.la $(libmicrohttpd2_la_OBJECTS) if USE_MS_LIB_TOOL - $(MS_LIB_TOOL) -out:$@ $(libmicrohttpd_la_OBJECTS:.lo=.o) + $(MS_LIB_TOOL) -out:$@ $(libmicrohttpd2_la_OBJECTS:.lo=.o) else - cp $(lt_cv_objdir)/libmicrohttpd.a $@ + cp $(lt_cv_objdir)/libmicrohttpd2.a $@ endif endif -libmicrohttpd_la_SOURCES = \ +libmicrohttpd2_la_SOURCES = \ action_continue.c \ action_from_response.c \ action_parse_post.c \ @@ -107,26 +109,24 @@ libmicrohttpd_la_SOURCES = \ panic.c \ version.c - - -libmicrohttpd_la_CPPFLAGS = \ +libmicrohttpd2_la_CPPFLAGS = \ $(AM_CPPFLAGS) $(MHD_LIB_CPPFLAGS) \ -DBUILDING_MHD_LIB=1 -libmicrohttpd_la_CFLAGS = \ +libmicrohttpd2_la_CFLAGS = \ $(AM_CFLAGS) $(MHD_LIB_CFLAGS) -libmicrohttpd_la_LDFLAGS = \ - $(MHD_LIB_LDFLAGS) \ +libmicrohttpd2_la_LDFLAGS = \ + $(MHD_LIB_LDFLAGS) -ldl \ $(W32_MHD_LIB_LDFLAGS) \ - -version-info 666:0:0 # FIXME: fix once closer to release... -libmicrohttpd_la_LIBADD = \ + -version-info 0:0:0 # FIXME: fix once closer to release... +libmicrohttpd2_la_LIBADD = \ $(MHD_LIBDEPS) # FIXME: should separate out GNUTLS_LIBS/GCRYPT here! if HAVE_W32 MHD_DLL_RES_SRC = microhttpd_dll_res.rc -MHD_DLL_RES_LO = libmicrohttpd_la-$(MHD_DLL_RES_SRC:.rc=.lo) +MHD_DLL_RES_LO = libmicrohttpd2_la-$(MHD_DLL_RES_SRC:.rc=.lo) -EXTRA_libmicrohttpd_la_DEPENDENCIES = $(MHD_DLL_RES_LO) -libmicrohttpd_la_LIBADD += $(MHD_DLL_RES_LO) +EXTRA_libmicrohttpd2_la_DEPENDENCIES = $(MHD_DLL_RES_LO) +libmicrohttpd2_la_LIBADD += $(MHD_DLL_RES_LO) # General rule is not required, but keep it just in case .rc.lo: @@ -141,7 +141,7 @@ libmicrohttpd_la_LIBADD += $(MHD_DLL_RES_LO) # Note: windres does not understand '-isystem' flag, so all # possible '-isystem' flags are replaced by simple '-I' flags. $(MHD_DLL_RES_LO): $(MHD_DLL_RES_SRC) - RC_CPP_FLAGS=" $(DEFAULT_INCLUDES) $(INCLUDES) $(libmicrohttpd_la_CPPFLAGS) $(CPPFLAGS) " && \ + RC_CPP_FLAGS=" $(DEFAULT_INCLUDES) $(INCLUDES) $(libmicrohttpd2_la_CPPFLAGS) $(CPPFLAGS) " && \ $(LIBTOOL) $(AM_V_lt) --tag=RC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(RC) $(RCFLAGS) $(DEFS) $${RC_CPP_FLAGS// -isystem / -I } $< -o $@ && \ echo > $@-empty.c && $(CC) $(AM_CFLAGS) $(CFLAGS) -c $@-empty.c -o $(@:.lo=.o) && rm -f $@-empty.c endif @@ -151,26 +151,26 @@ if USE_COVERAGE endif if !MHD_HAVE_TSEARCH -libmicrohttpd_la_SOURCES += \ +libmicrohttpd2_la_SOURCES += \ tsearch.c tsearch.h endif # TBD! if HAVE_POSTPROCESSOR -#libmicrohttpd_la_SOURCES += \ +#libmicrohttpd2_la_SOURCES += \ # postprocessor.c endif # TBD! if ENABLE_DAUTH -#libmicrohttpd_la_SOURCES += \ +#libmicrohttpd2_la_SOURCES += \ # digestauth.c \ # md5.c md5.h endif # TBD! if ENABLE_BAUTH -#libmicrohttpd_la_SOURCES += \ +#libmicrohttpd2_la_SOURCES += \ # basicauth.c \ # base64.c base64.h endif diff --git a/src/microhttpd/Makefile.am b/src/microhttpd/Makefile.am @@ -70,16 +70,16 @@ libmicrohttpd_la_SOURCES = \ response.c response.h libmicrohttpd_la_CPPFLAGS = \ - $(AM_CPPFLAGS) $(MHD_LIB_CPPFLAGS) \ + $(AM_CPPFLAGS) $(MHD_LIB_CPPFLAGS) $(MHD_TLS_LIB_CPPFLAGS) \ -DBUILDING_MHD_LIB=1 libmicrohttpd_la_CFLAGS = \ - $(AM_CFLAGS) $(MHD_LIB_CFLAGS) + $(AM_CFLAGS) $(MHD_LIB_CFLAGS) $(MHD_TLS_LIB_CFLAGS) libmicrohttpd_la_LDFLAGS = \ - $(MHD_LIB_LDFLAGS) \ + $(MHD_LIB_LDFLAGS) $(MHD_TLS_LIB_LDFLAGS) \ $(W32_MHD_LIB_LDFLAGS) \ -version-info @LIB_VERSION_CURRENT@:@LIB_VERSION_REVISION@:@LIB_VERSION_AGE@ libmicrohttpd_la_LIBADD = \ - $(MHD_LIBDEPS) + $(MHD_LIBDEPS) $(MHD_TLS_LIBDEPS) if HAVE_W32 MHD_DLL_RES_SRC = microhttpd_dll_res.rc