aboutsummaryrefslogtreecommitdiff
path: root/math
diff options
context:
space:
mode:
authorSatoshi Asami <asami@FreeBSD.org>1997-06-10 08:50:18 +0000
committerSatoshi Asami <asami@FreeBSD.org>1997-06-10 08:50:18 +0000
commit252df23ed7b9c30eca9d1e752e572b27e51c152a (patch)
tree57a469ee4f4cb22179cc7ab4d2106ee5a0b8bed3 /math
parent302ae84af992bfe07b6ea81a2c0aac9908ca7a01 (diff)
downloadports-252df23ed7b9c30eca9d1e752e572b27e51c152a.tar.gz
ports-252df23ed7b9c30eca9d1e752e572b27e51c152a.zip
Libraries and tools for simulation modeling.
PR: 3757 Submitted by: Ruslan Shevchenko <rssh@cki.ipri.kiev.ua>
Notes
Notes: svn path=/head/; revision=6833
Diffstat (limited to 'math')
-rw-r--r--math/simpack/Makefile124
-rw-r--r--math/simpack/distinfo1
-rw-r--r--math/simpack/files/DIRS-LIB4
-rw-r--r--math/simpack/files/DIRS-SHARE23
-rw-r--r--math/simpack/files/FILES-BIN5
-rw-r--r--math/simpack/files/FILES-INCLUDE-QUEUING2
-rw-r--r--math/simpack/files/FILES-INCLUDE-SIMPP8
-rw-r--r--math/simpack/files/FILES-LIB48
-rw-r--r--math/simpack/files/FILES-OLB16
-rw-r--r--math/simpack/files/FILES-SHARE306
-rw-r--r--math/simpack/files/FILES-SRC-SIMPP16
-rw-r--r--math/simpack/files/patch-aa700
-rw-r--r--math/simpack/files/patch-ab506
-rw-r--r--math/simpack/files/patch-ac142
-rw-r--r--math/simpack/pkg-comment1
-rw-r--r--math/simpack/pkg-descr17
-rw-r--r--math/simpack/pkg-plist398
-rw-r--r--math/simpack/pkg-req59
18 files changed, 2376 insertions, 0 deletions
diff --git a/math/simpack/Makefile b/math/simpack/Makefile
new file mode 100644
index 000000000000..d2120d1bce53
--- /dev/null
+++ b/math/simpack/Makefile
@@ -0,0 +1,124 @@
+# new ports collection Makefile for: SimPack
+# Version required: 3.0
+# Date created: 5 June 1997
+# Whom: Ruslan Shevchenko <rssh@cki.ipri.kiev.ua>
+#
+# $Id$
+#
+
+DISTNAME= simpack-3.0
+CATEGORIES= math
+MASTER_SITES= ftp://ftp.cis.ufl.edu/pub/simdigest/tools/
+DISTFILES= SimPack3.tar.Z
+
+MAINTAINER= rssh@cki.ipri.kiev.ua
+
+WRKSRC= ${WRKDIR}/simpack
+
+post-build: create-libs create-scripts
+
+do-install: do-install-bin do-install-include do-install-lib do-install-doc
+
+post-install:
+ @/bin/sh ${PKGDIR}/REQ
+ @${LDCONFIG} -m ${PREFIX}/lib
+
+do-install-bin:
+ @for i in `${CAT} ${FILESDIR}/FILES-BIN` ; do \
+ ${INSTALL_PROGRAM} ${WRKSRC}/$$i ${PREFIX}/bin; \
+ done
+ @${INSTALL_SCRIPT} ${WRKDIR}/temp/sdsmt.alias ${PREFIX}/bin/sdsmt
+ @${INSTALL_SCRIPT} ${WRKDIR}/temp/deq.alias ${PREFIX}/bin/deq
+
+do-install-include:
+ @${MKDIR} ${PREFIX}/include/Sim++
+ @for i in `${CAT} ${FILESDIR}/FILES-INCLUDE-SIMPP` ; do \
+ ${INSTALL_DATA} ${WRKSRC}/$$i ${PREFIX}/include/Sim++ ; \
+ done
+ @${MKDIR} ${PREFIX}/include/queuing
+ @for i in `${CAT} ${FILESDIR}/FILES-INCLUDE-QUEUING` ; do \
+ ${INSTALL_DATA} ${WRKSRC}/$$i ${PREFIX}/include/queuing/ ; \
+ done
+
+do-install-lib:
+ @${MKDIR} ${PREFIX}/lib/Sim++/olb
+ @for i in `${CAT} ${FILESDIR}/FILES-OLB` ; do \
+ ${INSTALL_DATA} ${WRKSRC}/$$i ${PREFIX}/lib/Sim++/olb/ ; \
+ done
+ @for i in `${CAT} ${FILESDIR}/DIRS-LIB` ; do \
+ ${MKDIR} ${PREFIX}/lib/SimPack/$$i ; \
+ done
+ @for i in `${CAT} ${FILESDIR}/FILES-LIB` ; do \
+ ${INSTALL_DATA} ${WRKSRC}/$$i ${PREFIX}/lib/SimPack/$$i ; \
+ done
+ @${INSTALL_DATA} ${WRKDIR}/temp/libsim++.a ${PREFIX}/lib/libsim++.a
+ @${INSTALL_DATA} ${WRKDIR}/temp/libsim++.so.1.0 \
+ ${PREFIX}/lib/libsim++.so.1.0
+ @${INSTALL_DATA} ${WRKDIR}/temp/libqueuing.a ${PREFIX}/lib/libqueuing.a;
+ @${INSTALL_DATA} ${WRKDIR}/temp/libqueuing.so.1.0 \
+ ${PREFIX}/lib/libqueuing.so.1.0
+
+do-install-doc:
+ @for i in `${CAT} ${FILESDIR}/DIRS-SHARE` ; do \
+ ${MKDIR} ${PREFIX}/share/SimPack/$$i; \
+ done
+ @for i in `${CAT} ${FILESDIR}/FILES-SHARE` ; do \
+ ${INSTALL_DATA} ${WRKSRC}/$$i ${PREFIX}/share/SimPack/$$i ; \
+ done
+
+create-libs: create-lib-sim++ create-lib-queuing
+
+create-lib-sim++:
+ @${ECHO} libsim++.a
+ @${MKDIR} ${WRKDIR}/temp
+ @(cd ${WRKDIR}/temp; \
+ for i in `${CAT} ${FILESDIR}/FILES-SRC-SIMPP` ; do \
+ gcc -I${WRKSRC}/func/event/include -c -O \
+ ${WRKSRC}/func/event/src/$$i ; \
+ done; \
+ ${AR} cq libsim++.a `lorder *.o | tsort -q `; \
+ ${RM} *.o )
+ @${ECHO} libsim++.so.1.0
+ @(cd ${WRKDIR}/temp; \
+ for i in `${CAT} ${FILESDIR}/FILES-SRC-SIMPP` ; do \
+ gcc -fpic -DPIC -I${WRKSRC}/func/event/include -c -O \
+ -o `basename $$i cpp`.so \
+ ${WRKSRC}/func/event/src/$$i ; \
+ done; \
+ ${LD} -Bshareable -x -o libsim++.so.1.0 \
+ `lorder *.so | tsort -q ` ; \
+ ${RM} *.so )
+
+create-lib-queuing:
+ @${ECHO} libqueuing.a
+ @(cd ${WRKDIR}/temp; \
+ gcc -I${WRKSRC}/func/queuing -c -O \
+ ${WRKSRC}/func/queuing/queuing.c; \
+ ${AR} cq libqueuing.a `lorder *.o | tsort -q `; \
+ ${RM} *.o )
+ @${ECHO} libqueuing.so.1.0
+ @(cd ${WRKDIR}/temp; \
+ gcc -fpic -DPIC -I${WRKSRC}/func/queuing -c -O \
+ -o queuing.so \
+ ${WRKSRC}/func/queuing/queuing.c ; \
+ ${LD} -Bshareable -x -o libqueuing.so.1.0 \
+ `lorder *.so | tsort -q ` ; \
+ ${RM} *.so )
+
+create-scripts: create-sdsmt-alias create-deq-alias
+
+create-sdsmt-alias:
+ @${ECHO} SDSMTLIB=${PREFIX}/lib/SimPack/func/slice/sdsmt \
+ > ${WRKDIR}/temp/sdsmt.alias
+ @${ECHO} export SDSMTLIB >> ${WRKDIR}/temp/sdsmt.alias
+ @${ECHO} wish4.1 ${PREFIX}/lib/SimPack/func/slice/sdsmt/sdsmt \
+ >> ${WRKDIR}/temp/sdsmt.alias
+
+create-deq-alias:
+ @${ECHO} PATCH=${PREFIX}/lib/SimPack/constraint/differential:$$PATCH \
+ > ${WRKDIR}/temp/deq.alias
+ @${ECHO} export PATCH >> ${WRKDIR}/temp/deq.alias
+ @${ECHO} ${PREFIX}/lib/SimPack/constraint/differential/deq $$* \
+ >> ${WRKDIR}/temp/deq.alias
+
+.include <bsd.port.mk>
diff --git a/math/simpack/distinfo b/math/simpack/distinfo
new file mode 100644
index 000000000000..df62325fca15
--- /dev/null
+++ b/math/simpack/distinfo
@@ -0,0 +1 @@
+MD5 (SimPack3.tar.Z) = b531e4d2b7705971b41dfc111b670443
diff --git a/math/simpack/files/DIRS-LIB b/math/simpack/files/DIRS-LIB
new file mode 100644
index 000000000000..ba3cdcd666b7
--- /dev/null
+++ b/math/simpack/files/DIRS-LIB
@@ -0,0 +1,4 @@
+ constraint/differential/deq
+ func/slice/sdsmt
+ func/slice/sdsmt/XBM
+ func/slice/sdsmt/bitmaps
diff --git a/math/simpack/files/DIRS-SHARE b/math/simpack/files/DIRS-SHARE
new file mode 100644
index 000000000000..1597fa1fd7bb
--- /dev/null
+++ b/math/simpack/files/DIRS-SHARE
@@ -0,0 +1,23 @@
+ constraint/delaydiff/
+ constraint/difference/
+ constraint/differential/deq/
+ constraint/differential/integrate/
+ func/event/doc/
+ func/event/examples/airport/
+ func/event/examples/block/
+ func/event/examples/cpudisk/
+ func/event/examples/iterate/
+ func/event/examples/logic/
+ func/event/examples/network/
+ func/event/examples/qnet/
+ func/event/examples/route/
+ func/event/examples/ssq/
+ func/event/examples/tiktok/
+ func/event/pkgs/Xsimcode/examples/
+ func/event/pkgs/minigpss/gpdoc/
+ func/event/pkgs/minigpss/gpfiles/
+ func/slice/block/
+ func/slice/pulse/
+ func/slice/sdsmt/
+ multimodel/
+ projects/
diff --git a/math/simpack/files/FILES-BIN b/math/simpack/files/FILES-BIN
new file mode 100644
index 000000000000..a4fcc542e792
--- /dev/null
+++ b/math/simpack/files/FILES-BIN
@@ -0,0 +1,5 @@
+ dec/fsa/fsa
+ dec/markov/markov
+ dec/petri/petri
+ func/event/pkgs/Xsimcode/src/Xsimcode
+ func/event/pkgs/minigpss/gpfiles/gpss
diff --git a/math/simpack/files/FILES-INCLUDE-QUEUING b/math/simpack/files/FILES-INCLUDE-QUEUING
new file mode 100644
index 000000000000..5f2c452555eb
--- /dev/null
+++ b/math/simpack/files/FILES-INCLUDE-QUEUING
@@ -0,0 +1,2 @@
+func/queuing/queuing.h
+func/queuing/mytypes.h
diff --git a/math/simpack/files/FILES-INCLUDE-SIMPP b/math/simpack/files/FILES-INCLUDE-SIMPP
new file mode 100644
index 000000000000..5bb295985da1
--- /dev/null
+++ b/math/simpack/files/FILES-INCLUDE-SIMPP
@@ -0,0 +1,8 @@
+ func/event/include/capi.h
+ func/event/include/facility.h
+ func/event/include/future.h
+ func/event/include/token.h
+ func/event/include/event.h
+ func/event/include/flist.h
+ func/event/include/queuing.h
+ func/event/include/vlist.h
diff --git a/math/simpack/files/FILES-LIB b/math/simpack/files/FILES-LIB
new file mode 100644
index 000000000000..da1f51029643
--- /dev/null
+++ b/math/simpack/files/FILES-LIB
@@ -0,0 +1,48 @@
+ constraint/differential/deq/deq
+ constraint/differential/deq/order1
+ constraint/differential/deq/contsim
+ func/slice/sdsmt/Xdefaults
+ func/slice/sdsmt/display1.tcl
+ func/slice/sdsmt/do.tcl
+ func/slice/sdsmt/draw.tcl
+ func/slice/sdsmt/equ.tcl
+ func/slice/sdsmt/file.tcl
+ func/slice/sdsmt/help.tcl
+ func/slice/sdsmt/plot.tcl
+ func/slice/sdsmt/sdsmt
+ func/slice/sdsmt/set.tcl
+ func/slice/sdsmt/tclIndex
+ func/slice/sdsmt/XBM/author.bmp
+ func/slice/sdsmt/XBM/aux.xbm
+ func/slice/sdsmt/XBM/cancel.bmp
+ func/slice/sdsmt/XBM/celink.xbm
+ func/slice/sdsmt/XBM/const.bmp
+ func/slice/sdsmt/XBM/const.xbm
+ func/slice/sdsmt/XBM/dash.bmp
+ func/slice/sdsmt/XBM/delete.xbm
+ func/slice/sdsmt/XBM/edit.xbm
+ func/slice/sdsmt/XBM/equ.xbm
+ func/slice/sdsmt/XBM/exec.xbm
+ func/slice/sdsmt/XBM/flow.xbm
+ func/slice/sdsmt/XBM/grid.bmp
+ func/slice/sdsmt/XBM/grid.fig
+ func/slice/sdsmt/XBM/grid0.bmp
+ func/slice/sdsmt/XBM/grid0.xbm
+ func/slice/sdsmt/XBM/grid1.bmp
+ func/slice/sdsmt/XBM/grid1.xbm
+ func/slice/sdsmt/XBM/grid2.bmp
+ func/slice/sdsmt/XBM/grid2.xbm
+ func/slice/sdsmt/XBM/gridm.xbm
+ func/slice/sdsmt/XBM/icon.fig
+ func/slice/sdsmt/XBM/level.xbm
+ func/slice/sdsmt/XBM/move.xbm
+ func/slice/sdsmt/XBM/rate.bmp
+ func/slice/sdsmt/XBM/rate.xbm
+ func/slice/sdsmt/XBM/source.bmp
+ func/slice/sdsmt/XBM/source.xbm
+ func/slice/sdsmt/XBM/undo.xbm
+ func/slice/sdsmt/bitmaps/delete.eps
+ func/slice/sdsmt/bitmaps/grey.05
+ func/slice/sdsmt/bitmaps/grey.10
+ func/slice/sdsmt/bitmaps/grey.25
+ func/slice/sdsmt/bitmaps/grey.5
diff --git a/math/simpack/files/FILES-OLB b/math/simpack/files/FILES-OLB
new file mode 100644
index 000000000000..7fed14d6228a
--- /dev/null
+++ b/math/simpack/files/FILES-OLB
@@ -0,0 +1,16 @@
+ func/event/olb/calendar.o
+ func/event/olb/capifac.o
+ func/event/olb/capifut.o
+ func/event/olb/capiran.o
+ func/event/olb/estatus.o
+ func/event/olb/event.o
+ func/event/olb/facility.o
+ func/event/olb/flist.o
+ func/event/olb/future.o
+ func/event/olb/heap.o
+ func/event/olb/leftist.o
+ func/event/olb/linked.o
+ func/event/olb/service.o
+ func/event/olb/token.o
+ func/event/olb/util.o
+ func/event/olb/vlist.o
diff --git a/math/simpack/files/FILES-SHARE b/math/simpack/files/FILES-SHARE
new file mode 100644
index 000000000000..a1383535732b
--- /dev/null
+++ b/math/simpack/files/FILES-SHARE
@@ -0,0 +1,306 @@
+ constraint/delaydiff/haem.time-20.ps
+ constraint/delaydiff/Makefile
+ constraint/delaydiff/delaydiff.c
+ constraint/difference/Makefile
+ constraint/difference/README
+ constraint/difference/bifurc.c
+ constraint/difference/log1a.c
+ constraint/difference/log1b.c
+ constraint/difference/log2.c
+ constraint/differential/deq/README
+ constraint/differential/deq/duff.in
+ constraint/differential/deq/lorenz.in
+ constraint/differential/deq/deq.doc
+ constraint/differential/integrate/README
+ constraint/differential/integrate/predprey1.ps
+ constraint/differential/integrate/predprey2.ps
+ constraint/differential/integrate/predprey3.ps
+ constraint/differential/integrate/silnikov.ps
+ constraint/differential/integrate/conte.c
+ constraint/differential/integrate/contrk.c
+ constraint/differential/integrate/lorenz.c
+ constraint/differential/integrate/lotka.c
+ constraint/differential/integrate/silnikov.c
+ constraint/differential/integrate/vibration.c
+ func/event/doc/simpp.ps
+ func/event/examples/airport/airport1
+ func/event/examples/airport/airport2
+ func/event/examples/airport/readme
+ func/event/examples/airport/translat
+ func/event/examples/airport/makefile
+ func/event/examples/block/readme
+ func/event/examples/block/block0
+ func/event/examples/block/block1
+ func/event/examples/block/block2
+ func/event/examples/block/block3
+ func/event/examples/block/block4
+ func/event/examples/block/output.v0u
+ func/event/examples/block/output.v1d
+ func/event/examples/block/output.v1u
+ func/event/examples/block/output.v2d
+ func/event/examples/block/output.v2u
+ func/event/examples/block/output.v3d
+ func/event/examples/block/output.v3u
+ func/event/examples/block/output.v4d
+ func/event/examples/block/output.v4u
+ func/event/examples/block/translat
+ func/event/examples/block/makefile
+ func/event/examples/cpudisk/readme
+ func/event/examples/cpudisk/cpudisk0
+ func/event/examples/cpudisk/cpudisk1
+ func/event/examples/cpudisk/cpudisk2
+ func/event/examples/cpudisk/cpudisk3
+ func/event/examples/cpudisk/cpudisk4
+ func/event/examples/cpudisk/cpudisk5
+ func/event/examples/cpudisk/cpudisk6
+ func/event/examples/cpudisk/output.v0u
+ func/event/examples/cpudisk/output.v1d
+ func/event/examples/cpudisk/output.v1u
+ func/event/examples/cpudisk/output.v2d
+ func/event/examples/cpudisk/output.v2u
+ func/event/examples/cpudisk/output.v3d
+ func/event/examples/cpudisk/output.v3u
+ func/event/examples/cpudisk/output.v4d
+ func/event/examples/cpudisk/output.v4u
+ func/event/examples/cpudisk/output.v5d
+ func/event/examples/cpudisk/output.v5u
+ func/event/examples/cpudisk/output.v6d
+ func/event/examples/cpudisk/output.v6u
+ func/event/examples/cpudisk/translat
+ func/event/examples/cpudisk/makefile
+ func/event/examples/iterate/iterate1
+ func/event/examples/iterate/iterate2
+ func/event/examples/iterate/makefile
+ func/event/examples/iterate/output.v1u
+ func/event/examples/iterate/output.v2u
+ func/event/examples/iterate/readme
+ func/event/examples/iterate/translat
+ func/event/examples/logic/andor.dat
+ func/event/examples/logic/andor.out
+ func/event/examples/logic/inv.dat
+ func/event/examples/logic/inv.out
+ func/event/examples/logic/logic
+ func/event/examples/logic/logic.C
+ func/event/examples/logic/logic0
+ func/event/examples/logic/logic1
+ func/event/examples/logic/makefile
+ func/event/examples/logic/makefile.simpack
+ func/event/examples/logic/output.v0u
+ func/event/examples/logic/output.v1d
+ func/event/examples/logic/output.v1u
+ func/event/examples/logic/readme
+ func/event/examples/logic/translat
+ func/event/examples/logic/translat.bat
+ func/event/examples/network/makefile
+ func/event/examples/network/makefile.simpack
+ func/event/examples/network/net1.dat
+ func/event/examples/network/net2.dat
+ func/event/examples/network/net3.dat
+ func/event/examples/network/net4.dat
+ func/event/examples/network/net5.dat
+ func/event/examples/network/network0
+ func/event/examples/network/network1
+ func/event/examples/network/output.v0u
+ func/event/examples/network/output.v1d
+ func/event/examples/network/output.v1u
+ func/event/examples/network/readme
+ func/event/examples/network/translat
+ func/event/examples/network/translat.bat
+ func/event/examples/qnet/cpudisk.dat
+ func/event/examples/qnet/makefile
+ func/event/examples/qnet/makefile.orig
+ func/event/examples/qnet/output.v0u
+ func/event/examples/qnet/output.v1d
+ func/event/examples/qnet/output.v1u
+ func/event/examples/qnet/q.dat
+ func/event/examples/qnet/qnet0
+ func/event/examples/qnet/qnet1
+ func/event/examples/qnet/readme
+ func/event/examples/qnet/translat
+ func/event/examples/qnet/translat.bat
+ func/event/examples/route/d1e
+ func/event/examples/route/d1u
+ func/event/examples/route/d2a
+ func/event/examples/route/d2e
+ func/event/examples/route/d2u
+ func/event/examples/route/d3e
+ func/event/examples/route/d3l
+ func/event/examples/route/d3u
+ func/event/examples/route/makefile
+ func/event/examples/route/makefile.simpack
+ func/event/examples/route/output.v0u
+ func/event/examples/route/output.v1d
+ func/event/examples/route/output.v1u
+ func/event/examples/route/readme
+ func/event/examples/route/route0
+ func/event/examples/route/route1
+ func/event/examples/route/translat
+ func/event/examples/route/translat.bat
+ func/event/examples/ssq/makefile
+ func/event/examples/ssq/makefile.simpack
+ func/event/examples/ssq/output.11d
+ func/event/examples/ssq/output.11u
+ func/event/examples/ssq/output.v0u
+ func/event/examples/ssq/output.v1d
+ func/event/examples/ssq/output.v1u
+ func/event/examples/ssq/output.v2d
+ func/event/examples/ssq/output.v2u
+ func/event/examples/ssq/output.v4d
+ func/event/examples/ssq/output.v4u
+ func/event/examples/ssq/output.v5d
+ func/event/examples/ssq/output.v5u
+ func/event/examples/ssq/output.v6d
+ func/event/examples/ssq/output.v6u
+ func/event/examples/ssq/output.v7d
+ func/event/examples/ssq/output.v7u
+ func/event/examples/ssq/output.v8d
+ func/event/examples/ssq/output.v8u
+ func/event/examples/ssq/readme
+ func/event/examples/ssq/ssq0
+ func/event/examples/ssq/ssq1
+ func/event/examples/ssq/ssq10
+ func/event/examples/ssq/ssq11
+ func/event/examples/ssq/ssq12
+ func/event/examples/ssq/ssq13
+ func/event/examples/ssq/ssq2
+ func/event/examples/ssq/ssq3
+ func/event/examples/ssq/ssq4
+ func/event/examples/ssq/ssq5
+ func/event/examples/ssq/ssq6
+ func/event/examples/ssq/ssq7
+ func/event/examples/ssq/ssq8
+ func/event/examples/ssq/ssq9
+ func/event/examples/ssq/translat
+ func/event/examples/tiktok/makefile
+ func/event/examples/tiktok/makefile.orig
+ func/event/examples/tiktok/makefile.simpack
+ func/event/examples/tiktok/output.v0u
+ func/event/examples/tiktok/output.v1d
+ func/event/examples/tiktok/output.v1u
+ func/event/examples/tiktok/output.v2d
+ func/event/examples/tiktok/output.v2u
+ func/event/examples/tiktok/output.v3d
+ func/event/examples/tiktok/output.v3u
+ func/event/examples/tiktok/output.v4d
+ func/event/examples/tiktok/output.v4u
+ func/event/examples/tiktok/readme
+ func/event/examples/tiktok/tiktok
+ func/event/examples/tiktok/tiktok.C
+ func/event/examples/tiktok/tiktok0
+ func/event/examples/tiktok/tiktok1
+ func/event/examples/tiktok/tiktok2
+ func/event/examples/tiktok/tiktok3
+ func/event/examples/tiktok/tiktok4
+ func/event/examples/tiktok/translat
+ func/event/pkgs/Xsimcode/README
+ func/event/pkgs/Xsimcode/examples/Makefile
+ func/event/pkgs/Xsimcode/examples/Readme
+ func/event/pkgs/Xsimcode/examples/big_test.sim
+ func/event/pkgs/Xsimcode/examples/combined1.sim
+ func/event/pkgs/Xsimcode/examples/examp1.sim
+ func/event/pkgs/Xsimcode/examples/examp2.sim
+ func/event/pkgs/Xsimcode/examples/examp3.sim
+ func/event/pkgs/minigpss/gpdoc/README.abstract
+ func/event/pkgs/minigpss/gpdoc/README.dtastruct
+ func/event/pkgs/minigpss/gpdoc/README.intdia
+ func/event/pkgs/minigpss/gpdoc/README.intro
+ func/event/pkgs/minigpss/gpdoc/README.progdesc
+ func/event/pkgs/minigpss/gpdoc/README.ref
+ func/event/pkgs/minigpss/gpdoc/README.syntax
+ func/event/pkgs/minigpss/gpdoc/README.sysdia
+ func/event/pkgs/minigpss/gpdoc/README.system
+ func/event/pkgs/minigpss/gpdoc/README.userman
+ func/event/pkgs/minigpss/gpdoc/barber2.g
+ func/event/pkgs/minigpss/gpdoc/barber2.gps
+ func/event/pkgs/minigpss/gpdoc/docs
+ func/event/pkgs/minigpss/gpdoc/ls
+ func/event/pkgs/minigpss/gpdoc/minidesc.txt
+ func/event/pkgs/minigpss/gpfiles/Makefile
+ func/event/pkgs/minigpss/gpfiles/barber2.g
+ func/event/pkgs/minigpss/gpfiles/barbershop.g
+ func/event/pkgs/minigpss/gpfiles/branch.g
+ func/event/pkgs/minigpss/gpfiles/branch2.g
+ func/event/pkgs/minigpss/gpfiles/branch4.g
+ func/event/pkgs/minigpss/gpfiles/branching.g
+ func/event/pkgs/minigpss/gpfiles/myfig.g
+ func/event/pkgs/minigpss/gpfiles/nofac.g
+ func/event/pkgs/minigpss/gpfiles/nofac2.g
+ func/event/pkgs/minigpss/gpfiles/sample1.g
+ func/event/pkgs/minigpss/gpfiles/sample1.out
+ func/event/pkgs/minigpss/gpfiles/sample2.g
+ func/event/pkgs/minigpss/gpfiles/sample2.out
+ func/event/pkgs/minigpss/gpfiles/sample3.g
+ func/event/pkgs/minigpss/gpfiles/sample3.out
+ func/event/pkgs/minigpss/gpfiles/sample4.g
+ func/event/pkgs/minigpss/gpfiles/sample4.out
+ func/event/pkgs/minigpss/gpfiles/scanners.g
+ func/event/pkgs/minigpss/gpfiles/scanners.out
+ func/event/pkgs/minigpss/gpfiles/scanners2.g
+ func/event/pkgs/minigpss/gpfiles/series.g
+ func/event/pkgs/minigpss/gpfiles/simgen.c
+ func/event/pkgs/minigpss/gpfiles/timed.g
+ func/event/pkgs/minigpss/gpfiles/twice.g
+ func/slice/block/Makefile
+ func/slice/block/README
+ func/slice/block/block.c
+ func/slice/block/block.dat
+ func/slice/block/block.out
+ func/slice/block/block.ps
+ func/slice/block/block2.dat
+ func/slice/block/block2.out
+ func/slice/block/block2.ps
+ func/slice/block/monorail1.c
+ func/slice/block/monorail1.dat
+ func/slice/block/monorail2.c
+ func/slice/block/monorail2.dat
+ func/slice/block/monorail3.c
+ func/slice/block/monorail3.dat
+ func/slice/block/monorail3.out
+ func/slice/block/monorail3.ps
+ func/slice/pulse/Makefile
+ func/slice/pulse/README.PUL
+ func/slice/pulse/herb.dat
+ func/slice/pulse/pulse.c
+ func/slice/sdsmt/ANNOUNCE
+ func/slice/sdsmt/DOC.PS
+ func/slice/sdsmt/README
+ func/slice/sdsmt/buildings.sdg
+ func/slice/sdsmt/coffee.sdg
+ func/slice/sdsmt/coffee.sdg.equ
+ func/slice/sdsmt/coffee.sdg.init
+ func/slice/sdsmt/epidemic.sdg
+ func/slice/sdsmt/epidemic.sdg.equ
+ func/slice/sdsmt/epidemic.sdg.init
+ func/slice/sdsmt/fly.sdg
+ func/slice/sdsmt/fly.sdg.equ
+ func/slice/sdsmt/fly.sdg.init
+ func/slice/sdsmt/larvae2.sdg
+ func/slice/sdsmt/larvae2.sdg.equ
+ func/slice/sdsmt/larvae2.sdg.init
+ func/slice/sdsmt/larve.sdg.equ
+ func/slice/sdsmt/larve.sdg.init
+ func/slice/sdsmt/news.lists
+ func/slice/sdsmt/pop.sdg
+ func/slice/sdsmt/pop.sdg.equ
+ func/slice/sdsmt/pop.sdg.init
+ func/slice/sdsmt/population.sdg
+ func/slice/sdsmt/population.sdg.equ
+ func/slice/sdsmt/population.sdg.init
+ func/slice/sdsmt/population1.sdg.equ
+ func/slice/sdsmt/population1.sdg.init
+ multimodel/Makefile
+ multimodel/README
+ multimodel/bwater
+ multimodel/bwater.c
+ multimodel/bwater.in
+ multimodel/combined
+ multimodel/combined.c
+ projects/README
+ projects/davinci
+ README
+ BOOK
+ COPYRIGHT
+ License
+ License.gnu
+ shipmail.info
+ SimPack.doc
diff --git a/math/simpack/files/FILES-SRC-SIMPP b/math/simpack/files/FILES-SRC-SIMPP
new file mode 100644
index 000000000000..932bbd35cb62
--- /dev/null
+++ b/math/simpack/files/FILES-SRC-SIMPP
@@ -0,0 +1,16 @@
+ calendar.cpp
+ capifac.cpp
+ capifut.cpp
+ capiran.cpp
+ estatus.cpp
+ event.cpp
+ facility.cpp
+ flist.cpp
+ future.cpp
+ heap.cpp
+ leftist.cpp
+ linked.cpp
+ service.cpp
+ token.cpp
+ util.cpp
+ vlist.cpp
diff --git a/math/simpack/files/patch-aa b/math/simpack/files/patch-aa
new file mode 100644
index 000000000000..30e23ca5fa50
--- /dev/null
+++ b/math/simpack/files/patch-aa
@@ -0,0 +1,700 @@
+diff -urd Makefile work/simpack/Makefile
+--- Makefile Fri Aug 25 00:59:55 1995
++++ work/simpack/Makefile Mon May 19 15:41:15 1997
+@@ -1,10 +1,10 @@
+ all:
+ @more COPYRIGHT
+- @Ask License
+- @Ask License.gnu
++ @./Ask License
++ @./Ask License.gnu
+ date
+ @echo 'Begin making'
+- (cd func; Make_all)
++ (cd func; ./Make_all)
+ @echo 'Unconditionally make the rest of SimPack3:'
+ @echo 'Declarative ...'
+ (cd dec; make all)
+@@ -26,7 +26,7 @@
+ date
+ @echo 'Begin cleaning'
+ find . -name '*~' -exec rm {} \;
+- (cd func; Make_clean)
++ (cd func; ./Make_clean)
+ (cd dec; make clean)
+ (cd multimodel; make clean)
+ (cd constraint; make clean)
+diff -urd constraint/differential/deq/order1.c work/simpack/constraint/differential/deq/order1.c
+--- constraint/differential/deq/order1.c Fri Aug 25 00:59:58 1995
++++ work/simpack/constraint/differential/deq/order1.c Mon May 19 16:17:44 1997
+@@ -353,7 +353,7 @@
+ s[++i]='-';
+ }
+ s[++i]=ch;
+- while isalnum(s[++i]=lower(getchar()));
++ while (isalnum(s[++i]=lower(getchar())));
+ ch=s[i];
+ s[i]='\0';
+ switch (lookup(s,&time_present,&dim)) {
+diff -urd dec/petri/petri.c work/simpack/dec/petri/petri.c
+--- dec/petri/petri.c Fri Aug 25 01:00:03 1995
++++ work/simpack/dec/petri/petri.c Mon May 19 16:05:38 1997
+@@ -15,6 +15,8 @@
+ #include <stdio.h>
+ #include "../../func/queuing/queuing.h"
+
++#define random(x,y) random_int(x,y)
++
+ #define BUSY 1
+ #define FREE 0
+ #define BEGINFIRE 1
+diff -urd func/Make_all work/simpack/func/Make_all
+--- func/Make_all Fri Aug 25 01:00:06 1995
++++ work/simpack/func/Make_all Mon May 19 15:40:46 1997
+@@ -10,10 +10,10 @@
+ echo 'Done creating SimPack2.x Queuing Library (or it was already current)'
+
+ echo 'About to create Sim++ version 1.0 Event Model Tools ...'
+-(cd event; Make_all)
++(cd event; ./Make_all)
+
+ echo 'About to create SimPack3 Time-Slice Functional Model Packages ...'
+-(cd slice; Make_all)
++(cd slice; ./Make_all)
+
+ echo 'simpack/func/Make_all is done.'
+ date
+diff -urd func/Make_clean work/simpack/func/Make_clean
+--- func/Make_clean Fri Aug 25 01:00:07 1995
++++ work/simpack/func/Make_clean Mon May 19 15:41:49 1997
+@@ -2,8 +2,8 @@
+ echo 'Remove Simpack2.x queuing library object file ...'
+ (cd queuing; rm -f queuing.o)
+ echo 'Remove Sim++ ...'
+-(cd event; Make_clean)
++(cd event; ./Make_clean)
+ echo 'Remove SimPack3 Time-Slice Functional Model Packages ...'
+-(cd slice; Make_clean)
++(cd slice; ./Make_clean)
+ echo 'simpack/func/Make_clean is done.'
+ date
+diff -urd func/event/Make_all work/simpack/func/event/Make_all
+--- func/event/Make_all Fri Aug 25 01:01:00 1995
++++ work/simpack/func/event/Make_all Mon May 19 15:43:03 1997
+@@ -4,7 +4,7 @@
+ echo 'copyright (c) 1995; see license in root directory of the distribution,'
+ echo 'which is simpack/func/event.'
+ echo 'The License for Sim++ is separate from the SimPack3 License.'
+-Ask License
++./Ask License
+ if ( [ -f REJECT ] ) then
+ echo 'You cannot proceed with Sim++ because you have rejected the terms and'
+ echo 'conditions of the Sim++ License.'
+@@ -20,7 +20,7 @@
+ echo ' '
+ if ( [ "$ansa" = "y" ] ) then
+ echo 'Creating Sim++ Object Library ...'
+- Translat
++ ./Translat
+ echo 'Done.'
+ fi
+
+@@ -29,7 +29,7 @@
+ echo ' '
+ if ( [ "$ansa" = "y" ] ) then
+ echo 'Creating Sim++ Example Code Executables ...'
+- (cd examples; translat)
++ (cd examples; ./translat)
+ echo 'Done.'
+ fi
+
+diff -urd func/event/Translat work/simpack/func/event/Translat
+--- func/event/Translat Fri Aug 25 01:00:59 1995
++++ work/simpack/func/event/Translat Mon May 19 15:43:52 1997
+@@ -18,22 +18,22 @@
+ echo 'About to Build Sim++ Object Library ...'
+ date
+ (cd src; chmod 600 *)
+-Trans1 calendar
+-Trans1 capifac
+-Trans1 capifut
+-Trans1 capiran
+-Trans1 event
+-Trans1 estatus
+-Trans1 facility
+-Trans1 flist
+-Trans1 future
+-Trans1 heap
+-Trans1 leftist
+-Trans1 linked
+-Trans1 service
+-Trans1 token
+-Trans1 util
+-Trans1 vlist
++./Trans1 calendar
++./Trans1 capifac
++./Trans1 capifut
++./Trans1 capiran
++./Trans1 event
++./Trans1 estatus
++./Trans1 facility
++./Trans1 flist
++./Trans1 future
++./Trans1 heap
++./Trans1 leftist
++./Trans1 linked
++./Trans1 service
++./Trans1 token
++./Trans1 util
++./Trans1 vlist
+ (cd src; chmod 444 *)
+
+ echo ' '
+diff -urd func/event/examples/airport/makefile work/simpack/func/event/examples/airport/makefile
+--- func/event/examples/airport/makefile Fri Aug 25 01:00:34 1995
++++ work/simpack/func/event/examples/airport/makefile Mon May 19 15:45:05 1997
+@@ -4,26 +4,26 @@
+ #
+ # makefile for examples/airport
+
+- PGM = airport
++PGM = airport
+
+- INCL = ../../include # where to find sim++ *.h
+- OLB = ../../olb # where to find sim++ *.o
++INCL = ../../include # where to find sim++ *.h
++OLB = ../../olb # where to find sim++ *.o
+
+- COMPILER = g++ -I$(INCL) -c -o
+- LINKER = g++ -o
++COMPILER = g++ -I$(INCL) -c -o
++LINKER = g++ -o
+
+
+ # enumerate sim++ object modules:
+
+- MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
+- MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
+- MAIN_OBJ = $(MAIN_1) $(MAIN_2)
++MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
++MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
++MAIN_OBJ = $(MAIN_1) $(MAIN_2)
+
+- CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
++CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
+
+- VLIST_1 = $(OLB)/vlist.o
+- VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
+- VLIST_OBJ = $(VLIST_1) $(VLIST_2)
++VLIST_1 = $(OLB)/vlist.o
++VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
++VLIST_OBJ = $(VLIST_1) $(VLIST_2)
+
+ # link
+
+diff -urd func/event/examples/block/makefile work/simpack/func/event/examples/block/makefile
+--- func/event/examples/block/makefile Fri Aug 25 01:00:15 1995
++++ work/simpack/func/event/examples/block/makefile Mon May 19 15:45:43 1997
+@@ -4,26 +4,26 @@
+ #
+ # makefile for examples/block (formerly blocking)
+
+- PGM = block
++PGM = block
+
+- INCL = ../../include # where to find sim++ *.h
+- OLB = ../../olb # where to find sim++ *.o
++INCL = ../../include # where to find sim++ *.h
++OLB = ../../olb # where to find sim++ *.o
+
+- COMPILER = g++ -I$(INCL) -c -o
+- LINKER = g++ -o
++COMPILER = g++ -I$(INCL) -c -o
++LINKER = g++ -o
+
+
+ # enumerate sim++ object modules:
+
+- MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
+- MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
+- MAIN_OBJ = $(MAIN_1) $(MAIN_2)
++MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
++MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
++MAIN_OBJ = $(MAIN_1) $(MAIN_2)
+
+- CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
++CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
+
+- VLIST_1 = $(OLB)/vlist.o
+- VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
+- VLIST_OBJ = $(VLIST_1) $(VLIST_2)
++VLIST_1 = $(OLB)/vlist.o
++VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
++VLIST_OBJ = $(VLIST_1) $(VLIST_2)
+
+ # link
+
+diff -urd func/event/examples/cpudisk/makefile work/simpack/func/event/examples/cpudisk/makefile
+--- func/event/examples/cpudisk/makefile Fri Aug 25 01:00:11 1995
++++ work/simpack/func/event/examples/cpudisk/makefile Mon May 19 15:46:27 1997
+@@ -4,23 +4,23 @@
+ #
+ # makefile for examples/cpudisk
+
+- INCL = ../../include # where to find sim++ *.h
+- OLB = ../../olb # where to find sim++ *.o
++INCL = ../../include # where to find sim++ *.h
++OLB = ../../olb # where to find sim++ *.o
+
+- COMPILER = g++ -I$(INCL) -c -o
+- LINKER = g++ -o
++COMPILER = g++ -I$(INCL) -c -o
++LINKER = g++ -o
+
+ # enumerate sim++ object modules:
+
+- MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
+- MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
+- MAIN_OBJ = $(MAIN_1) $(MAIN_2)
++MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
++MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
++MAIN_OBJ = $(MAIN_1) $(MAIN_2)
+
+- CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
++CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
+
+- VLIST_1 = $(OLB)/vlist.o
+- VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
+- VLIST_OBJ = $(VLIST_1) $(VLIST_2)
++VLIST_1 = $(OLB)/vlist.o
++VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
++VLIST_OBJ = $(VLIST_1) $(VLIST_2)
+
+ # link cpudisk
+
+diff -urd func/event/examples/iterate/makefile work/simpack/func/event/examples/iterate/makefile
+--- func/event/examples/iterate/makefile Fri Aug 25 01:00:33 1995
++++ work/simpack/func/event/examples/iterate/makefile Mon May 19 15:47:02 1997
+@@ -4,26 +4,26 @@
+ #
+ # makefile for examples/iterate
+
+- PGM = iterate
++PGM = iterate
+
+- INCL = ../../include # where to find sim++ *.h
+- OLB = ../../olb # where to find sim++ *.o
++INCL = ../../include # where to find sim++ *.h
++OLB = ../../olb # where to find sim++ *.o
+
+- COMPILER = g++ -I$(INCL) -c -o
+- LINKER = g++ -o
++COMPILER = g++ -I$(INCL) -c -o
++LINKER = g++ -o
+
+
+ # enumerate sim++ object modules:
+
+- MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
+- MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
+- MAIN_OBJ = $(MAIN_1) $(MAIN_2)
++MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
++MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
++MAIN_OBJ = $(MAIN_1) $(MAIN_2)
+
+- CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
++CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
+
+- VLIST_1 = $(OLB)/vlist.o
+- VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
+- VLIST_OBJ = $(VLIST_1) $(VLIST_2)
++VLIST_1 = $(OLB)/vlist.o
++VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
++VLIST_OBJ = $(VLIST_1) $(VLIST_2)
+
+ # link
+
+diff -urd func/event/examples/logic/makefile work/simpack/func/event/examples/logic/makefile
+--- func/event/examples/logic/makefile Fri Aug 25 01:00:31 1995
++++ work/simpack/func/event/examples/logic/makefile Mon May 19 15:47:39 1997
+@@ -4,26 +4,26 @@
+ #
+ # makefile for examples/logic
+
+- PGM = logic
++PGM = logic
+
+- INCL = ../../include # where to find sim++ *.h
+- OLB = ../../olb # where to find sim++ *.o
++INCL = ../../include # where to find sim++ *.h
++OLB = ../../olb # where to find sim++ *.o
+
+- COMPILER = g++ -I$(INCL) -c -o
+- LINKER = g++ -o
++COMPILER = g++ -I$(INCL) -c -o
++LINKER = g++ -o
+
+
+ # enumerate sim++ object modules:
+
+- MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
+- MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
+- MAIN_OBJ = $(MAIN_1) $(MAIN_2)
++MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
++MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
++MAIN_OBJ = $(MAIN_1) $(MAIN_2)
+
+- CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
++CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
+
+- VLIST_1 = $(OLB)/vlist.o
+- VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
+- VLIST_OBJ = $(VLIST_1) $(VLIST_2)
++VLIST_1 = $(OLB)/vlist.o
++VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
++VLIST_OBJ = $(VLIST_1) $(VLIST_2)
+
+ # link
+
+diff -urd func/event/examples/network/makefile work/simpack/func/event/examples/network/makefile
+--- func/event/examples/network/makefile Fri Aug 25 01:00:27 1995
++++ work/simpack/func/event/examples/network/makefile Mon May 19 15:48:23 1997
+@@ -4,26 +4,26 @@
+ #
+ # makefile for examples/network
+
+- PGM = network
++PGM = network
+
+- INCL = ../../include # where to find sim++ *.h
+- OLB = ../../olb # where to find sim++ *.o
++INCL = ../../include # where to find sim++ *.h
++OLB = ../../olb # where to find sim++ *.o
+
+- COMPILER = g++ -I$(INCL) -c -o
+- LINKER = g++ -o
++COMPILER = g++ -I$(INCL) -c -o
++LINKER = g++ -o
+
+
+ # enumerate sim++ object modules:
+
+- MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
+- MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
+- MAIN_OBJ = $(MAIN_1) $(MAIN_2)
++MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
++MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
++MAIN_OBJ = $(MAIN_1) $(MAIN_2)
+
+- CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
++CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
+
+- VLIST_1 = $(OLB)/vlist.o
+- VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
+- VLIST_OBJ = $(VLIST_1) $(VLIST_2)
++VLIST_1 = $(OLB)/vlist.o
++VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
++VLIST_OBJ = $(VLIST_1) $(VLIST_2)
+
+ # link
+
+diff -urd func/event/examples/qnet/makefile work/simpack/func/event/examples/qnet/makefile
+--- func/event/examples/qnet/makefile Fri Aug 25 01:00:28 1995
++++ work/simpack/func/event/examples/qnet/makefile Mon May 19 15:49:03 1997
+@@ -4,26 +4,26 @@
+ #
+ # makefile for examples/qnet
+
+- PGM = qnet
++PGM = qnet
+
+- INCL = ../../include # where to find sim++ *.h
+- OLB = ../../olb # where to find sim++ *.o
++INCL = ../../include # where to find sim++ *.h
++OLB = ../../olb # where to find sim++ *.o
+
+- COMPILER = g++ -I$(INCL) -c -o
+- LINKER = g++ -o
++COMPILER = g++ -I$(INCL) -c -o
++LINKER = g++ -o
+
+
+ # enumerate sim++ object modules:
+
+- MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
+- MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
+- MAIN_OBJ = $(MAIN_1) $(MAIN_2)
++MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
++MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
++MAIN_OBJ = $(MAIN_1) $(MAIN_2)
+
+- CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
++CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
+
+- VLIST_1 = $(OLB)/vlist.o
+- VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
+- VLIST_OBJ = $(VLIST_1) $(VLIST_2)
++VLIST_1 = $(OLB)/vlist.o
++VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
++VLIST_OBJ = $(VLIST_1) $(VLIST_2)
+
+ # link
+
+diff -urd func/event/examples/route/makefile work/simpack/func/event/examples/route/makefile
+--- func/event/examples/route/makefile Fri Aug 25 01:00:31 1995
++++ work/simpack/func/event/examples/route/makefile Mon May 19 15:49:39 1997
+@@ -4,26 +4,26 @@
+ #
+ # makefile for examples/route
+
+- PGM = route
++PGM = route
+
+- INCL = ../../include # where to find sim++ *.h
+- OLB = ../../olb # where to find sim++ *.o
++INCL = ../../include # where to find sim++ *.h
++OLB = ../../olb # where to find sim++ *.o
+
+- COMPILER = g++ -I$(INCL) -c -o
+- LINKER = g++ -o
++COMPILER = g++ -I$(INCL) -c -o
++LINKER = g++ -o
+
+
+ # enumerate sim++ object modules:
+
+- MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
+- MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
+- MAIN_OBJ = $(MAIN_1) $(MAIN_2)
++MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
++MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
++MAIN_OBJ = $(MAIN_1) $(MAIN_2)
+
+- CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
++CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
+
+- VLIST_1 = $(OLB)/vlist.o
+- VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
+- VLIST_OBJ = $(VLIST_1) $(VLIST_2)
++VLIST_1 = $(OLB)/vlist.o
++VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
++VLIST_OBJ = $(VLIST_1) $(VLIST_2)
+
+ # link
+
+diff -urd func/event/examples/ssq/makefile work/simpack/func/event/examples/ssq/makefile
+--- func/event/examples/ssq/makefile Fri Aug 25 01:00:17 1995
++++ work/simpack/func/event/examples/ssq/makefile Mon May 19 15:50:34 1997
+@@ -4,26 +4,26 @@
+ #
+ # makefile for examples/ssq (formerly q1 in ssq directory)
+
+- PGM = ssq
++PGM = ssq
+
+- INCL = ../../include # where to find sim++ *.h
+- OLB = ../../olb # where to find sim++ *.o
++INCL = ../../include # where to find sim++ *.h
++OLB = ../../olb # where to find sim++ *.o
+
+- COMPILER = g++ -I$(INCL) -c -o
+- LINKER = g++ -o
++COMPILER = g++ -I$(INCL) -c -o
++LINKER = g++ -o
+
+
+ # enumerate sim++ object modules:
+
+- MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
+- MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
+- MAIN_OBJ = $(MAIN_1) $(MAIN_2)
++MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
++MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
++MAIN_OBJ = $(MAIN_1) $(MAIN_2)
+
+- CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
++CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
+
+- VLIST_1 = $(OLB)/vlist.o
+- VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
+- VLIST_OBJ = $(VLIST_1) $(VLIST_2)
++VLIST_1 = $(OLB)/vlist.o
++VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
++VLIST_OBJ = $(VLIST_1) $(VLIST_2)
+
+ # link
+
+diff -urd func/event/examples/tiktok/makefile work/simpack/func/event/examples/tiktok/makefile
+--- func/event/examples/tiktok/makefile Fri Aug 25 01:00:25 1995
++++ work/simpack/func/event/examples/tiktok/makefile Mon May 19 15:51:13 1997
+@@ -4,26 +4,26 @@
+ #
+ # makefile for examples/tiktok (formerly ticktock in clock directory)
+
+- PGM = tiktok
++PGM = tiktok
+
+- INCL = ../../include # where to find sim++ *.h
+- OLB = ../../olb # where to find sim++ *.o
++INCL = ../../include # where to find sim++ *.h
++OLB = ../../olb # where to find sim++ *.o
+
+- COMPILER = g++ -I$(INCL) -c -o
+- LINKER = g++ -o
++COMPILER = g++ -I$(INCL) -c -o
++LINKER = g++ -o
+
+
+ # enumerate sim++ object modules:
+
+- MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
+- MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
+- MAIN_OBJ = $(MAIN_1) $(MAIN_2)
++MAIN_1 = $(OLB)/event.o $(OLB)/facility.o $(OLB)/flist.o $(OLB)/future.o
++MAIN_2 = $(OLB)/service.o $(OLB)/token.o $(OLB)/util.o $(OLB)/estatus.o
++MAIN_OBJ = $(MAIN_1) $(MAIN_2)
+
+- CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
++CAPI_OBJ = $(OLB)/capifac.o $(OLB)/capifut.o $(OLB)/capiran.o
+
+- VLIST_1 = $(OLB)/vlist.o
+- VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
+- VLIST_OBJ = $(VLIST_1) $(VLIST_2)
++VLIST_1 = $(OLB)/vlist.o
++VLIST_2 = $(OLB)/calendar.o $(OLB)/heap.o $(OLB)/linked.o $(OLB)/leftist.o
++VLIST_OBJ = $(VLIST_1) $(VLIST_2)
+
+ # link
+
+diff -urd func/event/examples/translat work/simpack/func/event/examples/translat
+--- func/event/examples/translat Fri Aug 25 01:00:34 1995
++++ work/simpack/func/event/examples/translat Mon May 19 15:57:52 1997
+@@ -7,18 +7,18 @@
+
+ if ( [ "$1" = "rm" -o "$1" = "-rm" ] ) then
+ echo ' '
+- echo 'Removing all translation byproducts from Sim++ program examples ...'
++ echo 'Removing all ./translation byproducts from Sim++ program examples ...'
+ echo ' '
+- (cd cpudisk; translat -rm)
+- (cd block; translat -rm)
+- (cd tiktok; translat -rm)
+- (cd ssq; translat -rm)
+- (cd iterate; translat -rm)
+- (cd airport; translat -rm)
+- (cd logic; translat -rm)
+- (cd network; translat -rm)
+- (cd qnet; translat -rm)
+- (cd route; translat -rm)
++ (cd cpudisk; ./translat -rm)
++ (cd block; ./translat -rm)
++ (cd tiktok; ./translat -rm)
++ (cd ssq; ./translat -rm)
++ (cd iterate; ./translat -rm)
++ (cd airport; ./translat -rm)
++ (cd logic; ./translat -rm)
++ (cd network; ./translat -rm)
++ (cd qnet; ./translat -rm)
++ (cd route; ./translat -rm)
+ echo ' '
+ echo 'Done Removing.'
+ echo ' '
+@@ -29,16 +29,16 @@
+ echo 'Build (version 1 of) ALL Sim++ Program Examples ...'
+ echo ' '
+
+- (cd cpudisk; translat 1)
+- (cd block; translat 1)
+- (cd tiktok; translat 1)
+- (cd ssq; translat 1)
+- (cd iterate; translat 1)
+- (cd logic; translat 1)
+- (cd network; translat 1)
+- (cd qnet; translat 1)
+- (cd route; translat 1)
++ (cd cpudisk; ./translat 1)
++ (cd block; ./translat 1)
++ (cd tiktok; ./translat 1)
++ (cd ssq; ./translat 1)
++ (cd iterate; ./translat 1)
++ (cd logic; ./translat 1)
++ (cd network; ./translat 1)
++ (cd qnet; ./translat 1)
++ (cd route; ./translat 1)
+
+ echo ' '
+-echo 'simpack/func/event/examples/translat is done.'
++echo 'simpack/func/event/examples/./translat is done.'
+ echo ' '
+diff -urd func/event/pkgs/Xsimcode/examples/Makefile work/simpack/func/event/pkgs/Xsimcode/examples/Makefile
+--- func/event/pkgs/Xsimcode/examples/Makefile Fri Aug 25 01:00:46 1995
++++ work/simpack/func/event/pkgs/Xsimcode/examples/Makefile Mon May 19 16:15:10 1997
+@@ -7,10 +7,10 @@
+ # modified 950728 by robert cubert as part of SimPack3 release
+ # including Sim++ version 1.0: see Readme.
+
+- INCL= ../../../../queuing # to find queuing.h
+- SOBJECT= ../../../../queuing/queuing.o
+- COMPILER = cc -I$(INCL) -c -o
+- LINKER = cc -o
++INCL= ../../../../queuing # to find queuing.h
++SOBJECT= ../../../../queuing/queuing.o
++COMPILER = cc -I$(INCL) -c -o
++LINKER = cc -o
+
+ # Do NOT change compiler to gcc! It will create code that compiles and links
+ # but runs incorrectly.
+diff -urd func/event/pkgs/minigpss/gpsource/Makefile work/simpack/func/event/pkgs/minigpss/gpsource/Makefile
+--- func/event/pkgs/minigpss/gpsource/Makefile Fri Aug 25 01:00:54 1995
++++ work/simpack/func/event/pkgs/minigpss/gpsource/Makefile Mon May 19 16:11:42 1997
+@@ -1,5 +1,5 @@
+ QUEUING = ../../../../queuing/queuing.o
+- INCL = ../../../../queuing
++INCL = ../../../../queuing
+
+ gpss: gen main
+ gen: lex.yy.c y.tab.c
+diff -urd func/event/pkgs/minigpss/gpsource/main.c work/simpack/func/event/pkgs/minigpss/gpsource/main.c
+--- func/event/pkgs/minigpss/gpsource/main.c Fri Aug 25 01:00:53 1995
++++ work/simpack/func/event/pkgs/minigpss/gpsource/main.c Mon May 19 16:00:51 1997
+@@ -2,6 +2,9 @@
+ #include "y.tab.c"
+ #include "error.c"
+ #include "codgen.c"
++
++#define random(x,y) random_int(x,y)
++
+ #define Pri 1
+ #define ARRIVE_ 1
+ #define REQUEST_ 2
+diff -urd func/queuing/queuing.c work/simpack/func/queuing/queuing.c
+--- func/queuing/queuing.c Fri Aug 25 01:00:07 1995
++++ work/simpack/func/queuing/queuing.c Mon May 19 16:02:15 1997
+@@ -34,6 +34,9 @@
+ #define UNIXX 0
+ #define TURBOC 0
+
++#define random(x,y) random_int(x,y)
++#define cfree free
++
+ #define NIL 0
+ #define FREE 0
+ #define BUSY 1
+@@ -683,7 +686,7 @@
+ if(current_node == NIL) {
+ printf("PREEMPT: Attempt to preempt a non-existent token\n");
+ printf("Token # %d\n",n);
+- exit();
++ exit(1);
+ } else {
+ temp = current_node->item;
+ if (previous_node == current_node ) {
+@@ -1422,7 +1425,7 @@
+ endwin();
+ #endif
+ printf("\n");
+- exit();
++ exit(0);
+ }
+ } /* end if */
+ } /* end if (trace_flag == ON) */
diff --git a/math/simpack/files/patch-ab b/math/simpack/files/patch-ab
new file mode 100644
index 000000000000..028c17b394a4
--- /dev/null
+++ b/math/simpack/files/patch-ab
@@ -0,0 +1,506 @@
+diff -udr func/slice/sdsmt/do.tcl /usr/local/lib/SimPack/func/slice/sdsmt/do.tcl
+--- func/slice/sdsmt/do.tcl Fri Aug 25 01:01:09 1995
++++ /usr/local/lib/SimPack/func/slice/sdsmt/do.tcl Mon May 19 13:16:58 1997
+@@ -94,16 +94,19 @@
+ # Purpose: redraw objects on the canvas.
+ #-------------------------------------------------------
+ proc redraw_object {w type x y text} {
+- global obj
++ global obj sdsmlib
+
+ switch -exact -- $type {
+ 1 {set oid [$w create rectangle [expr $x-25] [expr $y-10] [expr $x+25]\
+ [expr $y+10] -width 1 ]}
+- 2 {set oid [$w create bitmap $x $y -bitmap @./XBM/rate.bmp ]}
++ 2 {set oid [$w create bitmap $x $y \
++ -bitmap @[file join $sdsmlib XBM rate.bmp] ]}
+ 3 {set oid [$w create oval [expr $x-20] [expr $y-20] [expr $x+20]\
+ [expr $y+20] -width 1 ]}
+- 4 {set oid [$w create bitmap $x $y -bitmap @./XBM/const.bmp]}
+- 5 {set oid [$w create bitmap $x $y -bitmap @./XBM/source.bmp]}
++ 4 {set oid [$w create bitmap $x $y \
++ -bitmap @[file join $sdsmlib XBM const.bmp] ]}
++ 5 {set oid [$w create bitmap $x $y \
++ -bitmap @[file join $sdsmlib XBM source.bmp] ]}
+ }
+ set text_id [show_text $w $type $x $y $text]
+ set obj($oid) [list $oid $type $x $y $text $text_id]
+@@ -116,7 +119,7 @@
+ # Purpose: redraw the links between objects on the canvas.
+ #-------------------------------------------------------
+ proc redraw_link {w type x y sid tid} {
+- global obj
++ global obj sdsmlib
+
+ puts "object #$sid (source) : $obj($sid)"
+ puts "object #$tid (target) : $obj($tid)"
+@@ -142,7 +145,8 @@
+ }
+ } else {
+ set oid [$w create line $sx $sy $x $y $tx $ty -width 1 -arrow last \
+- -smooth true -capstyle projecting -stipple @./bitmaps/grey.5 ]
++ -smooth true -capstyle projecting \
++ -stipple @[file join $sdsmlib bitmaps grey.5] ]
+ }
+ set obj($oid) [list $oid $type $x $y $sid $tid]
+ puts "link object $oid: $obj($oid) loaded"
+diff -udr func/slice/sdsmt/draw.tcl /usr/local/lib/SimPack/func/slice/sdsmt/draw.tcl
+--- func/slice/sdsmt/draw.tcl Fri Aug 25 01:01:09 1995
++++ /usr/local/lib/SimPack/func/slice/sdsmt/draw.tcl Mon May 19 13:16:58 1997
+@@ -26,7 +26,7 @@
+ # Purpose: draw a level node object
+ #-------------------------------------------------------
+ proc draw_level {w x y} {
+- global mode text_data input_data
++ global mode text_data input_data sdsmlib
+
+ set oid [$w create rectangle [expr $x-25] [expr $y-10] [expr $x+25] \
+ [expr $y+10] -width 1 ]
+@@ -84,7 +84,7 @@
+
+ if {$entry_flg == 1} {
+ entry $w.top.e1 -relief sunken -textvariable input_data\
+- -scroll "$w.top.s1 set"
++ -xscrollcommand "$w.top.s1 set"
+ scrollbar $w.top.s1 -relief sunken -orient horiz -command \
+ "$w.top.e1 view"
+ }
+@@ -117,9 +117,9 @@
+ # Purpose: draw a rate node object
+ #-------------------------------------------------------
+ proc draw_rate {w x y} {
+- global mode text_data input_data
++ global mode text_data input_data sdsmlib
+
+- set oid [$w create bitmap $x $y -bitmap @./XBM/rate.bmp ]
++ set oid [$w create bitmap $x $y -bitmap @[file join $sdsmlib XBM rate.bmp] ]
+ get_text_input $mode
+ set text_data $input_data
+ add_object $w $oid $mode $x $y $text_data
+@@ -144,9 +144,9 @@
+ # Purpose: draw an constant node object
+ #-------------------------------------------------------
+ proc draw_const {w x y} {
+- global mode text_data input_data
++ global mode text_data input_data sdsmlib
+
+- set oid [$w create bitmap $x $y -bitmap @./XBM/const.bmp]
++ set oid [$w create bitmap $x $y -bitmap @[file join $sdsmlib XBM const.bmp] ]
+ get_text_input $mode
+ set text_data $input_data
+ add_object $w $oid $mode $x $y $text_data
+@@ -157,9 +157,9 @@
+ # Purpose: draw a source/sink node object
+ #-------------------------------------------------------
+ proc draw_source {w x y} {
+- global mode text_data input_data
++ global mode text_data input_data sdsmlib
+
+- set oid [$w create bitmap $x $y -bitmap @./XBM/source.bmp]
++ set oid [$w create bitmap $x $y -bitmap @[file join $sdsmlib XBM source.bmp] ]
+ # get_text_input $mode
+ # set text_data $input_data
+ set text_data ""
+@@ -229,6 +229,7 @@
+ proc moving {w x y} {
+ global oldx oldy
+ global obj mode selected_id new_link_id link_flg
++ global sdsmlib
+
+ if {$selected_id != -1} {
+ # moving an object
+@@ -263,7 +264,8 @@
+ }
+ } else {
+ set s_id [$w create line $sx $sy $x $y $tx $ty -width 1 -arrow last \
+- -smooth true -capstyle projecting -stipple @./bitmaps/grey.5 ]
++ -smooth true -capstyle projecting \
++ -stipple @[file join $sdsmlib bitmaps grey.5 ] ]
+ }
+ set new_link_id $s_id
+ $w addtag selected withtag $s_id
+@@ -284,7 +286,8 @@
+ set s_id [$w create line $oldx $oldy $x $y -width 1 -arrow last]
+ } else {
+ set s_id [$w create line $oldx $oldy $x $y -width 1 -arrow last \
+- -capstyle projecting -stipple @./bitmaps/grey.5 ]
++ -capstyle projecting \
++ -stipple @[file join $sdsmlib bitmaps grey.5] ]
+ }
+ $w addtag selected withtag $s_id
+ }
+@@ -297,6 +300,7 @@
+ #-------------------------------------------------------
+ proc move_end {w x y} {
+ global selected_id obj mode oldx oldy new_link_id link_flg
++ global sdsmlib
+
+ if {$selected_id != -1} {
+ puts "move end"
+@@ -348,7 +352,8 @@
+ }
+ } else {
+ set oid [$w create line $oldx $oldy $x $y -width 1 -arrow last \
+- -capstyle projecting -stipple @./bitmaps/grey.5 ]
++ -capstyle projecting \
++ -stipple @[file join $sdsmlib bitmaps grey.5] ]
+ }
+ add_link $w $oid $mode [expr ($oldx+$x)/2] [expr ($oldy+$y)/2] \
+ $selected_id $t_id
+@@ -499,7 +504,7 @@
+ # links are moved
+ #-------------------------------------------------------
+ proc move_asso_links {w} {
+- global selected_id obj
++ global selected_id obj sdsmlib
+
+ $w delete label
+ foreach i [array names obj] {
+@@ -535,7 +540,8 @@
+ }
+ } else {
+ set s_id [$w create line $sx $sy $x $y $tx $ty -width 1 -arrow last \
+- -smooth true -capstyle projecting -stipple @./bitmaps/grey.5 ]
++ -smooth true -capstyle projecting \
++ -stipple @[file join $sdsmlib bitmaps grey.5] ]
+ }
+ $w addtag object withtag $s_id
+ change_link_id $i $s_id
+@@ -602,7 +608,7 @@
+ # the user's input
+ #-------------------------------------------------------
+ proc show_grid_selection {{w .grid}} {
+- global grid_mode
++ global grid_mode sdsmlib
+
+ catch {destroy $w}
+ toplevel $w -class Dialog
+@@ -617,13 +623,17 @@
+ -font -Adobe-times-medium-r-normal--*-180*
+ pack $w.top.msg
+
+- button $w.bot.s0 -bitmap @./XBM/grid0.bmp -command {destroy .grid
++ button $w.bot.s0 -bitmap @[file join $sdsmlib XBM grid0.bmp] \
++ -command {destroy .grid
+ set grid_mode 0}
+- button $w.bot.s1 -bitmap @./XBM/grid1.bmp -command {destroy .grid
++ button $w.bot.s1 -bitmap @[file join $sdsmlib XBM grid1.bmp] \
++ -command {destroy .grid
+ set grid_mode 1}
+- button $w.bot.s2 -bitmap @./XBM/grid2.bmp -command {destroy .grid
++ button $w.bot.s2 -bitmap @[file join $sdsmlib XBM grid2.bmp] \
++ -command {destroy .grid
+ set grid_mode 2}
+- button $w.bot.sc -bitmap @./XBM/cancel.bmp -command {destroy .grid
++ button $w.bot.sc -bitmap @[file join $sdsmlib XBM cancel.bmp] \
++ -command {destroy .grid
+ return -1}
+ pack $w.bot.s0 $w.bot.s1 $w.bot.s2 $w.bot.sc -side left
+
+@@ -634,18 +644,21 @@
+ # Purpose: change grid mode
+ #-------------------------------------------------------
+ proc change_grid_mode {} {
+- global grid_mode
++ global grid_mode sdsmlib
+
+ catch {destroy .plate.left.b14}
+ puts "grid_mode = $grid_mode"
+ switch -exact -- $grid_mode {
+- 0 {button .plate.left.b14 -bitmap @./XBM/grid0.xbm -padx 16 \
++ 0 {button .plate.left.b14 \
++ -bitmap @[file join $sdsmlib XBM grid0.xbm] -padx 16 \
+ -command "grid_select"
+ }
+- 1 {button .plate.left.b14 -bitmap @./XBM/grid1.xbm -padx 16 \
++ 1 {button .plate.left.b14 \
++ -bitmap @[file join $sdsmlib XBM grid1.xbm] -padx 16 \
+ -command "grid_select"
+ }
+- 2 {button .plate.left.b14 -bitmap @./XBM/grid2.xbm -padx 16 \
++ 2 {button .plate.left.b14 \
++ -bitmap @[file join $sdsmlib XBM grid2.xbm] -padx 16 \
+ -command "grid_select"
+ }
+ }
+@@ -691,6 +704,7 @@
+ # Purpose: show grid on the canvas
+ #-------------------------------------------------------
+ proc show_grid {mode {w .plate.right.board}} {
++ global sdsmlib
+ set max_x 1417
+ set max_y 1417
+ set dp 10
+@@ -704,12 +718,12 @@
+ }
+ for {set x 0} {$x <= $max_x} {set x [expr $x+$step]} {
+ set oid [$w create line $x 0 $x $max_y -width 1 \
+- -stipple @./bitmaps/grey.05 ]
++ -stipple @[file join $sdsmlib bitmaps grey.05] ]
+ $w addtag grid_tag withtag $oid
+ }
+ for {set y 0} {$y <= $max_y} {set y [expr $y+$step]} {
+ set oid [$w create line 0 $y $max_x $y -width 1 \
+- -stipple @./bitmaps/grey.05 ]
++ -stipple @[file join $sdsmlib bitmaps grey.05] ]
+ $w addtag grid_tag withtag $oid
+ }
+ }
+diff -udr func/slice/sdsmt/equ.tcl /usr/local/lib/SimPack/func/slice/sdsmt/equ.tcl
+--- func/slice/sdsmt/equ.tcl Fri Aug 25 01:01:10 1995
++++ /usr/local/lib/SimPack/func/slice/sdsmt/equ.tcl Mon May 19 13:16:58 1997
+@@ -257,13 +257,13 @@
+ }
+
+
+- if {[tk colormodel $w] == "color"} {
++# if {[tk colormodel $w] == "color"} {
+ set bold "-foreground red"
+ set normal "-foreground {}"
+- } else {
+- set bold "-foreground white -background black"
+- set normal "-foreground {} -background {}"
+- }
++# } else {
++# set bold "-foreground white -background black"
++# set normal "-foreground {} -background {}"
++# }
+
+ if {$complete != 1} {
+ $w.t1.b insert 0.0 { Based on the flow graph, the following\
+@@ -891,3 +891,4 @@
+ }
+ return 1
+ }
++
+diff -udr func/slice/sdsmt/file.tcl /usr/local/lib/SimPack/func/slice/sdsmt/file.tcl
+--- func/slice/sdsmt/file.tcl Fri Aug 25 01:01:10 1995
++++ /usr/local/lib/SimPack/func/slice/sdsmt/file.tcl Mon May 19 13:16:58 1997
+@@ -464,10 +464,10 @@
+ proc FSBoxBindSelectOne { fsBoxW fsBoxY} {
+
+ set fsBoxNearest [$fsBoxW nearest $fsBoxY]
+- if {$fsBoxNearest >= 0} {
+- $fsBoxW select from $fsBoxNearest
+- $fsBoxW select to $fsBoxNearest
+- }
++# if {$fsBoxNearest >= 0} {
++# $fsBoxW select from $fsBoxNearest
++# $fsBoxW select to $fsBoxNearest
++# }
+ }
+
+
+diff -udr func/slice/sdsmt/help.tcl /usr/local/lib/SimPack/func/slice/sdsmt/help.tcl
+--- func/slice/sdsmt/help.tcl Fri Aug 25 01:01:02 1995
++++ /usr/local/lib/SimPack/func/slice/sdsmt/help.tcl Mon May 19 13:16:58 1997
+@@ -15,7 +15,7 @@
+ $w.t tag configure bold -font -Adobe-Courier-Bold-O-Normal-*-120-*
+ $w.t tag configure big -font -Adobe-Courier-Bold-R-Normal-*-140-*
+ $w.t tag configure verybig -font -Adobe-Helvetica-Bold-R-Normal-*-240-*
+- if {[tk colormodel $w] == "color"} {
++# if {[tk colormodel $w] == "color"} {
+ $w.t tag configure color1 -background #eed5b7
+ $w.t tag configure color2 -foreground red
+ $w.t tag configure color3 -foreground blue
+@@ -23,14 +23,14 @@
+ -borderwidth 1
+ $w.t tag configure sunken -background #eed5b7 -relief sunken \
+ -borderwidth 1
+- } else {
+- $w.t tag configure color1 -background black -foreground white
+- $w.t tag configure color2 -background black -foreground white
+- $w.t tag configure raised -background white -relief raised \
+- -borderwidth 1
+- $w.t tag configure sunken -background white -relief sunken \
+- -borderwidth 1
+- }
++# } else {
++# $w.t tag configure color1 -background black -foreground white
++# $w.t tag configure color2 -background black -foreground white
++# $w.t tag configure raised -background white -relief raised \
++# -borderwidth 1
++# $w.t tag configure sunken -background white -relief sunken \
++# -borderwidth 1
++# }
+ $w.t tag configure bgstipple -background black -borderwidth 0 \
+ -bgstipple gray25
+ $w.t tag configure fgstipple -fgstipple gray50
+@@ -140,7 +140,7 @@
+ $w1.t tag configure bold -font -Adobe-Courier-Bold-O-Normal-*-120-*
+ $w1.t tag configure big -font -Adobe-Courier-Bold-R-Normal-*-140-*
+ $w1.t tag configure verybig -font -Adobe-Helvetica-Bold-R-Normal-*-240-*
+- if {[tk colormodel $w1] == "color"} {
++# if {[tk colormodel $w1] == "color"} {
+ $w1.t tag configure color1 -background #eed5b7
+ $w1.t tag configure color2 -foreground red
+ $w1.t tag configure color3 -foreground blue
+@@ -148,14 +148,14 @@
+ -borderwidth 1
+ $w1.t tag configure sunken -background #eed5b7 -relief sunken \
+ -borderwidth 1
+- } else {
+- $w1.t tag configure color1 -background black -foreground white
+- $w1.t tag configure color2 -background black -foreground white
+- $w1.t tag configure raised -background white -relief raised \
+- -borderwidth 1
+- $w1.t tag configure sunken -background white -relief sunken \
+- -borderwidth 1
+- }
++# } else {
++# $w1.t tag configure color1 -background black -foreground white
++# $w1.t tag configure color2 -background black -foreground white
++# $w1.t tag configure raised -background white -relief raised \
++# -borderwidth 1
++# $w1.t tag configure sunken -background white -relief sunken \
++# -borderwidth 1
++# }
+ $w1.t tag configure bgstipple -background black -borderwidth 0 \
+ -bgstipple gray25
+ $w1.t tag configure fgstipple -fgstipple gray50
+@@ -326,21 +326,21 @@
+ $w.t tag configure bold -font -Adobe-Courier-Bold-O-Normal-*-120-*
+ $w.t tag configure big -font -Adobe-Courier-Bold-R-Normal-*-140-*
+ $w.t tag configure verybig -font -Adobe-Helvetica-Bold-R-Normal-*-240-*
+- if {[tk colormodel $w] == "color"} {
++# if {[tk colormodel $w] == "color"} {
+ $w.t tag configure color1 -background #eed5b7
+ $w.t tag configure color2 -foreground red
+ $w.t tag configure raised -background #eed5b7 -relief raised \
+ -borderwidth 1
+ $w.t tag configure sunken -background #eed5b7 -relief sunken \
+ -borderwidth 1
+- } else {
+- $w.t tag configure color1 -background black -foreground white
+- $w.t tag configure color2 -background black -foreground white
+- $w.t tag configure raised -background white -relief raised \
+- -borderwidth 1
+- $w.t tag configure sunken -background white -relief sunken \
+- -borderwidth 1
+- }
++# } else {
++# $w.t tag configure color1 -background black -foreground white
++# $w.t tag configure color2 -background black -foreground white
++# $w.t tag configure raised -background white -relief raised \
++# -borderwidth 1
++# $w.t tag configure sunken -background white -relief sunken \
++# -borderwidth 1
++# }
+ $w.t tag configure bgstipple -background black -borderwidth 0 \
+ -bgstipple gray25
+ $w.t tag configure fgstipple -fgstipple gray50
+@@ -414,7 +414,7 @@
+ $w1.t tag configure bold -font -Adobe-Courier-Bold-O-Normal-*-120-*
+ $w1.t tag configure big -font -Adobe-Courier-Bold-R-Normal-*-140-*
+ $w1.t tag configure verybig -font -Adobe-Helvetica-Bold-R-Normal-*-240-*
+- if {[tk colormodel $w1] == "color"} {
++# if {[tk colormodel $w1] == "color"} {
+ $w1.t tag configure color1 -background #eed5b7
+ $w1.t tag configure color2 -foreground red
+ $w1.t tag configure color3 -foreground blue
+@@ -422,14 +422,14 @@
+ -borderwidth 1
+ $w1.t tag configure sunken -background #eed5b7 -relief sunken \
+ -borderwidth 1
+- } else {
+- $w1.t tag configure color1 -background black -foreground white
+- $w1.t tag configure color2 -background black -foreground white
+- $w1.t tag configure raised -background white -relief raised \
+- -borderwidth 1
+- $w1.t tag configure sunken -background white -relief sunken \
+- -borderwidth 1
+- }
++# } else {
++# $w1.t tag configure color1 -background black -foreground white
++# $w1.t tag configure color2 -background black -foreground white
++# $w1.t tag configure raised -background white -relief raised \
++# -borderwidth 1
++# $w1.t tag configure sunken -background white -relief sunken \
++# -borderwidth 1
++# }
+ $w1.t tag configure bgstipple -background black -borderwidth 0 \
+ -bgstipple gray25
+ $w1.t tag configure fgstipple -fgstipple gray50
+@@ -508,6 +508,9 @@
+ bind $w1 <Any-Enter> "focus $w1.t"
+
+
++}
++
++proc help_about {} {
+ }
+
+ proc insertWithTags {w text args} {
+diff -udr func/slice/sdsmt/sdsmt /usr/local/lib/SimPack/func/slice/sdsmt/sdsmt
+--- func/slice/sdsmt/sdsmt Fri Aug 25 01:01:04 1995
++++ /usr/local/lib/SimPack/func/slice/sdsmt/sdsmt Mon May 19 13:16:58 1997
+@@ -12,7 +12,9 @@
+ #
+ #=========================================================================
+
+-set auto_path "./ $auto_path"
++global sdsmlib
++set sdsmlib $env(SDSMTLIB)
++set auto_path "$sdsmlib $auto_path"
+ wm title . "System Dynamics Simulation Modeling Tools"
+ wm geometry . +50+50
+
+@@ -98,30 +100,34 @@
+ frame .plate.right
+ pack .plate.left .plate.right -side left
+
+-radiobutton .plate.left.b1 -bitmap @./XBM/level.xbm \
++radiobutton .plate.left.b1 -bitmap @[file join $sdsmlib XBM level.xbm] \
+ -variable letters -command "set_level $c"
+-radiobutton .plate.left.b2 -bitmap @./XBM/rate.xbm \
++radiobutton .plate.left.b2 -bitmap @[file join $sdsmlib XBM rate.xbm] \
+ -variable letters -command "set_rate $c"
+-radiobutton .plate.left.b3 -bitmap @./XBM/aux.xbm \
++radiobutton .plate.left.b3 -bitmap @[file join $sdsmlib XBM aux.xbm] \
+ -variable letters -command "set_aux $c"
+-radiobutton .plate.left.b4 -bitmap @./XBM/const.xbm \
++radiobutton .plate.left.b4 -bitmap @[file join $sdsmlib XBM const.xbm] \
+ -variable letters -command "set_const $c"
+-radiobutton .plate.left.b5 -bitmap @./XBM/source.xbm \
++radiobutton .plate.left.b5 -bitmap @[file join $sdsmlib XBM source.xbm] \
+ -variable letters -command "set_source $c"
+-radiobutton .plate.left.b6 -bitmap @./XBM/flow.xbm \
++radiobutton .plate.left.b6 -bitmap @[file join $sdsmlib XBM flow.xbm] \
+ -variable letters -command "set_flow $c"
+-radiobutton .plate.left.b7 -bitmap @./XBM/celink.xbm \
++radiobutton .plate.left.b7 -bitmap @[file join $sdsmlib XBM celink.xbm] \
+ -variable letters -command "set_celink $c"
+-radiobutton .plate.left.b8 -bitmap @./XBM/move.xbm \
++radiobutton .plate.left.b8 -bitmap @[file join $sdsmlib XBM move.xbm] \
+ -variable letters -command "set_move $c"
+-radiobutton .plate.left.b9 -bitmap @./XBM/delete.xbm \
++radiobutton .plate.left.b9 -bitmap @[file join $sdsmlib XBM delete.xbm] \
+ -variable letters -command "set_delete $c"
+-radiobutton .plate.left.b10 -bitmap @./XBM/edit.xbm \
++radiobutton .plate.left.b10 -bitmap @[file join $sdsmlib XBM edit.xbm] \
+ -variable letters -command "set_edit $c"
+-button .plate.left.b11 -bitmap @./XBM/undo.xbm -padx 16 -command "puts 11"
+-button .plate.left.b12 -bitmap @./XBM/equ.xbm -padx 16 -command "equ_generation"
+-button .plate.left.b13 -bitmap @./XBM/exec.xbm -padx 16 -command "equ_execution"
+-button .plate.left.b14 -bitmap @./XBM/grid0.xbm -padx 16 -command "grid_select"
++button .plate.left.b11 -bitmap @[file join $sdsmlib XBM/undo.xbm] \
++ -padx 16 -command "puts 11"
++button .plate.left.b12 -bitmap @[file join $sdsmlib XBM equ.xbm] \
++ -padx 16 -command "equ_generation"
++button .plate.left.b13 -bitmap @[file join $sdsmlib XBM exec.xbm] \
++ -padx 16 -command "equ_execution"
++button .plate.left.b14 -bitmap @[file join $sdsmlib XBM grid0.xbm] \
++ -padx 16 -command "grid_select"
+
+ pack .plate.left.b1 .plate.left.b2 .plate.left.b3 .plate.left.b4 \
+ .plate.left.b5 .plate.left.b6 .plate.left.b7 .plate.left.b8 \
+@@ -130,7 +136,8 @@
+
+ canvas .plate.right.board -scrollregion {0c 0c 40c 40c} \
+ -relief raised -width 800 -height 500 \
+- -xscroll ".plate.right.hscroll set" -yscroll ".plate.right.vscroll set"
++ -xscrollcommand ".plate.right.hscroll set" \
++ -yscrollcommand ".plate.right.vscroll set"
+ scrollbar .plate.right.vscroll -relief sunken \
+ -command ".plate.right.board yview"
+ scrollbar .plate.right.hscroll -orient horiz -relief sunken \
diff --git a/math/simpack/files/patch-ac b/math/simpack/files/patch-ac
new file mode 100644
index 000000000000..44c39508b1ab
--- /dev/null
+++ b/math/simpack/files/patch-ac
@@ -0,0 +1,142 @@
+diff -udr simpack/Ask ../simpack.ac/Ask
+--- Ask Fri Aug 25 00:59:55 1995
++++ ../simpack.ac/Ask Sun Jun 8 02:07:36 1997
+@@ -1,29 +1,11 @@
+-
+-while ( [ "$1" != "" ] ) do
+-
+- echo ' '
+- echo "About to show you the $1"
+- echo 'Your options are:'
+- echo ' '
+- echo " A = I have seen $1 and accept its terms and conditions"
+- echo " R = I reject $1"
+- echo " S = Show me $1 and ask me again after i have read it"
+- read ansa
+-
+- if ( [ "$ansa" = "a" -o "$ansa" = "A" ] ) then
+- echo 'We can proceed with installation of SimPack3'
+- exit 0
+- fi
+-
+- if ( [ "$ansa" = "r" -o "$ansa" = "R" ] ) then
+- echo 'You cannot use SimPack3'
+- echo 'Have a nice day'
+- exit 1
+- fi
+-
+- if ( [ "$ansa" = "s" -o "$ansa" = "S" ] ) then
+- echo "Here is $1:"
+- more $1
+- fi
+-
+- done # end while
++#!/bin/sh
++if [ "$BATCH" != "" ]
++then
++ exit 0
++fi
++if [ "$PACKAGE_BUILDING" != "" ]
++then
++ exit 0
++fi
++cat $1
++exit 0
+diff -udr func/event/Ask ../simpack.ac/func/event/Ask
+--- func/event/Ask Fri Aug 25 01:00:59 1995
++++ ../simpack.ac/func/event/Ask Sun Jun 8 01:40:54 1997
+@@ -1,29 +1,11 @@
+-
+-while ( [ "$1" != "" ] ) do
+-
+- echo "About to show you the $1"
+- echo 'Your options are:'
+- echo ' '
+- echo " A = I have seen $1 and accept its terms and conditions"
+- echo " R = I reject $1"
+- echo " S = Show me $1 and ask me again after i have read it"
+- read ansa
+-
+- if ( [ "$ansa" = "a" -o "$ansa" = "A" ] ) then
+- echo 'We can proceed with installation of SimPack3'
+- exit 0
+- fi
+-
+- if ( [ "$ansa" = "r" -o "$ansa" = "R" ] ) then
+- echo 'You cannot use SimPack3'
+- echo 'You cannot use SimPack3' > REJECT
+- echo 'Have a nice day'
+- exit 1
+- fi
+-
+- if ( [ "$ansa" = "s" -o "$ansa" = "S" ] ) then
+- echo "Here is $1:"
+- more $1
+- fi
+-
+- done # end while
++#!/bin/sh
++if [ "$BATCH" = "" ]
++then
++ exit 0
++fi
++if [ "$PACKAGE_BUILDING" = "" ]
++then
++ exit 0
++fi
++cat $1
++exit 0
+diff -udr func/event/Make_all ../simpack.ac/func/event/Make_all
+--- func/event/Make_all Sun Jun 8 01:30:37 1997
++++ ../simpack.ac/func/event/Make_all Sun Jun 8 01:40:27 1997
+@@ -15,8 +15,9 @@
+ exit 1
+ fi
+
+-echo -n 'Create Sim++ Object Library [y/n]?'
+-read ansa
++#echo -n 'Create Sim++ Object Library [y/n]?'
++#read ansa
++ansa=y
+ echo ' '
+ if ( [ "$ansa" = "y" ] ) then
+ echo 'Creating Sim++ Object Library ...'
+@@ -24,8 +25,9 @@
+ echo 'Done.'
+ fi
+
+-echo -n 'Create Sim++ Example Code Executables [y/n] ?'
+-read ansa
++#echo -n 'Create Sim++ Example Code Executables [y/n] ?'
++#read ansa
++ansa=y
+ echo ' '
+ if ( [ "$ansa" = "y" ] ) then
+ echo 'Creating Sim++ Example Code Executables ...'
+@@ -33,8 +35,9 @@
+ echo 'Done.'
+ fi
+
+-echo -n 'Create SimPack Event Model Packages [y/n]?'
+-read ansa
++#echo -n 'Create SimPack Event Model Packages [y/n]?'
++#read ansa
++ansa=y
+ echo ' '
+ if ( [ "$ansa" = "y" ] ) then
+ echo 'Creating SimPack Functional Model Packages ...'
+diff -udr func/slice/Make_all ../simpack.ac/func/slice/Make_all
+--- func/slice/Make_all Fri Aug 25 01:01:23 1995
++++ ../simpack.ac/func/slice/Make_all Sun Jun 8 01:47:35 1997
+@@ -5,8 +5,9 @@
+ echo 'which is simpack.'
+ echo ' '
+
+-echo -n 'Create SimPack Time-Slice Functional Model Packages [y/n]?'
+-read ansa
++#echo -n 'Create SimPack Time-Slice Functional Model Packages [y/n]?'
++#read ansa
++ansa=y
+ echo ' '
+ if ( [ "$ansa" = "y" ] ) then
+ echo 'Creating SimPack Time-Slice Functional Model Packages ...'
diff --git a/math/simpack/pkg-comment b/math/simpack/pkg-comment
new file mode 100644
index 000000000000..5b27a6f040c5
--- /dev/null
+++ b/math/simpack/pkg-comment
@@ -0,0 +1 @@
+SimPack & Sim++ libraries and tools for simulatiom modelling
diff --git a/math/simpack/pkg-descr b/math/simpack/pkg-descr
new file mode 100644
index 000000000000..0ce0cba4fc9e
--- /dev/null
+++ b/math/simpack/pkg-descr
@@ -0,0 +1,17 @@
+It is huge set of libraries and tools for simulation modelling.
+
+Sim++ is an object-oriented C++ library, compatible with SimPack
+queuing is C library, simular to simpack and SMPL
+Xsimcode is graphical generator of SimPack models
+sdsmt is graphical tool for slice modelling
+fsa is finite state automaton simulator
+markov is marcov chain simulator
+petri is petri net simulator
+
+An WWW-page and mailing list devoted to SimPack exists.
+
+SimPack is copyrighted by GPL license, version 2 or later. We recommend
+you copy this License from where you can find to /usr/local/share/SimPack.
+
+For more detailed information about SimPack, please refer to
+/usr/local/share/SimPack/README.
diff --git a/math/simpack/pkg-plist b/math/simpack/pkg-plist
new file mode 100644
index 000000000000..33a3e4350e8d
--- /dev/null
+++ b/math/simpack/pkg-plist
@@ -0,0 +1,398 @@
+bin/fsa
+bin/markov
+bin/petri
+bin/Xsimcode
+bin/gpss
+bin/sdsmt
+bin/deq
+include/Sim++/capi.h
+include/Sim++/facility.h
+include/Sim++/future.h
+include/Sim++/token.h
+include/Sim++/event.h
+include/Sim++/flist.h
+include/Sim++/queuing.h
+include/Sim++/vlist.h
+include/queuing/queuing.h
+include/queuing/mytypes.h
+lib/Sim++/olb/calendar.o
+lib/Sim++/olb/capifac.o
+lib/Sim++/olb/capifut.o
+lib/Sim++/olb/capiran.o
+lib/Sim++/olb/estatus.o
+lib/Sim++/olb/event.o
+lib/Sim++/olb/facility.o
+lib/Sim++/olb/flist.o
+lib/Sim++/olb/future.o
+lib/Sim++/olb/heap.o
+lib/Sim++/olb/leftist.o
+lib/Sim++/olb/linked.o
+lib/Sim++/olb/service.o
+lib/Sim++/olb/token.o
+lib/Sim++/olb/util.o
+lib/Sim++/olb/vlist.o
+lib/libsim++.a
+lib/libsim++.so.1.0
+lib/libqueuing.a
+lib/libqueuing.so.1.0
+@exec /sbin/ldconfig -m %D/lib
+lib/SimPack/constraint/differential/deq/deq
+lib/SimPack/constraint/differential/deq/order1
+lib/SimPack/constraint/differential/deq/contsim
+lib/SimPack/func/slice/sdsmt/Xdefaults
+lib/SimPack/func/slice/sdsmt/display1.tcl
+lib/SimPack/func/slice/sdsmt/do.tcl
+lib/SimPack/func/slice/sdsmt/draw.tcl
+lib/SimPack/func/slice/sdsmt/equ.tcl
+lib/SimPack/func/slice/sdsmt/file.tcl
+lib/SimPack/func/slice/sdsmt/help.tcl
+lib/SimPack/func/slice/sdsmt/plot.tcl
+lib/SimPack/func/slice/sdsmt/sdsmt
+lib/SimPack/func/slice/sdsmt/set.tcl
+lib/SimPack/func/slice/sdsmt/tclIndex
+lib/SimPack/func/slice/sdsmt/XBM/author.bmp
+lib/SimPack/func/slice/sdsmt/XBM/aux.xbm
+lib/SimPack/func/slice/sdsmt/XBM/cancel.bmp
+lib/SimPack/func/slice/sdsmt/XBM/celink.xbm
+lib/SimPack/func/slice/sdsmt/XBM/const.bmp
+lib/SimPack/func/slice/sdsmt/XBM/const.xbm
+lib/SimPack/func/slice/sdsmt/XBM/dash.bmp
+lib/SimPack/func/slice/sdsmt/XBM/delete.xbm
+lib/SimPack/func/slice/sdsmt/XBM/edit.xbm
+lib/SimPack/func/slice/sdsmt/XBM/equ.xbm
+lib/SimPack/func/slice/sdsmt/XBM/exec.xbm
+lib/SimPack/func/slice/sdsmt/XBM/flow.xbm
+lib/SimPack/func/slice/sdsmt/XBM/grid.bmp
+lib/SimPack/func/slice/sdsmt/XBM/grid.fig
+lib/SimPack/func/slice/sdsmt/XBM/grid0.bmp
+lib/SimPack/func/slice/sdsmt/XBM/grid0.xbm
+lib/SimPack/func/slice/sdsmt/XBM/grid1.bmp
+lib/SimPack/func/slice/sdsmt/XBM/grid1.xbm
+lib/SimPack/func/slice/sdsmt/XBM/grid2.bmp
+lib/SimPack/func/slice/sdsmt/XBM/grid2.xbm
+lib/SimPack/func/slice/sdsmt/XBM/gridm.xbm
+lib/SimPack/func/slice/sdsmt/XBM/icon.fig
+lib/SimPack/func/slice/sdsmt/XBM/level.xbm
+lib/SimPack/func/slice/sdsmt/XBM/move.xbm
+lib/SimPack/func/slice/sdsmt/XBM/rate.bmp
+lib/SimPack/func/slice/sdsmt/XBM/rate.xbm
+lib/SimPack/func/slice/sdsmt/XBM/source.bmp
+lib/SimPack/func/slice/sdsmt/XBM/source.xbm
+lib/SimPack/func/slice/sdsmt/XBM/undo.xbm
+lib/SimPack/func/slice/sdsmt/bitmaps/delete.eps
+lib/SimPack/func/slice/sdsmt/bitmaps/grey.05
+lib/SimPack/func/slice/sdsmt/bitmaps/grey.10
+lib/SimPack/func/slice/sdsmt/bitmaps/grey.25
+lib/SimPack/func/slice/sdsmt/bitmaps/grey.5
+@unexec rm -r %D/lib/SimPack
+share/SimPack/constraint/delaydiff/haem.time-20.ps
+share/SimPack/constraint/delaydiff/Makefile
+share/SimPack/constraint/delaydiff/delaydiff.c
+share/SimPack/constraint/difference/Makefile
+share/SimPack/constraint/difference/README
+share/SimPack/constraint/difference/bifurc.c
+share/SimPack/constraint/difference/log1a.c
+share/SimPack/constraint/difference/log1b.c
+share/SimPack/constraint/difference/log2.c
+share/SimPack/constraint/differential/deq/README
+share/SimPack/constraint/differential/deq/duff.in
+share/SimPack/constraint/differential/deq/lorenz.in
+share/SimPack/constraint/differential/deq/deq.doc
+share/SimPack/constraint/differential/integrate/README
+share/SimPack/constraint/differential/integrate/predprey1.ps
+share/SimPack/constraint/differential/integrate/predprey2.ps
+share/SimPack/constraint/differential/integrate/predprey3.ps
+share/SimPack/constraint/differential/integrate/silnikov.ps
+share/SimPack/constraint/differential/integrate/conte.c
+share/SimPack/constraint/differential/integrate/contrk.c
+share/SimPack/constraint/differential/integrate/lorenz.c
+share/SimPack/constraint/differential/integrate/lotka.c
+share/SimPack/constraint/differential/integrate/silnikov.c
+share/SimPack/constraint/differential/integrate/vibration.c
+share/SimPack/func/event/doc/simpp.ps
+share/SimPack/func/event/examples/airport/airport1
+share/SimPack/func/event/examples/airport/airport2
+share/SimPack/func/event/examples/airport/readme
+share/SimPack/func/event/examples/airport/translat
+share/SimPack/func/event/examples/airport/makefile
+share/SimPack/func/event/examples/block/readme
+share/SimPack/func/event/examples/block/block0
+share/SimPack/func/event/examples/block/block1
+share/SimPack/func/event/examples/block/block2
+share/SimPack/func/event/examples/block/block3
+share/SimPack/func/event/examples/block/block4
+share/SimPack/func/event/examples/block/output.v0u
+share/SimPack/func/event/examples/block/output.v1d
+share/SimPack/func/event/examples/block/output.v1u
+share/SimPack/func/event/examples/block/output.v2d
+share/SimPack/func/event/examples/block/output.v2u
+share/SimPack/func/event/examples/block/output.v3d
+share/SimPack/func/event/examples/block/output.v3u
+share/SimPack/func/event/examples/block/output.v4d
+share/SimPack/func/event/examples/block/output.v4u
+share/SimPack/func/event/examples/block/translat
+share/SimPack/func/event/examples/block/makefile
+share/SimPack/func/event/examples/cpudisk/readme
+share/SimPack/func/event/examples/cpudisk/cpudisk0
+share/SimPack/func/event/examples/cpudisk/cpudisk1
+share/SimPack/func/event/examples/cpudisk/cpudisk2
+share/SimPack/func/event/examples/cpudisk/cpudisk3
+share/SimPack/func/event/examples/cpudisk/cpudisk4
+share/SimPack/func/event/examples/cpudisk/cpudisk5
+share/SimPack/func/event/examples/cpudisk/cpudisk6
+share/SimPack/func/event/examples/cpudisk/output.v0u
+share/SimPack/func/event/examples/cpudisk/output.v1d
+share/SimPack/func/event/examples/cpudisk/output.v1u
+share/SimPack/func/event/examples/cpudisk/output.v2d
+share/SimPack/func/event/examples/cpudisk/output.v2u
+share/SimPack/func/event/examples/cpudisk/output.v3d
+share/SimPack/func/event/examples/cpudisk/output.v3u
+share/SimPack/func/event/examples/cpudisk/output.v4d
+share/SimPack/func/event/examples/cpudisk/output.v4u
+share/SimPack/func/event/examples/cpudisk/output.v5d
+share/SimPack/func/event/examples/cpudisk/output.v5u
+share/SimPack/func/event/examples/cpudisk/output.v6d
+share/SimPack/func/event/examples/cpudisk/output.v6u
+share/SimPack/func/event/examples/cpudisk/translat
+share/SimPack/func/event/examples/cpudisk/makefile
+share/SimPack/func/event/examples/iterate/iterate1
+share/SimPack/func/event/examples/iterate/iterate2
+share/SimPack/func/event/examples/iterate/makefile
+share/SimPack/func/event/examples/iterate/output.v1u
+share/SimPack/func/event/examples/iterate/output.v2u
+share/SimPack/func/event/examples/iterate/readme
+share/SimPack/func/event/examples/iterate/translat
+share/SimPack/func/event/examples/logic/andor.dat
+share/SimPack/func/event/examples/logic/andor.out
+share/SimPack/func/event/examples/logic/inv.dat
+share/SimPack/func/event/examples/logic/inv.out
+share/SimPack/func/event/examples/logic/logic
+share/SimPack/func/event/examples/logic/logic.C
+share/SimPack/func/event/examples/logic/logic0
+share/SimPack/func/event/examples/logic/logic1
+share/SimPack/func/event/examples/logic/makefile
+share/SimPack/func/event/examples/logic/makefile.simpack
+share/SimPack/func/event/examples/logic/output.v0u
+share/SimPack/func/event/examples/logic/output.v1d
+share/SimPack/func/event/examples/logic/output.v1u
+share/SimPack/func/event/examples/logic/readme
+share/SimPack/func/event/examples/logic/translat
+share/SimPack/func/event/examples/logic/translat.bat
+share/SimPack/func/event/examples/network/makefile
+share/SimPack/func/event/examples/network/makefile.simpack
+share/SimPack/func/event/examples/network/net1.dat
+share/SimPack/func/event/examples/network/net2.dat
+share/SimPack/func/event/examples/network/net3.dat
+share/SimPack/func/event/examples/network/net4.dat
+share/SimPack/func/event/examples/network/net5.dat
+share/SimPack/func/event/examples/network/network0
+share/SimPack/func/event/examples/network/network1
+share/SimPack/func/event/examples/network/output.v0u
+share/SimPack/func/event/examples/network/output.v1d
+share/SimPack/func/event/examples/network/output.v1u
+share/SimPack/func/event/examples/network/readme
+share/SimPack/func/event/examples/network/translat
+share/SimPack/func/event/examples/network/translat.bat
+share/SimPack/func/event/examples/qnet/cpudisk.dat
+share/SimPack/func/event/examples/qnet/makefile
+share/SimPack/func/event/examples/qnet/makefile.orig
+share/SimPack/func/event/examples/qnet/output.v0u
+share/SimPack/func/event/examples/qnet/output.v1d
+share/SimPack/func/event/examples/qnet/output.v1u
+share/SimPack/func/event/examples/qnet/q.dat
+share/SimPack/func/event/examples/qnet/qnet0
+share/SimPack/func/event/examples/qnet/qnet1
+share/SimPack/func/event/examples/qnet/readme
+share/SimPack/func/event/examples/qnet/translat
+share/SimPack/func/event/examples/qnet/translat.bat
+share/SimPack/func/event/examples/route/d1e
+share/SimPack/func/event/examples/route/d1u
+share/SimPack/func/event/examples/route/d2a
+share/SimPack/func/event/examples/route/d2e
+share/SimPack/func/event/examples/route/d2u
+share/SimPack/func/event/examples/route/d3e
+share/SimPack/func/event/examples/route/d3l
+share/SimPack/func/event/examples/route/d3u
+share/SimPack/func/event/examples/route/makefile
+share/SimPack/func/event/examples/route/makefile.simpack
+share/SimPack/func/event/examples/route/output.v0u
+share/SimPack/func/event/examples/route/output.v1d
+share/SimPack/func/event/examples/route/output.v1u
+share/SimPack/func/event/examples/route/readme
+share/SimPack/func/event/examples/route/route0
+share/SimPack/func/event/examples/route/route1
+share/SimPack/func/event/examples/route/translat
+share/SimPack/func/event/examples/route/translat.bat
+share/SimPack/func/event/examples/ssq/makefile
+share/SimPack/func/event/examples/ssq/makefile.simpack
+share/SimPack/func/event/examples/ssq/output.11d
+share/SimPack/func/event/examples/ssq/output.11u
+share/SimPack/func/event/examples/ssq/output.v0u
+share/SimPack/func/event/examples/ssq/output.v1d
+share/SimPack/func/event/examples/ssq/output.v1u
+share/SimPack/func/event/examples/ssq/output.v2d
+share/SimPack/func/event/examples/ssq/output.v2u
+share/SimPack/func/event/examples/ssq/output.v4d
+share/SimPack/func/event/examples/ssq/output.v4u
+share/SimPack/func/event/examples/ssq/output.v5d
+share/SimPack/func/event/examples/ssq/output.v5u
+share/SimPack/func/event/examples/ssq/output.v6d
+share/SimPack/func/event/examples/ssq/output.v6u
+share/SimPack/func/event/examples/ssq/output.v7d
+share/SimPack/func/event/examples/ssq/output.v7u
+share/SimPack/func/event/examples/ssq/output.v8d
+share/SimPack/func/event/examples/ssq/output.v8u
+share/SimPack/func/event/examples/ssq/readme
+share/SimPack/func/event/examples/ssq/ssq0
+share/SimPack/func/event/examples/ssq/ssq1
+share/SimPack/func/event/examples/ssq/ssq10
+share/SimPack/func/event/examples/ssq/ssq11
+share/SimPack/func/event/examples/ssq/ssq12
+share/SimPack/func/event/examples/ssq/ssq13
+share/SimPack/func/event/examples/ssq/ssq2
+share/SimPack/func/event/examples/ssq/ssq3
+share/SimPack/func/event/examples/ssq/ssq4
+share/SimPack/func/event/examples/ssq/ssq5
+share/SimPack/func/event/examples/ssq/ssq6
+share/SimPack/func/event/examples/ssq/ssq7
+share/SimPack/func/event/examples/ssq/ssq8
+share/SimPack/func/event/examples/ssq/ssq9
+share/SimPack/func/event/examples/ssq/translat
+share/SimPack/func/event/examples/tiktok/makefile
+share/SimPack/func/event/examples/tiktok/makefile.orig
+share/SimPack/func/event/examples/tiktok/makefile.simpack
+share/SimPack/func/event/examples/tiktok/output.v0u
+share/SimPack/func/event/examples/tiktok/output.v1d
+share/SimPack/func/event/examples/tiktok/output.v1u
+share/SimPack/func/event/examples/tiktok/output.v2d
+share/SimPack/func/event/examples/tiktok/output.v2u
+share/SimPack/func/event/examples/tiktok/output.v3d
+share/SimPack/func/event/examples/tiktok/output.v3u
+share/SimPack/func/event/examples/tiktok/output.v4d
+share/SimPack/func/event/examples/tiktok/output.v4u
+share/SimPack/func/event/examples/tiktok/readme
+share/SimPack/func/event/examples/tiktok/tiktok
+share/SimPack/func/event/examples/tiktok/tiktok.C
+share/SimPack/func/event/examples/tiktok/tiktok0
+share/SimPack/func/event/examples/tiktok/tiktok1
+share/SimPack/func/event/examples/tiktok/tiktok2
+share/SimPack/func/event/examples/tiktok/tiktok3
+share/SimPack/func/event/examples/tiktok/tiktok4
+share/SimPack/func/event/examples/tiktok/translat
+share/SimPack/func/event/pkgs/Xsimcode/README
+share/SimPack/func/event/pkgs/Xsimcode/examples/Makefile
+share/SimPack/func/event/pkgs/Xsimcode/examples/Readme
+share/SimPack/func/event/pkgs/Xsimcode/examples/big_test.sim
+share/SimPack/func/event/pkgs/Xsimcode/examples/combined1.sim
+share/SimPack/func/event/pkgs/Xsimcode/examples/examp1.sim
+share/SimPack/func/event/pkgs/Xsimcode/examples/examp2.sim
+share/SimPack/func/event/pkgs/Xsimcode/examples/examp3.sim
+share/SimPack/func/event/pkgs/minigpss/gpdoc/README.abstract
+share/SimPack/func/event/pkgs/minigpss/gpdoc/README.dtastruct
+share/SimPack/func/event/pkgs/minigpss/gpdoc/README.intdia
+share/SimPack/func/event/pkgs/minigpss/gpdoc/README.intro
+share/SimPack/func/event/pkgs/minigpss/gpdoc/README.progdesc
+share/SimPack/func/event/pkgs/minigpss/gpdoc/README.ref
+share/SimPack/func/event/pkgs/minigpss/gpdoc/README.syntax
+share/SimPack/func/event/pkgs/minigpss/gpdoc/README.sysdia
+share/SimPack/func/event/pkgs/minigpss/gpdoc/README.system
+share/SimPack/func/event/pkgs/minigpss/gpdoc/README.userman
+share/SimPack/func/event/pkgs/minigpss/gpdoc/barber2.g
+share/SimPack/func/event/pkgs/minigpss/gpdoc/barber2.gps
+share/SimPack/func/event/pkgs/minigpss/gpdoc/docs
+share/SimPack/func/event/pkgs/minigpss/gpdoc/ls
+share/SimPack/func/event/pkgs/minigpss/gpdoc/minidesc.txt
+share/SimPack/func/event/pkgs/minigpss/gpfiles/Makefile
+share/SimPack/func/event/pkgs/minigpss/gpfiles/barber2.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/barbershop.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/branch.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/branch2.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/branch4.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/branching.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/myfig.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/nofac.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/nofac2.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/sample1.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/sample1.out
+share/SimPack/func/event/pkgs/minigpss/gpfiles/sample2.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/sample2.out
+share/SimPack/func/event/pkgs/minigpss/gpfiles/sample3.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/sample3.out
+share/SimPack/func/event/pkgs/minigpss/gpfiles/sample4.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/sample4.out
+share/SimPack/func/event/pkgs/minigpss/gpfiles/scanners.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/scanners.out
+share/SimPack/func/event/pkgs/minigpss/gpfiles/scanners2.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/series.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/simgen.c
+share/SimPack/func/event/pkgs/minigpss/gpfiles/timed.g
+share/SimPack/func/event/pkgs/minigpss/gpfiles/twice.g
+share/SimPack/func/slice/block/Makefile
+share/SimPack/func/slice/block/README
+share/SimPack/func/slice/block/block.c
+share/SimPack/func/slice/block/block.dat
+share/SimPack/func/slice/block/block.out
+share/SimPack/func/slice/block/block.ps
+share/SimPack/func/slice/block/block2.dat
+share/SimPack/func/slice/block/block2.out
+share/SimPack/func/slice/block/block2.ps
+share/SimPack/func/slice/block/monorail1.c
+share/SimPack/func/slice/block/monorail1.dat
+share/SimPack/func/slice/block/monorail2.c
+share/SimPack/func/slice/block/monorail2.dat
+share/SimPack/func/slice/block/monorail3.c
+share/SimPack/func/slice/block/monorail3.dat
+share/SimPack/func/slice/block/monorail3.out
+share/SimPack/func/slice/block/monorail3.ps
+share/SimPack/func/slice/pulse/Makefile
+share/SimPack/func/slice/pulse/README.PUL
+share/SimPack/func/slice/pulse/herb.dat
+share/SimPack/func/slice/pulse/pulse.c
+share/SimPack/func/slice/sdsmt/ANNOUNCE
+share/SimPack/func/slice/sdsmt/DOC.PS
+share/SimPack/func/slice/sdsmt/README
+share/SimPack/func/slice/sdsmt/buildings.sdg
+share/SimPack/func/slice/sdsmt/coffee.sdg
+share/SimPack/func/slice/sdsmt/coffee.sdg.equ
+share/SimPack/func/slice/sdsmt/coffee.sdg.init
+share/SimPack/func/slice/sdsmt/epidemic.sdg
+share/SimPack/func/slice/sdsmt/epidemic.sdg.equ
+share/SimPack/func/slice/sdsmt/epidemic.sdg.init
+share/SimPack/func/slice/sdsmt/fly.sdg
+share/SimPack/func/slice/sdsmt/fly.sdg.equ
+share/SimPack/func/slice/sdsmt/fly.sdg.init
+share/SimPack/func/slice/sdsmt/larvae2.sdg
+share/SimPack/func/slice/sdsmt/larvae2.sdg.equ
+share/SimPack/func/slice/sdsmt/larvae2.sdg.init
+share/SimPack/func/slice/sdsmt/larve.sdg.equ
+share/SimPack/func/slice/sdsmt/larve.sdg.init
+share/SimPack/func/slice/sdsmt/news.lists
+share/SimPack/func/slice/sdsmt/pop.sdg
+share/SimPack/func/slice/sdsmt/pop.sdg.equ
+share/SimPack/func/slice/sdsmt/pop.sdg.init
+share/SimPack/func/slice/sdsmt/population.sdg
+share/SimPack/func/slice/sdsmt/population.sdg.equ
+share/SimPack/func/slice/sdsmt/population.sdg.init
+share/SimPack/func/slice/sdsmt/population1.sdg.equ
+share/SimPack/func/slice/sdsmt/population1.sdg.init
+share/SimPack/multimodel/Makefile
+share/SimPack/multimodel/README
+share/SimPack/multimodel/bwater
+share/SimPack/multimodel/bwater.c
+share/SimPack/multimodel/bwater.in
+share/SimPack/multimodel/combined
+share/SimPack/multimodel/combined.c
+share/SimPack/projects/README
+share/SimPack/projects/davinci
+share/SimPack/README
+share/SimPack/BOOK
+share/SimPack/COPYRIGHT
+share/SimPack/License
+share/SimPack/License.gnu
+share/SimPack/shipmail.info
+share/SimPack/SimPack.doc
+@unexec rm -r %D/share/SimPack
+@dirrm include/Sim++
+@dirrm include/queuing
+@dirrm lib/Sim++/olb
+@dirrm lib/Sim++
diff --git a/math/simpack/pkg-req b/math/simpack/pkg-req
new file mode 100644
index 000000000000..3e75b81d3ca6
--- /dev/null
+++ b/math/simpack/pkg-req
@@ -0,0 +1,59 @@
+#!/bin/sh
+cat <<!
+
+
+ LICENSE
+
+ SimPack Version 3.01 (SimPack3), a software toolkit supporting a variety
+ of kinds of simulations, including, but not limited to: declarative,
+ constraint-based, spatial, event-scheduling and queuing
+ model, and multimodel simulations, developed at the CISE Department,
+ University of Florida, Gainesville FL USA, is the property of Dr.
+ Paul A. Fishwick, copyright (c) 1995. Title to and ownership of
+ SimPack3 remains in Paul Fishwick.
+
+ SimPack3 is copyrighted by its author named above with the exception of
+ certain packages built by others, which packages are distributed with
+ SimPack3 and which bear attributions identifying those other authors.
+
+ You are granted a nonexclusive license to use SimPack3 in
+ accordance with the provisions of the GNU General Public License,
+ version 2 (or at your option any later version), which is hereby
+ incorporated by reference. The GNU General Public License is published
+ by the Free Software Foundation. A copy of the GNU License appears in
+ the same directory as this License, under the filename \`\`License.gnu".
+ The GNU license is also available from Free Software Foundation, Inc.,
+ 675 Massachusetts Avenue, Cambridge MA 02139 USA.
+
+ In a nutshell, you are free to use SimPack3 for research, teaching,
+ or private purposes, but you must not sell, lease, rent, or otherwise
+ convey any interest in SimPack3, except that you may redistribute
+ SimPack3 as long as any redistribution is free of charge
+ and includes all original source code and accompanying documentation,
+ as well as this License. If you modify SimPack3 and/or incorporate it
+ into another software product, distribution of any such derived product
+ must be under the same terms and conditions as those in this SimPack3
+ License.
+
+ Source code as used above includes (as applicable and without limitation)
+ shell scripts, makefiles, header files (.h), C and C++ program files,
+ (whatever their file extension may be), Tcl/Tk program files, and (for
+ the DOS environment) .bat files. Documentation as used above means
+ LaTeX files (.tex), as well as associated and derived files such as .dvi
+ and .ps files, and all readme files.
+
+ You may terminate your SimPack3 License at any time by erasing all
+ copies of all files in your possession which constitute the
+ SimPack3 distribution, and by erasing all copies of all files in
+ your possession which constitute any derived product(s). We may
+ terminate your License upon notice, in the event that you violate its
+ terms and conditions.
+
+ SimPack3 is distributed in the hope that it will be useful, but
+ without any warranty, and without any implied warranty of
+ merchantability or fitness for a particular purpose.
+ Under no circumstances shall the owner of SimPack3 be liable to any
+ person for any indirect, special, incidental, or consequential
+ damages arising from the use or misuse of this software.
+!
+exit 0