summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cairommconfig.h.in4
-rw-r--r--cairommconfig.h.meson4
2 files changed, 6 insertions, 2 deletions
diff --git a/cairommconfig.h.in b/cairommconfig.h.in
index 268e2b9..f55f6d0 100644
--- a/cairommconfig.h.in
+++ b/cairommconfig.h.in
@@ -23,8 +23,10 @@
#ifdef CAIROMM_DLL
# if defined(CAIROMM_BUILD)
# define CAIROMM_API __declspec(dllexport)
-# else
+# elif !defined (__GNUC__)
# define CAIROMM_API __declspec(dllimport)
+# else /* don't dllimport classes/methods on GCC/MinGW */
+# define CAIROMM_API
# endif
/* Build a static or non-native-Windows library */
#else
diff --git a/cairommconfig.h.meson b/cairommconfig.h.meson
index 5a1e7b9..2988edc 100644
--- a/cairommconfig.h.meson
+++ b/cairommconfig.h.meson
@@ -28,8 +28,10 @@
#ifdef CAIROMM_DLL
# if defined(CAIROMM_BUILD)
# define CAIROMM_API __declspec(dllexport)
-# else
+# elif !defined (__GNUC__)
# define CAIROMM_API __declspec(dllimport)
+# else /* don't dllimport classes/methods on GCC/MinGW */
+# define CAIROMM_API
# endif
/* Build a static or non-native-Windows library */
#else