]> git.pld-linux.org Git - packages/rpm-build-tools.git/blame - pearize.sh
- include tests package, if available
[packages/rpm-build-tools.git] / pearize.sh
CommitLineData
70f6b6a6
ER
1#!/bin/sh
2# creates .spec using pear makerpm command.
3# requires tarball to exist in ../SOURCES.
4#
5set -e
6spec="$1"
7tarball=$(rpm -q --qf '../SOURCES/%{name}-%{version}.tgz' --specfile "$spec" | sed -e 's,php-pear-,,')
8template=$(rpm -q --qf '%{name}-%{version}.spec' --specfile "$spec")
9
05779902
ER
10if [ ! -f $tarball ]; then
11 ./builder -g $spec
12fi
70f6b6a6 13pear makerpm $tarball
5f89133e 14ls -l $spec $template
19133cbd
ER
15
16# adjust template
70f6b6a6
ER
17# remove false sectons
18sed -i -e '/^%if 0/,/%endif/d' $template
19# and reversed true sections
20sed -i -e '/^%if !1/,/%endif/d' $template
21# kill consequtive blank lines
22# http://info.ccone.at/INFO/Mail-Archives/procmail/Jul-2004/msg00132.html
23sed -i -e '/./,$ !d;/^$/N;/\n$/D' $template
19133cbd
ER
24
25#rpmbuild -bb $spec
26
27# prepare original spec
28sed -i -e '
29# simple changes
30s/^%setup -q -c/%pear_package_setup/
31/^BuildRequires:/s/rpm-php-pearprov >= 4.0.2-98/rpm-php-pearprov >= 4.4.2-11/g
c9f81079 32/^%doc %{_pearname}-%{version}/d
19133cbd
ER
33
34# make new %install section
35/^%install$/,/^%clean$/{
36/^%\(install\|clean\)/p
37
38/^rm -rf/{p
39a\
05779902 40install -d $RPM_BUILD_ROOT%{php_pear_dir}\
19133cbd
ER
41%pear_package_install\
42
43}
44
45d
46}
47
48' $spec
49
5f89133e 50instdoc=$(grep '^%doc install' $template || :)
19133cbd
ER
51sed -i -e "
52/%defattr(644,root,root,755)/a\
c9f81079 53$instdoc
19133cbd
ER
54" $spec
55
5f89133e 56doc=$(grep '^%doc docs/%{_pearname}/' $template || :)
c9f81079
ER
57if [ "$doc" ]; then
58sed -i -e '/^%doc/a\
59%doc docs/%{_pearname}/*
60' $spec
61fi
62
5f89133e
ER
63perl -pi -e '
64 if (/^%{php_pear_dir}/ && !$done) {
65 print "%{php_pear_dir}/.registry/*.reg\n";
66 $done = 1;
67 }
c9f81079
ER
68' $spec
69
05779902
ER
70if grep -q '^%files tests' $template; then
71 sed -i -e '
72/^%define date/{
73i\
74%files tests\
75%defattr(644,root,root,755)\
76%{php_pear_dir}/tests/*\
77
78}
79
80/^%prep/{
81i\
82%package tests\
83Summary: Tests for PEAR::%{_pearname}\
84Summary(pl): Testy dla PEAR::%{_pearname}\
85Group: Development\
86Requires: %{name} = %{epoch}:%{version}-%{release}\
87AutoReq: no\
88\
89%description tests\
90Tests for PEAR::%{_pearname}.\
91\
92%description tests -l pl\
93Testy dla PEAR::%{_pearname}.\
94
95}
96' $spec
97fi
98
70f6b6a6 99vim -o $spec $template
This page took 0.042956 seconds and 4 git commands to generate.