Compare commits

...

9 Commits
master ... f12

Author SHA1 Message Date
Fedora Release Engineering
9004604e7e dist-git conversion 2010-07-29 04:59:23 +00:00
Jay Fenlason
03f3f365a9 Backport from F-14. 2010-03-29 20:18:41 +00:00
Dennis Gilmore
5e6f2d99fa - Dont build with valgrind support on sparc arches
- use -fPIC on sparc arches
2010-03-11 15:45:59 +00:00
Jay Fenlason
23f5faa236 Backport 1.4.1-2 to F-12 2010-02-15 23:39:30 +00:00
Doug Ledford
b9d08f710c - Fix an issue with usage of _cc_name_suffix that cause a broken define in
our module file
2010-01-15 22:55:32 +00:00
Doug Ledford
2532265549 - Fix pkgconfig file substitution
- Bump version so we are later than the equivalent version from Red Hat
    Enterprise Linux
2010-01-15 14:29:29 +00:00
Doug Ledford
ec68ec9e1a - Update to latest upstream stable version
- Add support for libibcm usage
- Enable sge support via configure options since it's no longer on by
    default
- Add patch to resolve allreduce issue (bz538199)
- Remove no longer needed patch for Chelsio cards
2010-01-13 18:42:01 +00:00
Bill Nottingham
15263000d8 Fix typo that causes a failure to update the common directory. (releng
#2781)
2009-11-26 01:24:17 +00:00
Jesse Keating
927ec06c36 Initialize branch F-12 for openmpi 2009-09-29 05:47:59 +00:00
9 changed files with 112 additions and 60 deletions

View File

@ -1,2 +0,0 @@
openmpi-1.3.1.tar.bz2
openmpi-1.3.3.tar.bz2

1
.gitignore vendored Normal file
View File

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

View File

@ -1,21 +0,0 @@
# Makefile for source rpm: openmpi
# $Id$
NAME := openmpi
SPECFILE = $(firstword $(wildcard *.spec))
define find-makefile-common
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
endef
MAKEFILE_COMMON := $(shell $(find-makefile-common))
ifeq ($(MAKEFILE_COMMON),)
# attempt a checkout
define checkout-makefile-common
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
endef
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
endif
include $(MAKEFILE_COMMON)

View File

@ -1,13 +0,0 @@
Index: ompi/mca/btl/openib/mca-btl-openib-device-params.ini
===================================================================
--- ompi/mca/btl/openib/mca-btl-openib-device-params.ini (revision 21744)
+++ ompi/mca/btl/openib/mca-btl-openib-device-params.ini (working copy)
@@ -212,7 +212,7 @@
[Chelsio T3]
vendor_id = 0x1425
-vendor_part_id = 0x0020,0x0021,0x0022,0x0023,0x0024,0x0025,0x0026,0x0030,0x0031,0x0032
+vendor_part_id = 0x0020,0x0021,0x0022,0x0023,0x0024,0x0025,0x0026,0x0030,0x0031,0x0032,0x0035,0x0036
use_eager_rdma = 1
mtu = 2048
receive_queues = P,65536,256,192,128

View File

@ -0,0 +1,50 @@
Index: /trunk/opal/include/opal/sys/amd64/atomic.h
===================================================================
--- /trunk/opal/include/opal/sys/amd64/atomic.h (revision 21180)
+++ /trunk/opal/include/opal/sys/amd64/atomic.h (revision 22324)
@@ -85,9 +85,9 @@
unsigned char ret;
__asm__ __volatile__ (
- SMPLOCK "cmpxchgl %1,%2 \n\t"
+ SMPLOCK "cmpxchgl %3,%4 \n\t"
"sete %0 \n\t"
- : "=qm" (ret)
- : "q"(newval), "m"(*addr), "a"(oldval)
- : "memory");
+ : "=qm" (ret), "=a" (oldval), "=m" (*addr)
+ : "q"(newval), "m"(*addr), "1"(oldval)
+ );
return (int)ret;
@@ -106,9 +106,9 @@
unsigned char ret;
__asm__ __volatile__ (
- SMPLOCK "cmpxchgq %1,%2 \n\t"
+ SMPLOCK "cmpxchgq %3,%4 \n\t"
"sete %0 \n\t"
- : "=qm" (ret)
- : "q"(newval), "m"(*((volatile long*)addr)), "a"(oldval)
- : "memory");
+ : "=qm" (ret), "=a" (oldval), "=m" (*((volatile long*)addr))
+ : "q"(newval), "m"(*((volatile long*)addr)), "1"(oldval)
+ );
return (int)ret;
Index: /trunk/opal/include/opal/sys/ia32/atomic.h
===================================================================
--- /trunk/opal/include/opal/sys/ia32/atomic.h (revision 21180)
+++ /trunk/opal/include/opal/sys/ia32/atomic.h (revision 22324)
@@ -92,9 +92,9 @@
unsigned char ret;
__asm__ __volatile__ (
- SMPLOCK "cmpxchgl %1,%2 \n\t"
+ SMPLOCK "cmpxchgl %3,%4 \n\t"
"sete %0 \n\t"
- : "=qm" (ret)
- : "q"(newval), "m"(*((volatile long*)addr)), "a"(oldval)
- : "memory");
+ : "=qm" (ret), "=a" (oldval), "=m" (*addr)
+ : "q"(newval), "m"(*((volatile long*)addr)), "1"(oldval)
+ );
return (int)ret;

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@
@ -13,4 +14,4 @@ setenv MPI_MAN @MANDIR@
setenv MPI_PYTHON_SITEARCH @PYSITEARCH@
setenv MPI_COMPILER @COMPILER@
setenv MPI_SUFFIX @SUFFIX@
setenv MPI_HOME @LIBDIR@@
setenv MPI_HOME @LIBDIR@

View File

@ -3,5 +3,5 @@ Name: @NAME@
Description: Open Message Passing Interface headers and libraries
URL: http://www.open-mpi.org/
Version: @VERSION@-@CC@
Libs: -L@LIBDIR@/@MPIDIR@/lib -lmpi
Cflags: -I@LIBDIR@/@MPIDIR@/include @MODEFLAG@
Libs: -L@LIBDIR@ -lmpi
Cflags: -I@INCDIR@ @MODEFLAG@

View File

@ -18,22 +18,29 @@
#define _cc_name_suffix -gcc
Name: openmpi%{?_cc_name_suffix}
Version: 1.3.3
Release: 6%{?dist}
Version: 1.4.1
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.3/downloads/openmpi-%{version}.tar.bz2
Source1: openmpi.pc.in
Source2: openmpi.module.in
Source3: macros.openmpi
Patch0: openmpi-bz515567.patch
#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, valgrind-devel
BuildRequires: libibverbs-devel, opensm-devel > 3.3.0
BuildRequires: librdmacm librdmacm-devel
BuildRequires: libibverbs-devel >= 1.1.3, opensm-devel > 3.3.0
BuildRequires: librdmacm librdmacm-devel libibcm libibcm-devel
BuildRequires: python libtool-ltdl-devel plpa-devel
#%ifnarch ppc
#BuildRequires: compat-dapl-devel
#%endif
@ -106,17 +113,19 @@ Contains development headers and libraries for openmpi
%prep
%setup -q -n openmpi-%{version}
%patch0 -p0 -b .bz515567
./autogen.sh
%build
%ifarch x86_64
XFLAGS="-fPIC"
%endif
./configure --prefix=%{_libdir}/%{name} --with-libnuma=/usr \
--with-openib=/usr \
--mandir=%{_mandir}/%{namearch} \
--includedir=%{_includedir}/%{namearch} \
--sysconfdir=%{_sysconfdir}/%{namearch} \
--enable-mpi-threads \
--enable-openib-ibcm \
--with-sge \
--with-valgrind \
--with-wrapper-cflags="%{?opt_cflags} %{?modeflag}" \
--with-wrapper-cxxflags="%{?opt_cxxflags} %{?modeflag}" \
@ -128,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
@ -142,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}'#g;s#@CC@#'%{opt_cc}'#g;s#@MPIDIR@#'%{name}'#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}
@ -197,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_*
@ -209,11 +212,44 @@ rm -rf %{buildroot}
%{_mandir}/%{namearch}/man1/opal_*
%{_mandir}/%{namearch}/man3/*
%{_mandir}/%{namearch}/man7/opal*
%{_libdir}/%{name}/share/openmpi/openmpi-valgrind.supp
%{_libdir}/%{name}/share/openmpi/mpi*
%{_libdir}/%{name}/share/vampirtrace/*
%{_sysconfdir}/rpm/macros.%{namearch}
%changelog
* 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
* Tue Jan 26 2010 Jay Fenlason <fenlason@redhat.com> - 1.4.1-1
- New upstream version, which includes the changeset_r22324 patch.
- Correct a typo in the Source0 line in this spec file.
* Fri Jan 15 2010 Doug Ledford <dledford@redhat.com> - 1.4-4
- Fix an issue with usage of _cc_name_suffix that cause a broken define in
our module file
* Fri Jan 15 2010 Doug Ledford <dledford@redhat.com> - 1.4-3
- Fix pkgconfig file substitution
- Bump version so we are later than the equivalent version from Red Hat
Enterprise Linux
* Wed Jan 13 2010 Doug Ledford <dledford@redhat.com> - 1.4-1
- Update to latest upstream stable version
- Add support for libibcm usage
- Enable sge support via configure options since it's no longer on by default
- Add patch to resolve allreduce issue (bz538199)
- Remove no longer needed patch for Chelsio cards
* Tue Sep 22 2009 Jay Fenlason <fenlason@redhat.com> - 1.3.3-6
- Create and own man* directories for use by dependent packages.

View File

@ -1 +1 @@
f6cdc9c195daa8571b2e509e952d6755 openmpi-1.3.3.tar.bz2
0a343ebe72050f6795a132a8d6df876e openmpi-1.4.1-RH.tar.bz2