summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarty E. Plummer <hanetzer@protonmail.com>2018-01-05 00:15:44 -0600
committerPatrice Clement <monsieurp@gentoo.org>2018-01-08 17:35:20 +0100
commit11f6c152a7176c8a835f4d781b50539c69a9ccbb (patch)
tree685b5943f005055b448c8d2407368b294035ac6f /dev-libs/libyaml/files
parentx11-libs/vte: add PREFIX variable. (diff)
downloadgentoo-11f6c152a7176c8a835f4d781b50539c69a9ccbb.tar.gz
gentoo-11f6c152a7176c8a835f4d781b50539c69a9ccbb.tar.bz2
gentoo-11f6c152a7176c8a835f4d781b50539c69a9ccbb.zip
dev-libs/libyaml: fix dll build on mingw-w64.
includes the following patches: https://github.com/yaml/libyaml/commit/119b7b6adfa72552d6dc7eb03f402ff5cf8f9fa6 https://github.com/yaml/libyaml/pull/85 Former is upstreamed, the latter is a pending PR. Without these changes a shared library/dll cannot be created on mingw-w64. Latter patch is applied also to the generated Makefile.in in order to prevent the need for eautoreconf. Package-Manager: Portage-2.3.19, Repoman-2.3.6 Closes: https://github.com/gentoo/gentoo/pull/6752
Diffstat (limited to 'dev-libs/libyaml/files')
-rw-r--r--dev-libs/libyaml/files/libyaml-0.1.7-mingw-no-undefined.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/dev-libs/libyaml/files/libyaml-0.1.7-mingw-no-undefined.patch b/dev-libs/libyaml/files/libyaml-0.1.7-mingw-no-undefined.patch
new file mode 100644
index 000000000000..5e0ef5249413
--- /dev/null
+++ b/dev-libs/libyaml/files/libyaml-0.1.7-mingw-no-undefined.patch
@@ -0,0 +1,32 @@
+--- a/include/yaml.h
++++ b/include/yaml.h
+@@ -26,7 +26,9 @@ extern "C" {
+
+ /** The public API declaration. */
+
+-#ifdef _WIN32
++#if defined(__MINGW32__)
++# define YAML_DECLARE(type) type
++#elif defined(WIN32)
+ # if defined(YAML_DECLARE_STATIC)
+ # define YAML_DECLARE(type) type
+ # elif defined(YAML_DECLARE_EXPORT)
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -1,4 +1,4 @@
+ AM_CPPFLAGS = -I$(top_srcdir)/include
+ lib_LTLIBRARIES = libyaml.la
+ libyaml_la_SOURCES = yaml_private.h api.c reader.c scanner.c parser.c loader.c writer.c emitter.c dumper.c
+-libyaml_la_LDFLAGS = -release $(YAML_LT_RELEASE) -version-info $(YAML_LT_CURRENT):$(YAML_LT_REVISION):$(YAML_LT_AGE)
++libyaml_la_LDFLAGS = -no-undefined -release $(YAML_LT_RELEASE) -version-info $(YAML_LT_CURRENT):$(YAML_LT_REVISION):$(YAML_LT_AGE)
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -312,7 +312,7 @@ top_srcdir = @top_srcdir@
+ AM_CPPFLAGS = -I$(top_srcdir)/include
+ lib_LTLIBRARIES = libyaml.la
+ libyaml_la_SOURCES = yaml_private.h api.c reader.c scanner.c parser.c loader.c writer.c emitter.c dumper.c
+-libyaml_la_LDFLAGS = -release $(YAML_LT_RELEASE) -version-info $(YAML_LT_CURRENT):$(YAML_LT_REVISION):$(YAML_LT_AGE)
++libyaml_la_LDFLAGS = -no-undefined -release $(YAML_LT_RELEASE) -version-info $(YAML_LT_CURRENT):$(YAML_LT_REVISION):$(YAML_LT_AGE)
+ all: all-am
+
+ .SUFFIXES: