1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-01 05:45:45 +00:00

Modify cad/scotch to install shared libraries.

Chase these libraries to the consumers ports.
This commit is contained in:
Thierry Thomas 2020-12-09 11:07:41 +00:00
parent 932a4703bc
commit 376636fda5
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=557366
12 changed files with 137 additions and 72 deletions

View File

@ -3,7 +3,7 @@
PORTNAME= scotch
DISTVERSION= 6.0.4-aster7
PORTREVISION= 1
PORTREVISION= 2
CATEGORIES= cad science
MAINTAINER= thierry@FreeBSD.org
@ -30,10 +30,11 @@ ALL_TARGET= esmumps
TEST_TARGET= check
MAKE_ENV= prefix=${STAGEDIR}${PREFIX} mandir=${STAGEDIR}${PREFIX}/share/man \
-DSCOTCH_PTHREAD_NUMBER=2
USE_LDCONFIG= yes
DOCVER= ${PORTVERSION:R:R}
PORTDOCS= ptscotch_user${DOCVER}.pdf scotch_user${DOCVER}.pdf scotch_example.f
EXAMPLES= scotch_example.f
LIBS= esmumps scotch scotcherr scotcherrexit scotchmetis
.if !defined(WITHOUT_MPI)
LIB_DEPENDS+= libmpi.so:net/mpich
@ -41,6 +42,8 @@ LIB_DEPENDS+= libmpi.so:net/mpich
ALL_TARGET+= ptesmumps
TEST_TARGET+= ptcheck
LIBS+= ptesmumps ptscotch ptscotcherr ptscotcherrexit ptscotchparmetis
PLIST_SUB+= MPI=""
.else
PLIST_SUB+= MPI="@comment "
@ -63,7 +66,6 @@ pre-everything::
pre-configure:
${REINPLACE_CMD} -e 's/-lthread/-pthread/;s/-lpthread/-pthread/'\
-e 's/CLIBFLAGS =/CLIBFLAGS = -fPIC/' \
${WRKSRC}/src/Make.inc/Makefile.inc.${MF}_pc_freebsd
${LN} -sf ${WRKSRC}/src/Make.inc/Makefile.inc.${MF}_pc_freebsd \
${WRKSRC}/src/Makefile.inc
@ -71,7 +73,11 @@ pre-configure:
-e 's|\&\& \$$\(MAKE\)||' ${WRKSRC}/src/Makefile
post-stage:
${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/*
${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/* ${STAGEDIR}${PREFIX}/lib/lib*
.for l in ${LIBS}
${MV} ${STAGEDIR}${PREFIX}/lib/lib${l}.so ${STAGEDIR}${PREFIX}/lib/lib${l}.so.0
${LN} -sf lib${l}.so.0 ${STAGEDIR}${PREFIX}/lib/lib${l}.so
.endfor
do-install-DOCS-on:
${MKDIR} ${STAGEDIR}${DOCSDIR}

View File

@ -1,11 +1,32 @@
--- src/Make.inc/Makefile.inc.x86-64_pc_freebsd.orig 2011-01-06 22:39:49.000000000 +0100
+++ src/Make.inc/Makefile.inc.x86-64_pc_freebsd 2012-04-14 12:13:39.000000000 +0200
@@ -9,7 +9,7 @@
CCS = cc
--- src/Make.inc/Makefile.inc.x86-64_pc_freebsd.orig 2017-02-22 07:20:57 UTC
+++ src/Make.inc/Makefile.inc.x86-64_pc_freebsd
@@ -1,21 +1,21 @@
EXE =
-LIB = .a
+LIB = .so
OBJ = .o
MAKE = gmake
-AR = ar
-ARFLAGS = -ruv
+AR = $(CC)
+ARFLAGS = -shared -Wl,-soname,$@ -o
CAT = cat
-CCS = cc
+CCS = $(CC)
CCP = mpicc
CCD = cc
-CCD = cc
-CFLAGS += -std -fPIC -DCOMMON_FILE_COMPRESS_GZ -DCOMMON_PTHREAD -DCOMMON_RANDOM_FIXED_SEED -DSCOTCH_RENAME -DSCOTCH_RENAME_PARSER -DSCOTCH_PTHREAD -Drestrict=__restrict -DIDXSIZE64
-CLIBFLAGS =
+CCD = $(CC)
+CFLAGS += -std=c99 -fPIC -DCOMMON_FILE_COMPRESS_GZ -DCOMMON_PTHREAD -DCOMMON_RANDOM_FIXED_SEED -DSCOTCH_RENAME -DSCOTCH_RENAME_PARSER -DSCOTCH_PTHREAD -Drestrict=__restrict -DIDXSIZE64
CLIBFLAGS =
+CLIBFLAGS = -fPIC
LDFLAGS += -lz -lm -lthread
CP = cp
LEX = flex -Pscotchyy -olex.yy.c
LN = ln
MKDIR = mkdir
MV = mv
-RANLIB = ranlib
+RANLIB = echo
YACC = bison -pscotchyy -y -b y

View File

@ -32,48 +32,30 @@ bin/mmk_m2
bin/mmk_m3
bin/mord
bin/mtst
%%MPI%%include/ptscotch.h
%%MPI%%include/ptscotchf.h
include/ptscotch.h
include/ptscotchf.h
include/scotch.h
include/scotchf.h
lib/libesmumps.a
%%MPI%%lib/libptesmumps.a
%%MPI%%lib/libptscotch.a
%%MPI%%lib/libptscotcherr.a
%%MPI%%lib/libptscotcherrexit.a
%%MPI%%lib/libptscotchparmetis.a
lib/libscotch.a
lib/libscotcherr.a
lib/libscotcherrexit.a
lib/libscotchmetis.a
share/man/man1/amk_ccc.1.gz
share/man/man1/amk_fft2.1.gz
share/man/man1/amk_hy.1.gz
share/man/man1/amk_m2.1.gz
share/man/man1/amk_p2.1.gz
share/man/man1/atst.1.gz
share/man/man1/dgmap.1.gz
share/man/man1/dgord.1.gz
share/man/man1/dgpart.1.gz
share/man/man1/dgscat.1.gz
share/man/man1/dgtst.1.gz
share/man/man1/gcv.1.gz
share/man/man1/gmap.1.gz
share/man/man1/gmk_hy.1.gz
share/man/man1/gmk_m2.1.gz
share/man/man1/gmk_m3.1.gz
share/man/man1/gmk_msh.1.gz
share/man/man1/gmk_ub2.1.gz
share/man/man1/gmtst.1.gz
share/man/man1/gord.1.gz
share/man/man1/gotst.1.gz
share/man/man1/gout.1.gz
share/man/man1/gpart.1.gz
share/man/man1/gtst.1.gz
share/man/man1/mmk_m2.1.gz
share/man/man1/mmk_m3.1.gz
share/man/man1/mord.1.gz
share/man/man1/mtst.1.gz
lib/libesmumps.so
lib/libesmumps.so.0
%%MPI%%lib/libptesmumps.so
%%MPI%%lib/libptesmumps.so.0
%%MPI%%lib/libptscotch.so
%%MPI%%lib/libptscotch.so.0
%%MPI%%lib/libptscotcherr.so
%%MPI%%lib/libptscotcherr.so.0
%%MPI%%lib/libptscotcherrexit.so
%%MPI%%lib/libptscotcherrexit.so.0
%%MPI%%lib/libptscotchparmetis.so
%%MPI%%lib/libptscotchparmetis.so.0
lib/libscotch.so
lib/libscotch.so.0
lib/libscotcherr.so
lib/libscotcherr.so.0
lib/libscotcherrexit.so
lib/libscotcherrexit.so.0
lib/libscotchmetis.so
lib/libscotchmetis.so.0
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/grf/3elt.grf.gz
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/grf/3elt.xyz.gz
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/grf/4elt.grf.gz
@ -151,3 +133,31 @@ share/man/man1/mtst.1.gz
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/tgt/vcmplt.tgt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/tgt/vhcub.tgt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/tgt/void.tgt
share/man/man1/amk_ccc.1.gz
share/man/man1/amk_fft2.1.gz
share/man/man1/amk_hy.1.gz
share/man/man1/amk_m2.1.gz
share/man/man1/amk_p2.1.gz
share/man/man1/atst.1.gz
share/man/man1/dgmap.1.gz
share/man/man1/dgord.1.gz
share/man/man1/dgpart.1.gz
share/man/man1/dgscat.1.gz
share/man/man1/dgtst.1.gz
share/man/man1/gcv.1.gz
share/man/man1/gmap.1.gz
share/man/man1/gmk_hy.1.gz
share/man/man1/gmk_m2.1.gz
share/man/man1/gmk_m3.1.gz
share/man/man1/gmk_msh.1.gz
share/man/man1/gmk_ub2.1.gz
share/man/man1/gmtst.1.gz
share/man/man1/gord.1.gz
share/man/man1/gotst.1.gz
share/man/man1/gout.1.gz
share/man/man1/gpart.1.gz
share/man/man1/gtst.1.gz
share/man/man1/mmk_m2.1.gz
share/man/man1/mmk_m3.1.gz
share/man/man1/mord.1.gz
share/man/man1/mtst.1.gz

View File

@ -3,6 +3,7 @@
PORTNAME= aster
DISTVERSION= ${ASTER_DISTVERSION}
PORTREVISION= 1
CATEGORIES= french cad
MAINTAINER= thierry@FreeBSD.org
@ -27,14 +28,12 @@ NOT_FOR_ARCHS_REASON= ARG_MAX is too small for Code_Aster on 32 bits systems
# - WITHOUT_GRACE: don't install Grace (used to create 2D graph);
# - WITHOUT_MACR_RECAL: don't install Numerical Python
# (required by the macro MACR_RECAL);
# - WITHOUT_SCOTCH: don't install Scotch.
# - WITH_MUMPS: install the interface between Code_Aster and MUMPS (experimental)
#
#-----------------------------------------------------------------------
BUILD_DEPENDS+= astk-serveur>0:cad/astk-serveur \
${SHELL_INSTALL_ASTER}:shells/${SHIADEP} \
${LOCALBASE}/lib/libscotch.a:cad/scotch \
gnproc:sysutils/coreutils \
bash:shells/bash \
getopt>0:misc/getopt \
@ -42,6 +41,7 @@ BUILD_DEPENDS+= astk-serveur>0:cad/astk-serveur \
${PYNUMPY}
# pylupdate5:textproc/py-qt5-xml
LIB_DEPENDS+= libhdf5.so:science/hdf5 \
libscotch.so:cad/scotch \
libmetis.so:math/metis \
libmed.so:french/med \
libAsterInterface.so:science/tfel-edf
@ -57,7 +57,7 @@ USE_GCC= yes
USE_BINUTILS= yes
USE_QT= linguisttools_build
#CONFLICTS_BUILD=${PYTHON_PKGNAMEPREFIX}cysignals-1.*
CONFLICTS_BUILD=${PYTHON_PKGNAMEPREFIX}cysignals-1.*
.if defined(WITH_ATLAS)
USES+= blaslapack:atlas
@ -212,7 +212,7 @@ v_ifdef= ${OPSYS:tu}
SHELL_INSTALL_ASTER= ${LOCALBASE}/bin/${SHIA}
tcl_dir= ${LOCALBASE}
hdf_dir= ${LOCALBASE}
lib_math= "-L${LOCALBASE}/lib ${BLASLIB} ${LAPACKLIB} ${ATLASLIB}"
lib_math= "-L${LOCALBASE}/lib ${BLASLIB} ${LAPACKLIB} ${ATLASLIB} -lscotch -lscotcherr"
LASTKDIR?= ${PORTNAME}/ASTK/ASTK_CLIENT
ASTKDIR= ${LOCALBASE}/${LASTKDIR}

View File

@ -4,6 +4,7 @@
PORTNAME= freefem++
PORTVERSION= 4.6
DISTVERSIONPREFIX= v
PORTREVISION= 1
CATEGORIES= math science
MAINTAINER= kh@mogami.com
@ -11,8 +12,7 @@ COMMENT= Partial differential equation solver
LICENSE= LGPL3
BUILD_DEPENDS= amk_fft2:cad/scotch \
bash:shells/bash \
BUILD_DEPENDS= bash:shells/bash \
gmm++>0:math/gmm++ \
pipe:misc/pipe \
tetgen:math/tetgen
@ -23,6 +23,7 @@ LIB_DEPENDS= libhdf5.so:science/hdf5 \
libgsl.so:math/gsl \
libipopt.so:math/ipopt \
libmetis.so:math/metis \
libscotch.so:cad/scotch \
libcmumps.so:math/mumps \
libnlopt.so:math/nlopt \
libsuperlu.so:math/superlu \
@ -45,7 +46,7 @@ LDFLAGS+= -s
.endif
GNU_CONFIGURE= yes
CONFIGURE_ENV= CNOFLAGS="${CFLAGS}"
CONFIGURE_ENV= CNOFLAGS="${CFLAGS}" LIBS=-lz
CONFIGURE_ARGS= --disable-download \
--without-mpi \
--with-blas=${BLASLIB} \

View File

@ -27,12 +27,14 @@
[[libseq],[-lmpiseq_seq],[${inc_usr_include}mumps_seq/mpi.h]],
[[mumps_ptscotch],[-lpord_ptscotch -lmumps_common_ptscotch -ldmumps_ptscotch -lzmumps_ptscotch -lpord_ptscotch],[dmumps_c.h]],
[[mumps_scotch],[-lpord_scotch -lmumps_common_scotch -ldmumps_scotch -lzmumps_scotch -lpord_scotch],[dmumps_c.h]],
@@ -2092,7 +2092,7 @@ m4_map([AC_FF_WHERELIB],[
@@ -2092,8 +2092,8 @@ m4_map([AC_FF_WHERELIB],[
[[superlu],[-lsuperlu],[${inc_usr_include}superlu/superlu_enum_consts.h],[]],
[[blacs],[ -lblacsCinit$ff_with_mpi -lblacsF77init$ff_with_mpi -lblacs$ff_with_mpi],[]],
[[scalapack],[-lscalapack$ff_with_mpi],[]],
- [[scotch],[-lscotch -lscotcherr],[scotch.h]],
- [[ptscotch],[-lptscotch -lptscotcherr],[ptscotch.h]],
+ [[scotch],[-lscotch -lscotcherr], [scotch.h]],
[[ptscotch],[-lptscotch -lptscotcherr],[ptscotch.h]],
+ [[ptscotch],[-lscotch -lscotcherr -lptscotch -lptscotcherr],[ptscotch.h]],
[[metis],[-lmetis],[${inc_usr_include}metis/metis.h],[]],
[[metis],[-lmetis],[metis.h],[]],
[[parmetis],[-lparmetis -lmetis],[],[]],

View File

@ -3,6 +3,7 @@
PORTNAME= mumps
DISTVERSION= 5.1.2-aster7
PORTREVISION= 1
CATEGORIES= math
PKGNAMESUFFIX= -edf
@ -29,10 +30,10 @@ PLIST_SUB= VE=${VEM} MUMPSVERSION=${MUMPSVERSION}
OPTIONS_DEFINE= DOCS EXAMPLES MPI
MPI_BUILD_DEPENDS_OFF= ${LOCALBASE}/lib/libscotch.a:cad/scotch
MPI_BUILD_DEPENDS= ${LOCALBASE}/lib/libptscotch.a:cad/scotch
MPI_LIB_DEPENDS_OFF= libscotch.so:cad/scotch
MPI_LIB_DEPENDS= libmpi.so:net/mpich \
libparmetis.so:math/parmetis \
libptscotch.so:cad/scotch \
libscalapack.so:math/scalapack
MPI_PLIST_SUB= WITH_LIBSEQ="@comment "
MPI_PLIST_SUB_OFF= WITH_LIBSEQ=""
@ -74,6 +75,12 @@ pre-configure:
s+@LOCALBASE@+${LOCALBASE}+g;' \
${WRKSRC}/${MF}
.endfor
.ifdef WITH_MPI
${REINPLACE_CMD} -e '/lptscotch/s|#LSCOTCH|LSCOTCH|' \
-e 's|^LMETIS|##LMETIS|;s|^#LMETIS|LMETIS|' ${WRKSRC}/Makefile.inc
.else
${REINPLACE_CMD} -e '/lscotch/s|#LSCOTCH|LSCOTCH|' ${WRKSRC}/Makefile.inc
.endif
do-install:
${INSTALL_DATA} ${WRKSRC}/include/*.h ${STAGEDIR}${PREFIX}/include

View File

@ -15,8 +15,8 @@
-#LSCOTCH = -L$(SCOTCHDIR)/lib -lesmumps -lscotch -lscotcherr
-#LSCOTCH = -L$(SCOTCHDIR)/lib -lptesmumps -lptscotch -lptscotcherr
+#LSCOTCH = -L@LOCALBASE@/lib -lesmumps -lscotch -lscotcherr
+LSCOTCH = -L@LOCALBASE@/lib -lptesmumps -lptscotch -lptscotcherr
+#LSCOTCH = -L@LOCALBASE@/lib -lesmumps -lscotch -lscotcherr -lz
+LSCOTCH = -L@LOCALBASE@/lib -lptesmumps -lscotch -lptscotch -lptscotcherr -lz
LPORDDIR = $(topdir)/PORD/lib/

View File

@ -1,4 +1,4 @@
--- Make.inc/Makefile.FREEBSD10.SEQ.orig 2019-04-03 14:40:12 UTC
--- Make.inc/Makefile.FREEBSD10.SEQ.orig 2020-10-23 09:16:48 UTC
+++ Make.inc/Makefile.FREEBSD10.SEQ
@@ -20,7 +20,7 @@
#
@ -9,7 +9,17 @@
#
# 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
@@ -36,8 +36,8 @@ LPORDDIR = $(topdir)/PORD/lib/
@@ -28,16 +28,16 @@
# variable below); for both parallel and sequential analysis choose the second
# line (remember to add -Dptscotch in the ORDERINGSF variable below)
-#LSCOTCH = -L$(SCOTCHDIR)/lib -lesmumps -lscotch -lscotcherr
-#LSCOTCH = -L$(SCOTCHDIR)/lib -lptesmumps -lptscotch -lptscotcherr
+#LSCOTCH = -L$(SCOTCHDIR)/lib -lesmumps -lscotch -lscotcherr -lz
+#LSCOTCH = -L$(SCOTCHDIR)/lib -lptesmumps -lptscotch -lptscotcherr -lz
LPORDDIR = $(topdir)/PORD/lib/
IPORD = -I$(topdir)/PORD/include/
LPORD = -L$(LPORDDIR) -lpord

View File

@ -3,8 +3,8 @@
PORTNAME= code_saturne
PORTVERSION= 6.1.2
PORTREVISION= 1
DISTVERSIONPREFIX= v
PORTREVISION= 2
CATEGORIES= science parallel
MAINTAINER= thierry@FreeBSD.org
@ -64,7 +64,7 @@ PARMETIS_CONFIGURE_ON= --with-metis-include="${LOCALBASE}/include/parmetis" \
--with-metis-lib="${LOCALBASE}/lib/parmetis"
PARMETIS_CONFIGURE_ENV= LIBS=-lexecinfo
SCOTCH_DESC= Support of Scotch
SCOTCH_BUILD_DEPENDS= scotch>0:cad/scotch
SCOTCH_LIB_DEPENDS= libscotch.so:cad/scotch
SCOTCH_CONFIGURE_ON= --with-scotch-include="${LOCALBASE}/include"
TEST_TARGET= check
@ -86,7 +86,7 @@ CONFIGURE_ARGS+= --disable-openmp
.if ${PORT_OPTIONS:MDOCS}
USE_TEX= tex:build
BUILD_DEPENDS+= fig2dev:print/transfig \
BUILD_DEPENDS+= fig2dev:print/fig2dev \
doxygen:devel/doxygen \
dot:graphics/graphviz \
${PY_SPHINX}

View File

@ -3,7 +3,7 @@
PORTNAME= libgeodecomp
PORTVERSION= 0.4.0
PORTREVISION= 20
PORTREVISION= 21
CATEGORIES= science devel
MASTER_SITES= http://www.libgeodecomp.org/archive/
@ -35,7 +35,7 @@ SILO_LIB_DEPENDS= libsiloh5.so:science/silo
SILO_CMAKE_BOOL= WITH_SILO
SCOTCH_DESC= Enable graph partitioning based on Scotch/Scotch-PT
SCOTCH_BUILD_DEPENDS= ${LOCALBASE}/lib/libscotch.a:cad/scotch
SCOTCH_LIB_DEPENDS= libscotch.so:cad/scotch
SCOTCH_CMAKE_BOOL= WITH_SCOTCH
.include <bsd.port.mk>

View File

@ -1,6 +1,14 @@
--- CMakeModules/FindSCOTCH.cmake.orig 2020-09-20 01:42:12 UTC
--- CMakeModules/FindSCOTCH.cmake.orig 2014-10-28 09:12:48 UTC
+++ CMakeModules/FindSCOTCH.cmake
@@ -121,6 +121,7 @@ endif()
@@ -114,13 +114,14 @@ find_library(PTSCOTCHERR_LIBRARY
)
#set(SCOTCH_DEBUG 1)
-set(SCOTCH_LIBRARIES ${PTSCOTCH_LIBRARY})
+set(SCOTCH_LIBRARIES ${SCOTCH_LIBRARY} ${SCOTCHERR_LIBRARY} ${PTSCOTCH_LIBRARY})
if (PTESMUMPS_LIBRARY)
set(SCOTCH_LIBRARIES ${SCOTCH_LIBRARIES} ${PTESMUMPS_LIBRARY})
endif()
set(SCOTCH_LIBRARIES ${SCOTCH_LIBRARIES} ${PTSCOTCHERR_LIBRARY})
# Try compiling and running test program