aboutsummaryrefslogtreecommitdiff
path: root/ports/libffi/export-global-data.patch
diff options
context:
space:
mode:
authorcodicodi <rob.ceglinski@gmail.com>2017-01-10 15:28:45 +0100
committerGitHub <noreply@github.com>2017-01-10 15:28:45 +0100
commitf5fb72819614a8c4cb21f67bf887acfc414fc213 (patch)
tree983d497099015deb95655640e2d2d8f943f5f6b7 /ports/libffi/export-global-data.patch
parentb280f57002044036c1c3c9a446c06e8e0a34fb00 (diff)
downloadvcpkg-f5fb72819614a8c4cb21f67bf887acfc414fc213.tar.gz
vcpkg-f5fb72819614a8c4cb21f67bf887acfc414fc213.zip
add libffi
Diffstat (limited to 'ports/libffi/export-global-data.patch')
-rw-r--r--ports/libffi/export-global-data.patch35
1 files changed, 35 insertions, 0 deletions
diff --git a/ports/libffi/export-global-data.patch b/ports/libffi/export-global-data.patch
new file mode 100644
index 000000000..9d965f647
--- /dev/null
+++ b/ports/libffi/export-global-data.patch
@@ -0,0 +1,35 @@
+diff --git a/src/types.c b/src/types.c
+index 0de5994..46c8d18 100644
+--- a/src/types.c
++++ b/src/types.c
+@@ -31,6 +31,12 @@
+ #include <ffi.h>
+ #include <ffi_common.h>
+
++#ifdef FFI_EXPORT_DATA
++#define FFI_EXPORT __declspec(dllexport)
++#else
++#define FFI_EXPORT
++#endif
++
+ /* Type definitions */
+
+ #define FFI_TYPEDEF(name, type, id) \
+@@ -38,7 +44,7 @@ struct struct_align_##name { \
+ char c; \
+ type x; \
+ }; \
+-const ffi_type ffi_type_##name = { \
++FFI_EXPORT const ffi_type ffi_type_##name = { \
+ sizeof(type), \
+ offsetof(struct struct_align_##name, x), \
+ id, NULL \
+@@ -56,7 +62,7 @@ ffi_type ffi_type_##name = { \
+ }
+
+ /* Size and alignment are fake here. They must not be 0. */
+-const ffi_type ffi_type_void = {
++FFI_EXPORT const ffi_type ffi_type_void = {
+ 1, 1, FFI_TYPE_VOID, NULL
+ };
+