/[packages]/cauldron/pcre/current/SPECS/pcre.spec
ViewVC logotype

Annotation of /cauldron/pcre/current/SPECS/pcre.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 821978 - (hide annotations) (download)
Tue May 12 23:10:16 2015 UTC (5 years, 1 month ago) by neoclust
File size: 7421 byte(s)
New version
   Fixes CVE-2015-2325 and CVE-2015-2326

1 luigiwalser 303179 %define pcre_major 1
2     %define pcrecpp_major 0
3 blino 581 %define pcreposix_major 1
4 luigiwalser 309694 %define pcreposix_compat_major 0
5 diogenese 668946 %define libname_orig lib%{name}
6     %define libname16_orig lib%{name}16
7     %define libname32_orig lib%{name}32
8 luigiwalser 303179 %define libname %mklibname pcre %{pcre_major}
9 fwang 335603 %define libname16 %mklibname pcre 16 %{pcrecpp_major}
10     %define libname32 %mklibname pcre 32 %{pcrecpp_major}
11 luigiwalser 309694 %define libnamecpp %mklibname pcrecpp %{pcrecpp_major}
12     %define libnameposix %mklibname pcreposix %{pcreposix_major}
13     %define libnameposix_compat %mklibname pcreposix %{pcreposix_compat_major}
14 blino 581 %define develname %mklibname -d pcre
15 fwang 323606 %define develcpp %mklibname -d pcrecpp
16 fwang 323586 %define develposix %mklibname -d pcreposix
17 diogenese 668946 %define olddevelname %mklibname %{name} 0 -d
18 blino 581
19     %define build_pcreposix_compat 1
20    
21 diogenese 668946 Summary: Perl-compatible regular expression library
22     Name: pcre
23 neoclust 821978 Version: 8.37
24     Release: %mkrel 1
25 diogenese 668946 License: BSD-Style
26     Group: File tools
27     URL: http://www.pcre.org/
28 luigiwalser 611775 Source0: ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/%{name}-%{version}.tar.bz2
29     Source1: ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/%{name}-%{version}.tar.bz2.sig
30 diogenese 668946 Requires: %{libname} = %{version}-%{release}
31 blino 581 BuildRequires: automake
32 oden 594784 Patch0: pcre-0.6.5-fix-detect-into-kdelibs.patch
33 diogenese 668946 Patch1: pcre-8.33-linkage-fix.patch
34 blino 581 # from debian:
35     Patch4: pcre-pcreposix-glibc-conflict.patch
36    
37 diogenese 668946
38 blino 581 %description
39     PCRE has its own native API, but a set of "wrapper" functions that are based on
40     the POSIX API are also supplied in the library libpcreposix. Note that this
41     just provides a POSIX calling interface to PCRE: the regular expressions
42     themselves still follow Perl syntax and semantics.
43     This package contains a grep variant based on the PCRE library.
44    
45     %package -n %{libname}
46     Group: System/Libraries
47     Summary: Perl-compatible regular expression library
48 colin 273158 Requires(pre): filesystem >= 2.1.9-18
49 blino 581 Provides: %{libname_orig} = %{version}-%{release}
50    
51     %description -n %{libname}
52 luigiwalser 309694 This package contains the shared library libpcre.
53 blino 581
54 luigiwalser 669002 %package -n %{libname16}
55 diogenese 668946 Group: System/Libraries
56     Summary: Perl-compatible regular expression library
57     Requires(pre): filesystem >= 2.1.9-18
58     Provides: %{libname16_orig} = %{version}-%{release}
59 fwang 335603 Obsoletes: %{_lib}pcre16_1 < %{version}-%{release}
60 luigiwalser 309694
61 luigiwalser 669002 %description -n %{libname16}
62 neoclust 335530 This package contains the shared library libpcre.
63    
64 luigiwalser 669002 %package -n %{libname32}
65 diogenese 668946 Group: System/Libraries
66     Summary: Perl-compatible regular expression library
67     Requires(pre): filesystem >= 2.1.9-18
68     Provides: %{libname32_orig} = %{version}-%{release}
69 fwang 335603 Obsoletes: %{_lib}pcre32_1 < %{version}-%{release}
70 neoclust 335530
71 luigiwalser 669002 %description -n %{libname32}
72 neoclust 335530 This package contains the shared library libpcre.
73    
74 luigiwalser 309694 %package -n %{libnamecpp}
75 diogenese 668946 Group: System/Libraries
76 luigiwalser 309694 Summary: Perl-compatible regular expression library
77     Conflicts: %{_lib}pcre0 < 8.21-3
78    
79     %description -n %{libnamecpp}
80     This package contains the shared library libpcrecpp.
81    
82    
83     %package -n %{libnameposix}
84 diogenese 668946 Group: System/Libraries
85 luigiwalser 309694 Summary: Perl-compatible regular expression library
86     Conflicts: %{_lib}pcre0 < 8.21-3
87    
88     %description -n %{libnameposix}
89     This package contains the shared library libpcreposix.
90    
91    
92     %package -n %{libnameposix_compat}
93 diogenese 668946 Group: System/Libraries
94 luigiwalser 309694 Summary: Perl-compatible regular expression library
95     Conflicts: %{_lib}pcre0 < 8.21-3
96    
97     %description -n %{libnameposix_compat}
98     This package contains the shared library libpcreposix compat.
99    
100    
101 blino 581 %package -n %{develname}
102     Group: Development/C
103     Summary: Headers and static lib for pcre development
104     Requires: %{libname} = %{version}-%{release}
105 diogenese 668946 Requires: %{libname16} = %{version}-%{release}
106     Requires: %{libname32} = %{version}-%{release}
107 blino 581 Provides: %{libname_orig}-devel = %{version}-%{release}
108     Provides: %{name}-devel = %{version}-%{release}
109 diogenese 668946 Obsoletes: %{olddevelname} < 8.21-3
110 blino 581
111     %description -n %{develname}
112     Install this package if you want do compile applications using the pcre
113     library.
114    
115 luigiwalser 669002 %package -n %{develcpp}
116 fwang 323606 Group: Development/C++
117     Summary: Headers and static lib for pcrecpp development
118     Provides: pcrecpp-devel = %{version}-%{release}
119     Requires: %{libnamecpp} = %{version}-%{release}
120     Requires: %{develname} = %{version}-%{release}
121     Conflicts: pcre-devel < 8.32-4
122    
123 luigiwalser 669002 %description -n %{develcpp}
124 fwang 323606 Install this package if you want do compile applications using the pcrecpp
125     library.
126    
127 luigiwalser 669002 %package -n %{develposix}
128 fwang 323586 Group: Development/C
129     Summary: Headers and static lib for pcreposix development
130     Provides: pcreposix-devel = %{version}-%{release}
131     Requires: %{libnameposix} = %{version}-%{release}
132     Requires: %{develname} = %{version}-%{release}
133 fwang 323606 Conflicts: pcre-devel < 8.32-4
134 fwang 323586
135 luigiwalser 669002 %description -n %{develposix}
136 fwang 323586 Install this package if you want do compile applications using the pcre
137     library.
138    
139 luigiwalser 309694 The header file for the POSIX-style functions is called pcreposix.h. The
140     official POSIX name is regex.h, but I didn't want to risk possible problems
141     with existing files of that name by distributing it that way. To use it with an
142     existing program that uses the POSIX API, it will have to be renamed or pointed
143     at by a link.
144    
145 blino 581 %prep
146     %setup -q
147 diogenese 668946 %patch0 -p1 -b .detect-into-kdelibs
148     %patch1 -p1 -b .linkage-fix
149 blino 581
150     %if %{build_pcreposix_compat}
151     # pcre-pcreposix-glibc-conflict patch below breaks compatibility,
152     # create a libpcreposix.so.0 without the patch
153     cp -a . ../pcre-with-pcreposix_compat && mv ../pcre-with-pcreposix_compat .
154     %endif
155     %patch4 -p1 -b .symbol-conflict
156    
157     %build
158     %if %{build_pcreposix_compat}
159     dirs="pcre-with-pcreposix_compat ."
160     %else
161     dirs="."
162     %endif
163     for i in $dirs; do
164     cd $i
165     mkdir -p m4
166 fwang 134303 autoreconf -fi
167 luigiwalser 309694 %configure2_5x \
168 diogenese 668946 --disable-static \
169 fwang 323576 --enable-utf \
170 luigiwalser 309694 --enable-unicode-properties \
171 diogenese 668946 --enable-pcre8 \
172     --enable-pcre16 \
173     --enable-pcre32 \
174 luigiwalser 309694 --enable-jit
175 blino 581 %make
176     cd -
177     done
178    
179     %check
180     export LC_ALL=C
181     make check
182    
183     %install
184     %if %{build_pcreposix_compat}
185     %makeinstall_std -C pcre-with-pcreposix_compat
186     %endif
187     %makeinstall_std
188    
189 fwang 170356 %multiarch_binaries %{buildroot}%{_bindir}/pcre-config
190 blino 581
191     # Remove unwanted files
192 luigiwalser 309694 rm -f %{buildroot}%{_docdir}/pcre/{AUTHORS,ChangeLog,COPYING,LICENCE,NEWS}
193     rm -f %{buildroot}%{_docdir}/pcre/{pcre-config.txt,pcre.txt,pcregrep.txt}
194     rm -f %{buildroot}%{_docdir}/pcre/{pcretest.txt,README}
195     rm -rf %{buildroot}%{_docdir}/pcre/html
196     rm -f %{buildroot}%{_libdir}/*.la
197 blino 581
198     %files
199 luigiwalser 309694 %doc AUTHORS COPYING LICENCE NEWS README
200 luigiwalser 303179 %{_mandir}/man1/pcregrep.1*
201     %{_mandir}/man1/pcretest.1*
202     %{_bindir}/pcregrep
203 fwang 323949 %{_bindir}/pcretest
204 blino 581
205     %files -n %{libname}
206 luigiwalser 303179 %{_libdir}/libpcre.so.%{pcre_major}*
207 luigiwalser 309694
208 neoclust 335530 %files -n %{libname16}
209     %{_libdir}/libpcre16.so.%{pcrecpp_major}*
210    
211     %files -n %{libname32}
212     %{_libdir}/libpcre32.so.%{pcrecpp_major}*
213    
214 luigiwalser 309694 %files -n %{libnamecpp}
215 luigiwalser 303179 %{_libdir}/libpcrecpp.so.%{pcrecpp_major}*
216 luigiwalser 309694
217 luigiwalser 303179 %if %{build_pcreposix_compat}
218 luigiwalser 309694 %files -n %{libnameposix_compat}
219     %{_libdir}/libpcreposix.so.%{pcreposix_compat_major}*
220 luigiwalser 303179 %endif
221 luigiwalser 309694
222     %files -n %{libnameposix}
223 luigiwalser 303179 %{_libdir}/libpcreposix.so.%{pcreposix_major}*
224 blino 581
225     %files -n %{develname}
226     %doc doc/html
227     %doc ChangeLog
228 fwang 323606 %{_libdir}/libpcre.so
229 neoclust 335530 %{_libdir}/libpcre16.so
230     %{_libdir}/libpcre32.so
231 fwang 323606 %{_includedir}/pcre.h
232     %{_includedir}/pcre_*.h
233 luigiwalser 303179 %{_libdir}/pkgconfig/libpcre.pc
234 neoclust 335530 %{_libdir}/pkgconfig/libpcre16.pc
235     %{_libdir}/pkgconfig/libpcre32.pc
236 luigiwalser 303179 %{_bindir}/pcre-config
237 blino 581 %multiarch %{multiarch_bindir}/pcre-config
238 luigiwalser 303179 %{_mandir}/man1/pcre-config.1*
239     %{_mandir}/man3/*.3*
240 fwang 323586 %exclude %{_libdir}/libpcreposix.so
241     %exclude %{_mandir}/man3/pcreposix.3*
242    
243 fwang 323606 %files -n %{develcpp}
244     %{_includedir}/pcrecpp*.h
245     %{_libdir}/libpcrecpp.so
246     %{_libdir}/pkgconfig/libpcrecpp.pc
247     %{_mandir}/man3/pcrecpp.3*
248    
249 fwang 323586 %files -n %{develposix}
250 fwang 323606 %{_includedir}/pcreposix.h
251 fwang 323586 %{_libdir}/libpcreposix.so
252     %{_libdir}/pkgconfig/libpcreposix.pc
253     %{_mandir}/man3/pcreposix.3*

  ViewVC Help
Powered by ViewVC 1.1.28