Peter Wu
f4b2a4ab00
cmake: always enable warnings without -Werror
...
Warnings are useful, let's enable them by default.
2016-02-16 14:57:05 +01:00
Peter Wu
a909eb6b23
cmake: fix linking http-parser into shared libs
2016-02-16 14:09:10 +01:00
Peter Wu
3dd57e1f59
cmake: fix feature availability reporting
...
Some detected libraries were not reported when a feature is disabled.
This change removes unnecessary second find_package calls and sets
HAVE_xxx immediately based on xxx_FOUND.
2016-02-16 14:01:44 +01:00
Peter Wu
1b67b2d33e
cmake: improve Spdylay detection
...
Auto-detect spdylay availability using CMake, making pkg-config
completely optional.
2016-02-16 12:48:36 +01:00
Peter Wu
9bc6dc7113
cmake: add python support
...
FindCython.cmake was taken from
https://github.com/thewtex/cython-cmake-example . The UseCython module
works, but since it is lacking an installation target setup.py will be
used instead.
2016-02-16 12:17:49 +01:00
Peter Wu
f407f7f406
cmake: add mruby support, fix tests dir
...
mruby is always invoked now (mirrors the autotools behavior). It could
be optimized though to only trigger the mruby build when the static
library is missing.
Also fix typo in NGHTTP2_TESTS_DIR macro definition (detected when
invoking the Ninja generator).
2016-02-15 23:14:27 +01:00
Peter Wu
474ecc4b47
cmake: add neverbleed support
2016-02-15 10:50:31 +01:00
Peter Wu
0afc21c9d8
cmake: fix compilation in lib
...
Need to add -fPIC to objects that will be put in a shared library.
2016-02-15 10:49:55 +01:00
Peter Wu
8c46d9181f
cmake: process tests directory
...
Split the nghttp2 library into objects and a shared library from those
objects. This is needed because of symbol visibility. An advantage over
the autotools build is that there are no worries about static versus
static library builds.
Test:
cmake $srcdir
make nghttpx-unittest main failmalloc
make test
2016-02-15 01:57:13 +01:00
Peter Wu
cc92ebf471
cmake: add auto-detection, improve library search
...
Add auto-detection to the most important features (app, hpack, etc.).
Move options to a separate file for easier search.
Add cmake-based Libevent, jansson and CUnit search. Move pkg-config
handling for Libev and jemalloc to their cmake files.
Note: duplicates find_package before including CMakeOptions.txt and when
checking for features. Maybe that can be cleaned up later...
2016-02-15 01:12:07 +01:00
Peter Wu
c96cf1b303
cmake: improve final variable list
...
Remove build/host/target by a single target system name (CMake is
different for cross-compiling, you are suggested to set
CMAKE_TOOLCHAIN_FILE).
Fix various library variables, remove CFLAGS (INCLUDE_DIRS could be used
instead though, but I consider that minor information that could be
added later if wanted).
Fix various variable names (prefix, boost, etc.).
2016-02-14 13:22:32 +01:00
Peter Wu
503f0a29a7
cmake: add integration-tests
2016-02-13 20:13:43 +01:00
Peter Wu
ee285fa5da
cmake: process script/
2016-02-13 20:13:43 +01:00
Peter Wu
8c562bd38d
cmake: process contrib/
2016-02-13 20:13:43 +01:00
Peter Wu
15adc23277
cmake: working doc (sphinx-build), out-of-tree!
2016-02-13 20:13:43 +01:00
Peter Wu
a2ec695ec9
cmake: add python stub
...
Might not be the best approach, maybe use thewtex/cython-cmake-example?
2016-02-13 20:13:43 +01:00
Peter Wu
55b270587b
cmake: build examples
2016-02-13 20:13:43 +01:00
Peter Wu
5297136bc0
cmake: use PRIVATE instead of PUBLIC
...
Avoids leaking compile flags to dependents.
2016-02-13 20:13:43 +01:00
Peter Wu
61bb6428fd
cmake: add third-party and src
...
Remaining work:
- integrate mruby and neverbleed
- integrate cunit
2016-02-13 20:13:42 +01:00
Peter Wu
ccd2d34160
cmake: Install headers
2016-02-13 20:13:42 +01:00
Peter Wu
ea6eed10c7
cmake: fix version in soname
2016-02-13 20:13:42 +01:00
Peter Wu
7a86758edb
cmake: Fix libnghttp2.pc paths
...
Must be absolute instead of relative
2016-02-13 20:13:42 +01:00
Peter Wu
90d66ea4a9
cmake: fix detection of -Werror flag
...
Do not use minus sign in macro names.
2016-02-13 20:13:42 +01:00
Peter Wu
5b21c39bb2
cmake: add lib, add versioning info, install lib
...
Also remove some headers which were not checked anyway and add macros to
cmakeconfig.h.in (based on the headers list in the CMakeLists.txt file).
2016-02-13 20:13:42 +01:00
Peter Wu
744e80d579
cmake: Fill in auto-tools compatible paths
2016-02-13 20:13:42 +01:00
Peter Wu
3842fe175c
cmake: attempt to get diagnostic output right
2016-02-13 20:13:42 +01:00
Peter Wu
900667a998
cmake: moar .in file via configure_file
2016-02-13 20:13:42 +01:00
Peter Wu
147e098827
cmake: test for warning flags
2016-02-13 20:13:42 +01:00
Peter Wu
5819d03c68
cmake: more functions
...
AC_CHECK_TYPES and AC_C_BIGENDIAN were removed because nothing checks
the resulting macros...
2016-02-13 20:13:42 +01:00
Peter Wu
90f5bf796d
cmake: check more headers and sizeof
2016-02-13 20:13:42 +01:00
Peter Wu
2b63980758
cmake: more dependency checks
2016-02-13 20:13:42 +01:00
Peter Wu
65d33c553c
CMake WIP
...
Not working:
- option(... check)
- not finished everything (see XXX and FIXME)
- still halway converting
2016-02-13 20:13:42 +01:00
Peter Wu
2593036053
integration-tests: support out-of-tree tests
...
`go test` requires both config.go and the test files in the same
directory. For out-of-tree builds, config.go is normally not placed next
to the source files, so copy the tests to the build directory as a
workaround.
2016-02-13 20:11:50 +01:00
Peter Wu
a6effb4d23
doc: fix out-of-tree doc builds
...
Fixes multiple errors while making docs:
Could not import extension sphinxcontrib.rubydomain (exception: No module named 'sphinxcontrib')
and
../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'nghttp.1'
../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'nghttpd.1'
../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'nghttpx.1'
../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'h2load.1'
../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'programmers-guide'
2016-02-13 20:11:50 +01:00
Peter Wu
17215002a1
examples: fix compile warnings
...
Fixes the following two warnings:
examples/client.c:292:0: error: macro "MAX_OUTLEN" is not used [-Werror=unused-macros]
examples/tiny-nghttpd.c:298:13: error: function declaration isn’t a prototype [-Werror=strict-prototypes]
Caught using cmake as the autoconf check fails due to unused macros
(HAVE_xxx in conftest.c) and a main function without parameters
respectively.
2016-02-13 20:11:50 +01:00
Peter Wu
0e469ed221
Fix typo in HAVE_CONFIG_H name
...
Only used by lib/nghttp2_npn.c where the presence of config.h does not
seem to make a difference though.
2016-02-13 20:11:50 +01:00
Tatsuhiro Tsujikawa
093eb51f8c
Update default cipher list
2016-02-14 00:44:50 +09:00
Tatsuhiro Tsujikawa
5f1866fd6b
Update man pages
2016-02-14 00:29:07 +09:00
Tatsuhiro Tsujikawa
d8c8a4631d
nghttpx: Interleave text/html pushed resources with associated resource
2016-02-14 00:28:08 +09:00
Tatsuhiro Tsujikawa
6b12f17f44
Wrap AM_PATH_XML2 by m4_ifdef to handle the case when AM_PATH_XML2 is not found
2016-02-14 00:05:12 +09:00
Tatsuhiro Tsujikawa
eb0c82d91f
nghttpx: More log output when resolving addresses for better debugging
2016-02-13 23:21:32 +09:00
Tatsuhiro Tsujikawa
7adfa5dea7
Add note about --enable-app automatic behaviour
2016-02-13 22:39:24 +09:00
Tatsuhiro Tsujikawa
17758126fa
nghttpx: Add headers given in add-response-headers for mruby response
2016-02-13 22:31:38 +09:00
Tatsuhiro Tsujikawa
b440f585bc
nghttpx: Use Header to store custom request/response header fields
2016-02-13 22:19:05 +09:00
Tatsuhiro Tsujikawa
63a13ccb18
src: Add constexpr to StringRef ctors
2016-02-13 19:15:14 +09:00
Tatsuhiro Tsujikawa
72877379ec
nghttpx: Deprecate --backend-ipv4 and --backend-ipv6 in favor of --backend-address-family
2016-02-13 19:09:39 +09:00
Tatsuhiro Tsujikawa
8449958425
doc: Mention encryption for memcached connections
2016-02-13 18:50:15 +09:00
Tatsuhiro Tsujikawa
9037641592
Merge branch 'nghttpx-memcached-tls'
2016-02-13 18:47:06 +09:00
Tatsuhiro Tsujikawa
c0078ab45a
nghttpx: Add options to specify address family of memcached connections
2016-02-13 18:46:07 +09:00
Tatsuhiro Tsujikawa
3a41e4dd1a
nghttpx: Add encryption support for TLS ticket key retrieval
2016-02-13 18:46:07 +09:00