commit b7bb17655567560fdfbd4188e1baefd837ef5152 Author: overweight <5324761+overweight@user.noreply.gitee.com> Date: Mon Sep 30 11:11:26 2019 -0400 Package init diff --git a/pcre-8.41-fix_stack_estimator.patch b/pcre-8.41-fix_stack_estimator.patch new file mode 100644 index 0000000..085d027 --- /dev/null +++ b/pcre-8.41-fix_stack_estimator.patch @@ -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 + + +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, diff --git a/pcre-8.43.tar.bz2 b/pcre-8.43.tar.bz2 new file mode 100644 index 0000000..e20c601 Binary files /dev/null and b/pcre-8.43.tar.bz2 differ diff --git a/pcre.spec b/pcre.spec new file mode 100644 index 0000000..f25dea9 --- /dev/null +++ b/pcre.spec @@ -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 - 8.43-2 +- Type: enhancement +- ID: NA +- SUG: NA +- DESC: move README file to main package + +* Fri Aug 20 2019 luhuaxin - 8.43-1 +- Package init