summaryrefslogtreecommitdiff
path: root/tests/projects/c/shared_library/src/foo.h
diff options
context:
space:
mode:
authorruki <[email protected]>2021-02-18 00:55:41 +0800
committerruki <[email protected]>2021-02-18 00:55:41 +0800
commit7398de24ff14782768cbd72882aa18ebd36717ea (patch)
treec7b5c1126c8d1e8927fef68155c3ddf524e7eb12 /tests/projects/c/shared_library/src/foo.h
parent46e0f6a1adda408052ba5b87c244cedaae5f1d00 (diff)
add export_all rule
Diffstat (limited to 'tests/projects/c/shared_library/src/foo.h')
-rw-r--r--tests/projects/c/shared_library/src/foo.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/projects/c/shared_library/src/foo.h b/tests/projects/c/shared_library/src/foo.h
new file mode 100644
index 000000000..073fb68d7
--- /dev/null
+++ b/tests/projects/c/shared_library/src/foo.h
@@ -0,0 +1,17 @@
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#if defined(_WIN32)
+# define __export __declspec(dllexport)
+#elif defined(__GNUC__) && ((__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3))
+# define __export __attribute__((visibility("default")))
+#else
+# define __export
+#endif
+
+__export int add(int a, int b);
+
+#ifdef __cplusplus
+}
+#endif