- prepared for 1.0.13 release
[ginac.git] / GiNaC.spec.in
index d010ee3dd5c762c35f4d004496f41157d2fbfe51..e3aafb746cda81bfc2c7ec64ead199f2d8e30b7b 100644 (file)
@@ -9,54 +9,71 @@ Release: %{release}
 Copyright: GPL
 Group: System Environment/Libraries
 Source: ftp://ftpthep.physik.uni-mainz.de/pub/GiNaC/%{name}-%{version}.tar.gz
-BuildRoot: /tmp/%{name}-buildroot
-Packager: Christian Bauer <Christian.Bauer@uni-mainz.de>
 URL: http://www.ginac.de/
+Packager: Christian Bauer <cbauer@ginac.de>
 Prereq: /sbin/install-info
+BuildRoot: %{_tmppath}/%{name}-root
 Prefix: %{_prefix}
-Docdir: %{prefix}/doc
+
+Requires: cln >= 1.1
 
 %description
 GiNaC (which stands for "GiNaC is Not a CAS (Computer Algebra System)") is an
 open framework for symbolic computation within the C++ programming language.
 
-It includes the ginsh ("GiNaC interactive shell") which provides a simple and
-easy-to-use CAS-like interface to GiNaC for non-programmers.
-
 
 %package devel
-Summary: Libraries, includes and more to develop GiNaC applications
+Summary: GiNaC development libraries and header files
 Group: Development/Libraries
-Requires: %{name}
+Requires: %{name} = %{version}
 
 %description devel
 GiNaC (which stands for "GiNaC is Not a CAS (Computer Algebra System)") is an
 open framework for symbolic computation within the C++ programming language.
 
-This is the libraries, include files and other resources you can use to
-develop GiNaC applications.
+This package contains the libraries, include files and other resources you
+use to develop GiNaC applications.
 
 
-%prep
-rm -rf $RPM_BUILD_ROOT
+%package utils
+Summary: GiNaC-related utilities
+Group: System Environment/Libraries
+Requires: %{name} = %{version}
+
+%description utils
+GiNaC (which stands for "GiNaC is Not a CAS (Computer Algebra System)") is an
+open framework for symbolic computation within the C++ programming language.
+
+This package includes the ginsh ("GiNaC interactive shell") which provides a
+simple and easy-to-use CAS-like interface to GiNaC for non-programmers, and
+the tool "viewgar" which displays the contents of GiNaC archives.
 
+
+%prep
 %setup -q
 
 %build
-CXXFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%{prefix}
-if [ "$SMP" != "" ]; then
-  (make "MAKE=make -k -j $SMP"; exit 0)
-  make
-else
-  make
+CFLAGS=${RPM_OPT_FLAGS} CXXFLAGS=${RPM_OPT_FLAGS} ./configure --prefix=%{_prefix} --mandir=%{_mandir} --infodir=%{_infodir}
+if [ -x /usr/bin/getconf ] ; then
+  NCPU=$(/usr/bin/getconf _NPROCESSORS_ONLN)
+  if [ $NCPU -eq 0 ] ; then
+    NCPU=1
+  fi
+else  
+  NCPU=1
 fi
+PARL=$[ $NCPU + 1 ]
+(make -k -j $PARL; exit 0)
+make
 
 %install
-rm -rf $RPM_BUILD_ROOT
-make prefix=$RPM_BUILD_ROOT/%{prefix} install-strip
+rm -rf ${RPM_BUILD_ROOT}
+make DESTDIR=${RPM_BUILD_ROOT} install
+gzip -9nf ${RPM_BUILD_ROOT}%{_infodir}/ginac.info*
+rm ${RPM_BUILD_ROOT}%{_infodir}/dir
 
 %clean
-rm -rf $RPM_BUILD_ROOT
+rm -rf ${RPM_BUILD_ROOT}
 
 %post
 /sbin/ldconfig
@@ -65,36 +82,45 @@ rm -rf $RPM_BUILD_ROOT
 /sbin/ldconfig
 
 %post devel
-/sbin/install-info %{prefix}/info/ginac.info.gz %{prefix}/info/dir
+/sbin/install-info %{_infodir}/ginac.info.gz %{_infodir}/dir
 
 %preun devel
-/sbin/install-info --delete %{prefix}/info/ginac.info.gz %{prefix}/info/dir
+if [ "$1" = 0 ]; then
+  /sbin/install-info --delete %{_infodir}/ginac.info.gz %{_infodir}/dir
+fi
 
 %files
-%defattr(-, root, root)
+%defattr(-,root,root)
 %doc AUTHORS COPYING ChangeLog NEWS README
-%{prefix}/lib/lib*.so*
-%{prefix}/man/man1/ginsh.1
-%{prefix}/man/man1/viewgar.1
-%{prefix}/bin/ginsh
-%{prefix}/bin/viewgar
+%{_libdir}/*.so.*
 
 %files devel
-%defattr(-, root, root)
-%doc AUTHORS COPYING ChangeLog NEWS README
-%{prefix}/lib/*a
-%{prefix}/include/*
-%{prefix}/info/*
-%{prefix}/man/man1/*-config.1
-%{prefix}/bin/*-config
-%{prefix}/share/doc/%{name}/*
-%{prefix}/share/aclocal/*
+%defattr(-,root,root)
+%{_libdir}/*.a
+%{_libdir}/*.la
+%{_libdir}/*.so
+%{_includedir}/ginac/*.h
+%{_infodir}/*.info*
+%{_mandir}/man1/ginac-config.1*
+%{_bindir}/ginac-config
+%{_datadir}/aclocal/*
+
+%files utils
+%defattr(-,root,root)
+%{_bindir}/ginsh
+%{_bindir}/viewgar
+%{_mandir}/man1/ginsh.1*
+%{_mandir}/man1/viewgar.1*
 
 %changelog
-* Wed Jan 26 2000 Christian Bauer <Christian.Bauer@uni-mainz.de>
+* Thu Nov  1 2001 Christian Bauer <Christian.Bauer@uni-mainz.de>
+- moved ginsh and viewgar to "utils" package
+
+* Thu Oct  5 2000 Christian Bauer <Christian.Bauer@uni-mainz.de>
+- cleaned up a bit
 
+* Wed Jan 26 2000 Christian Bauer <Christian.Bauer@uni-mainz.de>
 - split into user and devel packages
 
 * Wed Dec  1 1999 Christian Bauer <Christian.Bauer@uni-mainz.de>
-
 - aclocal macros get installed