summaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
authorRyan Lopopolo <[email protected]>2019-08-18 19:40:12 -0700
committerRyan Lopopolo <[email protected]>2019-08-18 19:40:12 -0700
commitb5662c87c8217d7a0262fa1808450ab1752ff1b4 (patch)
tree68d5fe9a005430d74a8951fb218d48c8c645703e /include
parent3fbd5f0029c24d43870a44b342ab9600d7c1fcca (diff)
downloadmruby-b5662c87c8217d7a0262fa1808450ab1752ff1b4.tar.gz
mruby-b5662c87c8217d7a0262fa1808450ab1752ff1b4.zip
Allow external definition of MRB_API macro
When building WebAssembly targets with clang (e.g. wasm32-unknown-unknown), all symbols are hidden by default. To export a symbol, it must be marked with __attribute__((visibility(default))) Rather than detecting this exotic target in mruby, allow MRB_API to be defined externally.
Diffstat (limited to 'include')
-rw-r--r--include/mruby/common.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/mruby/common.h b/include/mruby/common.h
index 45ab71ef5..5be9a40c6 100644
--- a/include/mruby/common.h
+++ b/include/mruby/common.h
@@ -62,6 +62,7 @@ MRB_BEGIN_DECL
#define MRB_INLINE static inline
/** Declare a public MRuby API function. */
+#ifndef MRB_API
#if defined(MRB_BUILD_AS_DLL)
#if defined(MRB_CORE) || defined(MRB_LIB)
# define MRB_API __declspec(dllexport)
@@ -71,6 +72,7 @@ MRB_BEGIN_DECL
#else
# define MRB_API extern
#endif
+#endif
MRB_END_DECL