source: projects/vine-rpm-helper/tags/0.3/plugins/Perl @ 4945

Revision 4945, 1.6 KB checked in by yasumichi, 13 years ago (diff)

sed のスクリプトを正しくエスケープした。

Line 
1#
2# Plugin for Perl package
3#
4# vi:syntax=sh
5#
6
7#
8# output dependency
9#
10OutputDependency()
11{
12cat >> ${SPECFILE} << 'EOL'
13# Dependency
14Requires:       perl
15Requires:       perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
16
17BuildRequires:  perl
18
19EOL
20}
21
22#
23# Output build section
24#
25OutputBuild()
26{
27        echo '%build' >> ${SPECFILE}
28        echo 'perl Makefile.PL' >> ${SPECFILE}
29        echo '%{__make}' >> ${SPECFILE}
30        echo '' >> ${SPECFILE}
31}
32
33#
34# find packlist
35#
36FindPackList()
37{
38        BUILDROOT=`rpm -E '%_buildrootdir'`/`echo ${NAME} | sed -e "s/%{pkgname}/${PKGNAME}/"`-${PKGVERSION}-root
39        echo
40        echo "========== Starting test to install =========="
41        echo
42        (cd ${BUILDDIR}/${PKGDIR} && perl Makefile.PL && make && make install DESTDIR=${BUILDROOT})
43        echo
44        echo "========== Ending test to install =========="
45        echo
46        PERL_SITEARCH=`rpm -E '%perl_sitearch'`
47        PACKLIST=`find ${BUILDROOT} -name \.packlist | sed -e "s|${BUILDROOT}|\$\{RPM_BUILD_ROOT\}|" -e "s|${PERL_SITEARCH}|%\{perl_sitearch\}|"`
48        rm -rf ${BUILDROOT}
49}
50
51#
52# Output install section
53#
54OutputInstall()
55{
56cat >> ${SPECFILE} << 'EOL'
57%install
58%{__rm} -rf ${RPM_BUILD_ROOT}
59%{__make} install DESTDIR=${RPM_BUILD_ROOT}
60
61find $RPM_BUILD_ROOT%{_prefix} -type f -print |
62        sed "s@^$RPM_BUILD_ROOT@@g" |
63        grep -v ^%{_mandir} |
64        grep -v perllocal.pod |
65        grep -v "\.packlist" > %{name}.files
66
67if [ "$(cat %{name}.files)X" = "X" ] ; then
68        echo "ERROR: EMPTY FILE LIST"
69        exit -1
70fi
71
72# remove unnecessary files.
73%{__rm} ${RPM_BUILD_ROOT}%{perl_archlib}/perllocal.pod
74EOL
75
76        FindPackList
77
78        echo "%{__rm} ${PACKLIST}" >> ${SPECFILE}
79        echo >> ${SPECFILE}
80}
81
Note: See TracBrowser for help on using the repository browser.