blob: d2a47808dbede5e3433f0c94d7b0ba89ba44f5eb (
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/mol/mol-0.9.71.ebuild,v 1.2 2006/10/28 19:54:25 josejx Exp $
inherit flag-o-matic eutils linux-mod
DESCRIPTION="MOL (Mac-on-Linux) lets PPC users run MacOS (X) under Linux (rsync snapshot)"
HOMEPAGE="http://mac-on-linux.sourceforge.net/"
SRC_URI="mirror://sourceforge/mac-on-linux/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="-* ppc"
IUSE="vnc alsa oss fbcon X oldworld sheep debug dga usb pci"
MAKEOPTS="${MAKEOPTS} -j1"
RDEPEND="net-misc/dhcp
net-firewall/iptables
alsa? ( virtual/alsa )
vnc? ( net-misc/vnc )
X? ( || ( ( x11-libs/libXext
dga? ( x11-libs/libXxf86dga )
)
virtual/x11
)
)"
DEPEND="${RDEPEND}
X? ( || ( ( x11-libs/libXt
x11-proto/xextproto
dga? ( x11-proto/xf86dgaproto )
)
virtual/x11
)
)"
MODULE_NAMES="mol(mol:${S}/src/kmod/Linux)
sheep(net:${S}/src/netdriver)"
pkg_setup() {
echo
einfo "If you want to use MOL fullscreen on a virtual console"
einfo "be sure to have the USE-flag \"fbcon\" set!"
echo
linux-mod_pkg_setup
}
src_unpack() {
unpack ${A}
cd ${S}
# PCI Debugging Patch
if use debug; then
epatch ${FILESDIR}/${PN}-pciproxy-dump.patch
fi
}
src_compile() {
filter-flags -fsigned-char
append-flags -D_FILE_OFFSET_BITS=64
append-flags -D_LARGE_FILES
export KERNEL_SOURCE="/usr/src/${FK}"
export LDFLAGS=""
# initialize all needed build-files
./autogen.sh
./configure --prefix="/usr" || die "Configure failed."
# workaround for proper module-building
emake defconfig || die "Make failed."
sed -i "s:CONFIG_XDGA=y:# CONFIG_XDGA is not set:" .config-ppc
sed -i "s:CONFIG_TAP=y:# CONFIG_TAP is not set:" .config-ppc
sed -i "s:CONFIG_TUN=y:# CONFIG_TUN is not set:" .config-ppc
use alsa || sed -i "s:CONFIG_ALSA=y:# CONFIG_ALSA is not set:" .config-ppc
use debug && sed -i "s:# CONFIG_DEBUGGER is not set:CONFIG_DEBUGGER=y:" .config-ppc
use oss || sed -i "s:CONFIG_OSS=y:# CONFIG_OSS is not set:" .config-ppc
use oldworld || sed -i "s:CONFIG_OLDWORLD=y:# CONFIG_OLDWORLD is not set:" .config-ppc
use sheep || sed -i "s:CONFIG_SHEEP=y:# CONFIG_SHEEP is not set:" .config-ppc
use X || sed -i "s:CONFIG_X11=y:# CONFIG_X11 is not set:" .config-ppc
use fbcon || sed -i "s:CONFIG_FBDEV=y:# CONFIG_FBDEV is not set:" .config-ppc
use vnc || sed -i "s:CONFIG_VNC=y:# CONFIG_VNC is not set:" .config-ppc
use dga || sed -i "s:CONFIG_XDGA=y:# CONFIG_XDGA is not set:" .config-ppc
use usb || sed -i "s:CONFIG_USBDEV=y:# CONFIG_USBDEV is not set:" .config-ppc
use pci || sed -i "s:CONFIG_PCIPROXY=y:# CONFIG_PCIPROXY is not set:" .config-ppc
einfo "The configuration has been altered according to your USE-flags."
# reinitialize our changed configuration
emake oldconfig
cd ${S}
emake BUILD_MODS=n || die "Build failed."
# Build the modules too!
BUILD_PARAMS="KERNEL_SOURCE=${KV_DIR} LV=${KV_MAJOR}${KV_MINOR} MP=${KV_OBJ}
KUNAME=${KV}"
BUILD_TARGETS=all
linux-mod_src_compile
}
src_install() {
#linux-mod_src_install
cd ${S}
emake DESTDIR=${D} install || die "Failed to install"
dodoc CREDITS Doc/Boot-ROM Doc/NewWorld-ROM Doc/Sound Doc/Video
dodoc Doc/Networking Doc/Dev/Debugger Doc/Dev/Addresses
dodoc Doc/man/molvconfig.1 Doc/man/startmol.1 Doc/man/molrc.5
insinto /var/lib/mol
doins ${S}/mollib/nvram/nvram.x
}
pkg_postinst() {
echo
einfo "Mac-on-Linux is now installed. To run, use the command startmol."
einfo "You might want to configure video modes first with molvconfig."
einfo "Other configuration is in /etc/molrc. For more info see:"
einfo " http://www.maconlinux.org"
einfo "Also try man molrc, man molvconfig, man startmol"
echo
ewarn "For networking and sound you might install the drivers in the"
ewarn "folder \"MOL-Install\" on your Mac OS X-Desktop."
echo
ewarn "If errors with networking occur, make sure you have the following"
ewarn "kernel functions enabled:"
einfo "For connecting to Linux:"
einfo " Universal TUN/TAP device driver support (CONFIG_TUN)"
einfo "For the dhcp server:"
einfo " Packet Socket (CONFIG_PACKET)"
einfo "For NAT:"
einfo " Network packet filtering (CONFIG_NETFILTER)"
einfo " Connection tracking (CONFIG_IP_NF_CONNTRACK)"
einfo " IP tables support (CONFIG_IP_NF_IPTABLES)"
einfo " Packet filtering (CONFIG_IP_NF_FILTER)"
einfo " Full NAT (CONFIG_IP_NF_NAT)"
einfo " MASQUERADE target support (CONFIG_IP_NF_TARGET_MASQUERADE)"
echo
}
|