Update to Wine 1.3.19. This includes the following changes:

- New sound driver architecture for MMDevAPI.
 - Better support for relative mouse events in DInput.
 - Various improvements in D3DX9.
 - More MSVC runtime functions.
 - Various bug fixes.

This requires three patches of mine, two submitted upstream so far, to
unbreak recent changes around the sound system (bundled into one here).

Sort CONFIGURE_ARGS on the way.
This commit is contained in:
Gerald Pfeifer 2011-05-08 01:38:18 +00:00
parent 64f7b1f070
commit 2b2c26a220
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=273759
8 changed files with 126 additions and 10 deletions

View file

@ -7,7 +7,7 @@
#
PORTNAME= wine
DISTVERSION= 1.3.18
DISTVERSION= 1.3.19
PORTEPOCH= 1
CATEGORIES= emulators
MASTER_SITES= SF/${PORTNAME}/Source \
@ -33,8 +33,8 @@ GNU_CONFIGURE= yes
CONFIGURE_ARGS+=--datadir=${DATADIR} --verbose --disable-tests \
--with-glu --with-opengl --with-xrandr \
--without-capi --without-gphoto --without-gsm \
--without-v4l --without-mpg123 --without-sane \
--without-xcomposite --without-xinerama
--without-mpg123 --without-sane \
--without-v4l --without-xcomposite --without-xinerama
CONFIGURE_ENV= LDFLAGS="-L${LOCALBASE}/lib" \
FLEX="${LOCALBASE}/bin/flex"
WINELIBDIR?= ${PREFIX}/lib

View file

@ -1,2 +1,2 @@
SHA256 (wine-1.3.18.tar.bz2) = 994064d326954e6df252002891bfcbb987a35aa573ab74be605224f66623a4ac
SIZE (wine-1.3.18.tar.bz2) = 19155641
SHA256 (wine-1.3.19.tar.bz2) = 8686777c08d76be742f089a292cb5f7b339d7d4cc6ca8161c97d97dec9e4e78d
SIZE (wine-1.3.19.tar.bz2) = 19185499

View file

@ -0,0 +1,54 @@
diff --git a/dlls/wineoss.drv/mmdevdrv.c b/dlls/wineoss.drv/mmdevdrv.c
index ff21cd6..76fd474 100644
--- dlls/wineoss.drv/mmdevdrv.c
+++ dlls/wineoss.drv/mmdevdrv.c
@@ -500,7 +500,7 @@ static int get_oss_format(const WAVEFORMATEX *fmt)
case 16:
return AFMT_S16_LE;
case 24:
- return AFMT_S24_PACKED;
+ return AFMT_S24_LE;
case 32:
return AFMT_S32_LE;
}
@@ -513,7 +513,9 @@ static int get_oss_format(const WAVEFORMATEX *fmt)
if(fmt->wBitsPerSample != 32)
return -1;
+#ifdef AFMT_FLOAT
return AFMT_FLOAT;
+#endif
}
return -1;
@@ -944,16 +946,18 @@ static HRESULT WINAPI AudioClient_GetMixFormat(IAudioClient *iface,
if(formats & AFMT_S16_LE){
fmt->Format.wBitsPerSample = 16;
fmt->SubFormat = KSDATAFORMAT_SUBTYPE_PCM;
+#ifdef AFMT_FLOAT
}else if(formats & AFMT_FLOAT){
fmt->Format.wBitsPerSample = 32;
fmt->SubFormat = KSDATAFORMAT_SUBTYPE_IEEE_FLOAT;
+#endif
}else if(formats & AFMT_U8){
fmt->Format.wBitsPerSample = 8;
fmt->SubFormat = KSDATAFORMAT_SUBTYPE_PCM;
}else if(formats & AFMT_S32_LE){
fmt->Format.wBitsPerSample = 32;
fmt->SubFormat = KSDATAFORMAT_SUBTYPE_PCM;
- }else if(formats & AFMT_S24_PACKED){
+ }else if(formats & AFMT_S24_LE){
fmt->Format.wBitsPerSample = 24;
fmt->SubFormat = KSDATAFORMAT_SUBTYPE_PCM;
}else{
@@ -1174,6 +1178,10 @@ static HRESULT WINAPI AudioClient_Stop(IAudioClient *iface)
This->timer = NULL;
}
+#ifndef SNDCTL_DSP_HALT
+#define SNDCTL_DSP_HALT SNDCTL_DSP_RESET
+#endif
+
if(ioctl(This->fd, SNDCTL_DSP_HALT, NULL) < 0){
LeaveCriticalSection(&This->lock);
WARN("HALT failed: %d (%s)\n", errno, strerror(errno));

View file

@ -175,6 +175,7 @@ include/wine/windows/d3drmwin.h
include/wine/windows/d3dtypes.h
include/wine/windows/d3dvec.inl
include/wine/windows/d3dx9.h
include/wine/windows/d3dx9anim.h
include/wine/windows/d3dx9core.h
include/wine/windows/d3dx9effect.h
include/wine/windows/d3dx9math.h
@ -183,6 +184,7 @@ include/wine/windows/d3dx9mesh.h
include/wine/windows/d3dx9shader.h
include/wine/windows/d3dx9shape.h
include/wine/windows/d3dx9tex.h
include/wine/windows/d3dx9xof.h
include/wine/windows/dbccmd.idl
include/wine/windows/dbcses.idl
include/wine/windows/dbdsad.idl
@ -1041,6 +1043,7 @@ lib/wine/fakedlls/mssip32.dll
lib/wine/fakedlls/mstask.dll
lib/wine/fakedlls/msvcirt.dll
lib/wine/fakedlls/msvcp100.dll
lib/wine/fakedlls/msvcp60.dll
lib/wine/fakedlls/msvcp80.dll
lib/wine/fakedlls/msvcp90.dll
lib/wine/fakedlls/msvcr100.dll
@ -1526,6 +1529,7 @@ lib/wine/mssip32.dll.so
lib/wine/mstask.dll.so
lib/wine/msvcirt.dll.so
lib/wine/msvcp100.dll.so
lib/wine/msvcp60.dll.so
lib/wine/msvcp80.dll.so
lib/wine/msvcp90.dll.so
lib/wine/msvcr100.dll.so

View file

@ -7,7 +7,7 @@
#
PORTNAME= wine
DISTVERSION= 1.3.18
DISTVERSION= 1.3.19
PORTEPOCH= 1
CATEGORIES= emulators
MASTER_SITES= SF/${PORTNAME}/Source \
@ -33,8 +33,8 @@ GNU_CONFIGURE= yes
CONFIGURE_ARGS+=--datadir=${DATADIR} --verbose --disable-tests \
--with-glu --with-opengl --with-xrandr \
--without-capi --without-gphoto --without-gsm \
--without-v4l --without-mpg123 --without-sane \
--without-xcomposite --without-xinerama
--without-mpg123 --without-sane \
--without-v4l --without-xcomposite --without-xinerama
CONFIGURE_ENV= LDFLAGS="-L${LOCALBASE}/lib" \
FLEX="${LOCALBASE}/bin/flex"
WINELIBDIR?= ${PREFIX}/lib

View file

@ -1,2 +1,2 @@
SHA256 (wine-1.3.18.tar.bz2) = 994064d326954e6df252002891bfcbb987a35aa573ab74be605224f66623a4ac
SIZE (wine-1.3.18.tar.bz2) = 19155641
SHA256 (wine-1.3.19.tar.bz2) = 8686777c08d76be742f089a292cb5f7b339d7d4cc6ca8161c97d97dec9e4e78d
SIZE (wine-1.3.19.tar.bz2) = 19185499

View file

@ -0,0 +1,54 @@
diff --git a/dlls/wineoss.drv/mmdevdrv.c b/dlls/wineoss.drv/mmdevdrv.c
index ff21cd6..76fd474 100644
--- dlls/wineoss.drv/mmdevdrv.c
+++ dlls/wineoss.drv/mmdevdrv.c
@@ -500,7 +500,7 @@ static int get_oss_format(const WAVEFORMATEX *fmt)
case 16:
return AFMT_S16_LE;
case 24:
- return AFMT_S24_PACKED;
+ return AFMT_S24_LE;
case 32:
return AFMT_S32_LE;
}
@@ -513,7 +513,9 @@ static int get_oss_format(const WAVEFORMATEX *fmt)
if(fmt->wBitsPerSample != 32)
return -1;
+#ifdef AFMT_FLOAT
return AFMT_FLOAT;
+#endif
}
return -1;
@@ -944,16 +946,18 @@ static HRESULT WINAPI AudioClient_GetMixFormat(IAudioClient *iface,
if(formats & AFMT_S16_LE){
fmt->Format.wBitsPerSample = 16;
fmt->SubFormat = KSDATAFORMAT_SUBTYPE_PCM;
+#ifdef AFMT_FLOAT
}else if(formats & AFMT_FLOAT){
fmt->Format.wBitsPerSample = 32;
fmt->SubFormat = KSDATAFORMAT_SUBTYPE_IEEE_FLOAT;
+#endif
}else if(formats & AFMT_U8){
fmt->Format.wBitsPerSample = 8;
fmt->SubFormat = KSDATAFORMAT_SUBTYPE_PCM;
}else if(formats & AFMT_S32_LE){
fmt->Format.wBitsPerSample = 32;
fmt->SubFormat = KSDATAFORMAT_SUBTYPE_PCM;
- }else if(formats & AFMT_S24_PACKED){
+ }else if(formats & AFMT_S24_LE){
fmt->Format.wBitsPerSample = 24;
fmt->SubFormat = KSDATAFORMAT_SUBTYPE_PCM;
}else{
@@ -1174,6 +1178,10 @@ static HRESULT WINAPI AudioClient_Stop(IAudioClient *iface)
This->timer = NULL;
}
+#ifndef SNDCTL_DSP_HALT
+#define SNDCTL_DSP_HALT SNDCTL_DSP_RESET
+#endif
+
if(ioctl(This->fd, SNDCTL_DSP_HALT, NULL) < 0){
LeaveCriticalSection(&This->lock);
WARN("HALT failed: %d (%s)\n", errno, strerror(errno));

View file

@ -175,6 +175,7 @@ include/wine/windows/d3drmwin.h
include/wine/windows/d3dtypes.h
include/wine/windows/d3dvec.inl
include/wine/windows/d3dx9.h
include/wine/windows/d3dx9anim.h
include/wine/windows/d3dx9core.h
include/wine/windows/d3dx9effect.h
include/wine/windows/d3dx9math.h
@ -183,6 +184,7 @@ include/wine/windows/d3dx9mesh.h
include/wine/windows/d3dx9shader.h
include/wine/windows/d3dx9shape.h
include/wine/windows/d3dx9tex.h
include/wine/windows/d3dx9xof.h
include/wine/windows/dbccmd.idl
include/wine/windows/dbcses.idl
include/wine/windows/dbdsad.idl
@ -1041,6 +1043,7 @@ lib/wine/fakedlls/mssip32.dll
lib/wine/fakedlls/mstask.dll
lib/wine/fakedlls/msvcirt.dll
lib/wine/fakedlls/msvcp100.dll
lib/wine/fakedlls/msvcp60.dll
lib/wine/fakedlls/msvcp80.dll
lib/wine/fakedlls/msvcp90.dll
lib/wine/fakedlls/msvcr100.dll
@ -1526,6 +1529,7 @@ lib/wine/mssip32.dll.so
lib/wine/mstask.dll.so
lib/wine/msvcirt.dll.so
lib/wine/msvcp100.dll.so
lib/wine/msvcp60.dll.so
lib/wine/msvcp80.dll.so
lib/wine/msvcp90.dll.so
lib/wine/msvcr100.dll.so