svn commit: r443735 - in head/math/superlu_mt: . files
Thierry Thomas
thierry at FreeBSD.org
Sat Jun 17 08:34:21 UTC 2017
Author: thierry
Date: Sat Jun 17 08:34:19 2017
New Revision: 443735
URL: https://svnweb.freebsd.org/changeset/ports/443735
Log:
Update math/superlu_mt to version 3.1, along with some cleanups.
PR: 219265
Submitted by: pfg
Deleted:
head/math/superlu_mt/files/patch-SRC+slu_mt_util.h
head/math/superlu_mt/files/patch-TESTING+pddrive.c
head/math/superlu_mt/files/patch-TESTING+pdgssv.c
head/math/superlu_mt/files/patch-TESTING+pdgssvx.c
Modified:
head/math/superlu_mt/Makefile
head/math/superlu_mt/distinfo
head/math/superlu_mt/files/patch-INSTALL-Makefile
head/math/superlu_mt/files/patch-make.inc
head/math/superlu_mt/pkg-descr
head/math/superlu_mt/pkg-plist
Modified: head/math/superlu_mt/Makefile
==============================================================================
--- head/math/superlu_mt/Makefile Sat Jun 17 08:34:11 2017 (r443734)
+++ head/math/superlu_mt/Makefile Sat Jun 17 08:34:19 2017 (r443735)
@@ -2,12 +2,11 @@
# $FreeBSD$
PORTNAME= superlu_mt
-PORTVERSION= 2.0.20080115
-PORTREVISION= 9
+PORTVERSION= 3.1.20160319
CATEGORIES= math
MASTER_SITES= http://crd.lbl.gov/~xiaoye/SuperLU/ \
http://crd.lbl.gov/~xiaoye/:doc
-DISTNAME= ${PORTNAME}_2.0
+DISTNAME= ${PORTNAME}_3.1
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} simax97.ps.gz:doc
DIST_SUBDIR= superlu2
EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
@@ -15,7 +14,11 @@ EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
MAINTAINER= ports at FreeBSD.org
COMMENT= Routines for performing multithreaded sparse factorization
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/License.txt
+
BROKEN_aarch64= fails to build: undefined reference to sbrk
+BROKEN_sparc64= Does not link on sparc64
USES= fortran gmake
@@ -49,21 +52,16 @@ FPIC= -fPIC
FPIC= -fpic
.endif
-.if ${ARCH} == "sparc64"
-BROKEN= Does not link on sparc64
-.endif
-
USE_LDCONFIG= yes
-WRKSRC= ${WRKDIR}/SuperLU_MT_2.0
-WRKSRC_SHARED= ${WRKDIR}/SuperLU_MT_2.0_shared
+WRKSRC= ${WRKDIR}/SuperLU_MT_3.1
+WRKSRC_SHARED= ${WRKDIR}/SuperLU_MT_3.1_shared
ALL_TARGET= lib
-SVERSION= 1
+SVERSION= 3
ARCH2FIX= CBLAS/Makefile MAKE_INC/make.openmp MAKE_INC/make.exemplar \
- MAKE_INC/make.pthreads TESTING/MATGEN/Makefile \
- make.inc SRC/Makefile
+ make.inc SRC/Makefile TESTING/MATGEN/Makefile
-post-patch:
+do-configure:
.for fmk in ${ARCH2FIX}
@${REINPLACE_CMD} -e 's|^ARCH *.= ar|ARCMD = ar| ; \
s|\$$(ARCH)|$$(ARCMD)|' ${WRKSRC}/${fmk}
@@ -106,20 +104,24 @@ do-build:
done
do-install:
- ${INSTALL_DATA} ${WRKDIR}/tmp_static/libsuperlu_mt.a ${STAGEDIR}${PREFIX}/lib
- ${INSTALL_LIB} ${WRKDIR}/tmp_shared/libsuperlu_mt.so.${SVERSION} ${STAGEDIR}${PREFIX}/lib
- cd ${STAGEDIR}${PREFIX}/lib && ${LN} -s -f libsuperlu_mt.so.${SVERSION} libsuperlu_mt.so
+ ${INSTALL_DATA} ${WRKDIR}/tmp_static/libsuperlu_mt_*.a ${STAGEDIR}${PREFIX}/lib
+ ${INSTALL_LIB} ${WRKDIR}/tmp_shared/libsuperlu_mt_*.so.${SVERSION} ${STAGEDIR}${PREFIX}/lib
+ ${RLN} ${STAGEDIR}${PREFIX}/lib/libsuperlu_mt_PTHREAD.so.${SVERSION} \
+ ${STAGEDIR}${PREFIX}/lib/libsuperlu_mt_PTHREAD.so
+ ${RLN} ${STAGEDIR}${PREFIX}/lib/libsuperlu_mt_PTHREAD.so.${SVERSION} \
+ ${STAGEDIR}${PREFIX}/lib/libsuperlu_mt.so
${MKDIR} ${STAGEDIR}${PREFIX}/include/${PORTNAME}
${INSTALL_DATA} ${WRKSRC}/SRC/*.h ${STAGEDIR}${PREFIX}/include/${PORTNAME}
.if ${PORT_OPTIONS:MDOCS}
@${MKDIR} ${STAGEDIR}${DOCSDIR}
-# ${INSTALL_DATA} ${WRKSRC}/INSTALL/*.ps ${STAGEDIR}${DOCSDIR}
-# ${GZIP_CMD} ${STAGEDIR}${DOCSDIR}/*.ps
+ ${INSTALL_DATA} ${WRKSRC}/DOC/*.pdf ${STAGEDIR}${DOCSDIR}
${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/simax97.ps.gz ${STAGEDIR}${DOCSDIR}
.endif
+.ifdef MAINTAINER_MODE
regression-test: do-build
@(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} testing)
@(cd ${WRKSRC_SHARED} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} testing)
+.endif
.include <bsd.port.post.mk>
Modified: head/math/superlu_mt/distinfo
==============================================================================
--- head/math/superlu_mt/distinfo Sat Jun 17 08:34:11 2017 (r443734)
+++ head/math/superlu_mt/distinfo Sat Jun 17 08:34:19 2017 (r443735)
@@ -1,4 +1,5 @@
-SHA256 (superlu2/superlu_mt_2.0.tar.gz) = 76f54f332db22313316798c3983b7bb704c159ce5a404ddda1f04d0fa477aab1
-SIZE (superlu2/superlu_mt_2.0.tar.gz) = 1332773
+TIMESTAMP = 1494706587
+SHA256 (superlu2/superlu_mt_3.1.tar.gz) = 407b544b9a92b2ed536b1e713e80f986824cf3016657a4bfc2f3e7d2a76ecab6
+SIZE (superlu2/superlu_mt_3.1.tar.gz) = 1824440
SHA256 (superlu2/simax97.ps.gz) = 8f8ae10e28dfdeda2fed58b0bcec1bf96f10fa7b1d055aff160d77d7aeb8a983
SIZE (superlu2/simax97.ps.gz) = 158724
Modified: head/math/superlu_mt/files/patch-INSTALL-Makefile
==============================================================================
--- head/math/superlu_mt/files/patch-INSTALL-Makefile Sat Jun 17 08:34:11 2017 (r443734)
+++ head/math/superlu_mt/files/patch-INSTALL-Makefile Sat Jun 17 08:34:19 2017 (r443735)
@@ -1,6 +1,6 @@
---- INSTALL/Makefile.orig 2013-11-16 19:14:28.000000000 +0100
-+++ INSTALL/Makefile 2013-11-16 19:14:58.000000000 +0100
-@@ -17,7 +17,7 @@
+--- INSTALL/Makefile.orig 2013-03-19 22:10:40 UTC
++++ INSTALL/Makefile
+@@ -17,7 +17,7 @@ install.out:
slamch.o: slamch.c ; $(CC) $(NOOPTS) -c $<
dlamch.o: dlamch.c ; $(CC) $(NOOPTS) -c $<
Modified: head/math/superlu_mt/files/patch-make.inc
==============================================================================
--- head/math/superlu_mt/files/patch-make.inc Sat Jun 17 08:34:11 2017 (r443734)
+++ head/math/superlu_mt/files/patch-make.inc Sat Jun 17 08:34:19 2017 (r443735)
@@ -1,62 +1,57 @@
---- make.inc.orig 2008-02-22 22:45:36 UTC
+--- make.inc.orig 2015-04-30 00:46:42 UTC
+++ make.inc
-@@ -16,13 +16,13 @@
- #
- # The machine (platform) identifier to append to the library names
- #
--PLAT = _sp
-+PLAT = _PTHREAD
-
- #
- # The name of the libraries to be created/linked to
- #
--TMGLIB = libtmglib.a
--SUPERLULIB = libsuperlu_mt$(PLAT).a
-+TMGLIB = libtmg.a
-+SUPERLULIB = libsuperlu_mt.a
-
- #
- # If you don't have ESSL, you can use the following blaslib instead:
-@@ -30,7 +30,7 @@ SUPERLULIB = libsuperlu_mt$(PLAT).a
- # which may be slower than ESSL
- #
- BLASDEF = -DUSE_VENDOR_BLAS
--BLASLIB = -lessl
-+BLASLIB = %%BLAS%%
- #BLASLIB = ../lib/libblas$(PLAT).a
- MATHLIB = -lm
- MPLIB = -lpthread
-@@ -38,7 +38,7 @@ MPLIB = -lpthread
+@@ -22,7 +22,7 @@ PLAT = _PTHREAD
+ TMGLIB = libtmglib$(PLAT).a
+ SUPERLULIB = libsuperlu_mt$(PLAT).a
+ BLASDEF = -DUSE_VENDOR_BLAS
+-BLASLIB = -L/usr/lib -lf77blas -latlas
++BLASLIB = %%BLAS%%
+ #BLASLIB = ../lib/libblas$(PLAT).a
+ MATHLIB = -lm
+ MPLIB = -lpthread
+@@ -31,7 +31,7 @@ MPLIB = -lpthread
# The archiver and the flag(s) to use when building archive (library)
# If your system has no ranlib, set RANLIB = echo.
#
--ARCH = ar
-+ARCMD = ar
- ARCHFLAGS = cr
- RANLIB = ranlib
+-ARCH = ar
++ARCMD = ar
+ ARCHFLAGS = cr
+ RANLIB = ranlib
-@@ -46,16 +46,17 @@ RANLIB = ranlib
- PREDEFS = -D_PTHREAD
+@@ -40,8 +40,8 @@ RANLIB = ranlib
+ # Definitions used by CPP:
+ PREDEFS = -D__PTHREAD ## -DDEBUGlevel=0 -DPRNTlevel=0
#
+-CC = gcc
+-CFLAGS = $(PREDEFS) -g #-O3
++CC = %%CC%%
++CFLAGS = $(PREDEFS) %%CFLAGS%%
+ # Uncomment the following to use 64-bit integer
+ CFLAGS += -D_LONGINT
--CC = xlc_r
--CFLAGS = -qarch=pwr5 -qalias=allptrs $(PREDEFS) -DPRNTlevel=0 -O3
--FORTRAN = xlf
--FFLAGS = -O3 -qarch=pwr5
--LOADER = xlc_r
--LOADOPTS = -bmaxdata:0x80000000
-+CC = %%CC%%
-+CFLAGS = $(PREDEFS) %%CPPFLAGS%% %%CFLAGS%%
-+FORTRAN = %%FC%%
-+FFLAGS = %%FFLAGS%%
-+LOADER = %%CC%%
-+LOADOPTS = %%LDFLAGS%%
-+NOOPTS = %%FPIC%%
- #
- # C preprocessor defs for compilation for the Fortran interface
- # (-DNoChange, -DAdd_, -DAdd__, or -DUpCase)
- #
--CDEFS = -DNoChange
-+CDEFS = -DAdd_
+@@ -49,19 +49,19 @@ CFLAGS += -D_LONGINT
+ # There are a few files that should NOT be optimized, which appear in the
+ # end of SRC/Makefile, taking the flag $(NOOPTS)
+ # NOOPTS should be defined to explicitly turn off any optimization.
+-NOOPTS = -O0
++NOOPTS = -O0 %%FPIC%%
+-BLASOPTS =
++BLASOPTS =
+ ############################################################################
+
+-FORTRAN = gfortran
+-FFLAGS = -O -fdefault-integer-8
++FORTRAN = %%FC%%
++FFLAGS = %%FFLAGS%% -fdefault-integer-8
+
+ ############################################################################
+
+-LOADER = gcc
+-LOADOPTS = -O #-pthread
++LOADER = %%CC%%
++LOADOPTS = -O %%LDFLAGS%%
+
+ ############################################################################
+ #
Modified: head/math/superlu_mt/pkg-descr
==============================================================================
--- head/math/superlu_mt/pkg-descr Sat Jun 17 08:34:11 2017 (r443734)
+++ head/math/superlu_mt/pkg-descr Sat Jun 17 08:34:19 2017 (r443735)
@@ -1,5 +1,5 @@
- SuperLU_MT (version 2.0)
- ========================
+ SuperLU_MT (version 3.1)
+ ========================
SuperLU_MT contains a set of subroutines to solve a sparse linear system
A*X=B. It uses Gaussian elimination with partial pivoting (GEPP).
@@ -8,12 +8,13 @@ preordering for sparsity is completely separate from t
SuperLU_MT is a parallel extension to the serial SuperLU library.
SuperLU_MT is implemented in ANSI C, with multithreading extension,
-for example, using POSIX threads. Currently, only the LU factorization
-routine, which is the most time-consuming part of the solution process,
-is parallelized on machines with a shared address space. The other
-routines, such as column preordering and the forward and back substitutions
-are performed sequentially. This "alpha" release contains only
-double-precision real data type.
+for example, using POSIX threads or OpenMP. Currently, only the LU
+factorization routine, which is the most time-consuming part of the
+solution process, is parallelized on machines with a shared address space.
+The other routines, such as column preordering and the forward and
+back substitutions are performed sequentially.
+The library provides functionality for both real and complex
+matrices, in both single and double precision.
Xiaoye S. Li, Lawrence Berkeley National Lab, xiaoye at nersc.gov
James Demmel, Univ. of California Berkeley, demmel at cs.berkeley.edu
Modified: head/math/superlu_mt/pkg-plist
==============================================================================
--- head/math/superlu_mt/pkg-plist Sat Jun 17 08:34:11 2017 (r443734)
+++ head/math/superlu_mt/pkg-plist Sat Jun 17 08:34:19 2017 (r443735)
@@ -1,16 +1,18 @@
include/superlu_mt/colamd.h
-include/superlu_mt/pcsp_defs.h
-include/superlu_mt/pdsp_defs.h
-include/superlu_mt/pssp_defs.h
include/superlu_mt/pxgstrf_synch.h
-include/superlu_mt/pzsp_defs.h
include/superlu_mt/slu_dcomplex.h
include/superlu_mt/slu_mt_Cnames.h
+include/superlu_mt/slu_mt_cdefs.h
+include/superlu_mt/slu_mt_ddefs.h
include/superlu_mt/slu_mt_machines.h
+include/superlu_mt/slu_mt_sdefs.h
include/superlu_mt/slu_mt_util.h
+include/superlu_mt/slu_mt_zdefs.h
include/superlu_mt/slu_scomplex.h
include/superlu_mt/supermatrix.h
-lib/libsuperlu_mt.a
lib/libsuperlu_mt.so
-lib/libsuperlu_mt.so.1
+lib/libsuperlu_mt_PTHREAD.a
+lib/libsuperlu_mt_PTHREAD.so
+lib/libsuperlu_mt_PTHREAD.so.3
%%PORTDOCS%%%%DOCSDIR%%/simax97.ps.gz
+%%PORTDOCS%%%%DOCSDIR%%/ug.pdf
More information about the svn-ports-all
mailing list