File python-pypar.spec of Package python-pypar

#
# spec file for package python-pypar
#
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


%define modname pypar
Name:           python-%{modname}
Version:        2.1.4_94
Release:        0
License:        GPL-3.0
Summary:        Parallel Python, no-frills MPI interface
Url:            http://code.google.com/p/%{modname}/
Group:          Development/Libraries/Python
Source0:        http://%{modname}.googlecode.com/files/%{modname}-%{version}.tgz
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildRequires:  openmpi-devel
BuildRequires:  python-devel
BuildRequires:  python-imaging
BuildRequires:  python-numpy-devel
BuildRequires:  rsh
Requires:       openmpi
Requires:       python-imaging
Requires:       python-numpy
%py_requires

%description
The python module pypar.py and the C-extension mpi.c
implement scalable parallelism on distributed and shared
memory architectures using the essential subset of
the Message Passing Interface (MPI) standard.

FEATURES

- Python interpreter is not modified:
  Parallel python programs need only import the pypar module.

- Flexibility: Pypar allows communication of general Python objects
  of any type.

- Intuitive API:
  The user need only specify what to send and to which processor.
  Pypar takes care of details about
  data types and MPI specifics such as tags, communicators and buffers.
  Receiving is analogous.

- Efficiency:
  Full bandwidth of C-MPI programs is achieved for consecutive Numerical
  arrays. Latency is less than twice that of pure C-MPI programs.
  Test programs to verify this are included (pytiming, ctiming.c)

- Lightweight:
  Pypar consists of just two files: mpiext.c and pypar.py

%prep
%setup -n %{modname}_%{version}

%build
cd source
export CFLAGS="%{optflags}"
python setup.py build
cd ..

%install
cd source
python setup.py install --prefix=%{_prefix} --root=%{buildroot} --record=INSTALLED_FILES
cd ..

%clean
rm -rf %{buildroot}

%files -f source/INSTALLED_FILES
%defattr(-,root,root)
%doc LICENSE documentation/DOC documentation/FAQ 
%dir %{py_sitedir}/%{modname}

%changelog
openSUSE Build Service is sponsored by