Browse Source

libyaml-cpp: fix compilation with libcxx

Added GitHub patch.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
lilik-openwrt-22.03
Rosen Penev 4 years ago
parent
commit
37f33b8800
No known key found for this signature in database GPG Key ID: 36D31CFA845F0E3B
2 changed files with 24 additions and 1 deletions
  1. +1
    -1
      libs/libyaml-cpp/Makefile
  2. +23
    -0
      libs/libyaml-cpp/patches/010-libcxx.patch

+ 1
- 1
libs/libyaml-cpp/Makefile View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=libyaml-cpp
PKG_VERSION:=0.6.3
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=yaml-cpp-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/jbeder/yaml-cpp/tar.gz/yaml-cpp-$(PKG_VERSION)?


+ 23
- 0
libs/libyaml-cpp/patches/010-libcxx.patch View File

@ -0,0 +1,23 @@
From 78f338e4ee69bb00fb37faf50f448eeedc8b824c Mon Sep 17 00:00:00 2001
From: Mark Jan van Kampen <mjvk@allseas.com>
Date: Tue, 13 Oct 2020 11:19:57 +0200
Subject: [PATCH] Adds assert to enable compilation with libcxx+gcc
Somehow this instantiates a template properly otherwise the build fails
---
include/yaml-cpp/node/iterator.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/include/yaml-cpp/node/iterator.h b/include/yaml-cpp/node/iterator.h
index b4472381..080ec76c 100644
--- a/include/yaml-cpp/node/iterator.h
+++ b/include/yaml-cpp/node/iterator.h
@@ -15,6 +15,8 @@
#include <utility>
#include <vector>
+static_assert(std::is_constructible<YAML::Node, const YAML::Node&>::value, "Node must be copy constructable");
+
namespace YAML {
namespace detail {
struct iterator_value : public Node, std::pair<Node, Node> {

Loading…
Cancel
Save