gecko-dev/gfx/ots/ots-visibility.patch
Kevin Hsieh 572c3c94d2 Bug 1369672 - Update OTS to support Graphite table sanitization. r=jfkthame
MozReview-Commit-ID: 4WU4nQcsQgt

--HG--
extra : rebase_source : 8a27c738aaccb5bd47bf057de181c4abe210ba93
2017-08-11 16:36:12 -07:00

40 lines
1019 B
Diff

diff --git a/gfx/ots/include/opentype-sanitiser.h b/gfx/ots/include/opentype-sanitiser.h
--- a/gfx/ots/include/opentype-sanitiser.h
+++ b/gfx/ots/include/opentype-sanitiser.h
@@ -5,6 +5,26 @@
#ifndef OPENTYPE_SANITISER_H_
#define OPENTYPE_SANITISER_H_
+#if defined(_WIN32) || defined(__CYGWIN__)
+ #define OTS_DLL_IMPORT __declspec(dllimport)
+ #define OTS_DLL_EXPORT __declspec(dllexport)
+#else
+ #if __GNUC__ >= 4
+ #define OTS_DLL_IMPORT __attribute__((visibility ("default")))
+ #define OTS_DLL_EXPORT __attribute__((visibility ("default")))
+ #endif
+#endif
+
+#ifdef OTS_DLL
+ #ifdef OTS_DLL_EXPORTS
+ #define OTS_API OTS_DLL_EXPORT
+ #else
+ #define OTS_API OTS_DLL_IMPORT
+ #endif
+#else
+ #define OTS_API
+#endif
+
#if defined(_WIN32)
#include <stdlib.h>
typedef signed char int8_t;
@@ -161,7 +181,7 @@ enum TableAction {
TABLE_ACTION_DROP // Drop the table
};
-class OTSContext {
+class OTS_API OTSContext {
public:
OTSContext() {}
virtual ~OTSContext() {}