Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 17 Jun 2017 08:34:19 +0000 (UTC)
From:      Thierry Thomas <thierry@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r443735 - in head/math/superlu_mt: . files
Message-ID:  <201706170834.v5H8YJPv045919@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
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@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@nersc.gov
 James Demmel,    Univ. of California Berkeley, demmel@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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201706170834.v5H8YJPv045919>