forked from pool/mumps
Accepting request 131254 from home:scorot
A MUltifrontal Massively Parallel Sparse direct Solver OBS-URL: https://build.opensuse.org/request/show/131254 OBS-URL: https://build.opensuse.org/package/show/science/mumps?expand=0&rev=1
This commit is contained in:
commit
7502cb255b
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
.osc
|
93
Makefile.par.inc
Normal file
93
Makefile.par.inc
Normal file
@ -0,0 +1,93 @@
|
||||
#
|
||||
# This file is part of MUMPS 4.9.2, built on Thu Nov 5 07:05:08 UTC 2009
|
||||
# Adapted by Adam Powell from Make.inc/Makefile.gfortran.par
|
||||
#
|
||||
#Begin orderings
|
||||
|
||||
# NOTE that PORD is distributed within MUMPS by default. If you would like to
|
||||
# use other orderings, you need to obtain the corresponding package and modify
|
||||
# the variables below accordingly.
|
||||
# For example, to have Metis available within MUMPS:
|
||||
# 1/ download Metis and compile it
|
||||
# 2/ uncomment (suppress # in first column) lines
|
||||
# starting with LMETISDIR, LMETIS
|
||||
# 3/ add -Dmetis in line ORDERINGSF
|
||||
# ORDERINGSF = -Dpord -Dmetis
|
||||
# 4/ Compile and install MUMPS
|
||||
# make clean; make (to clean up previous installation)
|
||||
#
|
||||
# Metis/ParMetis and SCOTCH/PT-SCOTCH (ver 5.1 and later) orderings are now available for MUMPS.
|
||||
#
|
||||
|
||||
#SCOTCHDIR = /usr
|
||||
#ISCOTCH = -I$(SCOTCHDIR)/scotch/include
|
||||
# You have to choose one among the following two lines depending on
|
||||
# the type of analysis you want to perform. If you want to perform only
|
||||
# sequential analysis choose the first (remember to add -Dscotch in the ORDERINGSF
|
||||
# variable below); for both parallel and sequential analysis choose the second
|
||||
# line (remember to add -Dptscotch in the ORDERINGSF variable below)
|
||||
|
||||
#LSCOTCH = -L$(SCOTCHDIR)/lib -lesmumps -lscotch -lscotcherr
|
||||
#LSCOTCH = -L$(SCOTCHDIR)/lib -lptesmumps -lptscotch -lptscotcherr
|
||||
|
||||
|
||||
LPORDDIR = $(topdir)/PORD/lib/
|
||||
IPORD = -I$(topdir)/PORD/include/
|
||||
LPORD = -L$(LPORDDIR) -lpord$(PLAT)
|
||||
|
||||
#LMETISDIR = /local/metis/
|
||||
#IMETIS = # Metis doesn't need include files (Fortran interface avail.)
|
||||
|
||||
# You have to choose one among the following two lines depending on
|
||||
# the type of analysis you want to perform. If you want to perform only
|
||||
# sequential analysis choose the first (remember to add -Dmetis in the ORDERINGSF
|
||||
# variable below); for both parallel and sequential analysis choose the second
|
||||
# line (remember to add -Dparmetis in the ORDERINGSF variable below)
|
||||
|
||||
#LMETIS = -L$(LMETISDIR) -lmetis
|
||||
#LMETIS = -L$(LMETISDIR) -lparmetis -lmetis
|
||||
|
||||
# The following variables will be used in the compilation process.
|
||||
# Please note that -Dptscotch and -Dparmetis imply -Dscotch and -Dmetis respectively.
|
||||
#ORDERINGSF = -Dscotch -Dmetis -Dpord -Dptscotch -Dparmetis
|
||||
ORDERINGSF = -Dpord
|
||||
ORDERINGSC = $(ORDERINGSF)
|
||||
|
||||
LORDERINGS = $(LMETIS) $(LPORD) $(LSCOTCH)
|
||||
IORDERINGSF = $(ISCOTCH)
|
||||
IORDERINGSC = $(IMETIS) $(IPORD) $(ISCOTCH)
|
||||
|
||||
#End orderings
|
||||
########################################################################
|
||||
################################################################################
|
||||
|
||||
PLAT =
|
||||
RM = /bin/rm -f
|
||||
CC = mpicc
|
||||
FC = mpif77
|
||||
FL = mpif77
|
||||
AR = ar vr
|
||||
#RANLIB = ranlib
|
||||
RANLIB = echo
|
||||
SCALAP = -lscalapack -lmpiblacs -lmpiblacsCinit
|
||||
#INCPAR = -I/usr/local/include
|
||||
#INCPAR = -I/usr/include/mpi
|
||||
# LIBPAR = $(SCALAP) -L/usr/local/lib/ -llammpio -llamf77mpi -lmpi -llam -lutil -ldl -lpthread
|
||||
LIBPAR = $(SCALAP) $(MUMPS_LIBF77)
|
||||
# See point 17 in the FAQ to have more details on the compilation of mpich with gfortran
|
||||
INCSEQ = -I$(topdir)/libseq
|
||||
LIBSEQ = -L$(topdir)/libseq -lmpiseq$(PLAT)
|
||||
#LIBBLAS = -L/usr/lib/xmm/ -lf77blas -latlas
|
||||
LIBBLAS = -lblas -llapack
|
||||
LIBOTHERS = -lpthread
|
||||
#Preprocessor defs for calling Fortran from C (-DAdd_ or -DAdd__ or -DUPPER)
|
||||
CDEFS = -DAdd_
|
||||
|
||||
#Begin Optimized options
|
||||
OPTF = -O -Dintel_ -DALLOW_NON_INIT
|
||||
OPTL = -O
|
||||
OPTC = -O
|
||||
#End Optimized options
|
||||
INC = $(INCPAR)
|
||||
LIB = $(LIBPAR)
|
||||
LIBSEQNEEDED =
|
93
Makefile.ptscotch.inc
Normal file
93
Makefile.ptscotch.inc
Normal file
@ -0,0 +1,93 @@
|
||||
#
|
||||
# This file is part of MUMPS 4.9.2, built on Thu Nov 5 07:05:08 UTC 2009
|
||||
# Adapted by Adam Powell from Make.inc/Makefile.gfortran.par
|
||||
#
|
||||
#Begin orderings
|
||||
|
||||
# NOTE that PORD is distributed within MUMPS by default. If you would like to
|
||||
# use other orderings, you need to obtain the corresponding package and modify
|
||||
# the variables below accordingly.
|
||||
# For example, to have Metis available within MUMPS:
|
||||
# 1/ download Metis and compile it
|
||||
# 2/ uncomment (suppress # in first column) lines
|
||||
# starting with LMETISDIR, LMETIS
|
||||
# 3/ add -Dmetis in line ORDERINGSF
|
||||
# ORDERINGSF = -Dpord -Dmetis
|
||||
# 4/ Compile and install MUMPS
|
||||
# make clean; make (to clean up previous installation)
|
||||
#
|
||||
# Metis/ParMetis and SCOTCH/PT-SCOTCH (ver 5.1 and later) orderings are now available for MUMPS.
|
||||
#
|
||||
|
||||
#SCOTCHDIR = /usr
|
||||
ISCOTCH = -I/usr/include
|
||||
# You have to choose one among the following two lines depending on
|
||||
# the type of analysis you want to perform. If you want to perform only
|
||||
# sequential analysis choose the first (remember to add -Dscotch in the ORDERINGSF
|
||||
# variable below); for both parallel and sequential analysis choose the second
|
||||
# line (remember to add -Dptscotch in the ORDERINGSF variable below)
|
||||
|
||||
#LSCOTCH = -L$(SCOTCHDIR)/lib -lesmumps -lscotch -lscotcherr
|
||||
LSCOTCH = -lptesmumps -lptscotch -lptscotcherr -lscotch
|
||||
|
||||
|
||||
LPORDDIR = $(topdir)/PORD/lib/
|
||||
IPORD = -I$(topdir)/PORD/include/
|
||||
LPORD = -L$(LPORDDIR) -lpord$(PLAT)
|
||||
|
||||
#LMETISDIR = /local/metis/
|
||||
#IMETIS = # Metis doesn't need include files (Fortran interface avail.)
|
||||
|
||||
# You have to choose one among the following two lines depending on
|
||||
# the type of analysis you want to perform. If you want to perform only
|
||||
# sequential analysis choose the first (remember to add -Dmetis in the ORDERINGSF
|
||||
# variable below); for both parallel and sequential analysis choose the second
|
||||
# line (remember to add -Dparmetis in the ORDERINGSF variable below)
|
||||
|
||||
#LMETIS = -L$(LMETISDIR) -lmetis
|
||||
#LMETIS = -L$(LMETISDIR) -lparmetis -lmetis
|
||||
|
||||
# The following variables will be used in the compilation process.
|
||||
# Please note that -Dptscotch and -Dparmetis imply -Dscotch and -Dmetis respectively.
|
||||
ORDERINGSF = -Dscotch -Dpord -Dptscotch
|
||||
#ORDERINGSF = -Dpord
|
||||
ORDERINGSC = $(ORDERINGSF)
|
||||
|
||||
LORDERINGS = $(LMETIS) $(LPORD) $(LSCOTCH)
|
||||
IORDERINGSF = $(ISCOTCH)
|
||||
IORDERINGSC = $(IMETIS) $(IPORD) $(ISCOTCH)
|
||||
|
||||
#End orderings
|
||||
########################################################################
|
||||
################################################################################
|
||||
|
||||
PLAT =
|
||||
RM = /bin/rm -f
|
||||
CC = gcc
|
||||
FC = gfortran
|
||||
FL = gfortran
|
||||
AR = ar vr
|
||||
#RANLIB = ranlib
|
||||
RANLIB = echo
|
||||
SCALAP = -lscalapack -lmpiblacs -lmpiblacsCinit
|
||||
#INCPAR = -I/usr/local/include
|
||||
#INCPAR = -I/usr/include/mpi
|
||||
# LIBPAR = $(SCALAP) -L/usr/local/lib/ -llammpio -llamf77mpi -lmpi -llam -lutil -ldl -lpthread
|
||||
LIBPAR = $(SCALAP) $(MUMPS_LIBF77)
|
||||
# See point 17 in the FAQ to have more details on the compilation of mpich with gfortran
|
||||
INCSEQ = -I$(topdir)/libseq
|
||||
LIBSEQ = -L$(topdir)/libseq -lmpiseq$(PLAT)
|
||||
#LIBBLAS = -L/usr/lib/xmm/ -lf77blas -latlas
|
||||
LIBBLAS = -lblas -llapack
|
||||
LIBOTHERS = -lpthread
|
||||
#Preprocessor defs for calling Fortran from C (-DAdd_ or -DAdd__ or -DUPPER)
|
||||
CDEFS = -DAdd_
|
||||
|
||||
#Begin Optimized options
|
||||
OPTF = -O -Dintel_ -DALLOW_NON_INIT
|
||||
OPTL = -O
|
||||
OPTC = -O
|
||||
#End Optimized options
|
||||
INC = $(INCPAR)
|
||||
LIB = $(LIBPAR)
|
||||
LIBSEQNEEDED =
|
90
Makefile.scotch.inc
Normal file
90
Makefile.scotch.inc
Normal file
@ -0,0 +1,90 @@
|
||||
#
|
||||
# This file is part of MUMPS 4.9.2, built on Thu Nov 5 07:05:08 UTC 2009
|
||||
# Adapted by Adam Powell from Make.inc/Makefile.gfortran.seq, based on
|
||||
# Roberto C. Sanchez' adaptation from Make.inc/Makefile.G95.seq, based on
|
||||
# Adam Powell's adaptation of Make.inc/Makefile.G95.par
|
||||
#
|
||||
#Begin orderings
|
||||
|
||||
# NOTE that PORD is distributed within MUMPS by default. If you would like to
|
||||
# use other orderings, you need to obtain the corresponding package and modify
|
||||
# the variables below accordingly.
|
||||
# For example, to have Metis available within MUMPS:
|
||||
# 1/ download Metis and compile it
|
||||
# 2/ uncomment (suppress # in first column) lines
|
||||
# starting with LMETISDIR, LMETIS
|
||||
# 3/ add -Dmetis in line ORDERINGSF
|
||||
# ORDERINGSF = -Dpord -Dmetis
|
||||
# 4/ Compile and install MUMPS
|
||||
# make clean; make (to clean up previous installation)
|
||||
#
|
||||
# Metis/ParMetis and SCOTCH/PT-SCOTCH (ver 5.1 and later) orderings are now available for MUMPS.
|
||||
#
|
||||
|
||||
#SCOTCHDIR = /usr
|
||||
ISCOTCH = -I/usr/include
|
||||
# You have to choose one among the following two lines depending on
|
||||
# the type of analysis you want to perform. If you want to perform only
|
||||
# sequential analysis choose the first (remember to add -Dscotch in the ORDERINGSF
|
||||
# variable below); for both parallel and sequential analysis choose the second
|
||||
# line (remember to add -Dptscotch in the ORDERINGSF variable below)
|
||||
|
||||
LSCOTCH = -lesmumps -lscotch -lscotcherr
|
||||
#LSCOTCH = -L$(SCOTCHDIR)/lib -lptesmumps -lptscotch -lptscotcherr
|
||||
|
||||
|
||||
LPORDDIR = $(topdir)/PORD/lib/
|
||||
IPORD = -I$(topdir)/PORD/include/
|
||||
LPORD = -L$(LPORDDIR) -lpord$(PLAT)
|
||||
|
||||
#LMETISDIR = /local/metis/
|
||||
#IMETIS = # Metis doesn't need include files (Fortran interface avail.)
|
||||
|
||||
# You have to choose one among the following two lines depending on
|
||||
# the type of analysis you want to perform. If you want to perform only
|
||||
# sequential analysis choose the first (remember to add -Dmetis in the ORDERINGSF
|
||||
# variable below); for both parallel and sequential analysis choose the second
|
||||
# line (remember to add -Dparmetis in the ORDERINGSF variable below)
|
||||
|
||||
#LMETIS = -L$(LMETISDIR) -lmetis
|
||||
#LMETIS = -L$(LMETISDIR) -lparmetis -lmetis
|
||||
|
||||
# The following variables will be used in the compilation process.
|
||||
# Please note that -Dptscotch and -Dparmetis imply -Dscotch and -Dmetis respectively.
|
||||
ORDERINGSF = -Dscotch -Dpord
|
||||
#ORDERINGSF = -Dpord
|
||||
ORDERINGSC = $(ORDERINGSF)
|
||||
|
||||
LORDERINGS = $(LMETIS) $(LPORD) $(LSCOTCH)
|
||||
IORDERINGSF = $(ISCOTCH)
|
||||
IORDERINGSC = $(IMETIS) $(IPORD) $(ISCOTCH)
|
||||
|
||||
#End orderings
|
||||
########################################################################
|
||||
################################################################################
|
||||
|
||||
PLAT =
|
||||
RM = /bin/rm -f
|
||||
CC = gcc
|
||||
FC = gfortran
|
||||
FL = gfortran
|
||||
AR = ar vr
|
||||
#RANLIB = ranlib
|
||||
RANLIB = echo
|
||||
# See point 17 in the FAQ to have more details on the compilation of mpich with gfortran
|
||||
INCSEQ = -I$(topdir)/libseq
|
||||
LIBSEQ = -L$(topdir)/libseq -lmpiseq$(PLAT)
|
||||
#LIBBLAS = -L/usr/lib/xmm/ -lf77blas -latlas
|
||||
LIBBLAS = -lblas -llapack
|
||||
LIBOTHERS = -lpthread
|
||||
#Preprocessor defs for calling Fortran from C (-DAdd_ or -DAdd__ or -DUPPER)
|
||||
CDEFS = -DAdd_
|
||||
|
||||
#Begin Optimized options
|
||||
OPTF = -O -Dintel_ -DALLOW_NON_INIT
|
||||
OPTL = -O
|
||||
OPTC = -O
|
||||
#End Optimized options
|
||||
INC = $(INCSEQ)
|
||||
LIB = $(LIBSEQ)
|
||||
LIBSEQNEEDED = libseqneeded
|
90
Makefile.seq.inc
Normal file
90
Makefile.seq.inc
Normal file
@ -0,0 +1,90 @@
|
||||
#
|
||||
# This file is part of MUMPS 4.9.2, built on Thu Nov 5 07:05:08 UTC 2009
|
||||
# Adapted by Adam Powell from Make.inc/Makefile.gfortran.seq, based on
|
||||
# Roberto C. Sanchez' adaptation from Make.inc/Makefile.G95.seq, based on
|
||||
# Adam Powell's adaptation of Make.inc/Makefile.G95.par
|
||||
#
|
||||
#Begin orderings
|
||||
|
||||
# NOTE that PORD is distributed within MUMPS by default. If you would like to
|
||||
# use other orderings, you need to obtain the corresponding package and modify
|
||||
# the variables below accordingly.
|
||||
# For example, to have Metis available within MUMPS:
|
||||
# 1/ download Metis and compile it
|
||||
# 2/ uncomment (suppress # in first column) lines
|
||||
# starting with LMETISDIR, LMETIS
|
||||
# 3/ add -Dmetis in line ORDERINGSF
|
||||
# ORDERINGSF = -Dpord -Dmetis
|
||||
# 4/ Compile and install MUMPS
|
||||
# make clean; make (to clean up previous installation)
|
||||
#
|
||||
# Metis/ParMetis and SCOTCH/PT-SCOTCH (ver 5.1 and later) orderings are now available for MUMPS.
|
||||
#
|
||||
|
||||
#SCOTCHDIR = /usr
|
||||
#ISCOTCH = -I$(SCOTCHDIR)/scotch/include
|
||||
# You have to choose one among the following two lines depending on
|
||||
# the type of analysis you want to perform. If you want to perform only
|
||||
# sequential analysis choose the first (remember to add -Dscotch in the ORDERINGSF
|
||||
# variable below); for both parallel and sequential analysis choose the second
|
||||
# line (remember to add -Dptscotch in the ORDERINGSF variable below)
|
||||
|
||||
#LSCOTCH = -L$(SCOTCHDIR)/lib -lesmumps -lscotch -lscotcherr
|
||||
#LSCOTCH = -L$(SCOTCHDIR)/lib -lptesmumps -lptscotch -lptscotcherr
|
||||
|
||||
|
||||
LPORDDIR = $(topdir)/PORD/lib/
|
||||
IPORD = -I$(topdir)/PORD/include/
|
||||
LPORD = -L$(LPORDDIR) -lpord$(PLAT)
|
||||
|
||||
#LMETISDIR = /local/metis/
|
||||
#IMETIS = # Metis doesn't need include files (Fortran interface avail.)
|
||||
|
||||
# You have to choose one among the following two lines depending on
|
||||
# the type of analysis you want to perform. If you want to perform only
|
||||
# sequential analysis choose the first (remember to add -Dmetis in the ORDERINGSF
|
||||
# variable below); for both parallel and sequential analysis choose the second
|
||||
# line (remember to add -Dparmetis in the ORDERINGSF variable below)
|
||||
|
||||
#LMETIS = -L$(LMETISDIR) -lmetis
|
||||
#LMETIS = -L$(LMETISDIR) -lparmetis -lmetis
|
||||
|
||||
# The following variables will be used in the compilation process.
|
||||
# Please note that -Dptscotch and -Dparmetis imply -Dscotch and -Dmetis respectively.
|
||||
#ORDERINGSF = -Dscotch -Dmetis -Dpord -Dptscotch -Dparmetis
|
||||
ORDERINGSF = -Dpord
|
||||
ORDERINGSC = $(ORDERINGSF)
|
||||
|
||||
LORDERINGS = $(LMETIS) $(LPORD) $(LSCOTCH)
|
||||
IORDERINGSF = $(ISCOTCH)
|
||||
IORDERINGSC = $(IMETIS) $(IPORD) $(ISCOTCH)
|
||||
|
||||
#End orderings
|
||||
########################################################################
|
||||
################################################################################
|
||||
|
||||
PLAT =
|
||||
RM = /bin/rm -f
|
||||
CC = gcc
|
||||
FC = gfortran
|
||||
FL = gfortran
|
||||
AR = ar vr
|
||||
#RANLIB = ranlib
|
||||
RANLIB = echo
|
||||
# See point 17 in the FAQ to have more details on the compilation of mpich with gfortran
|
||||
INCSEQ = -I$(topdir)/libseq
|
||||
LIBSEQ = -L$(topdir)/libseq -lmpiseq$(PLAT)
|
||||
#LIBBLAS = -L/usr/lib/xmm/ -lf77blas -latlas
|
||||
LIBBLAS = -lblas -llapack
|
||||
LIBOTHERS = -lpthread
|
||||
#Preprocessor defs for calling Fortran from C (-DAdd_ or -DAdd__ or -DUPPER)
|
||||
CDEFS = -DAdd_
|
||||
|
||||
#Begin Optimized options
|
||||
OPTF = -O -Dintel_ -DALLOW_NON_INIT
|
||||
OPTL = -O
|
||||
OPTC = -O
|
||||
#End Optimized options
|
||||
INC = $(INCSEQ)
|
||||
LIB = $(LIBSEQ)
|
||||
LIBSEQNEEDED = libseqneeded
|
118
mumps-4.9.2-debian-ptscotch.patch
Normal file
118
mumps-4.9.2-debian-ptscotch.patch
Normal file
@ -0,0 +1,118 @@
|
||||
Convert scotch support to ptscotch.
|
||||
|
||||
Index: mumps-4.9.2.dfsg/Makefile
|
||||
===================================================================
|
||||
--- mumps-4.9.2.dfsg.orig/Makefile 2010-04-02 12:18:01.000000000 +0200
|
||||
+++ mumps-4.9.2.dfsg/Makefile 2010-04-02 12:18:01.000000000 +0200
|
||||
@@ -47,7 +47,7 @@
|
||||
zexamples: z
|
||||
|
||||
|
||||
-requiredobj: Makefile.inc $(LIBSEQNEEDED) $(libdir)/libpord_scotch$(PLAT).a $(libdir)/libpord_scotch$(PLAT).so
|
||||
+requiredobj: Makefile.inc $(LIBSEQNEEDED) $(libdir)/libpord_ptscotch$(PLAT).a $(libdir)/libpord_ptscotch$(PLAT).so
|
||||
|
||||
# dummy MPI library (sequential version)
|
||||
|
||||
@@ -55,21 +55,21 @@
|
||||
(cd libseq; $(MAKE))
|
||||
cp libseq/lib* $(libdir)
|
||||
|
||||
-# Build the libpord_scotch.a library and copy it into $(topdir)/lib
|
||||
-$(libdir)/libpord_scotch$(PLAT).a:
|
||||
+# Build the libpord_ptscotch.a library and copy it into $(topdir)/lib
|
||||
+$(libdir)/libpord_ptscotch$(PLAT).a:
|
||||
if [ "$(LPORDDIR)" != "" ] ; then \
|
||||
cd $(LPORDDIR); \
|
||||
$(MAKE) CC="$(CC)" CFLAGS="$(OPTC)" AR="$(AR)" ARFUNCT= RANLIB="$(RANLIB)"; \
|
||||
fi;
|
||||
if [ "$(LPORDDIR)" != "" ] ; then \
|
||||
- cp $(LPORDDIR)/libpord_scotch.a $@; \
|
||||
+ cp $(LPORDDIR)/libpord_ptscotch.a $@; \
|
||||
fi;
|
||||
|
||||
-$(libdir)/libpord_scotch$(PLAT).so:
|
||||
+$(libdir)/libpord_ptscotch$(PLAT).so:
|
||||
if [ "$(LPORDDIR)" != "" ] ; then \
|
||||
- cd $(LPORDDIR); make CC="$(CC)" CFLAGS="$(OPTC)" AR="$(AR)" ARFUNCT= RANLIB="$(RANLIB)" libpord_scotch.so; fi;
|
||||
+ cd $(LPORDDIR); make CC="$(CC)" CFLAGS="$(OPTC)" AR="$(AR)" ARFUNCT= RANLIB="$(RANLIB)" libpord_ptscotch.so; fi;
|
||||
if [ "$(LPORDDIR)" != "" ] ; then \
|
||||
- cp -a $(LPORDDIR)/libpord_scotch*.so lib/; fi;
|
||||
+ cp -a $(LPORDDIR)/libpord_ptscotch*.so lib/; fi;
|
||||
|
||||
clean:
|
||||
(cd src; $(MAKE) clean)
|
||||
Index: mumps-4.9.2.dfsg/PORD/lib/Makefile
|
||||
===================================================================
|
||||
--- mumps-4.9.2.dfsg.orig/PORD/lib/Makefile 2010-04-02 12:18:01.000000000 +0200
|
||||
+++ mumps-4.9.2.dfsg/PORD/lib/Makefile 2010-04-02 12:18:01.000000000 +0200
|
||||
@@ -21,16 +21,16 @@
|
||||
.c.o:
|
||||
$(CC) $(COPTIONS) -c $*.c
|
||||
|
||||
-libpord_scotch.a: $(OBJS)
|
||||
+libpord_ptscotch.a: $(OBJS)
|
||||
$(AR) $(ARFUNCT) $@ $(OBJS)
|
||||
$(RANLIB) $@
|
||||
|
||||
-libpord_scotch.so: $(OBJS)
|
||||
- $(CC) -shared $(OBJS) -Wl,-soname,libpord_scotch-4.9.2.so -o libpord_scotch-4.9.2.so
|
||||
- ln -s libpord_scotch-4.9.2.so $@
|
||||
+libpord_ptscotch.so: $(OBJS)
|
||||
+ $(CC) -shared $(OBJS) -Wl,-soname,libpord_ptscotch-4.9.2.so -o libpord_ptscotch-4.9.2.so
|
||||
+ ln -s libpord_ptscotch-4.9.2.so $@
|
||||
|
||||
clean:
|
||||
rm -f *.o
|
||||
|
||||
realclean:
|
||||
- rm -f *.o libpord_scotch.a *.so
|
||||
+ rm -f *.o libpord_ptscotch.a *.so
|
||||
Index: mumps-4.9.2.dfsg/src/Makefile
|
||||
===================================================================
|
||||
--- mumps-4.9.2.dfsg.orig/src/Makefile 2010-04-02 12:18:01.000000000 +0200
|
||||
+++ mumps-4.9.2.dfsg/src/Makefile 2010-04-02 13:27:06.000000000 +0200
|
||||
@@ -19,10 +19,10 @@
|
||||
|
||||
include $(topdir)/Makefile.inc
|
||||
|
||||
-mumps_lib: $(libdir)/libmumps_common_scotch$(PLAT).a \
|
||||
- $(libdir)/libmumps_common_scotch$(PLAT).so \
|
||||
- $(libdir)/lib$(ARITH)mumps_scotch$(PLAT).a \
|
||||
- $(libdir)/lib$(ARITH)mumps_scotch$(PLAT).so
|
||||
+mumps_lib: $(libdir)/libmumps_common_ptscotch$(PLAT).a \
|
||||
+ $(libdir)/libmumps_common_ptscotch$(PLAT).so \
|
||||
+ $(libdir)/lib$(ARITH)mumps_ptscotch$(PLAT).a \
|
||||
+ $(libdir)/lib$(ARITH)mumps_ptscotch$(PLAT).so
|
||||
|
||||
OBJS_COMMON = \
|
||||
mumps_part9.o\
|
||||
@@ -53,21 +53,21 @@
|
||||
$(ARITH)mumps_struc_def.o
|
||||
|
||||
|
||||
-$(libdir)/libmumps_common_scotch$(PLAT).a: $(OBJS_COMMON)
|
||||
+$(libdir)/libmumps_common_ptscotch$(PLAT).a: $(OBJS_COMMON)
|
||||
$(AR) $@ $?
|
||||
$(RANLIB) $@
|
||||
|
||||
-$(libdir)/libmumps_common_scotch$(PLAT).so: $(OBJS_COMMON) $(topdir)/libseq/libmpiseq.so
|
||||
- $(FC) -shared $^ -Wl,-soname,libmumps_common_scotch$(PLAT)-4.9.2.so -L$(libdir) -lpord_scotch -lpthread -lmpiseq -o $(libdir)/libmumps_common_scotch$(PLAT)-4.9.2.so
|
||||
- ln -s libmumps_common_scotch$(PLAT)-4.9.2.so $@
|
||||
+$(libdir)/libmumps_common_ptscotch$(PLAT).so: $(OBJS_COMMON)
|
||||
+ $(FC) -shared $^ -Wl,-soname,libmumps_common_ptscotch$(PLAT)-4.9.2.so -L$(libdir) -lpord_ptscotch -lpthread -o $(libdir)/libmumps_common_ptscotch$(PLAT)-4.9.2.so
|
||||
+ ln -s libmumps_common_ptscotch$(PLAT)-4.9.2.so $@
|
||||
|
||||
-$(libdir)/lib$(ARITH)mumps_scotch$(PLAT).a: $(OBJS)
|
||||
+$(libdir)/lib$(ARITH)mumps_ptscotch$(PLAT).a: $(OBJS)
|
||||
$(AR) $@ $?
|
||||
$(RANLIB) $@
|
||||
|
||||
-$(libdir)/lib$(ARITH)mumps_scotch$(PLAT).so: $(OBJS)
|
||||
- $(FC) -shared $^ -Wl,-soname,lib$(ARITH)mumps_scotch$(PLAT)-4.9.2.so -L$(libdir) -lmumps_common_scotch -lmpiseq -lblas -o $(libdir)/lib$(ARITH)mumps_scotch$(PLAT)-4.9.2.so
|
||||
- ln -s lib$(ARITH)mumps_scotch$(PLAT)-4.9.2.so $@
|
||||
+$(libdir)/lib$(ARITH)mumps_ptscotch$(PLAT).so: $(OBJS)
|
||||
+ $(FC) -shared $^ -Wl,-soname,lib$(ARITH)mumps_ptscotch$(PLAT)-4.9.2.so -L$(libdir) -lmumps_common_ptscotch -lblas -lblacs-$(MUMPS_MPI) -lscalapack-$(MUMPS_MPI) -o $(libdir)/lib$(ARITH)mumps_ptscotch$(PLAT)-4.9.2.so
|
||||
+ ln -s lib$(ARITH)mumps_ptscotch$(PLAT)-4.9.2.so $@
|
||||
|
||||
$(ARITH)mumps_load.o: $(ARITH)mumps_comm_buffer.o \
|
||||
$(ARITH)mumps_struc_def.o
|
118
mumps-4.9.2-debian-scotch.patch
Normal file
118
mumps-4.9.2-debian-scotch.patch
Normal file
@ -0,0 +1,118 @@
|
||||
Add scotch support with different library names to PORD and MUMPS libraries.
|
||||
|
||||
Index: mumps-4.9.2.dfsg/Makefile
|
||||
===================================================================
|
||||
--- mumps-4.9.2.dfsg.orig/Makefile 2010-04-01 19:03:02.000000000 +0200
|
||||
+++ mumps-4.9.2.dfsg/Makefile 2010-04-01 19:04:04.000000000 +0200
|
||||
@@ -47,7 +47,7 @@
|
||||
zexamples: z
|
||||
|
||||
|
||||
-requiredobj: Makefile.inc $(LIBSEQNEEDED) $(libdir)/libpord_seq$(PLAT).a $(libdir)/libpord_seq$(PLAT).so
|
||||
+requiredobj: Makefile.inc $(LIBSEQNEEDED) $(libdir)/libpord_scotch$(PLAT).a $(libdir)/libpord_scotch$(PLAT).so
|
||||
|
||||
# dummy MPI library (sequential version)
|
||||
|
||||
@@ -55,21 +55,21 @@
|
||||
(cd libseq; $(MAKE))
|
||||
cp libseq/lib* $(libdir)
|
||||
|
||||
-# Build the libpord_seq.a library and copy it into $(topdir)/lib
|
||||
-$(libdir)/libpord_seq$(PLAT).a:
|
||||
+# Build the libpord_scotch.a library and copy it into $(topdir)/lib
|
||||
+$(libdir)/libpord_scotch$(PLAT).a:
|
||||
if [ "$(LPORDDIR)" != "" ] ; then \
|
||||
cd $(LPORDDIR); \
|
||||
$(MAKE) CC="$(CC)" CFLAGS="$(OPTC)" AR="$(AR)" ARFUNCT= RANLIB="$(RANLIB)"; \
|
||||
fi;
|
||||
if [ "$(LPORDDIR)" != "" ] ; then \
|
||||
- cp $(LPORDDIR)/libpord_seq.a $@; \
|
||||
+ cp $(LPORDDIR)/libpord_scotch.a $@; \
|
||||
fi;
|
||||
|
||||
-$(libdir)/libpord_seq$(PLAT).so:
|
||||
+$(libdir)/libpord_scotch$(PLAT).so:
|
||||
if [ "$(LPORDDIR)" != "" ] ; then \
|
||||
- cd $(LPORDDIR); make CC="$(CC)" CFLAGS="$(OPTC)" AR="$(AR)" ARFUNCT= RANLIB="$(RANLIB)" libpord_seq.so; fi;
|
||||
+ cd $(LPORDDIR); make CC="$(CC)" CFLAGS="$(OPTC)" AR="$(AR)" ARFUNCT= RANLIB="$(RANLIB)" libpord_scotch.so; fi;
|
||||
if [ "$(LPORDDIR)" != "" ] ; then \
|
||||
- cp -a $(LPORDDIR)/libpord_seq*.so lib/; fi;
|
||||
+ cp -a $(LPORDDIR)/libpord_scotch*.so lib/; fi;
|
||||
|
||||
clean:
|
||||
(cd src; $(MAKE) clean)
|
||||
Index: mumps-4.9.2.dfsg/PORD/lib/Makefile
|
||||
===================================================================
|
||||
--- mumps-4.9.2.dfsg.orig/PORD/lib/Makefile 2010-04-01 19:03:02.000000000 +0200
|
||||
+++ mumps-4.9.2.dfsg/PORD/lib/Makefile 2010-04-01 19:03:54.000000000 +0200
|
||||
@@ -21,16 +21,16 @@
|
||||
.c.o:
|
||||
$(CC) $(COPTIONS) -c $*.c
|
||||
|
||||
-libpord_seq.a: $(OBJS)
|
||||
+libpord_scotch.a: $(OBJS)
|
||||
$(AR) $(ARFUNCT) $@ $(OBJS)
|
||||
$(RANLIB) $@
|
||||
|
||||
-libpord_seq.so: $(OBJS)
|
||||
- $(CC) -shared $(OBJS) -Wl,-soname,libpord_seq-4.9.2.so -o libpord_seq-4.9.2.so
|
||||
- ln -s libpord_seq-4.9.2.so $@
|
||||
+libpord_scotch.so: $(OBJS)
|
||||
+ $(CC) -shared $(OBJS) -Wl,-soname,libpord_scotch-4.9.2.so -o libpord_scotch-4.9.2.so
|
||||
+ ln -s libpord_scotch-4.9.2.so $@
|
||||
|
||||
clean:
|
||||
rm -f *.o
|
||||
|
||||
realclean:
|
||||
- rm -f *.o libpord_seq.a *.so
|
||||
+ rm -f *.o libpord_scotch.a *.so
|
||||
Index: mumps-4.9.2.dfsg/src/Makefile
|
||||
===================================================================
|
||||
--- mumps-4.9.2.dfsg.orig/src/Makefile 2010-04-01 19:03:02.000000000 +0200
|
||||
+++ mumps-4.9.2.dfsg/src/Makefile 2010-04-01 19:03:42.000000000 +0200
|
||||
@@ -19,10 +19,10 @@
|
||||
|
||||
include $(topdir)/Makefile.inc
|
||||
|
||||
-mumps_lib: $(libdir)/libmumps_common_seq$(PLAT).a \
|
||||
- $(libdir)/libmumps_common_seq$(PLAT).so \
|
||||
- $(libdir)/lib$(ARITH)mumps_seq$(PLAT).a \
|
||||
- $(libdir)/lib$(ARITH)mumps_seq$(PLAT).so
|
||||
+mumps_lib: $(libdir)/libmumps_common_scotch$(PLAT).a \
|
||||
+ $(libdir)/libmumps_common_scotch$(PLAT).so \
|
||||
+ $(libdir)/lib$(ARITH)mumps_scotch$(PLAT).a \
|
||||
+ $(libdir)/lib$(ARITH)mumps_scotch$(PLAT).so
|
||||
|
||||
OBJS_COMMON = \
|
||||
mumps_part9.o\
|
||||
@@ -53,21 +53,21 @@
|
||||
$(ARITH)mumps_struc_def.o
|
||||
|
||||
|
||||
-$(libdir)/libmumps_common_seq$(PLAT).a: $(OBJS_COMMON)
|
||||
+$(libdir)/libmumps_common_scotch$(PLAT).a: $(OBJS_COMMON)
|
||||
$(AR) $@ $?
|
||||
$(RANLIB) $@
|
||||
|
||||
-$(libdir)/libmumps_common_seq$(PLAT).so: $(OBJS_COMMON) $(topdir)/libseq/libmpiseq.so
|
||||
- $(FC) -shared $^ -Wl,-soname,libmumps_common_seq$(PLAT)-4.9.2.so -L$(libdir) -lpord_seq -lpthread -lmpiseq -o $(libdir)/libmumps_common_seq$(PLAT)-4.9.2.so
|
||||
- ln -s libmumps_common_seq$(PLAT)-4.9.2.so $@
|
||||
+$(libdir)/libmumps_common_scotch$(PLAT).so: $(OBJS_COMMON) $(topdir)/libseq/libmpiseq.so
|
||||
+ $(FC) -shared $^ -Wl,-soname,libmumps_common_scotch$(PLAT)-4.9.2.so -L$(libdir) -lpord_scotch -lpthread -lmpiseq -o $(libdir)/libmumps_common_scotch$(PLAT)-4.9.2.so
|
||||
+ ln -s libmumps_common_scotch$(PLAT)-4.9.2.so $@
|
||||
|
||||
-$(libdir)/lib$(ARITH)mumps_seq$(PLAT).a: $(OBJS)
|
||||
+$(libdir)/lib$(ARITH)mumps_scotch$(PLAT).a: $(OBJS)
|
||||
$(AR) $@ $?
|
||||
$(RANLIB) $@
|
||||
|
||||
-$(libdir)/lib$(ARITH)mumps_seq$(PLAT).so: $(OBJS)
|
||||
- $(FC) -shared $^ -Wl,-soname,lib$(ARITH)mumps_seq$(PLAT)-4.9.2.so -L$(libdir) -lmumps_common_seq -lmpiseq -lblas -o $(libdir)/lib$(ARITH)mumps_seq$(PLAT)-4.9.2.so
|
||||
- ln -s lib$(ARITH)mumps_seq$(PLAT)-4.9.2.so $@
|
||||
+$(libdir)/lib$(ARITH)mumps_scotch$(PLAT).so: $(OBJS)
|
||||
+ $(FC) -shared $^ -Wl,-soname,lib$(ARITH)mumps_scotch$(PLAT)-4.9.2.so -L$(libdir) -lmumps_common_scotch -lmpiseq -lblas -o $(libdir)/lib$(ARITH)mumps_scotch$(PLAT)-4.9.2.so
|
||||
+ ln -s lib$(ARITH)mumps_scotch$(PLAT)-4.9.2.so $@
|
||||
|
||||
$(ARITH)mumps_load.o: $(ARITH)mumps_comm_buffer.o \
|
||||
$(ARITH)mumps_struc_def.o
|
37
mumps-4.9.2-debian-shared-libseq.patch
Normal file
37
mumps-4.9.2-debian-shared-libseq.patch
Normal file
@ -0,0 +1,37 @@
|
||||
Create a shared version of the sequential library, MUST BE LAST IN SERIES
|
||||
|
||||
--- mumps-4.9.2.dfsg.orig/libseq/Makefile
|
||||
+++ mumps-4.9.2.dfsg/libseq/Makefile
|
||||
@@ -7,15 +7,18 @@
|
||||
|
||||
include ../Makefile.inc
|
||||
|
||||
-libmpiseq: libmpiseq$(PLAT).a
|
||||
+libmpiseq: libmpiseq$(PLAT).a libmpiseq$(PLAT).so
|
||||
|
||||
libmpiseq$(PLAT).a: mpi.o mpic.o elapse.o
|
||||
$(AR) $@ mpi.o mpic.o elapse.o
|
||||
$(RANLIB) $@
|
||||
+libmpiseq$(PLAT).so: mpi.o mpic.o elapse.o
|
||||
+ $(FC) -shared $^ -Wl,-soname,libmpiseq$(PLAT).so.4.9.2 -o libmpiseq$(PLAT).so.4.9.2
|
||||
+ ln -s libmpiseq$(PLAT).so.4.9.2 $@
|
||||
.f.o:
|
||||
- $(FC) $(OPTF) -c $*.f
|
||||
+ $(FC) $(OPTF) -fPIC -c $*.f
|
||||
.c.o:
|
||||
- $(CC) $(OPTC) $(CDEFS) -I. -c $*.c
|
||||
+ $(CC) $(OPTC) $(CDEFS) -I. -fPIC -c $*.c
|
||||
|
||||
clean:
|
||||
- $(RM) *.o *.a
|
||||
+ $(RM) *.o *.a *.so
|
||||
--- mumps-4.9.2.dfsg.orig/Makefile
|
||||
+++ mumps-4.9.2.dfsg/Makefile
|
||||
@@ -57,6 +57,7 @@
|
||||
|
||||
libseqneeded:
|
||||
(cd libseq; $(MAKE))
|
||||
+ cp libseq/lib* $(libdir)
|
||||
|
||||
# Build the libpord.a library and copy it into $(topdir)/lib
|
||||
$(libdir)/libpord$(PLAT).a:
|
51
mumps-4.9.2-debian-shared-mumps.patch
Normal file
51
mumps-4.9.2-debian-shared-mumps.patch
Normal file
@ -0,0 +1,51 @@
|
||||
Create a shared version of the MUMPS library.
|
||||
|
||||
--- mumps-4.9.2.dfsg.orig/src/Makefile
|
||||
+++ mumps-4.9.2.dfsg/src/Makefile
|
||||
@@ -20,7 +20,9 @@
|
||||
include $(topdir)/Makefile.inc
|
||||
|
||||
mumps_lib: $(libdir)/libmumps_common$(PLAT).a \
|
||||
- $(libdir)/lib$(ARITH)mumps$(PLAT).a
|
||||
+ $(libdir)/libmumps_common$(PLAT).so \
|
||||
+ $(libdir)/lib$(ARITH)mumps$(PLAT).a \
|
||||
+ $(libdir)/lib$(ARITH)mumps$(PLAT).so
|
||||
|
||||
OBJS_COMMON = \
|
||||
mumps_part9.o\
|
||||
@@ -55,10 +57,18 @@
|
||||
$(AR) $@ $?
|
||||
$(RANLIB) $@
|
||||
|
||||
+$(libdir)/libmumps_common$(PLAT).so: $(OBJS_COMMON)
|
||||
+ $(FC) -shared $^ -Wl,-soname,libmumps_common$(PLAT).so.4.9.2 -L$(libdir) $(LORDERINGS) -lpthread $(MUMPS_LIBF77) -o $(libdir)/libmumps_common$(PLAT).so.4.9.2
|
||||
+ ln -s libmumps_common$(PLAT).so.4.9.2 $@
|
||||
+
|
||||
$(libdir)/lib$(ARITH)mumps$(PLAT).a: $(OBJS)
|
||||
$(AR) $@ $?
|
||||
$(RANLIB) $@
|
||||
|
||||
+$(libdir)/lib$(ARITH)mumps$(PLAT).so: $(OBJS)
|
||||
+ $(FC) -shared $^ -Wl,-soname,lib$(ARITH)mumps$(PLAT).so.4.9.2 -L$(libdir) -lmumps_common$(PLAT) $(LORDERINGS) $(MUMPS_LIBF77) $(LIBBLAS) $(SCALAP) -o $(libdir)/lib$(ARITH)mumps$(PLAT).so.4.9.2
|
||||
+ ln -s lib$(ARITH)mumps$(PLAT).so.4.9.2 $@
|
||||
+
|
||||
$(ARITH)mumps_load.o: $(ARITH)mumps_comm_buffer.o \
|
||||
$(ARITH)mumps_struc_def.o
|
||||
|
||||
@@ -87,13 +97,13 @@
|
||||
|
||||
.SUFFIXES: .c .F .o
|
||||
.F.o:
|
||||
- $(FC) $(OPTF) $(INC) $(IORDERINGSF) $(ORDERINGSF) -I. -I../include -c $*.F
|
||||
+ $(FC) $(OPTF) $(INC) $(IORDERINGSF) $(ORDERINGSF) -I. -I../include -fPIC -c $*.F
|
||||
.c.o:
|
||||
- $(CC) $(OPTC) $(INC) -I../include $(CDEFS) $(IORDERINGSC) $(ORDERINGSC) -c $*.c
|
||||
+ $(CC) $(OPTC) $(INC) -I../include $(CDEFS) $(IORDERINGSC) $(ORDERINGSC) -fPIC -c $*.c
|
||||
|
||||
$(ARITH)mumps_c.o: mumps_c.c
|
||||
$(CC) $(OPTC) $(INC) $(CDEFS) -DMUMPS_ARITH=MUMPS_ARITH_$(ARITH) \
|
||||
- $(IORDERINGSC) $(ORDERINGSC) -I../include -c $? -o $@
|
||||
+ $(IORDERINGSC) $(ORDERINGSC) -I../include -fPIC -c $? -o $@
|
||||
|
||||
|
||||
clean:
|
69
mumps-4.9.2-debian-shared-pord.patch
Normal file
69
mumps-4.9.2-debian-shared-pord.patch
Normal file
@ -0,0 +1,69 @@
|
||||
Create a shared version of the PORD library.
|
||||
|
||||
Index: mumps-4.9.2.dfsg/PORD/lib/Makefile
|
||||
===================================================================
|
||||
--- mumps-4.9.2.dfsg.orig/PORD/lib/Makefile 2009-11-05 02:05:08.000000000 -0500
|
||||
+++ mumps-4.9.2.dfsg/PORD/lib/Makefile 2010-04-09 15:01:38.000000000 -0400
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
INCLUDES = -I../include
|
||||
|
||||
-COPTIONS = $(INCLUDES) $(CFLAGS) $(OPTFLAGS)
|
||||
+COPTIONS = $(INCLUDES) $(CFLAGS) $(OPTFLAGS) -fPIC
|
||||
|
||||
OBJS = graph.o gbipart.o gbisect.o ddcreate.o ddbisect.o nestdiss.o \
|
||||
multisector.o gelim.o bucket.o tree.o \
|
||||
@@ -21,12 +21,16 @@
|
||||
.c.o:
|
||||
$(CC) $(COPTIONS) -c $*.c
|
||||
|
||||
-libpord.a: $(OBJS)
|
||||
+libpord$(PLAT).a: $(OBJS)
|
||||
$(AR) $(ARFUNCT) $@ $(OBJS)
|
||||
$(RANLIB) $@
|
||||
|
||||
+libpord$(PLAT).so: $(OBJS)
|
||||
+ $(CC) -shared $(OBJS) -Wl,-soname,libpord$(PLAT).so.4.9.2 -o libpord$(PLAT).so.4.9.2
|
||||
+ ln -s libpord$(PLAT).so.4.9.2 $@
|
||||
+
|
||||
clean:
|
||||
rm -f *.o
|
||||
|
||||
realclean:
|
||||
- rm -f *.o libpord.a
|
||||
+ rm -f *.o libpord*.a *.so
|
||||
Index: mumps-4.9.2.dfsg/Makefile
|
||||
===================================================================
|
||||
--- mumps-4.9.2.dfsg.orig/Makefile 2009-11-05 02:05:08.000000000 -0500
|
||||
+++ mumps-4.9.2.dfsg/Makefile 2010-04-09 15:02:14.000000000 -0400
|
||||
@@ -51,7 +51,7 @@
|
||||
(cd examples ; $(MAKE) z)
|
||||
|
||||
|
||||
-requiredobj: Makefile.inc $(LIBSEQNEEDED) $(libdir)/libpord$(PLAT).a
|
||||
+requiredobj: Makefile.inc $(LIBSEQNEEDED) $(libdir)/libpord$(PLAT).a $(libdir)/libpord$(PLAT).so
|
||||
|
||||
# dummy MPI library (sequential version)
|
||||
|
||||
@@ -65,13 +65,19 @@
|
||||
$(MAKE) CC="$(CC)" CFLAGS="$(OPTC)" AR="$(AR)" ARFUNCT= RANLIB="$(RANLIB)"; \
|
||||
fi;
|
||||
if [ "$(LPORDDIR)" != "" ] ; then \
|
||||
- cp $(LPORDDIR)/libpord.a $@; \
|
||||
+ cp $(LPORDDIR)/libpord$(PLAT).a $@; \
|
||||
fi;
|
||||
|
||||
+$(libdir)/libpord$(PLAT).so:
|
||||
+ if [ "$(LPORDDIR)" != "" ] ; then \
|
||||
+ cd $(LPORDDIR); make CC="$(CC)" CFLAGS="$(OPTC)" AR="$(AR)" ARFUNCT= RANLIB="$(RANLIB)" libpord$(PLAT).so; fi;
|
||||
+ if [ "$(LPORDDIR)" != "" ] ; then \
|
||||
+ cp -a $(LPORDDIR)/libpord*.so lib/; fi;
|
||||
+
|
||||
clean:
|
||||
(cd src; $(MAKE) clean)
|
||||
(cd examples; $(MAKE) clean)
|
||||
- (cd $(libdir); $(RM) *$(PLAT).a)
|
||||
+ (cd $(libdir); $(RM) *$(PLAT).a *$(PLAT).so)
|
||||
(cd libseq; $(MAKE) clean)
|
||||
if [ $(LPORDDIR) != "" ] ; then \
|
||||
cd $(LPORDDIR); $(MAKE) realclean; \
|
62
mumps-4.9.2-debian-tests-shlibs.patch
Normal file
62
mumps-4.9.2-debian-tests-shlibs.patch
Normal file
@ -0,0 +1,62 @@
|
||||
Have the tests link against the shared libs instead of static ones.
|
||||
|
||||
--- mumps-4.9.2.dfsg/examples/Makefile~ 2009-11-05 02:05:21.000000000 -0500
|
||||
+++ mumps-4.9.2.dfsg/examples/Makefile 2009-12-07 17:54:56.000000000 -0500
|
||||
@@ -19,28 +19,28 @@
|
||||
|
||||
include $(topdir)/Makefile.inc
|
||||
|
||||
-LIBMUMPS_COMMON = $(libdir)/libmumps_common$(PLAT).a
|
||||
+LIBMUMPS_COMMON = $(libdir)/libmumps_common$(PLAT).so
|
||||
|
||||
|
||||
-LIBSMUMPS = $(libdir)/libsmumps$(PLAT).a $(LIBMUMPS_COMMON)
|
||||
+LIBSMUMPS = $(libdir)/libsmumps$(PLAT).so $(LIBMUMPS_COMMON)
|
||||
|
||||
ssimpletest: $(LIBSMUMPS) $$@.o
|
||||
$(FL) -o $@ $(OPTL) ssimpletest.o $(LIBSMUMPS) $(LORDERINGS) $(LIB) $(LIBBLAS) $(LIBOTHERS)
|
||||
|
||||
|
||||
-LIBDMUMPS = $(libdir)/libdmumps$(PLAT).a $(LIBMUMPS_COMMON)
|
||||
+LIBDMUMPS = $(libdir)/libdmumps$(PLAT).so $(LIBMUMPS_COMMON)
|
||||
|
||||
dsimpletest: $(LIBDMUMPS) $$@.o
|
||||
$(FL) -o $@ $(OPTL) dsimpletest.o $(LIBDMUMPS) $(LORDERINGS) $(LIB) $(LIBBLAS) $(LIBOTHERS)
|
||||
|
||||
|
||||
-LIBCMUMPS = $(libdir)/libcmumps$(PLAT).a $(LIBMUMPS_COMMON)
|
||||
+LIBCMUMPS = $(libdir)/libcmumps$(PLAT).so $(LIBMUMPS_COMMON)
|
||||
|
||||
csimpletest: $(LIBCMUMPS) $$@.o
|
||||
$(FL) -o $@ $(OPTL) csimpletest.o $(LIBCMUMPS) $(LORDERINGS) $(LIB) $(LIBBLAS) $(LIBOTHERS)
|
||||
|
||||
|
||||
-LIBZMUMPS = $(libdir)/libzmumps$(PLAT).a $(LIBMUMPS_COMMON)
|
||||
+LIBZMUMPS = $(libdir)/libzmumps$(PLAT).so $(LIBMUMPS_COMMON)
|
||||
|
||||
zsimpletest: $(LIBZMUMPS) $$@.o
|
||||
$(FL) -o $@ $(OPTL) zsimpletest.o $(LIBZMUMPS) $(LORDERINGS) $(LIB) $(LIBBLAS) $(LIBOTHERS)
|
||||
@@ -57,19 +57,19 @@
|
||||
$(CC) $(OPTC) $(INC) -I. -I$(topdir)/include -c $*.c
|
||||
|
||||
|
||||
-$(libdir)/libsmumps$(PLAT).a:
|
||||
+$(libdir)/libsmumps$(PLAT).so:
|
||||
@echo 'Error: you should build the library' $@ 'first'
|
||||
exit -1
|
||||
|
||||
-$(libdir)/libdmumps$(PLAT).a:
|
||||
+$(libdir)/libdmumps$(PLAT).so:
|
||||
@echo 'Error: you should build the library' $@ 'first'
|
||||
exit -1
|
||||
|
||||
-$(libdir)/libcmumps$(PLAT).a:
|
||||
+$(libdir)/libcmumps$(PLAT).so:
|
||||
@echo 'Error: you should build the library' $@ 'first'
|
||||
exit -1
|
||||
|
||||
-$(libdir)/libzmumps$(PLAT).a:
|
||||
+$(libdir)/libzmumps$(PLAT).so:
|
||||
@echo 'Error: you should build the library' $@ 'first'
|
||||
exit -1
|
||||
|
3
mumps-4.9.2.tar.bz2
Normal file
3
mumps-4.9.2.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:7b0afaeeca6be7dcc9f2f7d5706960621f686f9d5f4e25c8bf8d49d13b000dd8
|
||||
size 1820798
|
28
mumps.changes
Normal file
28
mumps.changes
Normal file
@ -0,0 +1,28 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 20 21:08:35 UTC 2012 - scorot@free.fr
|
||||
|
||||
- minor spec file changes
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 3 21:47:55 UTC 2012 - scorot@free.fr
|
||||
|
||||
- remove atlas deps and link againt ref blas
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun May 13 14:11:40 UTC 2012 - scorot@free.fr
|
||||
|
||||
- fix build on i586
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun May 13 11:33:35 UTC 2012 - scorot@free.fr
|
||||
|
||||
- spec file cleanup and formating
|
||||
- remove mpich2 stuff
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 8 19:22:00 UTC 2012 - scorot@free.fr
|
||||
|
||||
- specfile cleanup and update with scotch changes
|
||||
- link with ATLAS shared libs libsatlas.so
|
||||
- bulid parallel libs for openmpi and mvapich2
|
||||
|
474
mumps.spec
Normal file
474
mumps.spec
Normal file
@ -0,0 +1,474 @@
|
||||
#
|
||||
# spec file for package mumps
|
||||
#
|
||||
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%if 0%{?sles_version}
|
||||
%define _mpi openmpi mvapich2
|
||||
%else
|
||||
%define _mpi openmpi
|
||||
%endif
|
||||
|
||||
Summary: A MUltifrontal Massively Parallel Sparse direct Solver
|
||||
License: SUSE-Public-Domain
|
||||
Group: System/Libraries
|
||||
Name: mumps
|
||||
Version: 4.9.2
|
||||
Release: 0
|
||||
Url: http://mumps.enseeiht.fr/
|
||||
Source0: %{name}-%{version}.tar.bz2
|
||||
Source1: Makefile.ptscotch.inc
|
||||
Source2: Makefile.scotch.inc
|
||||
Source3: Makefile.seq.inc
|
||||
Source4: Makefile.par.inc
|
||||
Patch0: mumps-4.9.2-debian-shared-libseq.patch
|
||||
Patch1: mumps-4.9.2-debian-shared-pord.patch
|
||||
Patch2: mumps-4.9.2-debian-tests-shlibs.patch
|
||||
Patch3: mumps-4.9.2-debian-shared-mumps.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
BuildRequires: blacs-openmpi-devel
|
||||
BuildRequires: gcc-fortran
|
||||
BuildRequires: libptscotch-openmpi-devel
|
||||
BuildRequires: libscotch-devel
|
||||
BuildRequires: openmpi-devel
|
||||
BuildRequires: scalapack-openmpi-devel
|
||||
%if 0%{?sles_version}
|
||||
BuildRequires: blacs-mvapich2-devel
|
||||
BuildRequires: libptscotch-mvapich2-devel
|
||||
BuildRequires: mvapich2-devel
|
||||
BuildRequires: scalapack-mvapich2-devel
|
||||
%endif
|
||||
BuildRequires: blas-devel
|
||||
BuildRequires: lapack-devel
|
||||
|
||||
%description
|
||||
MUMPS implements a direct solver for large sparse linear systems, with a
|
||||
particular focus on symmetric positive definite matrices. It can
|
||||
operate on distributed matrices e.g. over a cluster. It has Fortran and
|
||||
C interfaces, and can interface with ordering tools such as Scotch.
|
||||
|
||||
This package contains the sequential library.
|
||||
|
||||
|
||||
%package scotch
|
||||
Summary: A MUltifrontal Massively Parallel Sparse direct Solver
|
||||
Group: System/Libraries
|
||||
Requires: mumps = %{version}
|
||||
|
||||
%description scotch
|
||||
MUMPS implements a direct solver for large sparse linear systems, with a
|
||||
particular focus on symmetric positive definite matrices. It can
|
||||
operate on distributed matrices e.g. over a cluster. It has Fortran and
|
||||
C interfaces, and can interface with ordering tools such as Scotch.
|
||||
|
||||
This package contains the sequential library with Scotch support enabled.
|
||||
|
||||
|
||||
%package devel
|
||||
Summary: Files needed for developing mumps based applications
|
||||
Group: Development/Libraries/Other
|
||||
Requires: blas-devel
|
||||
Requires: lapack-devel
|
||||
Requires: mumps = %{version}
|
||||
Requires: mumps-scotch = %{version}
|
||||
Requires: scotch-devel
|
||||
|
||||
%description devel
|
||||
MUMPS implements a direct solver for large sparse linear systems, with a
|
||||
particular focus on symmetric positive definite matrices. It can
|
||||
operate on distributed matrices e.g. over a cluster. It has Fortran and
|
||||
C interfaces, and can interface with ordering tools such as Scotch.
|
||||
|
||||
%package openmpi
|
||||
Summary: A MUltifrontal Massively Parallel Sparse direct Solver
|
||||
Group: System/Libraries
|
||||
Requires: mumps = %{version}
|
||||
|
||||
%description openmpi
|
||||
MUMPS implements a direct solver for large sparse linear systems, with a
|
||||
particular focus on symmetric positive definite matrices. It can
|
||||
operate on distributed matrices e.g. over a cluster. It has Fortran and
|
||||
C interfaces, and can interface with ordering tools such as Scotch.
|
||||
|
||||
This package contains the parallel library build with openmpi.
|
||||
|
||||
|
||||
%package ptscotch-openmpi
|
||||
Summary: A MUltifrontal Massively Parallel Sparse direct Solver
|
||||
Group: System/Libraries
|
||||
Requires: mumps = %{version}
|
||||
|
||||
%description ptscotch-openmpi
|
||||
MUMPS implements a direct solver for large sparse linear systems, with a
|
||||
particular focus on symmetric positive definite matrices. It can
|
||||
operate on distributed matrices e.g. over a cluster. It has Fortran and
|
||||
C interfaces, and can interface with ordering tools such as Scotch.
|
||||
|
||||
This package contains the parallel library build with openmpi and with
|
||||
Scotch enabled.
|
||||
|
||||
|
||||
%package openmpi-devel
|
||||
Summary: Files needed for developing mumps based applications
|
||||
Group: Development/Libraries/Parallel
|
||||
Requires: blacs-openmpi-devel
|
||||
Requires: blas-devel
|
||||
Requires: lapack-devel
|
||||
Requires: mumps-openmpi = %{version}
|
||||
Requires: mumps-scotch-openmpi = %{version}
|
||||
Requires: openmpi-devel
|
||||
Requires: ptscotch-openmpi-devel
|
||||
Requires: scalapack-openmpi-devel
|
||||
|
||||
%description openmpi-devel
|
||||
MUMPS implements a direct solver for large sparse linear systems, with a
|
||||
particular focus on symmetric positive definite matrices. It can
|
||||
operate on distributed matrices e.g. over a cluster. It has Fortran and
|
||||
C interfaces, and can interface with ordering tools such as Scotch.
|
||||
|
||||
|
||||
%package test-openmpi
|
||||
Summary: Simple test programs and examples for mumps
|
||||
Group: System/Libraries
|
||||
|
||||
%description test-openmpi
|
||||
MUMPS implements a direct solver for large sparse linear systems, with a
|
||||
particular focus on symmetric positive definite matrices. It can
|
||||
operate on distributed matrices e.g. over a cluster. It has Fortran and
|
||||
C interfaces, and can interface with ordering tools such as Scotch.
|
||||
|
||||
This packages contains some test and examples programs for mumps. In addition,
|
||||
matlab and scilab extensions are provided in /usr/share/doc/packages/mumps.
|
||||
|
||||
%if 0%{?sles_version}
|
||||
%package mvapich2
|
||||
Summary: A MUltifrontal Massively Parallel Sparse direct Solver
|
||||
Group: System/Libraries
|
||||
Requires: mumps = %{version}
|
||||
|
||||
%description mvapich2
|
||||
MUMPS implements a direct solver for large sparse linear systems, with a
|
||||
particular focus on symmetric positive definite matrices. It can
|
||||
operate on distributed matrices e.g. over a cluster. It has Fortran and
|
||||
C interfaces, and can interface with ordering tools such as Scotch.
|
||||
|
||||
This package contains the parallel library build with mvapich2.
|
||||
|
||||
|
||||
%package ptscotch-mvapich2
|
||||
Summary: A MUltifrontal Massively Parallel Sparse direct Solver
|
||||
Group: System/Libraries
|
||||
Requires: mumps = %{version}
|
||||
|
||||
%description ptscotch-mvapich2
|
||||
MUMPS implements a direct solver for large sparse linear systems, with a
|
||||
particular focus on symmetric positive definite matrices. It can
|
||||
operate on distributed matrices e.g. over a cluster. It has Fortran and
|
||||
C interfaces, and can interface with ordering tools such as Scotch.
|
||||
|
||||
This package contains the parallel library build with mvapich2 and with
|
||||
Scotch enabled.
|
||||
|
||||
|
||||
%package mvapich2-devel
|
||||
Summary: Files needed for developing mumps based applications
|
||||
Group: Development/Libraries/Parallel
|
||||
Requires: blacs-mvapich2-devel
|
||||
Requires: blas-devel
|
||||
Requires: lapack-devel
|
||||
Requires: mumps-mvapich2 = %{version}
|
||||
Requires: mumps-scotch-mvapich2 = %{version}
|
||||
Requires: mvapich2-devel
|
||||
Requires: ptscotch-mvapich2-devel
|
||||
Requires: scalapack-mvapich2-devel
|
||||
|
||||
%description mvapich2-devel
|
||||
MUMPS implements a direct solver for large sparse linear systems, with a
|
||||
particular focus on symmetric positive definite matrices. It can
|
||||
operate on distributed matrices e.g. over a cluster. It has Fortran and
|
||||
C interfaces, and can interface with ordering tools such as Scotch.
|
||||
|
||||
|
||||
%package test-mvapich2
|
||||
Summary: Simple test programs and examples for mumps
|
||||
Group: System/Libraries
|
||||
|
||||
%description test-mvapich2
|
||||
MUMPS implements a direct solver for large sparse linear systems, with a
|
||||
particular focus on symmetric positive definite matrices. It can
|
||||
operate on distributed matrices e.g. over a cluster. It has Fortran and
|
||||
C interfaces, and can interface with ordering tools such as Scotch.
|
||||
|
||||
This packages contains some test and examples programs for mumps. In addition,
|
||||
matlab and scilab extensions are provided in /usr/share/doc/packages/mumps.
|
||||
%endif
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
|
||||
%build
|
||||
export SUSE_ASNEEDED=0
|
||||
|
||||
# sequential with scotch support enabled
|
||||
cp -f %{S:2} Makefile.inc
|
||||
make MUMPS_MPI=openmpi MUMPS_LIBF77="-lmpiseq_scotch" \
|
||||
OPTC="$RPM_OPT_FLAGS" \
|
||||
PLAT="_scotch" all
|
||||
cp -a lib libmumps_scotch
|
||||
cp -af libseq/lib* libmumps_scotch
|
||||
cp -af PORD/lib/libpord_scotch.so* libmumps_scotch
|
||||
make clean
|
||||
rm -f Makefile.inc
|
||||
|
||||
# sequential only
|
||||
cp -f %{S:3} Makefile.inc
|
||||
make MUMPS_LIBF77="-lmpiseq_seq" PLAT="_seq" \
|
||||
OPTC="$RPM_OPT_FLAGS" all
|
||||
cp -a lib libmumps_seq
|
||||
cp -af libseq/lib* libmumps_seq
|
||||
cp -af PORD/lib/libpord_seq.so* libmumps_seq
|
||||
make clean
|
||||
rm -f Makefile.inc
|
||||
|
||||
# ptscotch : parallel with scotch support enabled
|
||||
%if 0%{?sles_version}
|
||||
cp -f %{S:1} Makefile.inc
|
||||
export LD_LIBRARY_PATH=%{_libdir}/mpi/gcc/mvapich2/%_lib
|
||||
make MUMPS_MPI=mvapich2 \
|
||||
FC=%{_libdir}/mpi/gcc/mvapich2/bin/mpif77 \
|
||||
MUMPS_LIBF77="-L%{_libdir}/mpi/gcc/mvapich2/%_lib -lfmpich -lmpich" \
|
||||
OPTC="$RPM_OPT_FLAGS" \
|
||||
INCPAR=-I%{_libdir}/mpi/gcc/mvapich2/include \
|
||||
PLAT="_ptscotch" all
|
||||
# build test programs
|
||||
cp -a lib libmumps_ptscotch_mvapich2
|
||||
cp -af PORD/lib/libpord_ptscotch.so* libmumps_ptscotch_mvapich2/
|
||||
make clean
|
||||
rm -f Makefile.inc
|
||||
%endif
|
||||
|
||||
cp -f %{S:1} Makefile.inc
|
||||
export LD_LIBRARY_PATH=%{_libdir}/mpi/gcc/openmpi/%_lib
|
||||
make MUMPS_MPI=openmpi \
|
||||
FC=%{_libdir}/mpi/gcc/openmpi/bin/mpif77 \
|
||||
MUMPS_LIBF77="-L%{_libdir}/mpi/gcc/openmpi/%_lib -lmpi_f77 -lmpi" \
|
||||
OPTC="$RPM_OPT_FLAGS" \
|
||||
INCPAR=-I%{_libdir}/mpi/gcc/openmpi/include \
|
||||
PLAT="_ptscotch" all
|
||||
# build test programs
|
||||
cp -a lib libmumps_ptscotch_openmpi
|
||||
cp -af PORD/lib/libpord_ptscotch.so* libmumps_ptscotch_openmpi/
|
||||
make clean
|
||||
rm -f Makefile.inc
|
||||
|
||||
%if 0%{?sles_version}
|
||||
cp %{S:4} Makefile.inc
|
||||
export LD_LIBRARY_PATH=%{_libdir}/mpi/gcc/mvapich2/%_lib
|
||||
make MUMPS_MPI=mvapich2 \
|
||||
FC=%{_libdir}/mpi/gcc/mvapich2/bin/mpif77 \
|
||||
MUMPS_LIBF77="-L%{_libdir}/mpi/gcc/mvapich2/%_lib -lfmpich -lmpich" \
|
||||
OPTC="$RPM_OPT_FLAGS" all
|
||||
# build test programs
|
||||
cd examples
|
||||
make all
|
||||
cd ..
|
||||
#
|
||||
cp -a lib lib_mvapich2
|
||||
cp -af PORD/lib/libpord.so* lib_mvapich2
|
||||
cp -a examples examples_mvapich2
|
||||
make clean
|
||||
rm -f Makefile.inc
|
||||
%endif
|
||||
|
||||
cp %{S:4} Makefile.inc
|
||||
export LD_LIBRARY_PATH=%{_libdir}/mpi/gcc/openmpi/%_lib
|
||||
make MUMPS_MPI=openmpi \
|
||||
FC=%{_libdir}/mpi/gcc/openmpi/bin/mpif77 \
|
||||
MUMPS_LIBF77="-L%{_libdir}/mpi/gcc/openmpi/%_lib -lmpi_f77 -lmpi" \
|
||||
OPTC="$RPM_OPT_FLAGS" all
|
||||
# build test programs
|
||||
cd examples
|
||||
make all
|
||||
cd ..
|
||||
#
|
||||
cp -a lib lib_openmpi
|
||||
cp -af PORD/lib/libpord.so* lib_openmpi
|
||||
cp -a examples examples_openmpi
|
||||
make clean
|
||||
rm -f Makefile.inc
|
||||
|
||||
%install
|
||||
mkdir -p %{buildroot}%{_libdir}
|
||||
mkdir -p %{buildroot}%{_includedir}/mumps
|
||||
mkdir -p %{buildroot}%{_includedir}/pord
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
|
||||
# install sequential libs
|
||||
cp -P libmumps_seq/lib*.a %{buildroot}%{_libdir}
|
||||
cp -P libmumps_scotch/*.a %{buildroot}%{_libdir}
|
||||
cp -P libmumps_seq/lib*.so* %{buildroot}%{_libdir}
|
||||
cp -P libmumps_scotch/*.so* %{buildroot}%{_libdir}
|
||||
|
||||
cp -P PORD/lib/*.so* %{buildroot}%{_libdir}
|
||||
|
||||
# install parallel libs
|
||||
for mpi in %_mpi; do
|
||||
mkdir -p %{buildroot}%{_libdir}/mpi/gcc/$mpi/%_lib
|
||||
mkdir -p %{buildroot}%{_libdir}/mpi/gcc/$mpi/bin
|
||||
cp -P lib_$mpi/lib*.a %{buildroot}%{_libdir}/mpi/gcc/$mpi/%_lib
|
||||
cp -P libmumps_ptscotch_$mpi/*.a %{buildroot}%{_libdir}/mpi/gcc/$mpi/%_lib
|
||||
cp -P lib_$mpi/lib*.so* %{buildroot}%{_libdir}/mpi/gcc/$mpi/%_lib
|
||||
cp -P libmumps_ptscotch_$mpi/*.so* %{buildroot}%{_libdir}/mpi/gcc/$mpi/%_lib
|
||||
install -m 755 examples_$mpi/*simpletest %{buildroot}%{_libdir}/mpi/gcc/$mpi/bin
|
||||
install -m 755 examples_$mpi/c_example %{buildroot}%{_libdir}/mpi/gcc/$mpi/bin
|
||||
done
|
||||
|
||||
install -m 644 include/* %{buildroot}%{_includedir}/mumps
|
||||
install -m 644 PORD/include/* %{buildroot}%{_includedir}/pord
|
||||
|
||||
# Don't want binaries in docdir
|
||||
rm -rf examples/*.o examples/*simpletest examples/c_example
|
||||
|
||||
# Remove parallel libs in sequential lib directory
|
||||
rm -f %{buildroot}%{_libdir}/libpord.so*
|
||||
rm -f %{buildroot}%{_libdir}/libpord_ptscotch.so*
|
||||
|
||||
%clean
|
||||
rm -rf %{buildroot}
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%post scotch -p /sbin/ldconfig
|
||||
%postun scotch -p /sbin/ldconfig
|
||||
|
||||
%post openmpi -p /sbin/ldconfig
|
||||
%postun openmpi -p /sbin/ldconfig
|
||||
|
||||
%post ptscotch-openmpi -p /sbin/ldconfig
|
||||
%postun ptscotch-openmpi -p /sbin/ldconfig
|
||||
|
||||
%if 0%{?sles_version}
|
||||
%post mvapich2 -p /sbin/ldconfig
|
||||
%postun mvapich2 -p /sbin/ldconfig
|
||||
|
||||
%post ptscotch-mvapich2 -p /sbin/ldconfig
|
||||
%postun ptscotch-mvapich2 -p /sbin/ldconfig
|
||||
%endif
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc ChangeLog README LICENSE VERSION doc SCILAB MATLAB
|
||||
%{_libdir}/libcmumps_seq.so.*
|
||||
%{_libdir}/libdmumps_seq.so.*
|
||||
%{_libdir}/libsmumps_seq.so.*
|
||||
%{_libdir}/libzmumps_seq.so.*
|
||||
%{_libdir}/libmumps_common_seq.so.*
|
||||
%{_libdir}/libmpiseq_seq.so.*
|
||||
%{_libdir}/libpord_seq.so.*
|
||||
|
||||
%files scotch
|
||||
%defattr(-,root,root,-)
|
||||
%{_libdir}/libcmumps_scotch.so.*
|
||||
%{_libdir}/libdmumps_scotch.so.*
|
||||
%{_libdir}/libsmumps_scotch.so.*
|
||||
%{_libdir}/libzmumps_scotch.so.*
|
||||
%{_libdir}/libmumps_common_scotch.so.*
|
||||
%{_libdir}/libmpiseq_scotch.so.*
|
||||
%{_libdir}/libpord_scotch.so.*
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root,-)
|
||||
%{_includedir}/mumps
|
||||
%{_includedir}/pord
|
||||
%{_libdir}/*.so
|
||||
%{_libdir}/*.a
|
||||
|
||||
%files openmpi
|
||||
%defattr(-,root,root,-)
|
||||
%{_libdir}/mpi/gcc/openmpi/%_lib/libcmumps.so.*
|
||||
%{_libdir}/mpi/gcc/openmpi/%_lib/libdmumps.so.*
|
||||
%{_libdir}/mpi/gcc/openmpi/%_lib/libsmumps.so.*
|
||||
%{_libdir}/mpi/gcc/openmpi/%_lib/libzmumps.so.*
|
||||
%{_libdir}/mpi/gcc/openmpi/%_lib/libmumps_common.so.*
|
||||
%{_libdir}/mpi/gcc/openmpi/%_lib/libpord.so.*
|
||||
%exclude %{_libdir}/mpi/gcc/openmpi/%_lib/lib*seq.*
|
||||
%exclude %{_libdir}/mpi/gcc/openmpi/%_lib/lib*scotch.*
|
||||
%exclude %{_libdir}/mpi/gcc/openmpi/%_lib/libmumps_common_*scotch.*
|
||||
|
||||
%files ptscotch-openmpi
|
||||
%defattr(-,root,root,-)
|
||||
%{_libdir}/mpi/gcc/openmpi/%_lib/libcmumps_ptscotch.so.*
|
||||
%{_libdir}/mpi/gcc/openmpi/%_lib/libdmumps_ptscotch.so.*
|
||||
%{_libdir}/mpi/gcc/openmpi/%_lib/libsmumps_ptscotch.so.*
|
||||
%{_libdir}/mpi/gcc/openmpi/%_lib/libzmumps_ptscotch.so.*
|
||||
%{_libdir}/mpi/gcc/openmpi/%_lib/libmumps_common_ptscotch.so.*
|
||||
%{_libdir}/mpi/gcc/openmpi/%_lib/libpord_ptscotch.so.*
|
||||
%exclude %{_libdir}/mpi/gcc/openmpi/%_lib/lib*seq.*
|
||||
%exclude %{_libdir}/mpi/gcc/openmpi/%_lib/lib*mumps_scotch.*
|
||||
%exclude %{_libdir}/mpi/gcc/openmpi/%_lib/libmumps_common_scotch.*
|
||||
|
||||
%files openmpi-devel
|
||||
%defattr(-,root,root,-)
|
||||
%{_libdir}/mpi/gcc/openmpi/%_lib/*.so
|
||||
%{_libdir}/mpi/gcc/openmpi/%_lib/*.a
|
||||
|
||||
%if 0%{?sles_version}
|
||||
%files mvapich2
|
||||
%defattr(-,root,root,-)
|
||||
%{_libdir}/mpi/gcc/mvapich2/%_lib/libcmumps.so.*
|
||||
%{_libdir}/mpi/gcc/mvapich2/%_lib/libdmumps.so.*
|
||||
%{_libdir}/mpi/gcc/mvapich2/%_lib/libsmumps.so.*
|
||||
%{_libdir}/mpi/gcc/mvapich2/%_lib/libzmumps.so.*
|
||||
%{_libdir}/mpi/gcc/mvapich2/%_lib/libmumps_common.so.*
|
||||
%{_libdir}/mpi/gcc/mvapich2/%_lib/libpord.so.*
|
||||
%exclude %{_libdir}/mpi/gcc/mvapich2/%_lib/lib*seq.*
|
||||
%exclude %{_libdir}/mpi/gcc/mvapich2/%_lib/lib*scotch.*
|
||||
%exclude %{_libdir}/mpi/gcc/mvapich2/%_lib/libmumps_common_*scotch.*
|
||||
|
||||
%files ptscotch-mvapich2
|
||||
%defattr(-,root,root,-)
|
||||
%{_libdir}/mpi/gcc/mvapich2/%_lib/libcmumps_ptscotch.so.*
|
||||
%{_libdir}/mpi/gcc/mvapich2/%_lib/libdmumps_ptscotch.so.*
|
||||
%{_libdir}/mpi/gcc/mvapich2/%_lib/libsmumps_ptscotch.so.*
|
||||
%{_libdir}/mpi/gcc/mvapich2/%_lib/libzmumps_ptscotch.so.*
|
||||
%{_libdir}/mpi/gcc/mvapich2/%_lib/libmumps_common_ptscotch.so.*
|
||||
%{_libdir}/mpi/gcc/mvapich2/%_lib/libpord_ptscotch.so.*
|
||||
%exclude %{_libdir}/mpi/gcc/mvapich2/%_lib/lib*seq.*
|
||||
%exclude %{_libdir}/mpi/gcc/mvapich2/%_lib/lib*mumps_scotch.*
|
||||
%exclude %{_libdir}/mpi/gcc/mvapich2/%_lib/libmumps_common_scotch.*
|
||||
|
||||
%files mvapich2-devel
|
||||
%defattr(-,root,root,-)
|
||||
%{_libdir}/mpi/gcc/mvapich2/%_lib/*.so
|
||||
%{_libdir}/mpi/gcc/mvapich2/%_lib/*.a
|
||||
|
||||
%files test-mvapich2
|
||||
%defattr(-,root,root,-)
|
||||
%doc examples
|
||||
%{_libdir}/mpi/gcc/mvapich2/bin/*
|
||||
%endif
|
||||
|
||||
%files test-openmpi
|
||||
%defattr(-,root,root,-)
|
||||
%doc examples
|
||||
%{_libdir}/mpi/gcc/openmpi/bin/*
|
||||
|
||||
%changelog
|
Loading…
Reference in New Issue
Block a user