1 dnl nghttp2 - HTTP/2 C Library
3 dnl Copyright (c) 2012, 2013, 2014, 2015 Tatsuhiro Tsujikawa
5 dnl Permission is hereby granted, free of charge, to any person obtaining
6 dnl a copy of this software and associated documentation files (the
7 dnl "Software"), to deal in the Software without restriction, including
8 dnl without limitation the rights to use, copy, modify, merge, publish,
9 dnl distribute, sublicense, and/or sell copies of the Software, and to
10 dnl permit persons to whom the Software is furnished to do so, subject to
11 dnl the following conditions:
13 dnl The above copyright notice and this permission notice shall be
14 dnl included in all copies or substantial portions of the Software.
16 dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17 dnl EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18 dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19 dnl NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20 dnl LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21 dnl OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22 dnl WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
24 dnl Do not change user variables!
25 dnl http://www.gnu.org/software/automake/manual/html_node/Flag-Variables-Ordering.html
28 AC_INIT([nghttp2], [1.0.0], [t-tujikawa@users.sourceforge.net])
29 AC_USE_SYSTEM_EXTENSIONS
38 AM_INIT_AUTOMAKE([subdir-objects])
39 # comment out for now since this requires automake 1.13 or higher and
40 # travis has older one.
41 # AM_EXTRA_RECURSIVE_TARGETS([it])
43 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
45 AC_CONFIG_MACRO_DIR([m4])
46 AC_CONFIG_HEADERS([config.h])
48 dnl See versioning rule:
49 dnl http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
50 AC_SUBST(LT_CURRENT, 14)
51 AC_SUBST(LT_REVISION, 0)
54 major=`echo $PACKAGE_VERSION |cut -d. -f1 | sed -e "s/[^0-9]//g"`
55 minor=`echo $PACKAGE_VERSION |cut -d. -f2 | sed -e "s/[^0-9]//g"`
56 patch=`echo $PACKAGE_VERSION |cut -d. -f3 | cut -d- -f1 | sed -e "s/[^0-9]//g"`
58 PACKAGE_VERSION_NUM=`printf "0x%02x%02x%02x" "$major" "$minor" "$patch"`
60 AC_SUBST(PACKAGE_VERSION_NUM)
62 dnl Checks for command-line options
63 AC_ARG_ENABLE([werror],
64 [AS_HELP_STRING([--enable-werror],
65 [Turn on compile time warnings])],
66 [werror=$enableval], [werror=no])
68 AC_ARG_ENABLE([debug],
69 [AS_HELP_STRING([--enable-debug],
70 [Turn on debug output])],
71 [debug=$enableval], [debug=no])
73 AC_ARG_ENABLE([threads],
74 [AS_HELP_STRING([--disable-threads],
75 [Turn off threading in apps])],
76 [threads=$enableval], [threads=yes])
79 [AS_HELP_STRING([--enable-app],
80 [Build applications (nghttp, nghttpd and nghttpx) [default=check]])],
81 [request_app=$enableval], [request_app=check])
83 AC_ARG_ENABLE([hpack-tools],
84 [AS_HELP_STRING([--enable-hpack-tools],
85 [Build HPACK tools [default=check]])],
86 [request_hpack_tools=$enableval], [request_hpack_tools=check])
88 AC_ARG_ENABLE([asio-lib],
89 [AS_HELP_STRING([--enable-asio-lib],
90 [Build C++ libnghttp2_asio library [default=no]])],
91 [request_asio_lib=$enableval], [request_asio_lib=no])
93 AC_ARG_ENABLE([examples],
94 [AS_HELP_STRING([--enable-examples],
95 [Build examples [default=check]])],
96 [request_examples=$enableval], [request_examples=check])
98 AC_ARG_ENABLE([python-bindings],
99 [AS_HELP_STRING([--enable-python-bindings],
100 [Build Python bindings [default=check]])],
101 [request_python_bindings=$enableval], [request_python_bindings=check])
103 AC_ARG_ENABLE([failmalloc],
104 [AS_HELP_STRING([--disable-failmalloc],
105 [Do not build failmalloc test program])],
106 [request_failmalloc=$enableval], [request_failmalloc=yes])
108 AC_ARG_WITH([libxml2],
109 [AS_HELP_STRING([--with-libxml2],
110 [Use libxml2 [default=check]])],
111 [request_libxml2=$withval], [request_libxml2=check])
113 AC_ARG_WITH([jemalloc],
114 [AS_HELP_STRING([--with-jemalloc],
115 [Use jemalloc [default=check]])],
116 [request_jemalloc=$withval], [request_jemalloc=check])
118 AC_ARG_WITH([spdylay],
119 [AS_HELP_STRING([--with-spdylay],
120 [Use spdylay [default=check]])],
121 [request_spdylay=$withval], [request_spdylay=check])
123 AC_ARG_WITH([cython],
124 [AS_HELP_STRING([--with-cython=PATH],
125 [Use cython in given PATH])],
126 [cython_path=$withval], [])
129 AC_ARG_VAR([CYTHON], [the Cython executable])
131 dnl Checks for programs
140 PKG_PROG_PKG_CONFIG([0.20])
142 if [test "x$request_python_bindings" != "xno"]; then
143 AM_PATH_PYTHON([2.7],, [:])
144 AX_PYTHON_DEVEL([>= '2.7'])
147 if test "x${cython_path}" = "x"; then
148 AC_CHECK_PROGS([CYTHON], [cython.py cython])
150 CYTHON=${cython_path}
155 # If we're running GCC or clang define _U_ to be "__attribute__((unused))"
156 # so we can use _U_ to flag unused function parameters and not get warnings
157 # about them. Otherwise, define _U_ to be an empty string so that _U_ used
158 # to flag an unused function parameters will compile with other compilers.
160 # XXX - similar hints for other compilers?
162 if test "x$GCC" = "xyes" -o "x$CC" = "xclang" ; then
163 AC_DEFINE([_U_], [__attribute__((unused))], [Hint to the compiler that a function parameters is not used])
165 AC_DEFINE([_U_], , [Hint to the compiler that a function parameters is not used])
168 AX_CXX_COMPILE_STDCXX_11([noext], [optional])
172 # Check that std::chrono::steady_clock is available. In particular,
173 # gcc 4.6 does not have one, but has monotonic_clock which is the old
174 # name existed in the pre-standard draft. If steady_clock is not
175 # available, don't define HAVE_STEADY_CLOCK and replace steady_clock
176 # with monotonic_clock.
177 AC_MSG_CHECKING([whether std::chrono::steady_clock is available])
178 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
183 auto tp = std::chrono::steady_clock::now();
185 [AC_DEFINE([HAVE_STEADY_CLOCK], [1],
186 [Define to 1 if you have the `std::chrono::steady_clock`.])
187 AC_MSG_RESULT([yes])],
188 [AC_MSG_RESULT([no])])
190 # Check that std::future is available.
191 AC_MSG_CHECKING([whether std::future is available])
192 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
198 std::vector<std::future<int>> v;
200 [AC_DEFINE([HAVE_STD_FUTURE], [1],
201 [Define to 1 if you have the `std::future`.])
203 AC_MSG_RESULT([yes])],
205 AC_MSG_RESULT([no])])
207 # Check that std::map::emplace is available for g++-4.7.
208 AC_MSG_CHECKING([whether std::map::emplace is available])
209 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
214 std::map<int, int>().emplace(1, 2);
216 [AC_DEFINE([HAVE_STD_MAP_EMPLACE], [1],
217 [Define to 1 if you have the `std::map::emplace`.])
218 have_std_map_emplace=yes
219 AC_MSG_RESULT([yes])],
220 [have_std_map_emplace=no
221 AC_MSG_RESULT([no])])
225 # Checks for libraries.
227 # Additional libraries required for tests.
230 # Additional libraries required for programs under src directory.
234 # Search for dlsym function, which is used in tests. Linux needs -ldl,
235 # but netbsd does not need it.
236 AC_SEARCH_LIBS([dlsym], [dl])
237 TESTLDADD="$LIBS $TESTLDADD"
241 AC_SEARCH_LIBS([clock_gettime], [rt],
242 [AC_DEFINE([HAVE_CLOCK_GETTIME], [1],
243 [Define to 1 if you have the `clock_gettime`.])])
244 APPLDFLAGS="$LIBS $APPLDFLAGS"
250 # android does not need -pthread, but needs followng 3 libs for C++
251 APPLDFLAGS="$APPLDFLAGS -lstdc++ -latomic -lsupc++"
254 PTHREAD_LDFLAGS="-pthread"
255 APPLDFLAGS="$APPLDFLAGS $PTHREAD_LDFLAGS"
260 if test "x$android_build" = "xyes"; then
261 # Use zlib provided by NDK
262 APPLDFLAGS="-lz $APPLDFLAGS"
265 PKG_CHECK_MODULES([ZLIB], [zlib >= 1.2.3], [have_zlib=yes], [have_zlib=no])
267 if test "x${have_zlib}" = "xno"; then
268 AC_MSG_NOTICE($ZLIB_PKG_ERRORS)
273 PKG_CHECK_MODULES([CUNIT], [cunit >= 2.1], [have_cunit=yes], [have_cunit=no])
274 # If pkg-config does not find cunit, check it using AC_CHECK_LIB. We
275 # do this because Debian (Ubuntu) lacks pkg-config file for cunit.
276 if test "x${have_cunit}" = "xno"; then
277 AC_MSG_WARN([${CUNIT_PKG_ERRORS}])
278 AC_CHECK_LIB([cunit], [CU_initialize_registry],
279 [have_cunit=yes], [have_cunit=no])
280 if test "x${have_cunit}" = "xyes"; then
283 AC_SUBST([CUNIT_LIBS])
284 AC_SUBST([CUNIT_CFLAGS])
287 if test "x${have_cunit}" = "xyes"; then
288 # cunit in Mac OS X requires ncurses. Note that in Mac OS X, test
289 # program can be built without -lncurses, but it emits runtime
293 CUNIT_LIBS="$CUNIT_LIBS -lncurses"
294 AC_SUBST([CUNIT_LIBS])
299 AM_CONDITIONAL([HAVE_CUNIT], [ test "x${have_cunit}" = "xyes" ])
302 # libev does not have pkg-config file. Check it in an old way.
304 # android requires -lm for floor
305 AC_CHECK_LIB([ev], [ev_time], [have_libev=yes], [have_libev=no], [-lm])
306 if test "x${have_libev}" = "xyes"; then
307 AC_CHECK_HEADER([ev.h], [have_libev=yes], [have_libev=no])
308 if test "x${have_libev}" = "xyes"; then
311 AC_SUBST([LIBEV_LIBS])
312 AC_SUBST([LIBEV_CFLAGS])
318 PKG_CHECK_MODULES([OPENSSL], [openssl >= 1.0.1],
319 [have_openssl=yes], [have_openssl=no])
320 if test "x${have_openssl}" = "xno"; then
321 AC_MSG_NOTICE($OPENSSL_PKG_ERRORS)
324 # libevent_openssl (for examples)
325 # 2.0.8 is required because we use evconnlistener_set_error_cb()
326 PKG_CHECK_MODULES([LIBEVENT_OPENSSL], [libevent_openssl >= 2.0.8],
327 [have_libevent_openssl=yes], [have_libevent_openssl=no])
328 if test "x${have_libevent_openssl}" = "xno"; then
329 AC_MSG_NOTICE($LIBEVENT_OPENSSL_PKG_ERRORS)
332 # jansson (for src/nghttp, src/deflatehd and src/inflatehd)
333 PKG_CHECK_MODULES([JANSSON], [jansson >= 2.5],
334 [have_jansson=yes], [have_jansson=no])
335 if test "x${have_jansson}" == "xyes"; then
336 AC_DEFINE([HAVE_JANSSON], [1],
337 [Define to 1 if you have `libjansson` library.])
339 AC_MSG_NOTICE($JANSSON_PKG_ERRORS)
342 # libxml2 (for src/nghttp)
344 if test "x${request_libxml2}" != "xno"; then
345 AM_PATH_XML2(2.7.7, [have_libxml2=yes], [have_libxml2=no])
346 if test "x${have_libxml2}" = "xyes"; then
347 AC_DEFINE([HAVE_LIBXML2], [1], [Define to 1 if you have `libxml2` library.])
351 if test "x${request_libxml2}" = "xyes" &&
352 test "x${have_libxml2}" != "xyes"; then
353 AC_MSG_ERROR([libxml2 was requested (--with-libxml2) but not found])
356 AM_CONDITIONAL([HAVE_LIBXML2], [ test "x${have_libxml2}" = "xyes" ])
360 if test "x${request_jemalloc}" != "xno"; then
362 AC_SEARCH_LIBS([malloc_stats_print], [jemalloc], [have_jemalloc=yes], [],
366 if test "x${have_jemalloc}" = "xyes"; then
367 jemalloc_libs=${ac_cv_search_malloc_stats_print}
369 # On Darwin, malloc_stats_print is je_malloc_stats_print
370 AC_SEARCH_LIBS([je_malloc_stats_print], [jemalloc], [have_jemalloc=yes], [],
374 if test "x${have_jemalloc}" = "xyes"; then
375 jemalloc_libs=${ac_cv_search_je_malloc_stats_print}
379 if test "x${have_jemalloc}" = "xyes" &&
380 test "x${jemalloc_libs}" != "xnone required"; then
381 JEMALLOC_LIBS=${jemalloc_libs}
382 AC_SUBST([JEMALLOC_LIBS])
386 if test "x${request_jemalloc}" = "xyes" &&
387 test "x${have_jemalloc}" != "xyes"; then
388 AC_MSG_ERROR([jemalloc was requested (--with-jemalloc) but not found])
391 # spdylay (for src/nghttpx and src/h2load)
393 if test "x${request_spdylay}" != "xno"; then
394 PKG_CHECK_MODULES([LIBSPDYLAY], [libspdylay >= 1.3.2],
395 [have_spdylay=yes], [have_spdylay=no])
396 if test "x${have_spdylay}" = "xyes"; then
397 AC_DEFINE([HAVE_SPDYLAY], [1], [Define to 1 if you have `spdylay` library.])
399 AC_MSG_NOTICE($LIBSPDYLAY_PKG_ERRORS)
400 AC_MSG_NOTICE([The SPDY support in nghttpx and h2load will be disabled.])
404 if test "x${request_spdylay}" = "xyes" &&
405 test "x${have_spdylay}" != "xyes"; then
406 AC_MSG_ERROR([spdylay was requested (--with-spdylay) but not found])
409 AM_CONDITIONAL([HAVE_SPDYLAY], [ test "x${have_spdylay}" = "xyes" ])
411 # Check Boost Asio library
414 if test "x${request_asio_lib}" = "xyes"; then
415 AX_BOOST_BASE([1.54.0], [have_boost_base=yes], [have_boost_base=no])
417 if test "x${have_boost_base}" = "xyes"; then
422 if test "x${ax_cv_boost_asio}" = "xyes" &&
423 test "x${ax_cv_boost_system}" = "xyes" &&
424 test "x${ax_cv_boost_thread}" = "xyes"; then
430 # The nghttp, nghttpd and nghttpx under src depend on zlib, OpenSSL
433 if test "x${request_app}" != "xno" &&
434 test "x${have_zlib}" = "xyes" &&
435 test "x${have_openssl}" = "xyes" &&
436 test "x${have_libev}" = "xyes"; then
440 if test "x${request_app}" = "xyes" &&
441 test "x${enable_app}" != "xyes"; then
442 AC_MSG_ERROR([applications were requested (--enable-app) but dependencies are not met.])
445 AM_CONDITIONAL([ENABLE_APP], [ test "x${enable_app}" = "xyes" ])
447 enable_hpack_tools=no
448 # HPACK tools requires jansson
449 if test "x${request_hpack_tools}" != "xno" &&
450 test "x${have_jansson}" = "xyes"; then
451 enable_hpack_tools=yes
454 if test "x${request_hpack_tools}" = "xyes" &&
455 test "x${enable_hpack_tools}" != "xyes"; then
456 AC_MSG_ERROR([HPACK tools were requested (--enable-hpack-tools) but dependencies are not met.])
459 AM_CONDITIONAL([ENABLE_HPACK_TOOLS], [ test "x${enable_hpack_tools}" = "xyes" ])
461 # C++ library libnghttp2_asio
464 if test "x${request_asio_lib}" != "xno" &&
465 test "x${have_asio_lib}" = "xyes"; then
469 AM_CONDITIONAL([ENABLE_ASIO_LIB], [ test "x${enable_asio_lib}" = "xyes" ])
471 # The example programs depend on OpenSSL and libevent_openssl
473 if test "x${request_examples}" != "xno" &&
474 test "x${have_openssl}" = "xyes" &&
475 test "x${have_libevent_openssl}" = "xyes"; then
479 if test "x${request_examples}" = "xyes" &&
480 test "x${enable_examples}" != "xyes"; then
481 AC_MSG_ERROR([examples were requested (--enable-examples) but dependencies are not met.])
484 AM_CONDITIONAL([ENABLE_EXAMPLES], [ test "x${enable_examples}" = "xyes" ])
487 enable_python_bindings=no
488 if test "x${request_python_bindings}" != "xno" &&
489 test "x${CYTHON}" != "x" &&
490 test "x${PYTHON}" != "x:" &&
491 test "x${have_python_dev}" = "xyes"; then
492 enable_python_bindings=yes
495 if test "x${request_python_bindings}" = "xyes" &&
496 test "x${enable_python_bindings}" != "xyes"; then
497 AC_MSG_ERROR([python bindings were requested (--enable-python-bindings) but dependencies are not met.])
500 AM_CONDITIONAL([ENABLE_PYTHON_BINDINGS],
501 [test "x${enable_python_bindings}" = "xyes"])
503 # Produce cython conditional, so that we can distribute generated C
505 AM_CONDITIONAL([HAVE_CYTHON], [test "x${CYTHON}" != "x"])
509 if test "x${request_failmalloc}" = "xyes"; then
510 enable_failmalloc=yes
513 AM_CONDITIONAL([ENABLE_FAILMALLOC], [ test "x${enable_failmalloc}" = "xyes" ])
515 # Checks for header files.
536 # Checks for typedefs, structures, and compiler characteristics.
550 AC_CHECK_TYPES([ptrdiff_t])
555 AC_CHECK_MEMBER([struct tm.tm_gmtoff], [have_struct_tm_tm_gmtoff=yes],
556 [have_struct_tm_tm_gmtoff=no], [[#include <time.h>]])
558 if test "x$have_struct_tm_tm_gmtoff" = "xyes"; then
559 AC_DEFINE([HAVE_STRUCT_TM_TM_GMTOFF], [1],
560 [Define to 1 if you have `struct tm.tm_gmtoff` member.])
563 # Check size of pointer to decide we need 8 bytes alignment
565 AC_CHECK_SIZEOF([int *])
567 # Checks for library functions.
568 if test "x$cross_compiling" != "xyes"; then
573 AC_FUNC_ERROR_AT_LINE
575 # Don't check realloc, since LeakSanitizer detects memory leak during check
602 # timerfd_create was added in linux kernel 2.6.25
604 AC_CHECK_FUNC([timerfd_create],
605 [have_timerfd_create=yes], [have_timerfd_create=no])
608 # Checks for epoll availability, primarily for examples/tiny-nghttpd
609 AX_HAVE_EPOLL([have_epoll=yes], [have_epoll=no])
611 AM_CONDITIONAL([ENABLE_TINY_NGHTTPD],
612 [ test "x${have_epoll}" = "xyes" &&
613 test "x${have_timerfd_create}" = "xyes"])
615 ac_save_CFLAGS=$CFLAGS
618 if test "x$werror" != "xno"; then
619 AX_CHECK_COMPILE_FLAG([-Wall], [CFLAGS="$CFLAGS -Wall"])
620 AX_CHECK_COMPILE_FLAG([-Wextra], [CFLAGS="$CFLAGS -Wextra"])
621 AX_CHECK_COMPILE_FLAG([-Werror], [CFLAGS="$CFLAGS -Werror"])
622 AX_CHECK_COMPILE_FLAG([-Wmissing-prototypes], [CFLAGS="$CFLAGS -Wmissing-prototypes"])
623 AX_CHECK_COMPILE_FLAG([-Wstrict-prototypes], [CFLAGS="$CFLAGS -Wstrict-prototypes"])
624 AX_CHECK_COMPILE_FLAG([-Wmissing-declarations], [CFLAGS="$CFLAGS -Wmissing-declarations"])
625 AX_CHECK_COMPILE_FLAG([-Wpointer-arith], [CFLAGS="$CFLAGS -Wpointer-arith"])
626 AX_CHECK_COMPILE_FLAG([-Wdeclaration-after-statement], [CFLAGS="$CFLAGS -Wdeclaration-after-statement"])
627 AX_CHECK_COMPILE_FLAG([-Wformat-security], [CFLAGS="$CFLAGS -Wformat-security"])
628 AX_CHECK_COMPILE_FLAG([-Wwrite-strings], [CFLAGS="$CFLAGS -Wwrite-strings"])
629 AX_CHECK_COMPILE_FLAG([-Wshadow], [CFLAGS="$CFLAGS -Wshadow"])
630 AX_CHECK_COMPILE_FLAG([-Winline], [CFLAGS="$CFLAGS -Winline"])
631 AX_CHECK_COMPILE_FLAG([-Wnested-externs], [CFLAGS="$CFLAGS -Wnested-externs"])
632 AX_CHECK_COMPILE_FLAG([-Wfloat-equal], [CFLAGS="$CFLAGS -Wfloat-equal"])
633 AX_CHECK_COMPILE_FLAG([-Wundef], [CFLAGS="$CFLAGS -Wundef"])
634 AX_CHECK_COMPILE_FLAG([-Wendif-labels], [CFLAGS="$CFLAGS -Wendif-labels"])
635 AX_CHECK_COMPILE_FLAG([-Wempty-body], [CFLAGS="$CFLAGS -Wempty-body"])
636 AX_CHECK_COMPILE_FLAG([-Wcast-align], [CFLAGS="$CFLAGS -Wcast-align"])
637 AX_CHECK_COMPILE_FLAG([-Wclobbered], [CFLAGS="$CFLAGS -Wclobbered"])
638 AX_CHECK_COMPILE_FLAG([-Wvla], [CFLAGS="$CFLAGS -Wvla"])
639 AX_CHECK_COMPILE_FLAG([-Wpragmas], [CFLAGS="$CFLAGS -Wpragmas"])
640 AX_CHECK_COMPILE_FLAG([-Wunreachable-code], [CFLAGS="$CFLAGS -Wunreachable-code"])
641 AX_CHECK_COMPILE_FLAG([-Waddress], [CFLAGS="$CFLAGS -Waddress"])
642 AX_CHECK_COMPILE_FLAG([-Wattributes], [CFLAGS="$CFLAGS -Wattributes"])
643 AX_CHECK_COMPILE_FLAG([-Wdiv-by-zero], [CFLAGS="$CFLAGS -Wdiv-by-zero"])
644 AX_CHECK_COMPILE_FLAG([-Wshorten-64-to-32], [CFLAGS="$CFLAGS -Wshorten-64-to-32"])
646 # Only work with Clang for the moment
647 AX_CHECK_COMPILE_FLAG([-Wheader-guard], [CFLAGS="$CFLAGS -Wheader-guard"])
651 CFLAGS=$ac_save_CFLAGS
653 AC_SUBST([WARNCFLAGS])
655 if test "x$debug" != "xno"; then
656 AC_DEFINE([DEBUGBUILD], [1], [Define to 1 to enable debug output.])
660 # Some platform does not have working std::future. We disable
661 # threading for those platforms.
662 if test "x$threads" != "xyes" ||
663 test "x$have_std_future" != "xyes"; then
665 AC_DEFINE([NOTHREADS], [1], [Define to 1 if you want to disable threads.])
668 AC_SUBST([TESTLDADD])
669 AC_SUBST([APPLDFLAGS])
675 lib/includes/Makefile
676 lib/includes/nghttp2/nghttp2ver.h
678 tests/testdata/Makefile
681 src/includes/Makefile
682 src/libnghttp2_asio.pc
686 integration-tests/Makefile
687 integration-tests/config.go
688 integration-tests/setenv
692 doc/package_README.rst
693 doc/tutorial-client.rst
694 doc/tutorial-server.rst
695 doc/tutorial-hpack.rst
696 doc/nghttpx-howto.rst
698 doc/libnghttp2_asio.rst
699 doc/python-apiref.rst
700 doc/building-android-binary.rst
704 doc/asio_http2_server.h.rst
705 doc/asio_http2_client.h.rst
711 AC_MSG_NOTICE([summary of build options:
713 Version: ${VERSION} shared $LT_CURRENT:$LT_REVISION:$LT_AGE
715 Install prefix: ${prefix}
718 WARNCFLAGS: ${WARNCFLAGS}
721 CPPFLAGS: ${CPPFLAGS}
722 C preprocessor: ${CPP}
724 CXXFLAGS: ${CXXFLAGS}
726 Library types: Shared=${enable_shared}, Static=${enable_static}
729 PYTHON_VERSION: ${PYTHON_VERSION}
730 pyexecdir: ${pyexecdir}
731 Python-dev: ${have_python_dev}
732 PYTHON_CPPFLAGS:${PYTHON_CPPFLAGS}
733 PYTHON_LDFLAGS: ${PYTHON_LDFLAGS}
737 Failmalloc: ${enable_failmalloc}
739 OpenSSL: ${have_openssl}
740 Libxml2: ${have_libxml2}
742 Libevent(SSL): ${have_libevent_openssl}
743 Spdylay: ${have_spdylay}
744 Jansson: ${have_jansson}
745 Jemalloc: ${have_jemalloc}
746 Boost CPPFLAGS: ${BOOST_CPPFLAGS}
747 Boost LDFLAGS: ${BOOST_LDFLAGS}
748 Boost::ASIO: ${BOOST_ASIO_LIB}
749 Boost::System: ${BOOST_SYSTEM_LIB}
750 Boost::Thread: ${BOOST_THREAD_LIB}
752 Applications: ${enable_app}
753 HPACK tools: ${enable_hpack_tools}
754 Libnghttp2_asio:${enable_asio_lib}
755 Examples: ${enable_examples}
756 Python bindings:${enable_python_bindings}
757 Threading: ${enable_threads}