File yacas.spec of Package yacas

# spec file for package yacas
# Copyright (c) 2007-2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2014 SUSE LINUX 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

Name:           yacas
Version:        1.3.6
Release:        1
License:        LGPL-2.0+
Summary:        An easy to use, general purpose Computer Algebra System
Group:          Productivity/Scientific/Math
BuildRequires:  dejagnu
BuildRequires:  fltk-devel
BuildRequires:  gcc-c++
BuildRequires:  gnuplot
BuildRequires:  gperf
BuildRequires:  gsl-devel
BuildRequires:  libtool
BuildRequires:  readline-devel
BuildRequires:  gzip 
%if 0%{?suse_version}
BuildRequires:  update-desktop-files
BuildRequires:  desktop-file-utils
# lynx is defined as help browser in /usr/share/yacas/yacasinit.ys
Requires:       lynx
BuildRequires:  gcc-fortran
# needed BuildRequires for proteus
BuildRequires:  xorg-x11-devel
BuildRequires:  texlive-latex
%if 0%{?suse_version}
BuildRequires:  libbz2-1
BuildRequires:  termcap
BuildRequires:  xorg-x11-libX11-devel
BuildRequires:  xorg-x11-libXext-devel
BuildRequires:  xorg-x11-libXmu-devel
BuildRequires:  xorg-x11-libXt-devel
BuildRequires:  xorg-x11-libs
%if 0%{?suse_version} > 1220 || 0%{?fedora}
BuildRequires:  texlive-amsfonts
BuildRequires:  texlive-makeindex
BuildRequires:  texlive-dvips
%if 0%{?fedora}
BuildRequires:  texlive
BuildRequires:  bzip2-libs 
BuildRequires:  ncurses-devel 
BuildRequires:  libX11-devel
BuildRequires:  libXext-devel
BuildRequires:  libXmu-devel
BuildRequires:  libXt-devel
# Fix files-duplicate
BuildRequires:  fdupes
Source:         %{name}-%{version}.tar.bz2
Source2:        yacaslogo.xpm
Source3:        yacas.desktop
Source4:        yacas-rpmlintrc
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
#PATCH-FIX-UPSTREAM Fix incorrect fsf address
Patch1:         yacas-incorrect-fsf-address.patch

YACAS is an easy to use, general purpose Computer Algebra System, a
program for symbolic manipulation of mathematical expressions.

It uses its own programming language designed for symbolic as well as
arbitrary-precision numerical computations.

The system has a library of scripts that implement many of the symbolic
algebra operations; new algorithms can be easily added to the library.

YACAS comes with extensive documentation (320+ pages) covering the
scripting language, the functionality that is already implemented in
the system, and the algorithms we used.

%package devel
Summary:        Development package for YACAS based software
Group:          Development/Languages/Other
Requires:       %{name} = %{version}
Requires:       Mesa
Requires:       glibc-devel
Requires:       gsl-devel
Requires:       xorg-x11-devel
%if 0%{?suse_version}
Requires:       xorg-x11-libICE-devel
Requires:       xorg-x11-libSM-devel
Requires:       xorg-x11-libX11-devel
Requires:       xorg-x11-libXau-devel
Requires:       xorg-x11-libXext-devel
Requires:       xorg-x11-libXmu-devel
Requires:       xorg-x11-libXt-devel
Requires:       xorg-x11-libxcb-devel
Requires:       libICE-devel 
Requires:       libSM-devel  
Requires:       libX11-devel 
Requires:       libXau-devel 
Requires:       libXext-devel
Requires:       libXmu-devel
Requires:       libXt-devel
Requires:       libxcb-devel

%description devel
This package contains the header files and libraries needed to develop
programs that use YACAS.

%package doc
Summary:        Additional YACAS documentation
Group:          Productivity/Scientific/Math

%description doc
This package contains additional documentation and the books in pdf
format available for YACAS.

%setup -q
%patch1 -p1

%configure \
           --disable-static \
           --with-html-dir=%{_defaultdocdir}/%{name}/html \
           --enable-ps-doc \
           --with-ps-dir=%{_defaultdocdir}/%{name}/ps \
           --enable-pdf-doc \
           --with-pdf-dir=%{_defaultdocdir}/%{name}/pdf \
make %{?_smp_mflags}

make test

make DESTDIR=%{buildroot} install
rm %{buildroot}/%{_libdir}/
# install documentation
install -d -m 755 %{buildroot}%{_defaultdocdir}/%{name}/{html,pdf,ps}
install -m 644 AUTHORS COPYING ChangeLog README* TODO %{buildroot}%{_defaultdocdir}/%{name}
install -m 644 manmake/*.pdf %{buildroot}/%{_defaultdocdir}/%{name}/pdf
test -f %{buildroot}%{_datadir}/%{name}/documentation/hints &&  \
mv %{buildroot}{%_datadir/%name/documentation/hints,%_defaultdocdir/%{name}/html/}
# install desktop entry
install -D -m 644 %{SOURCE2} %{buildroot}%{_datadir}/pixmaps/yacaslogo.xpm
install -D -m 644 %{SOURCE3} %{buildroot}%{_datadir}/applications/yacas.desktop

%if 0%{?suse_version}
%suse_update_desktop_file %{name}
desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop
# Fix files-duplicate
%fdupes -s %{buildroot}%{_datadir}

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

rm -rf %{buildroot};

%exclude %{_defaultdocdir}/%{name}/html
%exclude %{_defaultdocdir}/%{name}/pdf
%exclude %{_defaultdocdir}/%{name}/ps

%files devel

%files doc

openSUSE Build Service is sponsored by