日本OpenSolaris Users Group有志による、レポジトリサーバ作成のためのspecファイル群です。
Revision | b5830b677a82cf871e2d63d0f252cdbb57342cba (tree) |
---|---|
Time | 2019-05-23 16:14:35 |
Author | Fumihisa TONAKA <fumi.ftnk@gmai...> |
Commiter | Fumihisa TONAKA |
merge spec_SFEperl-spiffy to default
@@ -1,17 +1,24 @@ | ||
1 | 1 | %include Solaris.inc |
2 | 2 | |
3 | 3 | %define build584 0 |
4 | +%define build510 %( if [ -x /usr/perl5/5.10/bin/perl ]; then echo '1'; else echo '0'; fi) | |
4 | 5 | %define build512 %( if [ -x /usr/perl5/5.12/bin/perl ]; then echo '1'; else echo '0'; fi) |
5 | 6 | %define build516 %( if [ -x /usr/perl5/5.16/bin/perl ]; then echo '1'; else echo '0'; fi) |
6 | -%define build520 %( if [ -x /usr/perl5/5.20/bin/perl ]; then echo '1'; else echo '0'; fi) | |
7 | +%define build522 %( if [ -x /usr/perl5/5.22/bin/perl ]; then echo '1'; else echo '0'; fi) | |
8 | +%define build526 %( if [ -x /usr/perl5/5.26/bin/perl ]; then echo '1'; else echo '0'; fi) | |
9 | +%define build526jposug %( if [ -x /opt/jposug/perl5/5.26/bin/perl ]; then echo '1'; else echo '0'; fi) | |
10 | +%define enable_test %( if [ "x${PERL_DISABLE_TEST}" = 'xtrue' ]; then echo '0'; else echo '1'; fi ) | |
11 | + | |
7 | 12 | %define include_executable 0 |
13 | +%define install_to_site_dir 0 | |
8 | 14 | |
9 | 15 | %define cpan_name Spiffy |
10 | 16 | %define sfe_cpan_name spiffy |
17 | +%define ips_cpan_name spiffy | |
11 | 18 | |
12 | 19 | Summary: Spiffy Perl Interface Framework For You |
13 | 20 | Name: SFEperl-%{sfe_cpan_name} |
14 | -IPS_package_name: library/perl-5/%{sfe_cpan_name} | |
21 | +IPS_package_name: library/perl-5/%{ips_cpan_name} | |
15 | 22 | Version: 0.46 |
16 | 23 | IPS_component_version: 0.46 |
17 | 24 | License: perl_5 |
@@ -24,23 +31,44 @@ | ||
24 | 31 | |
25 | 32 | %if %{build584} |
26 | 33 | %package 584 |
27 | -IPS_package_name: library/perl-5/%{sfe_cpan_name}-584 | |
34 | +IPS_package_name: library/perl-5/%{ips_cpan_name}-584 | |
28 | 35 | Summary: Spiffy Perl Interface Framework For You |
29 | 36 | BuildRequires: runtime/perl-584 = * |
30 | 37 | BuildRequires: library/perl-5/extutils-makemaker-584 |
38 | +%if %{enable_test} | |
39 | +%endif | |
31 | 40 | Requires: runtime/perl-584 = * |
41 | +# Requires: library/perl-5/%{ips_cpan_name} | |
32 | 42 | |
33 | 43 | %description 584 |
34 | 44 | Spiffy Perl Interface Framework For You |
35 | 45 | %endif |
36 | 46 | |
47 | +%if %{build510} | |
48 | +%package 510 | |
49 | +IPS_package_name: library/perl-5/%{ips_cpan_name}-510 | |
50 | +Summary: Spiffy Perl Interface Framework For You | |
51 | +BuildRequires: runtime/perl-510 = * | |
52 | +BuildRequires: library/perl-5/extutils-makemaker-510 | |
53 | +%if %{enable_test} | |
54 | +%endif | |
55 | +Requires: runtime/perl-510 = * | |
56 | +# Requires: library/perl-5/%{ips_cpan_name} | |
57 | + | |
58 | +%description 510 | |
59 | +Spiffy Perl Interface Framework For You | |
60 | +%endif | |
61 | + | |
37 | 62 | %if %{build512} |
38 | 63 | %package 512 |
39 | -IPS_package_name: library/perl-5/%{sfe_cpan_name}-512 | |
64 | +IPS_package_name: library/perl-5/%{ips_cpan_name}-512 | |
40 | 65 | Summary: Spiffy Perl Interface Framework For You |
41 | 66 | BuildRequires: runtime/perl-512 = * |
42 | 67 | BuildRequires: library/perl-5/extutils-makemaker-512 |
68 | +%if %{enable_test} | |
69 | +%endif | |
43 | 70 | Requires: runtime/perl-512 = * |
71 | +# Requires: library/perl-5/%{ips_cpan_name} | |
44 | 72 | |
45 | 73 | %description 512 |
46 | 74 | Spiffy Perl Interface Framework For You |
@@ -48,83 +76,209 @@ | ||
48 | 76 | |
49 | 77 | %if %{build516} |
50 | 78 | %package 516 |
51 | -IPS_package_name: library/perl-5/%{sfe_cpan_name}-516 | |
79 | +IPS_package_name: library/perl-5/%{ips_cpan_name}-516 | |
52 | 80 | Summary: Spiffy Perl Interface Framework For You |
53 | 81 | BuildRequires: runtime/perl-516 = * |
54 | 82 | BuildRequires: library/perl-5/extutils-makemaker-516 |
83 | +# Requires: library/perl-5/%{ips_cpan_name} | |
84 | +%if %{enable_test} | |
85 | +%endif | |
55 | 86 | Requires: runtime/perl-516 = * |
87 | +# Requires: library/perl-5/%{ips_cpan_name} | |
56 | 88 | |
57 | 89 | %description 516 |
58 | 90 | Spiffy Perl Interface Framework For You |
59 | 91 | %endif |
60 | 92 | |
61 | -%if %{build520} | |
62 | -%package 520 | |
63 | -IPS_package_name: library/perl-5/%{sfe_cpan_name}-520 | |
93 | +%if %{build522} | |
94 | +%package 522 | |
95 | +IPS_package_name: library/perl-5/%{ips_cpan_name}-522 | |
64 | 96 | Summary: Spiffy Perl Interface Framework For You |
65 | -BuildRequires: runtime/perl-520 = * | |
66 | -BuildRequires: library/perl-5/extutils-makemaker-520 | |
67 | -Requires: runtime/perl-520 = * | |
97 | +BuildRequires: runtime/perl-522 = * | |
98 | +BuildRequires: library/perl-5/extutils-makemaker-522 | |
99 | +%if %{enable_test} | |
100 | +%endif | |
101 | +Requires: runtime/perl-522 = * | |
102 | +# Requires: library/perl-5/%{ips_cpan_name} | |
68 | 103 | |
69 | -%description 520 | |
104 | +%description 522 | |
70 | 105 | Spiffy Perl Interface Framework For You |
71 | 106 | %endif |
72 | 107 | |
108 | +%if %{build526} | |
109 | +%package 526 | |
110 | +IPS_package_name: library/perl-5/%{ips_cpan_name}-526 | |
111 | +Summary: Spiffy Perl Interface Framework For You | |
112 | +BuildRequires: runtime/perl-526 = * | |
113 | +BuildRequires: library/perl-5/extutils-makemaker-526 | |
114 | +%if %{enable_test} | |
115 | +%endif | |
116 | +Requires: runtime/perl-526 = * | |
117 | +# Requires: library/perl-5/%{ips_cpan_name} | |
118 | + | |
119 | +%description 526 | |
120 | +Spiffy Perl Interface Framework For You | |
121 | +%endif | |
122 | + | |
123 | +%if %{build526jposug} | |
124 | +%package 526jposug | |
125 | +IPS_package_name: library/perl-5/%{ips_cpan_name}-526jposug | |
126 | +Summary: Spiffy Perl Interface Framework For You | |
127 | +BuildRequires: runtime/perl-526jposug = * | |
128 | +BuildRequires: library/perl-5/extutils-makemaker-526jposug | |
129 | +%if %{enable_test} | |
130 | +%endif | |
131 | +Requires: runtime/perl-526jposug = * | |
132 | +# Requires: library/perl-5/%{ips_cpan_name} | |
133 | + | |
134 | +%description 526jposug | |
135 | +Spiffy Perl Interface Framework For You | |
136 | +%endif | |
73 | 137 | |
74 | 138 | %prep |
75 | 139 | %setup -q -n %{cpan_name}-%{version} |
76 | -rm -rf %{buildroot} | |
140 | +[ -d %{buildroot} ] && rm -rf %{buildroot} | |
77 | 141 | |
78 | 142 | %build |
79 | 143 | build_with_makefile.pl_for() { |
80 | - perl_ver=$1 | |
144 | + [ -f xdefine ] && rm -f xdefine | |
145 | + [ -d blib ] && rm -rf blib | |
81 | 146 | test=$2 |
82 | - bindir="/usr/perl5/${perl_ver}/bin" | |
83 | - vendor_dir="/usr/perl5/vendor_perl/${perl_ver}" | |
147 | + if [ "x${1}" = 'x5.26jposug' ] | |
148 | + then | |
149 | + perl_ver=$(echo $1 | sed -e 's/jposug//') | |
150 | + prefix=/opt/jposug | |
151 | + else | |
152 | + perl_ver=$1 | |
153 | + prefix=/usr | |
154 | + fi | |
155 | + | |
156 | + perl_dir_prefix="${prefix}/perl5/${perl_ver}" | |
157 | + bindir="${perl_dir_prefix}/bin" | |
158 | + vendor_dir="${prefix}/perl5/vendor_perl/${perl_ver}" | |
159 | + site_dir="${prefix}/perl5/site_perl/${perl_ver}" | |
84 | 160 | |
85 | 161 | export PERL5LIB=${vendor_dir} |
86 | - ${bindir}/perl Makefile.PL PREFIX=%{_prefix} \ | |
162 | +%if %{install_to_site_dir} | |
163 | + perl_libdir="${site_dir}" | |
164 | +%else | |
165 | + perl_libdir="${vendor_dir}" | |
166 | +%endif | |
167 | + | |
168 | + ${bindir}/perl Makefile.PL PREFIX=${prefix} \ | |
87 | 169 | DESTDIR=$RPM_BUILD_ROOT \ |
88 | - LIB=${vendor_dir} | |
89 | - make | |
90 | - [ ${test} == 'without_test' ] || make test | |
170 | + LIB=${perl_libdir} | |
171 | + | |
172 | + echo ${perl_ver} | egrep '5\.(84|12)' > /dev/null && bin64=0 || bin64=1 | |
173 | + if [ ${bin64} -eq 0 ] | |
174 | + then | |
175 | + export CC='cc -m32' | |
176 | + export LD='cc -m32' | |
177 | + else | |
178 | + export CC='cc -m64' | |
179 | + export LD='cc -m64' | |
180 | + fi | |
181 | + make CC="${CC}" LD="${LD}" | |
182 | + [ "x${PERL_DISABLE_TEST}" = 'xtrue' ] || [ "x${test}" = 'xwithout_test' ] || make test CC="${CC}" "LD=${LD}" | |
91 | 183 | make pure_install |
92 | 184 | } |
93 | 185 | |
94 | 186 | build_with_build.pl_for() { |
95 | - perl_ver=$1 | |
96 | 187 | test=$2 |
97 | - bindir="/usr/perl5/${perl_ver}/bin" | |
98 | - vendor_dir="/usr/perl5/vendor_perl/${perl_ver}" | |
188 | + if [ "x${1}" = 'x5.26jposug' ] | |
189 | + then | |
190 | + perl_ver=$(echo $1 | sed -e 's/jposug//') | |
191 | + prefix=/opt/jposug | |
192 | + else | |
193 | + perl_ver=$1 | |
194 | + prefix=/usr | |
195 | + fi | |
99 | 196 | |
197 | + perl_dir_prefix="${prefix}/perl5/${perl_ver}" | |
198 | + bindir="${perl_dir_prefix}/bin" | |
199 | + vendor_dir="${prefix}/perl5/vendor_perl/${perl_ver}" | |
200 | + site_dir="${prefix}/perl5/site_perl/${perl_ver}" | |
201 | + | |
202 | +%if %{install_to_site_dir} | |
203 | + installdir='site' | |
204 | +%else | |
205 | + installdir='vendor' | |
206 | +%endif | |
100 | 207 | export PERL5LIB=${vendor_dir} |
101 | 208 | ${bindir}/perl Build.PL \ |
102 | - --installdirs vendor \ | |
209 | + --installdirs ${installdir} \ | |
103 | 210 | --destdir $RPM_BUILD_ROOT |
104 | 211 | ${bindir}/perl ./Build |
105 | - [ ${test} == 'without_test' ] || ${bindir}/perl ./Build test | |
212 | + [ "x${PERL_DISABLE_TEST}" = 'xtrue' ] || [ "x${test}" = 'xwithout_test' ] || ${bindir}/perl ./Build test | |
106 | 213 | ${bindir}/perl ./Build install --destdir $RPM_BUILD_ROOT |
214 | + ${bindir}/perl ./Build clean | |
107 | 215 | } |
108 | 216 | |
109 | 217 | modify_bin_dir() { |
110 | - perl_ver=$1 | |
111 | - if [ -d $RPM_BUILD_ROOT/usr/bin ] | |
112 | - then | |
113 | - [ -d $RPM_BUILD_ROOT/usr/perl5/${perl_ver} ] || mkdir -p $RPM_BUILD_ROOT/usr/perl5/${perl_ver} | |
114 | - mv $RPM_BUILD_ROOT/usr/bin $RPM_BUILD_ROOT/usr/perl5/${perl_ver}/bin | |
115 | - fi | |
218 | + if [ "x${1}" = 'x5.26jposug' ] | |
219 | + then | |
220 | + perl_ver=$(echo $1 | sed -e 's/jposug//') | |
221 | + prefix=/opt/jposug | |
222 | + else | |
223 | + perl_ver=$1 | |
224 | + prefix=/usr | |
225 | + fi | |
226 | + | |
227 | + if [ -d $RPM_BUILD_ROOT/${prefix}/bin ] | |
228 | + then | |
229 | + [ -d ${RPM_BUILD_ROOT}${prefix}/perl5/${perl_ver} ] || mkdir -p ${RPM_BUILD_ROOT}${prefix}/perl5/${perl_ver} | |
230 | + mv $RPM_BUILD_ROOT${prefix}/bin $RPM_BUILD_ROOT/${prefix}/perl5/${perl_ver}/bin | |
231 | + fi | |
232 | + | |
233 | + if [ -d ${RPM_BUILD_ROOT}${prefix}/perl5/${perl_ver}/bin ] | |
234 | + then | |
235 | + for i in ${RPM_BUILD_ROOT}${prefix}/perl5/${perl_ver}/bin/* | |
236 | + do | |
237 | + sed -i.bak -e "s!/usr/bin/env perl!${prefix}/perl5/${perl_ver}/bin/perl!" ${i} | |
238 | + [ -f ${i}.bak] || rm -f ${i}.bak | |
239 | + done | |
240 | + fi | |
241 | +} | |
242 | + | |
243 | +modify_man_dir() { | |
244 | + if [ "x${1}" = 'x5.26jposug' ] | |
245 | + then | |
246 | + perl_ver=$(echo $1 | sed -e 's/jposug//') | |
247 | + prefix=/opt/jposug | |
248 | + else | |
249 | + perl_ver=$1 | |
250 | + prefix=/usr | |
251 | + fi | |
252 | + | |
253 | + if [ -d $RPM_BUILD_ROOT${prefix}/perl5/${perl_ver}/man ] | |
254 | + then | |
255 | + if [ -d $RPM_BUILD_ROOT%{_datadir}/man ] | |
256 | + then | |
257 | + rm -rf $RPM_BUILD_ROOT${prefix}/perl5/${perl_ver}/man | |
258 | + else | |
259 | + mkdir -p $RPM_BUILD_ROOT%{_datadir} | |
260 | + mv $RPM_BUILD_ROOT${prefix}/perl5/${perl_ver}/man $RPM_BUILD_ROOT%{_datadir}/ | |
261 | + rm -rf $RPM_BUILD_ROOT${prefix}/perl5/${perl_ver}/man | |
262 | + fi | |
263 | + if [ %{include_executable} -eq 0 ] | |
264 | + then | |
265 | + rmdir $RPM_BUILD_ROOT${prefix}/perl5/${perl_ver} | |
266 | + fi | |
267 | + | |
268 | + fi | |
116 | 269 | } |
117 | 270 | |
118 | 271 | build_for() { |
119 | - if [ -f Makefile.PL ]; | |
272 | + if [ -f Build.PL ]; | |
273 | + then | |
274 | + build_with_build.pl_for $* | |
275 | + elif [ -f Makefile.PL ]; | |
120 | 276 | then |
121 | 277 | build_with_makefile.pl_for $* |
122 | - elif [ -f Build.PL ]; | |
123 | - then | |
124 | - build_with_build.pl_for $* | |
125 | 278 | fi |
126 | 279 | |
127 | - modify_bin_dir $* | |
280 | + modify_bin_dir $* | |
281 | + modify_man_dir $* | |
128 | 282 | } |
129 | 283 | |
130 | 284 | # To build without test, pass 'without_test' to build_for commaond. |
@@ -133,6 +287,10 @@ | ||
133 | 287 | build_for 5.8.4 |
134 | 288 | %endif |
135 | 289 | |
290 | +%if %{build510} | |
291 | +build_for 5.10 | |
292 | +%endif | |
293 | + | |
136 | 294 | %if %{build512} |
137 | 295 | build_for 5.12 |
138 | 296 | %endif |
@@ -141,16 +299,36 @@ | ||
141 | 299 | build_for 5.16 |
142 | 300 | %endif |
143 | 301 | |
144 | -%if %{build520} | |
145 | -build_for 5.20 | |
302 | +%if %{build522} | |
303 | +build_for 5.22 | |
304 | +%endif | |
305 | + | |
306 | +%if %{build526} | |
307 | +build_for 5.26 | |
308 | +%endif | |
309 | + | |
310 | +%if %{build526jposug} | |
311 | +build_for 5.26jposug | |
146 | 312 | %endif |
147 | 313 | |
148 | 314 | %install |
149 | -mkdir -p $RPM_BUILD_ROOT%{_datadir} | |
150 | 315 | if [ -d $RPM_BUILD_ROOT%{_prefix}/man ] |
151 | 316 | then |
317 | + mkdir -p $RPM_BUILD_ROOT%{_datadir} | |
152 | 318 | mv $RPM_BUILD_ROOT%{_prefix}/man $RPM_BUILD_ROOT%{_datadir} |
153 | 319 | fi |
320 | + | |
321 | +if [ -d $RPM_BUILD_ROOT/opt/jposug/man ] | |
322 | +then | |
323 | + if [ -d $RPM_BUILD_ROOT%{_datadir}/man ] | |
324 | + then | |
325 | + rm -rf $RPM_BUILD_ROOT/opt/jposug/man | |
326 | + else | |
327 | + [ -d $RPM_BUILD_ROOT%{_datadir} ] || mkdir -p $RPM_BUILD_ROOT%{_datadir} | |
328 | + mv $RPM_BUILD_ROOT/opt/jposug/man $RPM_BUILD_ROOT%{_datadir} | |
329 | + fi | |
330 | +fi | |
331 | + | |
154 | 332 | if [ -d $RPM_BUILD_ROOT%{_datadir}/man/man3 ] |
155 | 333 | then |
156 | 334 | mv $RPM_BUILD_ROOT%{_datadir}/man/man3 $RPM_BUILD_ROOT%{_datadir}/man/man3perl |
@@ -167,17 +345,39 @@ | ||
167 | 345 | %files 584 |
168 | 346 | %defattr(0755,root,bin,-) |
169 | 347 | %dir %attr (0755, root, sys) /usr |
348 | +%if %{install_to_site_dir} | |
349 | +/usr/perl5/site_perl/5.8.4 | |
350 | +%else | |
170 | 351 | /usr/perl5/vendor_perl/5.8.4 |
352 | +%endif | |
171 | 353 | %if %{include_executable} |
172 | 354 | /usr/perl5/5.8.4 |
173 | 355 | %endif |
174 | 356 | %endif |
175 | 357 | |
358 | +%if %{build510} | |
359 | +%files 510 | |
360 | +%defattr(0755,root,bin,-) | |
361 | +%dir %attr (0755, root, sys) /usr | |
362 | +%if %{install_to_site_dir} | |
363 | +/usr/perl5/site_perl/5.10 | |
364 | +%else | |
365 | +/usr/perl5/vendor_perl/5.10 | |
366 | +%endif | |
367 | +%if %{include_executable} | |
368 | +/usr/perl5/5.1.0 | |
369 | +%endif | |
370 | +%endif | |
371 | + | |
176 | 372 | %if %{build512} |
177 | 373 | %files 512 |
178 | 374 | %defattr(0755,root,bin,-) |
179 | 375 | %dir %attr (0755, root, sys) /usr |
376 | +%if %{install_to_site_dir} | |
377 | +/usr/perl5/site_perl/5.12 | |
378 | +%else | |
180 | 379 | /usr/perl5/vendor_perl/5.12 |
380 | +%endif | |
181 | 381 | %if %{include_executable} |
182 | 382 | /usr/perl5/5.12 |
183 | 383 | %endif |
@@ -187,24 +387,61 @@ | ||
187 | 387 | %files 516 |
188 | 388 | %defattr(0755,root,bin,-) |
189 | 389 | %dir %attr (0755, root, sys) /usr |
390 | +%if %{install_to_site_dir} | |
391 | +/usr/perl5/site_perl/5.16 | |
392 | +%else | |
190 | 393 | /usr/perl5/vendor_perl/5.16 |
394 | +%endif | |
191 | 395 | %if %{include_executable} |
192 | 396 | /usr/perl5/5.16 |
193 | 397 | %endif |
194 | 398 | %endif |
195 | 399 | |
196 | -%if %{build520} | |
197 | -%files 520 | |
400 | +%if %{build522} | |
401 | +%files 522 | |
198 | 402 | %defattr(0755,root,bin,-) |
199 | 403 | %dir %attr (0755, root, sys) /usr |
200 | -/usr/perl5/vendor_perl/5.20 | |
404 | +%if %{install_to_site_dir} | |
405 | +/usr/perl5/site_perl/5.22 | |
406 | +%else | |
407 | +/usr/perl5/vendor_perl/5.22 | |
408 | +%endif | |
201 | 409 | %if %{include_executable} |
202 | -/usr/perl5/5.20 | |
410 | +/usr/perl5/5.22 | |
203 | 411 | %endif |
204 | 412 | %endif |
205 | 413 | |
414 | +%if %{build526} | |
415 | +%files 526 | |
416 | +%defattr(0755,root,bin,-) | |
417 | +%dir %attr (0755, root, sys) /usr | |
418 | +%if %{install_to_site_dir} | |
419 | +/usr/perl5/site_perl/5.26 | |
420 | +%else | |
421 | +/usr/perl5/vendor_perl/5.26 | |
422 | +%endif | |
423 | +%if %{include_executable} | |
424 | +/usr/perl5/5.26 | |
425 | +%endif | |
426 | +%endif | |
427 | + | |
428 | +%if %{build526jposug} | |
429 | +%files 526jposug | |
430 | +%defattr(0755,root,bin,-) | |
431 | +%dir %attr (0755, root, sys) /opt | |
432 | +%if %{install_to_site_dir} | |
433 | +/opt/jposug/perl5/site_perl/5.26 | |
434 | +%else | |
435 | +/opt/jposug/perl5/vendor_perl/5.26 | |
436 | +%endif | |
437 | +%if %{include_executable} | |
438 | +/opt/jposug/perl5/5.26 | |
439 | +%endif | |
440 | +%endif | |
206 | 441 | |
207 | 442 | %changelog |
443 | +* Thu May 23 2019 - Fumihisa TONAKA <fumi.ftnk@gmail.com> | |
444 | +- add packages for perl-{510,522,526,526jposug} | |
208 | 445 | * Tue Nov 10 2015 - Fumihisa TONAKA <fumi.ftnk@gmail.com> |
209 | 446 | - bump to 0.46 and build packages for perl-516 and perl-520 |
210 | 447 | * Thu Jun 14 2012 - Fumihisa TONAKA <fumi.ftnk@gmail.com> |