Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
systemsmanagement
pcre
pcre.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File pcre.spec of Package pcre
# # spec file for package pcre # # Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # Name: pcre Version: 8.45 Release: 0 Summary: A library for Perl-compatible regular expressions License: BSD-3-Clause Group: Development/Libraries/C and C++ URL: http://www.pcre.org/ #SVN-Clone: svn://vcs.exim.org/pcre/code/trunk Source: https://ftp.pcre.org/pub/pcre/pcre-%{version}.tar.bz2 Source2: https://ftp.pcre.org/pub/pcre/pcre-%{version}.tar.bz2.sig Source3: %{name}.keyring Source4: baselibs.conf #PATCH-FIX-UPSTREAM crrodriguez@opensuse.org http://bugs.exim.org/show_bug.cgi?id=1173 Patch0: pcre-8.32-visibility.patch #PATCH-FIX-OPENSUSE tchvatal@suse.cz upstream thinks it is good idea to use rpath, taken from RH Patch1: pcre-8.21-multilib.patch #PATCH-FIX-OPENSUSE kstreitova@suse.com fix pcre stack frame size detection https://bugs.exim.org/show_bug.cgi?id=2173 Patch2: pcre-8.41-stack_frame_size_detection.patch #Patch 3: see: https://sources.debian.net/patches/pcre3/2:8.39-2/pcreposix.patch/ and cyrus imapd issue #1731 Patch3: pcre-8.42-pcreposix.patch Patch4: pcre-8.45-bsc1199232-unicode-property-matching.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: gcc-c++ BuildRequires: libtool BuildRequires: pkgconfig %description The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. %package devel Summary: A library for Perl-compatible regular expressions Group: Development/Libraries/C and C++ Requires: libpcre1 = %{version} Requires: libpcre16-0 = %{version} Requires: libpcrecpp0 = %{version} Requires: libpcreposix0 = %{version} Requires: libstdc++-devel %description devel The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. %package devel-static Summary: A library for Perl-compatible regular expressions Group: Development/Libraries/C and C++ Requires: pcre-devel = %{version} %description devel-static The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. This package contains static versions of the PCRE libraries. %package -n libpcre1 Summary: A library for Perl-compatible regular expressions Group: System/Libraries Provides: %{name} = %{version} Obsoletes: %{name} < %{version} %description -n libpcre1 The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. This PCRE library variant supports 8-bit and UTF-8 strings. (See also libpcre16.) %package -n libpcre16-0 Summary: A library for Perl-compatible regular expressions Group: System/Libraries %description -n libpcre16-0 The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. libpcre16 supports 16-bit and UTF-16 strings. %package -n libpcreposix0 Summary: A library for Perl-compatible regular expressions Group: System/Libraries %description -n libpcreposix0 The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. pcreposix provides a POSIX-compatible API to the PCRE engine. %package -n libpcrecpp0 Summary: A library for Perl-compatible regular expressions Group: System/Libraries %description -n libpcrecpp0 The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. pcrecpp provides a C++ API to the PCRE engine. %package doc Summary: A library for Perl-compatible regular expressions Group: Documentation/HTML %if 0%{?suse_version} >= 1120 BuildArch: noarch %endif %description doc The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. %package testsuite Summary: Tests for libpcre Group: Development/Libraries/C and C++ %description testsuite This package contains the testsuite part of the PCRE library. %package tools Summary: A library for Perl-compatible regular expressions Group: Productivity/Text/Utilities Recommends: %{name}-doc %description tools The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. %prep %autosetup -p1 %build %global _lto_cflags %{_lto_cflags} -ffat-lto-objects # Available JIT archs see sljit/sljitConfig.h %global jit_archs %{ix86} x86_64 %{arm} aarch64 ppc ppc64 ppc64le mips sparc autoreconf -fiv %configure \ %ifarch %{jit_archs} --enable-jit \ %endif --enable-static \ --with-link-size=2 \ --with-match-limit=10000000 \ --enable-newline-is-lf \ --enable-pcre16 \ --enable-utf8 \ --enable-unicode-properties %if 0%{?do_profiling} # RunTest test 2 needs lots of stack, if it ever segfaults # try increasing this ulimit -s $((16*1024)) %make_build CFLAGS="%{optflags} %{cflags_profile_generate}" %make_build CFLAGS="%{optflags} %{cflags_profile_generate}" check %make_build clean %make_build CFLAGS="%{optflags} %{cflags_profile_feedback}" %else %make_build CFLAGS="%{optflags}" %endif %install %make_install mkdir -p %{buildroot}/%{_defaultdocdir} mv %{buildroot}%{_datadir}/doc/pcre %{buildroot}/%{_defaultdocdir}/pcre-doc #empty dependecy_libs find %{buildroot} -type f -name "*.la" -delete -print #testsuite files %define testsuitedir %{buildroot}/%{_libexecdir}/%{name}/testsuite mkdir -p %{testsuitedir} cp Makefile %{testsuitedir} cp -r testdata %{testsuitedir} cp .libs/pcrecpp_unittest %{testsuitedir} %ifarch %{jit_archs} cp .libs/pcre_jit_test %{testsuitedir} %endif cp .libs/pcre_scanner_unittest %{testsuitedir} cp .libs/pcre_stringpiece_unittest %{testsuitedir} cp .libs/pcregrep %{testsuitedir} cp .libs/pcretest %{testsuitedir} cp RunTest %{testsuitedir} cp RunGrepTest %{testsuitedir} %check # RunTest test 2 needs lots of stack, if it ever segfaults # try increasing this ulimit -s $((16*1024)) %make_build check %post -n libpcre1 -p /sbin/ldconfig %postun -n libpcre1 -p /sbin/ldconfig %post -n libpcre16-0 -p /sbin/ldconfig %postun -n libpcre16-0 -p /sbin/ldconfig %post -n libpcrecpp0 -p /sbin/ldconfig %postun -n libpcrecpp0 -p /sbin/ldconfig %post -n libpcreposix0 -p /sbin/ldconfig %postun -n libpcreposix0 -p /sbin/ldconfig %preun testsuite if [ "$1" = 0 ]; then rm -f %{_libexecdir}/%{name}/testsuite/testNinputgrep rm -f %{_libexecdir}/%{name}/testsuite/teststderrgrep rm -f %{_libexecdir}/%{name}/testsuite/testtemp1grep rm -f %{_libexecdir}/%{name}/testsuite/testtemp2grep rm -f %{_libexecdir}/%{name}/testsuite/testtrygrep fi %files -n libpcre1 %license COPYING LICENCE %doc AUTHORS ChangeLog NEWS README %{_libdir}/libpcre.so.* %files -n libpcre16-0 %{_libdir}/libpcre16.so.* %files -n libpcrecpp0 %{_libdir}/libpcrecpp.so.* %files -n libpcreposix0 %{_libdir}/libpcreposix.so.* %files tools %{_bindir}/pcregrep %{_bindir}/pcretest %{_mandir}/man1/pcregrep.1%{?ext_man} %{_mandir}/man1/pcretest.1%{?ext_man} %files doc %license COPYING LICENCE %doc AUTHORS ChangeLog NEWS README %doc doc/html doc/*.txt %doc %{_defaultdocdir}/pcre-doc %files devel %{_bindir}/pcre-config %{_includedir}/* %{_libdir}/*.so %{_libdir}/pkgconfig/libpcre.pc %{_libdir}/pkgconfig/libpcre16.pc %{_libdir}/pkgconfig/libpcrecpp.pc %{_libdir}/pkgconfig/libpcreposix.pc %{_mandir}/man1/pcre-config.1%{?ext_man} %{_mandir}/man3/pcre*.3*%{ext_man} %files devel-static %{_libdir}/*.a %files testsuite %dir %{_libexecdir}/%{name} %{_libexecdir}/%{name}/testsuite %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor