Name: perl-PDL
Version: 2.4.3
Release: 12%{?dist}
Summary: The Perl Data Language
Group: Development/Libraries
License: GPL+ or Artistic
Url: http://search.cpan.org/dist/PDL/
Source0: http://www.cpan.org/authors/id/C/CS/CSOE/PDL-%{version}.tar.gz
Patch0: perl-PDL-settings.patch
Patch1: perl-PDL-2.4.2-fix_ia64_sdump.patch
Patch2: perl-PDL-2.4.3-cleanup.patch
Patch3: perl-PDL-2.4.3-test.patch
Patch4: perl-PDL-2.4.3-x86_64.patch
Patch5: perl-PDL-2.4.3-hdf.patch
Patch6: perl-PDL-2.4.3-Xext.patch
Patch7: perl-PDL-2.4.3-fortran.patch
Patch8: perl-PDL-2.4.3-test_hdf.patch
Patch9: perl-PDL-2.4.3-gsl.patch
Patch10: PDL-2.4.3-perl510.patch
Patch11: perl-PDL-2.4.3-noDISPLAY.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: perl >= 1:5.6.1
BuildRequires: perl(ExtUtils::F77)
BuildRequires: perl(Inline)
BuildRequires: perl(Test::More)
BuildRequires: fftw2-devel
BuildRequires: gcc-gfortran
BuildRequires: gd-devel
BuildRequires: gsl-devel
BuildRequires: hdf-devel
BuildRequires: libGLU-devel
BuildRequires: plplot-devel
BuildRequires: proj-devel
BuildRequires: ncurses-devel
BuildRequires: sharutils
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
Provides: perl(PDL::Config) perl(PDL::PP::CType) perl(PDL::PP::Dims)
Provides: perl(PDL::PP::PDLCode) perl(PDL::PP::SymTab) perl(PDL::PP::XS)
Provides: perl(PGPLOT) perl(PDL::LiteF) perl(PDL::Lite)
Provides: perl(PDL::Graphics::TriD::GL) perl(PDL::Graphics::TriD::Objects)
%{?!DEBUG: %define DEBUG 0}
%description
PDL ("Perl Data Language") gives standard Perl the ability to
compactly store and speedily manipulate the large N-dimensional data
arrays which are the bread and butter of scientific computing. PDL
turns perl into a free, array-oriented, numerical language similar to
such commercial packages as IDL and MatLab.
%prep
%setup -q -n PDL-%{version}
%patch0 -p1 -b .settings
%patch1 -p1
%patch2 -p1 -b .cleanup
%patch3 -p1 -b .test
%patch4 -p1 -b .x86_64
%patch5 -p1 -b .hdf
%patch6 -p1 -b .Xext
%patch7 -p1 -b .fortran
%patch8 -p1 -b .patch_hdf
%patch9 -p1 -b .gsl
%patch10 -p1 -b .perl510
%patch11 -p1 -b .noDISPLAY
# Provides: explicitly filter perl(Inline)
cat <<__EOF__ > %{name}-findperlprovides
#!/bin/sh
%{__perl_provides} \$* | grep -v 'perl(Inline)'
__EOF__
%define __perl_provides %{_builddir}/PDL-%{version}/%{name}-findperlprovides
chmod +x %{__perl_provides}
# Requires: explicitly filter perl(Tk)
cat <<__EOF__ > %{name}-findperlrequires
#!/bin/sh
%{__perl_requires} \$* | grep -v 'perl(Tk)' | grep -v 'perl(Win32::DDE::Client)'
__EOF__
%define __perl_requires %{_builddir}/PDL-%{version}/%{name}-findperlrequires
chmod +x %{__perl_requires}
%if %{DEBUG}
%define debug_package %{nil}
%endif
%build
export PERL5LIB=`pwd`/blib/lib:`pwd`/blib/arch:
#^- can no longer build if perl-PDL is not installed without above
#
%if %{DEBUG}
CFLAGS=`echo "$RPM_OPT_FLAGS -Wno-unused" | sed 's/-O2 -g/-g3 -gdwarf-2/'`
%else
CFLAGS="$RPM_OPT_FLAGS -Wno-unused"
%endif
%ifarch ppc ppc64 s390 s390x
CFLAGS="$CFLAGS -fsigned-char"
%endif
CFLAGS="$CFLAGS -DNCURSES"
CFLAGS="$CFLAGS" %{__perl} Makefile.PL INSTALLDIRS=vendor OPTIMIZE="$CFLAGS"
make OPTIMIZE="$CFLAGS"
# smp flags blows up spectacularly (2.4.1-10 May 7th 2005)
%install
rm -rf $RPM_BUILD_ROOT
make pure_install PERL_INSTALL_ROOT=$RPM_BUILD_ROOT
%{__perl} -Mblib Doc/scantree.pl $RPM_BUILD_ROOT%{perl_vendorarch}
%{__perl} -pi -e "s|$RPM_BUILD_ROOT/|/|g" \
$RPM_BUILD_ROOT%{perl_vendorarch}/PDL/pdldoc.db
find $RPM_BUILD_ROOT%{perl_vendorarch} -type f -name "*.pm" | xargs chmod -x
find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} ';'
find $RPM_BUILD_ROOT -type f -name '*.bs' -empty -exec rm -f {} ';'
find $RPM_BUILD_ROOT -type d -depth -exec rmdir {} 2>/dev/null ';'
chmod -R u+w $RPM_BUILD_ROOT/*
for file in $RPM_BUILD_ROOT%{_mandir}/man3/PDL::Func.3pm $RPM_BUILD_ROOT%{_mandir}/man3/PDL::Complex.3pm; do
iconv -f iso-8859-1 -t utf-8 < "$file" > "${file}_"
mv -f "${file}_" "$file"
done
%if %{DEBUG}
/usr/lib/rpm/brp-compress
exit 0
%endif
%check
unset DISPLAY
export PERL5LIB=`pwd`/blib/lib
set PERL_DL_NONLAZY=0
# The default behavior causes some problems because opengl.pd builds an interface for all functions
# defined in gl.h and glu.h even though they might not actually be in the opengl libraries.
sed -i 's|PERL_DL_NONLAZY=1 $(FULLPERLRUN)|PERL_DL_NONLAZY=0 $(FULLPERLRUN)|g' Graphics/TriD/OpenGL/Makefile
make test
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
%doc COPYING BUGS Changes Known_problems Release_Notes README
%{_bindir}/*
%{perl_vendorarch}/Inline/*
%{perl_vendorarch}/PDL*
%{perl_vendorarch}/auto/PDL/
%{_mandir}/man1/*.1*
%{_mandir}/man3/*.3*
%changelog
* Mon Mar 10 2008 Marcela Maslanova <mmaslano@redhat.com> - 2.4.3-12
- PERL_DL_NONLAZY=0 was uncommented in check part of spec.
* Sat Mar 08 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 2.4.3-11
- PERL_DL_NONLAZY=0 for all the GL tests
- don't run GL tests if DISPLAY is unset
* Sat Mar 08 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 2.4.3-9
- patch to fix build against perl 5.10, get useful random numbers
* Thu Mar 06 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 2.4.3-8
- Rebuild for new perl
* Tue Mar 04 2008 Orion Poplawski <orion@cora.nwra.com> - 2.4.3-7
- Add patch to build GSL support with GSL 1.10
- unset DISPLAY in %%check for mock builds
* Tue Feb 26 2008 Marcela Maslanova <mmaslano@redhat.com> - 2.4.3-6
- remove two of hdf test for some time, because can't be build
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 2.4.3-5
- Autorebuild for GCC 4.3
* Wed Aug 15 2007 Robin Norwood <rnorwood@redhat.com> - 2.4-3-4
- Updated perl-PDL-2.4.3-test.patch from Orion to fix ppc and ppc64
- Fixed license string
- Fixed old changelog version number
* Fri Aug 10 2007 Robin Norwood <rnorwood@redhat.com> - 2.4.3-3
- More changes from Orion Poplawski
- BuildRequires and patch for fortran/f77 support
- Added Provides: perl(PDL::Graphics::TriD::Object
- Filter perl(Win32::DDE::Client) from Requires
* Mon Aug 06 2007 Robin Norwood <rnorwood@redhat.com> - 2.4.3-2
- Apply changes from package review
- untabify spec file
- Add various files to %%doc
- turn on 3D/GL
- turn on IO Browser
- add a bunch of BRs to enable more modules
- remove unneeded Provides
- perl-PDL-2.4.3-hdf.patch to look for hdf devel files in the right place
- perl-PDL-2.4.3-test.patch to fix some tests
- perl-PDL-2.4.3-x86_64.patch to find 64bit libraries for some modules
- perl-PDL-2.4.3-Xext.patch to remove -lXext from GL linking options
* Sat Dec 02 2006 Robin Norwood <rnorwood@redhat.com> - 2.4.3-1
- Latest version from CPAN: 2.4.3
* Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 2.4.2-4.fc5.1
- rebuild
* Fri Mar 10 2006 Jason Vas Dias <jvdias@redhat.com> - 2.4.2-4
- Further code cleanup & CFLAGS settings required to enable tests
to succeed on all platforms
* Thu Mar 09 2006 Jason Vas Dias <jvdias@redhat.com> - 2.4.2-4
- Enable tests to succeed on ia64 (remove casts from int to * !)
* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 2.4.2-2.fc5.1.2.2
- bump again for double-long bug on ppc(64)
* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 2.4.2-2.fc5.1.2.1
- rebuilt for new gcc4.1 snapshot and glibc changes
* Fri Feb 03 2006 Jason Vas Dias <jvdias@redhat.com> - 2.4.2-2.fc5.1.2
- rebuild for new perl-5.8.8
- enable build to succeed without perl-PDL being installed :-)
* Fri Dec 16 2005 Jesse Keating <jkeating@redhat.com>
- rebuilt for new gcc
* Fri Dec 16 2005 Jesse Keating <jkeating@redhat.com>
- rebuilt for new gcj
* Sun Sep 25 2005 Warren Togami <wtogami@redhat.com> - 2.4.2-2
- Ship pdldoc.db, tune build dependencies and file permissions (#163219 scop)
* Fri May 27 2005 Warren Togami <wtogami@redhat.com> - 2.4.2-1
- 2.4.2
- filter perl(Inline) from provides (#158733)
* Wed May 11 2005 Jose Pedro Oliveira <jpo at di.uminho.pt> - 2.4.1-11
- Add missing perl(PDL::Graphics::TriD*) provides. (#156482)
- Explicitly filter perl(Tk). (#156482)
* Sat Apr 30 2005 Jose Pedro Oliveira <jpo at di.uminho.pt> - 2.4.1-10
- Bring up to date with current Fedora.Extras perl spec template. (#156482)
- disable SMP flags so it actually builds
* Sat Dec 18 2004 Miloslav Trmac <mitr@redhat.com> - 2.4.1-9
- Rebuild with fixed gsl-devel (#142695)
* Sun Dec 12 2004 Miloslav Trmac <mitr@redhat.com> - 2.4.1-8
- Fix more bugs on 64-bit platforms
- BuildRequires: gsl-devel
* Sun Dec 12 2004 Miloslav Trmac <mitr@redhat.com> - 2.4.1-7
- Fix rangeb on 64-bit platforms (I hope) (#141413)
* Thu Nov 25 2004 Miloslav Trmac <mitr@redhat.com> - 2.4.1-6
- Convert man page to UTF-8
* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Tue Mar 02 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Fri Feb 13 2004 Chip Turner <cturner@redhat.com> 2.4.1-1
- update to 2.4.1
* Mon Jun 16 2003 Chip Turner <cturner@redhat.com> 2.4.0-2
- move to 2.4.0, integrate dependency fixes from other tree
* Wed Jan 29 2003 Chip Turner <cturner@redhat.com>
- bump
* Mon Jan 27 2003 Chip Turner <cturner@redhat.com>
- version bump and rebuild
* Wed Nov 20 2002 Chip Turner <cturner@redhat.com>
- move to 2.3.4
* Tue Aug 6 2002 Chip Turner <cturner@redhat.com>
- automated release bump and build
* Tue Jul 16 2002 Chip Turner <cturner@redhat.com>
- updated %%description
* Thu Jun 27 2002 Chip Turner <cturner@redhat.com>
- description update
* Fri Jun 07 2002 cturner@redhat.com
- Specfile autogenerated