Package init
This commit is contained in:
commit
b7bb176555
24
pcre-8.41-fix_stack_estimator.patch
Normal file
24
pcre-8.41-fix_stack_estimator.patch
Normal file
@ -0,0 +1,24 @@
|
||||
Fix recursion stack estimator
|
||||
|
||||
Due to inlining match() by recent GCC, the stack estimator reported 4-bytes
|
||||
stack consumption.
|
||||
|
||||
Author: Sergei Golubchik <vuvova@gmail.com>
|
||||
<https://bugs.exim.org/show_bug.cgi?id=2173>
|
||||
|
||||
diff --git a/pcre/pcre_exec.c b/pcre/pcre_exec.c
|
||||
--- a/pcre_exec.c
|
||||
+++ b/pcre_exec.c
|
||||
@@ -509,6 +509,12 @@
|
||||
(e.g. stopped by repeated call or recursion limit)
|
||||
*/
|
||||
|
||||
+#ifdef __GNUC__
|
||||
+static int
|
||||
+match(REGISTER PCRE_PUCHAR eptr, REGISTER const pcre_uchar *ecode,
|
||||
+ PCRE_PUCHAR mstart, int offset_top, match_data *md, eptrblock *eptrb,
|
||||
+ unsigned int rdepth) __attribute__((noinline,noclone));
|
||||
+#endif
|
||||
static int
|
||||
match(REGISTER PCRE_PUCHAR eptr, REGISTER const pcre_uchar *ecode,
|
||||
PCRE_PUCHAR mstart, int offset_top, match_data *md, eptrblock *eptrb,
|
||||
BIN
pcre-8.43.tar.bz2
Normal file
BIN
pcre-8.43.tar.bz2
Normal file
Binary file not shown.
123
pcre.spec
Normal file
123
pcre.spec
Normal file
@ -0,0 +1,123 @@
|
||||
Name: pcre
|
||||
Version: 8.43
|
||||
Release: 2
|
||||
Summary: Perl Compatible Regular Expressions
|
||||
## Source package only:
|
||||
# INSTALL: FSFAP
|
||||
# install-sh: MIT and Public Domain
|
||||
# ltmain.sh: (GPLv2+ or BSD) and (GPLv3+ or MIT)
|
||||
# missing: GPLv2+ or BSD
|
||||
# compile: GPLv2+ or BSD
|
||||
# config.sub: GPLv3+ or BSD
|
||||
# m4/ax_pthread.m4: GPLv3+ with exception
|
||||
# m4/libtool.m4: GPLv2+ or BSD
|
||||
# m4/ltversion.m4: FSFULLR
|
||||
# m4/pcre_visibility.m4: FSFULLR
|
||||
# m4/lt~obsolete.m4: FSFULLR
|
||||
# m4/ltsugar.m4: FSFULLR
|
||||
# m4/ltoptions.m4: FSFULLR
|
||||
# aclocal.m4: (GPLv2+ or BSD) and FSFULLR
|
||||
# Makefile.in: FSFULLR
|
||||
# configure: FSFUL
|
||||
# test-driver: GPLv2+ with exception
|
||||
# testdata: Public Domain (see LICENSE file)
|
||||
## Binary packages:
|
||||
# other files: BSD
|
||||
License: BSD
|
||||
URL: http://www.pcre.org/
|
||||
Source0: https://ftp.pcre.org/pub/pcre/%{name}-%{version}.tar.bz2
|
||||
Patch0: pcre-8.41-fix_stack_estimator.patch
|
||||
BuildRequires: readline-devel autoconf automake coreutils
|
||||
BuildRequires: gcc git gcc-c++ glibc-common libtool make
|
||||
BuildRequires: bash diffutils grep
|
||||
Provides: %{name}-utf16 = %{version}-%{release}
|
||||
Provides: %{name}-utf32 = %{version}-%{release}
|
||||
Provides: %{name}-cpp = %{version}-%{release}
|
||||
Provides: %{name}-tools = %{version}-%{release}
|
||||
Obsoletes: %{name}-utf16 <= %{version}-%{release}
|
||||
Obsoletes: %{name}-utf32 <= %{version}-%{release}
|
||||
Obsoletes: %{name}-cpp <= %{version}-%{release}
|
||||
Obsoletes: %{name}-tools <= %{version}-%{release}
|
||||
|
||||
%description
|
||||
The PCRE library is a set of functions that implement regular expression
|
||||
pattern matching using the same syntax and semantics as Perl 5. PCRE has
|
||||
its own native API, as well as a set of wrapper functions that correspond
|
||||
to the POSIX regular expression API. The PCRE library is free, even for
|
||||
building proprietary software.
|
||||
|
||||
PCRE was originally written for the Exim MTA, but is now used by many
|
||||
high-profile open source projects, including Apache, PHP, KDE, Postfix,
|
||||
and Nmap. PCRE has also found its way into some well known commercial
|
||||
products, like Apple Safari. Some other interesting projects using PCRE
|
||||
include Chicken, Ferite, Onyx, Hypermail, Leafnode, Askemos, Wenlin, and
|
||||
8th.
|
||||
|
||||
%package devel
|
||||
Summary: Development files for %{name}
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Provides: %{name}-static = %{version}-%{release}
|
||||
Obsoletes: %{name}-static <= %{version}-%{release}
|
||||
|
||||
%description devel
|
||||
The %{name}-devel package contains libraries and header files for
|
||||
developing applications that use %{name}.
|
||||
|
||||
%package help
|
||||
Summary: Doc files for %{name}
|
||||
Buildarch: noarch
|
||||
Requires: man
|
||||
|
||||
%description help
|
||||
The %{name}-help package contains doc files for %{name}.
|
||||
|
||||
%prep
|
||||
%autosetup -n %{name}-%{version} -p1 -S git
|
||||
libtoolize -cf
|
||||
autoreconf -vif
|
||||
|
||||
%build
|
||||
%configure --enable-jit --enable-pcretest-libreadline --enable-utf \
|
||||
--enable-unicode-properties --enable-pcre8 --enable-pcre16 \
|
||||
--enable-pcre32 --disable-silent-rules
|
||||
%make_build
|
||||
|
||||
%install
|
||||
%make_install
|
||||
rm -f %{buildroot}/%{_libdir}/*.la
|
||||
rm -rf %{buildroot}/%{_docdir}/pcre
|
||||
|
||||
%check
|
||||
make check VERBOSE=yes
|
||||
|
||||
%ldconfig_scriptlets
|
||||
|
||||
%files
|
||||
%doc AUTHORS NEWS README
|
||||
%license LICENCE
|
||||
%{_libdir}/*.so.*
|
||||
%{_bindir}/pcregrep
|
||||
%{_bindir}/pcretest
|
||||
|
||||
%files devel
|
||||
%{_libdir}/*.so
|
||||
%{_libdir}/pkgconfig/*
|
||||
%{_includedir}/*.h
|
||||
%{_bindir}/pcre-config
|
||||
%{_libdir}/*.a
|
||||
|
||||
%files help
|
||||
%doc doc/*.txt doc/html
|
||||
%doc HACKING pcredemo.c
|
||||
%{_mandir}/man1/*
|
||||
%{_mandir}/man3/*
|
||||
|
||||
%changelog
|
||||
* Sat Sep 29 2019 luhuaxin <luhuaxin@huawei.com> - 8.43-2
|
||||
- Type: enhancement
|
||||
- ID: NA
|
||||
- SUG: NA
|
||||
- DESC: move README file to main package
|
||||
|
||||
* Fri Aug 20 2019 luhuaxin <luhuaxin@huawei.com> - 8.43-1
|
||||
- Package init
|
||||
Loading…
x
Reference in New Issue
Block a user