Index: head/science/mbdyn/Makefile =================================================================== --- head/science/mbdyn/Makefile (revision 422944) +++ head/science/mbdyn/Makefile (revision 422945) @@ -1,103 +1,82 @@ # Created by: Kay Lehmann # $FreeBSD$ PORTNAME= mbdyn -PORTVERSION= 1.4.3 -PORTREVISION= 1 +PORTVERSION= 1.7.1 CATEGORIES= science -MASTER_SITES= http://www.aero.polimi.it/~masarati/Download/mbdyn/ +MASTER_SITES= https://www.mbdyn.org/userfiles/downloads/ MAINTAINER= ports@FreeBSD.org COMMENT= MultiBody Dynamics analysis system LICENSE= GPLv2 +LICENSE_FILE= ${WRKSRC}/COPYING -LIB_DEPENDS= libarpack.so:math/arpack \ +LIB_DEPENDS= libltdl.so:devel/libltdl \ + libarpack.so:math/arpack \ libumfpack.so:math/suitesparse +BROKEN_powerpc= Does not compile on powerpc + GNU_CONFIGURE= yes -USES= fortran gmake libtool +USES= compiler:c++11-lib fortran gmake libtool localbase USE_LDCONFIG= yes CPPFLAGS+= -fpermissive -I${LOCALBASE}/include/suitesparse -LDFLAGS+= -L${LOCALBASE}/lib CONFIGURE_ARGS+= --program-prefix='' INSTALL_TARGET= install-strip -OPTIONS_DEFINE= MPI METIS CHACO GINAC TCL -MPI_DESC= Enable mpich-support -METIS_DESC= Enable metis-support -CHACO_DESC= Enable chaco-support -GINAC_DESC= Enable GiNaC-support (not implemented yet) -TCL_DESC= Enable tcl-support (not implemented yet) +OPTIONS_DEFINE= MPI METIS CHACO GINAC OPTIONS_RADIO= BLAS OPTIONS_RADIO_BLAS= REFERENCE GOTOBLAS ATLAS OPTIONS_DEFAULT= REFERENCE REFERENCE_DESC= Blas / Lapack REFERENCE_USES= blaslapack:netlib REFERENCE_CONFIGURE_ON= --with-blas=blas ATLAS_DESC= ATLAS ATLAS_USES= blaslapack:atlas ATLAS_CONFIGURE_ON= --with-blas=atlas GOTOBLAS_DESC= GotoBLAS2 GOTOBLAS_USES= blaslapack:gotoblas GOTOBLAS_CONFIGURE_ON= --with-blas=goto --with-goto=goto2 -.include +MPI_DESC= Enable mpich-support (Requires Metis or Chaco, broken) +MPI_IGNORE= you enabled MPI support, which is broken +MPI_BUILD_DEPENDS_OFF= libatomic_ops>0:devel/libatomic_ops +MPI_LIB_DEPENDS= libmpich.so:net/mpich2 +MPI_CONFIGURE_ON= --with-mpi=yes --enable-schur +MPI_CONFIGURE_OFF= --with-mpi=no --enable-multithread -.if ${ARCH} == "powerpc" -BROKEN= Does not compile on powerpc -.endif +METIS_DESC= Enable metis-support +METIS_LIB_DEPENDS= libmetis.so:math/metis4 +METIS_CONFIGURE_ON= --with-metis=yes +METIS_CPPFLAGS= -I${LOCALBASE}/include/metis +METIS_CONFIGURE_OFF= --with-metis=no -.if ${PORT_OPTIONS:MMPI} -LIB_DEPENDS+= libmpich.so:net/mpich2 -CONFIGURE_ARGS+= --with-mpi=yes --enable-schur -CPPFLAGS+= -I${LOCALBASE}/include -. if ! ${PORT_OPTIONS:MMETIS} -WITH_CHACO= yes -. endif -.else -CONFIGURE_ARGS+= --with-mpi=no -.endif +CHACO_DESC= Enable chaco-support +CHACO_BUILD_DEPENDS= ${LOCALBASE}/lib/libchaco.a:math/chaco +CHACO_CONFIGURE_ON= --with-chaco=yes +CHACO_CONFIGURE_OFF= --with-chaco=no -.if ${PORT_OPTIONS:MMETIS} -LIB_DEPENDS+= libmetis.so:math/metis4 -CONFIGURE_ARGS+= --with-metis=yes -CPPFLAGS+= -I${LOCALBASE}/include/metis -.else -CONFIGURE_ARGS+= --with-metis=no -.endif +GINAC_DESC= Enable GiNaC-support (not implemented yet) +GINAC_IGNORE= you enabled GiNaC-support, which is broken +GINAC_LIB_DEPENDS= libmetis.so:math/metis4 \ + libginac.so:math/GiNaC +GINAC_CONFIGURE_ON= --with-ginac=yes +GINAC_CONFIGURE_OFF= --with-ginac=no +GINAC_CPPFLAGS= -I${LOCALBASE}/include/metis -.if ${PORT_OPTIONS:MCHACO} -BUILD_DEPENDS+= ${LOCALBASE}/lib/libchaco.a:math/chaco -CONFIGURE_ARGS+= --with-chaco=yes -.else -CONFIGURE_ARGS+= --with-chaco=no -.endif +.include -.if ${PORT_OPTIONS:MGINAC} -LIB_DEPENDS+= libmetis.so:math/metis4 \ - libginac.so:math/GiNaC -CONFIGURE_ARGS+= --with-ginac=yes -CPPFLAGS+= -I${LOCALBASE}/include/metis -.else -CONFIGURE_ARGS+= --with-ginac=no -.endif - -.if ${PORT_OPTIONS:MTCL} -IGNORE= you enabled Tcl-support, which is not implemented yet -LIB_DEPENDS+= libtcl84.so:lang/tcl84 -CONFIGURE_ARGS+= --with-tcl=yes -CPPFLAGS+= -I${LOCALBASE}/include/tcl8.4 -.else -CONFIGURE_ARGS+= --with-tcl=no +.if ${PORT_OPTIONS:MMPI} && ! ${PORT_OPTIONS:MMETIS} +WITH_CHACO= yes .endif pre-configure: ${REINPLACE_CMD} -e '/try_lapack_LIBS=/s/-llapack/${LAPACKLIB}/' \ -e 's/ -lxerbla//; s/-lcholmod/-lcholmod ${BLASLIB} ${LAPACKLIB} -lsuitesparseconfig/' \ ${WRKSRC}/configure .include Index: head/science/mbdyn/distinfo =================================================================== --- head/science/mbdyn/distinfo (revision 422944) +++ head/science/mbdyn/distinfo (revision 422945) @@ -1,2 +1,3 @@ -SHA256 (mbdyn-1.4.3.tar.gz) = 24c37a2802b2842ec6cbfc7ffeb20af4ca49e12102d75a6966e93fd99d26d117 -SIZE (mbdyn-1.4.3.tar.gz) = 2320156 +TIMESTAMP = 1473272629 +SHA256 (mbdyn-1.7.1.tar.gz) = 2c1f21a6459c58103778cb5d771fc49f972baaa57866329ecd1e90dcf04b4ccf +SIZE (mbdyn-1.7.1.tar.gz) = 2834562 Index: head/science/mbdyn/files/patch-include__ac__mpi.h =================================================================== --- head/science/mbdyn/files/patch-include__ac__mpi.h (revision 422944) +++ head/science/mbdyn/files/patch-include__ac__mpi.h (revision 422945) @@ -1,11 +1,11 @@ ---- ./include/ac/mpi.h.orig 2009-01-04 19:04:54.000000000 +0100 -+++ ./include/ac/mpi.h 2010-10-31 22:31:57.000000000 +0100 +--- include/ac/mpi.h.orig 2015-10-30 05:05:33 UTC ++++ include/ac/mpi.h @@ -35,7 +35,7 @@ #ifdef HAVE_MPI___H #include #elif defined HAVE_MPICXX_H -#include +#include #endif /* ! HAVE_MPI___H && ! HAVE_MPICXX_H */ #endif /* MPI_H */ Index: head/science/mbdyn/files/patch-mbdyn__base__invsolver.cc =================================================================== --- head/science/mbdyn/files/patch-mbdyn__base__invsolver.cc (revision 422944) +++ head/science/mbdyn/files/patch-mbdyn__base__invsolver.cc (revision 422945) @@ -1,12 +1,12 @@ ---- ./mbdyn/base/invsolver.cc.orig 2009-04-10 13:25:00.000000000 +0200 -+++ ./mbdyn/base/invsolver.cc 2010-10-31 23:14:49.000000000 +0100 -@@ -200,8 +200,8 @@ - } +--- mbdyn/base/invsolver.cc.orig 2016-04-24 19:10:43 UTC ++++ mbdyn/base/invsolver.cc +@@ -114,8 +114,8 @@ InverseSolver::Prepare(void) + pRTSolver->Setup(); } -#ifdef USE_SCHUR int mpi_finalize = 0; +#ifdef USE_SCHUR - int MyRank = 0; if (bParallel) { + DEBUGLCOUT(MYDEBUG_MEM, "creating parallel SchurDataManager" Index: head/science/mbdyn/files/patch-mbdyn__base__solver.cc =================================================================== --- head/science/mbdyn/files/patch-mbdyn__base__solver.cc (revision 422944) +++ head/science/mbdyn/files/patch-mbdyn__base__solver.cc (revision 422945) @@ -1,42 +1,42 @@ ---- mbdyn/base/solver.cc.orig 2011-06-20 14:55:12.000000000 -0400 -+++ mbdyn/base/solver.cc 2011-08-26 05:08:45.000000000 -0400 -@@ -111,10 +111,17 @@ +--- mbdyn/base/solver.cc.orig 2016-04-24 19:10:43 UTC ++++ mbdyn/base/solver.cc +@@ -109,10 +109,17 @@ enum { }; volatile sig_atomic_t mbdyn_keep_going = MBDYN_KEEP_GOING; +#if defined(__FreeBSD__) +__sighandler_t *mbdyn_sh_term = SIG_DFL; +__sighandler_t *mbdyn_sh_int = SIG_DFL; +__sighandler_t *mbdyn_sh_hup = SIG_DFL; +__sighandler_t *mbdyn_sh_pipe = SIG_DFL; +#else __sighandler_t mbdyn_sh_term = SIG_DFL; __sighandler_t mbdyn_sh_int = SIG_DFL; __sighandler_t mbdyn_sh_hup = SIG_DFL; __sighandler_t mbdyn_sh_pipe = SIG_DFL; +#endif extern "C" void mbdyn_really_exit_handler(int signum) -@@ -202,7 +209,11 @@ +@@ -200,7 +207,11 @@ extern "C" void mbdyn_signal_init(int pre) { #ifdef HAVE_SIGNAL +#if defined(__FreeBSD__) + __sighandler_t *hdl; +#else __sighandler_t hdl; +#endif if (pre) { hdl = mbdyn_really_exit_handler; -@@ -464,8 +475,8 @@ - } +@@ -406,8 +417,8 @@ Solver::Prepare(void) + pRTSolver->Setup(); } -#ifdef USE_SCHUR int mpi_finalize = 0; +#ifdef USE_SCHUR - int MyRank = 0; if (bParallel) { + DEBUGLCOUT(MYDEBUG_MEM, "creating parallel SchurDataManager" Index: head/science/mbdyn/files/patch-mbdyn__mbdyn.h =================================================================== --- head/science/mbdyn/files/patch-mbdyn__mbdyn.h (revision 422944) +++ head/science/mbdyn/files/patch-mbdyn__mbdyn.h (revision 422945) @@ -1,18 +1,18 @@ ---- mbdyn/mbdyn.h.orig Thu Feb 10 11:51:26 2005 -+++ mbdyn/mbdyn.h Thu Feb 10 11:51:34 2005 -@@ -49,6 +49,7 @@ +--- mbdyn/mbdyn.h.orig 2015-10-30 05:05:37 UTC ++++ mbdyn/mbdyn.h +@@ -50,6 +50,7 @@ typedef long int Lint; typedef double Real; /* signal types */ +#if !defined(__FreeBSD__) #ifdef HAVE_SIGNAL #ifndef HAVE___SIGHANDLER_T #ifndef HAVE_SIGHANDLER_T -@@ -58,6 +59,7 @@ +@@ -59,6 +60,7 @@ typedef sighandler_t __sighandler_t; #endif /* HAVE_SIGHANDLER_T */ #endif /* !HAVE___SIGHANDLER_T */ #endif /* HAVE_SIGNAL */ +#endif /* sig_atomic_t */ #ifndef HAVE_SIG_ATOMIC_T Index: head/science/mbdyn/pkg-plist =================================================================== --- head/science/mbdyn/pkg-plist (revision 422944) +++ head/science/mbdyn/pkg-plist (revision 422945) @@ -1,42 +1,49 @@ bin/ann_in bin/ann_sf bin/ann_sim bin/ann_tr bin/autopilot bin/c81merge bin/c81test bin/cl bin/crypt bin/dae-intg bin/deriv bin/eu2phi bin/eu2rot bin/femgen bin/intg bin/mbdyn bin/mbdyn2easyanim.sh bin/posrel bin/printenv bin/rot2eu bin/rot2eup bin/rot2phi bin/rotrel bin/sockdrive bin/socket2stream bin/stream2socket bin/trim bin/vec2rot include/mbc.h include/mbcxx.h lib/libmbc.a lib/libmbc.so lib/libmbc.so.0 lib/libmbc.so.0.0.0 +man/man1/femgen.1.gz man/man1/mbdyn.1.gz share/Aster/cms.py share/awk/abs2rel.awk share/awk/mbdyn2easyanim.awk share/awk/mbdyn2pod.awk +share/awk/mbdyn_mov2ref.awk +share/awk/mbdyn_ref2log.awk share/awk/periodize.awk share/c81/naca0012.c81 +share/octave/gradnorm.m +share/octave/mbdyn_derivative.m share/octave/pod.m +share/octave/rotation_increment_gibbs_rodriguez.m +share/octave/rotation_perturbation_matrix_gibbs_rodriguez.m