diff --git a/devel/pcre/Makefile b/devel/pcre/Makefile index 53238401e574..c0f60352b1f5 100644 --- a/devel/pcre/Makefile +++ b/devel/pcre/Makefile @@ -6,8 +6,7 @@ # PORTNAME= pcre -PORTVERSION= 8.13 -PORTREVISION= 1 +PORTVERSION= 8.20 CATEGORIES= devel MASTER_SITES= ftp://ftp.csx.cam.ac.uk/pub/software/programming/%SUBDIR%/ \ ftp://ftp.fu-berlin.de/unix/misc/%SUBDIR%/ \ @@ -20,6 +19,8 @@ COMMENT= Perl Compatible Regular Expressions library LICENSE= BSD LICENSE_FILE= ${WRKSRC}/LICENCE +OPTIONS= JIT "Enable Just-In-Time compiling support" on + USE_BZIP2= yes GNU_CONFIGURE= yes USE_LDCONFIG= yes @@ -27,6 +28,12 @@ CONFIGURE_ARGS= --enable-utf8 --enable-unicode-properties .include +.if !defined(WITHOUT_JIT) +CONFIGURE_ARGS+= --enable-jit +.else +CONFIGURE_ARGS+= --disable-jit +.endif + .if !defined(NOPORTDOCS) PORTDOCS= * .endif @@ -40,19 +47,21 @@ CONFIGURE_ARGS+=--with-link-size=${WITH_LINK_SIZE} .endif MAN1= pcre-config.1 pcregrep.1 pcretest.1 -MAN3= pcre.3 pcre_compile.3 pcre_compile2.3 pcre_config.3 \ - pcre_copy_named_substring.3 pcre_copy_substring.3 \ - pcre_dfa_exec.3 pcre_exec.3 pcre_free_substring.3 \ +MAN3= pcre.3 pcre_assign_jit_stack.3 pcre_compile.3 \ + pcre_compile2.3 pcre_config.3 pcre_copy_named_substring.3 \ + pcre_copy_substring.3 pcre_dfa_exec.3 pcre_exec.3 \ + pcre_free_study.3 pcre_free_substring.3 \ pcre_free_substring_list.3 pcre_fullinfo.3 \ pcre_get_named_substring.3 pcre_get_stringnumber.3 \ pcre_get_stringtable_entries.3 pcre_get_substring.3 \ pcre_get_substring_list.3 pcre_info.3 \ - pcre_maketables.3 pcrepartial.3 pcreprecompile.3 pcre_refcount.3 \ - pcre_study.3 pcre_version.3 pcreapi.3 \ + pcre_jit_stack_alloc.3 pcre_jit_stack_free.3 \ + pcre_maketables.3 pcrepartial.3 pcreprecompile.3 \ + pcre_refcount.3 pcre_study.3 pcre_version.3 pcreapi.3 \ pcrebuild.3 pcrecallout.3 pcrecompat.3 \ - pcrecpp.3 pcrematching.3 pcrepattern.3 \ - pcreperform.3 pcreposix.3 pcresample.3 pcrestack.3 \ - pcresyntax.3 + pcrecpp.3 pcrejit.3 pcrelimits.3 pcrematching.3 \ + pcrepattern.3 pcreperform.3 pcreposix.3 pcresample.3 \ + pcrestack.3 pcresyntax.3 pcreunicode.3 post-patch: .if defined(NOPORTDOCS) @@ -67,4 +76,9 @@ post-patch: post-install: @${STRIP_CMD} ${PREFIX}/bin/pcregrep ${PREFIX}/bin/pcretest +test: build + @cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} test + +regression-test: test + .include diff --git a/devel/pcre/distinfo b/devel/pcre/distinfo index deafd4f712a0..b2d1bc995d07 100644 --- a/devel/pcre/distinfo +++ b/devel/pcre/distinfo @@ -1,2 +1,2 @@ -SHA256 (pcre-8.13.tar.bz2) = 3384624ea3281af5fc83400e1fd184e0bdd49e1705315faefd7cfe91b739b504 -SIZE (pcre-8.13.tar.bz2) = 1037903 +SHA256 (pcre-8.20.tar.bz2) = e06b0943ce4b0f15324a20020d6086760a75b72f5ad7c23b9b2bfe690ed49acd +SIZE (pcre-8.20.tar.bz2) = 1164103 diff --git a/devel/pcre/files/patch-pcre_compile.c b/devel/pcre/files/patch-pcre_compile.c deleted file mode 100644 index 5133cbcad89a..000000000000 --- a/devel/pcre/files/patch-pcre_compile.c +++ /dev/null @@ -1,29 +0,0 @@ -Index: pcre_compile.c -=================================================================== ---- pcre_compile.c (revision 660) -+++ pcre_compile.c (revision 661) -@@ -2295,9 +2295,14 @@ - A user pointed out that PCRE was rejecting [:a[:digit:]] whereas Perl was not. - It seems that the appearance of a nested POSIX class supersedes an apparent - external class. For example, [:a[:digit:]b:] matches "a", "b", ":", or --a digit. Also, unescaped square brackets may also appear as part of class --names. For example, [:a[:abc]b:] gives unknown class "[:abc]b:]"in Perl. -+a digit. - -+In Perl, unescaped square brackets may also appear as part of class names. For -+example, [:a[:abc]b:] gives unknown POSIX class "[:abc]b:]". However, for -+[:a[:abc]b][b:] it gives unknown POSIX class "[:abc]b][b:]", which does not -+seem right at all. PCRE does not allow closing square brackets in POSIX class -+names. -+ - Arguments: - ptr pointer to the initial [ - endptr where to return the end pointer -@@ -2314,6 +2319,7 @@ - { - if (*ptr == CHAR_BACKSLASH && ptr[1] == CHAR_RIGHT_SQUARE_BRACKET) - ptr++; -+ else if (*ptr == CHAR_RIGHT_SQUARE_BRACKET) return FALSE; - else - { - if (*ptr == terminator && ptr[1] == CHAR_RIGHT_SQUARE_BRACKET)