blob: f8b5ef2944c3b83d10cda6ab47aebe7365183123 (
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
|
# Copyright 1999-2003 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/winex/winex-20021123.ebuild,v 1.6 2003/02/18 16:07:24 phoenix Exp $
inherit base
IUSE="cups opengl"
S=${WORKDIR}/wine
DESCRIPTION="WineX is a distribution of Wine with enhanced DirectX for gaming"
SRC_URI="mirror://gentoo/${P}.tar.bz2"
HOMEPAGE="http://www.transgaming.com/"
SLOT="0"
KEYWORDS="x86 -ppc -sparc "
LICENSE="Aladdin"
DEPEND="sys-devel/gcc
sys-devel/flex
dev-util/yacc
>=sys-libs/ncurses-5.2
>=media-libs/freetype-2.0.0
X? ( virtual/x11
dev-lang/tcl
dev-lang/tk )
opengl? ( virtual/opengl )
cups? ( net-print/cups )
!app-emulation/winex-transgaming"
src_unpack() {
base_src_unpack
# Unpacking the miscellaneous files
mkdir misc
cd misc
tar jxvf ${FILESDIR}/${P}-misc.tar.bz2 &> /dev/null
chown root:root *
}
src_compile() {
cd ${S}
local myconf
use opengl && myconf="--enable-opengl" || myconf="--disable-opengl"
[ -z $DEBUG ] && myconf="$myconf --disable-trace --disable-debug" || myconf="$myconf --enable-trace --enable-debug"
# the folks at #winehq were really angry about custom optimization
unset CFLAGS
unset CXXFLAGS
./configure --prefix=/usr/lib/winex \
--sysconfdir=/etc/winex \
--host=${CHOST} \
--enable-curses \
--with-x \
${myconf} || die "configure failed"
# Fixes a winetest issue
cd ${S}/programs/winetest
cp Makefile 1
sed -e 's:wine.pm:include/wine.pm:' 1 > Makefile
# This persuades wineshelllink that "winex" is a better loader :)
cd ${S}/tools
cp wineshelllink 1
sed -e 's/\(WINE_LOADER=\)\(\${WINE_LOADER:-wine}\)/\1winex/' 1 > wineshelllink
cd ${S}
make depend all || die "make depend all failed"
cd ${S}/programs
make || die "make died"
}
src_install () {
local WINEXMAKEOPTS="prefix=${D}/usr/lib/${PN}"
# Installs winex to ${D}/usr/lib/${PN}
cd ${S}
make ${WINEXMAKEOPTS} install || die "make install failed"
cd ${S}/programs
make ${WINEXMAKEOPTS} install || die "make install failed"
dodir /usr/bin
# Creates /usr/lib/winex/.data with fake_windows in it
# This is needed for ~/.winex initialization by our
# winex wrapper script
dodir /usr/lib/winex/.data
cd ${D}/usr/lib/winex/.data
tar jxvf ${FILESDIR}/${P}-fake_windows.tar.bz2
chown root:root fake_windows/ -R
# moving the wrappers to bin/
insinto /usr/bin
dobin ${WORKDIR}/misc/regedit-winex ${WORKDIR}/misc/winex
### Set up the remaining files
cd ${S}
# copying the winedefault.reg into .data
insinto /usr/lib/winex/.data
doins winedefault.reg ${WORKDIR}/misc/config
# Set up this dynamic data
insinto /usr/lib/wine/.data/fake_windows/Windows
doins documentation/samples/system.ini
doins documentation/samples/generic.ppd
### Misc tasks
# Take care of the documentation
cd ${S}
dodoc ANNOUNCE AUTHORS BUGS ChangeLog DEVELOPERS-HINTS LICENSE README
# Manpage setup
cp ${D}/usr/lib/${PN}/man/man1/wine.1 ${D}/usr/lib/${PN}/man/man1/${PN}.1
doman ${D}/usr/lib/${PN}/man/man1/${PN}.1
rm ${D}/usr/lib/${PN}/man/man1/${PN}.1
# Remove the executable flag from those libraries.
cd ${D}/usr/lib/${PN}/bin
chmod a-x *.so
}
pkg_postinst() {
einfo "Use /usr/bin/winex to start winex."
einfo "This is a wrapper-script which will take care of everything"
einfo "else. If you have further questions, enhancements or patches"
einfo "send an email to phoenix@gentoo.org"
einfo ""
einfo "Manpage has been installed to the system."
einfo "\"man winex\" should show it."
}
|