summaryrefslogtreecommitdiff
blob: 6a40be25bd0d363b8a84b6a85e279a06ab0365b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# Copyright 1999-2003 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/dosemu/dosemu-1.1.4.15.ebuild,v 1.4 2003/09/04 00:58:24 msterret Exp $

MAJOR_PV=${PV%.[0-9]*}
MINOR_PV=${PV##[0-9]*.}
S=${WORKDIR}/${PN}-${MAJOR_PV}
DESCRIPTION="DOS Emulator"
HOMEPAGE="http://www.dosemu.org/"
SRC_URI="mirror://sourceforge/dosemu/${PN}-freedos-bin.tgz
	mirror://sourceforge/dosemu/${PN}-${MAJOR_PV}.tgz
	http://dosemu.sourceforge.net/testing/patchset-${PV}.tgz"

LICENSE="GPL-2 | LGPL-2.1"
SLOT="0"
KEYWORDS="x86 -ppc"
IUSE="X svga"

DEPEND="X? ( virtual/x11 )
	svga? ( media-libs/svgalib )
	sys-libs/slang"

src_unpack() {
	unpack ${PN}-${MAJOR_PV}.tgz
	# do patches
	cd ${S}
	unpack patchset-${PV}.tgz
	sh tmp/do_patch || die
	# extract freedos binary
	cd ${S}/src
	unpack ${PN}-freedos-bin.tgz
}

src_compile() {

	local myflags

### mitshm will bork ./base-configure entirely, so we disable it here
	myflags="--enable-mitshm=no"
	myflags="${myflags} --enable-experimental"
	myflags="${myflags} --disable-force-slang"

### and then set build paramaters based on USE variables
	use X || myflags="${myflags} --with-x=no"
	use svga && myflags="${myflags} --enable-use-svgalib"

	econf ${myflags} || die "DOSemu Base Configuration Failed"

### We HAVE to do this, or the build will fail due to strange additional
### files in the downloaded tarball!
#	emake pristine || die "Dosemu Make Pristine Failed"

### Ok, the build tree is clean, lets make the executables, and 'dos' commands
	emake -C src || die "DOSemu Make Failed!"
	emake dosbin || die "DOSbin Make Failed"
}

src_install () {

	make DESTDIR=${D} install || die

	doman man/*.1
	rm -rf ${D}/opt/dosemu/man/

	mv ${D}/usr/share/doc/dosemu ${D}/usr/share/doc/${PF}

	# freedos tarball is needed in /usr/share/dosemu
	cp ${DISTDIR}/${PN}-freedos-bin.tgz ${D}/usr/share/dosemu
}