View | Details | Raw Unified | Return to bug 219265 | Differences between
and this patch

Collapse All | Expand All

(-)math/superlu_mt/Makefile (-18 / +20 lines)
Lines 2-13 Link Here
2
# $FreeBSD$
2
# $FreeBSD$
3
3
4
PORTNAME=	superlu_mt
4
PORTNAME=	superlu_mt
5
PORTVERSION=	2.0.20080115
5
PORTVERSION=	3.1.20160319
6
PORTREVISION=	9
7
CATEGORIES=	math
6
CATEGORIES=	math
8
MASTER_SITES=	http://crd.lbl.gov/~xiaoye/SuperLU/ \
7
MASTER_SITES=	http://crd.lbl.gov/~xiaoye/SuperLU/ \
9
		http://crd.lbl.gov/~xiaoye/:doc
8
		http://crd.lbl.gov/~xiaoye/:doc
10
DISTNAME=	${PORTNAME}_2.0
9
DISTNAME=	${PORTNAME}_3.1
11
DISTFILES=	${DISTNAME}${EXTRACT_SUFX} simax97.ps.gz:doc
10
DISTFILES=	${DISTNAME}${EXTRACT_SUFX} simax97.ps.gz:doc
12
DIST_SUBDIR=	superlu2
11
DIST_SUBDIR=	superlu2
13
EXTRACT_ONLY=	${DISTNAME}${EXTRACT_SUFX}
12
EXTRACT_ONLY=	${DISTNAME}${EXTRACT_SUFX}
Lines 15-21 Link Here
15
MAINTAINER=	ports@FreeBSD.org
14
MAINTAINER=	ports@FreeBSD.org
16
COMMENT=	Routines for performing multithreaded sparse factorization
15
COMMENT=	Routines for performing multithreaded sparse factorization
17
16
17
LICENSE=	BSD3CLAUSE
18
LICENSE_FILE=	${WRKSRC}/License.txt
19
18
BROKEN_aarch64=		fails to build: undefined reference to sbrk
20
BROKEN_aarch64=		fails to build: undefined reference to sbrk
21
BROKEN_sparc64=		Does not link on sparc64
19
22
20
USES=		fortran gmake
23
USES=		fortran gmake
21
24
Lines 49-69 Link Here
49
FPIC=	-fpic
52
FPIC=	-fpic
50
.endif
53
.endif
51
54
52
.if ${ARCH} == "sparc64"
53
BROKEN=		Does not link on sparc64
54
.endif
55
56
USE_LDCONFIG=	yes
55
USE_LDCONFIG=	yes
57
WRKSRC=		${WRKDIR}/SuperLU_MT_2.0
56
WRKSRC=		${WRKDIR}/SuperLU_MT_3.1
58
WRKSRC_SHARED=	${WRKDIR}/SuperLU_MT_2.0_shared
57
WRKSRC_SHARED=	${WRKDIR}/SuperLU_MT_3.1_shared
59
ALL_TARGET=	lib
58
ALL_TARGET=	lib
60
SVERSION=	1
59
SVERSION=	3
61
60
62
ARCH2FIX=	CBLAS/Makefile MAKE_INC/make.openmp MAKE_INC/make.exemplar \
61
ARCH2FIX=	CBLAS/Makefile MAKE_INC/make.openmp MAKE_INC/make.exemplar \
63
		MAKE_INC/make.pthreads TESTING/MATGEN/Makefile	\
62
		make.inc SRC/Makefile TESTING/MATGEN/Makefile
64
		make.inc SRC/Makefile
65
63
66
post-patch:
64
do-configure:
67
.for fmk in ${ARCH2FIX}
65
.for fmk in ${ARCH2FIX}
68
	@${REINPLACE_CMD} -e 's|^ARCH *.= ar|ARCMD = ar| ; \
66
	@${REINPLACE_CMD} -e 's|^ARCH *.= ar|ARCMD = ar| ; \
69
		s|\$$(ARCH)|$$(ARCMD)|' ${WRKSRC}/${fmk}
67
		s|\$$(ARCH)|$$(ARCMD)|' ${WRKSRC}/${fmk}
Lines 106-125 Link Here
106
	done
104
	done
107
105
108
do-install:
106
do-install:
109
	${INSTALL_DATA} ${WRKDIR}/tmp_static/libsuperlu_mt.a ${STAGEDIR}${PREFIX}/lib
107
	${INSTALL_DATA} ${WRKDIR}/tmp_static/libsuperlu_mt_*.a ${STAGEDIR}${PREFIX}/lib
110
	${INSTALL_LIB} ${WRKDIR}/tmp_shared/libsuperlu_mt.so.${SVERSION} ${STAGEDIR}${PREFIX}/lib
108
	${INSTALL_LIB} ${WRKDIR}/tmp_shared/libsuperlu_mt_*.so.${SVERSION} ${STAGEDIR}${PREFIX}/lib
111
	cd ${STAGEDIR}${PREFIX}/lib && ${LN} -s -f libsuperlu_mt.so.${SVERSION} libsuperlu_mt.so
109
	${RLN} ${STAGEDIR}${PREFIX}/lib/libsuperlu_mt_PTHREAD.so.${SVERSION} \
110
		${STAGEDIR}${PREFIX}/lib/libsuperlu_mt_PTHREAD.so
111
	${RLN} ${STAGEDIR}${PREFIX}/lib/libsuperlu_mt_PTHREAD.so.${SVERSION} \
112
		${STAGEDIR}${PREFIX}/lib/libsuperlu_mt.so
112
	${MKDIR} ${STAGEDIR}${PREFIX}/include/${PORTNAME}
113
	${MKDIR} ${STAGEDIR}${PREFIX}/include/${PORTNAME}
113
	${INSTALL_DATA} ${WRKSRC}/SRC/*.h ${STAGEDIR}${PREFIX}/include/${PORTNAME}
114
	${INSTALL_DATA} ${WRKSRC}/SRC/*.h ${STAGEDIR}${PREFIX}/include/${PORTNAME}
114
.if ${PORT_OPTIONS:MDOCS}
115
.if ${PORT_OPTIONS:MDOCS}
115
	@${MKDIR} ${STAGEDIR}${DOCSDIR}
116
	@${MKDIR} ${STAGEDIR}${DOCSDIR}
116
#	${INSTALL_DATA} ${WRKSRC}/INSTALL/*.ps ${STAGEDIR}${DOCSDIR}
117
	${INSTALL_DATA} ${WRKSRC}/DOC/*.pdf ${STAGEDIR}${DOCSDIR}
117
#	${GZIP_CMD} ${STAGEDIR}${DOCSDIR}/*.ps
118
	${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/simax97.ps.gz ${STAGEDIR}${DOCSDIR}
118
	${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/simax97.ps.gz ${STAGEDIR}${DOCSDIR}
119
.endif
119
.endif
120
120
121
.ifdef MANTAINER_MODE
121
regression-test: do-build
122
regression-test: do-build
122
	@(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} testing)
123
	@(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} testing)
123
	@(cd ${WRKSRC_SHARED} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} testing)
124
	@(cd ${WRKSRC_SHARED} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} testing)
125
.endif
124
126
125
.include <bsd.port.post.mk>
127
.include <bsd.port.post.mk>
(-)math/superlu_mt/distinfo (-2 / +3 lines)
Lines 1-4 Link Here
1
SHA256 (superlu2/superlu_mt_2.0.tar.gz) = 76f54f332db22313316798c3983b7bb704c159ce5a404ddda1f04d0fa477aab1
1
TIMESTAMP = 1494706587
2
SIZE (superlu2/superlu_mt_2.0.tar.gz) = 1332773
2
SHA256 (superlu2/superlu_mt_3.1.tar.gz) = 407b544b9a92b2ed536b1e713e80f986824cf3016657a4bfc2f3e7d2a76ecab6
3
SIZE (superlu2/superlu_mt_3.1.tar.gz) = 1824440
3
SHA256 (superlu2/simax97.ps.gz) = 8f8ae10e28dfdeda2fed58b0bcec1bf96f10fa7b1d055aff160d77d7aeb8a983
4
SHA256 (superlu2/simax97.ps.gz) = 8f8ae10e28dfdeda2fed58b0bcec1bf96f10fa7b1d055aff160d77d7aeb8a983
4
SIZE (superlu2/simax97.ps.gz) = 158724
5
SIZE (superlu2/simax97.ps.gz) = 158724
(-)math/superlu_mt/files/patch-INSTALL-Makefile (-3 / +3 lines)
Lines 1-6 Link Here
1
--- INSTALL/Makefile.orig	2013-11-16 19:14:28.000000000 +0100
1
--- INSTALL/Makefile.orig	2013-03-19 22:10:40 UTC
2
+++ INSTALL/Makefile	2013-11-16 19:14:58.000000000 +0100
2
+++ INSTALL/Makefile
3
@@ -17,7 +17,7 @@
3
@@ -17,7 +17,7 @@ install.out:
4
 
4
 
5
 slamch.o: slamch.c ; $(CC) $(NOOPTS) -c $<
5
 slamch.o: slamch.c ; $(CC) $(NOOPTS) -c $<
6
 dlamch.o: dlamch.c ; $(CC) $(NOOPTS) -c $<
6
 dlamch.o: dlamch.c ; $(CC) $(NOOPTS) -c $<
(-)math/superlu_mt/files/patch-SRC+slu_mt_util.h (-10 lines)
Lines 1-10 Link Here
1
--- SRC/slu_mt_util.h~	2008-01-09 08:28:56.000000000 +0900
2
+++ SRC/slu_mt_util.h	2008-07-02 09:54:31.000000000 +0900
3
@@ -12,6 +12,7 @@
4
 #include <stdio.h>
5
 #include <stdlib.h>
6
 #include <string.h>
7
+#include <pthread.h>
8
 
9
 /* Macros */
10
 #ifndef USER_ABORT
(-)math/superlu_mt/files/patch-TESTING+pddrive.c (-14 lines)
Lines 1-14 Link Here
1
--- TESTING/pddrive.c.orig	2008-06-18 22:06:40.000000000 -0500
2
+++ TESTING/pddrive.c	2008-06-18 22:08:38.000000000 -0500
3
@@ -9,6 +9,11 @@
4
 #define	FMT2      "%10s:fact=%d, trans=%d, refact=%d, equed=%d, n=%d, imat=%d, test(%d)=%12.5g\n"
5
 #define FMT3      "%10s:info=%d, izero=%d, n=%d, nrhs=%d, imat=%d, nfail=%d\n"
6
 
7
+/* SuperLU compatibility */
8
+#define DN SLU_DN
9
+#define _D SLU_D
10
+#define GE SLU_GE
11
+#define NC SLU_NC
12
 
13
 main(int argc, char *argv[])
14
 {
(-)math/superlu_mt/files/patch-TESTING+pdgssv.c (-16 lines)
Lines 1-16 Link Here
1
--- TESTING/pdgssv.c.orig	2008-06-18 22:09:01.000000000 -0500
2
+++ TESTING/pdgssv.c	2008-06-18 22:10:18.000000000 -0500
3
@@ -1,6 +1,13 @@
4
 #include "pdsp_defs.h"
5
 #include "util.h"
6
 
7
+/* SuperLU compatibility */
8
+#define DN SLU_DN
9
+#define _D SLU_D
10
+#define GE SLU_GE
11
+#define NC SLU_NC
12
+#define NR SLU_NR
13
+
14
 void
15
 pdgssv(int nprocs, SuperMatrix *A, int *perm_c, int *perm_r, 
16
        SuperMatrix *L, SuperMatrix *U, SuperMatrix *B, int *info )
(-)math/superlu_mt/files/patch-TESTING+pdgssvx.c (-16 lines)
Lines 1-16 Link Here
1
--- TESTING/pdgssvx.c.orig	2008-06-18 22:10:35.000000000 -0500
2
+++ TESTING/pdgssvx.c	2008-06-18 22:11:10.000000000 -0500
3
@@ -1,6 +1,13 @@
4
 #include "pdsp_defs.h"
5
 #include "util.h"
6
 
7
+/* SuperLU compatibility */
8
+#define DN SLU_DN
9
+#define _D SLU_D
10
+#define GE SLU_GE
11
+#define NC SLU_NC
12
+#define NR SLU_NR
13
+
14
 void
15
 pdgssvx(int nprocs, pdgstrf_options_t *pdgstrf_options, SuperMatrix *A, 
16
 	int *perm_c, int *perm_r, equed_t *equed, double *R, double *C,
(-)math/superlu_mt/files/patch-make.inc (-53 / +48 lines)
Lines 1-62 Link Here
1
--- make.inc.orig	2008-02-22 22:45:36 UTC
1
--- make.inc.orig	2015-04-30 00:46:42 UTC
2
+++ make.inc
2
+++ make.inc
3
@@ -16,13 +16,13 @@
3
@@ -22,7 +22,7 @@ PLAT = _PTHREAD
4
 #
4
 TMGLIB       	= libtmglib$(PLAT).a
5
 #  The machine (platform) identifier to append to the library names
5
 SUPERLULIB   	= libsuperlu_mt$(PLAT).a
6
 #
6
 BLASDEF	        = -DUSE_VENDOR_BLAS
7
-PLAT = _sp
7
-BLASLIB		= -L/usr/lib -lf77blas -latlas
8
+PLAT = _PTHREAD
8
+BLASLIB		= %%BLAS%%
9
 
9
 #BLASLIB = ../lib/libblas$(PLAT).a
10
 #
10
 MATHLIB		= -lm 
11
 #  The name of the libraries to be created/linked to
11
 MPLIB		= -lpthread
12
 #
12
@@ -31,7 +31,7 @@ MPLIB		= -lpthread
13
-TMGLIB       = libtmglib.a
14
-SUPERLULIB   = libsuperlu_mt$(PLAT).a
15
+TMGLIB       = libtmg.a
16
+SUPERLULIB   = libsuperlu_mt.a
17
 
18
 # 
19
 # If you don't have ESSL, you can use the following blaslib instead:
20
@@ -30,7 +30,7 @@ SUPERLULIB   = libsuperlu_mt$(PLAT).a
21
 # which may be slower than ESSL
22
 #
23
 BLASDEF	  = -DUSE_VENDOR_BLAS
24
-BLASLIB   = -lessl
25
+BLASLIB   = %%BLAS%%
26
 #BLASLIB   = ../lib/libblas$(PLAT).a
27
 MATHLIB	  = -lm 
28
 MPLIB	  = -lpthread
29
@@ -38,7 +38,7 @@ MPLIB	  = -lpthread
30
 #  The archiver and the flag(s) to use when building archive (library)
13
 #  The archiver and the flag(s) to use when building archive (library)
31
 #  If your system has no ranlib, set RANLIB = echo.
14
 #  If your system has no ranlib, set RANLIB = echo.
32
 #
15
 #
33
-ARCH         = ar
16
-ARCH          	= ar
34
+ARCMD        = ar
17
+ARCMD          	= ar
35
 ARCHFLAGS    = cr
18
 ARCHFLAGS     	= cr
36
 RANLIB       = ranlib
19
 RANLIB       	= ranlib
37
 
20
 
38
@@ -46,16 +46,17 @@ RANLIB       = ranlib
21
@@ -40,8 +40,8 @@ RANLIB       	= ranlib
39
 PREDEFS      	= -D_PTHREAD
22
 # Definitions used by CPP:
23
 PREDEFS      	= -D__PTHREAD  ## -DDEBUGlevel=0 -DPRNTlevel=0
40
 #
24
 #
25
-CC           	= gcc
26
-CFLAGS       	= $(PREDEFS) -g #-O3
27
+CC           	= %%CC%%
28
+CFLAGS       	= $(PREDEFS) %%CFLAGS%%
29
 # Uncomment the following to use 64-bit integer
30
 CFLAGS          += -D_LONGINT
41
 
31
 
42
-CC           = xlc_r
32
@@ -49,19 +49,19 @@ CFLAGS          += -D_LONGINT
43
-CFLAGS       = -qarch=pwr5 -qalias=allptrs $(PREDEFS) -DPRNTlevel=0 -O3
33
 # There are a few files that should NOT be optimized, which appear in the
44
-FORTRAN	     = xlf
34
 # end of SRC/Makefile, taking the flag $(NOOPTS)
45
-FFLAGS       = -O3 -qarch=pwr5
35
 # NOOPTS should be defined to explicitly turn off any optimization.
46
-LOADER       = xlc_r
36
-NOOPTS	     	= -O0
47
-LOADOPTS     = -bmaxdata:0x80000000
37
+NOOPTS	     	= -O0 %%FPIC%%
48
+CC           = %%CC%%
49
+CFLAGS       = $(PREDEFS) %%CPPFLAGS%% %%CFLAGS%%
50
+FORTRAN      = %%FC%%
51
+FFLAGS       = %%FFLAGS%%
52
+LOADER       = %%CC%%
53
+LOADOPTS     = %%LDFLAGS%%
54
+NOOPTS       = %%FPIC%%
55
 #
56
 #  C preprocessor defs for compilation for the Fortran interface
57
 #  (-DNoChange, -DAdd_, -DAdd__, or -DUpCase)
58
 #
59
-CDEFS        = -DNoChange
60
+CDEFS        = -DAdd_
61
 
38
 
39
-BLASOPTS	=
40
+BLASOPTS	= 
62
 
41
 
42
 ############################################################################
43
 
44
-FORTRAN		= gfortran
45
-FFLAGS		= -O -fdefault-integer-8
46
+FORTRAN		= %%FC%%
47
+FFLAGS		= %%FFLAGS%% -fdefault-integer-8
48
 
49
 ############################################################################
50
 
51
-LOADER       	= gcc
52
-LOADOPTS     	= -O #-pthread
53
+LOADER       	= %%CC%%
54
+LOADOPTS     	= -O %%LDFLAGS%%
55
 
56
 ############################################################################
57
 #
(-)math/superlu_mt/pkg-descr (-1 / +1 lines)
Lines 1-4 Link Here
1
			SuperLU_MT (version 2.0)
1
				SuperLU_MT
2
			========================
2
			========================
3
3
4
SuperLU_MT contains a set of subroutines to solve a sparse linear system
4
SuperLU_MT contains a set of subroutines to solve a sparse linear system
(-)math/superlu_mt/pkg-plist (-6 / +8 lines)
Lines 1-16 Link Here
1
include/superlu_mt/colamd.h
1
include/superlu_mt/colamd.h
2
include/superlu_mt/pcsp_defs.h
3
include/superlu_mt/pdsp_defs.h
4
include/superlu_mt/pssp_defs.h
5
include/superlu_mt/pxgstrf_synch.h
2
include/superlu_mt/pxgstrf_synch.h
6
include/superlu_mt/pzsp_defs.h
7
include/superlu_mt/slu_dcomplex.h
3
include/superlu_mt/slu_dcomplex.h
8
include/superlu_mt/slu_mt_Cnames.h
4
include/superlu_mt/slu_mt_Cnames.h
5
include/superlu_mt/slu_mt_cdefs.h
6
include/superlu_mt/slu_mt_ddefs.h
9
include/superlu_mt/slu_mt_machines.h
7
include/superlu_mt/slu_mt_machines.h
8
include/superlu_mt/slu_mt_sdefs.h
10
include/superlu_mt/slu_mt_util.h
9
include/superlu_mt/slu_mt_util.h
10
include/superlu_mt/slu_mt_zdefs.h
11
include/superlu_mt/slu_scomplex.h
11
include/superlu_mt/slu_scomplex.h
12
include/superlu_mt/supermatrix.h
12
include/superlu_mt/supermatrix.h
13
lib/libsuperlu_mt.a
14
lib/libsuperlu_mt.so
13
lib/libsuperlu_mt.so
15
lib/libsuperlu_mt.so.1
14
lib/libsuperlu_mt_PTHREAD.a
15
lib/libsuperlu_mt_PTHREAD.so
16
lib/libsuperlu_mt_PTHREAD.so.3
16
%%PORTDOCS%%%%DOCSDIR%%/simax97.ps.gz
17
%%PORTDOCS%%%%DOCSDIR%%/simax97.ps.gz
18
%%PORTDOCS%%%%DOCSDIR%%/ug.pdf

Return to bug 219265