Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 3 Feb 2016 14:19:38 +0000 (UTC)
From:      Vsevolod Stakhov <vsevolod@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r407952 - in head/devel: . hyperscan hyperscan/files
Message-ID:  <201602031419.u13EJcAN068746@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: vsevolod
Date: Wed Feb  3 14:19:38 2016
New Revision: 407952
URL: https://svnweb.freebsd.org/changeset/ports/407952

Log:
  Add hyperscan port.
  
  Hyperscan is a high-performance multiple regex matching library. It follows the
  regular expression syntax of the commonly-used libpcre library, yet functions
  as a standalone library with its own API written in C. Hyperscan uses hybrid
  automata techniques to allow simultaneous matching of large numbers (up to tens
  of thousands) of regular expressions, as well as matching of regular
  expressions across streams of data.
  
  Hyperscan is typically used in a DPI library stack.
  
  This port is limited for amd64 only.
  
  This port uses embedded boost 1.59.

Added:
  head/devel/hyperscan/
  head/devel/hyperscan/Makefile   (contents, props changed)
  head/devel/hyperscan/distinfo   (contents, props changed)
  head/devel/hyperscan/files/
  head/devel/hyperscan/files/patch-CMakeLists.txt   (contents, props changed)
  head/devel/hyperscan/pkg-descr   (contents, props changed)
  head/devel/hyperscan/pkg-plist   (contents, props changed)
Modified:
  head/devel/Makefile

Modified: head/devel/Makefile
==============================================================================
--- head/devel/Makefile	Wed Feb  3 11:53:25 2016	(r407951)
+++ head/devel/Makefile	Wed Feb  3 14:19:38 2016	(r407952)
@@ -1025,6 +1025,7 @@
     SUBDIR += hs-word8
     SUBDIR += htable
     SUBDIR += hub
+    SUBDIR += hyperscan
     SUBDIR += hwloc
     SUBDIR += ice
     SUBDIR += icmake

Added: head/devel/hyperscan/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/hyperscan/Makefile	Wed Feb  3 14:19:38 2016	(r407952)
@@ -0,0 +1,33 @@
+# $FreeBSD$
+
+PORTNAME=	hyperscan
+PORTVERSION=	4.0.1
+DISTVERSIONPREFIX=	v
+CATEGORIES=	devel textproc
+MASTER_SITES=	GH:hs SF/boost/boost/1.59.0:boost
+DISTFILES=	${DISTNAME}${EXTRACT_SUFX}:hs boost_1_59_0.tar.gz:boost
+
+MAINTAINER=	vsevolod@highsecure.ru
+COMMENT=	High-performance multiple regex matching library
+
+LICENSE=	BSD3CLAUSE
+
+BUILD_DEPENDS=	ragel:${PORTSDIR}/devel/ragel
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	01org
+USES=	compiler:c++11-lib cmake:outsource python:build
+ONLY_FOR_ARCHS=	amd64
+ONLY_FOR_ARCHS_REASON=	SSSE3 is required for work
+
+CMAKE_BUILD_TYPE=	MinSizeRel
+CXXFLAGS+=	-march=core2
+CFLAGS+=	-march=core2
+CMAKE_ARGS+=	-DBOOST_ROOT=${WRKDIR}/boost_1_59_0
+
+post-stage:
+	${MV} ${STAGEDIR}/${PREFIX}/lib/pkgconfig/libhs.pc \
+		${STAGEDIR}/${PREFIX}/libdata/pkgconfig/
+	${RMDIR} ${STAGEDIR}/${PREFIX}/lib/pkgconfig/
+
+.include <bsd.port.mk>

Added: head/devel/hyperscan/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/hyperscan/distinfo	Wed Feb  3 14:19:38 2016	(r407952)
@@ -0,0 +1,4 @@
+SHA256 (01org-hyperscan-v4.0.1_GH0.tar.gz) = ae6619baa3da78361b09d22c155b1406b17890009d93ed60445381eb03016b76
+SIZE (01org-hyperscan-v4.0.1_GH0.tar.gz) = 1346621
+SHA256 (boost_1_59_0.tar.gz) = 47f11c8844e579d02691a607fbd32540104a9ac7a2534a8ddaef50daf502baac
+SIZE (boost_1_59_0.tar.gz) = 83709983

Added: head/devel/hyperscan/files/patch-CMakeLists.txt
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/hyperscan/files/patch-CMakeLists.txt	Wed Feb  3 14:19:38 2016	(r407952)
@@ -0,0 +1,13 @@
+--- CMakeLists.txt.orig	2016-02-03 13:53:36 UTC
++++ CMakeLists.txt
+@@ -170,8 +170,8 @@ else()
+     endif()
+ 
+     # set compiler flags - more are tested and added later
+-    set(EXTRA_C_FLAGS "-std=c99 -Wall -Wextra -Wshadow -Wcast-qual -Werror")
+-    set(EXTRA_CXX_FLAGS "-std=c++11 -Wall -Wextra -Werror -Wno-shadow -Wswitch -Wreturn-type -Wcast-qual -Wno-deprecated -Wnon-virtual-dtor")
++    set(EXTRA_C_FLAGS "-std=c99 -Wall -Wextra -Wshadow -Wcast-qual")
++    set(EXTRA_CXX_FLAGS "-std=c++11 -Wall -Wextra -Wno-shadow -Wswitch -Wreturn-type -Wcast-qual -Wno-deprecated -Wnon-virtual-dtor")
+ 
+     if (NOT CMAKE_C_FLAGS MATCHES .*march.*)
+         message(STATUS "Building for current host CPU")

Added: head/devel/hyperscan/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/hyperscan/pkg-descr	Wed Feb  3 14:19:38 2016	(r407952)
@@ -0,0 +1,9 @@
+Hyperscan is a high-performance multiple regex matching library. It follows the
+regular expression syntax of the commonly-used libpcre library, yet functions
+as a standalone library with its own API written in C. 
+
+Hyperscan uses hybrid automata techniques to allow simultaneous matching of
+large numbers (up to tens of thousands) of regular expressions, as well as
+matching of regular expressions across streams of data.
+
+WWW: https://01.org/hyperscan

Added: head/devel/hyperscan/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/hyperscan/pkg-plist	Wed Feb  3 14:19:38 2016	(r407952)
@@ -0,0 +1,7 @@
+include/hs/hs.h
+include/hs/hs_common.h
+include/hs/hs_compile.h
+include/hs/hs_runtime.h
+lib/libhs.a
+lib/libhs_runtime.a
+libdata/pkgconfig/libhs.pc



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