%define dotpl %{nil} %define dashpl %{nil} Summary: PDE solving tool Name: freefem++ Version: 3.10 Release: 1%{dotpl}%{?dist} URL: http://www.freefem.org/ff++/index.htm Group: Applications/Engineering Source0: http://www.freefem.org/ff++/ftp/%{name}-%{version}%{dashpl}.tar.gz Source1: FreeFem++.1 Patch0: %{name}-rpm.patch Patch2: %{name}-name.patch Patch3: %{name}-tex.patch Patch4: %{name}-ld.patch License: LGPLv2+ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(id -u -n) BuildRequires: arpack-devel BuildRequires: atlas-devel BuildRequires: bison BuildRequires: environment-modules BuildRequires: fftw-devel BuildRequires: flex BuildRequires: fltk-devel BuildRequires: gcc-gfortran BuildRequires: glut-devel BuildRequires: ImageMagick BuildRequires: lapack-devel BuildRequires: libGLU-devel BuildRequires: libtool BuildRequires: libXpm-devel BuildRequires: libXt-devel BuildRequires: libXxf86vm-devel BuildRequires: openmpi-devel >= 1.3.3-2 BuildRequires: suitesparse-devel #BuildRequires: superlu-devel %{?_with_tetgen:BuildRequires: tetgen-devel} BuildRequires: %{_bindir}/dvips BuildRequires: %{_bindir}/epstopdf BuildRequires: %{_bindir}/pdflatex %description A PDE oriented language using Finite Element Method FreeFem++ is an implementation of a language dedicated to the finite element method. It provides you a way to solve Partial Differential Equations (PDE) simply. Problems involving partial differential equations (pde) of several branches of physics such as fluid-structure interactions require interpolations of data on several meshes and their manipulation within one program. FreeFem++ is an extension of freefem, freefem+ written in C++. Homepage: http://www.freefem.org/ %package devel Summary: FreeFem++ development headers Group: Development/Libraries Requires: %{name} = %{version}-%{release} %description devel This package contains the headers necessary for writing FreeFem++ extensions. %package glx Summary: PDE solving tool - OpenGL version Group: Applications/Engineering Requires: %{name} = %{version}-%{release} %description glx This package contains the OpenGL version of FreeFem++. %package mpi Summary: PDE solving tool - MPI version Group: Applications/Engineering Requires: %{name} = %{version}-%{release} %description mpi This package contains the MPI version of FreeFem++. %prep %setup -q -n %{name}-%{version}%{dashpl} %patch0 -p1 -b .r %patch2 -p1 %patch3 -p1 -b .t %patch4 -p1 -b .ld find . -type f -perm 755 \( -name "*.c*" -o -name "*.h*" -o -name "*.edp" \) | xargs chmod 644 for file in AUTHORS ChangeLog COPYRIGHT COPYING HISTORY ; do iconv -f iso8859-1 -t utf8 -o $file.utf8 $file && \ touch -r $file $file.utf8 && \ mv $file.utf8 $file done %build . /etc/profile.d/modules.sh module load openmpi-%{_arch} export CFLAGS="$CFLAGS $RPM_OPT_FLAGS" autoreconf -vif %configure \ INSTALL="%{__install} -p" \ --disable-download \ --disable-optim \ --with-x \ --with-blas="-L%{_libdir}/atlas -llapack -lf77blas -lcblas -latlas" \ --with-mpi=mpic++ %{__make} %{?_smp_mflags} %{__make} -C examples++-load load_compile %{?_smp_mflags} %{__make} documentation %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install install -d $RPM_BUILD_ROOT%{_mandir}/man1/ install -pm644 %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1/ install -d $RPM_BUILD_ROOT%{_datadir}/freefem++/edp pushd $RPM_BUILD_ROOT%{_datadir}/freefem++ rm -r download rm BUGS COPYRIGHT HISTORY* INNOVATION INSTALL README TODO freefem++doc.pdf mode-mi-edp.zip popd rm $RPM_BUILD_ROOT%{_bindir}/ff-pkg-download %clean rm -rf $RPM_BUILD_ROOT %if 0 %check . /etc/profile.d/modules.sh module load openmpi-%{_arch} export CFLAGS="$CFLAGS $RPM_OPT_FLAGS" %{__make} check %endif %files %defattr(-,root,root,-) %doc AUTHORS BUGS COPYING COPYRIGHT HISTORY INNOVATION README TODO %doc DOC/freefem++doc.pdf %{_mandir}/man1/* %{_bindir}/FreeFem++ %{_bindir}/FreeFem++-nw %{_bindir}/FreeFem++-x11 %{_bindir}/bamg %{_bindir}/cvmsh2 %{_bindir}/drawbdmesh %{_bindir}/ffglut %{_bindir}/ffmedit %{_libdir}/freefem++ %{_sysconfdir}/freefem++.pref %dir %{_datadir}/freefem++ %{_datadir}/freefem++/edp %{_datadir}/freefem++/idp %files devel %defattr(-,root,root,-) %{_bindir}/ff-c++ %{_bindir}/ff-get-dep %{_includedir}/freefem++ %{_datadir}/freefem++/examples* %{_datadir}/freefem++/CheckAllEdp %files glx %defattr(-,root,root,-) %{_bindir}/FreeFem++-glx %files mpi %defattr(-,root,root,-) %{_bindir}/FreeFem++-mpi %changelog * Mon Nov 15 2010 Dominik Mierzejewski <rpm@greysector.net> 3.10-1 - update to 3.10-1 - drop no longer necessary gcc-4.5 patch * Sat Sep 04 2010 Dominik Mierzejewski <rpm@greysector.net> 3.9-3.2 - update to 3.9-2 * Sun Aug 29 2010 Dominik Mierzejewski <rpm@greysector.net> 3.9-2.1 - update to 3.9-1 * Wed Aug 04 2010 Dominik Mierzejewski <rpm@greysector.net> 3.9-1 - update to 3.9 - fix compilation with gcc-4.5.1 * Thu Feb 25 2010 Dominik Mierzejewski <rpm@greysector.net> 3.8-1 - update to 3.8 - fix FTBFS (rhbz #564731) * Fri Jan 15 2010 Dominik Mierzejewski <rpm@greysector.net> 3.7-1.1 - update to 3.7-1 - disable testsuite again (rhbz #524511) * Sat Dec 5 2009 Dominik Mierzejewski <rpm@greysector.net> 3.6-1.1 - update to 3.6-1 - drop upstream'd/obsolete patches - move scripts to %%{_datadir} - reenable testsuite * Mon Sep 21 2009 Dominik Mierzejewski <rpm@greysector.net> 3.5-2 - disable testsuite * Sun Sep 20 2009 Dominik Mierzejewski <rpm@greysector.net> 3.5-1 - update to 3.5 - adjust environment modules setup for current version - use openmpi instead of lam (regression tests pass locally) - remove irrelevant READMEs and old changelogs from docs - add examples to -devel subpackage - fix some minor build problems * Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0-6.5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Thu Feb 26 2009 Dominik Mierzejewski <rpm@greysector.net> 3.0-5.5 - update to 3.0-5 - fix build with gcc-4.4 - fix build with Fedora-mandated CFLAGS - sort BRs alphabetically * Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0-3.3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild * Mon Dec 15 2008 Deji Akingunola <dakingun@gmail.com> - 3.0-2.3 - Rebuild for atlas-3.8.2 * Wed Dec 10 2008 Dominik Mierzejewski <rpm@greysector.net> 3.0-2.2 - update to 3.0-2 - fix compilation - fix installation paths and path substitution in ff-c++ - preserve timestamps in make install - add missing BR - disable regression tests for now * Fri Dec 05 2008 Dominik Mierzejewski <rpm@greysector.net> 3.0-1.1 - update to 3.0 - fixed build of pdf doc - dropped obsolete patch * Wed Oct 01 2008 Dominik Mierzejewski <rpm@greysector.net> 2.24-5.2 - fix encoding of some doc files - fix author's name in COPYRIGHT * Sun Sep 28 2008 Dominik Mierzejewski <rpm@greysector.net> 2.24-4.2 - disabled testsuite on ppc64 - kill lamd processes upon completing make check * Wed Sep 24 2008 Dominik Mierzejewski <rpm@greysector.net> 2.24-3.2 - updated to 2.24-2 - fixed build in rawhide - re-enable testsuite * Fri Feb 22 2008 Dominik Mierzejewski <rpm@greysector.net> 2.24-2 - fix build on ppc64 * Fri Feb 22 2008 Dominik Mierzejewski <rpm@greysector.net> 2.24-1 - updated to 2.24 * Wed Feb 20 2008 Dominik Mierzejewski <rpm@greysector.net> 2.23-1 - updated to 2.23 - fixed build with gcc-4.3 (with help from Denis Leroy) - use file deps for latex tools - MPI part doesn't build on ppc64 (bug #433870) * Sun Apr 29 2007 Dominik Mierzejewski <rpm@greysector.net> 2.16-2 - enable testsuite - remove load tests from testsuite, the rest completes fine * Sat Apr 28 2007 Dominik Mierzejewski <rpm@greysector.net> 2.16-1 - updated to 2.16-2 - simplified defattr - work around X11 "detection" - work around lam's mpicxx.h misdetection in configure * Tue Mar 27 2007 Dominik Mierzejewski <rpm@greysector.net> 2.14-2 - updated to 2.14-2 * Mon Mar 19 2007 Dominik Mierzejewski <rpm@greysector.net> 2.14-1 - updated to 2.14-1 - removed redundant builddeps * Thu Nov 23 2006 Dominik Mierzejewski <rpm@greysector.net> 2.11-2 - specfile cleanups - added manpage from CVS * Fri Nov 17 2006 Dominik Mierzejewski <rpm@greysector.net> 2.11-1 - updated to 2.11 - specfile cleanups * Tue Jun 27 2006 Dominik Mierzejewski <rpm@greysector.net> - updated to latest CVS * Mon May 15 2006 Dominik Mierzejewski <rpm@greysector.net> - split into subpackages * Wed Apr 26 2006 Dominik Mierzejewski <rpm@greysector.net> - initial build