Tue, 29 Mar 2011 19:46:35 +0200
Correct and introduce slightly needed logic, leading to better reliability:
Update bash(1) patch logic, correct several buildconf make location
errors, correct failed bash(1) configure invocation, enable perl(1) to
build with unpathed make(1), patch rpm(1) to correctly link with
internal libdb(3), and lastly unsuscessfully try to reorganize rpm patch
hunks.
1 ##
2 ## perl-sys.spec -- OpenPKG RPM Package Specification
3 ## Copyright (c) 2000-2008 OpenPKG Foundation e.V. <http://openpkg.net/>
4 ##
5 ## Permission to use, copy, modify, and distribute this software for
6 ## any purpose with or without fee is hereby granted, provided that
7 ## the above copyright notice and this permission notice appear in all
8 ## copies.
9 ##
10 ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
11 ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
12 ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
13 ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
14 ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
15 ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
16 ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
17 ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
18 ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
19 ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
20 ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
21 ## SUCH DAMAGE.
22 ##
24 # versions of individual parts
25 %define V_perl 5.10.0
26 %define V_unix_syslog 1.1
27 %define V_archive_tar 1.46
28 %define V_archive_zip 1.26
29 %define V_archive_cpio 0.07
30 %define V_expect 1.21
31 %define V_storable 2.18
32 %define V_ipc_sharelite 0.17
33 %define V_ipc_shareable 0.60
34 %define V_ipc_sharedcache 1.3
35 %define V_ipc_run 0.82
36 %define V_ipc_run3 0.042
37 %define V_ipc_signal 1.00
38 %define V_ipc_filter 0.002
39 %define V_file_tail 0.99.3
40 %define V_file_temp 0.21
41 %define V_file_remove 1.42
42 %define V_file_rename 0.05
43 %define V_freezethaw 0.45
44 %define V_authen_sasl 2.12
45 %define V_authen_pam 0.16
46 %define V_weakref 0.01
47 %define V_filehandle_deluxe 0.92
48 %define V_filehandle_unget 0.1622
49 %define V_spiffy 0.30
50 %define V_io 1.2301
51 %define V_io_all 0.39
52 %define V_io_multiplex 1.10
53 %define V_io_interface 1.05
54 %define V_io_util 1.5
55 %define V_io_mux 0.08
56 %define V_boulder 1.30
57 %define V_error 0.17015
58 %define V_file_fnmatch 0.02
59 %define V_user 1.8
60 %define V_file_rsync 0.42
61 %define V_storable_amf 0.60
63 # package information
64 Name: perl-sys
65 Summary: Perl Modules for use with the system
66 URL: http://www.cpan.org/
67 Vendor: Perl Community
68 Packager: OpenPKG Foundation e.V.
69 Distribution: OpenPKG Community
70 Class: BASE
71 Group: Perl
72 License: GPL/Artistic
73 Version: %{V_perl}
74 Release: 20090416
76 # package options
77 %option with_pam no
79 # list of sources
80 Source0: http://www.cpan.org/modules/by-module/Unix/Unix-Syslog-%{V_unix_syslog}.tar.gz
81 Source1: http://www.cpan.org/modules/by-module/Archive/Archive-Tar-%{V_archive_tar}.tar.gz
82 Source2: http://www.cpan.org/modules/by-module/Archive/Archive-Zip-%{V_archive_zip}.tar.gz
83 Source3: http://www.cpan.org/modules/by-module/Expect/Expect-%{V_expect}.tar.gz
84 Source4: http://www.cpan.org/modules/by-module/Storable/Storable-%{V_storable}.tar.gz
85 Source5: http://www.cpan.org/modules/by-module/IPC/IPC-Shareable-%{V_ipc_shareable}.tar.gz
86 Source6: http://www.cpan.org/modules/by-module/File/File-Tail-%{V_file_tail}.tar.gz
87 Source7: http://www.cpan.org/modules/by-module/FreezeThaw/FreezeThaw-%{V_freezethaw}.tar.gz
88 Source8: http://www.cpan.org/modules/by-module/Authen/Authen-SASL-%{V_authen_sasl}.tar.gz
89 Source9: http://www.cpan.org/authors/id/L/LU/LUKKA/WeakRef-%{V_weakref}.tar.gz
90 Source10: http://www.cpan.org/modules/by-module/FileHandle/FileHandle-Deluxe-%{V_filehandle_deluxe}.tar.gz
91 Source11: http://www.cpan.org/modules/by-module/FileHandle/FileHandle-Unget-%{V_filehandle_unget}.tar.gz
92 Source12: http://www.cpan.org/modules/by-module/IPC/IPC-ShareLite-%{V_ipc_sharelite}.tar.gz
93 Source13: http://www.cpan.org/modules/by-module/IPC/IPC-SharedCache-%{V_ipc_sharedcache}.tar.gz
94 Source14: http://www.cpan.org/modules/by-module/IPC/IPC-Run-%{V_ipc_run}.tar.gz
95 Source15: http://www.cpan.org/modules/by-module/IPC/IPC-Signal-%{V_ipc_signal}.tar.gz
96 Source16: http://www.cpan.org/modules/by-module/IPC/IPC-Filter-%{V_ipc_filter}.tar.gz
97 Source17: http://www.cpan.org/authors/id/I/IN/INGY/Spiffy-%{V_spiffy}.tar.gz
98 Source18: http://www.cpan.org/modules/by-module/IO/IO-%{V_io}.tar.gz
99 Source19: http://www.cpan.org/modules/by-module/IO/IO-All-%{V_io_all}.tar.gz
100 Source20: http://www.cpan.org/modules/by-module/IO/IO-Multiplex-%{V_io_multiplex}.tar.gz
101 Source21: http://www.cpan.org/modules/by-module/IO/IO-Interface-%{V_io_interface}.tar.gz
102 Source22: http://www.cpan.org/modules/by-module/IO/IO-Util-%{V_io_util}.tar.gz
103 Source23: http://www.cpan.org/modules/by-module/Boulder/Boulder-%{V_boulder}.tar.gz
104 Source24: http://www.cpan.org/modules/by-module/Error/Error-%{V_error}.tar.gz
105 Source25: http://www.cpan.org/modules/by-module/IPC/IPC-Run3-%{V_ipc_run3}.tar.gz
106 Source26: http://www.cpan.org/modules/by-module/IO/IO-Mux-%{V_io_mux}.tar.gz
107 Source27: http://www.cpan.org/modules/by-module/File/File-FnMatch-%{V_file_fnmatch}.tar.gz
108 Source28: http://www.cpan.org/modules/by-module/Authen/Authen-PAM-%{V_authen_pam}.tar.gz
109 Source29: http://www.cpan.org/modules/by-module/Archive/Archive-Cpio-%{V_archive_cpio}.tar.gz
110 Source30: http://www.cpan.org/authors/id/T/TB/TBONE/User-%{V_user}.tar.gz
111 Source31: http://www.cpan.org/modules/by-module/File/File-Temp-%{V_file_temp}.tar.gz
112 Source32: http://www.cpan.org/modules/by-module/File/File-Remove-%{V_file_remove}.tar.gz
113 Source33: http://www.cpan.org/modules/by-module/File/File-Rename-%{V_file_rename}.tar.gz
114 Source34: http://www.cpan.org/modules/by-module/File/File-Rsync-%{V_file_rsync}.tar.gz
115 Source35: http://www.cpan.org/modules/by-module/Storable/Storable-AMF-%{V_storable_amf}.tar.gz
116 Patch0: perl-sys.patch
118 # build information
119 Prefix: %{l_prefix}
120 BuildRoot: %{l_buildroot}
121 BuildPreReq: OpenPKG, openpkg >= 20040130, perl >= %{V_perl}, perl-openpkg >= %{V_perl}-20040126
122 PreReq: OpenPKG, openpkg >= 20040130, perl >= %{V_perl}
123 BuildPreReq: perl-time, perl-term
124 PreReq: perl-time, perl-term
125 %if "%{with_pam}" == "yes"
126 BuildPreReq: PAM
127 PreReq: PAM
128 %endif
129 AutoReq: no
130 AutoReqProv: no
132 %description
133 Perl modules for use with the system:
134 - Unix::Syslog (%{V_unix_syslog})
135 - Archive::Tar (%{V_archive_tar})
136 - Expect (%{V_expect})
137 - Storable (%{V_storable})
138 - IPC::ShareLite (%{V_ipc_sharelite})
139 - IPC::Shareable (%{V_ipc_shareable})
140 - IPC::SharedCache (%{V_ipc_sharedcache})
141 - IPC::Run (%{V_ipc_run})
142 - IPC::Run3 (%{V_ipc_run3})
143 - IPC::Signal (%{V_ipc_signal})
144 - IPC::Filter (%{V_ipc_filter})
145 - File::Tail (%{V_file_tail})
146 - FreezeThaw (%{V_freezethaw})
147 - Authen::SASL (%{V_authen_sasl})
148 - Authen::PAM (%{V_authen_pam}) [with_pam=yes]
149 - Archive::Zip (%{V_archive_zip})
150 - WeakRef (%{V_weakref})
151 - FileHandle::Deluxe (%{V_filehandle_deluxe})
152 - FileHandle::Unget (%{V_filehandle_unget})
153 - Spiffy (%{V_spiffy})
154 - IO (%{V_io})
155 - IO::All (%{V_io_all})
156 - IO::Multiplex (%{V_io_multiplex})
157 - IO::Interface (%{V_io_interface})
158 - IO::Util (%{V_io_util})
159 - IO::Mux (%{V_io_mux})
160 - Boulder (%{V_boulder})
161 - Error (%{V_error})
162 - File::FnMatch (%{V_file_fnmatch})
163 - Archive::Cpio (%{V_archive_cpio})
164 - User (%{V_user})
165 - File::Temp (%{V_file_temp})
166 - File::Remove (%{V_file_remove})
167 - File::Rename (%{V_file_rename})
168 - File::Rsync (%{V_file_rsync})
169 - Storable::AMF (%{V_storable_amf})
171 %track
172 prog perl-sys:Archive-Tar = {
173 version = %{V_archive_tar}
174 url = http://www.cpan.org/modules/by-module/Archive/
175 regex = Archive-Tar-(__VER__)\.tar\.gz
176 }
177 prog perl-sys:Archive-Zip = {
178 version = %{V_archive_zip}
179 url = http://www.cpan.org/modules/by-module/Archive/
180 regex = Archive-Zip-(__VER__)\.tar\.gz
181 }
182 prog perl-sys:Authen-SASL = {
183 version = %{V_authen_sasl}
184 url = http://www.cpan.org/modules/by-module/Authen/
185 regex = Authen-SASL-(__VER__)\.tar\.gz
186 }
187 prog perl-sys:Expect = {
188 version = %{V_expect}
189 url = http://www.cpan.org/modules/by-module/Expect/
190 regex = Expect-(__VER__)\.tar\.gz
191 }
192 prog perl-sys:File-Tail = {
193 version = %{V_file_tail}
194 url = http://www.cpan.org/modules/by-module/File/
195 regex = File-Tail-(__VER__)\.tar\.gz
196 }
197 prog perl-sys:FileHandle-Deluxe = {
198 version = %{V_filehandle_deluxe}
199 url = http://www.cpan.org/modules/by-module/FileHandle/
200 regex = FileHandle-Deluxe-(__VER__)\.tar\.gz
201 }
202 prog perl-sys:FileHandle-Unget = {
203 version = %{V_filehandle_unget}
204 url = http://www.cpan.org/modules/by-module/FileHandle/
205 regex = FileHandle-Unget-(__VER__)\.tar\.gz
206 }
207 prog perl-sys:FreezeThaw = {
208 version = %{V_freezethaw}
209 url = http://www.cpan.org/modules/by-module/FreezeThaw/
210 regex = FreezeThaw-(__VER__)\.tar\.gz
211 }
212 prog perl-sys:IPC-Shareable = {
213 version = %{V_ipc_shareable}
214 url = http://www.cpan.org/modules/by-module/IPC/
215 regex = IPC-Shareable-(__VER__)\.tar\.gz
216 }
217 prog perl-sys:IPC-ShareLite = {
218 version = %{V_ipc_sharelite}
219 url = http://www.cpan.org/modules/by-module/IPC/
220 regex = IPC-ShareLite-(__VER__)\.tar\.gz
221 }
222 prog perl-sys:IPC-SharedCache = {
223 version = %{V_ipc_sharedcache}
224 url = http://www.cpan.org/modules/by-module/IPC/
225 regex = IPC-SharedCache-(__VER__)\.tar\.gz
226 }
227 prog perl-sys:IPC-Run = {
228 version = %{V_ipc_run}
229 url = http://www.cpan.org/modules/by-module/IPC/
230 regex = IPC-Run-(__VER__)\.tar\.gz
231 }
232 prog perl-sys:IPC-Run3 = {
233 version = %{V_ipc_run3}
234 url = http://www.cpan.org/modules/by-module/IPC/
235 regex = IPC-Run3-(__VER__)\.tar\.gz
236 }
237 prog perl-sys:IPC-Signal = {
238 version = %{V_ipc_signal}
239 url = http://www.cpan.org/modules/by-module/IPC/
240 regex = IPC-Signal-(__VER__)\.tar\.gz
241 }
242 prog perl-sys:IPC-Filter = {
243 version = %{V_ipc_filter}
244 url = http://www.cpan.org/modules/by-module/IPC/
245 regex = IPC-Filter-(__VER__)\.tar\.gz
246 }
247 prog perl-sys:Storable = {
248 version = %{V_storable}
249 url = http://www.cpan.org/modules/by-module/Storable/
250 regex = Storable-(__VER__)\.tar\.gz
251 }
252 prog perl-sys:Unix-Syslog = {
253 version = %{V_unix_syslog}
254 url = http://www.cpan.org/modules/by-module/Unix/
255 regex = Unix-Syslog-(__VER__)\.tar\.gz
256 }
257 prog perl-sys:WeakRef = {
258 version = %{V_weakref}
259 url = http://www.cpan.org/authors/id/L/LU/LUKKA/
260 regex = WeakRef-(__VER__)\.tar\.gz
261 }
262 prog perl-sys:Spiffy = {
263 version = %{V_spiffy}
264 url = http://www.cpan.org/authors/id/I/IN/INGY/
265 regex = Spiffy-(__VER__)\.tar\.gz
266 }
267 prog perl-sys:IO = {
268 version = %{V_io}
269 url = http://www.cpan.org/modules/by-module/IO/
270 regex = \bIO-(__VER__)\.tar\.gz
271 }
272 prog perl-sys:IO-All = {
273 version = %{V_io_all}
274 url = http://www.cpan.org/modules/by-module/IO/
275 regex = IO-All-(__VER__)\.tar\.gz
276 }
277 prog perl-sys:IO-Multiplex = {
278 version = %{V_io_multiplex}
279 url = http://www.cpan.org/modules/by-module/IO/
280 regex = IO-Multiplex-(__VER__)\.tar\.gz
281 }
282 prog perl-sys:IO-Interface = {
283 version = %{V_io_interface}
284 url = http://www.cpan.org/modules/by-module/IO/
285 regex = IO-Interface-(__VER__)\.tar\.gz
286 }
287 prog perl-sys:IO-Util = {
288 version = %{V_io_util}
289 url = http://www.cpan.org/modules/by-module/IO/
290 regex = IO-Util-(__VER__)\.tar\.gz
291 }
292 prog perl-sys:IO-Mux = {
293 version = %{V_io_mux}
294 url = http://www.cpan.org/modules/by-module/IO/
295 regex = IO-Mux-(__VER__)\.tar\.gz
296 }
297 prog perl-sys:Boulder = {
298 version = %{V_boulder}
299 url = http://www.cpan.org/modules/by-module/Boulder/
300 regex = Boulder-(__VER__)\.tar\.gz
301 }
302 prog perl-sys:Error = {
303 version = %{V_error}
304 url = http://www.cpan.org/modules/by-module/Error/
305 regex = Error-(__VER__)\.tar\.gz
306 }
307 prog perl-sys:File-FnMatch = {
308 version = %{V_file_fnmatch}
309 url = http://www.cpan.org/modules/by-module/File/
310 regex = File-FnMatch-(__VER__)\.tar\.gz
311 }
312 prog perl-sys:Authen-PAM = {
313 version = %{V_authen_pam}
314 url = http://www.cpan.org/modules/by-module/Authen/
315 regex = Authen-PAM-(__VER__)\.tar\.gz
316 }
317 prog perl-sys:Archive-Cpio = {
318 version = %{V_archive_cpio}
319 url = http://www.cpan.org/modules/by-module/Archive/
320 regex = Archive-Cpio-(__VER__)\.tar\.gz
321 }
322 prog perl-sys:User = {
323 version = %{V_user}
324 url = http://www.cpan.org/authors/id/T/TB/TBONE/
325 regex = User-(__VER__)\.tar\.gz
326 }
327 prog perl-sys:File-Temp = {
328 version = %{V_file_temp}
329 url = http://www.cpan.org/modules/by-module/File/
330 regex = File-Temp-(__VER__)\.tar\.gz
331 }
332 prog perl-sys:File-Remove = {
333 version = %{V_file_remove}
334 url = http://www.cpan.org/modules/by-module/File/
335 regex = File-Remove-(__VER__)\.tar\.gz
336 }
337 prog perl-sys:File-Rename = {
338 version = %{V_file_rename}
339 url = http://www.cpan.org/modules/by-module/File/
340 regex = File-Rename-(__VER__)\.tar\.gz
341 }
342 prog perl-sys:File-Rsync = {
343 version = %{V_file_rsync}
344 url = http://www.cpan.org/modules/by-module/File/
345 regex = File-Rsync-(__VER__)\.tar\.gz
346 }
347 prog perl-sys:Storable-AMF = {
348 version = %{V_storable_amf}
349 url = http://www.cpan.org/modules/by-module/Storable/
350 regex = Storable-AMF-(__VER__)\.tar\.gz
351 }
353 %prep
354 %setup -q -c
355 %setup -q -T -D -a 1
356 %setup -q -T -D -a 2
357 %setup -q -T -D -a 3
358 %setup -q -T -D -a 4
359 %setup -q -T -D -a 5
360 %setup -q -T -D -a 6
361 %setup -q -T -D -a 7
362 %setup -q -T -D -a 8
363 %setup -q -T -D -a 9
364 %setup -q -T -D -a 10
365 %setup -q -T -D -a 11
366 %setup -q -T -D -a 12
367 %setup -q -T -D -a 13
368 %setup -q -T -D -a 14
369 %setup -q -T -D -a 15
370 %setup -q -T -D -a 16
371 %setup -q -T -D -a 17
372 %setup -q -T -D -a 18
373 %setup -q -T -D -a 19
374 %setup -q -T -D -a 20
375 %setup -q -T -D -a 21
376 %setup -q -T -D -a 22
377 %setup -q -T -D -a 23
378 %setup -q -T -D -a 24
379 %setup -q -T -D -a 25
380 %setup -q -T -D -a 26
381 %setup -q -T -D -a 27
382 %setup -q -T -D -a 28
383 %setup -q -T -D -a 29
384 %setup -q -T -D -a 30
385 %setup -q -T -D -a 31
386 %setup -q -T -D -a 32
387 %setup -q -T -D -a 33
388 %setup -q -T -D -a 34
389 %setup -q -T -D -a 35
390 %patch -p0
392 %build
393 %{l_shtool} subst \
394 -e 's;/usr/local/bin/rsync;%{l_prefix}/bin/rsync;' \
395 -e 's;<STDIN>;"";' \
396 File-Rsync-*/makepm.PL
398 %install
399 rm -rf $RPM_BUILD_ROOT
400 %{l_prefix}/bin/perl-openpkg prepare
401 %{l_prefix}/bin/perl-openpkg -d %{SOURCE0} configure build install
402 %{l_prefix}/bin/perl-openpkg -d %{SOURCE1} configure build install
403 %{l_prefix}/bin/perl-openpkg -d %{SOURCE2} configure build install
404 %{l_prefix}/bin/perl-openpkg -d %{SOURCE3} configure build install
405 %{l_prefix}/bin/perl-openpkg -d %{SOURCE4} configure build install
406 %{l_prefix}/bin/perl-openpkg -d %{SOURCE5} configure build install
407 %{l_prefix}/bin/perl-openpkg -d %{SOURCE6} configure build install
408 %{l_prefix}/bin/perl-openpkg -d %{SOURCE7} configure build install
409 %{l_prefix}/bin/perl-openpkg -d %{SOURCE8} configure build install
410 %{l_prefix}/bin/perl-openpkg -d %{SOURCE9} configure build install
411 %{l_prefix}/bin/perl-openpkg -d %{SOURCE10} configure build install
412 %{l_prefix}/bin/perl-openpkg -d %{SOURCE11} configure build install
413 %{l_prefix}/bin/perl-openpkg -d %{SOURCE12} configure build install
414 %{l_prefix}/bin/perl-openpkg -d %{SOURCE13} configure build install
415 %{l_prefix}/bin/perl-openpkg -d %{SOURCE14} configure build install
416 %{l_prefix}/bin/perl-openpkg -d %{SOURCE15} configure build install
417 %{l_prefix}/bin/perl-openpkg -d %{SOURCE16} configure build install
418 %{l_prefix}/bin/perl-openpkg -d %{SOURCE17} configure build install
419 %{l_prefix}/bin/perl-openpkg -d %{SOURCE18} configure build install
420 %{l_prefix}/bin/perl-openpkg -d %{SOURCE19} configure build install
421 %{l_prefix}/bin/perl-openpkg -d %{SOURCE20} configure build install
422 %{l_prefix}/bin/perl-openpkg -d %{SOURCE21} configure build install
423 %{l_prefix}/bin/perl-openpkg -d %{SOURCE22} configure build install
424 %{l_prefix}/bin/perl-openpkg -d %{SOURCE23} configure build install
425 %{l_prefix}/bin/perl-openpkg -d %{SOURCE24} configure build install
426 %{l_prefix}/bin/perl-openpkg -d %{SOURCE25} configure build install
427 %{l_prefix}/bin/perl-openpkg -d %{SOURCE26} configure build install
428 %{l_prefix}/bin/perl-openpkg -d %{SOURCE27} configure build install
429 %if "%{with_pam}" == "yes"
430 export CC="%{l_cc}"
431 export CFLAGS="%{l_cflags} -I`%{l_rc} --query pam_incdir`"
432 export CPPFLAGS="%{l_cppflags} -I`%{l_rc} --query pam_incdir`"
433 export LDFLAGS="%{l_ldflags} -L`%{l_rc} --query pam_libdir`"
434 %{l_prefix}/bin/perl-openpkg -d %{SOURCE28} configure build install
435 %endif
436 %{l_prefix}/bin/perl-openpkg -d %{SOURCE29} configure build install
437 %{l_prefix}/bin/perl-openpkg -d %{SOURCE30} configure build install
438 %{l_prefix}/bin/perl-openpkg -d %{SOURCE31} configure build install
439 %{l_prefix}/bin/perl-openpkg -d %{SOURCE32} configure build install
440 %{l_prefix}/bin/perl-openpkg -d %{SOURCE33} configure build install
441 %{l_prefix}/bin/perl-openpkg -d %{SOURCE34} configure build install
442 %{l_prefix}/bin/perl-openpkg -d %{SOURCE35} configure build install
443 %{l_prefix}/bin/perl-openpkg -F perl-openpkg-files fixate cleanup
444 %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} `cat perl-openpkg-files`
446 %files -f files
448 %clean
449 rm -rf $RPM_BUILD_ROOT