From 3692ed5cbda04aafe8cca4dd67ef8f3f23afdada Mon Sep 17 00:00:00 2001 From: reinoud Date: Wed, 9 Jan 2008 17:46:41 +0000 Subject: Fix wine directory reading correctly. patch-ac was wrong since __NetBSD_Version should have been __NetBSD_Version__. Also the NetBSD compat getdirentries() returned struct dirent12s having 32 bit ino_t and not the included struct dirent having 64 bit ino_t. --- emulators/wine/Makefile | 3 ++- emulators/wine/distinfo | 4 ++-- emulators/wine/patches/patch-ac | 11 ++++++----- 3 files changed, 10 insertions(+), 8 deletions(-) (limited to 'emulators') diff --git a/emulators/wine/Makefile b/emulators/wine/Makefile index e68285b8f9d..2c397302fa1 100644 --- a/emulators/wine/Makefile +++ b/emulators/wine/Makefile @@ -1,6 +1,7 @@ -# $NetBSD: Makefile,v 1.139 2007/10/14 13:01:05 rillig Exp $ +# $NetBSD: Makefile,v 1.140 2008/01/09 17:46:41 reinoud Exp $ DISTNAME= wine-0.9.44 +PKGREVISION= 1 CATEGORIES= emulators MASTER_SITES= http://ibiblio.org/pub/linux/system/emulators/wine/ \ ${MASTER_SITE_SOURCEFORGE:=wine/} diff --git a/emulators/wine/distinfo b/emulators/wine/distinfo index 02367d5c8ca..38302c092bd 100644 --- a/emulators/wine/distinfo +++ b/emulators/wine/distinfo @@ -1,11 +1,11 @@ -$NetBSD: distinfo,v 1.74 2007/08/29 14:42:25 adam Exp $ +$NetBSD: distinfo,v 1.75 2008/01/09 17:46:41 reinoud Exp $ SHA1 (wine-0.9.44.tar.bz2) = 77f820444198688085b3148ca0054bdf8aebf839 RMD160 (wine-0.9.44.tar.bz2) = 4d726aea99b12ecf757785e22f531bb03a1a79b7 Size (wine-0.9.44.tar.bz2) = 12377043 bytes SHA1 (patch-aa) = 3b84f2f7693b79ed5de432a6ab8faf4ec258f57a SHA1 (patch-ab) = 66c1f1ec98674d15c7a72e8ac16105c28aa25e91 -SHA1 (patch-ac) = 02747108dc33328b9905b642bf9817d675916cbb +SHA1 (patch-ac) = e28e9ea8563546a41672f16c8e111e5d37ffbe92 SHA1 (patch-ad) = 978bdd94b75a2d671d5ed97d7664ff60488683cd SHA1 (patch-ae) = a4f39995baf5511ddc70b4e1c006a159a86eeb22 SHA1 (patch-af) = ff365b8c6f60adfe0cc47113db53de1dd27bb064 diff --git a/emulators/wine/patches/patch-ac b/emulators/wine/patches/patch-ac index e1cd4a37e36..afb9786c89d 100644 --- a/emulators/wine/patches/patch-ac +++ b/emulators/wine/patches/patch-ac @@ -1,22 +1,23 @@ -$NetBSD: patch-ac,v 1.37 2007/08/29 14:42:25 adam Exp $ +$NetBSD: patch-ac,v 1.38 2008/01/09 17:46:41 reinoud Exp $ ---- dlls/ntdll/directory.c.orig 2007-08-10 18:18:12.000000000 +0200 +--- dlls/ntdll/directory.c.orig 2007-08-24 16:34:33.000000000 +0200 +++ dlls/ntdll/directory.c -@@ -128,6 +128,19 @@ static inline int getdents64( int fd, ch +@@ -128,6 +128,20 @@ static inline int getdents64( int fd, ch #endif /* linux */ #define IS_OPTION_TRUE(ch) ((ch) == 'y' || (ch) == 'Y' || (ch) == 't' || (ch) == 'T' || (ch) == '1') -+#if defined(__NetBSD_Version) && __NetBSD_Version >= 399000800 ++#if defined(__NetBSD_Version__) && __NetBSD_Version__ >= 399000800 +/* + * workaround for obsolete getdirentries() which returns + * the old 32-bit inode struct dirent, while dirent.h has the + * new 64-bit inode struct dirent inode since 3.99.8 + */ -+int getdirentries(int fd, char *buf, int nbytes, long *basep) ++int compat_netbsd_getdirentries(int fd, char *buf, int nbytes, long *basep) +{ + *basep = (long)lseek(fd, 0, SEEK_CUR); + return getdents(fd, buf, (size_t)nbytes); +} ++#define getdirentries compat_netbsd_getdirentries +#endif + #define IS_SEPARATOR(ch) ((ch) == '\\' || (ch) == '/') -- cgit v1.2.3