Improved nvcuda-CUDA_Support patchset to search for dylib on OSX.

This commit is contained in:
Sebastian Lackner 2015-06-27 19:50:17 +02:00
parent dc16523d00
commit 53b570f698
3 changed files with 50 additions and 0 deletions

1
debian/changelog vendored
View File

@ -7,6 +7,7 @@ wine-staging (1.7.46) UNRELEASED; urgency=low
before client (fixes Wine Staging Bug #393).
* Added patches to improve crosscompiling Wine for other platforms.
* Added patch to improve output of '--check-libs' on OSX.
* Improved nvcuda-CUDA_Support patchset to search for dylib on OSX.
* Updated kernel32-GetVolumePathName to fix several test failures.
* Updated ntoskrnl-Emulator patchset to implement emulation of MOVZX
instruction on x86_64.

View File

@ -0,0 +1,47 @@
From d27994fd0542d6f1f7dd0acfa04b75c29a99b8a1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sat, 27 Jun 2015 19:45:44 +0200
Subject: nvcuda: Search for dylib library on Mac OS X.
---
dlls/nvcuda/nvcuda.c | 21 +++++++++++++++++++--
1 file changed, 19 insertions(+), 2 deletions(-)
diff --git a/dlls/nvcuda/nvcuda.c b/dlls/nvcuda/nvcuda.c
index ec32da2..67376c7 100644
--- a/dlls/nvcuda/nvcuda.c
+++ b/dlls/nvcuda/nvcuda.c
@@ -412,11 +412,28 @@ static void *cuda_handle = NULL;
static BOOL load_functions(void)
{
- cuda_handle = wine_dlopen("libcuda.so", RTLD_NOW, NULL, 0);
+ static const char *libname[] =
+ {
+ #ifdef __APPLE__
+ "libcuda.dylib"
+ "libcuda.6.0.dylib",
+ "/usr/local/cuda/lib/libcuda.dylib"
+ "/usr/local/cuda/lib/libcuda.6.0.dylib",
+ #else
+ "libcuda.so"
+ #endif
+ };
+ int i;
+
+ for (i = 0; i < sizeof(libname)/sizeof(libname[0]); i++)
+ {
+ cuda_handle = wine_dlopen(libname[i], RTLD_NOW, NULL, 0);
+ if (cuda_handle) break;
+ }
if (!cuda_handle)
{
- FIXME("Wine cannot find the libcuda.so library, CUDA support disabled.\n");
+ FIXME("Wine cannot find the libcuda library, CUDA support is disabled.\n");
return FALSE;
}
--
2.4.3

View File

@ -3890,6 +3890,7 @@ if test "$enable_nvcuda_CUDA_Support" -eq 1; then
patch_apply nvcuda-CUDA_Support/0007-nvcuda-Properly-wrap-stream-callbacks-by-forwarding-.patch
patch_apply nvcuda-CUDA_Support/0008-nvcuda-Add-support-for-CUDA-7.0.patch
patch_apply nvcuda-CUDA_Support/0009-nvcuda-Implement-cuModuleLoad-wrapper-function.patch
patch_apply nvcuda-CUDA_Support/0010-nvcuda-Search-for-dylib-library-on-Mac-OS-X.patch
(
echo '+ { "Sebastian Lackner", "include: Add cuda.h.h.", 1 },';
echo '+ { "Sebastian Lackner", "nvcuda: Add stub dll.", 1 },';
@ -3900,6 +3901,7 @@ if test "$enable_nvcuda_CUDA_Support" -eq 1; then
echo '+ { "Sebastian Lackner", "nvcuda: Properly wrap stream callbacks by forwarding them to a worker thread.", 1 },';
echo '+ { "Sebastian Lackner", "nvcuda: Add support for CUDA 7.0.", 1 },';
echo '+ { "Sebastian Lackner", "nvcuda: Implement cuModuleLoad wrapper function.", 1 },';
echo '+ { "Michael Müller", "nvcuda: Search for dylib library on Mac OS X.", 1 },';
) >> "$patchlist"
fi