File hdf5.spec of Package hdf5

#
# spec file for package hdf5 (Version 1.8.2)
#
# Copyright (c) 2009 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/
#

# norootforbuild


Name:           hdf5
Version:        1.8.2
Release:        3
Summary:        Hierarchical Data File Format Version 5
License:        Apache-like
Group:          Development/Libraries/Parallel
Url:            http://www.hdfgroup.org/HDF5/
Source0:        %{name}-%{version}.tar.bz2
Patch0:         %{name}-%{version}-gcc4.patch
Patch2:         %{name}-%{version}-signal.patch
Patch3:         %{name}-%{version}-build.patch
Patch4:         %{name}-%{version}-noreturn.patch
Patch5:         %{name}-%{version}-lib64.patch
Patch6:         %{name}-%{version}-gcc44-O3.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
AutoReqProv:    On
BuildRequires:  fdupes gcc-c++ gcc-fortran krb5-devel openssl-devel zlib-devel
Requires:       libhdf5-0 >= %{version} libhdf5_hl0 >= %{version}

%description
The HDF project involves the development and support of software and
file formats for scientific data management. The HDF software includes
I/O libraries and tools for analyzing, visualizing, and converting
scientific data.



Authors:
--------
    University of Illinois, HDF group
    helpdesk@hdfgroup.org

%package -n libhdf5-0

Summary:        Hierarchical Data File Format Version 5
Group:          Development/Libraries/Parallel

%description -n libhdf5-0
The HDF project involves the development and support of software and
file formats for scientific data management. The HDF software includes
I/O libraries and tools for analyzing, visualizing, and converting
scientific data.



Authors:
--------
    University of Illinois, HDF group
    helpdesk@hdfgroup.org

%package -n libhdf5_hl0

Summary:        Hierarchical Data File Format Version 5
Group:          Development/Libraries/Parallel

%description -n libhdf5_hl0
The HDF project involves the development and support of software and
file formats for scientific data management. The HDF software includes
I/O libraries and tools for analyzing, visualizing, and converting
scientific data.



Authors:
--------
    University of Illinois, HDF group
    helpdesk@hdfgroup.org

%package devel

Summary:        Hierarchical Data File Format Version 5
Group:          Development/Libraries/Parallel
Requires:       libhdf5-0 = %{version} libhdf5_hl0 = %{version}

%description devel
The HDF project involves the development and support of software and
file formats for scientific data management. The HDF software includes
I/O libraries and tools for analyzing, visualizing, and converting
scientific data.



Authors:
--------
    University of Illinois, HDF group
    helpdesk@hdfgroup.org

%prep
%setup -q
%patch0
%patch2 -p1
%patch3
%patch4
%patch5
%patch6

%build
export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" 
export CPPFLAGS="$RPM_OPT_FLAGS"
export F9X=gfortran CXX=g++
%configure --with-ssl --enable-cxx --enable-fortran \
           --with-pthread --disable-static --with-pic
%{__make} %{?jobs:-j%jobs}

%install
%makeinstall docdir=${RPM_BUILD_ROOT}%{_docdir}
rm -rf $RPM_BUILD_ROOT/%{_libdir}/*.la $RPM_BUILD_ROOT/%{_libdir}/*.settings
#Fortran modules
mkdir -p ${RPM_BUILD_ROOT}%{_libdir}/gfortran/modules
mv ${RPM_BUILD_ROOT}%{_includedir}/*.mod ${RPM_BUILD_ROOT}%{_libdir}/gfortran/modules/
%fdupes -s $RPM_BUILD_ROOT%{_datadir}

%clean
rm -rf $RPM_BUILD_ROOT

%post -n libhdf5-0 -p /sbin/ldconfig

%postun -n libhdf5-0 -p /sbin/ldconfig

%post -n libhdf5_hl0 -p /sbin/ldconfig

%postun -n libhdf5_hl0 -p /sbin/ldconfig

%files
%defattr(-,root,root,-)
%doc COPYING MANIFEST README.txt release_docs/RELEASE.txt release_docs/HISTORY-1_0-1_8_0_rc3.txt release_docs/HISTORY-1_8.txt
%{_bindir}/gif2h5
%{_bindir}/h52gif
%{_bindir}/h5debug
%{_bindir}/h5diff
%{_bindir}/h5dump
%{_bindir}/h5import
%{_bindir}/h5jam
%{_bindir}/h5ls
%{_bindir}/h5repack
%{_bindir}/h5repart
%{_bindir}/h5unjam
%{_bindir}/h5copy
%{_bindir}/h5mkgrp
%{_bindir}/h5perf_serial
%{_bindir}/h5stat

%files -n libhdf5-0
%defattr(0755,root,root) 
%{_libdir}/libhdf5.so.*
%{_libdir}/libhdf5_cpp.so.*
%{_libdir}/libhdf5_fortran.so.*

%files -n libhdf5_hl0
%defattr(0755,root,root) 
%{_libdir}/libhdf5_hl.so.*
%{_libdir}/libhdf5_hl_cpp.so.*
%{_libdir}/libhdf5hl_fortran.so.*

%files devel
%defattr(-,root,root,-)
%{_bindir}/h5c++
%{_bindir}/h5cc
%{_bindir}/h5redeploy
%{_includedir}/*.h
%{_libdir}/*.so
%{_bindir}/h5fc
%dir %{_libdir}/gfortran
%dir %{_libdir}/gfortran/modules
%{_libdir}/gfortran/modules/*.mod

%changelog
* Thu May 07 2009 pgajdos@suse.cz
- fixed build with new gcc, see [bnc#501751]
* Mon Mar 02 2009 crrodriguez@suse.de
- save 9MB removing static libraries
* Tue Jan 13 2009 pgajdos@suse.cz
- updated to 1.8.2:
        - Upgraded libtool to version 2.2.6a. (MAM - 2008/10/15).
	- Added two new public routines: H5Pget_elink_fapl() and
  H5Pset_elink_fapl(). (see bug #1247) (VC - 2008/10/13)
        - Improved free space tracking in file to be faster. (QAK - 2008/10/06)
        - Added 'mounted' field to H5G_info_t struct. (QAK - 2008/07/15)
        - h5repack: added new options -u and -b to add a userblock to an HDF5
  file during the repack.  (PVN - 2008/08/26)
        - h5repack: added options -t and -a to call H5Pset_alignment while
  creating a repacked file. (PVN - 2008/08/29)
        - h5ls: added capability to traverse through external links when the -r
  (recursive) flag is given. (NAF - 2008/09/16)
        - h5ls: added -E option to enable traversal of external links.
  h5ls will not traverse external links without this flag being set.
  (NAF - 2008/10/06)
        - h5dump: when -b flag is used without a keyword after it, binary
  output defaults to NATIVE. MEMORY keyword was deprecated
  and replaced by NATIVE keyword. (PVN - 2008/10/30)
        - h5diff: returns 1 when file graphs differ by any object.
  Error return code was changed to 2 from -1.  (PVN - 2008/10/30)
        - h5import: TEXTFPE (scientific format) was deprecated. Use TEXTFP
  instead (PVN - 2008/10/30)
         - Added optional parameter 'mounted' to H5Gget_info_f,
  H5Gget_info_by_idx_f, H5Gget_info_by_name_f (MSB - 2008/09/24)
	 - Added H5Tget_native_type_f (MSB - 2008/09/30)
        - These member functions were added as wrapper for H5Rdereference to
  replace the incorrect IdComponent::dereference().
  void H5Object::dereference(H5Object& obj, void* ref,
  H5R_type_t ref_type=H5R_OBJECT)
  void H5Object::dereference(H5File& h5file, void* ref,
  H5R_type_t ref_type=H5R_OBJECT)
  void H5Object::dereference(Attribute& obj, void* ref,
  H5R_type_t ref_type=H5R_OBJECT)
  In addition, these constructors were added to create the associated
  objects by way of dereference:
  DataSet(H5Object& obj, void* ref, H5R_type_t ref_type=H5R_OBJECT)
  DataSet(H5File& file, void* ref, H5R_type_t ref_type=H5R_OBJECT)
  DataSet(Attribute& attr, void* ref, H5R_type_t ref_type=H5R_OBJECT)
  Group(H5Object& obj, void* ref, H5R_type_t ref_type=H5R_OBJECT)
  Group(H5File& obj, void* ref, H5R_type_t ref_type=H5R_OBJECT)
  Group(Attribute& attr, void* ref, H5R_type_t ref_type=H5R_OBJECT)
  DataType(H5Object& obj, void* ref, H5R_type_t ref_type=H5R_OBJECT)
  DataType(H5File& file, void* ref, H5R_type_t ref_type=H5R_OBJECT)
  DataType(Attribute& attr, void* ref, H5R_type_t ref_type=H5R_OBJECT)
  (BMR - 2008/10/29)
- removed destdir.patch
* Mon Jan 12 2009 pgajdos@suse.cz
- fortran modules builds from now [bnc#457593]
* Tue Nov 11 2008 pgajdos@suse.cz
- fixing build of fortran interface moved to the future
* Wed Jul 02 2008 pgajdos@suse.cz
- updated to 1.8.1 [bnc#401626]
  * Enhanced group object management
  * Enhanced attribute management and more efficient meta data handling
  * Expanded datatype features
  * Creation order tracking and indexing
  * Improved meta data caching and cache control
  * UTF-8 encoding
  * New I/O filters: n-bit and scale+offset compression
  * New link (H5L) and object (H5O) interfaces and features
  * External and user-defined links
  * New high-level APIs:
  HDF5 Packet Table (H5PT) and HDF5 Dimension Scale (H5DS)
  * C++ and Fortran interfaces for older high-level APIs:
  H5Lite (H5LT), H5Image (H5IM), and H5Table (H5TB)
  *  New and improved tools
- removed doc package (doc/html no longer provided with package)
- octave builds againist 1.6 compatibility stuff
* Wed May 07 2008 pgajdos@suse.cz
- repaired no-return-in-nonvoid-function
  (noreturn.patch)
* Mon Apr 28 2008 pgajdos@suse.cz
- repaired build for
  * ia64 (%%ifarch in hdf5.spec)
  * s390, s390x (s390.patch)
* Tue Mar 25 2008 pgajdos@suse.cz
- package moved from BS, project science
- needed by octave 3.0
openSUSE Build Service is sponsored by