Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37696072
en ru br
Репозитории ALT
S:2.084-alt1.1
3.0: 2.4.2-alt1
www.altlinux.org/Changes

Группа :: Разработка/Perl
Пакет: perl-PDL

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

%define dist PDL
Name: perl-%dist
Version: 2.4.2
Release: alt1
Epoch: 1

Summary: The Perl Data Language
License: GPL or Artistic
Group: Development/Perl

URL: http://pdl.perl.org/
Source: %dist-%version.tar.bz2

Patch1: %name-2.3.3-mdk-slatec-Makefile-pic.patch
Patch2: %name-2.4.0-mdk-handle-INSTALLDIRS-vendor.patch
Patch3: %name-2.4.2-alt-TriD-Makefile-lib64.patch
Patch4: %name-2.4.1-alt-TriD-proto-syntax.patch
Patch5: %name-2.4.0-alt-TriD-Rout-PerlIO_printf.patch
Patch6: %name-2.2.1-pld-FFTW-Makefile-shared.patch
Patch7: %name-2.4.1-alt-tmp-pnm.patch
Patch8: %name-2.4.2-alt-perldl-deps.patch
Patch9: %name-2.4.2-alt-no-compat-deps.patch
Patch10: %name-2.4.2-alt-test-limits_keyspecs-undef.patch
Patch11: %name-2.4.2-alt-pnm-jpeg.patch
Patch12: %name-2.4.2-alt-SourceFilter-makefile-buildreq.patch
Patch13: %name-2.4.2-alt-TriD-makefile-buildreq.patch

Provides: %name-doc = 1:%version
Obsoletes: %name-doc <= 1:%version

# Added by buildreq2 on Thu Apr 21 2005

BuildRequires: gcc-g77 libfftw-devel netpbm perl-ExtUtils-F77 perl-Filter perl-Inline perl-Storable perl-Text-Balanced xorg-x11-devel

%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 in to
a free, array-oriented, numerical language similar to such commerical
packages as IDL and MatLab.

%package devel
Summary: devel
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
%description devel
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 in to
a free, array-oriented, numerical language similar to such commerical
packages as IDL and MatLab.

%package CallExt
Summary: Call functions in external shared libraries
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
%description CallExt
callext() loads in a shareable object (i.e. compiled code) using Perl's
dynamic loader, calls the named function and passes a list of piddle
arguments to it.

%package Complex
Summary: PDL complex numbers
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
%description Complex
This module features a growing number of functions manipulating complex
numbers.

%package FFT
Summary: FFTs for PDL
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
%description FFT
FFTs for PDL.  These work for arrays of any dimension, although ones
with small prime factors are likely to be the quickest.

%package FFTW
Summary: PDL interface to the Fastest Fourier Transform in the West v2.x
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
%description FFTW
This is a means to interface PDL with the FFTW library. It's similar
to the standard FFT routine but it's usually faster and has support
for real transforms.

%package Graphics-TriD
Summary: PDL 3D interface
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
%description Graphics-TriD
This module implements a generic 3D plotting interface for PDL.
Points, lines and surfaces (among other objects) are supported.

%package Graphics-IIS
Summary: Display PDL images on IIS devices (saoimage/ximtool)
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
%description Graphics-IIS
This module provides an interface to any image display 'device' which
support the 'IIS protocol' - viz the SAOimage and Ximtool X-windows
programs, the old SunView imtool program and presumably even the
original IIS CRT itself if they aren't all in museums!

%package Graphics-LUT
Summary: Provides access to a number of look-up tables for PDL
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
%description Graphics-LUT
PDL::Graphics::LUT contains a number of colour look-up tables (in rgb
format) and intensity ramps, and provides routines to access this data.

%package Image2D
Summary: Miscellaneous 2D image processing functions
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
%description Image2D
Miscellaneous 2D image processing functions.

%package ImageND
Summary: Useful image processing in N dimensions
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
%description ImageND
These routines act on PDLs as N-dimensional objects, not as threaded sets
of 0-D or 1-D objects.  The file is sort of a catch-all for broadly functional
routines, most of which could legitimately be filed elsewhere (and probably
will, one day).

%package Inline
Summary: Write PDL Subroutines inline with PDL::PP
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
%description Inline
Inline::Pdlpp is a module that allows you to write PDL subroutines
in the PDL::PP style. The big benefit compared to plain PDL::PP is
that you can write these definitions inline in any old perl script
(without the normal hassle of creating Makefiles, building, etc).

%package IO-Pnm
Summary: Image I/O for PDL
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
Requires: netpbm
%description IO-Pnm
This module implements I/O for a number of popular image formats by
exploiting the xxxtopnm and pnmtoxxx converters from the netpbm package.

%package IO-Storable
Summary: Helper functions to make PDL usable with Storable
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
Requires: netpbm
%description IO-Storable
Storable implements object persistence for Perl data structures that
can (in principle) contain arbitrary Perl objects. Complicated objects
must supply their own methods to be serialized and thawed.  This module
implements the relevant methods to be able to store and retrieve piddles
via Storable.

%package Slatec
Summary: PDL interface to the Slatec numerical programming library
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
%description Slatec
PDL interface to the Slatec numerical programming library.

%package Transform
Summary: Coordinate transforms, image warping, and N-D functions
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
%description Transform
PDL::Transform is a convenient way to represent coordinate
transformations and resample images.  It embodies functions mapping
R^N -> R^M, both with and without inverses.  Provision exists for
parametrizing functions, and for composing them.  You can use this part
of the Transform object to keep track of arbitrary functions mapping
R^N -> R^M with or without inverses.

%package Transform-Cartography
Summary: Cartographic projections
Group: Development/Perl
Requires(pre,postun): %name = %epoch:%version-%release
%description Transform-Cartography
PDL::Transform::Cartography includes a variety of useful cartographic
and observing projections (mappings of the surface of a sphere),
including reprojected observer coordinates.

%package perldl
Summary: PDL shell
Group: Development/Perl
Requires(pre,postun): %name = %version-%release
%description perldl
The program perldl is a simple shell for interactive use of PDL.

%prep
%setup -q -n %dist-%version
%__bzip2 -9fk Changes
%__subst -p s/0555/0755/ pdldoc.PL perldl.PL
%__rm -fv Graphics/TriD/TriD/Cube.pm Graphics/TriD/TriD/Geomview.pm
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
#patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
%patch12 -p1
%patch13 -p1

%build
%__cat <<\__EOF__ >|./perldl-alt.conf
%%PDL_CONFIG = (
WITH_3D => 1,
OPENGL_LIBS => '-L%_x11libdir -lGL -lGLU -lXext -lX11',
OPENGL_INC => '-I%_x11includedir',
OPENGL_DEFINE => '-DGL_GLEXT_LEGACY=1 -DGLX_GLXEXT_LEGACY=1 ' .
# disable some prototypes in header files (GL/gl.h and GL/glx.h)
'-DGLX_MESA_agp_offset=1 -DGL_MESA_trace=1 -DGLX_ARB_render_texture=1 ' .
'-DGLX_NV_vertex_array_range=1 -DGL_MESA_program_debug=1 ',
);
__EOF__
%def_disable smp
%perl_vendor_build PDLCONF=perldl-alt.conf

%install
%perl_vendor_install

%files
#doc BUGS COPYING Changes.bz2 DEPENDENCIES DEVELOPMENT Known_problems README Release_Notes TODO
%dir %perl_vendor_archlib/PDL
%dir %perl_vendor_autolib/PDL
%perl_vendor_archlib/PDL/Lite.pm
%perl_vendor_archlib/PDL/LiteF.pm
# required by PDL::Lite and PDL::LiteF
%perl_vendor_archlib/PDL/Core.pm
%perl_vendor_autolib/PDL/Core
%perl_vendor_archlib/PDL/Ops.pm
%perl_vendor_autolib/PDL/Ops
%perl_vendor_archlib/PDL/Primitive.pm
%perl_vendor_autolib/PDL/Primitive
%perl_vendor_archlib/PDL/Ufunc.pm
%perl_vendor_autolib/PDL/Ufunc
%perl_vendor_archlib/PDL/Basic.pm
%perl_vendor_archlib/PDL/Slices.pm
%perl_vendor_autolib/PDL/Slices
%perl_vendor_archlib/PDL/Bad.pm
%perl_vendor_autolib/PDL/Bad
%perl_vendor_archlib/PDL/Version.pm
%perl_vendor_archlib/PDL/Lvalue.pm
# required by the above modules (recursively expanded)
%perl_vendor_archlib/PDL/Config.pm
%perl_vendor_archlib/PDL/Exporter.pm
%perl_vendor_archlib/PDL/Math.pm
%perl_vendor_autolib/PDL/Math
%perl_vendor_archlib/PDL/MatrixOps.pm
%perl_vendor_autolib/PDL/MatrixOps
%perl_vendor_archlib/PDL/NiceSlice.pm
%perl_vendor_archlib/PDL/Options.pm
%dir %perl_vendor_archlib/PDL/PP
%perl_vendor_archlib/PDL/PP/Dims.pm
%perl_vendor_archlib/PDL/PP/PdlParObj.pm
%perl_vendor_archlib/PDL/PP/Signature.pm
%perl_vendor_archlib/PDL/Types.pm
# PDL.pm and its extra requirements
%perl_vendor_archlib/PDL.pm
%dir %perl_vendor_archlib/PDL/IO
%perl_vendor_archlib/PDL/IO/FITS.pm
%perl_vendor_archlib/PDL/IO/Misc.pm
%dir %perl_vendor_autolib/PDL/IO
%perl_vendor_autolib/PDL/IO/Misc
# required by Graphics-TriD
%perl_vendor_archlib/PDL/Dbg.pm
# some docs
%doc %perl_vendor_archlib/PDL/FAQ.pod
%doc %perl_vendor_archlib/PDL/Impatient.pod
%doc %perl_vendor_archlib/PDL/Intro.pod
%doc %perl_vendor_archlib/PDL/Philosophy.pod

# other modules under Basic/

# %perl_vendor_archlib/PDL/AutoLoader.pm
## other modules under Lib/
# %perl_vendor_archlib/PDL/DiskCache.pm
# %perl_vendor_archlib/PDL/Func.pm

%files devel
%dir %perl_vendor_archlib/PDL/Core
%perl_vendor_archlib/PDL/Core/Dev.pm
%perl_vendor_archlib/PDL/Core/typemap.pdl
%perl_vendor_archlib/PDL/Core/*.h
%perl_vendor_archlib/PDL/PP.pm
%doc %perl_vendor_archlib/PDL/PP.pod
%dir %perl_vendor_archlib/PDL/PP
%perl_vendor_archlib/PDL/PP/*.pm
%exclude %perl_vendor_archlib/PDL/PP/Signature.pm
%exclude %perl_vendor_archlib/PDL/PP/Dims.pm
%exclude %perl_vendor_archlib/PDL/PP/PdlParObj.pm
%_bindir/pptemplate
# some docs
%doc %perl_vendor_archlib/PDL/API.pod
%doc %perl_vendor_archlib/PDL/BadValues.pod
%doc %perl_vendor_archlib/PDL/Dataflow.pod
%doc %perl_vendor_archlib/PDL/Delta.pod
%doc %perl_vendor_archlib/PDL/Indexing.pod
%doc %perl_vendor_archlib/PDL/Internals.pod
%doc %perl_vendor_archlib/PDL/Objects.pod
%doc %perl_vendor_archlib/PDL/Tips.pod

%files CallExt
%perl_vendor_archlib/PDL/CallExt.pm
%perl_vendor_autolib/PDL/CallExt

%files Complex
%perl_vendor_archlib/PDL/Complex.pm
%perl_vendor_autolib/PDL/Complex

%files FFT
%perl_vendor_archlib/PDL/FFT.pm
%perl_vendor_autolib/PDL/FFT

%files FFTW
%perl_vendor_archlib/PDL/FFTW.pm
%perl_vendor_autolib/PDL/FFTW

%files Graphics-TriD
%dir %perl_vendor_archlib/PDL/Graphics
%dir %perl_vendor_autolib/PDL/Graphics
# drop dependency on Tk
%add_findreq_skiplist %perl_vendor_archlib/PDL/Graphics/TriD/Tk.pm
%perl_vendor_archlib/PDL/Graphics/TriD*
%perl_vendor_autolib/PDL/Graphics/TriD*
%perl_vendor_archlib/PDL/Graphics/OpenGL*
%perl_vendor_autolib/PDL/Graphics/OpenGL*
%perl_vendor_archlib/PDL/Graphics/VRML*

%files Graphics-IIS
%dir %perl_vendor_archlib/PDL
%dir %perl_vendor_archlib/PDL/Graphics
%perl_vendor_archlib/PDL/Graphics/IIS.pm
%dir %perl_vendor_autolib/PDL/Graphics
%perl_vendor_autolib/PDL/Graphics/IIS

%files Graphics-LUT
%dir %perl_vendor_archlib/PDL/Graphics
%perl_vendor_archlib/PDL/Graphics/LUT.pm
%dir %perl_vendor_archlib/PDL/Graphics/LUT
%perl_vendor_archlib/PDL/Graphics/LUT/ramps
%perl_vendor_archlib/PDL/Graphics/LUT/tables

%files Image2D
%perl_vendor_archlib/PDL/Image2D.pm
%perl_vendor_autolib/PDL/Image2D

%files ImageND
%perl_vendor_archlib/PDL/ImageND.pm
%perl_vendor_autolib/PDL/ImageND

%files Inline
%dir %perl_vendor_archlib/Inline
%perl_vendor_archlib/Inline/*.pm

%files IO-Pnm
%perl_vendor_archlib/PDL/ImageRGB.pm
%perl_vendor_autolib/PDL/ImageRGB
%dir %perl_vendor_archlib/PDL/IO
%perl_vendor_archlib/PDL/IO/Pic.pm
%perl_vendor_archlib/PDL/IO/Pnm.pm
%dir %perl_vendor_autolib/PDL/IO
%perl_vendor_autolib/PDL/IO/Pnm

%files IO-Storable
%dir %perl_vendor_archlib/PDL/IO
%perl_vendor_archlib/PDL/IO/Storable.pm
%dir %perl_vendor_autolib/PDL/IO
%perl_vendor_autolib/PDL/IO/Storable

%files Slatec
%dir %perl_vendor_archlib/PDL/Filter
%perl_vendor_archlib/PDL/Filter/LinPred.pm
%dir %perl_vendor_archlib/PDL/Fit
%perl_vendor_archlib/PDL/Fit/Linfit.pm
%perl_vendor_archlib/PDL/Fit/LM.pm
%perl_vendor_archlib/PDL/Fit/Polynomial.pm
%perl_vendor_archlib/PDL/Gaussian.pm
%perl_vendor_archlib/PDL/Matrix.pm
%perl_vendor_archlib/PDL/Slatec.pm
%perl_vendor_autolib/PDL/Slatec
# these do not require Slatec
%perl_vendor_archlib/PDL/Filter/Linear.pm
%perl_vendor_archlib/PDL/Fit/Gaussian.pm
%perl_vendor_autolib/PDL/Fit/Gaussian

%files Transform
%perl_vendor_archlib/PDL/Transform.pm
%perl_vendor_autolib/PDL/Transform

%files Transform-Cartography
%dir %perl_vendor_archlib/PDL/Transform
%perl_vendor_archlib/PDL/Transform/Cartography.pm
%dir %perl_vendor_archlib/PDL/Transform
%dir %perl_vendor_archlib/PDL/Transform/Cartography
%perl_vendor_archlib/PDL/Transform/Cartography/*.*

#%files perldl

# %_bindir/perldl
#%dir %perl_vendor_archlib/PDL
# %perl_vendor_archlib/PDL/default.perldlrc
#%dir %perl_vendor_archlib/PDL/Demos
# %perl_vendor_archlib/PDL/Demos/*.pm
#%exclude %perl_vendor_archlib/PDL/Demos/*BAD*.pm

# TODO

# - build IO-Browser (2D data browser for PDL)
# - fix libgsl bingins
# - consider BADVAL support
# - use slatec shared library

%changelog

Полный changelog можно просмотреть здесь

 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin