summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBoris Nagaev <bnagaev@gmail.com>2017-01-31 01:07:18 (GMT)
committerBoris Nagaev <bnagaev@gmail.com>2017-02-01 02:07:56 (GMT)
commitc92ea065fb3773f90cf91983835b7b47a335d591 (patch)
tree2d1868e771ae9b5f8e8c33b3d42c5b2a5b1060a9
parent36296ee42077ba6e6879b86f02eb3885ac14ebe6 (diff)
downloadmxe-c92ea065fb3773f90cf91983835b7b47a335d591.zip
mxe-c92ea065fb3773f90cf91983835b7b47a335d591.tar.gz
mxe-c92ea065fb3773f90cf91983835b7b47a335d591.tar.bz2
libepoxy: fix EPOXY_IMPORTEXPORT for static target
See https://github.com/mxe/mxe/issues/1647#issuecomment-275967915
-rw-r--r--src/libepoxy-1-fixes.patch34
-rw-r--r--src/libepoxy.mk6
2 files changed, 39 insertions, 1 deletions
diff --git a/src/libepoxy-1-fixes.patch b/src/libepoxy-1-fixes.patch
new file mode 100644
index 0000000..dda8e3c
--- /dev/null
+++ b/src/libepoxy-1-fixes.patch
@@ -0,0 +1,34 @@
+This file is part of MXE. See LICENSE.md for licensing information.
+
+Contains ad hoc patches for cross building.
+
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Boris Nagaev <bnagaev@gmail.com>
+Date: Tue, 31 Jan 2017 02:03:55 +0100
+Subject: [PATCH] fix EPOXY_IMPORTEXPORT for static targets
+
+Based on https://github.com/mxe/mxe/issues/1647#issuecomment-275967915
+
+diff --git a/include/epoxy/gl.h b/include/epoxy/gl.h
+index 1111111..2222222 100644
+--- a/include/epoxy/gl.h
++++ b/include/epoxy/gl.h
+@@ -71,7 +71,17 @@ extern "C" {
+ #endif
+
+ #ifndef EPOXY_IMPORTEXPORT
+-#define EPOXY_IMPORTEXPORT __declspec(dllimport)
++# ifdef EPOXY_SHARED
++# ifdef EPOXY_DLL
++# define EPOXY_IMPORTEXPORT __declspec(dllexport)
++# else
++# define EPOXY_IMPORTEXPORT __declspec(dllimport)
++# endif
++# elif EPOXY_STATIC
++# define EPOXY_IMPORTEXPORT
++# else
++# error "Please define EPOXY_STATIC or EPOXY_SHARED"
++# endif
+ #endif
+
+ #ifndef GLAPI
diff --git a/src/libepoxy.mk b/src/libepoxy.mk
index 7126949..afe8f41 100644
--- a/src/libepoxy.mk
+++ b/src/libepoxy.mk
@@ -19,7 +19,11 @@ endef
define $(PKG)_BUILD
cd '$(1)' && autoreconf -fi -I'$(PREFIX)/$(TARGET)/share/aclocal'
- cd '$(1)' && ./configure \
+ cd '$(1)' && \
+ CFLAGS='$(if $(BUILD_STATIC),-DEPOXY_STATIC,-DEPOXY_SHARED -DEPOXY_DLL)' \
+ ./configure \
$(MXE_CONFIGURE_OPTS)
$(MAKE) -C '$(1)' -j '$(JOBS)' install $(MXE_DISABLE_CRUFT)
+ $(SED) 's/Cflags:/Cflags: -DEPOXY_$(if $(BUILD_STATIC),STATIC,SHARED)/' \
+ -i '$(PREFIX)/$(TARGET)/lib/pkgconfig/epoxy.pc'
endef