Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > by-pkgid > 727fe24b73551a1fa1df66cfc5d330da > files > 6

HDF-4.1r5-5mdk.src.rpm

Summary:	Hierarchical Data Format Library
Name:		HDF
Version:	4.1r5
Release:	5mdk
License:	BSD-like (see COPYING)
Group:		Development/C
Source:		ftp://hdf.ncsa.uiuc.edu/HDF/HDF/HDF_Current/%{name}%{version}.tar.bz2
Patch0:		%{name}4.1r4-proto.patch.bz2
Patch1:		HDF-fix-stupid-cpp.patch.bz2
Patch2:		HDF-bigendian.patch.bz2
Patch3:		HDF-ppc.patch.bz2
Patch4:		HDF-ia64.patch.bz2
Patch5:		HDF-zlib-zfree.patch.bz2
Patch6:		HDF4.1r5-libm.patch.bz2
Patch7:		HDF4.1r5-x86_64.patch.bz2
Patch8:		HDF4.1r5-system-libs.patch.bz2
Patch9:		HDF4.1r5-emul-uncompress.patch.bz2
Patch10:	HDF4.1r5-ia64.patch.bz2
URL:		http://hdf.ncsa.uiuc.edu
BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root
BuildRequires:	byacc flex gcc-g77 groff
BuildRequires:	zlib-devel libjpeg-devel
Provides:	HDF-devel

%description
HDF is a multi-object file format that facilitates the transfer of various
types of scientific data between machines and operating systems. 
HDF allows self-definitions of data content and easy extensibility for
future enhancements or compatibility with other standard formats.
HDF includes Fortran and C calling interfaces, and utilities to
prepare raw image of data files or for use with other NCSA software.

The HDF library contains interfaces for storing and retrieving compressed or
uncompressed 8-bit and 24=bit raster images with palettes,
n-Dimensional scientific datasets and binary tables. AN interface is also
included that allows arbitrary grouping of other HDF objects.

%package util
Summary:	HDF utilities and test data files
Group:		Graphics

%description util
This package contains utilities for HDF data manipulation and
test data files.

%prep
%setup -q -n %{name}%{version}
%patch -p1
%patch1 -p1
%ifarch ppc
%patch2 -p1 -b .bigend
%patch3 -p1 -b .ppc
%endif
%patch4 -p1 -b .ia64old
%patch5 -p1 -b .zlib
%patch6 -p1 -b .libm
%patch7 -p1 -b .x86_64
%patch8 -p1 -b .system-libs
%patch9 -p1 -b .emul-uncompress
%patch10 -p1 -b .ia64

# Let it recognize x86-64
libtoolize --copy --force
for file in $(find hdf -name config.guess -o -name config.sub); do
  cp -p ${file##*/} $file
done

# Make it lib64 aware
find . -name Makefile.in | \
  xargs perl -pi -e "s,^(libdir|LIBDIR)\s+=.+,\1 = \\\$(prefix)/%{_lib},"

%build
# Build with PIC in case static library is built into a DSO afterwards
%ifarch ia64 x86_64
export RPM_OPT_FLAGS="$RPM_OPT_FLAGS -DPIC -fPIC"
%endif
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" \
%ifarch ppc
	./configure --prefix=%{_prefix} i386-unknown-linux
%else
	./configure --prefix=%{_prefix}
%endif
make CFLAGS="$RPM_OPT_FLAGS -ansi -D_BSD_SOURCE" FFLAGS="$RPM_OPT_FLAGS"

echo ====================TESTING=========================
make CFLAGS="$RPM_OPT_FLAGS -ansi -D_BSD_SOURCE" FFLAGS="$RPM_OPT_FLAGS" \
%ifarch ia64
  test -k || echo make test failed
%else
  test
%endif
echo ====================TESTING END=====================

mkdir -p samples
cp -a hdf/util/testfiles/* samples

%install
rm -rf $RPM_BUILD_ROOT
%makeinstall
# remove files already provided by other packages (libjpeg, netcdf, zlib)
rm -f $RPM_BUILD_ROOT%{_includedir}/{jconfig.h,jerror.h,jmorecfg.h,jpeglib.h} \
    $RPM_BUILD_ROOT%{_includedir}/{zconf.h,zlib.h} \
    $RPM_BUILD_ROOT%{_bindir}/{ncdump,ncgen} \
    $RPM_BUILD_ROOT%{_includedir}/netcdf.{h,inc,f90}
mv -f $RPM_BUILD_ROOT%{_bindir}/vmake $RPM_BUILD_ROOT%{_bindir}/vmake-hdf
mkdir -p $RPM_BUILD_ROOT%{_datadir}/hdf
cp -aR samples $RPM_BUILD_ROOT%{_datadir}/hdf/

# remove unpackaged files
rm -f $RPM_BUILD_ROOT%{_prefix}/man/man1/nc{gen,dump}.1*

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root)
%doc COPYING README
%{_libdir}/libdf.a
%{_libdir}/libmfhdf.a
%{_includedir}/*
%{_mandir}/*/*

%files util
%defattr(-,root,root)
%doc COPYING README
%dir %{_datadir}/hdf
%dir %{_datadir}/hdf/samples
%{_bindir}/*
%attr(644,root,root) %{_datadir}/hdf/samples/*

%changelog
* Sun Dec  8 2002 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 4.1r5-5mdk
- Patch7: Add support for x86-64
- Patch8: Use system libraries (zlib, libjpeg)
- Patch9: Get rid of use of uncompress that we no longer provide
- Patch10: Fix IA-64 support, now only two tests fail, which is much better

* Tue May 07 2002 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 4.1r5-4mdk
- Automated rebuild in gcc3.1 environment

* Sat Apr 27 2002 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 4.1r5-3mdk
- Patch6: Fix build with gcc-3.1:
  - mfhdf/nctest/Makefile.in (LIBS): Add -lm since vardefs.c uses
    fabs() which resides in math library.
  - mfhdf/dumper/Makefile.in (LIBS): Likewise because of hdp_dump.c.
  - hdf/util/Makefile.in (fp2hdf): New rule, and link it with -lm

* Wed Feb 20 2002 Giuseppe Ghibò <ghibo@mandrakesoft.com> 4.1r5-2mdk
- added Guillaume's zlib patch.

* Sat Feb 02 2002 Giuseppe Ghibò <ghibo@mandrakesoft.com> 4.1r5-1mdk
- bumped to 4.1r5.

* Sun Sep 09 2001 Stefan van der Eijk <stefan@eijk.nu> 4.1r4-9mdk
- BuildRequires: flex groff

* Tue Jun 26 2001 Matthias Badaire <mbadaire@mandrakesoft.com> 4.1r4-8mdk
- fix ia64 config file : replace f90 with g77

* Mon Jun 25 2001 Giusepp Ghibò <ghibo@mandrakesoft.com> 4.1r4-7mdk
- added gcc-g77 in BuildRequires (thanks Jeff).
 
* Sat Jun 23 2001 Giuseppe Ghibò <ghibo@mandrakesoft.com> 4.1r4-6mdk
- added attempt patch for PPC (bigendian) arch.

* Mon May 21 2001 Jeff Garzik <jgarzik@mandrakesoft.com> 4.1r4-5mdk
- BuildRequires: byacc
- fix rpmlint warnings

* Sun May 13 2001 Stefan van der Eijk <stefan@eijk.nu> 4.1r4-4mdk
- pass same CFLAGS and FFLAGS to make test

* Fri Apr 20 2001 Francis Galiegue <fg@mandrakesoft.com> 4.1r4-3mdk
- Add -fPIC to CFLAGS...
- Patch1: fix braindead cpp directives.
- Don't run make test on ia64 :(

* Wed Jan 03 2001 David BAUDENS <baudens@mandrakesoft.com> 4.1r4-2mdk
- ExcludeArch: ppc.

* Tue Dec 26 2000 Giuseppe Ghibbò <ghibo@mandrakesoft.com> 4.1r4-1mdk
- initial release for OpenDX building.