Commit ce7d950f authored by Rider Linden's avatar Rider Linden

Source drop 1.40.0

parent 4bc49a57
---
Language: Cpp
AccessModifierOffset: -2
AlignAfterOpenBracket: Align
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignEscapedNewlines: Right
AlignOperands: true
AlignTrailingComments: true
AllowAllParametersOfDeclarationOnNextLine: true
AllowShortBlocksOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: All
AllowShortIfStatementsOnASingleLine: false
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: MultiLine
BinPackArguments: true
BinPackParameters: true
BraceWrapping:
AfterClass: false
AfterControlStatement: false
AfterEnum: false
AfterFunction: false
AfterNamespace: false
AfterObjCDeclaration: false
AfterStruct: false
AfterUnion: false
AfterExternBlock: false
BeforeCatch: false
BeforeElse: false
IndentBraces: false
SplitEmptyFunction: true
SplitEmptyRecord: true
SplitEmptyNamespace: true
BreakBeforeBinaryOperators: None
BreakBeforeBraces: Attach
BreakBeforeInheritanceComma: false
BreakInheritanceList: BeforeColon
BreakBeforeTernaryOperators: true
BreakConstructorInitializersBeforeComma: false
BreakConstructorInitializers: BeforeColon
BreakAfterJavaFieldAnnotations: false
BreakStringLiterals: true
ColumnLimit: 80
CommentPragmas: '^ IWYU pragma:'
CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: true
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
DerivePointerAlignment: false
DisableFormat: false
ExperimentalAutoDetectBinPacking: false
FixNamespaceComments: true
ForEachMacros:
- foreach
- Q_FOREACH
- BOOST_FOREACH
IncludeBlocks: Preserve
IncludeCategories:
- Regex: '^"(llvm|llvm-c|clang|clang-c)/'
Priority: 2
- Regex: '^(<|"(gtest|isl|json)/)'
Priority: 3
- Regex: '.*'
Priority: 1
IncludeIsMainRegex: '$'
IndentCaseLabels: false
IndentPPDirectives: AfterHash
IndentWidth: 2
IndentWrappedFunctionNames: false
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: true
MacroBlockBegin: ''
MacroBlockEnd: ''
MaxEmptyLinesToKeep: 1
NamespaceIndentation: None
ObjCBinPackProtocolList: Auto
ObjCBlockIndentWidth: 2
ObjCSpaceAfterProperty: false
ObjCSpaceBeforeProtocolList: true
PenaltyBreakAssignment: 2
PenaltyBreakBeforeFirstCallParameter: 19
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakString: 1000
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 60
PointerAlignment: Right
ReflowComments: true
SortIncludes: false
SortUsingDeclarations: true
SpaceAfterCStyleCast: false
SpaceAfterTemplateKeyword: true
SpaceBeforeAssignmentOperators: true
SpaceBeforeCpp11BracedList: false
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeParens: ControlStatements
SpaceBeforeRangeBasedForLoopColon: true
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 1
SpacesInAngles: false
SpacesInContainerLiterals: true
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
Standard: Cpp11
StatementMacros:
- Q_UNUSED
- QT_REQUIRE_VERSION
TabWidth: 8
UseTab: Never
...
# emacs backup file
*~
# autotools
*.la
*.lo
*.m4
*.o
*.pyc
.deps/
.libs/
INSTALL
Makefile
Makefile.in
autom4te.cache/
compile
config.guess
config.h
config.h.in
config.log
config.status
config.sub
configure
depcomp
install-sh
libtool
ltmain.sh
missing
stamp-h1
test-driver
# cmake
CMakeCache.txt
CMakeFiles/
cmake_install.cmake
install_manifest.txt
CTestTestfile.cmake
build.ninja
rules.ninja
.ninja_deps
.ninja_log
lib*.so
lib*.so.*
lib*.a
# generated by "make test" with cmake
Testing/
# test logs generated by `make check`
*.log
*.trs
lib/MSVC_obj/
_VC_ROOT/
.depend.MSVC
*.pyd
*.egg-info/
python/nghttp2.c
[submodule "third-party/mruby"]
path = third-party/mruby
url = https://github.com/mruby/mruby
[submodule "third-party/neverbleed"]
path = third-party/neverbleed
url = https://github.com/tatsuhiro-t/neverbleed.git
branch = openssl111fix
dist: xenial
os:
- linux
compiler:
- clang
- gcc
env:
matrix:
- CI_BUILD=cmake
- CI_BUILD=autotools
matrix:
include:
- os: osx
compiler: clang
osx_image: xcode10.2
env: CI_BUILD=autotools
language: cpp
sudo: required
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-8
- autoconf
- automake
- autotools-dev
- libtool
- pkg-config
- zlib1g-dev
- libcunit1-dev
- libssl-dev
- libxml2-dev
- libev-dev
- libevent-dev
- libjansson-dev
- libjemalloc-dev
- libc-ares-dev
- cmake
- cmake-data
homebrew:
packages:
- libev
- libevent
- c-ares
- cunit
- libressl
before_install:
- $CC --version
- if [ "$CXX" = "g++" ]; then export CXX="g++-8" CC="gcc-8"; fi
- $CC --version
- go version
- cmake --version
before_script:
- |
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
CPPFLAGS="-fsanitize=address" LDFLAGS="-fsanitize=address -fuse-ld=gold"
fi
- |
if [ "$TRAVIS_OS_NAME" = "osx" ]; then
PKG_CONFIG_PATH="/usr/local/opt/libressl/lib/pkgconfig:/usr/local/opt/libxml2/lib/pkgconfig"
fi
# Now build nghttp2
- git submodule update --init
- |
if [ "$CI_BUILD" = "autotools" ]; then
autoreconf -i && ./configure --with-mruby PKG_CONFIG_PATH=$PKG_CONFIG_PATH
fi
- |
if [ "$CI_BUILD" = "cmake" ]; then
cmake -DENABLE_WERROR=1 -DWITH_MRUBY=1 -DWITH_NEVERBLEED=1
fi
script:
- |
if [ "$CI_BUILD" = "autotools" ]; then
make distcheck DISTCHECK_CONFIGURE_FLAGS="--with-mruby --with-neverbleed --enable-werror CPPFLAGS=$CPPFLAGS LDFLAGS=\"$LDFLAGS\" PKG_CONFIG_PATH=$PKG_CONFIG_PATH"
fi
- |
if [ "$CI_BUILD" = "cmake" ]; then
make && make check
fi
- |
if [ "$CI_BUILD" = "cmake" ]; then
# Integration tests for nghttpx; autotools build erases build
# for packaging test.
cd integration-tests
export GO111MODULE=on
make it
fi
...@@ -14,38 +14,48 @@ github issues [2]. ...@@ -14,38 +14,48 @@ github issues [2].
-------- --------
187j3x1 187j3x1
Adam Gołębiowski
Alek Storm Alek Storm
Alex Nalivko Alex Nalivko
Alexandros Konstantinakis-Karmis
Alexis La Goutte Alexis La Goutte
Amir Pakdel Amir Pakdel
Anders Bakken Anders Bakken
Andreas Pohl Andreas Pohl
Andrew Penkrat
Andy Davies Andy Davies
Angus Gratton Angus Gratton
Anna Henningsen Anna Henningsen
Ant Bryan Ant Bryan
Benedikt Christoph Wolters Benedikt Christoph Wolters
Benedikt Christoph Wolters
Benjamin Peterson Benjamin Peterson
Bernard Spil Bernard Spil
Bernard Spil Brendan Heinonen
Brian Card Brian Card
Brian Suh Brian Suh
Daniel Evers
Daniel Stenberg Daniel Stenberg
Dave Reisner Dave Reisner
David Beitey David Beitey
David Weekly David Weekly
Dmitriy Vetutnev
Don
Dylan Plecki
Etienne Cimon Etienne Cimon
Fabian Möller Fabian Möller
Fabian Wiesel Fabian Wiesel
Gabi Davar Gabi Davar
Gitai
Google Inc. Google Inc.
Jacob Champion Jacob Champion
Jan Kundrát
Jan-E Jan-E
Janusz Dziemidowicz Janusz Dziemidowicz
Jay Satiro Jay Satiro
Jeff 'Raid' Baitis
Jianqing Wang Jianqing Wang
Jim Morrison Jim Morrison
Josh Braegger
José F. Calcerrada José F. Calcerrada
Kamil Dudka Kamil Dudka
Kazuho Oku Kazuho Oku
...@@ -53,23 +63,30 @@ Kenny (kang-yen) Peng ...@@ -53,23 +63,30 @@ Kenny (kang-yen) Peng
Kenny Peng Kenny Peng
Kit Chan Kit Chan
Kyle Schomp Kyle Schomp
LazyHamster
Lucas Pardue Lucas Pardue
MATSUMOTO Ryosuke MATSUMOTO Ryosuke
Marc Bachmann
Matt Rudary Matt Rudary
Matt Way Matt Way
Mike Conlen Mike Conlen
Mike Frysinger Mike Frysinger
Mike Lothian
Nicholas Hurley Nicholas Hurley
Nora Shoemaker Nora Shoemaker
Pedro Santos
Peeyush Aggarwal Peeyush Aggarwal
Peter Wu Peter Wu
Piotr Sikora Piotr Sikora
Raul Gutierrez Segales Raul Gutierrez Segales
Remo E Remo E
Reza Tavakoli Reza Tavakoli
Richard Wolfert
Rick Lei
Ross Smith II Ross Smith II
Scott Mitchell Scott Mitchell
Sebastiaan Deckers Sebastiaan Deckers
Simon Frankenberger
Simone Basso Simone Basso
Soham Sinha Soham Sinha
Stefan Eissing Stefan Eissing
...@@ -80,13 +97,16 @@ Syohei YOSHIDA ...@@ -80,13 +97,16 @@ Syohei YOSHIDA
Tapanito Tapanito
Tatsuhiko Kubo Tatsuhiko Kubo
Tatsuhiro Tsujikawa Tatsuhiro Tsujikawa
Tobias Geerinckx-Rice
Tom Harwood Tom Harwood
Tomasz Buchert Tomasz Buchert
Tomasz Torcz Tomasz Torcz
Vernon Tang Vernon Tang
Viacheslav Biriukov Viacheslav Biriukov
Viktor Szakats
Viktor Szépe Viktor Szépe
Wenfeng Liu Wenfeng Liu
William A Rowe Jr
Xiaoguang Sun Xiaoguang Sun
Zhuoyun Wei Zhuoyun Wei
acesso acesso
...@@ -94,8 +114,10 @@ ayanamist ...@@ -94,8 +114,10 @@ ayanamist
bxshi bxshi
clemahieu clemahieu
dalf dalf
dawg
es es
fangdingjun fangdingjun
jwchoi
kumagi kumagi
lstefani lstefani
makovich makovich
......
...@@ -24,15 +24,15 @@ ...@@ -24,15 +24,15 @@
cmake_minimum_required(VERSION 3.0) cmake_minimum_required(VERSION 3.0)
# XXX using 1.8.90 instead of 1.9.0-DEV # XXX using 1.8.90 instead of 1.9.0-DEV
project(nghttp2 VERSION 1.25.0) project(nghttp2 VERSION 1.40.0)
# See versioning rule: # See versioning rule:
# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html # http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
set(LT_CURRENT 28) set(LT_CURRENT 33)
set(LT_REVISION 0) set(LT_REVISION 0)
set(LT_AGE 14) set(LT_AGE 19)
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})
include(Version) include(Version)
math(EXPR LT_SOVERSION "${LT_CURRENT} - ${LT_AGE}") math(EXPR LT_SOVERSION "${LT_CURRENT} - ${LT_AGE}")
...@@ -66,6 +66,7 @@ if(OPENSSL_FOUND AND LIBEV_FOUND AND ZLIB_FOUND) ...@@ -66,6 +66,7 @@ if(OPENSSL_FOUND AND LIBEV_FOUND AND ZLIB_FOUND)
else() else()
set(ENABLE_APP_DEFAULT OFF) set(ENABLE_APP_DEFAULT OFF)
endif() endif()
find_package(Systemd 209)
find_package(Jansson 2.5) find_package(Jansson 2.5)
set(ENABLE_HPACK_TOOLS_DEFAULT ${JANSSON_FOUND}) set(ENABLE_HPACK_TOOLS_DEFAULT ${JANSSON_FOUND})
# 2.0.8 is required because we use evconnlistener_set_error_cb() # 2.0.8 is required because we use evconnlistener_set_error_cb()
...@@ -79,7 +80,7 @@ else() ...@@ -79,7 +80,7 @@ else()
set(ENABLE_PYTHON_BINDINGS_DEFAULT OFF) set(ENABLE_PYTHON_BINDINGS_DEFAULT OFF)
endif() endif()
find_package(LibXml2 2.7.7) find_package(LibXml2 2.6.26)
set(WITH_LIBXML2_DEFAULT ${LIBXML2_FOUND}) set(WITH_LIBXML2_DEFAULT ${LIBXML2_FOUND})
find_package(Jemalloc) find_package(Jemalloc)
set(WITH_JEMALLOC_DEFAULT ${JEMALLOC_FOUND}) set(WITH_JEMALLOC_DEFAULT ${JEMALLOC_FOUND})
...@@ -106,7 +107,7 @@ endif() ...@@ -106,7 +107,7 @@ endif()
foreach(_build_type "Release" "MinSizeRel" "RelWithDebInfo") foreach(_build_type "Release" "MinSizeRel" "RelWithDebInfo")
foreach(_lang C CXX) foreach(_lang C CXX)
string(TOUPPER "CMAKE_${_lang}_FLAGS_${_build_type}" _var) string(TOUPPER "CMAKE_${_lang}_FLAGS_${_build_type}" _var)
string(REGEX REPLACE "(^| )[/-]D *NDEBUG($| )" "" ${_var} "${${_var}}") string(REGEX REPLACE "(^| )[/-]D *NDEBUG($| )" " " ${_var} "${${_var}}")
endforeach() endforeach()
endforeach() endforeach()
...@@ -117,7 +118,7 @@ else() ...@@ -117,7 +118,7 @@ else()
endif() endif()
include(ExtractValidFlags) include(ExtractValidFlags)
foreach(_cxx1x_flag -std=c++11 -std=c++0x) foreach(_cxx1x_flag -std=c++14)
extract_valid_cxx_flags(_cxx1x_flag_supported ${_cxx1x_flag}) extract_valid_cxx_flags(_cxx1x_flag_supported ${_cxx1x_flag})
if(_cxx1x_flag_supported) if(_cxx1x_flag_supported)
set(CXX1XCXXFLAGS ${_cxx1x_flag}) set(CXX1XCXXFLAGS ${_cxx1x_flag})
...@@ -193,6 +194,7 @@ endif() ...@@ -193,6 +194,7 @@ endif()
# libev (for src) # libev (for src)
set(HAVE_LIBEV ${LIBEV_FOUND}) set(HAVE_LIBEV ${LIBEV_FOUND})
set(HAVE_ZLIB ${ZLIB_FOUND}) set(HAVE_ZLIB ${ZLIB_FOUND})
set(HAVE_SYSTEMD ${SYSTEMD_FOUND})
set(HAVE_LIBEVENT_OPENSSL ${LIBEVENT_FOUND}) set(HAVE_LIBEVENT_OPENSSL ${LIBEVENT_FOUND})
if(LIBEVENT_FOUND) if(LIBEVENT_FOUND)
# Must both link the core and openssl libraries. # Must both link the core and openssl libraries.
...@@ -302,6 +304,7 @@ check_type_size("time_t" SIZEOF_TIME_T) ...@@ -302,6 +304,7 @@ check_type_size("time_t" SIZEOF_TIME_T)
include(CheckFunctionExists) include(CheckFunctionExists)
check_function_exists(_Exit HAVE__EXIT) check_function_exists(_Exit HAVE__EXIT)
check_function_exists(accept4 HAVE_ACCEPT4) check_function_exists(accept4 HAVE_ACCEPT4)
check_function_exists(mkostemp HAVE_MKOSTEMP)
include(CheckSymbolExists) include(CheckSymbolExists)
# XXX does this correctly detect initgroups (un)availability on cygwin? # XXX does this correctly detect initgroups (un)availability on cygwin?
...@@ -384,6 +387,15 @@ else() ...@@ -384,6 +387,15 @@ else()
) )
endif() endif()
if(ENABLE_STATIC_CRT)
foreach(lang C CXX)
foreach(suffix "" _DEBUG _MINSIZEREL _RELEASE _RELWITHDEBINFO)
set(var "CMAKE_${lang}_FLAGS${suffix}")
string(REPLACE "/MD" "/MT" ${var} "${${var}}")
endforeach()
endforeach()
endif()
if(ENABLE_DEBUG) if(ENABLE_DEBUG)
set(DEBUGBUILD 1) set(DEBUGBUILD 1)
endif() endif()
...@@ -496,6 +508,7 @@ message(STATUS "summary of build options: ...@@ -496,6 +508,7 @@ message(STATUS "summary of build options:
Jansson: ${HAVE_JANSSON} (LIBS='${JANSSON_LIBRARIES}') Jansson: ${HAVE_JANSSON} (LIBS='${JANSSON_LIBRARIES}')
Jemalloc: ${HAVE_JEMALLOC} (LIBS='${JEMALLOC_LIBRARIES}') Jemalloc: ${HAVE_JEMALLOC} (LIBS='${JEMALLOC_LIBRARIES}')
Zlib: ${HAVE_ZLIB} (LIBS='${ZLIB_LIBRARIES}') Zlib: ${HAVE_ZLIB} (LIBS='${ZLIB_LIBRARIES}')
Systemd: ${HAVE_SYSTEMD} (LIBS='${SYSTEMD_LIBRARIES}')
Boost::System: ${Boost_SYSTEM_LIBRARY} Boost::System: ${Boost_SYSTEM_LIBRARY}
Boost::Thread: ${Boost_THREAD_LIBRARY} Boost::Thread: ${Boost_THREAD_LIBRARY}
Third-party: Third-party:
......
...@@ -14,6 +14,9 @@ option(ENABLE_PYTHON_BINDINGS "Build Python bindings" ...@@ -14,6 +14,9 @@ option(ENABLE_PYTHON_BINDINGS "Build Python bindings"
${ENABLE_PYTHON_BINDINGS_DEFAULT}) ${ENABLE_PYTHON_BINDINGS_DEFAULT})
option(ENABLE_FAILMALLOC "Build failmalloc test program" ON) option(ENABLE_FAILMALLOC "Build failmalloc test program" ON)
option(ENABLE_LIB_ONLY "Build libnghttp2 only. This is a short hand for -DENABLE_APP=0 -DENABLE_EXAMPLES=0 -DENABLE_HPACK_TOOLS=0 -DENABLE_PYTHON_BINDINGS=0") option(ENABLE_LIB_ONLY "Build libnghttp2 only. This is a short hand for -DENABLE_APP=0 -DENABLE_EXAMPLES=0 -DENABLE_HPACK_TOOLS=0 -DENABLE_PYTHON_BINDINGS=0")
option(ENABLE_STATIC_LIB "Build libnghttp2 in static mode also")
option(ENABLE_SHARED_LIB "Build libnghttp2 as a shared library" ON)
option(ENABLE_STATIC_CRT "Build libnghttp2 against the MS LIBCMT[d]")
option(WITH_LIBXML2 "Use libxml2" option(WITH_LIBXML2 "Use libxml2"
${WITH_LIBXML2_DEFAULT}) ${WITH_LIBXML2_DEFAULT})
......
[The text below was composed based on 1.2. License section of
curl/libcurl project.]
When contributing with code, you agree to put your changes and new
code under the same license nghttp2 is already using unless stated and
agreed otherwise.
When changing existing source code, you do not alter the copyright of
the original file(s). The copyright will still be owned by the
original creator(s) or those who have been assigned copyright by the
original author(s).
By submitting a patch to the nghttp2 project, you are assumed to have
the right to the code and to be allowed by your employer or whatever
to hand over that patch/code to us. We will credit you for your
changes as far as possible, to give credit but also to keep a trace
back to who made what changes. Please always provide us with your
full real name when contributing!
commit 9a9ab0813cef6c2ee36bc9531e61a4f431d9bd6e (HEAD, tag: v1.25.0, origin/master, origin/HEAD, master)