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

Collapse All | Expand All

(-)math/superlu_mt/Makefile (-16 / +15 lines)
Lines 1-13 Link Here
1
# Created by: Pedro Giffuni <giffunip@asme.org>
1
# Created by: Pedro Giffuni
2
# $FreeBSD$
2
# $FreeBSD$
3
3
4
PORTNAME=	superlu_mt
4
PORTNAME=	superlu_mt
5
PORTVERSION=	2.0.20080115
5
PORTVERSION=	2.4.20150207
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}_2.4
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
18
BROKEN_aarch64=		fails to build: undefined reference to sbrk
19
BROKEN_aarch64=		fails to build: undefined reference to sbrk
20
BROKEN_sparc64=		Does not link on sparc64
19
21
20
USES=		fortran gmake
22
USES=		fortran gmake
21
23
Lines 49-69 Link Here
49
FPIC=	-fpic
51
FPIC=	-fpic
50
.endif
52
.endif
51
53
52
.if ${ARCH} == "sparc64"
53
BROKEN=		Does not link on sparc64
54
.endif
55
56
USE_LDCONFIG=	yes
54
USE_LDCONFIG=	yes
57
WRKSRC=		${WRKDIR}/SuperLU_MT_2.0
55
WRKSRC=		${WRKDIR}/SuperLU_MT_2.4
58
WRKSRC_SHARED=	${WRKDIR}/SuperLU_MT_2.0_shared
56
WRKSRC_SHARED=	${WRKDIR}/SuperLU_MT_2.4_shared
59
ALL_TARGET=	lib
57
ALL_TARGET=	lib
60
SVERSION=	1
58
SVERSION=	1
61
59
62
ARCH2FIX=	CBLAS/Makefile MAKE_INC/make.openmp MAKE_INC/make.exemplar \
60
ARCH2FIX=	CBLAS/Makefile MAKE_INC/make.openmp MAKE_INC/make.exemplar \
63
		MAKE_INC/make.pthreads TESTING/MATGEN/Makefile	\
61
		make.inc SRC/Makefile TESTING/MATGEN/Makefile
64
		make.inc SRC/Makefile
65
62
66
post-patch:
63
do-configure:
67
.for fmk in ${ARCH2FIX}
64
.for fmk in ${ARCH2FIX}
68
	@${REINPLACE_CMD} -e 's|^ARCH *.= ar|ARCMD = ar| ; \
65
	@${REINPLACE_CMD} -e 's|^ARCH *.= ar|ARCMD = ar| ; \
69
		s|\$$(ARCH)|$$(ARCMD)|' ${WRKSRC}/${fmk}
66
		s|\$$(ARCH)|$$(ARCMD)|' ${WRKSRC}/${fmk}
Lines 106-114 Link Here
106
	done
103
	done
107
104
108
do-install:
105
do-install:
109
	${INSTALL_DATA} ${WRKDIR}/tmp_static/libsuperlu_mt.a ${STAGEDIR}${PREFIX}/lib
106
	${INSTALL_DATA} ${WRKDIR}/tmp_static/libsuperlu_mt_*.a ${STAGEDIR}${PREFIX}/lib
110
	${INSTALL_LIB} ${WRKDIR}/tmp_shared/libsuperlu_mt.so.${SVERSION} ${STAGEDIR}${PREFIX}/lib
107
	${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
108
	cd ${STAGEDIR}${PREFIX}/lib && ${LN} -s -f libsuperlu_mt_PTHREAD.so.${SVERSION} libsuperlu_mt_PTHREAD.so
112
	${MKDIR} ${STAGEDIR}${PREFIX}/include/${PORTNAME}
109
	${MKDIR} ${STAGEDIR}${PREFIX}/include/${PORTNAME}
113
	${INSTALL_DATA} ${WRKSRC}/SRC/*.h ${STAGEDIR}${PREFIX}/include/${PORTNAME}
110
	${INSTALL_DATA} ${WRKSRC}/SRC/*.h ${STAGEDIR}${PREFIX}/include/${PORTNAME}
114
.if ${PORT_OPTIONS:MDOCS}
111
.if ${PORT_OPTIONS:MDOCS}
Lines 118-125 Link Here
118
	${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/simax97.ps.gz ${STAGEDIR}${DOCSDIR}
115
	${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/simax97.ps.gz ${STAGEDIR}${DOCSDIR}
119
.endif
116
.endif
120
117
118
.ifdef MANTAINER_MODE
121
regression-test: do-build
119
regression-test: do-build
122
	@(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} testing)
120
	@(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} testing)
123
	@(cd ${WRKSRC_SHARED} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} testing)
121
	@(cd ${WRKSRC_SHARED} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} testing)
122
.endif
124
123
125
.include <bsd.port.post.mk>
124
.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 = 1496089050
2
SIZE (superlu2/superlu_mt_2.0.tar.gz) = 1332773
2
SHA256 (superlu2/superlu_mt_2.4.tar.gz) = 17804fa15a400108ccceb04c925de9199e3327eeda733004448261371a026377
3
SIZE (superlu2/superlu_mt_2.4.tar.gz) = 1616442
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 / +35 lines)
Lines 1-62 Link Here
1
--- make.inc.orig	2008-02-22 22:45:36 UTC
1
--- make.inc.orig	2015-02-07 02:14:49 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 = ../lib/libblas$(PLAT).a
8
+PLAT = _PTHREAD
8
+BLASLIB = %%BLAS%%
9
 MATHLIB		= -lm 
10
 MPLIB		= -lpthread
9
 
11
 
12
@@ -39,25 +39,25 @@ RANLIB       	= ranlib
13
 # Definitions used by CPP:
14
 PREDEFS      	= -D__PTHREAD
10
 #
15
 #
11
 #  The name of the libraries to be created/linked to
16
-CC           	= gcc
17
-CFLAGS       	= $(PREDEFS) -O3
18
+CC           	= %%CC%%
19
+CFLAGS       	= $(PREDEFS) %%CFLAGS%%
12
 #
20
 #
13
-TMGLIB       = libtmglib.a
21
 # There are a few files that should NOT be optimized, which appear in the
14
-SUPERLULIB   = libsuperlu_mt$(PLAT).a
22
 # end of SRC/Makefile, taking the flag $(NOOPTS)
15
+TMGLIB       = libtmg.a
23
 # NOOPTS should be defined to explicitly turn off any optimization.
16
+SUPERLULIB   = libsuperlu_mt.a
24
-NOOPTS	     	= -O0
25
+NOOPTS	     	= -O0 %%FPIC%%
17
 
26
 
18
 # 
27
 BLASOPTS	=
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)
31
 #  If your system has no ranlib, set RANLIB = echo.
32
 #
33
-ARCH         = ar
34
+ARCMD        = ar
35
 ARCHFLAGS    = cr
36
 RANLIB       = ranlib
37
 
28
 
38
@@ -46,16 +46,17 @@ RANLIB       = ranlib
29
 ############################################################################
39
 PREDEFS      	= -D_PTHREAD
40
 #
41
 
30
 
42
-CC           = xlc_r
31
-FORTRAN		= f77
43
-CFLAGS       = -qarch=pwr5 -qalias=allptrs $(PREDEFS) -DPRNTlevel=0 -O3
32
-FFLAGS		= -O
44
-FORTRAN	     = xlf
33
+FORTRAN		= %%FC%%
45
-FFLAGS       = -O3 -qarch=pwr5
34
+FFLAGS		= %%FFLAGS%%
46
-LOADER       = xlc_r
47
-LOADOPTS     = -bmaxdata:0x80000000
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
 
35
 
36
 ############################################################################
62
 
37
 
38
-LOADER       	= gcc
39
-LOADOPTS     	= -O -pthread
40
+LOADER       	= %%CC%%
41
+LOADOPTS     	= %%LDFLAGS%% -pthread
42
 
43
 ############################################################################
44
 #
(-)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 (-3 / +3 lines)
Lines 10-16 Link Here
10
include/superlu_mt/slu_mt_util.h
10
include/superlu_mt/slu_mt_util.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
13
lib/libsuperlu_mt_PTHREAD.a
14
lib/libsuperlu_mt.so
14
lib/libsuperlu_mt_PTHREAD.so
15
lib/libsuperlu_mt.so.1
15
lib/libsuperlu_mt_PTHREAD.so.1
16
%%PORTDOCS%%%%DOCSDIR%%/simax97.ps.gz
16
%%PORTDOCS%%%%DOCSDIR%%/simax97.ps.gz

Return to bug 219265