]> git.draconx.ca Git - gentoo-draconx.git/blob - app-emulation/wine/wine-1.3.4.ebuild
mplus-outline-fonts: Remove ebuild.
[gentoo-draconx.git] / app-emulation / wine / wine-1.3.4.ebuild
1 # Copyright 1999-2010 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: /var/cvsroot/gentoo-x86/app-emulation/wine/wine-1.3.3.ebuild,v 1.3 2010/09/25 05:35:39 vapier Exp $
4
5 EAPI="2"
6
7 inherit eutils flag-o-matic multilib
8
9 if [[ ${PV} == "9999" ]] ; then
10         EGIT_REPO_URI="git://source.winehq.org/git/wine.git"
11         inherit git autotools
12         SRC_URI=""
13         #KEYWORDS=""
14 else
15         AUTOTOOLS_AUTO_DEPEND="no"
16         inherit autotools
17         MY_P="${PN}-${PV/_/-}"
18         SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2"
19         KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
20         S=${WORKDIR}/${MY_P}
21 fi
22
23 pulse_patches() { echo "$1"/winepulse-{0.36,0.35-configure.ac,0.38-winecfg}.patch ; }
24 GV="1.1.0"
25 DESCRIPTION="free implementation of Windows(tm) on Unix"
26 HOMEPAGE="http://www.winehq.org/"
27 SRC_URI="${SRC_URI}
28         gecko? (
29                 mirror://sourceforge/wine/wine_gecko-${GV}-x86.cab
30                 win64? ( mirror://sourceforge/wine/wine_gecko-${GV}-x86_64.cab )
31         )
32         pulseaudio? ( `pulse_patches http://art.ified.ca/downloads/winepulse` )"
33
34 LICENSE="LGPL-2.1"
35 SLOT="0"
36 IUSE="alsa capi cups custom-cflags dbus esd fontconfig +gecko gnutls gphoto2 gsm hal jack jpeg lcms ldap mp3 nas ncurses openal +opengl +oss +perl png pulseaudio samba scanner ssl test +threads +truetype +win32 +win64 +X xcomposite xinerama xml"
37 RESTRICT="test" #72375
38
39 MLIB_DEPS="amd64? (
40         truetype? ( >=app-emulation/emul-linux-x86-xlibs-2.1 )
41         X? (
42                 >=app-emulation/emul-linux-x86-xlibs-2.1
43                 >=app-emulation/emul-linux-x86-soundlibs-2.1
44         )
45         openal? ( app-emulation/emul-linux-x86-sdl )
46         opengl? ( app-emulation/emul-linux-x86-opengl )
47         app-emulation/emul-linux-x86-baselibs
48         >=sys-kernel/linux-headers-2.6
49         )"
50 RDEPEND="truetype? ( >=media-libs/freetype-2.0.0 media-fonts/corefonts )
51         perl? ( dev-lang/perl dev-perl/XML-Simple )
52         capi? ( net-dialup/capi4k-utils )
53         ncurses? ( >=sys-libs/ncurses-5.2 )
54         fontconfig? ( media-libs/fontconfig )
55         gphoto2? ( media-libs/libgphoto2 )
56         jack? ( media-sound/jack-audio-connection-kit )
57         openal? ( media-libs/openal )
58         dbus? ( sys-apps/dbus )
59         gnutls? ( net-libs/gnutls )
60         hal? ( sys-apps/hal )
61         X? (
62                 x11-libs/libXcursor
63                 x11-libs/libXrandr
64                 x11-libs/libXi
65                 x11-libs/libXmu
66                 x11-libs/libXxf86vm
67                 x11-apps/xmessage
68         )
69         xinerama? ( x11-libs/libXinerama )
70         alsa? ( media-libs/alsa-lib )
71         esd? ( media-sound/esound )
72         nas? ( media-libs/nas )
73         cups? ( net-print/cups )
74         opengl? ( virtual/opengl )
75         pulseaudio? ( media-sound/pulseaudio ${AUTOTOOLS_DEPEND} )
76         gsm? ( media-sound/gsm )
77         jpeg? ( media-libs/jpeg )
78         ldap? ( net-nds/openldap )
79         lcms? ( =media-libs/lcms-1* )
80         mp3? ( >=media-sound/mpg123-1.5.0 )
81         samba? ( >=net-fs/samba-3.0.25 )
82         xml? ( dev-libs/libxml2 dev-libs/libxslt )
83         scanner? ( media-gfx/sane-backends )
84         ssl? ( dev-libs/openssl )
85         png? ( media-libs/libpng )
86         !win64? ( ${MLIB_DEPS} )
87         win32? ( ${MLIB_DEPS} )
88         xcomposite? ( x11-libs/libXcomposite ) "
89 DEPEND="${RDEPEND}
90         X? (
91                 x11-proto/inputproto
92                 x11-proto/xextproto
93                 x11-proto/xf86vidmodeproto
94         )
95         xinerama? ( x11-proto/xineramaproto )
96         sys-devel/bison
97         sys-devel/flex"
98
99 src_unpack() {
100         if use win64 ; then
101                 [[ $(( $(gcc-major-version) * 100 + $(gcc-minor-version) )) -lt 404 ]] \
102                         && die "you need gcc-4.4+ to build 64bit wine"
103         fi
104
105         if [[ ${PV} == "9999" ]] ; then
106                 git_src_unpack
107         else
108                 unpack ${MY_P}.tar.bz2
109         fi
110 }
111
112 src_prepare() {
113         if use pulseaudio ; then
114                 EPATCH_OPTS=-p1 epatch `pulse_patches "${DISTDIR}"`
115                 eautoreconf
116         fi
117         epatch "${FILESDIR}"/${PN}-1.1.15-winegcc.patch #260726
118         epatch "${FILESDIR}"/0001-dsound-Restore-old-format-on-SetFormat-failure.patch
119         epatch_user #282735
120         sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
121         sed -i '/^MimeType/d' tools/wine.desktop || die #117785
122 }
123
124 do_configure() {
125         local builddir="${WORKDIR}/wine$1"
126         mkdir -p "${builddir}"
127         pushd "${builddir}" >/dev/null
128
129         ECONF_SOURCE=${S} \
130         econf \
131                 --sysconfdir=/etc/wine \
132                 $(use_with alsa) \
133                 $(use_with capi) \
134                 $(use_with lcms cms) \
135                 $(use_with cups) \
136                 $(use_with ncurses curses) \
137                 $(use_with esd) \
138                 $(use_with fontconfig) \
139                 $(use_with gnutls) \
140                 $(use_with gphoto2 gphoto) \
141                 $(use_with gsm) \
142                 $(! use dbus && echo --without-hal || use_with hal) \
143                 $(use_with jack) \
144                 $(use_with jpeg) \
145                 $(use_with ldap) \
146                 $(use_with mp3 mpg123) \
147                 $(use_with nas) \
148                 $(use_with openal) \
149                 $(use_with opengl) \
150                 $(use_with ssl openssl) \
151                 $(use_with oss) \
152                 $(use_with png) \
153                 $(use_with threads pthread) \
154                 $(use pulseaudio && use_with pulseaudio pulse) \
155                 $(use_with scanner sane) \
156                 $(use_enable test tests) \
157                 $(use_with truetype freetype) \
158                 $(use_with X x) \
159                 $(use_with xcomposite) \
160                 $(use_with xinerama) \
161                 $(use_with xml) \
162                 $(use_with xml xslt) \
163                 $2
164
165         emake -j1 depend || die "depend"
166
167         popd >/dev/null
168 }
169 src_configure() {
170         export LDCONFIG=/bin/true
171         use custom-cflags || strip-flags
172
173         if use win64 ; then
174                 do_configure 64 --enable-win64
175                 use win32 && ABI=x86 do_configure 32 --with-wine64=../wine64
176         else
177                 ABI=x86 do_configure 32 --disable-win64
178         fi
179 }
180
181 src_compile() {
182         local b
183         for b in 64 32 ; do
184                 local builddir="${WORKDIR}/wine${b}"
185                 [[ -d ${builddir} ]] || continue
186                 emake -C "${builddir}" all || die
187         done
188 }
189
190 src_install() {
191         local b
192         for b in 64 32 ; do
193                 local builddir="${WORKDIR}/wine${b}"
194                 [[ -d ${builddir} ]] || continue
195                 emake -C "${builddir}" install DESTDIR="${D}" || die
196         done
197         dodoc ANNOUNCE AUTHORS README
198         if use gecko ; then
199                 insinto /usr/share/wine/gecko
200                 doins "${DISTDIR}"/wine_gecko-${GV}-x86.cab || die
201                 use win64 && { doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.cab || die ; }
202         fi
203         if ! use perl ; then
204                 rm "${D}"/usr/bin/{wine{dump,maker},function_grep.pl} "${D}"/usr/share/man/man1/wine{dump,maker}.1 || die
205         fi
206 }
207
208 pkg_postinst() {
209         paxctl -psmr "${ROOT}"/usr/bin/wine{,-preloader} 2>/dev/null #255055
210 }