Accepting request 147290 from home:posophe:branches:Base:System

update to 8.32

OBS-URL: https://build.opensuse.org/request/show/147290
OBS-URL: https://build.opensuse.org/package/show/Base:System/pcre?expand=0&rev=47
This commit is contained in:
Cristian Rodríguez 2013-01-06 22:00:40 +00:00 committed by Git OBS Bridge
parent 163b2508d6
commit cd6d8e1c48
5 changed files with 62 additions and 121 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5778a02535473c7ee7838ea598c19f451e63cf5eec0bf0307a688301c9078c3c
size 1257162

View File

@ -1,35 +1,15 @@
Index: configure.ac
===================================================================
--- configure.ac.orig
+++ configure.ac
@@ -45,8 +45,12 @@ AC_CONFIG_MACRO_DIR([m4])
remember_set_CFLAGS="$CFLAGS"
remember_set_CXXFLAGS="$CXXFLAGS"
-AC_PROG_CC
+AC_PROG_CC_STDC
+AC_USE_SYSTEM_EXTENSIONS
+AC_SYS_LARGEFILE
+AM_PROG_CC_C_O
AC_PROG_CXX
+PCRE_VISIBILITY
if test "x$remember_set_CFLAGS" = "x"
then
@@ -80,8 +84,7 @@ AC_LANG_POP
AC_TYPE_INT64_T
AC_PROG_INSTALL
-AC_LIBTOOL_WIN32_DLL
-LT_INIT
+LT_INIT([win32-dll pic-only disable-static])
AC_PROG_LN_S
PCRE_MAJOR="pcre_major"
Index: m4/visibility.m4
===================================================================
From 1484e50a2818b2f207688765cef6cd2f5cc71520 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Cristian=20Rodr=C3=ADguez?= <crrodriguez@opensuse.org>
Date: Mon, 22 Oct 2012 22:38:34 +0200
Subject: [PATCH] build: Use GCC visibility to hide private symbols
http://bugs.exim.org/show_bug.cgi?id=1173
--
diff --git a/m4/visibility.m4 b/m4/visibility.m4
new file mode 100644
index 0000000..07fccee
--- /dev/null
+++ m4/visibility.m4
+++ b/m4/visibility.m4
@@ -0,0 +1,89 @@
+# visibility.m4 serial 4 (gettext-0.18.2)
+dnl Copyright (C) 2005, 2008, 2010-2011 Free Software Foundation, Inc.
@ -85,7 +65,7 @@ Index: m4/visibility.m4
+ dnl "visibility attribute not supported in this configuration; ignored"
+ dnl at the first function definition in every compilation unit, and we
+ dnl don't want to use the option in this case.
+ if test $gl_cv_cc_vis_werror = yes; then
+ if test $pcre_cv_cc_vis_werror = yes; then
+ CFLAGS="$CFLAGS -Werror"
+ fi
+ AC_COMPILE_IFELSE(
@ -97,13 +77,13 @@ Index: m4/visibility.m4
+ void dummyfunc (void) {}
+ ]],
+ [[]])],
+ [gl_cv_cc_visibility=yes],
+ [gl_cv_cc_visibility=no])
+ [pcre_cv_cc_visibility=yes],
+ [pcre_cv_cc_visibility=no])
+ CFLAGS="$gl_save_CFLAGS"])
+ AC_MSG_RESULT([$gl_cv_cc_visibility])
+ if test $gl_cv_cc_visibility = yes; then
+ CFLAG_VISIBILITY="-fvisibility=hidden"
+ CXXFLAG_INLINES_HIDDEN="-fvisibility-inlines-hidden"
+ AC_MSG_RESULT([$pcre_cv_cc_visibility])
+ if test $pcre_cv_cc_visibility = yes; then
+ VISIBILITY_CFLAGS="-fvisibility=hidden"
+ VISIBILITY_CXXFLAGS="-fvisibility=hidden -fvisibility-inlines-hidden"
+ HAVE_VISIBILITY=1
+ AC_DEFINE(PCRE_EXP_DECL, [extern __attribute__ ((visibility ("default")))], [to make a symbol visible])
+ AC_DEFINE(PCRE_EXP_DEFN, [__attribute__ ((visibility ("default")))], [to make a symbol visible])
@ -114,79 +94,12 @@ Index: m4/visibility.m4
+ AC_DEFINE(PCRECPP_EXP_DEFN, [__attribute__ ((visibility ("default")))], [to make a symbol visible])
+ fi
+ fi
+ AC_SUBST([CFLAG_VISIBILITY])
+ AC_SUBST([CXXFLAG_INLINES_HIDDEN])
+ AC_SUBST([VISIBILITY_CFLAGS])
+ AC_SUBST([VISIBILITY_CXXFLAGS])
+ AC_SUBST([HAVE_VISIBILITY])
+ AC_DEFINE_UNQUOTED([HAVE_VISIBILITY], [$HAVE_VISIBILITY],
+ [Define to 1 or 0, depending whether the compiler supports simple visibility declarations.])
+])
Index: Makefile.am
===================================================================
--- Makefile.am.orig
+++ Makefile.am
@@ -179,6 +179,9 @@ BUILT_SOURCES = pcre_chartables.c
# Build the 8 bit library if it is enabled.
if WITH_PCRE8
lib_LTLIBRARIES += libpcre.la
+
+libpcre_la_CFLAGS = $(CFLAG_VISIBILITY)
+
libpcre_la_SOURCES = \
pcre_byte_order.c \
pcre_compile.c \
@@ -212,6 +215,7 @@ endif # WITH_PCRE8
# Build the 16 bit library if it is enabled.
if WITH_PCRE16
lib_LTLIBRARIES += libpcre16.la
+libpcre16_la_CFLAGS = $(CFLAG_VISIBILITY)
libpcre16_la_SOURCES = \
pcre16_byte_order.c \
pcre16_chartables.c \
@@ -267,10 +271,10 @@ EXTRA_DIST += \
sljit/sljitUtils.c
if WITH_PCRE8
-libpcre_la_LDFLAGS = $(EXTRA_LIBPCRE_LDFLAGS)
+libpcre_la_LDFLAGS = -no-undefined $(EXTRA_LIBPCRE_LDFLAGS)
endif # WITH_PCRE8
if WITH_PCRE16
-libpcre16_la_LDFLAGS = $(EXTRA_LIBPCRE16_LDFLAGS)
+libpcre16_la_LDFLAGS = -no-undefined $(EXTRA_LIBPCRE16_LDFLAGS)
endif # WITH_PCRE16
CLEANFILES += pcre_chartables.c
@@ -292,9 +296,10 @@ endif # WITH_JIT
## A version of the main pcre library that has a posix re API.
if WITH_PCRE8
lib_LTLIBRARIES += libpcreposix.la
+libpcreposix_la_CFLAGS = $(CFLAG_VISIBILITY)
libpcreposix_la_SOURCES = \
pcreposix.c
-libpcreposix_la_LDFLAGS = $(EXTRA_LIBPCREPOSIX_LDFLAGS)
+libpcreposix_la_LDFLAGS = -no-undefined $(EXTRA_LIBPCREPOSIX_LDFLAGS)
libpcreposix_la_LIBADD = libpcre.la
endif # WITH_PCRE8
@@ -302,12 +307,13 @@ endif # WITH_PCRE8
if WITH_PCRE_CPP
lib_LTLIBRARIES += libpcrecpp.la
+libpcrecpp_la_CXXFLAGS = $(CFLAG_VISIBILITY)
libpcrecpp_la_SOURCES = \
pcrecpp_internal.h \
pcrecpp.cc \
pcre_scanner.cc \
pcre_stringpiece.cc
-libpcrecpp_la_LDFLAGS = $(EXTRA_LIBPCRECPP_LDFLAGS)
+libpcrecpp_la_LDFLAGS = -no-undefined $(EXTRA_LIBPCRECPP_LDFLAGS)
libpcrecpp_la_LIBADD = libpcre.la
TESTS += pcrecpp_unittest
@@ -351,6 +357,7 @@ if WITH_PCRE8
TESTS += RunGrepTest
dist_noinst_SCRIPTS += RunGrepTest
bin_PROGRAMS += pcregrep
+pcregrep_CFLAGS = -fwhole-program
pcregrep_SOURCES = pcregrep.c
pcregrep_LDADD = $(LIBZ) $(LIBBZ2)
pcregrep_LDADD += libpcre.la libpcreposix.la
--
1.7.12.503.g5976753.dirty

3
pcre-8.32.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a913fb9bd058ef380a2d91847c3c23fcf98e92dc3b47cd08a53c021c5cde0f55
size 1361156

View File

@ -1,3 +1,34 @@
-------------------------------------------------------------------
Sun Jan 6 15:40:59 UTC 2013 - p.drouand@gmail.com
- Update to 8.32 version:
* There is now support for 32-bit character strings and UTF-32. Like the
16-bit support, this is done by compiling a separate 32-bit library.
* \X now matches a Unicode extended grapheme cluster.
* Case-independent matching of Unicode characters that have more than one
"other case" now makes all three (or more) characters equivalent. This
applies, for example, to Greek Sigma, which has two lowercase versions.
* Unicode character properties are updated to Unicode 6.2.0.
* The EBCDIC support, which had decayed, has had a spring clean.
* A number of JIT optimizations have been added, which give faster JIT
execution speed. In addition, a new direct interface to JIT execution is
available. This bypasses some of the sanity checks of pcre_exec() to give a
noticeable speed-up.
* A number of issues in pcregrep have been fixed, making it more compatible
with GNU grep. In particular, --exclude and --include (and variants) apply
to all files now, not just those obtained from scanning a directory
recursively. In Windows environments, the default action for directories is
now "skip" instead of "read" (which provokes an error).
* If the --only-matching (-o) option in pcregrep is specified multiple
times, each one causes appropriate output. For example, -o1 -o2 outputs the
substrings matched by the 1st and 2nd capturing parentheses. A separating
string can be specified by --om-separator (default empty).
* When PCRE is built via Autotools using a version of gcc that has the
"visibility" feature, it is used to hide internal library functions that are
not part of the public API.
- updated and versionned pcre-visibility.patch to svn trunk
* Modifications on configure.ac and makefile have been merged on upstream release
-------------------------------------------------------------------
Fri Nov 23 19:13:09 UTC 2012 - jengelh@inai.de

View File

@ -1,7 +1,7 @@
#
# spec file for package pcre
#
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -20,7 +20,7 @@ Name: pcre
BuildRequires: gcc-c++
BuildRequires: libtool
BuildRequires: pkg-config
Version: 8.31
Version: 8.32
Release: 0
Summary: A library for Perl-compatible regular expressions
License: BSD-3-Clause
@ -30,12 +30,12 @@ Group: System/Libraries
Obsoletes: pcre-64bit
%endif
#
Url: ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/
Url: http://www.pcre.org/
Source: ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/%name-%version.tar.bz2
Source2: baselibs.conf
BuildRoot: %{_tmppath}/%{name}-%{version}-build
#PATCH-FIX-UPSTREAM crrodriguez@opensuse.org http://bugs.exim.org/show_bug.cgi?id=1173
Patch: pcre-visibility.patch
Patch: pcre-8.32-visibility.patch
%description
The PCRE library is a set of functions that implement regular
@ -143,7 +143,7 @@ as Perl 5.
%prep
%setup -q
%patch
%patch -p1
%build
# Available JIT archs see sljit/sljitConfig.h
@ -185,9 +185,6 @@ make test || echo make test failed
make test
%endif
%clean
%{__rm} -rf %{buildroot}
%post -n libpcre1 -p /sbin/ldconfig
%postun -n libpcre1 -p /sbin/ldconfig