aboutsummaryrefslogtreecommitdiffstats
path: root/math/mumps
diff options
context:
space:
mode:
authorthierry <thierry@FreeBSD.org>2014-05-14 05:45:49 +0800
committerthierry <thierry@FreeBSD.org>2014-05-14 05:45:49 +0800
commita6bb0b556a4182624119aba2bd2c1d3f8bc26483 (patch)
tree0d61c26998f4549406511999a717ba6f7a781b7c /math/mumps
parent8f104d6e0fec7067da1fa86831e519f33e078015 (diff)
downloadfreebsd-ports-gnome-a6bb0b556a4182624119aba2bd2c1d3f8bc26483.tar.gz
freebsd-ports-gnome-a6bb0b556a4182624119aba2bd2c1d3f8bc26483.tar.zst
freebsd-ports-gnome-a6bb0b556a4182624119aba2bd2c1d3f8bc26483.zip
1- Upgrade to 4.10.0: this version is required by french/aster;
2- Stagify. PR: ports/181227 Submitted by: /me Approved by: maintainer's time-out
Diffstat (limited to 'math/mumps')
-rw-r--r--math/mumps/Makefile46
-rw-r--r--math/mumps/distinfo4
-rw-r--r--math/mumps/files/patch-Make.inc+Makefile.inc.generic51
-rw-r--r--math/mumps/files/patch-Make.inc+Makefile.inc.generic.SEQ56
-rw-r--r--math/mumps/files/patch-PORD_lib_Makefile11
-rw-r--r--math/mumps/files/patch-libseq_Makefile11
-rw-r--r--math/mumps/files/patch-src_Makefile16
-rw-r--r--math/mumps/pkg-descr2
8 files changed, 125 insertions, 72 deletions
diff --git a/math/mumps/Makefile b/math/mumps/Makefile
index 0a2cfce36b18..5aaed3afc664 100644
--- a/math/mumps/Makefile
+++ b/math/mumps/Makefile
@@ -2,8 +2,7 @@
# $FreeBSD$
PORTNAME= mumps
-PORTVERSION= 4.8.4
-PORTREVISION= 4
+PORTVERSION= 4.10.0
CATEGORIES= math
MASTER_SITES= http://mumps.enseeiht.fr/ \
http://graal.ens-lyon.fr/MUMPS/ \
@@ -14,10 +13,14 @@ DISTNAME= MUMPS_${PORTVERSION}
MAINTAINER= bf@FreeBSD.org
COMMENT= MUltifrontal Massively Parallel sparse direct Solver
+LICENSE= Public_Domain
+LICENSE_NAME= "Public Domain"
+LICENSE_FILE= ${WRKSRC}/LICENSE
+LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
+
#-----------------------------------------------------------------------
# WARNING: Non-serviceable parts inside, can break other ports
-NO_STAGE= yes
# You may define these options/knobs:
#
# FFLAGS: Fortran compiler flags for gfortran
@@ -32,8 +35,10 @@ SLAVEDIRS= math/mumps-mpich
USES= fortran
+MAKE_JOBS_UNSAFE=yes
+
FORTRANLIBS= -lgfortran
-GCCLIBDIR= -L`${CAT} ${WRKSRC}/LIBDIR` -L`${CAT} ${WRKSRC}/LIBDIR`/../../..
+GCCLIBDIR= ${LDFLAGS}
.if defined(WITH_OPTIMIZED_FLAGS)
FFLAGS+= -O3 -ffast-math
@@ -52,11 +57,11 @@ PLIST_SUB+= MUMPSVERSION=${PORTVERSION}
WITH_ATLAS= yes
.endif
.if defined(WITH_ATLAS)
-LIB_DEPENDS+= atlas.2:${PORTSDIR}/math/atlas
+LIB_DEPENDS+= libatlas.so:${PORTSDIR}/math/atlas
BLAS_LIBS= -lf77blas
LAPACK_LIBS= -lalapack -lcblas
.else
-LIB_DEPENDS+= blas.2:${PORTSDIR}/math/blas
+LIB_DEPENDS+= libblas.so:${PORTSDIR}/math/blas
BLAS_LIBS= -lblas
LAPACK_LIBS= -llapack
.endif
@@ -66,7 +71,7 @@ PKGNAMESUFFIX+= -mpich
BUILD_DEPENDS+= ${LOCALBASE}/include/mpif.h:${PORTSDIR}/net/mpich2 \
${LOCALBASE}/lib/libblacs.a:${PORTSDIR}/math/blacs \
${LOCALBASE}/lib/libscalapack.a:${PORTSDIR}/math/scalapack
-LIB_DEPENDS+= lapack:${PORTSDIR}/math/lapack
+LIB_DEPENDS+= liblapack.so:${PORTSDIR}/math/lapack
# Note: -l?mumps still requires to be linked with -lblacs + -lscalapack
RUN_DEPENDS+= ${LOCALBASE}/bin/mpirun:${PORTSDIR}/net/mpich2 \
${LOCALBASE}/lib/libblacs.a:${PORTSDIR}/math/blacs \
@@ -82,12 +87,12 @@ PLIST_SUB+= WITH_LIBSEQ=""
PLIST_SUB+= WITH_LIBSEQ="@comment "
.endif
-post-patch:
+pre-configure:
.ifdef WITH_MPI
- @${INSTALL_DATA} ${WRKSRC}/Make.inc/Makefile.inc.generic \
+ ${INSTALL_DATA} ${WRKSRC}/Make.inc/Makefile.inc.generic \
${WRKSRC}/Makefile.inc
.else
- @${INSTALL_DATA} ${WRKSRC}/Make.inc/Makefile.inc.generic.SEQ \
+ ${INSTALL_DATA} ${WRKSRC}/Make.inc/Makefile.inc.generic.SEQ \
${WRKSRC}/Makefile.inc
.endif
@@ -100,7 +105,6 @@ pre-build:
s+@FORTRANLIBS@+${FORTRANLIBS}+g; \
s+@PTHREAD_LIBS@+${PTHREAD_LIBS}+g; \
s+@BLAS_LIBS@+${BLAS_LIBS}+ ; \
- s+../PORD+${WRKSRC}/PORD+; \
s+@LOCALBASE@+${LOCALBASE}+g;' \
${WRKSRC}/Makefile.inc
.ifdef WITH_MPI
@@ -111,24 +115,24 @@ pre-build:
.endif
do-install:
- ${INSTALL_DATA} ${WRKSRC}/include/*.h ${PREFIX}/include
- ${INSTALL_DATA} ${WRKSRC}/lib/lib*.a ${PREFIX}/lib
+ ${INSTALL_DATA} ${WRKSRC}/include/*.h ${STAGEDIR}${PREFIX}/include
+ ${INSTALL_DATA} ${WRKSRC}/lib/lib*.a ${STAGEDIR}${PREFIX}/lib
.ifndef WITH_MPI
- ${INSTALL_DATA} ${WRKSRC}/libseq/libmpiseq.a ${PREFIX}/lib
+ ${INSTALL_DATA} ${WRKSRC}/libseq/libmpiseq.a ${STAGEDIR}${PREFIX}/lib
.endif
.ifndef NOPORTDOCS
- @${MKDIR} ${DOCSDIR}
- ${INSTALL_DATA} ${WRKSRC}/doc/userguide_${PORTVERSION}.pdf ${DOCSDIR}
- ${INSTALL_DATA} ${WRKSRC}/doc/userguide_${PORTVERSION}.ps ${DOCSDIR}
- ${GZIP_CMD} ${DOCSDIR}/userguide_${PORTVERSION}.ps
+ ${MKDIR} ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_DATA} ${WRKSRC}/doc/userguide_${PORTVERSION}.pdf ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_DATA} ${WRKSRC}/doc/userguide_${PORTVERSION}.ps ${STAGEDIR}${DOCSDIR}
+ ${GZIP_CMD} ${STAGEDIR}${DOCSDIR}/userguide_${PORTVERSION}.ps
.endif
.ifndef NOPORTEXAMPLES
- @${MKDIR} ${EXAMPLESDIR}
+ ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
. for ex in Makefile README *.c *.F input_simpletest_*
- ${INSTALL_DATA} ${WRKSRC}/examples/${ex} ${EXAMPLESDIR}
+ ${INSTALL_DATA} ${WRKSRC}/examples/${ex} ${STAGEDIR}${EXAMPLESDIR}
. endfor
. for ex in c_example *simpletest
- ${INSTALL_PROGRAM} ${WRKSRC}/examples/${ex} ${EXAMPLESDIR}
+ ${INSTALL_PROGRAM} ${WRKSRC}/examples/${ex} ${STAGEDIR}${EXAMPLESDIR}
. endfor
.endif
diff --git a/math/mumps/distinfo b/math/mumps/distinfo
index 3dbcbffae78b..aca42d6ee1bc 100644
--- a/math/mumps/distinfo
+++ b/math/mumps/distinfo
@@ -1,2 +1,2 @@
-SHA256 (MUMPS_4.8.4.tar.gz) = cda022a12ce632ae753dcffc06411b2569647fafa01db947cc6a280d465acb2d
-SIZE (MUMPS_4.8.4.tar.gz) = 2007524
+SHA256 (MUMPS_4.10.0.tar.gz) = d0f86f91a74c51a17a2ff1be9c9cee2338976f13a6d00896ba5b43a5ca05d933
+SIZE (MUMPS_4.10.0.tar.gz) = 2481516
diff --git a/math/mumps/files/patch-Make.inc+Makefile.inc.generic b/math/mumps/files/patch-Make.inc+Makefile.inc.generic
index 464e45902abe..60a3228312b2 100644
--- a/math/mumps/files/patch-Make.inc+Makefile.inc.generic
+++ b/math/mumps/files/patch-Make.inc+Makefile.inc.generic
@@ -1,30 +1,33 @@
---- Make.inc/Makefile.inc.generic.orig Fri Apr 14 08:00:50 2006
-+++ Make.inc/Makefile.inc.generic Fri May 26 10:28:02 2006
-@@ -39,20 +39,20 @@
- # Metis is now available as an internal ordering for MUMPS.
-
-
--#LSCOTCHDIR = $(HOME)/JY/emilio/bin/generic
-+#LSCOTCHDIR = @LOCALBASE@/lib
- #LSCOTCH = -L$(LSCOTCHDIR) -lesmumps -lfax -lorder -lscotch -lsymbol -ldof -lgraph -lcommon -lm
+--- Make.inc/Makefile.inc.generic.orig 2011-05-10 14:56:32.000000000 +0200
++++ Make.inc/Makefile.inc.generic 2013-08-11 17:41:51.000000000 +0200
+@@ -39,7 +39,7 @@
+ # Metis/ParMetis and SCOTCH/PT-SCOTCH (ver 5.1 and later) orderings are now available for MUMPS.
+ #
- LPORDDIR = ../PORD/lib/
- IPORD = -I../PORD/include/
+-#SCOTCHDIR = ${HOME}/scotch_5.1_esmumps
++#SCOTCHDIR = @LOCALBASE@
+ #ISCOTCH = -I$(SCOTCHDIR)/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
+@@ -55,7 +55,7 @@
+ IPORD = -I$(topdir)/PORD/include/
LPORD = -L$(LPORDDIR) -lpord
--#LMETISDIR = Directory containing Metis library
-+LMETISDIR = @LOCALBASE@/lib
- #IMETIS = # Metis doesn't need include files (Fortran interface avail.)
- #LMETIS = -L$(LMETISDIR) -lmetis
+-#LMETISDIR = /local/metis/
++#LMETISDIR = @LOCALBASE@/lib
+ #IMETIS = # Should be provided if you use parmetis
- # Corresponding variables reused later
- #ORDERINGS = -Dmetis -Dpord
+ # You have to choose one among the following two lines depending on
+@@ -70,7 +70,7 @@
+ # 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
+ORDERINGSF += -Dpord
ORDERINGSC = $(ORDERINGSF)
+
LORDERINGS = $(LMETIS) $(LPORD) $(LSCOTCH)
- IORDERINGS = $(IMETIS) $(IPORD) $(ISCOTCH)
-@@ -66,11 +66,11 @@
+@@ -91,11 +91,11 @@
# RM : remove files
RM = /bin/rm -f
# CC : C compiler
@@ -37,9 +40,9 @@
-FL = f90
+FL = @FC@
# AR : Archive object in a library
- AR = ar vr
- # RANLIB : generate index of an archive file
-@@ -79,13 +79,13 @@
+ # keep a space at the end if options have to be separated from lib name
+ AR = ar vr
+@@ -105,13 +105,13 @@
#RANLIB = echo
# SCALAP should define the SCALAPACK and BLACS libraries.
@@ -56,7 +59,7 @@
# The parallel version is not concerned by the next two lines.
# They are related to the sequential library provided by MUMPS,
-@@ -95,10 +95,10 @@
+@@ -121,10 +121,10 @@
# DEFINE HERE YOUR BLAS LIBRARY
@@ -69,7 +72,7 @@
# FORTRAN/C COMPATIBILITY:
# Use:
-@@ -111,11 +111,11 @@
+@@ -137,11 +137,11 @@
# leave empty if your Fortran compiler does not change the symbols.
#
diff --git a/math/mumps/files/patch-Make.inc+Makefile.inc.generic.SEQ b/math/mumps/files/patch-Make.inc+Makefile.inc.generic.SEQ
index 1a712c8e7898..af2c7f83e878 100644
--- a/math/mumps/files/patch-Make.inc+Makefile.inc.generic.SEQ
+++ b/math/mumps/files/patch-Make.inc+Makefile.inc.generic.SEQ
@@ -1,30 +1,33 @@
---- Make.inc/Makefile.inc.generic.SEQ.orig Fri Apr 14 08:00:50 2006
-+++ Make.inc/Makefile.inc.generic.SEQ Fri May 26 10:27:58 2006
-@@ -42,20 +42,20 @@
- # Metis is now available as an internal ordering for MUMPS.
-
-
--#LSCOTCHDIR = $(HOME)/JY/emilio/bin/generic
-+#LSCOTCHDIR = @LOCALBASE@/lib
- #LSCOTCH = -L$(LSCOTCHDIR) -lesmumps -lfax -lorder -lscotch -lsymbol -ldof -lgraph -lcommon -lm
+--- Make.inc/Makefile.inc.generic.SEQ.orig 2011-05-10 14:56:32.000000000 +0200
++++ Make.inc/Makefile.inc.generic.SEQ 2013-08-11 18:13:02.000000000 +0200
+@@ -41,7 +41,7 @@
+ # Metis/ParMetis and SCOTCH/PT-SCOTCH (ver 5.1 and later) orderings are now available for MUMPS.
+ #
- LPORDDIR = ../PORD/lib/
- IPORD = -I../PORD/include/
+-#SCOTCHDIR = ${HOME}/scotch_5.1_esmumps
++#SCOTCHDIR = @LOCALBASE@
+ #ISCOTCH = -I$(SCOTCHDIR)/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
+@@ -57,7 +57,7 @@
+ IPORD = -I$(topdir)/PORD/include/
LPORD = -L$(LPORDDIR) -lpord
--#LMETISDIR = Directory containing Metis library
-+LMETISDIR = @LOCALBASE@/lib
- #IMETIS = # Metis doesn't need include files (Fortran interface avail.)
- #LMETIS = -L$(LMETISDIR) -lmetis
+-#LMETISDIR = /local/metis/
++#LMETISDIR = @LOCALBASE@/lib
+ #IMETIS = # Should be provided if you use parmetis
- # Corresponding variables reused later
- #ORDERINGS = -Dmetis -Dpord
+ # You have to choose one among the following two lines depending on
+@@ -72,7 +72,7 @@
+ # 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
+ORDERINGSF += -Dpord
ORDERINGSC = $(ORDERINGSF)
+
LORDERINGS = $(LMETIS) $(LPORD) $(LSCOTCH)
- IORDERINGS = $(IMETIS) $(IPORD) $(ISCOTCH)
-@@ -69,11 +69,11 @@
+@@ -95,11 +95,11 @@
# RM : remove files
RM = /bin/rm -f
# CC : C compiler
@@ -37,9 +40,14 @@
-FL = f90
+FL = @FC@
# AR : Archive object in a library
- AR = ar vr
- # RANLIB : generate index of an archive file
-@@ -89,10 +89,10 @@
+ # keep a space at the end if options have to be separated from lib name
+ AR = ar vr
+@@ -112,14 +112,14 @@
+ # the sequential library provided by MUMPS, to use instead
+ # of ScaLAPACK and MPI.
+ INCSEQ = -I$(topdir)/libseq
+-LIBSEQ = -Llibseq -lmpiseq
++LIBSEQ = -L$(topdir)/libseq -lmpiseq
# DEFINE HERE YOUR BLAS LIBRARY
@@ -48,11 +56,11 @@
# DEFINE HERE YOUR PTHREAD LIBRARY
-LIBOTHERS = -lpthread
-+LIBOTHERS = @PTHREAD_LIBS@ @FORTRANLIBS@
++LIBOTHERS = @PTHREAD_LIBS@ @GCCLIBDIR@ @FORTRANLIBS@
# FORTRAN/C COMPATIBILITY:
# Use:
-@@ -105,12 +105,12 @@
+@@ -132,12 +132,12 @@
# leave empty if your Fortran compiler does not change the symbols.
#
diff --git a/math/mumps/files/patch-PORD_lib_Makefile b/math/mumps/files/patch-PORD_lib_Makefile
new file mode 100644
index 000000000000..81650eefd782
--- /dev/null
+++ b/math/mumps/files/patch-PORD_lib_Makefile
@@ -0,0 +1,11 @@
+--- PORD/lib/Makefile.orig 2011-05-10 14:56:32.000000000 +0200
++++ PORD/lib/Makefile 2013-08-11 18:31:47.000000000 +0200
+@@ -22,7 +22,7 @@
+ $(CC) $(COPTIONS) -c $*.c $(OUTC)$*.o
+
+ libpord$(LIBEXT):$(OBJS)
+- $(AR)$@ $(OBJS)
++ $(AR) $@ $(OBJS)
+ $(RANLIB) $@
+
+ clean:
diff --git a/math/mumps/files/patch-libseq_Makefile b/math/mumps/files/patch-libseq_Makefile
new file mode 100644
index 000000000000..49139f081522
--- /dev/null
+++ b/math/mumps/files/patch-libseq_Makefile
@@ -0,0 +1,11 @@
+--- libseq/Makefile.orig 2011-05-10 14:56:39.000000000 +0200
++++ libseq/Makefile 2013-08-11 18:05:34.000000000 +0200
+@@ -10,7 +10,7 @@
+ libmpiseq: libmpiseq$(PLAT)$(LIBEXT)
+
+ libmpiseq$(PLAT)$(LIBEXT): mpi.o mpic.o elapse.o
+- $(AR)$@ mpi.o mpic.o elapse.o
++ $(AR) $@ mpi.o mpic.o elapse.o
+ $(RANLIB) $@
+ .f.o:
+ $(FC) $(OPTF) -c $*.f $(OUTF)$*.o
diff --git a/math/mumps/files/patch-src_Makefile b/math/mumps/files/patch-src_Makefile
new file mode 100644
index 000000000000..a8fc29b955c7
--- /dev/null
+++ b/math/mumps/files/patch-src_Makefile
@@ -0,0 +1,16 @@
+--- src/Makefile.orig 2011-05-10 14:56:32.000000000 +0200
++++ src/Makefile 2013-08-11 18:08:25.000000000 +0200
+@@ -53,11 +53,11 @@
+
+
+ $(libdir)/libmumps_common$(PLAT)$(LIBEXT): $(OBJS_COMMON)
+- $(AR)$@ $?
++ $(AR) $@ $?
+ $(RANLIB) $@
+
+ $(libdir)/lib$(ARITH)mumps$(PLAT)$(LIBEXT): $(OBJS)
+- $(AR)$@ $?
++ $(AR) $@ $?
+ $(RANLIB) $@
+
+ $(ARITH)mumps_load.o: $(ARITH)mumps_comm_buffer.o \
diff --git a/math/mumps/pkg-descr b/math/mumps/pkg-descr
index 9800003c53a3..62d43aaf3361 100644
--- a/math/mumps/pkg-descr
+++ b/math/mumps/pkg-descr
@@ -13,4 +13,4 @@ format; elemental format.
- Partial factorization and Schur complement matrix.
- Several orderings interfaced : AMD, AMF, PORD, METIS
-WWW: http://graal.ens-lyon.fr/MUMPS/
+WWW: http://graal.ens-lyon.fr/MUMPS/