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:
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
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
54
emulators/wine-devel/files/patch-dlls-wineoss.drv
Normal file
54
emulators/wine-devel/files/patch-dlls-wineoss.drv
Normal 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));
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
54
emulators/wine/files/patch-dlls-wineoss.drv
Normal file
54
emulators/wine/files/patch-dlls-wineoss.drv
Normal 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));
|
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue