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
Tatsuhiro Tsujikawa
094168a58f
Merge branch 'Lekensteyn-tests-fixes'
2016-02-16 00:08:08 +09: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
63e43bff99
tests: remove unused macros
...
Since v0.6.2-7-g1d138ac ("Unify DATA and other frames in
nghttp2_outbound_item and save malloc()"), the macros are unused and the
builds fails on -Werror=unused-macros.
2016-02-15 10:20:13 +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
Tatsuhiro Tsujikawa
02b7116d42
Merge branch 'nghttpx-replace-unique-ptr-char-with-immutable-string'
2016-02-14 22:36:48 +09:00
Tatsuhiro Tsujikawa
aa3373a107
nghttpx: Use ImmutableString for mruby_file
2016-02-14 22:27:59 +09:00
Tatsuhiro Tsujikawa
7aabc6b125
nghttpx: Use ImmutableString for user
2016-02-14 22:21:55 +09:00
Tatsuhiro Tsujikawa
466e4b7a1e
nghttpx: Use ImmutableString for conf_path
2016-02-14 22:20:10 +09:00
Tatsuhiro Tsujikawa
76a425226f
nghttpx: Use ImmutableString for pid_file
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
2b707bff27
nghttpx: Use ImmutableString for log file
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
9055323b67
nghttpx: Use ImmutableString for request_header_file and response_header_file
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
67804cfc8c
nghttpx: Use ImmutableString for ciphers
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
2344932b45
nghttpx: Use ImmutableString for dh_param_file
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
35ebdd35bc
nghttpx: Use ImmutableString for private_key_file
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
ac81003669
nghttpx: Use ImmutableString for cert_file
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
c999987baf
nghttpx: Use ImmutableString for private_key_file
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
529a59d309
nghttpx: Use ImmutableString for tls.client_verify.cacert
2016-02-14 22:17:10 +09:00
Tatsuhiro Tsujikawa
52f6417813
nghttpx: Use ImmutableString for tls.cacert
2016-02-14 22:17:00 +09: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
Tatsuhiro Tsujikawa
660bc389e6
nghttpx: Use ImmutableString for fetch_ocsp_response_file
2016-02-14 21:01:54 +09:00
Tatsuhiro Tsujikawa
bfc26e8299
nghttpx: Use ImmutableString to store memcached server host
2016-02-14 20:59:10 +09:00
Tatsuhiro Tsujikawa
47106c0756
Merge branch 'nghttpx-refactor-downstream-addr-group'
2016-02-14 20:49:30 +09:00
Tatsuhiro Tsujikawa
49fa914db5
nghttpx: Use StringRef for string parameters in match_downstream_addr_group
2016-02-14 20:48:06 +09:00
Tatsuhiro Tsujikawa
93eabc642b
nghttpx: Use StringRef for parameter in Router::match
2016-02-14 19:07:22 +09:00
Tatsuhiro Tsujikawa
2d273f8237
nghttpx: Use StringRef for pattern paramter in Router::add_route
2016-02-14 18:55:53 +09:00
Tatsuhiro Tsujikawa
a53f0f0a17
nghttpx: Refactor DownstreamAddrGroup and router API
2016-02-14 18:47:24 +09:00
Tatsuhiro Tsujikawa
1bd98dcf4f
nghttpx: Remove user defined ctor/assignment op from DownstreamAddr
2016-02-14 18:31:08 +09:00
Tatsuhiro Tsujikawa
eebed206c9
Add Architecture doc
2016-02-14 18:23:28 +09:00
Tatsuhiro Tsujikawa
fe74600a5f
List all contributors in AUTHORS
2016-02-14 17:40:58 +09:00
Tatsuhiro Tsujikawa
08e2d7cdb3
Merge branch 'Lekensteyn-build-fixes'
2016-02-14 16:59:30 +09: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