diff options
-rw-r--r-- | emulators/bochs/Makefile | 69 | ||||
-rw-r--r-- | emulators/bochs/distinfo | 2 | ||||
-rw-r--r-- | emulators/bochs/files/patch-ad | 23 | ||||
-rw-r--r-- | emulators/bochs/files/patch-ae | 23 | ||||
-rw-r--r-- | emulators/bochs/files/patch-font::fonts.dir | 8 | ||||
-rw-r--r-- | emulators/bochs/files/patch-iodev::soundlnx.cc | 14 | ||||
-rw-r--r-- | emulators/bochs/files/patch-iodev::soundlnx.h | 14 | ||||
-rw-r--r-- | emulators/bochs/pkg-comment | 2 | ||||
-rw-r--r-- | emulators/bochs/pkg-descr | 15 | ||||
-rw-r--r-- | emulators/bochs/pkg-message | 8 | ||||
-rw-r--r-- | emulators/bochs/pkg-plist | 71 |
11 files changed, 162 insertions, 87 deletions
diff --git a/emulators/bochs/Makefile b/emulators/bochs/Makefile index 82a7c1d..75ac5c2 100644 --- a/emulators/bochs/Makefile +++ b/emulators/bochs/Makefile @@ -7,46 +7,65 @@ # PORTNAME= bochs -PORTVERSION= 2000.0325 +PORTVERSION= 1.1.2 +PORTEPOCH= 1 CATEGORIES= emulators -MASTER_SITES= ftp://ftp.bochs.com/bochs/ -DISTNAME= ${PORTNAME}-${PORTVERSION:S/./_/}a +MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} \ + ftp://ftp.bochs.com/bochs/ +MASTER_SITE_SUBDIR= ${PORTNAME} -MAINTAINER= ports@FreeBSD.org - -VGABIOS= VGABIOS-elpin-2.20 -BIOS= BIOS-bochs-990925a +MAINTAINER= clefevre@poboxes.com USE_XLIB= yes GNU_CONFIGURE= yes -CONFIGURE_ARGS= --enable-cpu-level=4 \ - --enable-vga \ - --enable-fpu \ - --with-x11 --prefix=${PREFIX} +CONFIGURE_ARGS= --enable-cpu-level=5 \ + --enable-cdrom +CFLAGS+= -fno-rtti -fno-exceptions -fomit-frame-pointer +PKGMESSAGE= ${WRKDIR}/pkg-message -.ifdef(WANT_DEBUGGER) -CONFIGURE_ARGS+= --enable-debugger --enable-disasm +.ifdef(WITH_BOCHS_DEBUGGER) +CONFIGURE_ARGS+= --enable-debugger --enable-disasm +.endif +.ifdef(WITH_BOCHS_X86_DEBUGGER) +CONFIGURE_ARGS+= --enable-x86-debugger +.endif +.ifdef(WITH_SOUND) +CONFIGURE_ARGS+= --enable-sb16=linux .endif pre-configure: @${PERL} -pi.fbsd \ - -e 's|^vgaromimage:\sbios/|vgaromimage: ${PREFIX}/lib/bochs/bios/| ;' \ - -e 's|^romimage:\sfile=bios/|romimage: file=${PREFIX}/lib/bochs/bios/|' \ + -e 's|^vgaromimage:\sbios/|vgaromimage: ${PREFIX}/share/bochs/bios/| ;' \ + -e 's|^romimage:\sfile=bios/|romimage: file=${PREFIX}/share/bochs/bios/|' \ ${WRKSRC}/.bochsrc +post-build: + ${GZIP_CMD} < ${WRKSRC}/font/vga.pcf > ${WRKSRC}/font/vga.pcf.gz + (${ECHO} '#!/bin/sh'; \ + ${ECHO} '${X11BASE}/bin/xset fp+ ${PREFIX}/share/bochs/font'; \ + ${ECHO} 'exec ${PREFIX}/bin/bochs-bin "$$@"') > ${WRKDIR}/bochs.sh + do-install: - ${INSTALL_PROGRAM} ${WRKSRC}/bochs ${PREFIX}/bin - @${MKDIR} ${PREFIX}/lib/bochs - ${INSTALL_DATA} ${WRKSRC}/.bochsrc ${PREFIX}/lib/bochs/bochsrc.sample - @${MKDIR} ${PREFIX}/lib/bochs/bios - ${INSTALL_DATA} ${WRKSRC}/bios/${VGABIOS} \ - ${PREFIX}/lib/bochs/bios - ${INSTALL_DATA} ${WRKSRC}/bios/${BIOS} \ - ${PREFIX}/lib/bochs/bios + ${INSTALL_PROGRAM} ${WRKSRC}/bochs ${PREFIX}/bin/bochs-bin + ${INSTALL_SCRIPT} ${WRKDIR}/bochs.sh ${PREFIX}/bin/bochs + @${MKDIR} ${PREFIX}/share/bochs + ${INSTALL_DATA} ${WRKSRC}/.bochsrc ${PREFIX}/share/bochs/dot.bochsrc + @${MKDIR} ${PREFIX}/share/bochs/bios + ${INSTALL_DATA} ${WRKSRC}/bios/VGABIOS-* \ + ${PREFIX}/share/bochs/bios + ${INSTALL_DATA} ${WRKSRC}/bios/BIOS-* \ + ${PREFIX}/share/bochs/bios + @${MKDIR} ${PREFIX}/share/bochs/font + ${INSTALL_DATA} ${WRKSRC}/font/vga.pcf.gz ${WRKSRC}/font/fonts.dir \ + ${PREFIX}/share/bochs/font .if !defined(NOPORTDOCS) @${MKDIR} ${PREFIX}/share/doc/bochs - ${INSTALL_MAN} ${WRKSRC}/docs-html/*.html ${PREFIX}/share/doc/bochs - ${INSTALL_MAN} ${WRKSRC}/docs-html/*.gif ${PREFIX}/share/doc/bochs + ${INSTALL_MAN} ${WRKSRC}/docs-html/* ${PREFIX}/share/doc/bochs .endif +post-install: + @${SED} 's|%%PREFIX%%|${PREFIX}|g' ${PKGDIR}/pkg-message > \ + ${PKGMESSAGE} + @${CAT} ${PKGMESSAGE} + .include <bsd.port.mk> diff --git a/emulators/bochs/distinfo b/emulators/bochs/distinfo index b0b1397..fd992b5 100644 --- a/emulators/bochs/distinfo +++ b/emulators/bochs/distinfo @@ -1 +1 @@ -MD5 (bochs-2000_0325a.tar.gz) = 6a6fc6794b81c88d71037f17c918a880 +MD5 (bochs-1.1.2.tar.gz) = 3790082c1736aac66b3b25a95ba78891 diff --git a/emulators/bochs/files/patch-ad b/emulators/bochs/files/patch-ad index 81643e2..1c52498 100644 --- a/emulators/bochs/files/patch-ad +++ b/emulators/bochs/files/patch-ad @@ -1,15 +1,18 @@ ---- iodev/cdrom.cc.orig Thu Nov 11 21:44:52 1999 -+++ iodev/cdrom.cc Sun Jan 16 10:47:05 2000 -@@ -34,7 +34,7 @@ + +$FreeBSD$ + +--- iodev/cdrom.cc.orig Wed May 16 09:46:26 2001 ++++ iodev/cdrom.cc Wed May 30 01:56:06 2001 +@@ -50,7 +50,7 @@ } - #endif + #endif /* __sun */ -#ifdef __OpenBSD__ +#if (defined(__OpenBSD__) || defined(__FreeBSD__)) - // Here is a diff for cdrom.cc which adds support for OpenBSD. - // - // Note that since the i386 sys/disklabel.h contains code which c++ considers -@@ -134,7 +134,7 @@ + // OpenBSD pre version 2.7 may require extern "C" { } structure around + // all the includes, because the i386 sys/disklabel.h contains code which + // c++ considers invalid. +@@ -148,7 +148,7 @@ // some ioctl() calls to really eject the CD as well. if (fd >= 0) { @@ -18,7 +21,7 @@ (void) ioctl (fd, CDIOCALLOW); if (ioctl (fd, CDIOCEJECT) < 0) fprintf(stderr, "#eject_cdrom: eject returns error.\n"); -@@ -240,7 +240,7 @@ +@@ -258,7 +258,7 @@ return true; } @@ -27,7 +30,7 @@ { struct ioc_toc_header h; struct ioc_read_toc_entry t; -@@ -366,6 +366,53 @@ +@@ -396,6 +396,53 @@ fprintf(stderr, "#cdrom: capacity: %u\n", lp.d_secperunit); return(lp.d_secperunit); diff --git a/emulators/bochs/files/patch-ae b/emulators/bochs/files/patch-ae index e566225..6536a24 100644 --- a/emulators/bochs/files/patch-ae +++ b/emulators/bochs/files/patch-ae @@ -1,11 +1,12 @@ ---- debug/lexer.c.orig Wed Feb 2 17:00:44 2000 -+++ debug/lexer.c Wed Feb 2 17:00:02 2000 -@@ -1272,7 +1272,7 @@ - case 92: - YY_RULE_SETUP - #line 108 "lexer.l" --{ bxlval.ulval = strtoull(bxtext, NULL, 10); return(BX_TOKEN_LONG_NUMERIC); } -+{ bxlval.ulval = strtouq(bxtext, NULL, 10); return(BX_TOKEN_LONG_NUMERIC); } - YY_BREAK - case 93: - YY_RULE_SETUP +$FreeBSD$ +--- debug/lexer.l.orig Tue Apr 10 03:57:02 2001 ++++ debug/lexer.l Sun May 20 13:25:29 2001 +@@ -105,7 +105,7 @@ + \/[0-9]+ { bxlval.sval = strdup(bxtext); return(BX_TOKEN_XFORMAT); } + 0x[0-9a-fA-F]+ { bxlval.uval = strtoul(bxtext+2, NULL, 16); return(BX_TOKEN_NUMERIC); } + 0[0-7]+ { bxlval.uval = strtoul(bxtext+1, NULL, 8); return(BX_TOKEN_NUMERIC); } +-[0-9]+L { bxlval.ulval = strtoull(bxtext, NULL, 10); return(BX_TOKEN_LONG_NUMERIC); } ++[0-9]+L { bxlval.ulval = strtouq(bxtext, NULL, 10); return(BX_TOKEN_LONG_NUMERIC); } + [0-9]+ { bxlval.uval = strtoul(bxtext, NULL, 10); return(BX_TOKEN_NUMERIC); } + $[a-zA-Z_][a-zA-Z0-9_]* { bxlval.sval = strdup(bxtext); return(BX_TOKEN_SYMBOLNAME); } + \n { return('\n'); } diff --git a/emulators/bochs/files/patch-font::fonts.dir b/emulators/bochs/files/patch-font::fonts.dir new file mode 100644 index 0000000..5c5409b8 --- /dev/null +++ b/emulators/bochs/files/patch-font::fonts.dir @@ -0,0 +1,8 @@ + +$FreeBSD$ + +--- /dev/null Wed May 30 02:21:05 2001 ++++ font/fonts.dir Wed May 30 02:24:10 2001 +@@ -0,0 +1,2 @@ ++1 ++vga.pcf.gz vga diff --git a/emulators/bochs/files/patch-iodev::soundlnx.cc b/emulators/bochs/files/patch-iodev::soundlnx.cc new file mode 100644 index 0000000..9b66572 --- /dev/null +++ b/emulators/bochs/files/patch-iodev::soundlnx.cc @@ -0,0 +1,14 @@ + +$FreeBSD$ + +--- iodev/soundlnx.cc 2001/05/30 22:19:00 1.1 ++++ iodev/soundlnx.cc 2001/05/30 22:19:34 +@@ -22,7 +22,7 @@ + + // This file (SOUNDLNX.CC) written and donated by Josef Drexler + +-#if defined(linux) ++#if (defined(linux) || defined(__FreeBSD__)) + + #include "bochs.h" + diff --git a/emulators/bochs/files/patch-iodev::soundlnx.h b/emulators/bochs/files/patch-iodev::soundlnx.h new file mode 100644 index 0000000..148e5f6 --- /dev/null +++ b/emulators/bochs/files/patch-iodev::soundlnx.h @@ -0,0 +1,14 @@ + +$FreeBSD$ + +--- iodev/soundlnx.h.orig Tue Apr 10 05:20:00 2001 ++++ iodev/soundlnx.h Thu May 31 01:07:43 2001 +@@ -23,7 +23,7 @@ + // This file (SOUNDLNX.H) written and donated by Josef Drexler + + +-#if defined(linux) ++#if (defined(linux) || defined(__FreeBSD__)) + + #include "bochs.h" + diff --git a/emulators/bochs/pkg-comment b/emulators/bochs/pkg-comment index 2945c9e..f2138ab 100644 --- a/emulators/bochs/pkg-comment +++ b/emulators/bochs/pkg-comment @@ -1 +1 @@ -IBM PC, i386, BIOS, and AT hardware emulator that runs DOS, Win 95, and more +An IA-32 (x86) PC emulator that runs DOS, Win 95, and more diff --git a/emulators/bochs/pkg-descr b/emulators/bochs/pkg-descr index dcc5050..fcf811a 100644 --- a/emulators/bochs/pkg-descr +++ b/emulators/bochs/pkg-descr @@ -1,5 +1,12 @@ -Bochs is a portable x86 PC emulation software package that emulates -enough of the x86 CPU, related AT hardware, and BIOS to run DOS, -Windows '95, Minix 2.0, and other OS's, all on your workstation. +Bochs is a highly portable open source IA-32 (x86) PC emulator written in +C++, that runs on most popular platforms. It includes emulation of the +Intel x86 CPU, common I/O devices, and a custom BIOS. Currently, bochs can +be compiled to emulate a 386, 486 or Pentium CPU. -WWW: http://www.bochs.com/ +Bochs is capable of running many Operating Systems inside the emulation +including Linux, Windows 95, DOS, and Windows NT 4. + +Bochs was written by Kevin Lawton and is currently maintained by the Bochs +project. + +WWW: http://bochs.sourceforge.net/ diff --git a/emulators/bochs/pkg-message b/emulators/bochs/pkg-message index c1c3492..69a602f 100644 --- a/emulators/bochs/pkg-message +++ b/emulators/bochs/pkg-message @@ -1,3 +1,5 @@ -Bochs requires a .bochsrc file to be present in either your current -directory or your home directory before starting. A sample of the -.bochsrc file can be found in /usr/local/lib/bochs/bochsrc.sample. +--------------------------------------------------------------------- + Bochs requires a .bochsrc file to be present in either your current + directory or your home directory before starting. A sample of the + .bochsrc file can be found in %%PREFIX%%/share/bochs/dot.bochsrc. +--------------------------------------------------------------------- diff --git a/emulators/bochs/pkg-plist b/emulators/bochs/pkg-plist index e68033f..980ecfa 100644 --- a/emulators/bochs/pkg-plist +++ b/emulators/bochs/pkg-plist @@ -1,33 +1,40 @@ bin/bochs -lib/bochs/bios/VGABIOS-elpin-2.20 -lib/bochs/bios/BIOS-bochs-990925a -lib/bochs/bochsrc.sample -share/doc/bochs/3rdparty.license.html -share/doc/bochs/DOS.html -share/doc/bochs/Linux.html -share/doc/bochs/Minix.html -share/doc/bochs/OldWindows95.html -share/doc/bochs/Windows31.html -share/doc/bochs/Windows95.html -share/doc/bochs/changelog.html -share/doc/bochs/codingguidelines.html -share/doc/bochs/configure.html -share/doc/bochs/construction.html -share/doc/bochs/cosimulation.html -share/doc/bochs/debugger.html -share/doc/bochs/developers.html -share/doc/bochs/faq.html -share/doc/bochs/features.html -share/doc/bochs/fpu.html -share/doc/bochs/guestNT.html -share/doc/bochs/index.html -share/doc/bochs/install.html -share/doc/bochs/instrumentation.html -share/doc/bochs/mtools.html -share/doc/bochs/sound.html -share/doc/bochs/undercon.gif -share/doc/bochs/whatisbochs.html -share/doc/bochs/win32.html -@dirrm lib/bochs/bios -@dirrm lib/bochs -@dirrm share/doc/bochs +bin/bochs-bin +share/bochs/bios/BIOS-bochs-990925a +share/bochs/bios/VGABIOS-elpin-2.40 +share/bochs/bios/VGABIOS-elpin-LICENSE +share/bochs/dot.bochsrc +share/bochs/font/fonts.dir +share/bochs/font/vga.pcf.gz +%%PORTDOCS%%share/doc/bochs/00README +%%PORTDOCS%%share/doc/bochs/3rdparty.license.html +%%PORTDOCS%%share/doc/bochs/Linux.html +%%PORTDOCS%%share/doc/bochs/Minix.html +%%PORTDOCS%%share/doc/bochs/OldWindows95.html +%%PORTDOCS%%share/doc/bochs/Windows95.html +%%PORTDOCS%%share/doc/bochs/changelog.html +%%PORTDOCS%%share/doc/bochs/codingguidelines.html +%%PORTDOCS%%share/doc/bochs/configure.html +%%PORTDOCS%%share/doc/bochs/construction.html +%%PORTDOCS%%share/doc/bochs/cosimulation.html +%%PORTDOCS%%share/doc/bochs/cvs-status.html +%%PORTDOCS%%share/doc/bochs/cvs-structure.txt +%%PORTDOCS%%share/doc/bochs/debugger.html +%%PORTDOCS%%share/doc/bochs/developers.html +%%PORTDOCS%%share/doc/bochs/faq.html +%%PORTDOCS%%share/doc/bochs/features.html +%%PORTDOCS%%share/doc/bochs/fpu.html +%%PORTDOCS%%share/doc/bochs/guestNT.html +%%PORTDOCS%%share/doc/bochs/index.html +%%PORTDOCS%%share/doc/bochs/install.html +%%PORTDOCS%%share/doc/bochs/instrumentation.html +%%PORTDOCS%%share/doc/bochs/mtools.html +%%PORTDOCS%%share/doc/bochs/random.txt +%%PORTDOCS%%share/doc/bochs/sound.html +%%PORTDOCS%%share/doc/bochs/undercon.gif +%%PORTDOCS%%share/doc/bochs/whatisbochs.html +%%PORTDOCS%%share/doc/bochs/win32.html +%%PORTDOCS%%@dirrm share/doc/bochs +@dirrm share/bochs/font +@dirrm share/bochs/bios +@dirrm share/bochs |