# # spec file for package adolc # # Copyright (c) 2011 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 %define packver 2.2.0 Name: adolc Version: 2.2.0 Release: 1 License: GPLv2 or CPL Summary: Algorithmic Differentiation Library for C/C++ Url: http://projects.coin-or.org/ADOL-C Group: Development/Languages/C and C++ Source: %{name}-%{packver}.tar.bz2 Source1: ColPack-1.0.3.tar.bz2 BuildRequires: autoconf automake libtool BuildRequires: gcc-c++ libstdc++-devel BuildRequires: texlive texlive-latex BuildRoot: %{_tmppath}/%{name}-%{version}-build AutoReqProv: on %description The package ADOL-C (Automatic Differentiation by OverLoading in C++) facilitates the evaluation of first and higher derivatives of vector functions that are defined by computer programs written in C or C++. The resulting derivative evaluation routines may be called from C/C++, Fortran, or any other language that can be linked with C. The numerical values of derivative vectors are obtained free of truncation errors at a small multiple of the run time and randomly accessed memory of the given function evaluation program. %package -n libadolc1 License: GPLv2 or CPL Summary: Algorithmic Differentiation Library for C/C++ Group: Development/Languages/C and C++ %description -n libadolc1 The package ADOL-C (Automatic Differentiation by OverLoading in C++) facilitates the evaluation of first and higher derivatives of vector functions that are defined by computer programs written in C or C++. The resulting derivative evaluation routines may be called from C/C++, Fortran, or any other language that can be linked with C. The numerical values of derivative vectors are obtained free of truncation errors at a small multiple of the run time and randomly accessed memory of the given function evaluation program. %package devel License: GPLv2 or CPL Summary: Algorithmic Differentiation Library for C/C++ -- development files Group: Development/Languages/C and C++ Requires: libadolc1 = %{version} %description devel The package ADOL-C (Automatic Differentiation by OverLoading in C++) facilitates the evaluation of first and higher derivatives of vector functions that are defined by computer programs written in C or C++. The resulting derivative evaluation routines may be called from C/C++, Fortran, or any other language that can be linked with C. The numerical values of derivative vectors are obtained free of truncation errors at a small multiple of the run time and randomly accessed memory of the given function evaluation program. This package provides the development environment for adolc %package doc License: GPLv2 or CPL Summary: Algorithmic Differentiation Library for C/C++ -- documentation Group: Development/Languages/C and C++ %if 0%{?suse_version} && %{suse_version} >= 1120 BuildArch: noarch %endif %description doc The package ADOL-C (Automatic Differentiation by OverLoading in C++) facilitates the evaluation of first and higher derivatives of vector functions that are defined by computer programs written in C or C++. The resulting derivative evaluation routines may be called from C/C++, Fortran, or any other language that can be linked with C. The numerical values of derivative vectors are obtained free of truncation errors at a small multiple of the run time and randomly accessed memory of the given function evaluation program. This package provides the userĀ“s manual for adolc %prep %setup -q -n %{name}-%{packver} -b 1 pushd ThirdParty mv %{_builddir}/ColPack/* ColPack/ rm -rf %{_builddir}/ColPack popd %build pushd ThirdParty/ColPack make %{_smp_mflags} EXTRA_FLAGS="$RPM_OPT_FLAGS" CXXFLAGS+="$RPM_OPT_FLAGS" popd autoreconf -v --install --force %configure --prefix=/usr make %{_smp_mflags} pushd ADOL-C/doc for ((i=0; i < 3; i++)); do pdflatex adolc-manual.tex &>/dev/null done %install %makeinstall install -d %{buildroot}%{_datadir}/doc/packages/%{name} install -m 644 README AUTHORS BUGS LICENSE INSTALL TODO %{buildroot}%{_datadir}/doc/packages/%{name} install -m 644 ADOL-C/doc/adolc-manual.pdf %{buildroot}%{_datadir}/doc/packages/%{name} install -m 644 ADOL-C/doc/short_ref.pdf %{buildroot}%{_datadir}/doc/packages/%{name} find %{buildroot} -type f -name '*.la' -exec rm -vf {} \; find %{buildroot} -type f -name '*.a' -exec rm -vf {} \; %clean rm -rf %{buildroot} rm -rf %{_builddir}/%{name}-%{packver} %post -n libadolc1 -p /sbin/ldconfig %postun -n libadolc1 -p /sbin/ldconfig %files -n libadolc1 %defattr(-,root,root) %{_libdir}/libadolc.so.* %files devel %defattr(-,root,root) %dir %{_includedir}/adolc %dir %{_includedir}/adolc/drivers %dir %{_includedir}/adolc/sparse %dir %{_includedir}/adolc/tapedoc %{_includedir}/adolc/*.h %{_includedir}/adolc/drivers/*.h %{_includedir}/adolc/sparse/*.h %{_includedir}/adolc/tapedoc/*.h %{_libdir}/libadolc.so %files doc %defattr(-,root,root) %dir %{_datadir}/doc/packages/%{name} %{_datadir}/doc/packages/%{name}/* %changelog