diff --git a/emulators/dynagen/Makefile b/emulators/dynagen/Makefile new file mode 100644 index 00000000000..caf6301310f --- /dev/null +++ b/emulators/dynagen/Makefile @@ -0,0 +1,48 @@ +# $OpenBSD: Makefile,v 1.1.1.1 2008/01/18 09:12:12 sthen Exp $ + +COMMENT= front-end for dynamips cisco emulator + +DISTNAME= dynagen-0.10.1 +CATEGORIES= emulators + +HOMEPAGE= http://dyna-gen.sourceforge.net/ + +MAINTAINER= Stuart Henderson + +# GPL +PERMIT_PACKAGE_CDROM= Yes +PERMIT_PACKAGE_FTP= Yes +PERMIT_DISTFILES_CDROM= Yes +PERMIT_DISTFILES_FTP= Yes + +MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=dyna-gen/} + +MODULES= lang/python +RUN_DEPENDS= ::emulators/dynamips + +NO_BUILD= Yes +NO_REGRESS= Yes +PKG_ARCH= * + +post-extract: + @find ${WRKSRC} -type f -exec perl -pi -e 's:\x0d::' {} \; + +do-install: + @perl -pi -e 's:%%PREFIX%%:${TRUEPREFIX}:;' -e \ + 's:%%SYSCONFDIR%%:${SYSCONFDIR}:;' -e \ + 's:/usr/bin/env python:${MODPY_BIN}:' ${WRKSRC}/dynagen + ${INSTALL_SCRIPT} ${WRKSRC}/dynagen ${PREFIX}/bin/ + ${INSTALL_DATA_DIR} ${DESTDIR}${MODPY_SITEPKG}/dynagen + ${INSTALL_SCRIPT} ${WRKSRC}/*.py* ${DESTDIR}${MODPY_SITEPKG}/dynagen + ${INSTALL_SCRIPT} ${FILESDIR}/*.py* ${DESTDIR}${MODPY_SITEPKG}/dynagen + ${INSTALL_DATA_DIR} ${PREFIX}/share/dynagen + ${INSTALL_DATA} ${WRKSRC}/configspec ${PREFIX}/share/dynagen + ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/dynagen/tutorial_files + ${INSTALL_DATA} ${WRKSRC}/docs/*htm* ${PREFIX}/share/doc/dynagen + ${INSTALL_DATA} ${WRKSRC}/docs/tutorial_files/* \ + ${PREFIX}/share/doc/dynagen/tutorial_files + ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/dynagen + ${INSTALL_DATA} ${WRKSRC}/dynagen.ini ${PREFIX}/share/examples/dynagen + @cp -R ${WRKSRC}/sample_labs/* ${PREFIX}/share/examples/dynagen + +.include diff --git a/emulators/dynagen/distinfo b/emulators/dynagen/distinfo new file mode 100644 index 00000000000..d0a79033763 --- /dev/null +++ b/emulators/dynagen/distinfo @@ -0,0 +1,5 @@ +MD5 (dynagen-0.10.1.tar.gz) = TKJuS0uL7mGnf5LqzoQE0A== +RMD160 (dynagen-0.10.1.tar.gz) = JNomIWjGrQvjS9xG85bLbh5Gb2M= +SHA1 (dynagen-0.10.1.tar.gz) = bZY+1WxSwngE5VWl9HrTgH5n9lQ= +SHA256 (dynagen-0.10.1.tar.gz) = wfl7UptXAgmArF4W2fi4iyDfEoQhTDiR7Rxq9cVdhqY= +SIZE (dynagen-0.10.1.tar.gz) = 614999 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-dynagen b/emulators/dynagen/patches/patch-dynagen new file mode 100644 index 00000000000..cb9b18c4d16 --- /dev/null +++ b/emulators/dynagen/patches/patch-dynagen @@ -0,0 +1,34 @@ +$OpenBSD: patch-dynagen,v 1.1.1.1 2008/01/18 09:12:12 sthen Exp $ +--- dynagen.orig Tue Jan 15 21:42:17 2008 ++++ dynagen Tue Jan 15 21:47:05 2008 +@@ -20,8 +20,8 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Bos + """ + + import sys, os, re, 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, \ + NIO_udp, NIO_linux_eth, NIO_gen_eth, NIO_tap, NIO_unix, NIO_vde, nosend, setdebug, \ +@@ -29,15 +29,15 @@ from dynamips_lib import Dynamips, PA_C7200_IO_FE, PA_ + 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, WICS, NM_CIDS, NM_NAM +-from validate import Validator +-from configobj import ConfigObj, flatten_errors ++from dynagen.validate import Validator ++from dynagen.configobj import ConfigObj, flatten_errors + from optparse import OptionParser + + # Constants + VERSION = '0.10.1.090807' +-CONFIGSPECPATH = [ "/usr/share/dynagen", "/usr/local/share" ] ++CONFIGSPECPATH = [ "%%PREFIX%%/share/dynagen" ] + CONFIGSPEC = 'configspec' +-INIPATH = [ "/etc", "/usr/local/etc" ] ++INIPATH = [ "%%SYSCONFDIR%%" ] + INIFILE = 'dynagen.ini' + MODELTUPLE = (C1700, C2600, C2691, C3725, C3745, C3600, C7200) # A tuple of known model objects + ADAPTER_TRANSFORM = { diff --git a/emulators/dynagen/pkg/DESCR b/emulators/dynagen/pkg/DESCR new file mode 100644 index 00000000000..74e1f001cc0 --- /dev/null +++ b/emulators/dynagen/pkg/DESCR @@ -0,0 +1,9 @@ +Dynagen is a text-based front-end, using an INI-like configuration +file to provision Dynamips emulator networks. + +It takes care of specifying the right port adapters, generating +and matching up 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, etc. diff --git a/emulators/dynagen/pkg/PLIST b/emulators/dynagen/pkg/PLIST new file mode 100644 index 00000000000..8a77400c8e3 --- /dev/null +++ b/emulators/dynagen/pkg/PLIST @@ -0,0 +1,50 @@ +@comment $OpenBSD: PLIST,v 1.1.1.1 2008/01/18 09:12:12 sthen Exp $ +bin/dynagen +lib/python${MODPY_VERSION}/site-packages/dynagen/ +lib/python${MODPY_VERSION}/site-packages/dynagen/__init__.py +lib/python${MODPY_VERSION}/site-packages/dynagen/configobj.py +lib/python${MODPY_VERSION}/site-packages/dynagen/console.py +lib/python${MODPY_VERSION}/site-packages/dynagen/dynamips_lib.py +lib/python${MODPY_VERSION}/site-packages/dynagen/validate.py +share/doc/dynagen/ +share/doc/dynagen/tutorial.htm +share/doc/dynagen/tutorial_files/ +share/doc/dynagen/tutorial_files/image001.jpg +share/doc/dynagen/tutorial_files/image002.gif +share/doc/dynagen/tutorial_files/image003.gif +share/doc/dynagen/tutorial_files/image004.gif +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/image012.gif +share/doc/dynagen/tutorial_files/image013.gif +share/doc/dynagen/tutorial_files/image014.gif +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/ +share/dynagen/configspec +share/examples/dynagen/ +share/examples/dynagen/all_config_options.txt +share/examples/dynagen/dynagen.ini +@sample ${SYSCONFDIR}/dynagen.ini +share/examples/dynagen/ethernet_switch/ +share/examples/dynagen/ethernet_switch/ethsw1.net +share/examples/dynagen/frame_relay/ +share/examples/dynagen/frame_relay/frame_relay1.net +share/examples/dynagen/multiserver/ +share/examples/dynagen/multiserver/multiserver.net +share/examples/dynagen/simple1/ +share/examples/dynagen/simple1/simple1.net +share/examples/dynagen/simple2/ +share/examples/dynagen/simple2/simple2.net