From: Peter Rosin Date: Sun, 18 Jul 2010 15:17:06 +0000 (+0200) Subject: dllimport variables for MSVC in stresstest.at X-Git-Tag: v2.4~107 X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=937319cb0a2a1d13d1b4d95e6aa0585e612c6023;p=thirdparty%2Flibtool.git dllimport variables for MSVC in stresstest.at * tests/stresstest.at [MSVC]: dllimport all imported variables. --- diff --git a/ChangeLog b/ChangeLog index 5c425b765..73f74355e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2010-07-18 Peter Rosin + + * tests/stresstest.at [MSVC]: dllimport all imported + variables. + 2010-07-17 Peter Rosin dllimport the variable for MSVC in link-order.at diff --git a/tests/stresstest.at b/tests/stresstest.at index ee5fd293a..652232960 100644 --- a/tests/stresstest.at +++ b/tests/stresstest.at @@ -93,29 +93,35 @@ AT_DATA(main.c, #if defined(LIBA_DLL_IMPORT) # if defined(_WIN32) || defined(WIN32) || defined(__CYGWIN__) # define LIBA_SCOPE extern __declspec(dllimport) +# if defined(_MSC_VER) +# define LIBA_SCOPE_VAR LIBA_SCOPE +# endif # endif #endif #if !defined(LIBA_SCOPE) # define LIBA_SCOPE extern #endif +#if !defined(LIBA_SCOPE_VAR) +# define LIBA_SCOPE_VAR extern +#endif #ifdef __cplusplus extern "C" { #endif -extern int v1; -extern int v3, v4; +LIBA_SCOPE_VAR int v1; +LIBA_SCOPE_VAR int v3, v4; LIBA_SCOPE const int v5, v6; -extern const char* v7; -extern const char v8[]; +LIBA_SCOPE_VAR const char* v7; +LIBA_SCOPE_VAR const char v8[]; extern int v9(void); -extern int (*v10) (void); -extern int (*v11) (void); +LIBA_SCOPE_VAR int (*v10) (void); +LIBA_SCOPE_VAR int (*v11) (void); LIBA_SCOPE int (*const v12) (void); #ifdef __cplusplus } #endif typedef struct { int arr[1000]; } large; -extern large v13, v14, v15; +LIBA_SCOPE_VAR large v13, v14, v15; int main(void) { @@ -131,26 +137,32 @@ AT_DATA(dlself.c, #if defined(LIBA_DLL_IMPORT) # if defined(_WIN32) || defined(WIN32) || defined(__CYGWIN__) # define LIBA_SCOPE extern __declspec(dllimport) +# if defined(_MSC_VER) +# define LIBA_SCOPE_VAR LIBA_SCOPE +# endif # endif #endif #if !defined(LIBA_SCOPE) # define LIBA_SCOPE extern #endif +#if !defined(LIBA_SCOPE_VAR) +# define LIBA_SCOPE_VAR extern +#endif #ifdef __cplusplus extern "C" { #endif -extern int v1; -extern int v3, v4; +LIBA_SCOPE_VAR int v1; +LIBA_SCOPE_VAR int v3, v4; LIBA_SCOPE const int v5, v6; -extern const char* v7; -extern const char v8[]; +LIBA_SCOPE_VAR const char* v7; +LIBA_SCOPE_VAR const char v8[]; extern int v9(void); -extern int (*v10) (void); -extern int (*v11) (void); +LIBA_SCOPE_VAR int (*v10) (void); +LIBA_SCOPE_VAR int (*v11) (void); LIBA_SCOPE int (*const v12) (void); typedef struct { int arr[1000]; } large; -extern large v13, v14, v15; +LIBA_SCOPE_VAR large v13, v14, v15; extern int w1; extern int w3, w4;