commit 46ded8a3a9246211cc7db2a597486adb7a9384a1 Author: Petr Písař <ppisar@xxxxxxxxxx> Date: Mon Dec 5 16:38:08 2011 +0100 1.011 bump And sub-package Tk application. .gitignore | 1 + extract_icon | 28 ++++++++++++++++++++++ perl-PAR-Packer.spec | 64 ++++++++++++++++++++++++++++++++++++++++++++----- sources | 2 +- tkpp.desktop | 9 +++++++ 5 files changed, 96 insertions(+), 8 deletions(-) --- diff --git a/.gitignore b/.gitignore index 995ab78..cf0c693 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ PAR-Packer-1.005.tar.gz /PAR-Packer-1.008.tar.gz /PAR-Packer-1.009.tar.gz /PAR-Packer-1.010.tar.gz +/PAR-Packer-1.011.tar.gz diff --git a/extract_icon b/extract_icon new file mode 100755 index 0000000..13fa515 --- /dev/null +++ b/extract_icon @@ -0,0 +1,28 @@ +#!/usr/bin/perl + +# Copyright 2011 Petr Písař <ppisar@xxxxxxxxxx>. +# This tool is licensed under the terms of GNU GPL version 3 or any later. + +use strict; +use warnings; + +my $gif; + +while (<>) { + chomp; + if (/\A[^#]*my\s+\$icon_gif\s+=/) { + $gif = ''; + next; + } + if (defined $gif && /\A\./) { + last; + } + if (defined $gif) { + $gif .= $_; + } +} + +if (! defined $gif) { exit 1; } + +use MIME::Base64; +print decode_base64($gif); diff --git a/perl-PAR-Packer.spec b/perl-PAR-Packer.spec index a3299c1..2071588 100644 --- a/perl-PAR-Packer.spec +++ b/perl-PAR-Packer.spec @@ -1,11 +1,13 @@ Name: perl-PAR-Packer -Version: 1.010 -Release: 2%{?dist} +Version: 1.011 +Release: 1%{?dist} Summary: PAR Packager License: GPL+ or Artistic Group: Development/Libraries URL: http://search.cpan.org/dist/PAR-Packer/ Source0: http://www.cpan.org/authors/id/R/RS/RSCHUPP/PAR-Packer-%{version}.tar.gz +Source1: extract_icon +Source2: tkpp.desktop BuildRequires: perl(Archive::Zip) >= 1 BuildRequires: perl(Compress::Zlib) >= 1.3 BuildRequires: perl(ExtUtils::MakeMaker) @@ -13,18 +15,44 @@ BuildRequires: perl(ExtUtils::Embed) BuildRequires: perl(File::Temp) >= 0.05 BuildRequires: perl(Getopt::ArgvFile) >= 1.07 BuildRequires: perl(IO::Compress::Gzip) -BuildRequires: perl(Module::ScanDeps) >= 1.01 -BuildRequires: perl(PAR) >= 1.000 +BuildRequires: perl(Module::ScanDeps) >= 1.05 +BuildRequires: perl(PAR) >= 1.004 BuildRequires: perl(PAR::Dist) >= 0.22 Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) +Requires: perl(Archive::Zip) >= 1 +Requires: perl(Compress::Zlib) >= 1.3 +Requires: perl(File::Temp) >= 0.05 +Requires: perl(Getopt::ArgvFile) >= 1.07 +Requires: perl(IO::Compress::Gzip) +Requires: perl(Module::ScanDeps) >= 1.05 +Requires: perl(PAR) >= 1.004 +Requires: perl(PAR::Dist) >= 0.22 + +# Remove under-specified dependencies +%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^perl\\(Archive::Zip|File::Temp|Getopt::ArgvFile|Module::ScanDeps|PAR\\)\\s*$ %description This module implements the App::Packer::Backend interface, for generating stand-alone executables, perl scripts and PAR files. +%package Tk +Summary: Front-end to pp written in Perl/Tk +BuildArch: noarch +BuildRequires: desktop-file-utils +BuildRequires: perl(MIME::Base64) +Requires: %{name} = %{version}-%{release} +Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) +Requires: perl(ExtUtils::MakeMaker) + +%description Tk +Tkpp is a GUI frontend to pp, which can turn perl scripts into standalone +PAR files, perl scripts or executables. + + %prep %setup -q -n PAR-Packer-%{version} + %build # DEBUG variable needed to disable stripping binary DEBUG=1 %{__perl} Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}" @@ -32,20 +60,29 @@ DEBUG=1 %{__perl} Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}" # PAR_GLOBAL_TEMP seems to be needed for the build. make PAR_GLOBAL_TEMP=/var/tmp + %install make pure_install PERL_INSTALL_ROOT=%{buildroot} find %{buildroot} -type f -name .packlist -exec rm -f {} \; find %{buildroot} -type f -name '*.bs' -size 0 -exec rm -f {} \; find %{buildroot} -depth -type d -exec rmdir {} 2>/dev/null \; - %{_fixperms} %{buildroot}/* +# Install desktop file +%{SOURCE1} < script/tkpp > tkpp.gif +install -m644 -D tkpp.gif \ + $RPM_BUILD_ROOT/%{_datadir}/icons/hicolor/32x32/apps/tkpp.gif +desktop-file-install \ + --dir=${RPM_BUILD_ROOT}%{_datadir}/applications %{SOURCE2} + + %check export PAR_GLOBAL_TEMP=/var/tmp #export PAR_GLOBAL_TMPDIR=/var/tmp ## does not pass # make test PERL_TEST_POD=1 || : + %files %doc AUTHORS ChangeLog README TODO %{perl_vendorlib}/* @@ -53,11 +90,24 @@ export PAR_GLOBAL_TEMP=/var/tmp %{_bindir}/parl %{_bindir}/parldyn %{_bindir}/pp -%{_bindir}/tkpp -%{_mandir}/man1/*.1.gz +%{_mandir}/man1/*.1.* +%exclude %{_mandir}/man1/tkpp.1.* %{_mandir}/man3/* +%files Tk +%{_bindir}/tkpp +%{_mandir}/man1/tkpp.1.* +%{_datadir}/applications/tkpp.desktop +%{_datadir}/icons/hicolor/32x32/apps/tkpp.gif + + %changelog +* Fri Dec 02 2011 Petr Pisar <ppisar@xxxxxxxxxx> - 1.011-1 +- 1.011 bump (fixes CVE-2011-4114) +- Specify run-time dependencies versions +- Sub-package tkpp into perl-PAR-Packer-Tk +- Create Free Desktop menu entry + * Tue Jul 19 2011 Petr Sabata <contyk@xxxxxxxxxx> - 1.010-2 - Perl mass rebuild diff --git a/sources b/sources index 3db8597..3e07996 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -ee57def445e3d917d48cbf3a52813b54 PAR-Packer-1.010.tar.gz +b26a703a6e9ddf0268d1490d602a9094 PAR-Packer-1.011.tar.gz diff --git a/tkpp.desktop b/tkpp.desktop new file mode 100644 index 0000000..3dc688e --- /dev/null +++ b/tkpp.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=Tkpp +GenericName=Perl Archive Writer +Comment=Front-end to pp written in Perl/Tk +Exec=tkpp +Icon=tkpp +Terminal=false +Type=Application +Categories=Development;Building; -- Fedora Extras Perl SIG http://www.fedoraproject.org/wiki/Extras/SIGs/Perl perl-devel mailing list perl-devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/perl-devel