svn commit: r449589 - in head/devel/yaml-cpp: . files
Ed Schouten
ed at FreeBSD.org
Sun Sep 10 19:36:18 UTC 2017
Author: ed (src committer)
Date: Sun Sep 10 19:36:17 2017
New Revision: 449589
URL: https://svnweb.freebsd.org/changeset/ports/449589
Log:
Make yaml-cpp usable on HEAD for software that wants C++17.
yaml-cpp uses auto_ptr in a small number of places. This is problematic,
as libc++ 5.0.0 (used on HEAD) has auto_ptr disabled when building for
C++17. This causes the build for cloudabi-utils to fail on HEAD.
Instead of removing all of the use of auto_ptr from yaml-cpp, this
commit only changes public header files to make use of unique_ptr.
As I also ran into this issue for CloudABI, here's a bug report I filed
upstream a couple of weeks ago:
https://github.com/jbeder/yaml-cpp/issues/523
Reported by: pkg-fallout :-C
Reviewed by: madpilot, mat
Differential Revision: https://reviews.freebsd.org/D12285
Added:
head/devel/yaml-cpp/files/patch-include_yaml-cpp_emitter.h (contents, props changed)
head/devel/yaml-cpp/files/patch-include_yaml-cpp_parser.h (contents, props changed)
Modified:
head/devel/yaml-cpp/Makefile
Modified: head/devel/yaml-cpp/Makefile
==============================================================================
--- head/devel/yaml-cpp/Makefile Sun Sep 10 19:22:13 2017 (r449588)
+++ head/devel/yaml-cpp/Makefile Sun Sep 10 19:36:17 2017 (r449589)
@@ -4,7 +4,7 @@
PORTNAME= yaml-cpp
PORTVERSION= 0.5.3
DISTVERSIONPREFIX= release-
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= devel
MAINTAINER= madpilot at FreeBSD.org
Added: head/devel/yaml-cpp/files/patch-include_yaml-cpp_emitter.h
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/yaml-cpp/files/patch-include_yaml-cpp_emitter.h Sun Sep 10 19:36:17 2017 (r449589)
@@ -0,0 +1,11 @@
+--- include/yaml-cpp/emitter.h.orig 2016-01-10 18:11:40 UTC
++++ include/yaml-cpp/emitter.h
+@@ -122,7 +122,7 @@ class YAML_CPP_API Emitter : private non
+ bool CanEmitNewline() const;
+
+ private:
+- std::auto_ptr<EmitterState> m_pState;
++ std::unique_ptr<EmitterState> m_pState;
+ ostream_wrapper m_stream;
+ };
+
Added: head/devel/yaml-cpp/files/patch-include_yaml-cpp_parser.h
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/yaml-cpp/files/patch-include_yaml-cpp_parser.h Sun Sep 10 19:36:17 2017 (r449589)
@@ -0,0 +1,13 @@
+--- include/yaml-cpp/parser.h.orig 2016-01-10 18:11:40 UTC
++++ include/yaml-cpp/parser.h
+@@ -40,8 +40,8 @@ class YAML_CPP_API Parser : private nonc
+ void HandleTagDirective(const Token& token);
+
+ private:
+- std::auto_ptr<Scanner> m_pScanner;
+- std::auto_ptr<Directives> m_pDirectives;
++ std::unique_ptr<Scanner> m_pScanner;
++ std::unique_ptr<Directives> m_pDirectives;
+ };
+ }
+
More information about the svn-ports-head
mailing list