summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorStelios Tsampas2020-11-19 01:19:19 +0200
committerStelios Tsampas2020-11-19 01:19:19 +0200
commited1728461b3bf82c70b3be35a66d46dab6ea16b7 (patch)
tree4abdeed265cea5e36fb6674298ea6bb377a00a57
parentdd8856d07413fcab8d85a9b9fbb3409c7944bb90 (diff)
downloadaur-ed1728461b3bf82c70b3be35a66d46dab6ea16b7.tar.gz
Use system mono
-rw-r--r--.SRCINFO5
-rw-r--r--PKGBUILD67
-rw-r--r--wine-gcc10.patch479
3 files changed, 33 insertions, 518 deletions
diff --git a/.SRCINFO b/.SRCINFO
index e3d3196d1069..f3f95815bed5 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = proton-native
pkgdesc = Compatibility tool for Steam Play based on Wine and additional components. Monolithic distribution
pkgver = 5.13.2
- pkgrel = 2
+ pkgrel = 3
epoch = 1
url = https://github.com/ValveSoftware/Proton
arch = x86_64
@@ -176,7 +176,6 @@ pkgbase = proton-native
optdepends = cups
optdepends = samba
optdepends = dosbox
- noextract = wine-mono-5.1.1-x86.tar.xz
source = proton::git+https://github.com/ValveSoftware/Proton.git#tag=proton-5.13-2
source = wine-valve::git+https://github.com/ValveSoftware/wine.git
source = vkd3d-proton::git+https://github.com/HansKristian-Work/vkd3d-proton.git
@@ -191,7 +190,6 @@ pkgbase = proton-native
source = gst-orc::git+https://gitlab.freedesktop.org/gstreamer/orc.git
source = gst-plugins-base::git+https://gitlab.freedesktop.org/gstreamer/gst-plugins-base.git
source = gst-plugins-good::git+https://gitlab.freedesktop.org/gstreamer/gst-plugins-good.git
- source = https://github.com/madewokherd/wine-mono/releases/download/wine-mono-5.1.1/wine-mono-5.1.1-x86.tar.xz
source = proton-unfuck_makefile.patch
source = proton-disable_lock.patch
source = proton-user_compat_data.patch
@@ -211,7 +209,6 @@ pkgbase = proton-native
sha256sums = SKIP
sha256sums = SKIP
sha256sums = SKIP
- sha256sums = b17ac815afbf5eef768c4e8d50800be02af75c8b230d668e239bad99616caa82
sha256sums = 37ca48c0b64b94155e0af1ae06921e120db05817f3dcb6c44d4c55c03a28d595
sha256sums = 8263a3ffb7f8e7a5d81bfbffe1843d6f84502d3443fe40f065bcae02b36ba954
sha256sums = 20f7cd3e70fad6f48d2f1a26a485906a36acf30903bf0eefbf82a7c400e248f3
diff --git a/PKGBUILD b/PKGBUILD
index e366d6c9f2e0..da39cc9a4c7b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -6,7 +6,7 @@ _commit=
pkgver=${_srctag//-/.}
_geckover=2.47.1
_monover=5.1.1
-pkgrel=2
+pkgrel=3
epoch=1
pkgdesc="Compatibility tool for Steam Play based on Wine and additional components. Monolithic distribution"
arch=(x86_64)
@@ -31,7 +31,8 @@ depends=(
desktop-file-utils
python
steam-native-runtime
- "wine-gecko-bin>=$_geckover"
+ "wine-gecko-bin=$_geckover"
+ "wine-mono-bin=$_monover"
)
makedepends=(autoconf ncurses bison perl fontforge flex mingw-w64-gcc
meson
@@ -110,7 +111,6 @@ source=(
gst-orc::git+https://gitlab.freedesktop.org/gstreamer/orc.git
gst-plugins-base::git+https://gitlab.freedesktop.org/gstreamer/gst-plugins-base.git
gst-plugins-good::git+https://gitlab.freedesktop.org/gstreamer/gst-plugins-good.git
- https://github.com/madewokherd/wine-mono/releases/download/wine-mono-${_monover}/wine-mono-${_monover}-x86.tar.xz
proton-unfuck_makefile.patch
proton-disable_lock.patch
proton-user_compat_data.patch
@@ -118,34 +118,9 @@ source=(
vkd3d-extraopts.patch
)
noextract=(
- wine-mono-${_monover}-x86.tar.xz
-)
-sha256sums=(
- SKIP
- SKIP
- SKIP
- SKIP
- SKIP
- SKIP
- SKIP
- SKIP
- SKIP
- SKIP
- SKIP
- SKIP
- SKIP
- SKIP
- 'b17ac815afbf5eef768c4e8d50800be02af75c8b230d668e239bad99616caa82'
- '37ca48c0b64b94155e0af1ae06921e120db05817f3dcb6c44d4c55c03a28d595'
- '8263a3ffb7f8e7a5d81bfbffe1843d6f84502d3443fe40f065bcae02b36ba954'
- '20f7cd3e70fad6f48d2f1a26a485906a36acf30903bf0eefbf82a7c400e248f3'
- 'bc17f1ef1e246db44c0fa3874290ad0a5852b0b3fe75902b39834913e3811d98'
- '7c5f9c20e41c0cd7d0d18867950a776608cef43e0ab9ebad2addb61e613fe17a'
)
prepare() {
- [ ! -d mono ] && mkdir mono
- cp "wine-mono-${_monover}-x86.tar.xz" mono/
[ ! -d build ] && mkdir build
cd proton
@@ -248,13 +223,18 @@ build() {
# MingW Wine builds fail with relro
export LDFLAGS="${LDFLAGS/,-z,relro/}"
+ # Provide system gecko and mono to be availabe
+ # during the default prefix creation
+ mkdir -p dist/dist/share/wine/
+ ln -s /usr/share/wine/gecko dist/dist/share/wine/gecko
+ ln -s /usr/share/wine/mono dist/dist/share/wine/mono
+
+ export WINEESYNC=0
+ export WINEFSYNC=0
SUBMAKE_JOBS="${MAKEFLAGS/-j/}" \
- WINEESYNC=0 \
- WINEFSYNC=0 \
NO_DXVK=0 \
- SYSTEM_GSTREAMER=0 \
SYSTEM_GECKO=1 \
- SYSTEM_MONO=0 \
+ SYSTEM_MONO=1 \
make -j1 dist
}
@@ -271,10 +251,27 @@ package() {
x86_64-w64-mingw32-strip --strip-unneeded \
"$_compatdir/${pkgname}"/dist/lib64/wine/{,fakedlls/,dxvk/,vkd3d-proton/}*.dll
- ln -s /usr/share/wine/gecko \
- "$_compatdir/${pkgname}"/dist/share/wine/gecko
-
mkdir -p "$pkgdir/usr/share/licenses/${pkgname}"
mv "$_compatdir/${pkgname}"/LICENSE{,.OFL} \
"$pkgdir/usr/share/licenses/${pkgname}"
}
+
+sha256sums=('SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ '37ca48c0b64b94155e0af1ae06921e120db05817f3dcb6c44d4c55c03a28d595'
+ '8263a3ffb7f8e7a5d81bfbffe1843d6f84502d3443fe40f065bcae02b36ba954'
+ '20f7cd3e70fad6f48d2f1a26a485906a36acf30903bf0eefbf82a7c400e248f3'
+ 'bc17f1ef1e246db44c0fa3874290ad0a5852b0b3fe75902b39834913e3811d98'
+ '7c5f9c20e41c0cd7d0d18867950a776608cef43e0ab9ebad2addb61e613fe17a')
diff --git a/wine-gcc10.patch b/wine-gcc10.patch
deleted file mode 100644
index 35cc5f0afbbd..000000000000
--- a/wine-gcc10.patch
+++ /dev/null
@@ -1,479 +0,0 @@
-From 5740b735cdb44fb89a41f3090dcc3dabf360ab41 Mon Sep 17 00:00:00 2001
-From: Michael Cronenworth <mike@cchtml.com>
-Date: Thu, 23 Jan 2020 17:05:19 -0600
-Subject: [PATCH] crypt32: Global variable compatibility update for gcc 10.
-
-Signed-off-by: Michael Cronenworth <mike@cchtml.com>
-Signed-off-by: Alexandre Julliard <julliard@winehq.org>
----
- dlls/crypt32/crypt32_private.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/dlls/crypt32/crypt32_private.h b/dlls/crypt32/crypt32_private.h
-index 3d0129e7d40..d92eb1a1570 100644
---- a/wine/dlls/crypt32/crypt32_private.h
-+++ b/wine/dlls/crypt32/crypt32_private.h
-@@ -152,7 +152,7 @@ BOOL WINAPI CRYPT_AsnEncodePubKeyInfoNoNull(DWORD dwCertEncodingType,
- */
- HCRYPTPROV WINAPI I_CryptGetDefaultCryptProv(ALG_ID);
-
--HINSTANCE hInstance DECLSPEC_HIDDEN;
-+extern HINSTANCE hInstance DECLSPEC_HIDDEN;
-
- void crypt_oid_init(void) DECLSPEC_HIDDEN;
- void crypt_oid_free(void) DECLSPEC_HIDDEN;
-From fba65a153759dd60f470fe9a787f074cbf0f7ea8 Mon Sep 17 00:00:00 2001
-From: Michael Cronenworth <mike@cchtml.com>
-Date: Thu, 23 Jan 2020 17:05:20 -0600
-Subject: [PATCH] dsound: Global variable compatibility update for gcc 10.
-
-Signed-off-by: Michael Cronenworth <mike@cchtml.com>
-Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
-Signed-off-by: Alexandre Julliard <julliard@winehq.org>
----
- dlls/dsound/dsound_private.h | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/dlls/dsound/dsound_private.h b/dlls/dsound/dsound_private.h
-index 69c4a2f3902..930c3e92ec8 100644
---- a/wine/dlls/dsound/dsound_private.h
-+++ b/wine/dlls/dsound/dsound_private.h
-@@ -188,9 +188,9 @@ HRESULT IDirectSoundBufferImpl_Duplicate(
- IDirectSoundBufferImpl **ppdsb,
- IDirectSoundBufferImpl *pdsb) DECLSPEC_HIDDEN;
- void secondarybuffer_destroy(IDirectSoundBufferImpl *This) DECLSPEC_HIDDEN;
--const IDirectSound3DListenerVtbl ds3dlvt DECLSPEC_HIDDEN;
--const IDirectSound3DBufferVtbl ds3dbvt DECLSPEC_HIDDEN;
--const IKsPropertySetVtbl iksbvt DECLSPEC_HIDDEN;
-+extern const IDirectSound3DListenerVtbl ds3dlvt DECLSPEC_HIDDEN;
-+extern const IDirectSound3DBufferVtbl ds3dbvt DECLSPEC_HIDDEN;
-+extern const IKsPropertySetVtbl iksbvt DECLSPEC_HIDDEN;
-
- HRESULT IKsPrivatePropertySetImpl_Create(REFIID riid, void **ppv) DECLSPEC_HIDDEN;
-
-From 453980e13015e20dd551531be69b3361b63f22b1 Mon Sep 17 00:00:00 2001
-From: Michael Cronenworth <mike@cchtml.com>
-Date: Thu, 23 Jan 2020 17:05:21 -0600
-Subject: [PATCH] gphoto2.ds: Global variable compatibility update for gcc 10.
-
-Signed-off-by: Michael Cronenworth <mike@cchtml.com>
-Signed-off-by: Alexandre Julliard <julliard@winehq.org>
----
- dlls/gphoto2.ds/gphoto2_i.h | 4 +++-
- dlls/gphoto2.ds/gphoto2_main.c | 2 ++
- 2 files changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/dlls/gphoto2.ds/gphoto2_i.h b/dlls/gphoto2.ds/gphoto2_i.h
-index 9ab8bbbf33b..4171fcae4f4 100644
---- a/wine/dlls/gphoto2.ds/gphoto2_i.h
-+++ b/wine/dlls/gphoto2.ds/gphoto2_i.h
-@@ -100,7 +100,9 @@ struct tagActiveDS
- struct jpeg_decompress_struct jd;
- struct jpeg_error_mgr jerr;
- #endif
--} activeDS DECLSPEC_HIDDEN;
-+};
-+
-+extern struct tagActiveDS activeDS DECLSPEC_HIDDEN;
-
- /* Helper functions */
- extern TW_UINT16 GPHOTO2_SaneCapability (pTW_CAPABILITY pCapability, TW_UINT16 action) DECLSPEC_HIDDEN;
-diff --git a/dlls/gphoto2.ds/gphoto2_main.c b/dlls/gphoto2.ds/gphoto2_main.c
-index 28100414cc7..4d71c89e2e2 100644
---- a/wine/dlls/gphoto2.ds/gphoto2_main.c
-+++ b/wine/dlls/gphoto2.ds/gphoto2_main.c
-@@ -33,6 +33,8 @@
-
- WINE_DEFAULT_DEBUG_CHANNEL(twain);
-
-+struct tagActiveDS activeDS;
-+
- DSMENTRYPROC GPHOTO2_dsmentry;
-
- #ifdef HAVE_GPHOTO2
-From e402fdf364fc76838ba4e11a11fef3c552110639 Mon Sep 17 00:00:00 2001
-From: Michael Cronenworth <mike@cchtml.com>
-Date: Thu, 23 Jan 2020 17:05:22 -0600
-Subject: [PATCH] mshtml: Global variable compatibility update for gcc 10.
-
-Signed-off-by: Jacek Caban <jacek@codeweavers.com>
-Signed-off-by: Alexandre Julliard <julliard@winehq.org>
----
- dlls/mshtml/htmlstyle.h | 2 +-
- dlls/mshtml/main.c | 7 +++++++
- dlls/mshtml/mshtml_private.h | 12 ++++++------
- 3 files changed, 14 insertions(+), 7 deletions(-)
-
-diff --git a/dlls/mshtml/htmlstyle.h b/dlls/mshtml/htmlstyle.h
-index 9dcf3d9eed1..7a83897043b 100644
---- a/wine/dlls/mshtml/htmlstyle.h
-+++ b/wine/dlls/mshtml/htmlstyle.h
-@@ -142,7 +142,7 @@ void init_css_style(CSSStyle*,nsIDOMCSSStyleDeclaration*,style_qi_t,
- dispex_static_data_t*,compat_mode_t) DECLSPEC_HIDDEN;
-
- void CSSStyle_init_dispex_info(dispex_data_t *info, compat_mode_t mode) DECLSPEC_HIDDEN;
--const dispex_static_data_vtbl_t CSSStyle_dispex_vtbl DECLSPEC_HIDDEN;
-+extern const dispex_static_data_vtbl_t CSSStyle_dispex_vtbl DECLSPEC_HIDDEN;
-
- HRESULT get_style_property(CSSStyle*,styleid_t,BSTR*) DECLSPEC_HIDDEN;
- HRESULT get_style_property_var(CSSStyle*,styleid_t,VARIANT*) DECLSPEC_HIDDEN;
-diff --git a/dlls/mshtml/main.c b/dlls/mshtml/main.c
-index 29396a5475a..e2c927c5f9d 100644
---- a/wine/dlls/mshtml/main.c
-+++ b/wine/dlls/mshtml/main.c
-@@ -51,6 +51,13 @@ WINE_DEFAULT_DEBUG_CHANNEL(mshtml);
- HINSTANCE hInst;
- DWORD mshtml_tls = TLS_OUT_OF_INDEXES;
-
-+void (__cdecl *ccp_init)(ExternalCycleCollectionParticipant*,const CCObjCallback*);
-+nsrefcnt (__cdecl *ccref_decr)(nsCycleCollectingAutoRefCnt*,nsISupports*,ExternalCycleCollectionParticipant*);
-+nsrefcnt (__cdecl *ccref_incr)(nsCycleCollectingAutoRefCnt*,nsISupports*);
-+void (__cdecl *ccref_init)(nsCycleCollectingAutoRefCnt*,nsrefcnt);
-+void (__cdecl *describe_cc_node)(nsCycleCollectingAutoRefCnt*,const char*,nsCycleCollectionTraversalCallback*);
-+void (__cdecl *note_cc_edge)(nsISupports*,const char*,nsCycleCollectionTraversalCallback*);
-+
- static HINSTANCE shdoclc = NULL;
- static WCHAR *status_strings[IDS_STATUS_LAST-IDS_STATUS_FIRST+1];
- static IMultiLanguage2 *mlang;
-diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h
-index 9612b326088..cc9eefc5283 100644
---- a/wine/dlls/mshtml/mshtml_private.h
-+++ b/wine/dlls/mshtml/mshtml_private.h
-@@ -355,12 +355,12 @@ typedef struct {
-
- DEFINE_GUID(IID_nsXPCOMCycleCollectionParticipant, 0x9674489b,0x1f6f,0x4550,0xa7,0x30, 0xcc,0xae,0xdd,0x10,0x4c,0xf9);
-
--nsrefcnt (__cdecl *ccref_incr)(nsCycleCollectingAutoRefCnt*,nsISupports*) DECLSPEC_HIDDEN;
--nsrefcnt (__cdecl *ccref_decr)(nsCycleCollectingAutoRefCnt*,nsISupports*,ExternalCycleCollectionParticipant*) DECLSPEC_HIDDEN;
--void (__cdecl *ccref_init)(nsCycleCollectingAutoRefCnt*,nsrefcnt) DECLSPEC_HIDDEN;
--void (__cdecl *ccp_init)(ExternalCycleCollectionParticipant*,const CCObjCallback*) DECLSPEC_HIDDEN;
--void (__cdecl *describe_cc_node)(nsCycleCollectingAutoRefCnt*,const char*,nsCycleCollectionTraversalCallback*) DECLSPEC_HIDDEN;
--void (__cdecl *note_cc_edge)(nsISupports*,const char*,nsCycleCollectionTraversalCallback*) DECLSPEC_HIDDEN;
-+extern nsrefcnt (__cdecl *ccref_incr)(nsCycleCollectingAutoRefCnt*,nsISupports*) DECLSPEC_HIDDEN;
-+extern nsrefcnt (__cdecl *ccref_decr)(nsCycleCollectingAutoRefCnt*,nsISupports*,ExternalCycleCollectionParticipant*) DECLSPEC_HIDDEN;
-+extern void (__cdecl *ccref_init)(nsCycleCollectingAutoRefCnt*,nsrefcnt) DECLSPEC_HIDDEN;
-+extern void (__cdecl *ccp_init)(ExternalCycleCollectionParticipant*,const CCObjCallback*) DECLSPEC_HIDDEN;
-+extern void (__cdecl *describe_cc_node)(nsCycleCollectingAutoRefCnt*,const char*,nsCycleCollectionTraversalCallback*) DECLSPEC_HIDDEN;
-+extern void (__cdecl *note_cc_edge)(nsISupports*,const char*,nsCycleCollectionTraversalCallback*) DECLSPEC_HIDDEN;
-
- void init_dispex_with_compat_mode(DispatchEx*,IUnknown*,dispex_static_data_t*,compat_mode_t) DECLSPEC_HIDDEN;
- void release_dispex(DispatchEx*) DECLSPEC_HIDDEN;
-From cc7f698b8245a48669d248569e7589ff824f2c70 Mon Sep 17 00:00:00 2001
-From: Michael Cronenworth <mike@cchtml.com>
-Date: Thu, 23 Jan 2020 17:05:23 -0600
-Subject: [PATCH] msi: Global variable compatibility update for gcc 10.
-
-Signed-off-by: Michael Cronenworth <mike@cchtml.com>
-Signed-off-by: Hans Leidekker <hans@codeweavers.com>
-Signed-off-by: Alexandre Julliard <julliard@winehq.org>
----
- dlls/msi/msi.c | 2 ++
- dlls/msi/msipriv.h | 2 +-
- 2 files changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/dlls/msi/msi.c b/dlls/msi/msi.c
-index 7bf5004bed1..6387b0a9372 100644
---- a/wine/dlls/msi/msi.c
-+++ b/wine/dlls/msi/msi.c
-@@ -51,6 +51,8 @@
-
- WINE_DEFAULT_DEBUG_CHANNEL(msi);
-
-+BOOL is_wow64;
-+
- static const WCHAR installerW[] = {'\\','I','n','s','t','a','l','l','e','r',0};
-
- UINT msi_locate_product(LPCWSTR szProduct, MSIINSTALLCONTEXT *context)
-diff --git a/dlls/msi/msipriv.h b/dlls/msi/msipriv.h
-index fca2f9e7b4d..6b87cfb3d86 100644
---- a/wine/dlls/msi/msipriv.h
-+++ b/wine/dlls/msi/msipriv.h
-@@ -42,7 +42,7 @@
- #include "winemsi.h"
-
- static const BOOL is_64bit = sizeof(void *) > sizeof(int);
--BOOL is_wow64 DECLSPEC_HIDDEN;
-+extern BOOL is_wow64 DECLSPEC_HIDDEN;
-
- #define MSI_DATASIZEMASK 0x00ff
- #define MSITYPE_VALID 0x0100
-From c13d58780f78393571dfdeb5b4952e3dcd7ded90 Mon Sep 17 00:00:00 2001
-From: Michael Cronenworth <mike@cchtml.com>
-Date: Thu, 23 Jan 2020 17:05:24 -0600
-Subject: [PATCH] sane.ds: Global variable compatibility update for gcc 10.
-
-Signed-off-by: Michael Cronenworth <mike@cchtml.com>
-Signed-off-by: Alexandre Julliard <julliard@winehq.org>
----
- dlls/sane.ds/sane_i.h | 6 ++++--
- dlls/sane.ds/sane_main.c | 18 ++++++++++++++++++
- 2 files changed, 22 insertions(+), 2 deletions(-)
-
-diff --git a/dlls/sane.ds/sane_i.h b/dlls/sane.ds/sane_i.h
-index 941e8b9e1b9..9351bdc2229 100644
---- a/wine/dlls/sane.ds/sane_i.h
-+++ b/wine/dlls/sane.ds/sane_i.h
-@@ -36,7 +36,7 @@
- #include "twain.h"
-
- #ifdef SONAME_LIBSANE
--#define MAKE_FUNCPTR(f) typeof(f) * p##f DECLSPEC_HIDDEN;
-+#define MAKE_FUNCPTR(f) extern typeof(f) * p##f DECLSPEC_HIDDEN;
- MAKE_FUNCPTR(sane_init)
- MAKE_FUNCPTR(sane_exit)
- MAKE_FUNCPTR(sane_get_devices)
-@@ -84,7 +84,9 @@ struct tagActiveDS
- TW_FIX32 defaultXResolution;
- BOOL YResolutionSet;
- TW_FIX32 defaultYResolution;
--} activeDS DECLSPEC_HIDDEN;
-+};
-+
-+extern struct tagActiveDS activeDS DECLSPEC_HIDDEN;
-
- /* Helper functions */
- extern TW_UINT16 SANE_SaneCapability (pTW_CAPABILITY pCapability, TW_UINT16 action) DECLSPEC_HIDDEN;
-diff --git a/dlls/sane.ds/sane_main.c b/dlls/sane.ds/sane_main.c
-index 7af0a2321ac..0cf211d0983 100644
---- a/wine/dlls/sane.ds/sane_main.c
-+++ b/wine/dlls/sane.ds/sane_main.c
-@@ -30,9 +30,27 @@
-
- WINE_DEFAULT_DEBUG_CHANNEL(twain);
-
-+struct tagActiveDS activeDS;
-+
- DSMENTRYPROC SANE_dsmentry;
-
- #ifdef SONAME_LIBSANE
-+#define MAKE_FUNCPTR(f) typeof(f) * p##f;
-+MAKE_FUNCPTR(sane_init)
-+MAKE_FUNCPTR(sane_exit)
-+MAKE_FUNCPTR(sane_get_devices)
-+MAKE_FUNCPTR(sane_open)
-+MAKE_FUNCPTR(sane_close)
-+MAKE_FUNCPTR(sane_get_option_descriptor)
-+MAKE_FUNCPTR(sane_control_option)
-+MAKE_FUNCPTR(sane_get_parameters)
-+MAKE_FUNCPTR(sane_start)
-+MAKE_FUNCPTR(sane_read)
-+MAKE_FUNCPTR(sane_cancel)
-+MAKE_FUNCPTR(sane_set_io_mode)
-+MAKE_FUNCPTR(sane_get_select_fd)
-+MAKE_FUNCPTR(sane_strstatus)
-+#undef MAKE_FUNCPTR
-
- HINSTANCE SANE_instance;
-
-From 93888fbb3e4d973f5878a0aab16a9d64fb73a764 Mon Sep 17 00:00:00 2001
-From: Michael Cronenworth <mike@cchtml.com>
-Date: Thu, 23 Jan 2020 17:05:25 -0600
-Subject: [PATCH] secur32: Global variable compatibility update for gcc 10.
-
-Signed-off-by: Michael Cronenworth <mike@cchtml.com>
-Signed-off-by: Alexandre Julliard <julliard@winehq.org>
----
- dlls/secur32/ntlm.c | 4 ++--
- dlls/secur32/secur32_priv.h | 3 ---
- 2 files changed, 2 insertions(+), 5 deletions(-)
-
-diff --git a/dlls/secur32/ntlm.c b/dlls/secur32/ntlm.c
-index b368a5f0165..4e3fda3ea98 100644
---- a/wine/dlls/secur32/ntlm.c
-+++ b/wine/dlls/secur32/ntlm.c
-@@ -1387,8 +1387,8 @@ static const SecPkgInfoA infoA = {
- ntlm_comment_A
- };
-
--SecPkgInfoA *ntlm_package_infoA = (SecPkgInfoA *)&infoA;
--SecPkgInfoW *ntlm_package_infoW = (SecPkgInfoW *)&infoW;
-+static SecPkgInfoA *ntlm_package_infoA = (SecPkgInfoA *)&infoA;
-+static SecPkgInfoW *ntlm_package_infoW = (SecPkgInfoW *)&infoW;
-
- static SecPkgInfoW *build_package_infoW( const SecPkgInfoW *info )
- {
-diff --git a/dlls/secur32/secur32_priv.h b/dlls/secur32/secur32_priv.h
-index 5ed26d67ef2..1bff1372b08 100644
---- a/wine/dlls/secur32/secur32_priv.h
-+++ b/wine/dlls/secur32/secur32_priv.h
-@@ -190,9 +190,6 @@ void SECUR32_arc4Cleanup(arc4_info *a4i) DECLSPEC_HIDDEN;
- #define NTLMSSP_NEGOTIATE_56 0x80000000
-
-
--SecPkgInfoW *ntlm_package_infoW DECLSPEC_HIDDEN;
--SecPkgInfoA *ntlm_package_infoA DECLSPEC_HIDDEN;
--
- /* schannel internal interface */
- typedef struct schan_imp_session_opaque *schan_imp_session;
-
-From 4a91eb362666b3af549c48b95e093051756628e0 Mon Sep 17 00:00:00 2001
-From: Michael Cronenworth <mike@cchtml.com>
-Date: Thu, 23 Jan 2020 17:05:26 -0600
-Subject: [PATCH] twain_32: Global variable compatibility update for gcc 10.
-
-Signed-off-by: Michael Cronenworth <mike@cchtml.com>
-Signed-off-by: Alexandre Julliard <julliard@winehq.org>
----
- dlls/twain_32/twain32_main.c | 4 +++-
- dlls/twain_32/twain_i.h | 6 +++---
- 2 files changed, 6 insertions(+), 4 deletions(-)
-
-diff --git a/dlls/twain_32/twain32_main.c b/dlls/twain_32/twain32_main.c
-index b1beb969580..0f8ee144306 100644
---- a/wine/dlls/twain_32/twain32_main.c
-+++ b/wine/dlls/twain_32/twain32_main.c
-@@ -29,7 +29,9 @@
-
- WINE_DEFAULT_DEBUG_CHANNEL(twain);
-
--extern HINSTANCE DSM_hinstance;
-+TW_UINT16 DSM_twCC;
-+activeDS *activeSources;
-+HINSTANCE DSM_hinstance;
-
- BOOL WINAPI DllMain (HINSTANCE hinstance, DWORD reason, LPVOID reserved)
- {
-diff --git a/dlls/twain_32/twain_i.h b/dlls/twain_32/twain_i.h
-index 7939d233bb0..ad513458cdc 100644
---- a/wine/dlls/twain_32/twain_i.h
-+++ b/wine/dlls/twain_32/twain_i.h
-@@ -45,11 +45,11 @@ typedef struct tagActiveDS
- HWND event_window;
- } activeDS;
-
--TW_UINT16 DSM_twCC DECLSPEC_HIDDEN; /* current condition code of Source Manager */
-+extern TW_UINT16 DSM_twCC DECLSPEC_HIDDEN; /* current condition code of Source Manager */
-
--activeDS *activeSources DECLSPEC_HIDDEN; /* list of active data sources */
-+extern activeDS *activeSources DECLSPEC_HIDDEN; /* list of active data sources */
-
--HINSTANCE DSM_hinstance DECLSPEC_HIDDEN;
-+extern HINSTANCE DSM_hinstance DECLSPEC_HIDDEN;
-
- /* Implementation of operation triplets (From Application to Source Manager) */
- extern TW_UINT16 TWAIN_CloseDS
-From bc51c5d589de709e1d393b58b0cc5985c78061ac Mon Sep 17 00:00:00 2001
-From: Michael Cronenworth <mike@cchtml.com>
-Date: Thu, 23 Jan 2020 17:05:28 -0600
-Subject: [PATCH] webservices: Global variable compatibility update for gcc 10.
-
-Signed-off-by: Michael Cronenworth <mike@cchtml.com>
-Signed-off-by: Hans Leidekker <hans@codeweavers.com>
-Signed-off-by: Alexandre Julliard <julliard@winehq.org>
----
- dlls/webservices/webservices_private.h | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/dlls/webservices/webservices_private.h b/dlls/webservices/webservices_private.h
-index 6f2b90dad28..b352aa52d49 100644
---- a/wine/dlls/webservices/webservices_private.h
-+++ b/wine/dlls/webservices/webservices_private.h
-@@ -18,7 +18,7 @@
-
- #include "winhttp.h"
-
--_locale_t c_locale DECLSPEC_HIDDEN;
-+extern _locale_t c_locale DECLSPEC_HIDDEN;
-
- #define STREAM_BUFSIZE 4096
-
-@@ -50,8 +50,8 @@ struct dictionary
- ULONG current_sequence;
- ULONG *sequence;
- };
--struct dictionary dict_builtin DECLSPEC_HIDDEN;
--const struct dictionary dict_builtin_static DECLSPEC_HIDDEN;
-+extern struct dictionary dict_builtin DECLSPEC_HIDDEN;
-+extern const struct dictionary dict_builtin_static DECLSPEC_HIDDEN;
-
- int find_string( const struct dictionary *, const unsigned char *, ULONG, ULONG * ) DECLSPEC_HIDDEN;
- HRESULT insert_string( struct dictionary *, unsigned char *, ULONG, int, ULONG * ) DECLSPEC_HIDDEN;
-From da21c305164c3e585e29e20242afc5a31f91989f Mon Sep 17 00:00:00 2001
-From: Michael Cronenworth <mike@cchtml.com>
-Date: Thu, 23 Jan 2020 17:05:27 -0600
-Subject: [PATCH] wbemprox: Global variable compatibility update for gcc 10.
-
-Signed-off-by: Michael Cronenworth <mike@cchtml.com>
-Signed-off-by: Alexandre Julliard <julliard@winehq.org>
----
- dlls/wbemprox/main.c | 2 ++
- dlls/wbemprox/wbemprox_private.h | 4 ++--
- 2 files changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/dlls/wbemprox/main.c b/dlls/wbemprox/main.c
-index d90f4f8cc63..09084414983 100644
---- a/wine/dlls/wbemprox/main.c
-+++ b/wine/dlls/wbemprox/main.c
-@@ -35,6 +35,8 @@ WINE_DEFAULT_DEBUG_CHANNEL(wbemprox);
-
- static HINSTANCE instance;
-
-+struct list *table_list;
-+
- typedef HRESULT (*fnCreateInstance)( LPVOID *ppObj );
-
- typedef struct
-diff --git a/dlls/wbemprox/wbemprox_private.h b/dlls/wbemprox/wbemprox_private.h
-index 9d39a7c92ba..9096b392e38 100644
---- a/wine/dlls/wbemprox/wbemprox_private.h
-+++ b/wine/dlls/wbemprox/wbemprox_private.h
-@@ -20,8 +20,8 @@
- #include "wine/heap.h"
- #include "wine/list.h"
-
--IClientSecurity client_security DECLSPEC_HIDDEN;
--struct list *table_list DECLSPEC_HIDDEN;
-+extern IClientSecurity client_security DECLSPEC_HIDDEN;
-+extern struct list *table_list DECLSPEC_HIDDEN;
-
- enum param_direction
- {
-From 388348ddbf7d138fed3a6fe48bf6666a95ef3528 Mon Sep 17 00:00:00 2001
-From: Michael Cronenworth <mike@cchtml.com>
-Date: Thu, 23 Jan 2020 17:05:29 -0600
-Subject: [PATCH] winebus: Global variable compatibility update for gcc 10.
-
-Signed-off-by: Michael Cronenworth <mike@cchtml.com>
-Signed-off-by: Alexandre Julliard <julliard@winehq.org>
----
- dlls/winebus.sys/bus.h | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/dlls/winebus.sys/bus.h b/dlls/winebus.sys/bus.h
-index 041a37ad040..22a4b46a516 100644
---- a/wine/dlls/winebus.sys/bus.h
-+++ b/wine/dlls/winebus.sys/bus.h
-@@ -54,5 +54,5 @@ DEVICE_OBJECT* bus_enumerate_hid_devices(const platform_vtbl *vtbl, enum_func fu
- DWORD check_bus_option(const UNICODE_STRING *option, DWORD default_value) DECLSPEC_HIDDEN;
- BOOL is_xbox_gamepad(WORD vid, WORD pid) DECLSPEC_HIDDEN;
-
--HANDLE driver_key DECLSPEC_HIDDEN;
--DEVICE_OBJECT *bus_pdo DECLSPEC_HIDDEN;
-+extern HANDLE driver_key DECLSPEC_HIDDEN;
-+extern DEVICE_OBJECT *bus_pdo DECLSPEC_HIDDEN;
-From 44e69405adcdc98d6b0777e6c0acb2697d776ef8 Mon Sep 17 00:00:00 2001
-From: Michael Cronenworth <mike@cchtml.com>
-Date: Thu, 23 Jan 2020 17:05:30 -0600
-Subject: [PATCH] xinput: Global variable compatibility update for gcc 10.
-
-Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
-Signed-off-by: Alexandre Julliard <julliard@winehq.org>
----
- dlls/xinput1_3/xinput_private.h | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/dlls/xinput1_3/xinput_private.h b/dlls/xinput1_3/xinput_private.h
-index 7de9a2a2e4d..0de4f3b0b03 100644
---- a/wine/dlls/xinput1_3/xinput_private.h
-+++ b/wine/dlls/xinput1_3/xinput_private.h
-@@ -27,8 +27,8 @@ typedef struct _xinput_controller
- XINPUT_VIBRATION vibration;
- } xinput_controller;
-
--CRITICAL_SECTION xinput_crit;
--xinput_controller controllers[XUSER_MAX_COUNT];
-+extern CRITICAL_SECTION xinput_crit;
-+extern xinput_controller controllers[XUSER_MAX_COUNT];
-
- void HID_find_gamepads(xinput_controller *devices) DECLSPEC_HIDDEN;
- void HID_destroy_gamepads(xinput_controller *devices) DECLSPEC_HIDDEN;