summaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
authormarkd <markd@pkgsrc.org>2010-02-05 20:20:41 +0000
committermarkd <markd@pkgsrc.org>2010-02-05 20:20:41 +0000
commitfe296cee308203854d093359da7a79d54a940b34 (patch)
tree4ed26d1b59d3b852841795bcafef5e5bc9f504b0 /emulators
parent031b1d3d6b5fd63b001817bb5ced0edc73d620c8 (diff)
downloadpkgsrc-fe296cee308203854d093359da7a79d54a940b34.tar.gz
Initial import of dynagen 0.11.0
Dynagen is a front-end for use with the Dynamips Cisco router emulator. It uses an INI-like configuration file to provision Dynamips emulator networks. It takes care of specifying the right port adapters, generating and matching up those pesky NIO descriptors, specifying bridges, frame-relay, ATM switches, etc. It also provides a management CLI for listing devices, suspending and reloading instances, determining and managing idle-pc values, performing packet captures, etc.
Diffstat (limited to 'emulators')
-rw-r--r--emulators/dynagen/DESCR7
-rw-r--r--emulators/dynagen/Makefile44
-rw-r--r--emulators/dynagen/PLIST51
-rw-r--r--emulators/dynagen/distinfo6
-rw-r--r--emulators/dynagen/files/__init__.py1
-rw-r--r--emulators/dynagen/patches/patch-aa37
6 files changed, 146 insertions, 0 deletions
diff --git a/emulators/dynagen/DESCR b/emulators/dynagen/DESCR
new file mode 100644
index 00000000000..b0d6a2c819f
--- /dev/null
+++ b/emulators/dynagen/DESCR
@@ -0,0 +1,7 @@
+Dynagen is a front-end for use with the Dynamips Cisco router emulator.
+It uses an INI-like configuration file to provision Dynamips emulator
+networks. It takes care of specifying the right port adapters, generating
+and matching up those pesky NIO descriptors, specifying bridges,
+frame-relay, ATM switches, etc. It also provides a management CLI for
+listing devices, suspending and reloading instances, determining and
+managing idle-pc values, performing packet captures, etc.
diff --git a/emulators/dynagen/Makefile b/emulators/dynagen/Makefile
new file mode 100644
index 00000000000..8465e0e1257
--- /dev/null
+++ b/emulators/dynagen/Makefile
@@ -0,0 +1,44 @@
+# $NetBSD: Makefile,v 1.1.1.1 2010/02/05 20:20:41 markd Exp $
+
+DISTNAME= dynagen-0.11.0
+CATEGORIES= emulators
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=dyna-gen/}
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://dynagen.org/
+COMMENT= Network configuration generator for Dynamips
+LICENSE= gnu-gpl-v2
+
+PKG_DESTDIR_SUPPORT= user-destdir
+
+DEPENDS+= dynamips>=0.2.8rc1:../../emulators/dynamips
+
+NO_BUILD= yes
+PY_PATCHPLIST= yes
+REPLACE_PYTHON+= dynagen confConsole.py console.py dynamips_lib.py pemu_lib.py
+
+SUBST_CLASSES+= paths
+SUBST_STAGE.paths= post-patch
+SUBST_FILES.paths= dynagen
+SUBST_SED.paths= -e "s|@SYSCONFDIR@|${PKG_SYSCONFDIR}|"
+SUBST_SED.paths+= -e "s|@PREFIX@|${PREFIX}|"
+
+CONF_FILES+= share/examples/dynagen/dynagen.ini ${PKG_SYSCONFDIR}/dynagen.ini
+
+INSTALLATION_DIRS= bin ${PYSITELIB}/dynagen share/dynagen \
+ share/doc/dynagen/tutorial_files share/examples/dynagen
+
+do-install:
+ ${INSTALL_SCRIPT} ${WRKSRC}/dynagen ${DESTDIR}${PREFIX}/bin
+ ${INSTALL_SCRIPT} ${WRKSRC}/*.py* ${DESTDIR}${PREFIX}/${PYSITELIB}/dynagen
+ ${INSTALL_SCRIPT} ${FILESDIR}/*.py* ${DESTDIR}${PREFIX}/${PYSITELIB}/dynagen
+ ${INSTALL_DATA} ${WRKSRC}/configspec ${DESTDIR}${PREFIX}/share/dynagen
+ ${INSTALL_DATA} ${WRKSRC}/docs/*htm* ${DESTDIR}${PREFIX}/share/doc/dynagen
+ ${INSTALL_DATA} ${WRKSRC}/docs/tutorial_files/* \
+ ${DESTDIR}${PREFIX}/share/doc/dynagen/tutorial_files
+ ${INSTALL_DATA} ${WRKSRC}/dynagen.ini ${DESTDIR}${PREFIX}/share/examples/dynagen
+ cp -R ${WRKSRC}/sample_labs/* ${DESTDIR}${PREFIX}/share/examples/dynagen
+
+.include "../../lang/python/application.mk"
+.include "../../lang/python/extension.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/emulators/dynagen/PLIST b/emulators/dynagen/PLIST
new file mode 100644
index 00000000000..f35a92fde1b
--- /dev/null
+++ b/emulators/dynagen/PLIST
@@ -0,0 +1,51 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2010/02/05 20:20:41 markd Exp $
+bin/dynagen
+${PYSITELIB}/dynagen/__init__.py
+${PYSITELIB}/dynagen/confConsole.py
+${PYSITELIB}/dynagen/configobj.py
+${PYSITELIB}/dynagen/console.py
+${PYSITELIB}/dynagen/dynamips_lib.py
+${PYSITELIB}/dynagen/pemu_lib.py
+${PYSITELIB}/dynagen/pemubin.py
+${PYSITELIB}/dynagen/pemuwrapper.py
+${PYSITELIB}/dynagen/validate.py
+share/doc/dynagen/tutorial.htm
+share/doc/dynagen/tutorial_files/image001.jpg
+share/doc/dynagen/tutorial_files/image002.gif
+share/doc/dynagen/tutorial_files/image002.jpg
+share/doc/dynagen/tutorial_files/image003.gif
+share/doc/dynagen/tutorial_files/image003.jpg
+share/doc/dynagen/tutorial_files/image004.gif
+share/doc/dynagen/tutorial_files/image004.jpg
+share/doc/dynagen/tutorial_files/image005.jpg
+share/doc/dynagen/tutorial_files/image006.jpg
+share/doc/dynagen/tutorial_files/image007.jpg
+share/doc/dynagen/tutorial_files/image008.jpg
+share/doc/dynagen/tutorial_files/image009.jpg
+share/doc/dynagen/tutorial_files/image010.jpg
+share/doc/dynagen/tutorial_files/image011.gif
+share/doc/dynagen/tutorial_files/image011.jpg
+share/doc/dynagen/tutorial_files/image012.gif
+share/doc/dynagen/tutorial_files/image012.jpg
+share/doc/dynagen/tutorial_files/image013.gif
+share/doc/dynagen/tutorial_files/image013.jpg
+share/doc/dynagen/tutorial_files/image014.gif
+share/doc/dynagen/tutorial_files/image014.jpg
+share/doc/dynagen/tutorial_files/image015.gif
+share/doc/dynagen/tutorial_files/image016.gif
+share/doc/dynagen/tutorial_files/image017.gif
+share/doc/dynagen/tutorial_files/image018.gif
+share/doc/dynagen/tutorial_files/image019.gif
+share/doc/dynagen/tutorial_files/image020.gif
+share/doc/dynagen/tutorial_files/image021.gif
+share/doc/dynagen/tutorial_files/image022.jpg
+share/doc/dynagen/tutorial_files/image023.jpg
+share/dynagen/configspec
+share/examples/dynagen/all_config_options.txt
+share/examples/dynagen/dynagen.ini
+share/examples/dynagen/ethernet_switch/ethsw1.net
+share/examples/dynagen/frame_relay/frame_relay1.net
+share/examples/dynagen/multiserver/multiserver.net
+share/examples/dynagen/pix/pixtest.net
+share/examples/dynagen/simple1/simple1.net
+share/examples/dynagen/simple2/simple2.net
diff --git a/emulators/dynagen/distinfo b/emulators/dynagen/distinfo
new file mode 100644
index 00000000000..f485e6d6c89
--- /dev/null
+++ b/emulators/dynagen/distinfo
@@ -0,0 +1,6 @@
+$NetBSD: distinfo,v 1.1.1.1 2010/02/05 20:20:41 markd Exp $
+
+SHA1 (dynagen-0.11.0.tar.gz) = 3e3c6e33bc781301c7abe24532a06bca72d328af
+RMD160 (dynagen-0.11.0.tar.gz) = c68861cab9959a28338777dd89ebb9c5064c4459
+Size (dynagen-0.11.0.tar.gz) = 1418846 bytes
+SHA1 (patch-aa) = a3db849a4024188dd22eda174e0e8f1cf2e90802
diff --git a/emulators/dynagen/files/__init__.py b/emulators/dynagen/files/__init__.py
new file mode 100644
index 00000000000..ef00331a790
--- /dev/null
+++ b/emulators/dynagen/files/__init__.py
@@ -0,0 +1 @@
+__all__ = ['configobj', 'console', 'dynamips_lib', 'validate']
diff --git a/emulators/dynagen/patches/patch-aa b/emulators/dynagen/patches/patch-aa
new file mode 100644
index 00000000000..bdf70f0ef26
--- /dev/null
+++ b/emulators/dynagen/patches/patch-aa
@@ -0,0 +1,37 @@
+$NetBSD: patch-aa,v 1.1.1.1 2010/02/05 20:20:41 markd Exp $
+
+--- dynagen.orig 2008-04-20 14:25:51.000000000 +0000
++++ dynagen
+@@ -25,8 +25,8 @@ import sys
+ import os
+ import re
+ import traceback
+-from console import Console
+-from dynamips_lib import Dynamips, PA_C7200_IO_FE, PA_A1, PA_FE_TX, PA_4T, PA_8T, \
++from dynagen.console import Console
++from dynagen.dynamips_lib import Dynamips, PA_C7200_IO_FE, PA_A1, PA_FE_TX, PA_4T, PA_8T, \
+ PA_4E, PA_8E, PA_POS_OC3, Router, C7200, C3600, Leopard_2FE, NM_1FE_TX, NM_1E, NM_4E, \
+ NM_16ESW, NM_4T, DynamipsError, DynamipsWarning, Bridge, FRSW, ATMSW, ETHSW, ATMBR, \
+ NIO_udp, NIO_linux_eth, NIO_gen_eth, NIO_tap, NIO_unix, NIO_vde, NIO_null, nosend, setdebug, \
+@@ -34,16 +34,16 @@ from dynamips_lib import Dynamips, PA_C7
+ CISCO2600_MB_1E, CISCO2600_MB_2E, CISCO2600_MB_1FE, CISCO2600_MB_2FE, PA_2FE_TX, \
+ PA_GE, PA_C7200_IO_2FE, PA_C7200_IO_GE_E, C1700, CISCO1710_MB_1FE_1E, C1700_MB_1ETH, \
+ DEVICETUPLE, DynamipsVerError, DynamipsErrorHandled, NM_CIDS, NM_NAM, get_reverse_udp_nio
+-from pemu_lib import Pemu, FW, nosend_pemu
+-from validate import Validator
+-from configobj import ConfigObj, flatten_errors
++from dynagen.pemu_lib import Pemu, FW, nosend_pemu
++from dynagen.validate import Validator
++from dynagen.configobj import ConfigObj, flatten_errors
+ from optparse import OptionParser
+
+ # Constants
+ VERSION = '0.11.0'
+-CONFIGSPECPATH = ['/usr/share/dynagen', '/usr/local/share']
++CONFIGSPECPATH = ['@PREFIX@/share/dynagen', '/usr/local/share']
+ CONFIGSPEC = 'configspec'
+-INIPATH = ['/etc', '/usr/local/etc']
++INIPATH = ['@SYSCONFDIR@']
+ INIFILE = 'dynagen.ini'
+ MODELTUPLE = ( # A tuple of known model objects
+ C1700,