From 077ec097aeb5ca72fde39a607c19307b097bfb70 Mon Sep 17 00:00:00 2001 From: CentOS Buildsys Date: Nov 06 2013 13:53:24 +0000 Subject: import perl-Tk-804.030-4.el7.src.rpm --- diff --git a/.perl-Tk.metadata b/.perl-Tk.metadata new file mode 100644 index 0000000..3b88d81 --- /dev/null +++ b/.perl-Tk.metadata @@ -0,0 +1,2 @@ +219fc1765a7868e00ed86b6778e46c67f95ae0c1 SOURCES/perl-Tk-debian.patch.gz +f5a85cee56de9679e49260e6e80d6dc384e60a5e SOURCES/Tk-804.030.tar.gz diff --git a/README.md b/README.md deleted file mode 100644 index 0e7897f..0000000 --- a/README.md +++ /dev/null @@ -1,5 +0,0 @@ -The master branch has no content - -Look at the c7 branch if you are working with CentOS-7, or the c4/c5/c6 branch for CentOS-4, 5 or 6 - -If you find this file in a distro specific branch, it means that no content has been checked in yet diff --git a/SOURCES/perl-Tk-Preserve-mode-on-pTk-files.patch b/SOURCES/perl-Tk-Preserve-mode-on-pTk-files.patch new file mode 100644 index 0000000..86018a9 --- /dev/null +++ b/SOURCES/perl-Tk-Preserve-mode-on-pTk-files.patch @@ -0,0 +1,45 @@ +From ef70fd090dedebaa9fa6938d01655806fac2561a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= +Date: Wed, 6 Nov 2013 14:15:34 +0100 +Subject: [PATCH] Preserve mode on pTk files +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Some pTk/*.[tm] files change mode during build. The result differs on +differnt architectures and depends on external dependencies. + +This burderns regression tests and there is not reason why to change +the mode. So this patch coerces all modes to 0644 making resulting +debuginfo files uniform. + +Signed-off-by: Petr Písař +--- + pTk/mkVFunc | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/pTk/mkVFunc b/pTk/mkVFunc +index e10a458..75194a2 100755 +--- a/pTk/mkVFunc ++++ b/pTk/mkVFunc +@@ -19,7 +19,7 @@ sub openRO + my ($fh,$file) = @_; + if (-f $file && !-w $file) + { +- chmod(0666,$file) || warn "Cannot change permissions on $file:$!"; ++ chmod(0644,$file) || warn "Cannot change permissions on $file:$!"; + } + open($fh,">","$file~") || return 0; + push(@Files,$file); +@@ -33,7 +33,7 @@ END + my $file = pop(@Files); + if (-f $file) + { +- chmod(0444,"$file~") || warn "Cannot change permissions on $file:$!"; ++ chmod(0644,"$file~") || warn "Cannot change permissions on $file:$!"; + if (!rename("$file~",$file)) + { + warn "Cannot rename $file to $file~ ($!), trying again with deleting $file before..."; +-- +1.8.3.1 + diff --git a/SOURCES/perl-Tk-seg.patch b/SOURCES/perl-Tk-seg.patch new file mode 100644 index 0000000..26201fa --- /dev/null +++ b/SOURCES/perl-Tk-seg.patch @@ -0,0 +1,33 @@ +diff -up Tk-804.028/pTk/mTk/generic/tkConfig.c.seg Tk-804.028/pTk/mTk/generic/tkConfig.c +--- Tk-804.028/pTk/mTk/generic/tkConfig.c.seg 2008-03-11 23:29:39.000000000 -0400 ++++ Tk-804.028/pTk/mTk/generic/tkConfig.c 2008-03-11 23:28:09.000000000 -0400 +@@ -1210,11 +1210,11 @@ GetOptionFromObj(interp, objPtr, tablePt + * First, check to see if the object already has the answer cached. + */ + +- if (objPtr->typePtr == &tkOptionObjType) { ++/* if (objPtr->typePtr == &tkOptionObjType) { + if (objPtr->internalRep.twoPtrValue.ptr1 == (VOID *) tablePtr) { + return (Option *) objPtr->internalRep.twoPtrValue.ptr2; + } +- } ++ }*/ + + /* + * The answer isn't cached. +@@ -2277,9 +2277,15 @@ Tk_GetOptionValue(interp, recordPtr, opt + if (optionPtr == NULL) { + return NULL; + } ++ ++ if (optionPtr->specPtr == NULL) { ++ return NULL; ++ } ++ + if (optionPtr->specPtr->type == TK_OPTION_SYNONYM) { + optionPtr = optionPtr->extra.synonymPtr; + } ++ + if (optionPtr->specPtr->objOffset >= 0) { + resultPtr = *((Tcl_Obj **) (recordPtr + optionPtr->specPtr->objOffset)); + if (resultPtr == NULL) { diff --git a/SOURCES/perl-Tk-widget.patch b/SOURCES/perl-Tk-widget.patch new file mode 100644 index 0000000..ec44658 --- /dev/null +++ b/SOURCES/perl-Tk-widget.patch @@ -0,0 +1,26 @@ +--- demos/widget.orig 2008-01-02 13:24:14.000000000 +0100 ++++ demos/widget 2008-01-02 13:27:10.000000000 +0100 +@@ -3,7 +3,8 @@ + use 5.008; + use Config; + use Tk 804.000; +-use lib Tk->findINC( 'demos/widget_lib' ); ++#use lib Tk->findINC( 'demos/widget_lib' ); ++use lib "@demopath@/widget_lib"; + use Tk::widgets qw/ DialogBox ErrorDialog LabEntry ROText /; + use Tk::Config (); + use WidgetDemo; +@@ -62,9 +63,11 @@ + $l->destroy; + } + +-my $widget_lib = Tk->findINC('demos/widget_lib'); ++#my $widget_lib = Tk->findINC('demos/widget_lib'); ++my $widget_lib = "@demopath@/widget_lib"; + my $wd = "$widget_lib/WidgetDemo.pm"; +-$WIDTRIB = Tk->findINC('demos/widtrib'); ++#$WIDTRIB = Tk->findINC('demos/widtrib'); ++$WIDTRIB = "@demopath@/widtrib"; + unless (Tk::tainting) { + $WIDTRIB = $ENV{WIDTRIB} if defined $ENV{WIDTRIB}; + $WIDTRIB = $ARGV[0] if defined $ARGV[0]; diff --git a/SPECS/perl-Tk.spec b/SPECS/perl-Tk.spec new file mode 100644 index 0000000..fda6018 --- /dev/null +++ b/SPECS/perl-Tk.spec @@ -0,0 +1,289 @@ +%{!?perl_vendorarch: %define perl_vendorarch %(eval "`%{__perl} -V:installvendorarch`"; echo $installvendorarch)} +%define perlver %(eval "`%{__perl} -V:version`"; echo $version) + +Name: perl-Tk +# devel version fix for perl 5.14: +Version: 804.030 +Release: 4%{?dist} +Summary: Perl Graphical User Interface ToolKit + +Group: Development/Libraries +License: (GPL+ or Artistic) and SWL +URL: http://search.cpan.org/dist/Tk/ +Source0: http://search.cpan.org/CPAN/authors/id/S/SR/SREZIC/Tk-%{version}.tar.gz +Patch0: perl-Tk-widget.patch +# modified version of http://ftp.de.debian.org/debian/pool/main/p/perl-tk/perl-tk_804.027-8.diff.gz +Patch1: perl-Tk-debian.patch.gz +# fix segfaults as in #235666 because of broken cashing code +Patch2: perl-Tk-seg.patch +# fixes file modes changed while building, #1017322 +Patch3: perl-Tk-Preserve-mode-on-pTk-files.patch + +# Versions before this have Unicode issues +BuildRequires: perl-devel >= 3:5.8.3 +BuildRequires: libjpeg-devel +BuildRequires: libpng-devel +BuildRequires: libX11-devel +BuildRequires: libXft-devel +BuildRequires: perl(Config) +BuildRequires: perl(Cwd) +BuildRequires: perl(ExtUtils::MakeMaker) +BuildRequires: perl(lib) + +Requires: perl(:MODULE_COMPAT_%{perlver}) +Provides: perl(Tk::LabRadio) = 4.004 +Provides: perl(Tk) = %{version} + +%{?perl_default_filter} +# Explicity filter "useless" unversioned provides. For some reason, rpm is +# detecting these both with and without version. +%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}perl\\(Tk\\) +%global __provides_exclude %__provides_exclude|perl\\(Tk::Clipboard\\)$ +%global __provides_exclude %__provides_exclude|perl\\(Tk::Frame\\)$ +%global __provides_exclude %__provides_exclude|perl\\(Tk::Listbox\\)$ +%global __provides_exclude %__provides_exclude|perl\\(Tk::Scale\\)$ +%global __provides_exclude %__provides_exclude|perl\\(Tk::Scrollbar\\)$ +%global __provides_exclude %__provides_exclude|perl\\(Tk::Table\\)$ +%global __provides_exclude %__provides_exclude|perl\\(Tk::Toplevel\\)$ +%global __provides_exclude %__provides_exclude|perl\\(Tk::Widget\\)$ +%global __provides_exclude %__provides_exclude|perl\\(Tk::Wm\\)$ + + +%description +This a re-port of a perl interface to Tk8.4. +C code is derived from Tcl/Tk8.4.5. +It also includes all the C code parts of Tix8.1.4 from SourceForge. +The perl code corresponding to Tix's Tcl code is not fully implemented. + +Perl API is essentially the same as Tk800 series Tk800.025 but has not +been verified as compliant. There ARE differences see pod/804delta.pod. + +%package devel +Summary: perl-Tk ExtUtils::MakeMaker support module +Requires: perl-Tk = %{version}-%{release} + +%description devel +%{summary} + +%prep +%setup -q -n Tk-%{version} +find . -type f -exec %{__perl} -pi -e \ +'s,^(#!)(/usr/local)?/bin/perl\b,$1%{__perl}, if ($. == 1)' {} \; +chmod -x pod/Popup.pod Tixish/lib/Tk/balArrow.xbm +# fix for widget as docs +%patch0 +%{__perl} -pi -e \ +'s,\@demopath\@,%{_datadir}/doc/%{name}-%{version}/demos,g' demos/widget +# debian patch +%patch1 -p1 +# patch to fix #235666 ... seems like caching code is broken +%patch2 -p1 -b .seg +# file modes, #1017322 +%patch3 -p1 + +%build +%{__perl} Makefile.PL INSTALLDIRS=vendor X11LIB=%{_libdir} XFT=1 +find . -name Makefile | xargs %{__perl} -pi -e 's/^\tLD_RUN_PATH=[^\s]+\s*/\t/' +make %{?_smp_mflags} + +# disable because they need an x screen +%check +# make test + +%install +make pure_install DESTDIR=$RPM_BUILD_ROOT + +find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} \; +find $RPM_BUILD_ROOT -type f -name '*.bs' -size 0 -exec rm -f {} \; + +chmod -R u+rwX,go+rX,go-w $RPM_BUILD_ROOT/* +mkdir __demos +cp -pR $RPM_BUILD_ROOT%{perl_vendorarch}/Tk/demos __demos +find __demos/ -type f -exec chmod -x {} \; + +%files +%doc Changes README README.linux ToDo pTk/*license* __demos/demos demos/widget COPYING +%doc blib/man1/widget.1 +%{_bindir}/p* +%{_bindir}/tkjpeg +%{perl_vendorarch}/auto/Tk +%{perl_vendorarch}/T* +%exclude %{perl_vendorarch}/Tk/MMutil.pm +%exclude %{perl_vendorarch}/Tk/install.pm +%exclude %{perl_vendorarch}/Tk/MakeDepend.pm +%{_mandir}/man*/* +%exclude %{_mandir}/man1/widget.1* +%exclude %{_bindir}/gedi +%exclude %{_bindir}/widget +%exclude %{perl_vendorarch}/Tk/demos + +%files devel +%dir %{perl_vendorarch}/Tk +%{perl_vendorarch}/Tk/MMutil.pm +%{perl_vendorarch}/Tk/install.pm +%{perl_vendorarch}/Tk/MakeDepend.pm + + +%changelog +* Wed Nov 06 2013 Petr Pisar - 804.030-4 +- Fix file modes changed while building (bug #1017322) +- Correct change log entry date (bug #1017322) + +* Tue Jul 30 2013 Jitka Plesnikova - 804.030-3 +- Fix license + +* Tue Jul 23 2013 Jitka Plesnikova - 804.030-2 +- Update license - add SWL +- Specify all dependencies +- Replace PERL_INSTALL_ROOT with DESTDIR +- Drop removing of empty directory +- Package COPYING + +* Wed Aug 29 2012 Jitka Plesnikova - 804.030-1 +- 804.030 bump, update source link + +* Fri Jul 20 2012 Fedora Release Engineering - 804.029-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Thu Jun 07 2012 Petr Pisar - 804.029-8 +- Perl 5.16 rebuild + +* Thu Jun 07 2012 Petr Pisar - 804.029-7 +- Perl 5.16 rebuild + +* Fri Jan 13 2012 Fedora Release Engineering - 804.029-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Thu Nov 10 2011 Iain Arnell 804.029-5 +- Rebuild for libpng 1.5 + +* Fri Oct 21 2011 Ralf Corsépius 804.029-4 +- Split out Tk/MMutil.pm, Tk/install.pm, Tk/MakeDepend.pm into perl-Tk-devel. + (Avoid dependency on perl-devel - BZ 741777). + +* Tue Jun 21 2011 Iain Arnell 804.029-3 +- Perl mass rebuild + +* Tue Jun 21 2011 Iain Arnell 804.029-2 +- properly filter useless provides + +* Fri Jun 17 2011 Iain Arnell 804.029-1 +- update to 804.029_500 development version to fix FTBFS with perl 5.14 +- clean up spec for modern rpmbuild +- use perl_default_filter and filter useless provides + +* Fri Jun 17 2011 Marcela Mašláňová - 804.028-16 +- Perl mass rebuild + +* Thu Jun 09 2011 Marcela Mašláňová - 804.028-15 +- Perl 5.14 mass rebuild + +* Wed Feb 09 2011 Fedora Release Engineering - 804.028-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Thu Dec 23 2010 Marcela Maslanova - 804.028-13 +- 661697 rebuild for fixing problems with vendorach/lib + +* Fri May 07 2010 Marcela Maslanova - 804.028-12 +- Mass rebuild with perl-5.12.0 & update to development release + +* Fri Dec 4 2009 Stepan Kasal - 804.028-11 +- rebuild against perl 5.10.1 + +* Sun Jul 26 2009 Fedora Release Engineering - 804.028-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Mon Jun 22 2009 Andreas Bierfert +- 804.028-9 +- fix getOpenFile (#487122) + +* Mon Jun 15 2009 Andreas Bierfert +- 804.028-8 +- fix events (#489228, #491536, #506496) + +* Thu Mar 19 2009 Stepan Kasal - 804.028-7 +- perl-Tk-XIM.patch (#489228) + +* Thu Feb 26 2009 Fedora Release Engineering - 804.028-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Tue Mar 11 2008 Tom "spot" Callaway 804.028-5 +- rework patch2 to fix menu and test case failures (bz 431330, upstream 33880) + +* Tue Feb 05 2008 Tom "spot" Callaway +- 804.028-4 +- rebuild for new perl + +* Tue Feb 05 2008 Andreas Bierfert +- 804.028-3 +- fix #431529 gif overflow in tk (see also #431518) + +* Fri Jan 04 2008 Andreas Bierfert +- 804.028-2 +- add relevant parts of debian patch +- add patch for #235666 + +* Wed Jan 02 2008 Andreas Bierfert +- 804.028-1 +- version upgrade +- fix #210718 SIGSEGV on exit from texdoctk +- fix #234404 Cannot manage big listboxes +- fix #235666 Segfault occurs when using Perl-Tk on FC6 + +* Wed Dec 19 2007 Andreas Bierfert +- 804.027-13 +- fix BR + +* Wed Aug 22 2007 Andreas Bierfert +- 804.027-12 +- rebuild for buildid + +* Sun Apr 01 2007 Andreas Bierfert +804.027-11 +- F7 rebuild (#234404) + +* Fri Sep 15 2006 Andreas Bierfert +804.027-10 +- FE6 rebuild + +* Thu Feb 16 2006 Andreas Bierfert +804.027-9 +- Rebuild for Fedora Extras 5 + +* Fri Nov 25 2005 Andreas Bierfert +804.027-8 +- modular xorg integration + +* Sun Jul 31 2005 Andreas Bierfert +804.027-7 +- fix #164716 + +* Mon Jun 20 2005 Andreas Bierfert +804.027-6 +- some small cleanups +- add dist tag + +* Thu Jun 16 2005 Andreas Bierfert +804.027-5 +- exclude gedi +- move widget to doc dir and patch it to work from there + +* Wed Jun 15 2005 Andreas Bierfert +804.027-4 +- more cleanups from Ville Skyttä + +* Wed Jun 15 2005 Andreas Bierfert +804.027-3 +- more cleanups + +* Tue Jun 14 2005 Andreas Bierfert +804.027-2 +- add some stuff (e.g. xft) suggested by Steven Pritchard + +* Tue Jun 14 2005 Andreas Bierfert +804.027-1 +- rebuild for fc4 + +* Fri Jun 04 2004 Andreas Bierfert +0:804.027-0.fdr.1 +- Initial Version (thanks to perl-Archive-Zip spec)