Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 5 Sep 2014 21:23:30 +0000 (UTC)
From:      Carlo Strub <cs@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r367392 - in head/www/libevhtp: . files
Message-ID:  <201409052123.s85LNU44047199@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: cs
Date: Fri Sep  5 21:23:29 2014
New Revision: 367392
URL: http://svnweb.freebsd.org/changeset/ports/367392
QAT: https://qat.redports.org/buildarchive/r367392/

Log:
  - The update provides options on par with original lib source, except share lib
    part.
  - change static lib to be shared lib by default, which is required in my
    another ports.
  - about 8.4 release broken: the issue will be resolved by adding one include
    file. There is one line missing in 8.4 tcp.h file.
  
  PR:		193131
  Submitted by:	Jingfeng Yan (maintainer)
  MFH:		2014q3

Added:
  head/www/libevhtp/files/
  head/www/libevhtp/files/patch-evhtp.c   (contents, props changed)
Modified:
  head/www/libevhtp/Makefile

Modified: head/www/libevhtp/Makefile
==============================================================================
--- head/www/libevhtp/Makefile	Fri Sep  5 21:15:25 2014	(r367391)
+++ head/www/libevhtp/Makefile	Fri Sep  5 21:23:29 2014	(r367392)
@@ -2,6 +2,7 @@
 
 PORTNAME=	libevhtp
 PORTVERSION=	1.2.9
+PORTREVISION=	1
 CATEGORIES=	www
 
 MAINTAINER=	yan_jingfeng@yahoo.com
@@ -19,22 +20,44 @@ GH_TAGNAME=	${GH_COMMIT}
 GH_COMMIT=	3886506
 
 USES=		cmake:outsource
-
+USE_LDCONFIG=	YES
 CMAKE_ARGS=	-DCMAKE_INCLUDE_PATH:PATH=include/event2 \
 		-DCMAKE_LIBRARY_PATH:PATH=lib/event2
 CMAKE_BUILD_TYPE=	Release
 
+OPTIONS_DEFINE=	EVHTP_DISABLE_SSL EVHTP_DISABLE_EVTHR EVHTP_DISABLE_REGEX \
+				EVHTP_BUILD_SHARED EVHTP_USE_DEFER_ACCEPT
+EVHTP_DISABLE_SSL_DESC=		Disable ssl support
+
+EVHTP_DISABLE_SSL_CMAKE_ON=	-DEVHTP_DISABLE_SSL:STRING=ON
+EVHTP_DISABLE_SSL_CMAKE_OFF=	-DEVHTP_DISABLE_SSL:STRING=OFF
+EVHTP_DISABLE_EVTHR_DESC=	Disable evthread support
+EVHTP_DISABLE_EVTHR_CMAKE_ON=	-DEVHTP_DISABLE_EVTHR:STRING=ON
+EVHTP_DISABLE_EVTHR_CMAKE_OFF=	-DEVHTP_DISABLE_EVTHR:STRING=OFF
+EVHTP_DISABLE_REGEX_DESC=	Disable regex support
+EVHTP_DISABLE_REGEX_CMAKE_ON=	-DEVHTP_DISABLE_REGEX:STRING=ON
+EVHTP_DISABLE_REGEX_CMAKE_OFF=	-DEVHTP_DISABLE_REGEX:STRING=OFF
+EVHTP_BUILD_SHARED_DESC=	Build shared library too
+EVHTP_BUILD_SHARED_CMAKE_ON=	-DEVHTP_BUILD_SHARED:STRING=ON
+EVHTP_BUILD_SHARED_CMAKE_OFF=	-DEVHTP_BUILD_SHARED:STRING=OFF
+EVHTP_USE_DEFER_ACCEPT_DESC=	Enable TCP_DEFER_ACCEPT
+EVHTP_USE_DEFER_ACCEPT_CMAKE_ON=	-DEVHTP_USE_DEFER_ACCEPT:STRING=ON
+EVHTP_USE_DEFER_ACCEPT_CMAKE_OFF=	-DEVHTP_USE_DEFER_ACCEPT:STRING=OFF
+
+OPTIONS_DEFAULT=	EVHTP_BUILD_SHARED
+
+.include <bsd.port.options.mk>
+
 PLIST_FILES=	include/evhtp.h\
 		include/evhtp-config.h \
 		include/evthr.h \
 		include/htparse.h \
-		include/onigposix.h \
-		lib/libevhtp.a
-
-.include <bsd.port.pre.mk>
+		include/onigposix.h
 
-.if ${OPSYS} == FreeBSD && ${OSVERSION} < 900000
-BROKEN=		Does not build on FreeBSD 8.x
+.if ${PORT_OPTIONS:MEVHTP_BUILD_SHARED}
+PLIST_FILES+=	lib/libevhtp.so
+.else
+PLIST_FILES+=	lib/libevhtp.a
 .endif
 
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>

Added: head/www/libevhtp/files/patch-evhtp.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/libevhtp/files/patch-evhtp.c	Fri Sep  5 21:23:29 2014	(r367392)
@@ -0,0 +1,28 @@
+--- evhtp.c.orig	2014-03-23 07:50:50.000000000 -0400
++++ evhtp.c	2014-08-28 09:08:40.970619326 -0400
+@@ -6,6 +6,10 @@
+ #include <signal.h>
+ #include <strings.h>
+ #include <inttypes.h>
++#ifdef SO_ACCEPTFILTER 
++#include <sys/types.h>
++#include <sys/socket.h>
++#endif
+ #ifndef WIN32
+ #include <sys/socket.h>
+ #include <netinet/in.h>
+@@ -2740,7 +2744,14 @@
+ 
+         sock = evconnlistener_get_fd(htp->server);
+ 
++#ifdef TCP_DEFER_ACCEPT
+         setsockopt(sock, IPPROTO_TCP, TCP_DEFER_ACCEPT, &one, (ev_socklen_t)sizeof(one));
++#elif SO_ACCEPTFILTER
++        struct accept_filter_arg afa;
++        bzero(&afa, sizeof(afa));
++        strcpy(afa.af_name, "httpready");
++        setsockopt(sock, SOL_SOCKET, SO_ACCEPTFILTER, &afa, sizeof(afa));
++#endif
+         setsockopt(sock, IPPROTO_TCP, TCP_NODELAY, &one, (ev_socklen_t)sizeof(one));
+     }
+ #endif



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201409052123.s85LNU44047199>