Version bump to move wine into the normal prefix of things (/usr). The winex ebuilds...
authorMike Frysinger <vapier@gentoo.org>
Wed, 27 Oct 2004 19:51:58 +0000 (19:51 +0000)
committerMike Frysinger <vapier@gentoo.org>
Wed, 27 Oct 2004 19:51:58 +0000 (19:51 +0000)
app-emulation/wine/ChangeLog
app-emulation/wine/Manifest
app-emulation/wine/files/20041019-load-wrappers.patch [new file with mode: 0644]
app-emulation/wine/files/digest-wine-20041019-r1 [new file with mode: 0644]
app-emulation/wine/wine-20041019-r1.ebuild [new file with mode: 0644]

index 0e72522661ac0d5efca96abb01ac6397b54e8f63..8dd6f1664de3a696fcf5e6865e3aa33f84aed841 100644 (file)
@@ -1,6 +1,17 @@
 # ChangeLog for app-emulation/wine
 # Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/wine/ChangeLog,v 1.78 2004/10/27 12:45:14 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/wine/ChangeLog,v 1.79 2004/10/27 19:51:57 vapier Exp $
+
+*wine-20041019-r1 (27 Oct 2004)
+
+  27 Oct 2004; Mike Frysinger <vapier@gentoo.org>
+  +files/20041019-load-wrappers.patch, +wine-20041019-r1.ebuild:
+  Version bump to move wine into the normal prefix of things (/usr). The winex
+  ebuilds have long been punted from portage and the prebuilt solutions from
+  transgaming come in nicely bundled formats so there wont be any collisions.
+  Indirectly, we solve #33174 and #43550. Also, update our config files
+  #59134, make sure the default registry is created properly #58976, and clean
+  up our wrappers #63376.
 
 *wine-20041019 (27 Oct 2004)
 
index 5595fedc106ab51bc09a7deab7a64d6f55e4d10b..a5a7fae7e6a02123b8eb4ce86eb48d072ba89138 100644 (file)
@@ -1,8 +1,11 @@
-MD5 878ccf9a45f17e6b3d0f80894a730588 ChangeLog 13679
+MD5 0a0219ff573492e115baf933263ad85b ChangeLog 14239
 MD5 6525c48ba09d08599432ea6c299e52f4 metadata.xml 354
+MD5 ba6fc68ac42bffafc1b2b0a0ccdf99b6 wine-20041019-r1.ebuild 3455
 MD5 c34592b921795c2afde7e0e6cb5fbafd wine-20041019.ebuild 3652
 MD5 0b8a40b373bf8ab6c0368dd5a64f5449 wine-20040716.ebuild 3443
-MD5 64c9b939319110b4f44ef6f431262181 files/digest-wine-20041019 212
+MD5 f619ca99f68a2d81076b45b3c19ddbc5 files/20041019-load-wrappers.patch 1402
 MD5 1668a758aa2007cb99a773b3c5c844c9 files/winearts-kdecvs-fix.patch 325
 MD5 ae28341f05c0916661c1346a28720230 files/QueryActCtxw_Photoshop7.0.diff 686
+MD5 90d546d818e0470698ca6b743abe9fca files/digest-wine-20041019-r1 212
+MD5 64c9b939319110b4f44ef6f431262181 files/digest-wine-20041019 212
 MD5 b1893ef0ed5c38dabcbea9fcc3d35f59 files/digest-wine-20040716 212
diff --git a/app-emulation/wine/files/20041019-load-wrappers.patch b/app-emulation/wine/files/20041019-load-wrappers.patch
new file mode 100644 (file)
index 0000000..35a54a7
--- /dev/null
@@ -0,0 +1,44 @@
+--- wine-20041019/loader/preloader.c.orig      2004-09-23 20:25:32.000000000 -0400
++++ wine-20041019/loader/preloader.c   2004-10-27 11:06:46.914656000 -0400
+@@ -69,6 +69,7 @@
+ #include <string.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
++#include <sys/param.h>
+ #include <fcntl.h>
+ #ifdef HAVE_SYS_MMAN_H
+ # include <sys/mman.h>
+@@ -495,6 +496,7 @@
+     unsigned char buf[0x800];
+     ElfW(Ehdr) *header = (ElfW(Ehdr)*)buf;
+     ElfW(Phdr) *phdr, *ph;
++    char altname[MAXPATHLEN];
+     /* Scan the program header table, collecting its load commands.  */
+     struct loadcmd
+       {
+@@ -503,9 +505,23 @@
+         int prot;
+       } loadcmds[16], *c;
+     size_t nloadcmds = 0, maplength;
++    int i;
+ 
+-    fd = wld_open( name, O_RDONLY );
+-    if (fd == -1) fatal_error("%s: could not open\n", name );
++    if (strlen(name)+5 >= MAXPATHLEN)
++        fatal_error("%s: path too long\n", name);
++    for (i=0; i<strlen(name); ++i)
++        altname[i] = name[i];
++    altname[i++] = '-';
++    altname[i++] = 'b';
++    altname[i++] = 'i';
++    altname[i++] = 'n';
++    altname[i++] = '\0';
++    fd = wld_open( altname, O_RDONLY );
++    if (fd == -1) {
++        fd = wld_open( name, O_RDONLY );
++        if (fd == -1)
++            fatal_error("%s: could not open\n", name );
++    }
+ 
+     if (wld_read( fd, buf, sizeof(buf) ) != sizeof(buf))
+         fatal_error("%s: failed to read ELF header\n", name);
diff --git a/app-emulation/wine/files/digest-wine-20041019-r1 b/app-emulation/wine/files/digest-wine-20041019-r1
new file mode 100644 (file)
index 0000000..d670cd4
--- /dev/null
@@ -0,0 +1,3 @@
+MD5 412d0e6f2e364c43d8c77b5904c70da9 Wine-20041019.tar.gz 11058180
+MD5 5dfe8a4fcf3c9739592bc6219c3fbbe4 wine-20041027-fake_windows.tar.bz2 498
+MD5 a718ee15e68cb93806c095d95ba268e3 wine-20041027-misc.tar.bz2 2530
diff --git a/app-emulation/wine/wine-20041019-r1.ebuild b/app-emulation/wine/wine-20041019-r1.ebuild
new file mode 100644 (file)
index 0000000..f651f00
--- /dev/null
@@ -0,0 +1,132 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/wine/wine-20041019-r1.ebuild,v 1.1 2004/10/27 19:51:58 vapier Exp $
+
+inherit eutils flag-o-matic
+
+STAMP=20041027
+DESCRIPTION="free implementation of Windows(tm) on Unix - CVS snapshot"
+HOMEPAGE="http://www.winehq.com/"
+SRC_URI="mirror://sourceforge/${PN}/Wine-${PV}.tar.gz
+        mirror://gentoo/${PN}-${STAMP}-fake_windows.tar.bz2
+        mirror://gentoo/${PN}-${STAMP}-misc.tar.bz2"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="-*"
+IUSE="X jack alsa arts cups debug nas opengl tcltk ncurses"
+
+DEPEND="sys-devel/gcc
+       sys-devel/flex
+       ncurses? ( >=sys-libs/ncurses-5.2 )
+       >=media-libs/freetype-2.0.0
+       jack? ( media-sound/jack )
+       X? ( virtual/x11 )
+       tcltk? ( dev-lang/tcl dev-lang/tk )
+       arts? ( kde-base/arts )
+       alsa? ( media-libs/alsa-lib )
+       nas? ( media-libs/nas )
+       cups? ( net-print/cups )
+       opengl? ( virtual/opengl )
+       >=sys-apps/sed-4"
+
+src_unpack() {
+       unpack Wine-${PV}.tar.gz
+       unpack ${PN}-${STAMP}-fake_windows.tar.bz2
+       mkdir misc ; cd misc
+       unpack ${PN}-${STAMP}-misc.tar.bz2
+
+       cd ${S}
+       epatch ${WORKDIR}/misc/config.patch
+       epatch ${FILESDIR}/winearts-kdecvs-fix.patch
+       epatch ${FILESDIR}/${PV}-load-wrappers.patch
+       sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in
+}
+
+config_cache() {
+       local h ans="no"
+       use ${1} && ans="yes"
+       shift
+       for h in "$@" ; do
+               export ac_cv_header_${h}=${ans}
+       done
+}
+
+src_compile() {
+       export LDCONFIG=/bin/true
+       config_cache jack jack_jack_h
+       config_cache cups cups_cups_h
+       config_cache alsa alsa_asoundlib_h sys_asoundlib_h
+       use arts || export ARTSCCONFIG="/bin/false"
+       config_cache nas audio_audiolib_h
+
+       strip-flags
+
+       #       $(use_enable amd64 win64)
+       econf \
+               --sysconfdir=/etc/wine \
+               $(use_enable ncurses curses) \
+               $(use_enable opengl) \
+               $(use_enable debug trace) \
+               $(use_enable debug) \
+               || die "configure failed"
+
+       emake -j1 depend || die "depend"
+       emake all || die "all"
+       emake -C programs || die "programs"
+}
+
+src_install() {
+       ### Install wine to ${D}
+       local WINEMAKEOPTS="
+               prefix=${D}/usr
+               bindir=${D}/usr/bin
+               datadir=${D}/usr/share
+               mandir=${D}/usr/share/man
+               libdir=${D}/usr/lib
+               dlldir=${D}/usr/lib/wine
+               "
+       make ${WINEMAKEOPTS} install || die "install"
+       cd ${S}/programs
+       make ${WINEMAKEOPTS} install || die "install programs"
+
+       # Needed for later installation
+       dodir /usr/bin
+
+       ### Creation of /usr/share/wine/data/
+       # Setting up fake_windows
+       dodir /usr/share/wine/data
+       chown -R root:root ${WORKDIR}/fake_windows/
+       cp -r ${WORKDIR}/fake_windows ${D}/usr/share/wine/data/
+
+       # Unpacking the miscellaneous files
+       cd ${WORKDIR}/misc
+       for x in * ; do
+               [ "${x}" == "config.patch" ] && continue
+               [ -x "${D}/usr/bin/${x}" ] \
+                       && mv "${D}"/usr/bin/${x}{,-bin}
+               dobin ${x}
+       done
+
+       # copying the wine.inf into .data (used to be winedefault.reg)
+       cd ${S}
+       insinto /usr/share/wine/data
+       doins documentation/sample/config
+       doins tools/wine.inf
+       insinto /usr/share/wine/data/fake_windows/Windows/System
+       doins tools/wine.inf
+       insinto /usr/share/wine/data/fake_windows/Windows/Inf
+       doins tools/wine.inf
+
+       ### Misc tasks
+       # Take care of the documentation
+       cd ${S}
+       dodoc ANNOUNCE AUTHORS BUGS ChangeLog DEVELOPERS-HINTS README
+}
+
+pkg_postinst() {
+       einfo "Use /usr/bin/wine to start wine. This is a wrapper-script"
+       einfo "which will take care of everything else."
+       einfo
+       einfo "if you have problems with nptl, use wine-pthread to start wine"
+}