aboutsummaryrefslogtreecommitdiffstats
path: root/science/mbdyn
diff options
context:
space:
mode:
authorpav <pav@FreeBSD.org>2005-05-22 23:50:06 +0800
committerpav <pav@FreeBSD.org>2005-05-22 23:50:06 +0800
commit957623991d1cb13bd7df773ba306ac83260485ef (patch)
tree6f0f50d20df56945fd9e3ed20cb2cfdea7c6c1bc /science/mbdyn
parentc94dda6e0d214267e2fffa6c1716b5e6fc200175 (diff)
downloadfreebsd-ports-gnome-957623991d1cb13bd7df773ba306ac83260485ef.tar.gz
freebsd-ports-gnome-957623991d1cb13bd7df773ba306ac83260485ef.tar.zst
freebsd-ports-gnome-957623991d1cb13bd7df773ba306ac83260485ef.zip
New port for mbdyn, which is a MultiBody Dynamics simulation software. It comes
with lots of libraries etc. There are two knobs which are in development at the moment so I disabled them with an IGNORE message. They need some work and maybe some testing. PR: ports/81136 Submitted by: Kay Lehmann <kay_lehmann@web.de>
Diffstat (limited to 'science/mbdyn')
-rw-r--r--science/mbdyn/Makefile74
-rw-r--r--science/mbdyn/distinfo2
-rw-r--r--science/mbdyn/files/patch-configure20
-rw-r--r--science/mbdyn/files/patch-mbdyn__base__solver.cc20
-rw-r--r--science/mbdyn/files/patch-mbdyn__mbdyn.h18
-rw-r--r--science/mbdyn/pkg-descr11
-rw-r--r--science/mbdyn/pkg-plist35
7 files changed, 180 insertions, 0 deletions
diff --git a/science/mbdyn/Makefile b/science/mbdyn/Makefile
new file mode 100644
index 000000000000..c614e4f48e58
--- /dev/null
+++ b/science/mbdyn/Makefile
@@ -0,0 +1,74 @@
+# New ports collection makefile for: mbdyn
+# Date created: 2005-01-30
+# Whom: Kay Lehmann <kay_lehmann@web.de>
+#
+# $FreeBSD$
+#
+
+PORTNAME= mbdyn
+PORTVERSION= 1.2.4
+CATEGORIES= science
+MASTER_SITES= http://mbdyn.aero.polimi.it/~masarati/Download/mbdyn/
+
+MAINTAINER= kay_lehmann@web.de
+COMMENT= A MultiBody Dynamics analysis system
+
+LIB_DEPENDS= lapack.3:${PORTSDIR}/math/lapack \
+ atlas.1:${PORTSDIR}/math/atlas
+BUILD_DEPENDS= ${LOCALBASE}/lib/libumfpack.a:${PORTSDIR}/math/umfpack
+
+GNU_CONFIGURE= yes
+USE_GMAKE= yes
+USE_INC_LIBTOOL_VER= 13
+CONFIGURE_ARGS+= --program-prefix='' --with-umfpack=yes
+CPPFLAGS+= -I${LOCALBASE}/include/UMFPACK ${PTHREAD_CFLAGS}
+LDFLAGS+= -lm -L${LOCALBASE}/lib ${PTHREAD_LIBS}
+
+CONFIGURE_ENV+= CPPFLAGS="${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
+
+MAN1= mbdyn.1
+
+OPTIONS= MPI "Enable mpich-support" off \
+ METIS "Enable metis-support" off \
+ GINAC "Enable GiNaC-support (not implemented yet)" off \
+ TCL "Enable tcl-support (not implemented yet)" off
+
+.include <bsd.port.pre.mk>
+
+.if defined(WITH_MPI)
+BUILD_DEPENDS+= ${LOCALBASE}/mpich/lib/libmpich.a:${PORTSDIR}/net/mpich
+CONFIGURE_ARGS+= --with-mpi=pmpi
+CPPFLAGS+= -I${LOCALBASE}/mpich/include -I${LOCALBASE}/mpich/include/mpi2c++
+LDFLAGS+= -L${LOCALBASE}/mpich/lib
+.else
+CONFIGURE_ARGS+= --with-mpi=no
+.endif
+
+.if defined(WITH_METIS)
+BUILD_DEPENDS+= ${LOCALBASE}/lib/libmetis.a:${PORTSDIR}/math/metis
+CONFIGURE_ARGS+= --with-metis=yes
+CPPFLAGS+= -I${LOCALBASE}/include/metis
+.else
+CONFIGURE_ARGS+= --with-metis=no
+.endif
+
+.if defined(WITH_GINAC)
+IGNORE= "You enabled GiNaC-support, which isn't implemented yet"
+#BUILD_DEPENDS+= ${LOCALBASE}/lib/libmetis.a:${PORTSDIR}/math/metis
+CONFIGURE_ARGS+= --with-ginac=yes
+CPPFLAGS+= -I${LOCALBASE}/include/metis
+.else
+CONFIGURE_ARGS+= --with-ginac=no
+.endif
+
+.if defined(WITH_TCL)
+IGNORE= "You enabled Tcl-support, which isn't implemented yet"
+LIB_DEPENDS+= tcl84:${PORTSDIR}/lang/tcl84
+CONFIGURE_ARGS+= --with-tcl=yes
+CPPFLAGS+= -I${LOCALBASE}/include/tcl8.4
+.else
+CONFIGURE_ARGS+= --with-tcl=no
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/science/mbdyn/distinfo b/science/mbdyn/distinfo
new file mode 100644
index 000000000000..4e7730493afc
--- /dev/null
+++ b/science/mbdyn/distinfo
@@ -0,0 +1,2 @@
+MD5 (mbdyn-1.2.4.tar.gz) = 9b722c0fa62b0701ab5cb7c54dee0b53
+SIZE (mbdyn-1.2.4.tar.gz) = 1439038
diff --git a/science/mbdyn/files/patch-configure b/science/mbdyn/files/patch-configure
new file mode 100644
index 000000000000..7ca6bfb66781
--- /dev/null
+++ b/science/mbdyn/files/patch-configure
@@ -0,0 +1,20 @@
+--- configure.orig Wed Feb 16 21:50:48 2005
++++ configure Fri Mar 11 19:39:24 2005
+@@ -25334,7 +25334,7 @@
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+ ac_check_lib_save_LIBS=$LIBS
+-LIBS="-ltcl $LIBS"
++LIBS="-ltcl84 $LIBS"
+ cat >conftest.$ac_ext <<_ACEOF
+ #line $LINENO "configure"
+ /* confdefs.h. */
+@@ -29925,7 +29925,7 @@
+ rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+ if test $have_mpi = no ; then
+ if test "$ol_with_mpi" = "pmpi" ; then
+- try_mpi_LIBS="-lpmpich++ -lmpich -lpmpich -lnsl"
++ try_mpi_LIBS="-lpmpich++ -lmpich -lpmpich"
+ else
+ try_mpi_LIBS="-lmpich++ -lmpich -lnsl"
+ fi
diff --git a/science/mbdyn/files/patch-mbdyn__base__solver.cc b/science/mbdyn/files/patch-mbdyn__base__solver.cc
new file mode 100644
index 000000000000..d6df8a1faf97
--- /dev/null
+++ b/science/mbdyn/files/patch-mbdyn__base__solver.cc
@@ -0,0 +1,20 @@
+--- mbdyn/base/solver.cc.orig Thu Feb 10 14:49:22 2005
++++ mbdyn/base/solver.cc Sat Feb 12 17:14:57 2005
+@@ -95,10 +95,17 @@
+
+ #ifdef HAVE_SIGNAL
+ static volatile sig_atomic_t mbdyn_keep_going = 1;
++#if defined(__FreeBSD__)
++static __sighandler_t *mbdyn_sh_term = SIG_DFL;
++static __sighandler_t *mbdyn_sh_int = SIG_DFL;
++static __sighandler_t *mbdyn_sh_hup = SIG_DFL;
++static __sighandler_t *mbdyn_sh_pipe = SIG_DFL;
++#else
+ static __sighandler_t mbdyn_sh_term = SIG_DFL;
+ static __sighandler_t mbdyn_sh_int = SIG_DFL;
+ static __sighandler_t mbdyn_sh_hup = SIG_DFL;
+ static __sighandler_t mbdyn_sh_pipe = SIG_DFL;
++#endif
+
+ static void
+ really_exit_handler(int signum)
diff --git a/science/mbdyn/files/patch-mbdyn__mbdyn.h b/science/mbdyn/files/patch-mbdyn__mbdyn.h
new file mode 100644
index 000000000000..873e75856d04
--- /dev/null
+++ b/science/mbdyn/files/patch-mbdyn__mbdyn.h
@@ -0,0 +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 @@
+ typedef double Real;
+
+ /* signal types */
++#if !defined(__FreeBSD__)
+ #ifdef HAVE_SIGNAL
+ #ifndef HAVE___SIGHANDLER_T
+ #ifndef HAVE_SIGHANDLER_T
+@@ -58,6 +59,7 @@
+ #endif /* HAVE_SIGHANDLER_T */
+ #endif /* !HAVE___SIGHANDLER_T */
+ #endif /* HAVE_SIGNAL */
++#endif
+
+ /* sig_atomic_t */
+ #ifndef HAVE_SIG_ATOMIC_T
diff --git a/science/mbdyn/pkg-descr b/science/mbdyn/pkg-descr
new file mode 100644
index 000000000000..14cc6838c91c
--- /dev/null
+++ b/science/mbdyn/pkg-descr
@@ -0,0 +1,11 @@
+* What MBDyn is
+ o a command-line, direct initial-value problem solver
+ with a large, flexible multifield element library
+ o a research tool
+ o a community developed, research driven open-source software
+* What MBDyn is not
+ o a complete out-of-the-box ``bells and whistles'' GUI for solid modeling
+ o a commercial tool
+ o a completely supported software
+
+WWW: http://www.mbdyn.org
diff --git a/science/mbdyn/pkg-plist b/science/mbdyn/pkg-plist
new file mode 100644
index 000000000000..a50d9d37dedb
--- /dev/null
+++ b/science/mbdyn/pkg-plist
@@ -0,0 +1,35 @@
+bin/mbdyn
+bin/autopilot
+bin/c81merge
+bin/c81test
+bin/cl
+bin/crypt
+bin/dae-intg
+bin/deriv
+bin/env
+bin/eu2rot
+bin/femgen
+bin/intg
+bin/logproc
+bin/mbplot
+bin/posrel
+bin/rot2eu
+bin/rot2eup
+bin/rot2phi
+bin/rotrel
+bin/sockdrive
+bin/socket2stream
+bin/stream2socket
+bin/vec2rot
+lib/libmbutil.la
+lib/libmbutil.a
+lib/libmbmath.la
+lib/libmbmath.a
+lib/liby12.la
+lib/liby12.a
+lib/libcolamd.la
+lib/libcolamd.a
+lib/libnaive.la
+lib/libnaive.a
+lib/libmbwrap.la
+lib/libmbwrap.a