# 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.3.7.ebuild,v 1.8 2010/02/10 06:32:50 dirtyepic 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.6* ) 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}" epatch "${FILESDIR}/bochs-2.3.7-typos.patch" epatch "${FILESDIR}/bochs-2.3.7-gcc43.patch" # 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" } src_compile() { WX_GTK_VER=2.6 use wxwidgets && \ need-wxwidgets ansi 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-pae \ --enable-large-pages \ --enable-global-pages \ --enable-mtrr \ --enable-guest2host-tlb \ --enable-repeat-speedups \ --enable-trace-cache \ --enable-icache \ --enable-fast-function-calls \ --enable-ignore-bad-msr \ --enable-port-e9-hack \ --enable-disasm \ --enable-logging \ --enable-raw-serial \ --enable-vbe \ --enable-clgd54xx \ --enable-fpu \ --enable-vme \ --enable-alignment-check \ --enable-sep \ --enable-popcnt \ --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-mmx \ --enable-sse=2 \ --enable-3dnow \ --enable-cpu-level=6 \ --enable-smp \ --with-nogui \ --enable-xsave \ --enable-aes \ $(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 }