diff options
-rw-r--r-- | app-emulation/bochs/Manifest | 4 | ||||
-rw-r--r-- | app-emulation/bochs/bochs-2.4.5.ebuild | 136 | ||||
-rw-r--r-- | app-emulation/bochs/files/linux-3.patch | 32 |
3 files changed, 172 insertions, 0 deletions
diff --git a/app-emulation/bochs/Manifest b/app-emulation/bochs/Manifest new file mode 100644 index 0000000..b4cba67 --- /dev/null +++ b/app-emulation/bochs/Manifest @@ -0,0 +1,4 @@ +AUX linux-3.patch 1045 RMD160 4bcb7b205ab9b8649c97a0365dd9ec2f0a33cbe2 SHA1 53042a7f62a8c7e05761631bacb352a75768e7bc SHA256 109baf78a6cc090f91a1d17bcfe6e0cbc5ee0a772fd05db9d624dc90d61d1dfc +DIST bochs-2.4.5.tar.gz 4059598 RMD160 a5a52d8f58b8ad7b1d544d4f89043244d99fa242 SHA1 e334d31efd79c80454018c9cdafaa0eb75cb018a SHA256 b948622a364c2e7da4221a6a4640ba2efa68422e1411ac377c69d37f46f67616 +DIST dlxlinux4.tar.gz 1504868 RMD160 29fd31dd0f77edacecabd9f053206a486635e7f1 SHA1 b3f441cd71c54c71a8c21aa405e949bde02c1783 SHA256 68b35f850ce69f4050ed85064e15d756245d57e84ddc1d52678b0e2a97dbf73e +EBUILD bochs-2.4.5.ebuild 2949 RMD160 a1e1055abe7d127df002427898d6a10e83a1f99c SHA1 cdbf4cf4e2bcd64e5deecf7ca9b13774781c5947 SHA256 4c99077ab4c72d5e6bb676518bd1e03b3b11273772baa71477ae70861fad38d5 diff --git a/app-emulation/bochs/bochs-2.4.5.ebuild b/app-emulation/bochs/bochs-2.4.5.ebuild new file mode 100644 index 0000000..3491c70 --- /dev/null +++ b/app-emulation/bochs/bochs-2.4.5.ebuild @@ -0,0 +1,136 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/bochs/bochs-2.4.5.ebuild,v 1.1 2010/09/04 09:22:32 lu_zero Exp $ + +inherit eutils wxwidgets + +DESCRIPTION="a LGPL-ed pc emulator" +HOMEPAGE="http://bochs.sourceforge.net/" +SRC_URI="mirror://sourceforge/bochs/${P}.tar.gz + http://bochs.sourceforge.net/guestos/dlxlinux4.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ppc ~sparc ~x86" +IUSE="X debugger readline usb wxwidgets svga sdl ncurses vnc acpi" + +RDEPEND="X? ( x11-libs/libICE + x11-libs/libSM + x11-libs/libX11 + x11-libs/libXpm ) + sdl? ( media-libs/libsdl ) + svga? ( media-libs/svgalib ) + wxwidgets? ( =x11-libs/wxGTK-2.8* ) + readline? ( sys-libs/readline ) + ncurses? ( sys-libs/ncurses )" + +DEPEND="${RDEPEND} + X? ( x11-proto/xproto ) + >=sys-apps/sed-4 + >=app-text/opensp-1.5" + +src_unpack() { + unpack "${P}.tar.gz" + cd "${S}" + + # we already downloaded dlxlinux4.tar.gz so let the Makefile cp it instead + # of downloading it again + sed -i \ + -e "s:\$(WGET) \$(DLXLINUX_TAR_URL):cp ${DISTDIR}/dlxlinux4.tar.gz .:" \ + Makefile.in || \ + die "sed Makefile.in failed" + epatch "${FILESDIR}"/linux-3.patch +} + +src_compile() { + WX_GTK_VER=2.8 + + use wxwidgets && \ + need-wxwidgets unicode + + use x86 && \ + myconf="--enable-idle-hack --enable-fast-function-calls" + + use amd64 && \ + myconf="--enable-x86-64" + + use wxwidgets && \ + myconf="${myconf} --with-wx" + use wxwidgets || \ + myconf="${myconf} --without-wx" + + use vnc && \ + myconf="${myconf} --with-rfb" + + use X && \ + myconf="${myconf} --with-x11" + + use ncurses && \ + myconf="${myconf} --with-term" + + # --enable-all-optimizations causes bus error on sparc :( + use sparc || \ + myconf="${myconf} --enable-all-optimizations" + + econf \ + --enable-repeat-speedups \ + --enable-trace-cache \ + --enable-fast-function-calls \ + --enable-disasm \ + --enable-logging \ + --enable-raw-serial \ + --enable-vbe \ + --enable-clgd54xx \ + --enable-alignment-check \ + --enable-monitor-mwait \ + --enable-gameport \ + --enable-iodebug \ + --prefix=/usr \ + --enable-ne2000 \ + --enable-sb16=linux \ + --enable-plugins \ + --enable-cdrom \ + --enable-pci \ + --enable-pcidev \ + --enable-pnic \ + --enable-cpu-level=6 \ + --enable-smp \ + --with-nogui \ + $(use_enable usb) \ + $(use_enable readline) \ + $(use_enable debugger) \ + $(use_with X) \ + $(use_with sdl) \ + $(use_with svga) \ + $(use_enable acpi) \ + ${myconf} || \ + die "econf failed" + + emake || die "emake failed" +} + +src_install() { + make DESTDIR="${D}" install unpack_dlx || die "make install failed" + + # workaround + make prefix="${D}/usr" install_dlx + + dodoc \ + CHANGES \ + PARAM_TREE.txt \ + README \ + README-plugins \ + TESTFORM.txt \ + TODO || \ + die "doco failed" + + if [ use vnc ] + then + dodoc README.rfb || die "dodoc failed" + fi + + if [ use wxwidgets ] + then + dodoc README-wxWindows || die "dodoc failed" + fi +} diff --git a/app-emulation/bochs/files/linux-3.patch b/app-emulation/bochs/files/linux-3.patch new file mode 100644 index 0000000..998222b --- /dev/null +++ b/app-emulation/bochs/files/linux-3.patch @@ -0,0 +1,32 @@ +--- a/configure.in 2010-04-25 09:57:19.000000000 +0200 ++++ b/configure.in 2011-10-23 14:00:04.000000000 +0200 +@@ -699,8 +699,12 @@ + PCIDEV_MODULE_MAKE_ALL="all-kernel26" + KERNEL_MODULE_SUFFIX="ko" + ;; ++ 3*) ++ PCIDEV_MODULE_MAKE_ALL="all-kernel26" ++ KERNEL_MODULE_SUFFIX="ko" ++ ;; + *) +- AC_MSG_ERROR([Linux kernel 2.4 or 2.6 is required]) ++ AC_MSG_ERROR([Linux kernel 2.4, 2.6 or 3 is required]) + ;; + esac + KERNELDIR="/lib/modules/$linux_version/build" +--- a/configure 2010-04-25 09:58:15.000000000 +0200 ++++ b/configure 2011-10-23 14:09:40.000000000 +0200 +@@ -33561,8 +33561,12 @@ + PCIDEV_MODULE_MAKE_ALL="all-kernel26" + KERNEL_MODULE_SUFFIX="ko" + ;; ++ 3*) ++ PCIDEV_MODULE_MAKE_ALL="all-kernel26" ++ KERNEL_MODULE_SUFFIX="ko" ++ ;; + *) +- { { echo "$as_me:$LINENO: error: Linux kernel 2.4 or 2.6 is required" >&5 ++ { { echo "$as_me:$LINENO: error: Linux kernel 2.4, 2.6 or 3 is required" >&5 + echo "$as_me: error: Linux kernel 2.4 or 2.6 is required" >&2;} + { (exit 1); exit 1; }; } + ;; |