Sat Jul 18 18:43:56 2009 UTC ()
Update gxemul to 0.4.7.2, and also pull some fixes from upstream trunk
for running several NetBSD ports properly on the emulator. PR pkg/41742

Discussed with and okay'ed by wiz@.

Upstream changes:

The changes between release 0.4.6.6 and 0.4.7 are:

 * Motorola 88K emulation is now complete enough to run a guest operating
    system: OpenBSD/mvme88k 4.4.

    A big thank you goes to Miod Vallat, who sent me physical 88100
    documentation, via snail mail. This has been invaluable when implementing
    the 88K emulation mode.

The changes between release 0.4.7 and 0.4.7.1 are:

 * Applying a man page hypenation patch from Jonathan Wiltshire.
 * Minor documentation errors fixed.
 * Some more missing M88K instructions added.
 * NetBSD/hpcmips can now be installed and run using serial console (i.e.
    without -X), in addition to using the framebuffer.

The changes between release 0.4.7.1 and 0.4.7.2 are:

 * NetBSD 5.0, OpenBSD 4.5, and HelenOS 0.4.0 have been released, and the
    guest OS page has been updated to reflect this. (Not all versions and
    architectures work; the versions listed on the guest OS page are the latest
    ones that have been tested.)
 * A bug has been fixed which prevented configuration files from being used.

Patches pulled from upstream trunk:

patch-aa:
Applying a patch for setting the ARCBIOS OSLOADPARTITION environment
variable in a more correct way.
http://gxemul.svn.sourceforge.net/viewvc/gxemul?view=rev&revision=5473
This makes NetBSD/arc work on PICA emulation with VGA console.
(more proper fix than the previous patch-aa)

patch-ab:
Better fix for the Cobalt board ID number.
http://gxemul.svn.sourceforge.net/viewvc/gxemul?view=rev&revision=5485
(fixes in the previous patch-ab has been integrated in the latest release)

patch-ac:
Applying a patch which makes NetBSD/hpcmips work well with the clock again.
http://gxemul.svn.sourceforge.net/viewvc/gxemul?view=rev&revision=5472

pkgsrc changes:
- update MASTER_SITES and HOMEPAGE (now they are in sourceforge)
- update PLIST (add share/doc/gxemul/unsupported.html)


(tsutsui)
diff -r1.40 -r1.41 pkgsrc/emulators/gxemul/Makefile
diff -r1.22 -r1.23 pkgsrc/emulators/gxemul/PLIST
diff -r1.28 -r1.29 pkgsrc/emulators/gxemul/distinfo
diff -r1.6 -r1.7 pkgsrc/emulators/gxemul/patches/patch-aa
diff -r1.3 -r1.4 pkgsrc/emulators/gxemul/patches/patch-ab
diff -r0 -r1.3 pkgsrc/emulators/gxemul/patches/patch-ac

cvs diff -r1.40 -r1.41 pkgsrc/emulators/gxemul/Makefile (expand / switch to unified diff)

--- pkgsrc/emulators/gxemul/Makefile 2008/11/14 06:42:34 1.40
+++ pkgsrc/emulators/gxemul/Makefile 2009/07/18 18:43:56 1.41
@@ -1,22 +1,22 @@ @@ -1,22 +1,22 @@
1# $NetBSD: Makefile,v 1.40 2008/11/14 06:42:34 minskim Exp $ 1# $NetBSD: Makefile,v 1.41 2009/07/18 18:43:56 tsutsui Exp $
2# 2#
3 3
4DISTNAME= gxemul-0.4.6.6 4DISTNAME= gxemul-0.4.7.2
5CATEGORIES= emulators 5CATEGORIES= emulators
6MASTER_SITES= http://gavare.se/gxemul/src/ 6MASTER_SITES= http://gxemul.sourceforge.net/src/
7 7
8MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
9HOMEPAGE= http://gavare.se/gxemul/ 9HOMEPAGE= http://gxemul.sourceforge.net/
10COMMENT= Machine emulator 10COMMENT= Machine emulator
11 11
12PKG_INSTALLATION_TYPES= overwrite pkgviews 12PKG_INSTALLATION_TYPES= overwrite pkgviews
13PKG_DESTDIR_SUPPORT= user-destdir 13PKG_DESTDIR_SUPPORT= user-destdir
14 14
15USE_TOOLS+= pax 15USE_TOOLS+= pax
16 16
17USE_LANGUAGES= c 17USE_LANGUAGES= c
18HAS_CONFIGURE= yes 18HAS_CONFIGURE= yes
19BUILD_TARGET= build 19BUILD_TARGET= build
20 20
21INSTALLATION_DIRS= bin ${PKGMANDIR}/man1 share/doc/${PKGBASE} 21INSTALLATION_DIRS= bin ${PKGMANDIR}/man1 share/doc/${PKGBASE}
22 22

cvs diff -r1.22 -r1.23 pkgsrc/emulators/gxemul/PLIST (expand / switch to unified diff)

--- pkgsrc/emulators/gxemul/PLIST 2009/06/14 17:51:05 1.22
+++ pkgsrc/emulators/gxemul/PLIST 2009/07/18 18:43:56 1.23
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1@comment $NetBSD: PLIST,v 1.22 2009/06/14 17:51:05 joerg Exp $ 1@comment $NetBSD: PLIST,v 1.23 2009/07/18 18:43:56 tsutsui Exp $
2bin/gxemul 2bin/gxemul
3man/man1/gxemul.1 3man/man1/gxemul.1
4share/doc/gxemul/20040504-ultrix45-boot1.png 4share/doc/gxemul/20040504-ultrix45-boot1.png
5share/doc/gxemul/20040504-ultrix45-boot1_small.png 5share/doc/gxemul/20040504-ultrix45-boot1_small.png
6share/doc/gxemul/20040710-openbsd-pmax.png 6share/doc/gxemul/20040710-openbsd-pmax.png
7share/doc/gxemul/20040710-openbsd-pmax_small.png 7share/doc/gxemul/20040710-openbsd-pmax_small.png
8share/doc/gxemul/20040711-sprite-1.png 8share/doc/gxemul/20040711-sprite-1.png
9share/doc/gxemul/20040711-sprite-1_small.png 9share/doc/gxemul/20040711-sprite-1_small.png
10share/doc/gxemul/20041018-mach_pmax.png 10share/doc/gxemul/20041018-mach_pmax.png
11share/doc/gxemul/20041018-mach_pmax_small.png 11share/doc/gxemul/20041018-mach_pmax_small.png
12share/doc/gxemul/20041024-netbsd-arc-installed.gif 12share/doc/gxemul/20041024-netbsd-arc-installed.gif
13share/doc/gxemul/20041024-netbsd-arc-installed_small.gif 13share/doc/gxemul/20041024-netbsd-arc-installed_small.gif
14share/doc/gxemul/20041024-openbsd-arc-installed.gif 14share/doc/gxemul/20041024-openbsd-arc-installed.gif
@@ -122,13 +122,14 @@ share/doc/gxemul/maddr.gif @@ -122,13 +122,14 @@ share/doc/gxemul/maddr.gif
122share/doc/gxemul/misc.html 122share/doc/gxemul/misc.html
123share/doc/gxemul/networking.html 123share/doc/gxemul/networking.html
124share/doc/gxemul/openbsd-pmax-20040710.png 124share/doc/gxemul/openbsd-pmax-20040710.png
125share/doc/gxemul/openbsd-pmax-20040710_small.png 125share/doc/gxemul/openbsd-pmax-20040710_small.png
126share/doc/gxemul/sgi-o2-real.jpg 126share/doc/gxemul/sgi-o2-real.jpg
127share/doc/gxemul/sgi-o2-real_small.jpg 127share/doc/gxemul/sgi-o2-real_small.jpg
128share/doc/gxemul/simplified_dyntrans.png 128share/doc/gxemul/simplified_dyntrans.png
129share/doc/gxemul/sprite-20040711.png 129share/doc/gxemul/sprite-20040711.png
130share/doc/gxemul/sprite-20040711_small.png 130share/doc/gxemul/sprite-20040711_small.png
131share/doc/gxemul/technical.html 131share/doc/gxemul/technical.html
132share/doc/gxemul/translation.html 132share/doc/gxemul/translation.html
133share/doc/gxemul/ultrix4.5-20040706.png 133share/doc/gxemul/ultrix4.5-20040706.png
134share/doc/gxemul/ultrix4.5-20040706_small.png 134share/doc/gxemul/ultrix4.5-20040706_small.png
 135share/doc/gxemul/unsupported.html

cvs diff -r1.28 -r1.29 pkgsrc/emulators/gxemul/distinfo (expand / switch to unified diff)

--- pkgsrc/emulators/gxemul/distinfo 2008/11/14 06:42:34 1.28
+++ pkgsrc/emulators/gxemul/distinfo 2009/07/18 18:43:56 1.29
@@ -1,7 +1,8 @@ @@ -1,7 +1,8 @@
1$NetBSD: distinfo,v 1.28 2008/11/14 06:42:34 minskim Exp $ 1$NetBSD: distinfo,v 1.29 2009/07/18 18:43:56 tsutsui Exp $
2 2
3SHA1 (gxemul-0.4.6.6.tar.gz) = 599072df5a14565dcd10eb31faddc96a92a49cbc 3SHA1 (gxemul-0.4.7.2.tar.gz) = 63a20b810ef4ea9d7ec4678f135470fb324f61f1
4RMD160 (gxemul-0.4.6.6.tar.gz) = e29e863587340982ddaa14f65a17d29621efd461 4RMD160 (gxemul-0.4.7.2.tar.gz) = a54fb4f1ecf567ff9f62e8b1541018b38dea1e1a
5Size (gxemul-0.4.6.6.tar.gz) = 3345312 bytes 5Size (gxemul-0.4.7.2.tar.gz) = 3374450 bytes
6SHA1 (patch-aa) = d8dbe0cb32d02d392957d1434446e4c1bf1f58ea 6SHA1 (patch-aa) = 4ac6d1dae6b906c4f39a78eb70a5239820840923
7SHA1 (patch-ab) = beeb04eb1b987b8ed095b5551804b640fbce36dc 7SHA1 (patch-ab) = f18ee9eb9b67f66e4bb2fbfe06dc1c7d94e0bbd9
 8SHA1 (patch-ac) = 1c65a7bd85bcdda950c512fbc1329610532cd211

cvs diff -r1.6 -r1.7 pkgsrc/emulators/gxemul/patches/Attic/patch-aa (expand / switch to unified diff)

--- pkgsrc/emulators/gxemul/patches/Attic/patch-aa 2008/10/24 19:31:01 1.6
+++ pkgsrc/emulators/gxemul/patches/Attic/patch-aa 2009/07/18 18:43:56 1.7
@@ -1,43 +1,35 @@ @@ -1,43 +1,35 @@
1$NetBSD: patch-aa,v 1.6 2008/10/24 19:31:01 minskim Exp $ 1$NetBSD: patch-aa,v 1.7 2009/07/18 18:43:56 tsutsui Exp $
2 2
3--- src/promemul/arcbios.c.orig 2008-01-18 11:12:33.000000000 -0800 3A patch pulled from upstream trunk for NetBSD/arc:
4+++ src/promemul/arcbios.c 4http://gxemul.svn.sourceforge.net/viewvc/gxemul?view=rev&revision=5473
5@@ -2211,7 +2211,10 @@ static void arc_environment_setup(struct 5
6 } 6--- src/promemul/arcbios.c 2009/07/04 19:41:47
7  7+++ src/promemul/arcbios.c 2009/07/11 10:04:28
8 if (machine->machine_type == MACHINE_ARC) 8@@ -2363,20 +2363,19 @@
9- strlcat(init_bootpath, "\\", bootpath_len); 
10+ snprintf(init_bootpath + strlen(init_bootpath), 
11+ bootpath_len - strlen(init_bootpath), 
12+ "scsi(0)disk(%i)rdisk(0)partition(1)", 
13+ machine->bootdev_id); 
14  
15 CHECK_ALLOCATION(machine->bootstr = malloc(ARC_BOOTSTR_BUFLEN)); 
16  
17@@ -2362,20 +2365,17 @@ static void arc_environment_setup(struct 
18 add_environment_string(cpu, "kernname=unix", &addr); 9 add_environment_string(cpu, "kernname=unix", &addr);
19 } else { 10 } else {
20 char *tmp; 11 char *tmp;
21- size_t mlen = strlen(machine->bootarg) + 12- size_t mlen = strlen(machine->bootarg) +
22- strlen("OSLOADOPTIONS=") + 2; 13- strlen("OSLOADOPTIONS=") + 2;
23+ size_t mlen = ARC_BOOTSTR_BUFLEN; 14+ size_t mlen = ARC_BOOTSTR_BUFLEN;
24 CHECK_ALLOCATION(tmp = malloc(mlen)); 15 CHECK_ALLOCATION(tmp = malloc(mlen));
25 snprintf(tmp, mlen, "OSLOADOPTIONS=%s", machine->bootarg); 16 snprintf(tmp, mlen, "OSLOADOPTIONS=%s", machine->bootarg);
26 store_pointer_and_advance(cpu, &addr2, addr, is64bit); 
27 add_environment_string(cpu, tmp, &addr); 
28- 
29- store_pointer_and_advance(cpu, &addr2, addr, is64bit); 17- store_pointer_and_advance(cpu, &addr2, addr, is64bit);
 18- add_environment_string(cpu, tmp, &addr);
 19
 20 store_pointer_and_advance(cpu, &addr2, addr, is64bit);
30- add_environment_string(cpu, "OSLOADPARTITION=scsi(0)cdrom(6)" 21- add_environment_string(cpu, "OSLOADPARTITION=scsi(0)cdrom(6)"
31- "fdisk(0);scsi(0)disk(0)rdisk(0)partition(1)", &addr); 22- "fdisk(0);scsi(0)disk(0)rdisk(0)partition(1)", &addr);
32- 23+ add_environment_string(cpu, tmp, &addr);
 24
33 store_pointer_and_advance(cpu, &addr2, addr, is64bit); 25 store_pointer_and_advance(cpu, &addr2, addr, is64bit);
34- add_environment_string(cpu, "SYSTEMPARTITION=scsi(0)cdrom(6)" 26- add_environment_string(cpu, "SYSTEMPARTITION=scsi(0)cdrom(6)"
35- "fdisk(0);scsi(0)disk(0)rdisk(0)partition(1)", &addr); 27- "fdisk(0);scsi(0)disk(0)rdisk(0)partition(1)", &addr);
36+ snprintf(tmp, mlen, 28+ snprintf(tmp, mlen,
37+ "OSLOADPARTITION=scsi(0)disk(%d)rdisk(0)partition(1)", 29+ "OSLOADPARTITION=scsi(0)disk(%d)rdisk(0)partition(1)",
38+ machine->bootdev_id); 30+ machine->bootdev_id);
39+ add_environment_string(cpu, tmp, &addr); 31+ add_environment_string(cpu, tmp, &addr);
40+ free(tmp); 32+ free(tmp);
41 } 33 }
42  34
43 /* End the environment strings with an empty zero-terminated 35 /* End the environment strings with an empty zero-terminated

cvs diff -r1.3 -r1.4 pkgsrc/emulators/gxemul/patches/Attic/patch-ab (expand / switch to unified diff)

--- pkgsrc/emulators/gxemul/patches/Attic/patch-ab 2008/10/24 19:55:10 1.3
+++ pkgsrc/emulators/gxemul/patches/Attic/patch-ab 2009/07/18 18:43:56 1.4
@@ -1,13 +1,20 @@ @@ -1,13 +1,20 @@
1$NetBSD: patch-ab,v 1.3 2008/10/24 19:55:10 minskim Exp $ 1$NetBSD: patch-ab,v 1.4 2009/07/18 18:43:56 tsutsui Exp $
2 2
3--- src/devices/bus_pci.c.orig 2008-01-18 11:12:27.000000000 -0800 3A patch pulled from upstream trunk for NetBSD/cobalt:
4+++ src/devices/bus_pci.c 4http://gxemul.svn.sourceforge.net/viewvc/gxemul?view=rev&revision=5485
5@@ -776,6 +776,8 @@ int piix_ide_cfg_reg_write(struct pci_de 5
6 void *wdc1 = ((struct piix_ide_extra *)pd->extra)->wdc1; 6--- src/devices/bus_pci.c 2009/07/04 19:41:47
7 int enabled = 0; 7+++ src/devices/bus_pci.c 2009/07/12 11:35:33
 8@@ -974,7 +974,11 @@
 9 * netbsd/usr/src/sys/arch/cobalt/cobalt/machdep.c read_board_id()
 10 * for details.
 11 */
 12- PCI_SET_DATA(0x94, 4 << 4);
 13+ if (machine->machine_type == MACHINE_COBALT) {
 14+#define COBALT_PCIB_BOARD_ID_REG 0x94
 15+#define COBALT_QUBE2_ID 5
 16+ PCI_SET_DATA(COBALT_PCIB_BOARD_ID_REG, COBALT_QUBE2_ID << 4);
 17+ }
 18 }
8  19
9+ PCI_SET_DATA(reg, value); 20 struct vt82c586_ide_extra {
10+ 
11 switch (reg) { 
12 case PCI_COMMAND_STATUS_REG: 
13 if (value & PCI_COMMAND_IO_ENABLE) 

File Added: pkgsrc/emulators/gxemul/patches/Attic/patch-ac
$NetBSD: patch-ac,v 1.3 2009/07/18 18:43:56 tsutsui Exp $

A patch pulled from upstream trunk for NetBSD/hpcmips:
http://gxemul.svn.sourceforge.net/viewvc/gxemul?view=rev&revision=5472

--- src/devices/dev_vr41xx.c	2009/07/04 19:41:47
+++ src/devices/dev_vr41xx.c	2009/07/10 16:07:32
@@ -590,6 +590,7 @@
 			switch (relative_addr) {
 			case 0xc0:
 				odata = (tv.tv_sec & 1) << 15;
+				odata += (uint64_t)tv.tv_usec * 32768 / 1000000;
 				break;
 			case 0xc2:
 				odata = (tv.tv_sec >> 1) & 0xffff;