Backport from F-14.

This commit is contained in:
Jay Fenlason 2010-03-29 20:18:41 +00:00
parent 5e6f2d99fa
commit 03f3f365a9
4 changed files with 31 additions and 28 deletions

View File

@ -1 +1 @@
openmpi-1.4.1.tar.bz2
openmpi-1.4.1-RH.tar.bz2

View File

@ -4,6 +4,7 @@
#
prepend-path PATH @LIBDIR@/bin
prepend-path LD_LIBRARY_PATH @LIBDIR@/lib
prepend-path PYTHONPATH @PYSITEARCH@
setenv MPI_BIN @LIBDIR@/bin
setenv MPI_SYSCONFIG @ETCDIR@
setenv MPI_FORTRAN_MOD_DIR @FMODDIR@

View File

@ -19,24 +19,28 @@
Name: openmpi%{?_cc_name_suffix}
Version: 1.4.1
Release: 3%{?dist}
Release: 4%{?dist}
Summary: Open Message Passing Interface
Group: Development/Libraries
License: BSD
License: BSD, MIT and Romio
URL: http://www.open-mpi.org/
# We can't use %{name} here because of _cc_name_suffix
Source0: http://www.open-mpi.org/software/ompi/v1.4/downloads/openmpi-%{version}.tar.bz2
Source1: openmpi.pc.in
Source2: openmpi.module.in
Source3: macros.openmpi
#Source0: http://www.open-mpi.org/software/ompi/v1.4/downloads/openmpi-%{version}.tar.bz2
# openmpi-1.4.1-RH.tar.bz2 was generated by taking the upstream 1.4.1 tarball
# and removing license-incompatible (ras_loadleveler_module.c contained
# usage requirements that we cannot make our users comply with, and
# MoreDebugging/* is AML but unused in our configuration),
# and packaging-guidelines-incompatable (MUST use system versions of libltdl
# and libplpa, not the (formerly included ones), and also remove the generated
# Makefile.in and configure related files.
Source0: openmpi-%{version}-RH.tar.bz2
Source1: openmpi.module.in
Source2: macros.openmpi
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: gcc-gfortran, libtool, numactl-devel
%ifnarch %{sparc}
BuildRequires: valgrind-devel
%endif
BuildRequires: gcc-gfortran, libtool, numactl-devel, valgrind-devel
BuildRequires: libibverbs-devel >= 1.1.3, opensm-devel > 3.3.0
BuildRequires: librdmacm librdmacm-devel libibcm libibcm-devel
BuildRequires: python
BuildRequires: python libtool-ltdl-devel plpa-devel
#%ifnarch ppc
#BuildRequires: compat-dapl-devel
#%endif
@ -109,10 +113,11 @@ Contains development headers and libraries for openmpi
%prep
%setup -q -n openmpi-%{version}
%ifarch x86_64 %{sparc}
./autogen.sh
%build
%ifarch x86_64
XFLAGS="-fPIC"
%endif
./configure --prefix=%{_libdir}/%{name} --with-libnuma=/usr \
--with-openib=/usr \
--mandir=%{_mandir}/%{namearch} \
@ -121,9 +126,7 @@ XFLAGS="-fPIC"
--enable-mpi-threads \
--enable-openib-ibcm \
--with-sge \
%ifnarch %{sparc}
--with-valgrind \
%endif
--with-wrapper-cflags="%{?opt_cflags} %{?modeflag}" \
--with-wrapper-cxxflags="%{?opt_cxxflags} %{?modeflag}" \
--with-wrapper-fflags="%{?opt_fflags} %{?modeflag}" \
@ -134,8 +137,6 @@ XFLAGS="-fPIC"
CXXFLAGS="%{?opt_cxxflags} $RPM_OPT_FLAGS $XFLAGS" \
FC=%{opt_fc} FCFLAGS="%{?opt_fcflags} $RPM_OPT_FLAGS $XFLAGS" \
F77=%{opt_f77} FFLAGS="%{?opt_fflags} $RPM_OPT_FLAGS $XFLAGS"
%build
make %{?_smp_mflags}
%install
@ -148,16 +149,13 @@ rm -f %{buildroot}%{_mandir}/%{namearch}/man1/mpiCC.1
rm -f %{buildroot}%{_libdir}/%{name}/share/vampirtrace/doc/opari/lacsi01.ps.gz
mkdir %{buildroot}%{_mandir}/%{namearch}/man{2,4,5,6,8,9,n}
# Make the pkgconfig file
mkdir -p %{buildroot}%{_libdir}/pkgconfig
sed 's#@NAME@#'%{name}'#g;s#@VERSION@#'%{version}'#g;s#@LIBDIR@#'%{_libdir}/%{name}/lib'#g;s#@CC@#'%{opt_cc}'#g;s#@INCDIR@#'%{_includedir}/%{namearch}'#g;s#@MODEFLAG@#'%{?modeflag}'#g' < %SOURCE1 > %{buildroot}/%{_libdir}/pkgconfig/%{name}.pc
# Make the environment-modules file
mkdir -p %{buildroot}%{_sysconfdir}/modulefiles
# Since we're doing our own substitution here, use our own definitions.
sed 's#@LIBDIR@#'%{_libdir}/%{name}'#g;s#@ETCDIR@#'%{_sysconfdir}/%{namearch}'#g;s#@FMODDIR@#'%{_fmoddir}/%{namearch}'#g;s#@INCDIR@#'%{_includedir}/%{namearch}'#g;s#@MANDIR@#'%{_mandir}/%{namearch}'#g;s#@PYSITEARCH@#'%{python_sitearch}/%{name}'#g;s#@COMPILER@#openmpi-'%{_arch}%{?_cc_name_suffix}'#g;s#@SUFFIX@#'%{?_cc_name_suffix}'_openmpi#g' < %SOURCE2 > %{buildroot}%{_sysconfdir}/modulefiles/%{namearch}
sed 's#@LIBDIR@#'%{_libdir}/%{name}'#g;s#@ETCDIR@#'%{_sysconfdir}/%{namearch}'#g;s#@FMODDIR@#'%{_fmoddir}/%{namearch}'#g;s#@INCDIR@#'%{_includedir}/%{namearch}'#g;s#@MANDIR@#'%{_mandir}/%{namearch}'#g;s#@PYSITEARCH@#'%{python_sitearch}/%{name}'#g;s#@COMPILER@#openmpi-'%{_arch}%{?_cc_name_suffix}'#g;s#@SUFFIX@#'%{?_cc_name_suffix}'_openmpi#g' < %SOURCE1 > %{buildroot}%{_sysconfdir}/modulefiles/%{namearch}
# make the rpm config file
mkdir -p %{buildroot}/%{_sysconfdir}/rpm
cp %SOURCE3 %{buildroot}/%{_sysconfdir}/rpm/macros.%{namearch}
cp %SOURCE2 %{buildroot}/%{_sysconfdir}/rpm/macros.%{namearch}
mkdir -p %{buildroot}/%{_fmoddir}/%{namearch}
mkdir -p %{buildroot}/%{python_sitearch}/openmpi%{?_cc_name_suffix}
@ -203,7 +201,6 @@ rm -rf %{buildroot}
%defattr(-,root,root,-)
%dir %{_includedir}/%{namearch}
%dir %{_libdir}/%{name}/share/vampirtrace
%{_libdir}/pkgconfig/%{name}.pc
%{_libdir}/%{name}/bin/mpi[cCf]*
%{_libdir}/%{name}/bin/vt*
%{_libdir}/%{name}/bin/opal_*
@ -221,9 +218,14 @@ rm -rf %{buildroot}
%{_sysconfdir}/rpm/macros.%{namearch}
%changelog
* Thu Mar 11 2010 Dennis Gilmore <dennis@ausil.us> - 1.4.1-3
- Dont build with valgrind support on sparc arches
- use -fPIC on sparc arches
* Mon Mar 29 2010 Jay Fenlason <fenlason@redhat.com> - 1.4.1-4
- Update to fix licencing and packaging issues:
Use the system plpa and ltdl librarires rather than the ones in the tarball
Remove licence incompatible files from the tarball.
- update module.in to prepend-path PYTHONPATH
* Tue Mar 9 2010 Jay Fenlason <fenlason@redhat.com> - 1.4.1-3
- remove the pkgconfig file completely like we did in RHEL.
* Tue Jan 26 2010 Jay Fenlason <fenlason@redhat.com> - 1.4.1-2
- BuildRequires: python

View File

@ -1 +1 @@
28a820c85e02973809df881fdeddd15e openmpi-1.4.1.tar.bz2
0a343ebe72050f6795a132a8d6df876e openmpi-1.4.1-RH.tar.bz2