%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} %{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} Summary: A collection of libraries of numerical algorithms Name: trilinos Version: 10.0.4 Release: 1%{?dist} License: LGPLv2 Group: Development/Libraries URL: http://trilinos.sandia.gov/index.html Source0: http://trilinos.sandia.gov/download/files/%{name}-%{version}-Source.tar.gz Patch1: trilinos-fedora-cmake-build.patch Patch2: trilinos-fedora-no_rpath.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: cmake >= 2.8 BuildRequires: perl-devel python-devel gcc-gfortran BuildRequires: blacs-mpich2-devel scalapack-mpich2-devel mpich2-devel BuildRequires: suitesparse-devel cppunit-devel boost-devel zlib-devel BuildRequires: atlas-devel hdf5-devel scotch-devel hypre-devel BuildRequires: swig numpy expat-devel libxml2-devel BuildRequires: graphviz doxygen Requires: swig numpy %description Trilinos is a collection of compatible software packages that support parallel linear algebra computations, solution of linear, non-linear and eigen systems of equations and related capabilities. The majority of packages are written in C++ using object-oriented techniques. All packages are self-contained, with the Trilinos top layer providing a common look-and-feel and infrastructure. %package devel Summary: Trilinos development headers and examples Group: Development/Libraries Requires: %{name} = %{version}-%{release} %description devel This package contains the development headers needed for the Trilinos packages. It also contains the various Trilinos packages' examples. #%ifarch x86_64 %{!?XFLAGS: %global XFLAGS -fPIC} #%endif %prep %setup -q -n %{name}-%{version}-Source %patch1 -p0 -b .fix %patch2 -p0 -b .fedora rm -f packages/zoltan/src/makefile* %build mkdir fedora cd fedora export CFLAGS="%{XFLAGS} %{optflags}" export CXXFLAGS="%{XFLAGS} %{optflags}" export FFLAGS="%{XFLAGS} %{optflags}" cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \ -DTrilinos_INSTALL_INCLUDE_DIR:PATH=%{_includedir}/%{name} \ -DTrilinos_INSTALL_LIB_DIR:PATH=%{_libdir}/%{name} \ -DCMAKE_BUILD_TYPE:STRING=RELEASE \ -DBUILD_SHARED_LIBS:BOOL=ON \ -DTrilinos_ENABLE_Didasko:BOOL=ON \ -DTrilinos_ENABLE_PyTrilinos:BOOL=ON \ -DTrilinos_ENABLE_ThreadPool:BOOL=ON \ -DTrilinos_ENABLE_Stokhos:BOOL=ON \ -DTrilinos_ENABLE_Phalanx:BOOL=ON \ -DTrilinos_ENABLE_TrilinosCouplings:BOOL=ON \ -DTrilinos_ENABLE_ALL_PACKAGES:BOOL=ON \ -DTPL_ENABLE_MPI:BOOL=ON \ -DTEUCHOS_ENABLE_expat:BOOL=ON \ -DTEUCHOS_ENABLE_libxml2:BOOL=ON \ -DTEUCHOS_ENABLE_gmp:BOOL=ON \ -DAMESOS_ENABLE_SCALAPACK:BOOL=ON \ -DTPL_ENABLE_BLAS:BOOL=ON \ -DTPL_ENABLE_LAPACK:BOOL=ON \ -DNOX_ENABLE_lapack:BOOL=ON \ -DTrilinos_ENABLE_TESTS:BOOL=OFF \ -DBLAS_LIBRARY_DIRS:PATH=%{_libdir}/atlas \ -DBLAS_LIBRARY_NAMES:STRING="atlas;cblas" \ -DLAPACK_LIBRARY_DIRS:PATH=%{_libdir}/atlas \ -DLAPACK_LIBRARY_NAMES:STRING="clapack" \ -DTPL_ENABLE_Pthread:BOOL=ON \ -DTPL_ENABLE_Boost:BOOL=ON \ -DTPL_ENABLE_CppUnit:BOOL=ON \ -DTPL_ENABLE_Zlib:BOOL=ON \ -DTPL_ENABLE_Scotch:BOOL=ON \ -DScotch_LIBRARY_DIRS:PATH=%{_libdir}/scotch \ -DTPL_ENABLE_AMD:BOOL=ON \ -DAMD_INCLUDE_DIRS:PATH=%{_includedir}/suitesparse \ -DTPL_ENABLE_HYPRE:BOOL=ON \ -DHYPRE_INCLUDE_DIRS:PATH=%{_includedir}/hypre \ -DHYPRE_LIBRARY_DIRS:PATH=%{_libdir}/hypre \ -DTPL_ENABLE_BLACS:BOOL=ON \ -DBLACS_LIBRARY_DIRS:PATH=%{_libdir}/blacs-mpich2 \ -DBLACS_INCLUDE_DIRS:PATH=%{_includedir}/blacs-mpich2 \ -DBLACS_LIBRARY_NAMES:STRING="mpiblacs;mpiblacsCinit;mpiblacsF77init"\ -DTPL_ENABLE_SCALAPACK:BOOL=ON \ -DSCALAPACK_LIBRARY_DIRS:PATH=%{_libdir}/scalapack-mpich2 \ -DSCALAPACK_LIBRARY_NAMES:STRING="scalapack" \ -DTPL_ENABLE_UMFPACK:BOOL=ON \ -DUMFPACK_INCLUDE_DIRS:PATH=%{_includedir}/suitesparse \ -DTPL_ENABLE_TBB:BOOL=ON \ -DCMAKE_EXE_LINKER_FLAGS:STRING="-fPIC" \ -DTrilinos_VERBOSE_CONFIGURE:BOOL=ON \ -DCMAKE_VERBOSE_MAKEFILE:BOOL=TRUE \ .. # -DTPL_ENABLE_HDF5:BOOL=ON \ # -DHDF5_INCLUDE_DIRS:PATH=%{_includedir}/hdf5 \ # -DHDF5_LIBRARY_NAMES:STRING="hdf5" \ # -DHDF5_LIBRARY_DIRS:PATH=%{_libdir}/hdf5 \ make VERBOSE=1 #make %{?_smp_mflags} %install rm -rf %{buildroot} cd fedora make DESTDIR=%{buildroot} install INSTALL='install -p' rm -f %{buildroot}%{_libdir}/*.la # ld.so.conf.d file mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d echo "%{_libdir}/%{name}" > %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}.conf %clean rm -rf %{buildroot} %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %defattr(-, root, root, -) %doc README RELEASE_NOTES %dir %{_libdir}/%{name} %{_libdir}/%{name}/*.so #%{python_sitearch}/PyTrilinos/ %{python_sitelib}/PyTrilinos/ #%doc doc/Documentation %{_sysconfdir}/ld.so.conf.d/%{name}.conf %files devel %defattr(-, root, root, -) #%doc Examples %{_includedir}/%{name}/ #%{_datadir}/%{name}/ #%{_sysconfdir}/%{name}/ %changelog * Sat Jan 23 2010 Deji Akingunola - 10.0.4-1 - Update to version 10.0.4 * Wed Dec 16 2009 Deji Akingunola - 10.0.3-1 - Update to version 10.0.3 * Wed Sep 30 2009 Deji Akingunola - 10.0-1 - Update to version 10.0 * Wed Apr 29 2009 Deji Akingunola - 9.0.3-1 - Update to version 9.0.3 * Sat Oct 18 2008 Deji Akingunola - 9.0.1-1 - Update to version 9.0.1 * Mon Oct 13 2008 Deji Akingunola - 9.0.0-2 - BR gcc-gfortran * Sat Oct 04 2008 Deji Akingunola - 9.0.0-1 - Update to version 9.0.0 * Tue Sep 19 2008 Deji Akingunola - 8.0.8-3 - Enable mpi and build with mpi compilers * Tue Sep 02 2008 Deji Akingunola - 8.0.8-2 - Fix the Makefile.export.package files referencing buildroot locations. - Add ld.so.conf file for trilinos (Christophe Trophime) * Sat Jul 26 2008 Deji Akingunola - 8.0.8-1 - Update to latest release. * Thu Jun 19 2008 Deji Akingunola - 8.0.7-3 - Fix lam libdir for rawhide (Fedora > F9). * Thu Jun 19 2008 Deji Akingunola - 8.0.7-2 - Add lam-devel BR * Thu Jun 19 2008 Deji Akingunola - 8.0.7-1 - Initial rpm packaging