aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xenvironment.py8
-rw-r--r--test cases/common/4 shared/libfile.c13
2 files changed, 19 insertions, 2 deletions
diff --git a/environment.py b/environment.py
index a5c3e8c..6f89b47 100755
--- a/environment.py
+++ b/environment.py
@@ -201,7 +201,13 @@ class VisualStudioCCompiler(CCompiler):
def get_linker_output_flags(self, outputname):
return ['/OUT:' + outputname]
-
+
+ def get_pic_flags(self):
+ return []
+
+ def get_std_shared_lib_link_flags(self):
+ return []
+
def sanity_check(self, work_dir):
source_name = os.path.join(work_dir, 'sanitycheckc.c')
binary_name = os.path.join(work_dir, 'sanitycheckc')
diff --git a/test cases/common/4 shared/libfile.c b/test cases/common/4 shared/libfile.c
index 80a427b..daabb65 100644
--- a/test cases/common/4 shared/libfile.c
+++ b/test cases/common/4 shared/libfile.c
@@ -1,3 +1,14 @@
-int libfunc() {
+#if defined _WIN32 || defined __CYGWIN__
+ #define DLL_PUBLIC __declspec(dllexport)
+#else
+ #if defined __GNUC__
+ #define DLL_PUBLIC __attribute__ ((visibility("default")))
+ #else
+ #pragma message ("Compiler does not support symbol visibility.")
+ #define DLL_PUBLIC
+ #endif
+#endif
+
+int DLL_PUBLIC libfunc() {
return 3;
}