PSARC/2016/009 Nghttp2: HTTP/2 C Library
authorPetr Sumbera <petr.sumbera@oracle.com>
Tue, 19 Jan 2016 04:31:39 -0800
changeset 5333 37b6c3cf767d
parent 5332 1e1d90972404
child 5334 30ec36f36c89
PSARC/2016/009 Nghttp2: HTTP/2 C Library 22126434 Nghttp2 C library should be added to allow Apache HTTPD server support HTTP/2
components/curl/Makefile
components/nghttp2/Makefile
components/nghttp2/nghttp2.license
components/nghttp2/nghttp2.p5m
--- a/components/curl/Makefile	Mon Jan 25 19:02:35 2016 -0800
+++ b/components/curl/Makefile	Tue Jan 19 04:31:39 2016 -0800
@@ -18,7 +18,7 @@
 #
 # CDDL HEADER END
 #
-# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
 #
 include ../../make-rules/shared-macros.mk
 
@@ -73,6 +73,7 @@
 CONFIGURE_OPTIONS += --with-zlib=/usr --with-libidn=/usr
 CONFIGURE_OPTIONS += --with-pic
 CONFIGURE_OPTIONS += --with-libssh2
+CONFIGURE_OPTIONS += --without-nghttp2
 CONFIGURE_OPTIONS += "curl_disallow_getifaddrs=yes"
 
 LINT_FLAGS += -I$(SOURCE_DIR)/include
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/nghttp2/Makefile	Tue Jan 19 04:31:39 2016 -0800
@@ -0,0 +1,59 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+#
+
+include ../../make-rules/shared-macros.mk
+
+COMPONENT_NAME=		nghttp2
+COMPONENT_VERSION=	1.6.0
+COMPONENT_PROJECT_URL=	https://nghttp2.org/
+COMPONENT_SRC=		$(COMPONENT_NAME)-$(COMPONENT_VERSION)
+COMPONENT_ARCHIVE=	$(COMPONENT_SRC).tar.gz
+COMPONENT_ARCHIVE_HASH= \
+    sha256:c88012e87b80c055ddd2412efd7e96b9e8cfe0652c4b21083f2cb89b2f0d3a26
+COMPONENT_ARCHIVE_URL=	https://github.com/tatsuhiro-t/nghttp2/releases/download/v$(COMPONENT_VERSION)/$(COMPONENT_ARCHIVE)
+COMPONENT_BUGDB=	library/libmicrohttpd
+
+TPNO = 26335
+
+include $(WS_MAKE_RULES)/prep.mk
+include $(WS_MAKE_RULES)/configure.mk
+include $(WS_MAKE_RULES)/ips.mk
+
+CONFIGURE_ENV += CFLAGS="$(CFLAGS)"
+CONFIGURE_ENV += CXXFLAGS="$(CXXFLAGS)"
+CONFIGURE_ENV += CPPFLAGS="$(CPPFLAGS)"
+
+CONFIGURE_OPTIONS += --disable-hpack-tools
+CONFIGURE_OPTIONS += --disable-static
+CONFIGURE_OPTIONS += ZLIB_LIBS=-lz
+CONFIGURE_OPTIONS += ZLIB_CFLAGS=
+
+build:		$(BUILD_32_and_64)
+
+install:	$(INSTALL_32_and_64)
+
+test:		$(NO_TESTS)
+
+system-test:    $(NO_TESTS)
+
+REQUIRED_PACKAGES += system/library
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/nghttp2/nghttp2.license	Tue Jan 19 04:31:39 2016 -0800
@@ -0,0 +1,20 @@
+Copyright (c) 2012, 2014, 2015 Tatsuhiro Tsujikawa
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/nghttp2/nghttp2.p5m	Tue Jan 19 04:31:39 2016 -0800
@@ -0,0 +1,49 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+#
+
+<transform file path=usr.*/man/.+ -> default mangler.man.stability volatile>
+set name=pkg.fmri \
+    value=pkg:/library/[email protected]$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
+set name=pkg.summary \
+    value="nghttp2 - C library for framing layer of HTTP/2 protocol"
+set name=pkg.description \
+    value="nghttp2 is a small C library that implements HTTP/2 and its header compression algorithm HPACK."
+set name=com.oracle.info.description value="the Nghttp2 C library"
+set name=com.oracle.info.tpno value=$(TPNO)
+set name=info.classification \
+    value=org.opensolaris.category.2008:System/Libraries
+set name=info.source-url value=$(COMPONENT_ARCHIVE_URL)
+set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
+set name=org.opensolaris.arc-caseid value=PSARC/2016/009
+set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
+file path=usr/include/nghttp2/nghttp2.h
+file path=usr/include/nghttp2/nghttp2ver.h
+link path=usr/lib/$(MACH64)/libnghttp2.so target=libnghttp2.so.14.4.0
+link path=usr/lib/$(MACH64)/libnghttp2.so.14 target=libnghttp2.so.14.4.0
+file path=usr/lib/$(MACH64)/libnghttp2.so.14.4.0
+file path=usr/lib/$(MACH64)/pkgconfig/libnghttp2.pc
+link path=usr/lib/libnghttp2.so target=libnghttp2.so.14.4.0
+link path=usr/lib/libnghttp2.so.14 target=libnghttp2.so.14.4.0
+file path=usr/lib/libnghttp2.so.14.4.0
+file path=usr/lib/pkgconfig/libnghttp2.pc
+license nghttp2.license license=MIT