diff options
Diffstat (limited to 'app-emulation')
-rw-r--r-- | app-emulation/plex86/ChangeLog | 10 | ||||
-rw-r--r-- | app-emulation/plex86/Manifest | 15 | ||||
-rw-r--r-- | app-emulation/plex86/files/digest-plex86-20021117-r1 | 1 | ||||
-rw-r--r-- | app-emulation/plex86/files/plex86-20021117-hacks.patch | 62 | ||||
-rw-r--r-- | app-emulation/plex86/plex86-20021117-r1.ebuild | 77 | ||||
-rw-r--r-- | app-emulation/plex86/plex86-20021117.ebuild | 22 |
6 files changed, 168 insertions, 19 deletions
diff --git a/app-emulation/plex86/ChangeLog b/app-emulation/plex86/ChangeLog index 0b606cb07d0e..7b2a820b4ead 100644 --- a/app-emulation/plex86/ChangeLog +++ b/app-emulation/plex86/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for app-emulation/plex86 # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/plex86/ChangeLog,v 1.6 2005/03/22 23:57:16 ciaranm Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/plex86/ChangeLog,v 1.7 2005/08/20 17:38:44 vanquirius Exp $ + +*plex86-20021117-r1 (20 Aug 2005) + + 20 Aug 2005; Marcelo Goes <vanquirius@gentoo.org> + +files/plex86-20021117-hacks.patch, plex86-20021117.ebuild, + +plex86-20021117-r1.ebuild: + Attempting to fix bug 54526. Fixed malign warnings in -r0, added a DANGEROUS + patch in -r1 to allow this thing to compile. 22 Mar 2005; Ciaran McCreesh <ciaranm@gentoo.org> plex86-20021117.ebuild: Fix einfo, bug #70868 diff --git a/app-emulation/plex86/Manifest b/app-emulation/plex86/Manifest index 12c718f2d1f1..3bfc71ca6b8a 100644 --- a/app-emulation/plex86/Manifest +++ b/app-emulation/plex86/Manifest @@ -1,13 +1,6 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - -MD5 8b38415e0405fd15f01ba8ceed7ee247 plex86-20021117.ebuild 2048 +MD5 bff6bbce05eee62d7e38fa84b34e2b80 plex86-20021117.ebuild 2236 +MD5 fb4eb6e99ed0447850cd4e3ae2a5fa14 plex86-20021117-r1.ebuild 2331 MD5 2d88eda5a2055227d70d0f0f5e121fb2 ChangeLog 599 +MD5 63c64bc0ff07447e2a81fa51d6bebc4c files/plex86-20021117-hacks.patch 1848 +MD5 f69edd2779b3ded0aca117efae08365e files/digest-plex86-20021117-r1 68 MD5 f69edd2779b3ded0aca117efae08365e files/digest-plex86-20021117 68 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.4.1 (GNU/Linux) - -iD8DBQFCQLC+LLFUmVNQ7rkRAmP/AKCLoa2VefYorybK+SDKeecWs191awCgsYa8 -QY0UR5TzJTQ0s52BhQS89K0= -=qV22 ------END PGP SIGNATURE----- diff --git a/app-emulation/plex86/files/digest-plex86-20021117-r1 b/app-emulation/plex86/files/digest-plex86-20021117-r1 new file mode 100644 index 000000000000..d1343595a836 --- /dev/null +++ b/app-emulation/plex86/files/digest-plex86-20021117-r1 @@ -0,0 +1 @@ +MD5 bdc42e3d5b2af2eeece6e307a3d77085 plex86-20021117.tar.bz2 817512 diff --git a/app-emulation/plex86/files/plex86-20021117-hacks.patch b/app-emulation/plex86/files/plex86-20021117-hacks.patch new file mode 100644 index 000000000000..63de9c41c4bf --- /dev/null +++ b/app-emulation/plex86/files/plex86-20021117-hacks.patch @@ -0,0 +1,62 @@ +--- plex86-20021117.orig/kernel/host-linux.c 2005-08-20 12:52:20.000000000 -0300 ++++ plex86-20021117/kernel/host-linux.c 2005-08-20 14:05:50.000000000 -0300 +@@ -30,10 +30,7 @@ + #include <linux/fs.h> + #include <linux/mm.h> + #include <linux/proc_fs.h> +-#include <linux/wrapper.h> + #include <linux/version.h> +-#include <asm/irq.h> +- + + #ifndef VERSION_CODE + # define VERSION_CODE(vers,rel,seq) ( ((vers)<<16) | ((rel)<<8) | (seq) ) +@@ -45,7 +42,10 @@ + + #include <asm/io.h> + +- ++/* Vanquirius's hacks */ ++typedef struct devfs_entry *devfs_handle_t; ++#define DEVFS_FL_NONE 0x000 ++#define DEVFS_FL_DEFAULT DEVFS_FL_NONE + + /************************************************************************/ + /* Compatibility macros for older kernels */ +@@ -423,7 +423,8 @@ + /* Do *not* free pages that are still mapped to user space! */ + #if LINUX_VERSION_CODE >= VERSION_CODE(2,3,99) + /* Not sure when this changed. If you know, email us. */ +- if (inode->i_data.i_mmap != NULL) ++ /* DANGEROUS hack */ ++ /* if (inode->i_data.i_mmap != NULL) */ + #else + if (inode->i_mmap != NULL) + #endif +@@ -902,13 +903,10 @@ + * hence we rely on the fact that Linux lets at least one page of + * virtual address space unused after the end of the module. + */ +-#ifdef THIS_MODULE +- void *start_addr = THIS_MODULE; +- unsigned size = THIS_MODULE->size; +-#else +- void *start_addr = &mod_use_count_; ++ ++ /* Below you will find a DANGEROUS hack */ ++ void *start_addr; // = &mod_use_count_; + unsigned size = 0x10000000; /* Actual size determined below */ +-#endif + + int n_pages; + +@@ -1040,7 +1038,8 @@ + unsigned + host_idle(void) + { +- if (NEED_RESCHED) ++/* Another DANGEROUS hack */ ++// if (NEED_RESCHED) + schedule(); + + /* return !current_got_fatal_signal(); */ diff --git a/app-emulation/plex86/plex86-20021117-r1.ebuild b/app-emulation/plex86/plex86-20021117-r1.ebuild new file mode 100644 index 000000000000..f9f0158a6670 --- /dev/null +++ b/app-emulation/plex86/plex86-20021117-r1.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/plex86/plex86-20021117-r1.ebuild,v 1.1 2005/08/20 17:38:44 vanquirius Exp $ + +inherit eutils + +DESCRIPTION="Plex86 is THE opensource free-software alternative for VMWare, VirtualPC, and other IA-32 on IA-32 \"Virtual PC products.\"" +HOMEPAGE="http://savannah.gnu.org/projects/plex86/ http://sourceforge.net/projects/plex86/" +SRC_URI="http://savannah.nongnu.org/download/plex86/${P}.tar.bz2" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~x86" +IUSE="X sdl" + +RDEPEND=">=sys-libs/ncurses-5.2-r7 + X? ( virtual/x11 ) + sdl? ( >=media-libs/libsdl-1.2.4 )" +DEPEND="${RDEPEND} + >=sys-apps/sed-4" + +src_unpack() { + unpack ${A}; cd ${S} + + # fix malign warnings + sed -e 's:malign:falign:g' \ + -i kernel/{.,dt,iodev,emulation}/Makefile.in || die + + # fix typo (bug submitted) + sed -i \ + -e s/'inclide'/'include'/ user/plugins/bochs/iodev/eth_fbsd.cc \ + || die "sed eth_fbsd.cc failed" + + # DANGEROUS patch to allow compilation + epatch ${FILESDIR}/${P}-hacks.patch +} + +src_compile() { + MY_CONF="--with-Linux --enable-cdrom --enable-split-hd --enable-pci --enable-vbe --enable-sb16=linux --enable-instrumentation" + # --enable-ne2000 not working at the moment + + MY_GUI="curses" + use X && MY_GUI="x" + use sdl && MY_GUI="sdl" + use sdl && export SDL_CFLAGS="`sdl-config --cflags`" + + use X && MY_CONF="${MY_CONF} --with-x --with-linux-source=/usr/src/linux" + MY_CONF="${MY_CONF} --with-gui=${MY_GUI}" + + ./configure \ + --host=${CHOST} \ + --prefix=/usr \ + --infodir=/usr/share/info \ + --mandir=/usr/share/man ${MY_CONF} || die "./configure failed" + + emake || die "emake failed" +} + +src_install() { + #make DESTDIR=${D} install || die + # for now just this: + dodir /opt/${P} + cp -r * ${D}/opt/${P} || die "cp failed" +} + +pkg_postinst() { + echo + ewarn "This code is EXTREMELY EXPERIMENTAL, and may well result in a" + ewarn "SYSTEM CRASH, and who knows what other ill effects. RUN THIS" + ewarn "SOFTWARE AT YOUR OWN RISK. As a precaution, do not attempt to" + ewarn "run this software on a system with important data on it, and" + ewarn "make liberal use of the sync command! Expect to have to use" + ewarn "the power button." + echo + einfo "Contact me (lordvan@lordvan.com) if you encounter any problems." + echo +} diff --git a/app-emulation/plex86/plex86-20021117.ebuild b/app-emulation/plex86/plex86-20021117.ebuild index 041f92c25543..7684e1467387 100644 --- a/app-emulation/plex86/plex86-20021117.ebuild +++ b/app-emulation/plex86/plex86-20021117.ebuild @@ -1,9 +1,9 @@ # Copyright 1999-2005 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/plex86/plex86-20021117.ebuild,v 1.11 2005/03/22 23:57:16 ciaranm Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/plex86/plex86-20021117.ebuild,v 1.12 2005/08/20 17:38:44 vanquirius Exp $ DESCRIPTION="Plex86 is THE opensource free-software alternative for VMWare, VirtualPC, and other IA-32 on IA-32 \"Virtual PC products.\"" -HOMEPAGE="http://savannah.gnu.org/projects/plex86/" +HOMEPAGE="http://savannah.gnu.org/projects/plex86/ http://sourceforge.net/projects/plex86/" SRC_URI="http://savannah.nongnu.org/download/plex86/${P}.tar.bz2" LICENSE="LGPL-2.1" @@ -17,6 +17,19 @@ RDEPEND=">=sys-libs/ncurses-5.2-r7 DEPEND="${RDEPEND} >=sys-apps/sed-4" +src_unpack() { + unpack ${A}; cd ${S} + + # fix malign warnings + sed -e 's:malign:falign:g' \ + -i kernel/{.,dt,iodev,emulation}/Makefile.in || die + + # fix typo (bug submitted) + sed -i \ + -e s/'inclide'/'include'/ user/plugins/bochs/iodev/eth_fbsd.cc \ + || die "sed eth_fbsd.cc failed" +} + src_compile() { MY_CONF="--with-Linux --enable-cdrom --enable-split-hd --enable-pci --enable-vbe --enable-sb16=linux --enable-instrumentation" # --enable-ne2000 not working at the moment @@ -29,11 +42,6 @@ src_compile() { use X && MY_CONF="${MY_CONF} --with-x --with-linux-source=/usr/src/linux" MY_CONF="${MY_CONF} --with-gui=${MY_GUI}" - # fix typo (bug submitted) - sed -i \ - -e s/'inclide'/'include'/ user/plugins/bochs/iodev/eth_fbsd.cc \ - || die "sed eth_fbsd.cc failed" - ./configure \ --host=${CHOST} \ --prefix=/usr \ |