Update to the latest version and update for the patches, tested only on
amd64.

emulators/dynagen (depends on python2.7) briefly tested

diff refs/heads/master refs/heads/gns3
commit - 37e0f4d6fac927ffe838b99ae6a1cd263e2d1b09
commit + dcaa6820e1d4cc6fecd85dcf2ec9dc05450ca695
blob - 3b1bdf0941e37e307178c1c617e2c0ebadcf4e19
blob + be5fa7166f110294be29bef9cc3797d66dd13864
--- emulators/dynamips/Makefile
+++ emulators/dynamips/Makefile
@@ -2,13 +2,13 @@ DISTNAME=             dynamips-0.2.8-RC2
 
 USE_WXNEEDED=          Yes
 
-DISTNAME=              dynamips-0.2.8-RC2
-PKGNAME=               ${DISTNAME:S/-RC/rc/}
-REVISION=              9
+GH_ACCOUNT=            GNS3
+GH_PROJECT=            dynamips
+GH_TAGNAME=            v0.2.23
+
 CATEGORIES=            emulators
 
 HOMEPAGE=              http://www.gns3.net/dynamips/
-MASTER_SITES=          ${MASTER_SITE_SOURCEFORGE:=gns-3/}
 
 # GPL
 PERMIT_PACKAGE=        Yes
@@ -16,8 +16,8 @@ MAKE_ENV=             DYNAMIPS_ARCH=${DYNAMIPS_ARCH}
 WANTLIB=               c elf>=2 pcap pthread
 
 MAKE_ENV=              DYNAMIPS_ARCH=${DYNAMIPS_ARCH}
+MODULES=               devel/cmake
 
-USE_GMAKE=             Yes
 NO_TEST=               Yes
 
 .if ${MACHINE_ARCH} == "i386"
@@ -28,9 +28,11 @@ post-install:
 DYNAMIPS_ARCH= "nojit"
 .endif
 
+CONFIGURE_ARGS += -DDYNAMIPS_ARCH=${DYNAMIPS_ARCH}
+
 post-install:
        ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/dynamips
-.for i in ChangeLog README README.hypervisor TODO
+.for i in ChangeLog README.md README.hypervisor TODO
        ${INSTALL_DATA} ${WRKSRC}/$i ${PREFIX}/share/doc/dynamips
 .endfor
 
blob - d3ccc77190bfc33262364943d97662c531d0c859
blob + b2913e7fd7237e89c613fd570c20eb5b5d977116
--- emulators/dynamips/distinfo
+++ emulators/dynamips/distinfo
@@ -1,2 +1,2 @@
-SHA256 (dynamips-0.2.8-RC2.tar.gz) = 
qLN3zmMRGeKFxAH9t8tNC8xgChVQi9/88zdUaVfiUt4=
-SIZE (dynamips-0.2.8-RC2.tar.gz) = 578935
+SHA256 (dynamips-0.2.23.tar.gz) = UDu7UsA/kZAOqNvovQuAS3bi4o0LckJiTg08Ut2kQaE=
+SIZE (dynamips-0.2.23.tar.gz) = 835736
blob - c0d41858e45dac99b393fc209a3048b14ed64a58 (mode 644)
blob + /dev/null
--- emulators/dynamips/patches/patch-Makefile
+++ /dev/null
@@ -1,116 +0,0 @@
-Index: Makefile
---- Makefile.orig
-+++ Makefile
-@@ -35,8 +35,8 @@ LEX=flex
- MIPS64_ARCH_INC_FILE=\"mips64_$(DYNAMIPS_ARCH)_trans.h\"
- PPC32_ARCH_INC_FILE=\"ppc32_$(DYNAMIPS_ARCH)_trans.h\"
- 
--CFLAGS+=-g -Wall -O3 -fomit-frame-pointer \
--      -DJIT_ARCH=\"$(DYNAMIPS_ARCH)\" -DJIT_CPU=CPU_$(DYNAMIPS_ARCH) \
-+CFLAGS?=-g -O3 -fomit-frame-pointer
-+CFLAGS+=-Wall -DJIT_ARCH=\"$(DYNAMIPS_ARCH)\" -DJIT_CPU=CPU_$(DYNAMIPS_ARCH) \
-       -DMIPS64_ARCH_INC_FILE=$(MIPS64_ARCH_INC_FILE) \
-       -DPPC32_ARCH_INC_FILE=$(PPC32_ARCH_INC_FILE) \
-       -DDYNAMIPS_VERSION=\"$(VERSION)\" \
-@@ -47,6 +47,12 @@ CFLAGS+=-g -Wall -O3 -fomit-frame-pointer \
- #PCAP_LIB=/usr/local/lib/libpcap.a
- PCAP_LIB=-lpcap
- 
-+ifeq ($(shell uname), OpenBSD)
-+   PTHREAD_LIBS?=-pthread
-+   PCAP_LIB=-lpcap
-+   CFLAGS+=$(PTHREAD_CFLAGS)
-+   LIBS=-L. -lelf $(PTHREAD_LIBS)
-+else
- ifeq ($(shell uname), FreeBSD)
-    PTHREAD_LIBS?=-pthread
-    LOCALBASE?=/usr/local
-@@ -85,6 +91,7 @@ endif
- endif
- endif
- endif
-+endif
- 
- PROG=dynamips$(BIN_EXT)
- PACKAGE=$(PROG)-$(VERSION)
-@@ -217,20 +224,20 @@ all: $(PROG) nvram_export
- 
- $(PROG): mips64_microcode_dump.inc ppc32_microcode_dump.inc \
-       $(LEX_C) $(C_OBJS) $(A_OBJS)
--      @echo "Linking $@"
--      @$(CC) -o $@ $(C_OBJS) $(A_OBJS) $(LIBS)
-+      @#echo "Linking $@"
-+      $(CC) -o $@ $(C_OBJS) $(A_OBJS) $(LIBS)
- 
- udp_send$(BIN_EXT): udp_send.c net.c crc.c
--      @echo "Linking $@"
--      @$(CC) -Wall $(CFLAGS) -o $@ udp_send.c net.c crc.c $(LIBS)
-+      @#echo "Linking $@"
-+      $(CC) -Wall $(CFLAGS) -o $@ udp_send.c net.c crc.c $(LIBS)
- 
- udp_recv$(BIN_EXT): udp_recv.c net.c crc.c
--      @echo "Linking $@"
--      @$(CC) -Wall $(CFLAGS) -o $@ udp_recv.c net.c crc.c $(LIBS)
-+      @#echo "Linking $@"
-+      $(CC) -Wall $(CFLAGS) -o $@ udp_recv.c net.c crc.c $(LIBS)
- 
- rom2c$(BIN_EXT): rom2c.c
--      @echo "Linking $@"
--      @$(CC) -Wall $(CFLAGS) -o $@ rom2c.c $(LIBS)
-+      @#echo "Linking $@"
-+      $(CC) -Wall $(CFLAGS) -o $@ rom2c.c $(LIBS)
- 
- mips64_microcode_dump.inc: rom2c$(BIN_EXT) mips64_microcode
-       @./rom2c mips64_microcode mips64_microcode_dump.inc 0xbfc00000
-@@ -239,24 +246,24 @@ ppc32_microcode_dump.inc: rom2c$(BIN_EXT) ppc32_microc
-       @./rom2c ppc32_microcode ppc32_microcode_dump.inc 0xfff00000
- 
- asmdefs$(BIN_EXT): asmdefs.c mips64.h
--      @echo "Linking $@"
--      @$(CC) -Wall $(CFLAGS) -o $@ asmdefs.c
-+      @#echo "Linking $@"
-+      $(CC) -Wall $(CFLAGS) -o $@ asmdefs.c
- 
- asmdefs.h: asmdefs$(BIN_EXT)
--      @echo "Building assembly definitions header file"
-+      @#echo "Building assembly definitions header file"
-       @./asmdefs
- 
- nvram_export$(BIN_EXT): nvram_export.c
--      @echo "Linking $@"
--      @$(CC) -Wall $(CFLAGS) -o $@ nvram_export.c
-+      @#echo "Linking $@"
-+      $(CC) -Wall $(CFLAGS) -o $@ nvram_export.c
- 
- install: $(PROG) nvram_export
-       @echo "Installing"
--      install -d $(DESTDIR)/bin $(DESTDIR)/man/man1 $(DESTDIR)/man/man7 
$(DESTDIR)/etc
--      install dynamips nvram_export   $(DESTDIR)/bin
--      install -m644 dynamips.1        $(DESTDIR)/man/man1
--      install -m644 nvram_export.1    $(DESTDIR)/man/man1
--      install -m644 hypervisor_mode.7 $(DESTDIR)/man/man7
-+      install -d $(PREFIX)/bin $(PREFIX)/man/man1 $(PREFIX)/man/man7 
$(DESTDIR)/etc
-+      install dynamips nvram_export   $(PREFIX)/bin
-+      install -m644 dynamips.1        $(PREFIX)/man/man1
-+      install -m644 nvram_export.1    $(PREFIX)/man/man1
-+      install -m644 hypervisor_mode.7 $(PREFIX)/man/man7
- # install -m644 example         $(DESTDIR)/etc/dynamips
- 
- 
-@@ -281,12 +288,12 @@ packdev:
- .SUFFIXES: .c .h .S .l .y .o
- 
- .S.o:
--      @echo "Assembling $<"
--      @$(CC) $(CFLAGS) $(INCLUDE) -c -o $*.o $<
-+      @#echo "Assembling $<"
-+      $(CC) $(CFLAGS) $(INCLUDE) -c -o $*.o $<
- 
- .c.o:
--      @echo "Compiling $<"
--      @$(CC) $(CFLAGS) $(INCLUDE) -c -o $*.o $<
-+      @#echo "Compiling $<"
-+      $(CC) $(CFLAGS) $(INCLUDE) -c -o $*.o $<
- 
- .l.c:
-       $(LEX) -o$*.c $<
blob - /dev/null
blob + 98a441d06002efd8e33cd376e29bc0ebd6caa46a (mode 644)
--- /dev/null
+++ emulators/dynamips/patches/patch-common_net_io_filter_c
@@ -0,0 +1,17 @@
+Index: common/net_io_filter.c
+--- common/net_io_filter.c.orig
++++ common/net_io_filter.c
+@@ -227,9 +227,12 @@ static int pf_capture_pkt_handler(netio_desc_t *nio,vo
+ {
+    struct netio_filter_capture *c = opt;
+    struct pcap_pkthdr pkt_hdr;
++   struct timeval tv;
+ 
+    if (c != NULL) {
+-      gettimeofday(&pkt_hdr.ts,0);
++      gettimeofday(&tv,0);
++      pkt_hdr.ts.tv_sec = tv.tv_sec;
++      pkt_hdr.ts.tv_usec = tv.tv_usec;
+       pkt_hdr.caplen = m_min(len, (u_int)pcap_snapshot(c->desc));
+       pkt_hdr.len = len;
+ 
blob - 7db372e37a3228216f4e6b22f0a5876441c7a7af (mode 644)
blob + /dev/null
--- emulators/dynamips/patches/patch-mips64_x86_trans_h
+++ /dev/null
@@ -1,12 +0,0 @@
---- mips64_x86_trans.h.orig    Sun Sep  2 11:41:38 2007
-+++ mips64_x86_trans.h Sun Sep  2 11:41:58 2007
-@@ -53,8 +53,7 @@ void mips64_jit_tcb_exec(cpu_mips_t *cpu,mips64_jit_tc
-       return;
-    }
- 
--   asm volatile ("movl %0,%%edi"::"r"(cpu):
--                 "esi","edi","eax","ebx","ecx","edx");
-+   asm volatile ("movl %0,%%edi"::"r"(cpu));
-    jit_code();
- }
- 
blob - /dev/null
blob + 777c591981f30f6bc5dd202eba406c12959a5592 (mode 644)
--- /dev/null
+++ emulators/dynamips/patches/patch-common_ppc32_x86_trans_h
@@ -0,0 +1,13 @@
+Index: common/ppc32_x86_trans.h
+--- common/ppc32_x86_trans.h.orig
++++ common/ppc32_x86_trans.h
+@@ -60,8 +60,7 @@ void ppc32_jit_tcb_exec(cpu_ppc_t *cpu,ppc32_jit_tcb_t
+       }
+    }
+ 
+-   asm volatile ("movl %0,%%edi"::"r"(cpu):
+-                 "esi","edi","eax","ebx","ecx","edx");
++   asm volatile ("movl %0,%%edi"::"r"(cpu));
+    jit_code();
+ }
+ 
blob - 7d59a84075f6614b2e6e9bf68f45bf51edbb31c6 (mode 644)
blob + /dev/null
--- emulators/dynamips/patches/patch-net_io_filter_c
+++ /dev/null
@@ -1,17 +0,0 @@
-Index: net_io_filter.c
---- net_io_filter.c.orig
-+++ net_io_filter.c
-@@ -211,9 +211,12 @@ static int pf_capture_pkt_handler(netio_desc_t *nio,vo
- {
-    struct netio_filter_capture *c = opt;
-    struct pcap_pkthdr pkt_hdr;
-+   struct timeval tv;
- 
-    if (c != NULL) {
--      gettimeofday(&pkt_hdr.ts,0);
-+      gettimeofday(&tv,0);
-+      pkt_hdr.ts.tv_sec = tv.tv_sec;
-+      pkt_hdr.ts.tv_usec = tv.tv_usec;
-       pkt_hdr.caplen = len;
-       pkt_hdr.len = len;
- 
blob - /dev/null
blob + d040496d9a6e4c52fd580dbbc4ec86f0ef716904 (mode 644)
--- /dev/null
+++ emulators/dynamips/patches/patch-stable_mips64_x86_trans_h
@@ -0,0 +1,13 @@
+Index: stable/mips64_x86_trans.h
+--- stable/mips64_x86_trans.h.orig
++++ stable/mips64_x86_trans.h
+@@ -53,8 +53,7 @@ void mips64_jit_tcb_exec(cpu_mips_t *cpu,mips64_jit_tc
+       return;
+    }
+ 
+-   asm volatile ("movl %0,%%edi"::"r"(cpu):
+-                 "esi","edi","eax","ebx","ecx","edx");
++   asm volatile ("movl %0,%%edi"::"r"(cpu));
+    jit_code();
+ }
+ 
blob - 6296d308c22dedf764bae27e66e41b3767b5176f (mode 644)
blob + /dev/null
--- emulators/dynamips/patches/patch-ppc32_x86_trans_h
+++ /dev/null
@@ -1,12 +0,0 @@
---- ppc32_x86_trans.h.orig     Sun Sep  2 11:43:03 2007
-+++ ppc32_x86_trans.h  Sun Sep  2 11:43:07 2007
-@@ -60,8 +60,7 @@ void ppc32_jit_tcb_exec(cpu_ppc_t *cpu,ppc32_jit_tcb_t
-       }
-    }
- 
--   asm volatile ("movl %0,%%edi"::"r"(cpu):
--                 "esi","edi","eax","ebx","ecx","edx");
-+   asm volatile ("movl %0,%%edi"::"r"(cpu));
-    jit_code();
- }
- 
blob - /dev/null
blob + cb7710efb4035b800f4e20d8d7f3e4cd9e038646 (mode 644)
--- /dev/null
+++ emulators/dynamips/patches/patch-stable_utils_h
@@ -0,0 +1,37 @@
+Index: stable/utils.h
+--- stable/utils.h.orig
++++ stable/utils.h
+@@ -183,12 +185,15 @@ static inline u_int normalize_size(u_int val,u_int nb,
+    return(((val+nb-1) & ~(nb-1)) >> shift);
+ }
+ 
++#ifndef swap16
+ /* Convert a 16-bit number between little and big endian */
+ static forced_inline m_uint16_t swap16(m_uint16_t value)
+ {
+    return((value >> 8) | ((value & 0xFF) << 8));
+ }
++#endif
+ 
++#ifndef swap32
+ /* Convert a 32-bit number between little and big endian */
+ static forced_inline m_uint32_t swap32(m_uint32_t value)
+ {
+@@ -200,7 +205,9 @@ static forced_inline m_uint32_t swap32(m_uint32_t valu
+    result |= (value & 0xff) << 24;
+    return(result);
+ }
++#endif
+ 
++#ifndef swap64
+ /* Convert a 64-bit number between little and big endian */
+ static forced_inline m_uint64_t swap64(m_uint64_t value)
+ {
+@@ -210,6 +217,7 @@ static forced_inline m_uint64_t swap64(m_uint64_t valu
+    result |= swap32(value >> 32);
+    return(result);
+ }
++#endif
+ 
+ /* Get current time in number of msec since epoch */
+ static inline m_tmcnt_t m_gettime(void)
blob - 989c94bc1eb178b15441fdf74a71cfbc5ea50172 (mode 644)
blob + /dev/null
--- emulators/dynamips/patches/patch-utils_c
+++ /dev/null
@@ -1,10 +0,0 @@
---- utils.c.orig       Thu Jan  4 21:49:43 2007
-+++ utils.c    Thu Jan  4 21:49:54 2007
-@@ -12,6 +12,7 @@
- #include <stdarg.h>
- #include <unistd.h>
- #include <time.h>
-+#include <pthread.h>
- #include <signal.h>
- #include <sys/time.h>
- #include <sys/ioctl.h>
blob - b26b6b7dcb83e02b9a0d052ac59375bc0c1bb920 (mode 644)
blob + /dev/null
--- emulators/dynamips/patches/patch-utils_h
+++ /dev/null
@@ -1,81 +0,0 @@
-Index: utils.h
---- utils.h.orig
-+++ utils.h
-@@ -14,6 +14,7 @@
- #include <netinet/in.h>
- #include <pthread.h>
- #include <signal.h>
-+#include <endian.h>
- 
- /* True/False definitions */
- #ifndef FALSE
-@@ -42,6 +43,9 @@
- #define ARCH_BIG_ENDIAN     0x4321
- #define ARCH_LITTLE_ENDIAN  0x1234
- 
-+#ifdef BYTE_ORDER
-+#define ARCH_BYTE_ORDER BYTE_ORDER
-+#else
- #if defined(PPC) || defined(__powerpc__) || defined(__ppc__)
- #define ARCH_BYTE_ORDER ARCH_BIG_ENDIAN
- #elif defined(__sparc) || defined(__sparc__)
-@@ -55,6 +59,7 @@
- #elif defined(__ia64__)
- #define ARCH_BYTE_ORDER ARCH_LITTLE_ENDIAN
- #endif
-+#endif
- 
- #ifndef ARCH_BYTE_ORDER
- #error Please define your architecture in utils.h!
-@@ -80,11 +85,16 @@
- #endif
- 
- /* Useful attributes for functions */
-+#if defined(__i386__)
- #define asmlinkage __attribute__((regparm(0)))
- #define fastcall   __attribute__((regparm(3)))
-+#else
-+#define asmlinkage
-+#define fastcall
-+#endif
- 
- #if __GNUC__ > 2
--#define forced_inline inline __attribute__((always_inline))
-+#define forced_inline inline __attribute__ ((always_inline))
- #define no_inline __attribute__ ((noinline))
- #else
- #define forced_inline inline
-@@ -255,12 +265,15 @@ static inline u_int normalize_size(u_int val,u_int nb,
-    return(((val+nb-1) & ~(nb-1)) >> shift);
- }
- 
-+#ifndef swap16
- /* Convert a 16-bit number between little and big endian */
- static forced_inline m_uint16_t swap16(m_uint16_t value)
- {
-    return((value >> 8) | ((value & 0xFF) << 8));
- }
-+#endif
- 
-+#ifndef swap32
- /* Convert a 32-bit number between little and big endian */
- static forced_inline m_uint32_t swap32(m_uint32_t value)
- {
-@@ -272,7 +285,9 @@ static forced_inline m_uint32_t swap32(m_uint32_t valu
-    result |= (value & 0xff) << 24;
-    return(result);
- }
-+#endif
- 
-+#ifndef swap64
- /* Convert a 64-bit number between little and big endian */
- static forced_inline m_uint64_t swap64(m_uint64_t value)
- {
-@@ -282,6 +297,7 @@ static forced_inline m_uint64_t swap64(m_uint64_t valu
-    result |= swap32(value >> 32);
-    return(result);
- }
-+#endif
- 
- /* Get current time in number of msec since epoch */
- static inline m_tmcnt_t m_gettime(void)
blob - 805b7060cd4286c8265a8d4f6c358e417ea86327
blob + 3278b2cd3a56aca82d21e5785207aa3e394a0feb
--- emulators/dynamips/pkg/MESSAGE
+++ emulators/dynamips/pkg/MESSAGE
@@ -1,7 +1,6 @@
 By default, a dynamips instance will take 100% of the host CPU. To
-avoid this, please read the "idle-pc" section in the README file
-(${PREFIX}/share/doc/dynamips/README). The configuration generator
-"dynagen" (available separately) can help find a good value.
+avoid this, you will need to google "idle-pc dynamips" or use built-in
+idle-pc finder in GNS3 or dynagen ports.
 
 You can greatly reduce startup times by uncompressing your IOS
 images with unzip.
blob - ce198be2fd371854292a456c373dce31c91294f1
blob + 0942764202d06fdefc2601364773e492e7906359
--- emulators/dynamips/pkg/PLIST
+++ emulators/dynamips/pkg/PLIST
@@ -4,7 +4,10 @@ share/doc/dynamips/ChangeLog
 @man man/man1/nvram_export.1
 @man man/man7/hypervisor_mode.7
 share/doc/dynamips/
+share/doc/dynamips/COPYING
 share/doc/dynamips/ChangeLog
-share/doc/dynamips/README
+share/doc/dynamips/MAINTAINERS
 share/doc/dynamips/README.hypervisor
+share/doc/dynamips/README.md
+share/doc/dynamips/RELEASE-NOTES
 share/doc/dynamips/TODO

Reply via email to