Sophie

Sophie

distrib > Mandriva > 2007.0 > x86_64 > by-pkgid > a972f1137792ef403ff6e5bedac5c9e9 > files > 4

octave-2.1.73-2mdv2007.0.src.rpm

%define version 2.1.73

Summary:	GNU Octave -- a high-level language for numerical computations
Name:		octave
Version:	%{version}
Release:	%mkrel 2
License:	GPL
Group:		Sciences/Mathematics
Source0:	ftp://ftp.octave.org/pub/octave/%{name}-%{version}.tar.bz2
Source4:	octave-2.1.36-emac.lisp.bz2
Patch1:		octave-2.1.63-insecure-tempfile.patch.bz2
URL:		http://www.octave.org/
BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-buildroot
# (Abel) If you want atlas support, install atlas noarch RPM, then
# go to /usr/src/ATLAS and build the library. After that, rebuild
# this RPM and you are done. Feel like using Gentoo?
BuildRequires:	libblas-devel
BuildRequires:	liblapack-devel

BuildRequires:	dejagnu
BuildRequires:	emacs
BuildRequires:	emacs-bin
BuildRequires:	fftw-devel >= 0:3.0.1
BuildRequires:	gcc-gfortran
BuildConflicts:	gcc3.3-g77
BuildConflicts: gcc3.3-c++
BuildConflicts:	gcc3.3
BuildRequires:	gnuplot
BuildRequires:	hdf5-devel
BuildRequires:	ncurses-devel
BuildRequires:	readline-devel
BuildRequires:	tetex-dvips
BuildRequires:	tetex-latex
BuildRequires:	texinfo
# (Abel) not strictly needed, but play safe
BuildRequires:	gperf
BuildRequires:	flex
BuildRequires:	bison

Requires:	gnuplot
%ifarch x86_64
Requires:	lib64hdf5_0
%else
Requires:	libhdf5_0
%endif

%description
GNU Octave is a high-level language, primarily intended for numerical
computations. It provides a convenient command line interface for
solving linear and nonlinear problems numerically, and for performing
other numerical experiments using a language that is mostly compatible
with Matlab. It may also be used as a batch-oriented language.

Octave has extensive tools for solving common numerical linear algebra
problems, finding the roots of nonlinear equations, integrating
ordinary functions, manipulating polynomials, and integrating ordinary
differential and differential-algebraic equations. It is easily
extensible and customizable via user-defined functions written in
Octave's own language, or using dynamically loaded modules written in
C++, C, Fortran, or other languages.

%package	doc
Summary:	Documentation for Octave, a numerical computational language
Group:		Sciences/Mathematics

%description	doc
GNU Octave is a high-level language, primarily intended for numerical
computations. It provides a convenient command line interface for
solving linear and nonlinear problems numerically, and for performing
other numerical experiments using a language that is mostly compatible
with Matlab. It may also be used as a batch-oriented language.

This package contains documentation of Octave in various formats.

%prep
%setup -q
%patch1 -p1 -b .tempfile

%build
export CC=gcc
export CXX=g++
export F77=gfortran
CFLAGS="$RPM_OPT_FLAGS -fno-fast-math" \
CXXFLAGS="$RPM_OPT_FLAGS -fno-fast-math" \
FFLAGS="$RPM_OPT_FLAGS -fno-fast-math" \
%configure2_5x \
	--enable-dl \
	--enable-shared \
	--enable-lite-kernel \
	--enable-picky-flags
%make
# (Abel) for some unknown reason linalg test took infinite time
#make check

# emacs mode
bzcat %SOURCE4 > octave.el
emacs -batch -q -no-site-file -f batch-byte-compile %name.el

%install
rm -rf $RPM_BUILD_ROOT
%makeinstall_std
find $RPM_BUILD_ROOT -name "*.oct" -print0 | xargs -0 -r strip --strip-unneeded

mkdir -p $RPM_BUILD_ROOT/%_sysconfdir/emacs/site-start.d/
install -m 644 %name.elc $RPM_BUILD_ROOT/%_sysconfdir/emacs/site-start.d/%name.elc
install -m 644 %name.el  $RPM_BUILD_ROOT/%_sysconfdir/emacs/site-start.d/

# prepare documentation
rm -rf package-doc
mkdir package-doc

mkdir package-doc/interpreter
ln doc/interpreter/*.html package-doc/interpreter/

mkdir package-doc/liboctave
ln doc/liboctave/*.html package-doc/liboctave/

mkdir package-doc/faq
ln doc/faq/*.html package-doc/faq/

mkdir package-doc/examples
ln examples/[[:lower:]]* package-doc/examples/

install -m 644 doc/liboctave/liboctave.info $RPM_BUILD_ROOT%{_infodir}/
install -m 644 doc/faq/Octave-FAQ.info $RPM_BUILD_ROOT%{_infodir}/

%multiarch_includes $RPM_BUILD_ROOT%{_includedir}/octave-%{version}/octave/config.h
%multiarch_includes $RPM_BUILD_ROOT%{_includedir}/octave-%{version}/octave/Array.h
%multiarch_includes $RPM_BUILD_ROOT%{_includedir}/octave-%{version}/octave/defaults.h
%multiarch_includes $RPM_BUILD_ROOT%{_includedir}/octave-%{version}/octave/dim-vector.h
%multiarch_includes $RPM_BUILD_ROOT%{_includedir}/octave-%{version}/octave/lo-sstream.h
%multiarch_includes $RPM_BUILD_ROOT%{_includedir}/octave-%{version}/octave/lo-utils.h
%multiarch_includes $RPM_BUILD_ROOT%{_includedir}/octave-%{version}/octave/oct-cmplx.h
%multiarch_includes $RPM_BUILD_ROOT%{_includedir}/octave-%{version}/octave/pathsearch.h
%multiarch_includes $RPM_BUILD_ROOT%{_includedir}/octave-%{version}/octave/str-vec.h


%clean
rm -rf $RPM_BUILD_ROOT

%post
%_install_info octave.info

%preun
%_remove_install_info octave.info

%post doc
%_install_info liboctave.info
%_install_info Octave-FAQ.info

%preun doc
%_remove_install_info liboctave.info
%_remove_install_info Octave-FAQ.info

%files
%defattr(-,root,root)
%doc BUGS COPYING NEWS* PROJECTS README README.Linux ChangeLog ROADMAP SENDING-PATCHES THANKS

%{_bindir}/*
%{_libdir}/octave/
%{_includedir}/%name-%version
%{_datadir}/octave
%{_libexecdir}/%name-%version
%{_mandir}/man?/*
%{_infodir}/octave.*
%config(noreplace) %_sysconfdir/emacs/site-start.d/octave.el*

%multiarch %{multiarch_includedir}/octave-*/octave/config.h
%multiarch %{multiarch_includedir}/octave-*/octave/Array.h
%multiarch %{multiarch_includedir}/octave-*/octave/defaults.h
%multiarch %{multiarch_includedir}/octave-*/octave/dim-vector.h
%multiarch %{multiarch_includedir}/octave-*/octave/lo-sstream.h
%multiarch %{multiarch_includedir}/octave-*/octave/lo-utils.h
%multiarch %{multiarch_includedir}/octave-*/octave/oct-cmplx.h
%multiarch %{multiarch_includedir}/octave-*/octave/pathsearch.h
%multiarch %{multiarch_includedir}/octave-*/octave/str-vec.h


%files doc
%defattr(-,root,root)
%doc doc/refcard/refcard-a4.pdf
%doc package-doc/*
%{_infodir}/liboctave.*
%{_infodir}/Octave-FAQ.*

%changelog
* Sat Jul 22 2006 Giuseppe Ghibò <ghibo@mandriva.com> 2.1.73-2mdv2007.0
- Fixed libhdf5 dep on X86-64.
- Use gfortran.

* Tue Apr 18 2006 David Walluck <walluck@mandriva.org> 2.1.73-1mdk
- 2.1.73
- remove PreReq use

* Fri Mar 17 2006 Giuseppe Ghibò <ghibo@mandriva.coM> 2.1.72-1mdk
- 2.1.72.

* Thu Jul 28 2005 Gaetan Lehmann <glehmann@deborah.mandriva.com> 2.1.71-2mdk
- rebuild against new libblas
- BuildRequires liblas3-devel and liblapack-devel

* Wed Jul 20 2005 Nicolas Lécureuil <neoclust@mandriva.org> 2.1.71-1mdk
- New release

* Tue Feb 08 2005 Abel Cheung <deaddog@mandrake.org> 2.1.64-2mdk
- Rebuild against new readline
- multiarch

* Sun Dec 26 2004 Abel Cheung <deaddog@mandrake.org> 2.1.64-1mdk
- New release
- Some instruction on how to add atlas support
- Remove munge-texi, not for public consumption
- Drop external file which actually is inside source
- Split documentation package

* Wed Dec 08 2004 Abel Cheung <deaddog@mandrake.org> 2.1.63-3mdk
- Remove old artifact

* Tue Dec 07 2004 Abel Cheung <deaddog@mandrake.org> 2.1.63-2mdk
- Rebuild to get back binary RPM

* Thu Dec 02 2004 Abel Cheung <deaddog@mandrake.org> 2.1.63-1mdk 
- New version
- Fix BuildRequires and add others
- Fix P1 to use mktemp (the program 'tempfile' is no more)
- No GUI, shouldn't need menu

* Thu Sep 23 2004 Lenny Cartier <lenny@mandrakesoft.com> 2.1.59-1mdk
- 2.1.59

* Tue Jun 29 2004 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.1.57-2mdk
- rebuild for new g++

* Tue Apr 06 2004 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.1.57-1mdk
- new release

* Fri Feb 13 2004 David Walluck <walluck@linux-mandrake.com> 2.1.53-1mdk
- 2.1.53
- add epochs
- move `munge-texi' to %%{_bindir}

* Thu Dec 04 2003 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.1.52-1mdk
- new release

* Mon Aug 11 2003 Buchan Milne <bgmilne@linux-mandrake.com> 2.1.50-2mdk
- rebuild

* Wed Jul 02 2003 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.1.50-1mdk
- new release

* Wed Jun 25 2003 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.1.49-1mdk
- new release

* Tue Apr 29 2003 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.1.44-2mdk
- fix buildrequires

* Tue Feb 04 2003 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.1.44-1mdk
- new release

* Fri Jan 03 2003 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.1.42-1mdk
- new release
- add source url

* Thu Dec 12 2002 Olivier Thauvin <thauvin@aerov.jussieu.fr> 2.1.40-1mdk
- 2.1.40
- remove Patch 2,10,11

* Fri Aug 16 2002 Giuseppe Ghibò <ghibo@mandrakesoft.com> 2.1.36-4mdk
- png icons.
- BuildRequires: tetex-latex.
- use -fno-fast-math.

* Fri Aug 16 2002 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.1.36-3mdk
- rebuild for g++-3.2 new ABI
- s/tar xfvy/%%setup -a2/
- patch 1 : use secure temp file in octave-bug
- patch 2 : update doc
- parallel build
- add emacs mode
- Buildrequires: texinfo, gcc-g77, libf2c0, readline-devel, libncurses-devel,
  gperf, gnuplot, fftw-devel >= 2.1.3, dejagnu
- Quel Qun <kelk1 at sbcglobal dot net> :
	o patch 10: use the right texi2html parameters (Quel Qun)
	o patch 11: transform file-ptr-stream.h from cvs
	o Buildrequires tetex-dvips
	o add doc/interpreter to %%doc

* Wed Jul 24 2002 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.1.36-2mdk
- rebuild for new readline

* Tue May 21 2002 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.1.36-1mdk
- new release

* Fri Apr 12 2002 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.1.35-1mdk
- new release
- add otags(1)

* Wed Aug 22 2001 Lenny Cartier <lenny@mandrakesoft.com> 2.0.16-11mdk
- rebuild

* Mon May 28 2001  Daouda Lo <daouda@mandrakesoft.com> 2.0.16-10mdk
- Buildrequires : egcs-c++
- upload in contribs

* Mon May 28 2001  Daouda Lo <daouda@mandrakesoft.com> 2.0.16-9mdk
- add egcs in builrequires

* Sun May  6 2001 Guillaume Cottenceau <gc@mandrakesoft.com> 2.0.16-8mdk
- rebuild against latest libc++

* Tue Jan 23 2001 Lenny Cartier <lenny@mandrakesoft.com> 2.0.16-7mdk
- build with egcs

* Wed Sep 13 2000 Vincent Saugey <vince@mandrakesoft.com> 2.0.16-6mdk
- Rebuild with r-path (octave lib ont in /usr/lib/)

* Mon Aug 07 2000 Frederic Lepied <flepied@mandrakesoft.com> 2.0.16-5mdk
- automatically added BuildRequires

* Wed Jul 26 2000 Vincent Saugey <vince@mandrakesoft.com> 2.0.16-4mdk
- Macros, BM, add multiple icons sizes

* Wed Apr 12 2000 Vincent Saugey <vince@mandrakesoft.com> 2.0.16-3mdk
- strip oct file
- add menu entry
 
* Tue Mar 21 2000 Vincent Saugey <vince@mandrakesoft.com> 2.0.16-2mdk
- corrected for new groups

* Thu Mar 09 2000 Lenny Cartier <lenny@mandrakesoft.com>
- mandrake build
- v2.0.16

* Fri Oct 23 1998 Jeff Johnson <jbj@redhat.com>
- update to 2.0.13.90

* Thu Jul  9 1998 Jeff Johnson <jbj@redhat.com>
- repackage in powertools.

* Thu Jun 11 1998 Andrew Veliath <andrewtv@usa.net>
- Add %attr, build as user.

* Mon Jun 1 1998 Andrew Veliath <andrewtv@usa.net>
- Add BuildRoot, installinfo, require gnuplot, description from
  Octave's web page, update to Octave 2.0.13.
- Adapt from existing spec file.

* Tue Dec  2 1997 Otto Hammersmith <otto@redhat.com>
- removed libreadline stuff from the file list

* Mon Nov 24 1997 Otto Hammersmith <otto@redhat.com>
- changed configure command to put things in $RPM_ARCH-rehat-linux, 
  rather than genereated one... was causing problems between building 
  on i686 build machine.

* Mon Nov 17 1997 Otto Hammersmith <otto@redhat.com>
- moved buildroot from /tmp to /var/tmp

* Mon Sep 22 1997 Mike Wangsmo <wanger@redhat.com>
- Upgraded to version 2.0.9 and built for glibc system

* Thu May 01 1997 Michael Fulbright <msf@redhat.com>
- Updated to version 2.0.5 and changed to build using a BuildRoot