summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2005-04-17 03:12:00 +0000
committerMike Frysinger <vapier@gentoo.org>2005-04-17 03:12:00 +0000
commit08106f9a5b2f82ac7555739ec1e8c28cd9e22b83 (patch)
treebbde6bfb7c8cfb28eb582d00dc5a62eab8943e4f /app-emulation
parentold (diff)
downloadgentoo-2-08106f9a5b2f82ac7555739ec1e8c28cd9e22b83.tar.gz
gentoo-2-08106f9a5b2f82ac7555739ec1e8c28cd9e22b83.tar.bz2
gentoo-2-08106f9a5b2f82ac7555739ec1e8c28cd9e22b83.zip
Add fix from upstream for X11 driver #88715 by Alan Jones.
Diffstat (limited to 'app-emulation')
-rw-r--r--app-emulation/wine/ChangeLog11
-rw-r--r--app-emulation/wine/files/digest-wine-20050310-r11
-rw-r--r--app-emulation/wine/files/wine-20050310-upstream-colortable.patch39
-rw-r--r--app-emulation/wine/wine-20050310-r1.ebuild130
4 files changed, 179 insertions, 2 deletions
diff --git a/app-emulation/wine/ChangeLog b/app-emulation/wine/ChangeLog
index 8d6269c33107..647d5e2df90f 100644
--- a/app-emulation/wine/ChangeLog
+++ b/app-emulation/wine/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for app-emulation/wine
-# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/wine/ChangeLog,v 1.90 2005/03/18 00:53:24 vapier Exp $
+# Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/wine/ChangeLog,v 1.91 2005/04/17 03:12:00 vapier Exp $
+
+*wine-20050310-r1 (17 Apr 2005)
+
+ 17 Apr 2005; Mike Frysinger <vapier@gentoo.org>
+ +files/wine-20050310-upstream-colortable.patch, -wine-20050310.ebuild,
+ +wine-20050310-r1.ebuild:
+ Add fix from upstream for X11 driver #88715 by Alan Jones.
*wine-20050111-r1 (18 Mar 2005)
diff --git a/app-emulation/wine/files/digest-wine-20050310-r1 b/app-emulation/wine/files/digest-wine-20050310-r1
new file mode 100644
index 000000000000..9cf471077c5a
--- /dev/null
+++ b/app-emulation/wine/files/digest-wine-20050310-r1
@@ -0,0 +1 @@
+MD5 d90d31716ba71211af26ac773934f57e Wine-20050310.tar.gz 11798040
diff --git a/app-emulation/wine/files/wine-20050310-upstream-colortable.patch b/app-emulation/wine/files/wine-20050310-upstream-colortable.patch
new file mode 100644
index 000000000000..072efc81b0cb
--- /dev/null
+++ b/app-emulation/wine/files/wine-20050310-upstream-colortable.patch
@@ -0,0 +1,39 @@
+http://bugs.gentoo.org/show_bug.cgi?id=88715
+
+===================================================================
+RCS file: /home/wine/wine/dlls/x11drv/dib.c,v
+retrieving revision 1.27
+retrieving revision 1.28
+diff -u -p -r1.27 -r1.28
+--- wine/dlls/x11drv/dib.c 2005/03/31 19:13:03 1.27
++++ wine/dlls/x11drv/dib.c 2005/04/11 12:57:10 1.28
+@@ -418,18 +418,24 @@ static RGBQUAD *X11DRV_DIB_BuildColorTab
+ else
+ {
+ HPALETTE hpal = GetCurrentObject(physDev->hdc, OBJ_PAL);
+- PALETTEENTRY pal_ents[256];
++ PALETTEENTRY * pal_ents;
+ WORD *index = (WORD*) ((LPBYTE) info + (WORD) info->bmiHeader.biSize);
++ int logcolors, entry;
+
+- GetPaletteEntries(hpal, 0, 256, pal_ents);
++ logcolors = GetPaletteEntries( hpal, 0, 0, NULL );
++ pal_ents = HeapAlloc(GetProcessHeap(), 0, logcolors * sizeof(*pal_ents));
++ logcolors = GetPaletteEntries( hpal, 0, logcolors, pal_ents );
+
+ for(i = 0; i < colors; i++, index++)
+ {
+- colorTable[i].rgbRed = pal_ents[*index].peRed;
+- colorTable[i].rgbGreen = pal_ents[*index].peGreen;
+- colorTable[i].rgbBlue = pal_ents[*index].peBlue;
++ entry = *index % logcolors;
++ colorTable[i].rgbRed = pal_ents[entry].peRed;
++ colorTable[i].rgbGreen = pal_ents[entry].peGreen;
++ colorTable[i].rgbBlue = pal_ents[entry].peBlue;
+ colorTable[i].rgbReserved = 0;
+ }
++
++ HeapFree(GetProcessHeap(), 0, pal_ents);
+ }
+ return colorTable;
+ }
diff --git a/app-emulation/wine/wine-20050310-r1.ebuild b/app-emulation/wine/wine-20050310-r1.ebuild
new file mode 100644
index 000000000000..7b5d4b696a21
--- /dev/null
+++ b/app-emulation/wine/wine-20050310-r1.ebuild
@@ -0,0 +1,130 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/wine/wine-20050310-r1.ebuild,v 1.1 2005/04/17 03:12:00 vapier Exp $
+
+inherit eutils flag-o-matic
+
+DESCRIPTION="free implementation of Windows(tm) on Unix - CVS snapshot"
+HOMEPAGE="http://www.winehq.com/"
+SRC_URI="mirror://sourceforge/${PN}/Wine-${PV}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE="X alsa arts cups debug nas opengl gif glut jack jpeg oss ncurses doc lcms"
+RESTRICT="test" #72375
+
+RDEPEND=">=media-libs/freetype-2.0.0
+ media-fonts/corefonts
+ ncurses? ( >=sys-libs/ncurses-5.2 )
+ jack? ( media-sound/jack-audio-connection-kit )
+ X? ( virtual/x11 )
+ arts? ( kde-base/arts )
+ alsa? ( media-libs/alsa-lib )
+ nas? ( media-libs/nas )
+ cups? ( net-print/cups )
+ opengl? ( virtual/opengl )
+ gif? ( media-libs/giflib )
+ jpeg? ( media-libs/jpeg )
+ glut? ( virtual/glut )
+ lcms? ( media-libs/lcms )
+ amd64? (
+ app-emulation/emul-linux-x86-xlibs
+ app-emulation/emul-linux-x86-soundlibs
+ >=sys-kernel/linux-headers-2.6
+ )"
+DEPEND="${RDEPEND}
+ sys-devel/bison
+ doc? ( app-text/docbook-sgml-utils app-text/jadetex )
+ sys-devel/flex"
+
+pkg_setup() {
+ if use amd64 ; then
+ if ! has_m32; then
+ eerror "Your compiler seems to be unable to compile 32bit code."
+ eerror "Make sure you compile gcc with:"
+ echo
+ eerror " USE=multilib FEATURES=-sandbox"
+ die "Cannot produce 32bit code"
+ else
+ export ABI=x86
+ fi
+ fi
+}
+
+src_unpack() {
+ unpack Wine-${PV}.tar.gz
+ cd "${S}"
+
+ epatch "${FILESDIR}"/winearts-kdecvs-fix.patch
+ sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in
+ epatch "${FILESDIR}"/wine-20050310-upstream-colortable.patch #88715
+ epatch "${FILESDIR}"/20041019-no-stack.patch #66002
+}
+
+config_cache() {
+ local h ans="no"
+ use ${1} && ans="yes"
+ shift
+ for h in "$@" ; do
+ export ac_cv_${h}=${ans}
+ done
+}
+
+src_compile() {
+ export LDCONFIG=/bin/true
+ config_cache jack header_jack_jack_h
+ config_cache cups header_cups_cups_h
+ config_cache alsa header_alsa_asoundlib_h header_sys_asoundlib_h lib_asound_snd_pcm_open
+ use arts || export ARTSCCONFIG="/bin/false"
+ config_cache nas header_audio_audiolib_h header_audio_soundlib_h
+ config_cache gif header_gif_lib_h
+ config_cache glut lib_glut_glutMainLoop
+ config_cache jpeg header_jpeglib_h
+ config_cache oss header_sys_soundcard_h header_machine_soundcard_h header_soundcard_h
+ config_cache lcms header_lcms_h
+
+ strip-flags
+ use lcms && append-flags -I${ROOT}/usr/include/lcms
+
+ if ! built_with_use app-text/docbook-sgml-utils tetex ; then
+ export DB2PDF=true
+ export DB2PS=true
+ fi
+
+ # $(use_enable amd64 win64)
+ # USE=debug is broken in this release
+ econf \
+ --sysconfdir=/etc/wine \
+ $(use_with ncurses curses) \
+ $(use_with opengl) \
+ $(use_with X x) \
+ $(use_enable debug trace) \
+ $(use_enable debug) \
+ || die "configure failed"
+
+ emake -j1 depend || die "depend"
+ emake all || die "all"
+ if use doc ; then
+ emake -j1 -C documentation doc || die "docs"
+ fi
+}
+
+src_install() {
+ make \
+ prefix="${D}"/usr \
+ bindir="${D}"/usr/bin \
+ datadir="${D}"/usr/share \
+ includedir="${D}"/usr/include/wine \
+ sysconfdir="${D}"/etc/wine \
+ mandir="${D}"/usr/share/man \
+ libdir="${D}"/usr/$(get_libdir) \
+ dlldir="${D}"/usr/$(get_libdir)/wine \
+ install || die
+ use doc && dodoc documentation/*.pdf
+
+ insinto /usr/share/wine
+ doins documentation/samples/config || die "doins config"
+
+ dodoc ANNOUNCE AUTHORS BUGS ChangeLog DEVELOPERS-HINTS README
+}