import mvapich2-2.3-5.el8
This commit is contained in:
		
						commit
						09bbcfa71c
					
				
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | |||||||
|  | SOURCES/mvapich2-2.3.tar.gz | ||||||
							
								
								
									
										1
									
								
								.mvapich2.metadata
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.mvapich2.metadata
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | |||||||
|  | 03a4703431dd354a31edef97d018e3bf137c41e9 SOURCES/mvapich2-2.3.tar.gz | ||||||
							
								
								
									
										30
									
								
								SOURCES/0001-mvapich23-unbundle-contrib-hwloc.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								SOURCES/0001-mvapich23-unbundle-contrib-hwloc.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,30 @@ | |||||||
|  | From c152d5a633876ff01ae69bd69d25c9ec08d0bbcb Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Michal Schmidt <mschmidt@redhat.com> | ||||||
|  | Date: Fri, 3 Nov 2017 11:49:50 +0100 | ||||||
|  | Subject: [PATCH 1/2] mvapich23: unbundle contrib/hwloc | ||||||
|  | 
 | ||||||
|  | ---
 | ||||||
|  |  Makefile.in | 6 +++--- | ||||||
|  |  1 file changed, 3 insertions(+), 3 deletions(-) | ||||||
|  | 
 | ||||||
|  | diff --git a/Makefile.in b/Makefile.in
 | ||||||
|  | index 0d9ec512f5..ff3af667a4 100644
 | ||||||
|  | --- a/Makefile.in
 | ||||||
|  | +++ b/Makefile.in
 | ||||||
|  | @@ -3029,10 +3029,10 @@ bin_PROGRAMS = $(am__EXEEXT_1) src/env/mpichversion$(EXEEXT) \
 | ||||||
|  |  @BUILD_F77_BINDING_TRUE@@BUILD_PROFILING_LIB_TRUE@am__append_173 = -DMPICH_MPI_FROM_PMPI -DUSE_ONLY_MPI_NAMES | ||||||
|  |  @BUILD_F77_BINDING_TRUE@@BUILD_FC_BINDING_TRUE@am__append_174 = $(mpi_fc_sources) | ||||||
|  |  @BUILD_CXX_BINDING_TRUE@am__append_175 = lib/lib@MPICXXLIBNAME@.la | ||||||
|  | -@BUILD_OSU_MVAPICH_TRUE@am__append_176 = contrib/hwloc
 | ||||||
|  | +@BUILD_OSU_MVAPICH_TRUE@am__append_176 =
 | ||||||
|  |  @BUILD_OSU_MVAPICH_TRUE@am__append_177 = src/env/mpiname src/util/mv2_ckpt_rebuild osu_benchmarks | ||||||
|  | -@BUILD_OSU_MVAPICH_TRUE@am__append_178 = -Icontrib/hwloc/include/ -I$(top_srcdir)/contrib/hwloc/include
 | ||||||
|  | -@BUILD_OSU_MVAPICH_TRUE@am__append_179 = contrib/hwloc/src/libhwloc_embedded.la
 | ||||||
|  | +@BUILD_OSU_MVAPICH_TRUE@am__append_178 =
 | ||||||
|  | +@BUILD_OSU_MVAPICH_TRUE@am__append_179 = -lhwloc
 | ||||||
|  |  @BUILD_COVERAGE_TRUE@am__append_180 = coverage-clean | ||||||
|  |  subdir = . | ||||||
|  |  ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 | ||||||
|  | -- 
 | ||||||
|  | 2.13.6 | ||||||
|  | 
 | ||||||
							
								
								
									
										25
									
								
								SOURCES/0002-mvapich23-unbundle-osu_benchmarks.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								SOURCES/0002-mvapich23-unbundle-osu_benchmarks.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,25 @@ | |||||||
|  | From 3aad06949ee9edbb6376092c6891efa9a37b8f51 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Michal Schmidt <mschmidt@redhat.com> | ||||||
|  | Date: Fri, 3 Nov 2017 11:51:33 +0100 | ||||||
|  | Subject: [PATCH 2/2] mvapich23: unbundle osu_benchmarks | ||||||
|  | 
 | ||||||
|  | ---
 | ||||||
|  |  Makefile.in | 2 +- | ||||||
|  |  1 file changed, 1 insertion(+), 1 deletion(-) | ||||||
|  | 
 | ||||||
|  | diff --git a/Makefile.in b/Makefile.in
 | ||||||
|  | index ff3af667a4..21e2754b56 100644
 | ||||||
|  | --- a/Makefile.in
 | ||||||
|  | +++ b/Makefile.in
 | ||||||
|  | @@ -3030,7 +3030,7 @@ bin_PROGRAMS = $(am__EXEEXT_1) src/env/mpichversion$(EXEEXT) \
 | ||||||
|  |  @BUILD_F77_BINDING_TRUE@@BUILD_FC_BINDING_TRUE@am__append_174 = $(mpi_fc_sources) | ||||||
|  |  @BUILD_CXX_BINDING_TRUE@am__append_175 = lib/lib@MPICXXLIBNAME@.la | ||||||
|  |  @BUILD_OSU_MVAPICH_TRUE@am__append_176 = | ||||||
|  | -@BUILD_OSU_MVAPICH_TRUE@am__append_177 = src/env/mpiname src/util/mv2_ckpt_rebuild osu_benchmarks
 | ||||||
|  | +@BUILD_OSU_MVAPICH_TRUE@am__append_177 = src/env/mpiname src/util/mv2_ckpt_rebuild
 | ||||||
|  |  @BUILD_OSU_MVAPICH_TRUE@am__append_178 = | ||||||
|  |  @BUILD_OSU_MVAPICH_TRUE@am__append_179 = -lhwloc | ||||||
|  |  @BUILD_COVERAGE_TRUE@am__append_180 = coverage-clean | ||||||
|  | -- 
 | ||||||
|  | 2.13.6 | ||||||
|  | 
 | ||||||
							
								
								
									
										6
									
								
								SOURCES/mvapich2.macros.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								SOURCES/mvapich2.macros.in
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,6 @@ | |||||||
|  | %_@MACRONAME@_load \ | ||||||
|  |  . /etc/profile.d/modules.sh; \ | ||||||
|  |  module load mpi/@MODULENAME@; | ||||||
|  | %_@MACRONAME@_unload \ | ||||||
|  |  . /etc/profile.d/modules.sh; \ | ||||||
|  |  module unload mpi/@MODULENAME@; | ||||||
							
								
								
									
										22
									
								
								SOURCES/mvapich2.module.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								SOURCES/mvapich2.module.in
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,22 @@ | |||||||
|  | #%Module 1.0 | ||||||
|  | # | ||||||
|  | #  OpenMPI module for use with 'environment-modules' package: | ||||||
|  | # | ||||||
|  | conflict		mpi | ||||||
|  | prepend-path 		PATH 		@LIBDIR@/bin | ||||||
|  | prepend-path 		LD_LIBRARY_PATH @LIBDIR@/lib | ||||||
|  | prepend-path 		PKG_CONFIG_PATH	@LIBDIR@/lib/pkgconfig | ||||||
|  | prepend-path		PYTHONPATH	@PYSITEARCH@ | ||||||
|  | prepend-path		MANPATH		@MANDIR@ | ||||||
|  | setenv 			MPI_BIN		@LIBDIR@/bin | ||||||
|  | setenv			MPI_SYSCONFIG	@ETCDIR@ | ||||||
|  | setenv			MPI_FORTRAN_MOD_DIR	@FMODDIR@ | ||||||
|  | setenv			MPI_INCLUDE	@INCDIR@ | ||||||
|  | setenv	 		MPI_LIB		@LIBDIR@/lib | ||||||
|  | setenv			MPI_MAN		@MANDIR@ | ||||||
|  | setenv			MPI_PYTHON_SITEARCH	@PYSITEARCH@ | ||||||
|  | setenv			MPI_PYTHON2_SITEARCH	@PYSITEARCH@ | ||||||
|  | setenv			MPI_PYTHON3_SITEARCH	@PYSITEARCH@ | ||||||
|  | setenv			MPI_COMPILER	@COMPILER@ | ||||||
|  | setenv			MPI_SUFFIX	@SUFFIX@ | ||||||
|  | setenv	 		MPI_HOME	@LIBDIR@ | ||||||
							
								
								
									
										428
									
								
								SPECS/mvapich2.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										428
									
								
								SPECS/mvapich2.spec
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,428 @@ | |||||||
|  | # We only compile with gcc, but other people may want other compilers. | ||||||
|  | # Set the compiler here. | ||||||
|  | %define opt_cc gcc | ||||||
|  | # Optional CFLAGS to use with the specific compiler...gcc doesn't need any, | ||||||
|  | # so uncomment and define to use | ||||||
|  | #define opt_cflags | ||||||
|  | %define opt_cxx g++ | ||||||
|  | #define opt_cxxflags | ||||||
|  | %define opt_f77 gfortran | ||||||
|  | #define opt_fflags | ||||||
|  | %define opt_fc gfortran | ||||||
|  | #define opt_fcflags | ||||||
|  | 
 | ||||||
|  | %{!?python3_sitearch: %global python3_sitearch %(%{__python3} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} | ||||||
|  | 
 | ||||||
|  | %define opt_cflags -O3 -fno-strict-aliasing | ||||||
|  | %define opt_cxxflags -O3 | ||||||
|  | %ifarch i386 | ||||||
|  | %define opt_cflags -m32 -O3 -fno-strict-aliasing | ||||||
|  | %define opt_cxxflags -m32 -O3 | ||||||
|  | %define opt_fflags -m32 | ||||||
|  | %define opt_fcflags -m32 | ||||||
|  | %endif | ||||||
|  | %ifarch x86_64 | ||||||
|  | %define opt_cflags -m64 -O3 -fno-strict-aliasing | ||||||
|  | %define opt_cxxflags -m64 -O3 | ||||||
|  | %define opt_fflags -m64 | ||||||
|  | %define opt_fcflags -m64 | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | Name:    mvapich2 | ||||||
|  | Version: 2.3 | ||||||
|  | Release: 5%{?dist} | ||||||
|  | Summary: OSU MVAPICH2 MPI package | ||||||
|  | Group:   Development/Libraries | ||||||
|  | # Richard Fontana wrote in https://bugzilla.redhat.com/show_bug.cgi?id=1333114: | ||||||
|  | ## The mvapich2 source code is predominantly 3-clause BSD with a smattering of | ||||||
|  | ## 2-clause BSD, MIT and proto-MIT licensed source code. Under the license | ||||||
|  | ## abbreviation system inherited from Fedora that set of licenses is adequately | ||||||
|  | ## described as 'BSD and MIT'. | ||||||
|  | ## There are a couple of source files that indicate they are taken from glibc | ||||||
|  | ## with LGPL license notices, but context strongly suggests that the author of | ||||||
|  | ## that particular code placed it under the MIT license (which is consistent | ||||||
|  | ## with the approach to copyright assignment in glibc in which the author | ||||||
|  | ## receives a broad grant-back license permitting sublicensing under terms | ||||||
|  | ## other than LGPL). | ||||||
|  | License: BSD and MIT | ||||||
|  | URL:     http://mvapich.cse.ohio-state.edu | ||||||
|  | Source:  http://mvapich.cse.ohio-state.edu/download/mvapich/mv2/%{name}-%{version}.tar.gz | ||||||
|  | Source1: mvapich2.module.in | ||||||
|  | Source2: mvapich2.macros.in | ||||||
|  | # We delete bundled stuff in the prep step. The *-unbundle-* patches adjust | ||||||
|  | # the configure scripts and Makefiles accordingly. | ||||||
|  | Patch1:  0001-mvapich23-unbundle-contrib-hwloc.patch | ||||||
|  | Patch2:  0002-mvapich23-unbundle-osu_benchmarks.patch | ||||||
|  | 
 | ||||||
|  | BuildRequires: gcc-gfortran | ||||||
|  | BuildRequires: libibumad-devel, libibverbs-devel >= 1.1.3, librdmacm-devel | ||||||
|  | BuildRequires: python3-devel, perl-Digest-MD5, hwloc-devel, libibmad-devel | ||||||
|  | BuildRequires: bison, flex | ||||||
|  | BuildRequires: autoconf, automake, libtool | ||||||
|  | BuildRequires: rpm-mpi-hooks | ||||||
|  | %ifarch x86_64 | ||||||
|  | BuildRequires: libpsm2-devel >= 10.3.58 | ||||||
|  | %endif | ||||||
|  | ExcludeArch: s390 s390x | ||||||
|  | Provides:  mpi | ||||||
|  | Requires:  environment-modules | ||||||
|  | 
 | ||||||
|  | %global common_desc MVAPICH2 is a Message Passing Interface (MPI 3.0) implementation based on MPICH\ | ||||||
|  | and developed by Ohio State University. | ||||||
|  | 
 | ||||||
|  | %description | ||||||
|  | %{common_desc} | ||||||
|  | 
 | ||||||
|  | %package devel | ||||||
|  | Summary:   Development files for %{name} | ||||||
|  | Group:     Development/Libraries | ||||||
|  | Provides:  mpi-devel | ||||||
|  | Requires:  librdmacm-devel, libibverbs-devel, libibumad-devel | ||||||
|  | Requires:  %{name}%{?_isa} = %{version}-%{release} | ||||||
|  | Requires:  gcc-gfortran | ||||||
|  | 
 | ||||||
|  | %description devel | ||||||
|  | Contains development headers and libraries for %{name}. | ||||||
|  | 
 | ||||||
|  | %package doc | ||||||
|  | Summary:   Documentation files for mvapich2 | ||||||
|  | Group:     Documentation | ||||||
|  | BuildArch: noarch | ||||||
|  | 
 | ||||||
|  | %description doc | ||||||
|  | Additional documentation for mvapich2. | ||||||
|  | 
 | ||||||
|  | %ifarch x86_64 | ||||||
|  | %package psm2 | ||||||
|  | Summary:   OSU MVAPICH2 MPI package 2.3 for Omni-Path adapters | ||||||
|  | Group:     Development/Libraries | ||||||
|  | Provides:  mpi | ||||||
|  | Requires:  environment-modules | ||||||
|  | 
 | ||||||
|  | %description psm2 | ||||||
|  | %{common_desc} | ||||||
|  | 
 | ||||||
|  | This is a version of mvapich2 2.3 that uses the PSM2 transport for Omni-Path | ||||||
|  | adapters. | ||||||
|  | 
 | ||||||
|  | %package psm2-devel | ||||||
|  | Summary:   Development files for %{name}-psm2 | ||||||
|  | Group:     Development/Libraries | ||||||
|  | Provides:  mpi-devel | ||||||
|  | Requires:  librdmacm-devel, libibverbs-devel, libibumad-devel | ||||||
|  | Requires:  %{name}-psm2%{?_isa} = %{version}-%{release} | ||||||
|  | Requires:  gcc-gfortran | ||||||
|  | 
 | ||||||
|  | %description psm2-devel | ||||||
|  | Contains development headers and libraries for %{name}-psm2. | ||||||
|  | 
 | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %prep | ||||||
|  | %setup -q | ||||||
|  | %patch1 -p1 | ||||||
|  | %patch2 -p1 | ||||||
|  | # bundled hwloc, knem kernel module | ||||||
|  | rm -r contrib/ | ||||||
|  | # limic kernel module | ||||||
|  | rm -r limic2-0.5.6/ | ||||||
|  | # bundled OSU benchmarks | ||||||
|  | rm -r osu_benchmarks/ | ||||||
|  | 
 | ||||||
|  | # Remove rpath, part 1 | ||||||
|  | find . -name configure -exec \ | ||||||
|  |     sed -i -r 's/(hardcode_into_libs)=.*$/\1=no/' '{}' ';' | ||||||
|  | 
 | ||||||
|  | mkdir .default | ||||||
|  | mv * .default | ||||||
|  | mv .default default | ||||||
|  | 
 | ||||||
|  | %ifarch x86_64 | ||||||
|  | cp -pr default psm2 | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %build | ||||||
|  | %set_build_flags | ||||||
|  | export AR=ar | ||||||
|  | 
 | ||||||
|  | %ifarch x86_64 | ||||||
|  | %global variant %{name}-psm2 | ||||||
|  | %global libname %{variant} | ||||||
|  | %global namearch %{variant}-%{_arch} | ||||||
|  | 
 | ||||||
|  | cd psm2 | ||||||
|  | ./configure \ | ||||||
|  |     --prefix=%{_libdir}/%{libname} \ | ||||||
|  |     --exec-prefix=%{_libdir}/%{libname} \ | ||||||
|  |     --bindir=%{_libdir}/%{libname}/bin \ | ||||||
|  |     --sbindir=%{_libdir}/%{libname}/bin \ | ||||||
|  |     --libdir=%{_libdir}/%{libname}/lib \ | ||||||
|  |     --mandir=%{_mandir}/%{namearch} \ | ||||||
|  |     --includedir=%{_includedir}/%{namearch} \ | ||||||
|  |     --sysconfdir=%{_sysconfdir}/%{namearch} \ | ||||||
|  |     --datarootdir=%{_datadir}/%{libname} \ | ||||||
|  |     --docdir=%{_docdir}/%{name} \ | ||||||
|  |     --enable-error-checking=runtime \ | ||||||
|  |     --enable-timing=none \ | ||||||
|  |     --enable-g=mem,dbg,meminit \ | ||||||
|  |     --enable-fast=all \ | ||||||
|  |     --enable-shared \ | ||||||
|  |     --enable-static \ | ||||||
|  |     --enable-fortran=all \ | ||||||
|  |     --enable-cxx \ | ||||||
|  |     --disable-silent-rules \ | ||||||
|  |     --disable-wrapper-rpath \ | ||||||
|  |     --with-hwloc-prefix=system \ | ||||||
|  |     --with-device=ch3:psm \ | ||||||
|  |     --with-ftb=no \ | ||||||
|  |     --with-blcr=no \ | ||||||
|  |     --with-fuse=no \ | ||||||
|  |     CC=%{opt_cc}    CFLAGS="%{?opt_cflags} %{build_cflags} $XFLAGS" \ | ||||||
|  |     CXX=%{opt_cxx}  CXXFLAGS="%{?opt_cxxflags} %{build_cflags} $XFLAGS" \ | ||||||
|  |     FC=%{opt_fc}    FCFLAGS="%{?opt_fcflags} %{build_cflags} $XFLAGS" \ | ||||||
|  |     F77=%{opt_f77}  FFLAGS="%{?opt_fflags} %{build_cflags} $XFLAGS" \ | ||||||
|  |     LDFLAGS="%{build_ldflags}" | ||||||
|  | 
 | ||||||
|  | # Remove rpath, part 2 | ||||||
|  | find . -name libtool -exec \ | ||||||
|  |     sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g; | ||||||
|  |             s|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' '{}' ';' | ||||||
|  | make %{?_smp_mflags} | ||||||
|  | cd .. | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %global variant %{name} | ||||||
|  | %global libname %{variant} | ||||||
|  | %global namearch %{variant}-%{_arch} | ||||||
|  | 
 | ||||||
|  | cd default | ||||||
|  | ./configure \ | ||||||
|  |     --prefix=%{_libdir}/%{libname} \ | ||||||
|  |     --exec-prefix=%{_libdir}/%{libname} \ | ||||||
|  |     --bindir=%{_libdir}/%{libname}/bin \ | ||||||
|  |     --sbindir=%{_libdir}/%{libname}/bin \ | ||||||
|  |     --libdir=%{_libdir}/%{libname}/lib \ | ||||||
|  |     --mandir=%{_mandir}/%{namearch} \ | ||||||
|  |     --includedir=%{_includedir}/%{namearch} \ | ||||||
|  |     --sysconfdir=%{_sysconfdir}/%{namearch} \ | ||||||
|  |     --datarootdir=%{_datadir}/%{libname} \ | ||||||
|  |     --docdir=%{_docdir}/%{name} \ | ||||||
|  |     --enable-error-checking=runtime \ | ||||||
|  |     --enable-timing=none \ | ||||||
|  |     --enable-g=mem,dbg,meminit \ | ||||||
|  |     --enable-fast=all \ | ||||||
|  |     --enable-shared \ | ||||||
|  |     --enable-static \ | ||||||
|  |     --enable-fortran=all \ | ||||||
|  |     --enable-cxx \ | ||||||
|  |     --disable-silent-rules \ | ||||||
|  |     --disable-wrapper-rpath \ | ||||||
|  |     --with-hwloc-prefix=system \ | ||||||
|  |     --with-ftb=no \ | ||||||
|  |     --with-blcr=no \ | ||||||
|  |     --with-fuse=no \ | ||||||
|  |     CC=%{opt_cc}    CFLAGS="%{?opt_cflags} %{build_cflags} $XFLAGS" \ | ||||||
|  |     CXX=%{opt_cxx}  CXXFLAGS="%{?opt_cxxflags} %{build_cflags} $XFLAGS" \ | ||||||
|  |     FC=%{opt_fc}    FCFLAGS="%{?opt_fcflags} %{build_cflags} $XFLAGS" \ | ||||||
|  |     F77=%{opt_f77}  FFLAGS="%{?opt_fflags} %{build_cflags} $XFLAGS" \ | ||||||
|  |     LDFLAGS="%{build_ldflags}" | ||||||
|  | 
 | ||||||
|  | # Remove rpath, part 2 | ||||||
|  | find . -name libtool -exec \ | ||||||
|  |     sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g; | ||||||
|  |             s|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' '{}' ';' | ||||||
|  | make %{?_smp_mflags} | ||||||
|  | cd .. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %install | ||||||
|  | finish_install() { | ||||||
|  | 	local VARIANT="$1" | ||||||
|  | 	local LIBNAME="$VARIANT" | ||||||
|  | 	local NAMEARCH="$VARIANT-%{_arch}" | ||||||
|  | 
 | ||||||
|  | 	local MODULE_TEMPLATE="$2" | ||||||
|  | 	local MACROS_TEMPLATE="$3" | ||||||
|  | 	local FORTRAN_SUBDIR_SUFFIX="$4" | ||||||
|  | 
 | ||||||
|  | 	find %{buildroot}%{_libdir}/$LIBNAME/lib -name \*.la -delete | ||||||
|  | 
 | ||||||
|  | 	mkdir -p %{buildroot}%{_mandir}/$NAMEARCH/man{2,4,5,6,7,8,9,n} | ||||||
|  | 	mkdir -p %{buildroot}/%{_fmoddir}/$LIBNAME$FORTRAN_SUBDIR_SUFFIX | ||||||
|  | 	mkdir -p %{buildroot}/%{python3_sitearch}/$LIBNAME | ||||||
|  | 
 | ||||||
|  | 	# Make the environment-modules file | ||||||
|  | 	mkdir -p %{buildroot}%{_sysconfdir}/modulefiles/mpi | ||||||
|  | 	sed "s#@LIBDIR@#%{_libdir}/$LIBNAME#g; | ||||||
|  | 	     s#@ETCDIR@#%{_sysconfdir}/$NAMEARCH#g; | ||||||
|  | 	     s#@FMODDIR@#%{_fmoddir}/$LIBNAME$FORTRAN_SUBDIR_SUFFIX#g; | ||||||
|  | 	     s#@INCDIR@#%{_includedir}/$NAMEARCH#g; | ||||||
|  | 	     s#@MANDIR@#%{_mandir}/$NAMEARCH#g; | ||||||
|  | 	     s#@PYSITEARCH@#%{python3_sitearch}/$LIBNAME#g; | ||||||
|  | 	     s#@COMPILER@#$NAMEARCH#g; | ||||||
|  | 	     s#@SUFFIX@#_$VARIANT#g" \ | ||||||
|  | 		< $MODULE_TEMPLATE \ | ||||||
|  | 		> %{buildroot}%{_sysconfdir}/modulefiles/mpi/$NAMEARCH | ||||||
|  | 
 | ||||||
|  | 	# make the rpm config file | ||||||
|  | 	mkdir -p %{buildroot}%{_sysconfdir}/rpm | ||||||
|  | 	# do not expand _arch | ||||||
|  | 	sed "s#@MACRONAME@#${LIBNAME//[-.]/_}#g; | ||||||
|  | 	     s#@MODULENAME@#$NAMEARCH#" \ | ||||||
|  | 		< $MACROS_TEMPLATE \ | ||||||
|  | 		> %{buildroot}/%{_sysconfdir}/rpm/macros.$NAMEARCH | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | # 'make install' fails to mkdir docdir by itself before installing index.html | ||||||
|  | mkdir -p %{buildroot}%{_docdir}/%{name} | ||||||
|  | 
 | ||||||
|  | %ifarch x86_64 | ||||||
|  | cd psm2 | ||||||
|  | %make_install | ||||||
|  | finish_install %{name}-psm2 %SOURCE1 %SOURCE2 "" | ||||||
|  | cd .. | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | cd default | ||||||
|  | %make_install | ||||||
|  | finish_install %{name} %SOURCE1 %SOURCE2 "" | ||||||
|  | cd .. | ||||||
|  | 
 | ||||||
|  | %global variant %{name} | ||||||
|  | %global libname %{variant} | ||||||
|  | %global namearch %{variant}-%{_arch} | ||||||
|  | 
 | ||||||
|  | %files | ||||||
|  | %dir %{_libdir}/%{libname} | ||||||
|  | %dir %{_libdir}/%{libname}/bin | ||||||
|  | %dir %{_libdir}/%{libname}/lib | ||||||
|  | %dir %{_mandir}/%{namearch} | ||||||
|  | %dir %{_mandir}/%{namearch}/man* | ||||||
|  | %dir %{_fmoddir}/%{libname} | ||||||
|  | %dir %{python3_sitearch}/%{libname} | ||||||
|  | 
 | ||||||
|  | %{_libdir}/%{libname}/bin/hydra_nameserver | ||||||
|  | %{_libdir}/%{libname}/bin/hydra_persist | ||||||
|  | %{_libdir}/%{libname}/bin/hydra_pmi_proxy | ||||||
|  | %{_libdir}/%{libname}/bin/mpichversion | ||||||
|  | %{_libdir}/%{libname}/bin/mpiexec | ||||||
|  | %{_libdir}/%{libname}/bin/mpiexec.hydra | ||||||
|  | %{_libdir}/%{libname}/bin/mpiexec.mpirun_rsh | ||||||
|  | %{_libdir}/%{libname}/bin/mpiname | ||||||
|  | %{_libdir}/%{libname}/bin/mpirun | ||||||
|  | %{_libdir}/%{libname}/bin/mpirun_rsh | ||||||
|  | %{_libdir}/%{libname}/bin/mpispawn | ||||||
|  | %{_libdir}/%{libname}/bin/mpivars | ||||||
|  | %{_libdir}/%{libname}/bin/parkill | ||||||
|  | %{_libdir}/%{libname}/lib/*.so.* | ||||||
|  | %{_mandir}/%{namearch}/man1/hydra_* | ||||||
|  | %{_mandir}/%{namearch}/man1/mpiexec.* | ||||||
|  | %{_sysconfdir}/modulefiles/mpi/%{namearch} | ||||||
|  | 
 | ||||||
|  | %files devel | ||||||
|  | %dir %{_includedir}/%{namearch} | ||||||
|  | %{_sysconfdir}/rpm/macros.%{namearch} | ||||||
|  | %{_includedir}/%{namearch}/* | ||||||
|  | %{_libdir}/%{libname}/bin/mpic++ | ||||||
|  | %{_libdir}/%{libname}/bin/mpicc | ||||||
|  | %{_libdir}/%{libname}/bin/mpicxx | ||||||
|  | %{_libdir}/%{libname}/bin/mpif77 | ||||||
|  | %{_libdir}/%{libname}/bin/mpif90 | ||||||
|  | %{_libdir}/%{libname}/bin/mpifort | ||||||
|  | %{_libdir}/%{libname}/lib/pkgconfig | ||||||
|  | %{_libdir}/%{libname}/lib/*.a | ||||||
|  | %{_libdir}/%{libname}/lib/*.so | ||||||
|  | %{_mandir}/%{namearch}/man1/mpi[cf]* | ||||||
|  | %{_mandir}/%{namearch}/man3/* | ||||||
|  | 
 | ||||||
|  | %files doc | ||||||
|  | %{_docdir}/%{name} | ||||||
|  | 
 | ||||||
|  | %ifarch x86_64 | ||||||
|  | %global variant %{name}-psm2 | ||||||
|  | %global libname %{variant} | ||||||
|  | %global namearch %{variant}-%{_arch} | ||||||
|  | 
 | ||||||
|  | %files psm2 | ||||||
|  | %dir %{_libdir}/%{libname} | ||||||
|  | %dir %{_libdir}/%{libname}/bin | ||||||
|  | %dir %{_libdir}/%{libname}/lib | ||||||
|  | %dir %{_mandir}/%{namearch} | ||||||
|  | %dir %{_mandir}/%{namearch}/man* | ||||||
|  | %dir %{_fmoddir}/%{libname} | ||||||
|  | %dir %{python3_sitearch}/%{libname} | ||||||
|  | 
 | ||||||
|  | %{_libdir}/%{libname}/bin/hydra_nameserver | ||||||
|  | %{_libdir}/%{libname}/bin/hydra_persist | ||||||
|  | %{_libdir}/%{libname}/bin/hydra_pmi_proxy | ||||||
|  | %{_libdir}/%{libname}/bin/mpichversion | ||||||
|  | %{_libdir}/%{libname}/bin/mpiexec | ||||||
|  | %{_libdir}/%{libname}/bin/mpiexec.hydra | ||||||
|  | %{_libdir}/%{libname}/bin/mpiexec.mpirun_rsh | ||||||
|  | %{_libdir}/%{libname}/bin/mpiname | ||||||
|  | %{_libdir}/%{libname}/bin/mpirun | ||||||
|  | %{_libdir}/%{libname}/bin/mpirun_rsh | ||||||
|  | %{_libdir}/%{libname}/bin/mpispawn | ||||||
|  | %{_libdir}/%{libname}/bin/mpivars | ||||||
|  | %{_libdir}/%{libname}/bin/parkill | ||||||
|  | %{_libdir}/%{libname}/lib/*.so.* | ||||||
|  | %{_mandir}/%{namearch}/man1/hydra_* | ||||||
|  | %{_mandir}/%{namearch}/man1/mpiexec.* | ||||||
|  | %{_sysconfdir}/modulefiles/mpi/%{namearch} | ||||||
|  | 
 | ||||||
|  | %files psm2-devel | ||||||
|  | %dir %{_includedir}/%{namearch} | ||||||
|  | %{_sysconfdir}/rpm/macros.%{namearch} | ||||||
|  | %{_includedir}/%{namearch}/* | ||||||
|  | %{_libdir}/%{libname}/bin/mpic++ | ||||||
|  | %{_libdir}/%{libname}/bin/mpicc | ||||||
|  | %{_libdir}/%{libname}/bin/mpicxx | ||||||
|  | %{_libdir}/%{libname}/bin/mpif77 | ||||||
|  | %{_libdir}/%{libname}/bin/mpif90 | ||||||
|  | %{_libdir}/%{libname}/bin/mpifort | ||||||
|  | %{_libdir}/%{libname}/lib/pkgconfig | ||||||
|  | %{_libdir}/%{libname}/lib/*.a | ||||||
|  | %{_libdir}/%{libname}/lib/*.so | ||||||
|  | %{_mandir}/%{namearch}/man1/mpi[cf]* | ||||||
|  | %{_mandir}/%{namearch}/man3/* | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %changelog | ||||||
|  | * Thu Nov 08 2018 Jarod Wilson <jarod@redhat.com> 2.3-5 | ||||||
|  | - Add missing Provides: mpi and Requires: environment-modules to base mvapich2 package | ||||||
|  | - Resolves: rhbz#1647177 | ||||||
|  | 
 | ||||||
|  | * Tue Sep 25 2018 Jarod Wilson <jarod@redhat.com> 2.3-4 | ||||||
|  | - Clean up build/linker commands to better propagate distro-wide flags | ||||||
|  | - Explicitly disable ftb, blcr and fuse to prevent rpath flag creep | ||||||
|  | - Related: rhbz#1624147 | ||||||
|  | 
 | ||||||
|  | * Fri Sep 14 2018 Jarod Wilson <jarod@redhat.com> 2.3-3 | ||||||
|  | - Add missing BR on rpm-mpi-hooks | ||||||
|  | - Related: rhbz#1628630 | ||||||
|  | 
 | ||||||
|  | * Thu Sep 13 2018 Jarod Wilson <jarod@redhat.com> 2.3-2 | ||||||
|  | - Actually set MPI_PYTHON3_SITEARCH in modules file to fix deps | ||||||
|  | - Resolves: rhbz#1628630 | ||||||
|  | 
 | ||||||
|  | * Mon Aug 13 2018 Jarod Wilson <jarod@redhat.com> 2.3-1 | ||||||
|  | - Update to upstream v2.3 release | ||||||
|  | - Initial build for RHEL-8, featuring v2.3 only | ||||||
|  | - Resolves: #1483744 | ||||||
|  | 
 | ||||||
|  | * Wed Jun 13 2018 Jarod Wilson <jarod@redhat.com> - 2.2-1.4 | ||||||
|  | - Update mvapich23 (TrueScale) bits to 2.3rc2 | ||||||
|  | 
 | ||||||
|  | * Thu Jan 18 2018 Michal Schmidt <mschmidt@redhat.com> - 2.2-1.3 | ||||||
|  | - Rebuild in buildroot with updated RDMA stack. | ||||||
|  | 
 | ||||||
|  | * Wed Jan 17 2018 Michal Schmidt <mschmidt@redhat.com> - 2.2-1.2 | ||||||
|  | - Add a 2.3b build variant for TrueScale: mvapich23-psm. | ||||||
|  | 
 | ||||||
|  | * Fri Nov 3 2017 Michal Schmidt <mschmidt@redhat.com> - 2.2-1.1 | ||||||
|  | - Add mvapich2 2.3b as mvapich23 and mvapich23-psm2. | ||||||
|  | 
 | ||||||
|  | * Mon Mar 27 2017 Michal Schmidt <mschmidt@redhat.com> - 2.2-1 | ||||||
|  | - Update to 2.2 GA. | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user