From ab49b5e77bb42696db8d684a2782158352a86644 Mon Sep 17 00:00:00 2001 From: Dominik Riebeling Date: Sun, 8 Jan 2012 19:51:11 +0000 Subject: MSVC compatibility adjustments. When using a global variable from a DLL with MSVC special handling is necessary to avoid going through additional redirection. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31640 a1c6a512-1295-4272-9138-f99709370657 --- rbutil/ipodpatcher/ipodpatcher.h | 10 ++++++++++ rbutil/sansapatcher/sansapatcher.h | 8 ++++++++ 2 files changed, 18 insertions(+) (limited to 'rbutil') diff --git a/rbutil/ipodpatcher/ipodpatcher.h b/rbutil/ipodpatcher/ipodpatcher.h index 5d2507ccd4..30a1b1e9fd 100644 --- a/rbutil/ipodpatcher/ipodpatcher.h +++ b/rbutil/ipodpatcher/ipodpatcher.h @@ -31,7 +31,17 @@ extern "C" { /* Size of buffer for disk I/O - 8MB is large enough for any version of the Apple firmware, but not the Nano's RSRC image. */ #define BUFFER_SIZE 8*1024*1024 + +#ifndef _MSC_VER extern unsigned char* ipod_sectorbuf; +#else +/* MSVC needs to use dllimport to allow using it directly from a DLL. + * See http://support.microsoft.com/kb/90530 + * Building with MSVC is only when using as DLL. + */ +_declspec(dllimport) unsigned char* ipod_sectorbuf; +#endif + extern int ipod_verbose; #define FILETYPE_DOT_IPOD 0 diff --git a/rbutil/sansapatcher/sansapatcher.h b/rbutil/sansapatcher/sansapatcher.h index 4f08eea432..80cef4d417 100644 --- a/rbutil/sansapatcher/sansapatcher.h +++ b/rbutil/sansapatcher/sansapatcher.h @@ -32,7 +32,15 @@ extern int sansa_verbose; /* Size of buffer for disk I/O - 8MB is large enough for any version of the Apple firmware, but not the Nano's RSRC image. */ #define BUFFER_SIZE 8*1024*1024 +#ifndef _MSC_VER extern unsigned char* sansa_sectorbuf; +#else +/* MSVC needs to use dllimport to allow using it directly from a DLL. + * See http://support.microsoft.com/kb/90530 + * Building with MSVC is only when using as DLL. + */ +_declspec(dllimport) unsigned char* sansa_sectorbuf; +#endif int sansa_read_partinfo(struct sansa_t* sansa, int silent); int is_sansa(struct sansa_t* sansa); -- cgit v1.2.3