From owner-svn-ports-all@freebsd.org Mon Mar 6 10:50:03 2017 Return-Path: Delivered-To: svn-ports-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 03BE2CFAEFD; Mon, 6 Mar 2017 10:50:03 +0000 (UTC) (envelope-from amdmi3@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 94DD51647; Mon, 6 Mar 2017 10:50:02 +0000 (UTC) (envelope-from amdmi3@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26Ao1Lp004441; Mon, 6 Mar 2017 10:50:01 GMT (envelope-from amdmi3@FreeBSD.org) Received: (from amdmi3@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26Anx9Z004389; Mon, 6 Mar 2017 10:49:59 GMT (envelope-from amdmi3@FreeBSD.org) Message-Id: <201703061049.v26Anx9Z004389@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: amdmi3 set sender to amdmi3@FreeBSD.org using -f From: Dmitry Marakasov Date: Mon, 6 Mar 2017 10:49:59 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r435531 - in head/devel: . cpp-hocon cpp-hocon/files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 10:50:03 -0000 Author: amdmi3 Date: Mon Mar 6 10:49:58 2017 New Revision: 435531 URL: https://svnweb.freebsd.org/changeset/ports/435531 Log: A C++ implementation of the HOCON configuration file format. WWW: https://github.com/puppetlabs/cpp-hocon PR: 213763 Submitted by: jslagle@gmail.com Added: head/devel/cpp-hocon/ head/devel/cpp-hocon/Makefile (contents, props changed) head/devel/cpp-hocon/distinfo (contents, props changed) head/devel/cpp-hocon/files/ head/devel/cpp-hocon/files/patch-lib_CMakeLists.txt (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_config.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__include__context.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__includer.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__includer__file.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__list.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__mergeable.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__object.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__origin.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__parse__options.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__parseable.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__render__options.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__resolve__options.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__value.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__value__factory.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_parser_config__document.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_parser_config__document__factory.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_parser_config__node.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_inc_hocon_path.hpp (contents, props changed) head/devel/cpp-hocon/files/patch-lib_src_config__value__factory.cc (contents, props changed) head/devel/cpp-hocon/files/patch-lib_tests_CMakeLists.txt (contents, props changed) head/devel/cpp-hocon/files/patch-lib_tests_config__value__test.cc (contents, props changed) head/devel/cpp-hocon/pkg-descr (contents, props changed) head/devel/cpp-hocon/pkg-plist (contents, props changed) Modified: head/devel/Makefile Modified: head/devel/Makefile ============================================================================== --- head/devel/Makefile Mon Mar 6 10:45:57 2017 (r435530) +++ head/devel/Makefile Mon Mar 6 10:49:58 2017 (r435531) @@ -320,6 +320,7 @@ SUBDIR += covtool SUBDIR += cpan-upload SUBDIR += cpan-upload-http + SUBDIR += cpp-hocon SUBDIR += cpp-netlib SUBDIR += cppcheck SUBDIR += cppi Added: head/devel/cpp-hocon/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/Makefile Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,21 @@ +# $FreeBSD$ + +PORTNAME= cpp-hocon +PORTVERSION= 0.1.4 +CATEGORIES= devel + +MAINTAINER= jslagle@gmail.com +COMMENT= C++ configuration library + +LICENSE= APACHE20 + +LIB_DEPENDS= libboost_system.so:devel/boost-libs \ + libleatherman_util.so:devel/leatherman + +USE_GITHUB= yes +GH_ACCOUNT= puppetlabs + +USES= cmake +CMAKE_ARGS= -DCPP_HOCON_SHARED:BOOL=ON + +.include Added: head/devel/cpp-hocon/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/distinfo Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,3 @@ +TIMESTAMP = 1477237793 +SHA256 (puppetlabs-cpp-hocon-0.1.4_GH0.tar.gz) = 2274b99dc098122b6e3d2c8d23173d21893555190c5a008e5a9a7d84875c7275 +SIZE (puppetlabs-cpp-hocon-0.1.4_GH0.tar.gz) = 157988 Added: head/devel/cpp-hocon/files/patch-lib_CMakeLists.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_CMakeLists.txt Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,32 @@ +--- lib/CMakeLists.txt.orig 2016-09-23 20:45:10 UTC ++++ lib/CMakeLists.txt +@@ -75,20 +75,23 @@ set(PROJECT_SOURCES + ## Without the intermediate target, unexported symbols can't be tested. + add_library(libprojectsrc OBJECT ${PROJECT_SOURCES}) + set_target_properties(libprojectsrc PROPERTIES POSITION_INDEPENDENT_CODE true) +- +-add_library(lib${PROJECT_NAME} $) +-set_target_properties(lib${PROJECT_NAME} PROPERTIES VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}") +-target_link_libraries(lib${PROJECT_NAME} ++if(CPP_HOCON_SHARED) ++ add_library(${PROJECT_NAME} SHARED $) ++else() ++ add_library(${PROJECT_NAME} $) ++endif() ++set_target_properties(${PROJECT_NAME} PROPERTIES VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}") ++target_link_libraries(${PROJECT_NAME} + ${LEATHERMAN_LIBRARIES} + ${Boost_LIBRARIES} + ) + + # Generate the export header for restricting symbols exported from the library. + # Restricting symbols has several advantages, noted at https://gcc.gnu.org/wiki/Visibility. +-symbol_exports(lib${PROJECT_NAME} "${CMAKE_CURRENT_LIST_DIR}/inc/hocon/export.h") ++symbol_exports(${PROJECT_NAME} "${CMAKE_CURRENT_LIST_DIR}/inc/hocon/export.h") + + # This correctly handles DLL installation on Windows. +-leatherman_install(lib${PROJECT_NAME}) ++leatherman_install(${PROJECT_NAME}) + install(DIRECTORY inc/hocon DESTINATION include) + + add_subdirectory(tests) Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_config.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_config.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/config.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/config.hpp +@@ -169,7 +169,7 @@ namespace hocon { + * interface is likely to grow new methods over time, so third-party + * implementations will break. + */ +- class LIBCPP_HOCON_EXPORT config : public config_mergeable, public std::enable_shared_from_this { ++ class CPP_HOCON_EXPORT config : public config_mergeable, public std::enable_shared_from_this { + friend class config_object; + friend class config_value; + friend class config_parseable; Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__include__context.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__include__context.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/config_include_context.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/config_include_context.hpp +@@ -18,7 +18,7 @@ namespace hocon { + * interface is likely to grow new methods over time, so third-party + * implementations will break. + */ +- class LIBCPP_HOCON_EXPORT config_include_context { ++ class CPP_HOCON_EXPORT config_include_context { + public: + /** + * Tries to find a name relative to whatever is doing the including, for Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__includer.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__includer.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/config_includer.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/config_includer.hpp +@@ -12,7 +12,7 @@ namespace hocon { + * customize handling of {@code include} statements in config files. You may + * also want to implement {@link config_includer_file} and {@link config_includer_URL}, or not. + */ +- class LIBCPP_HOCON_EXPORT config_includer { ++ class CPP_HOCON_EXPORT config_includer { + public: + /** + * Returns a new includer that falls back to the given includer. This is how Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__includer__file.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__includer__file.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/config_includer_file.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/config_includer_file.hpp +@@ -11,7 +11,7 @@ namespace hocon { + * If you do not implement this but do implement {@link config_includer}, + * attempts to load files will use the default includer. + */ +- class LIBCPP_HOCON_EXPORT config_includer_file { ++ class CPP_HOCON_EXPORT config_includer_file { + public: + /** + * Parses another item to be included. The returned object typically would Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__list.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__list.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/config_list.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/config_list.hpp +@@ -34,7 +34,7 @@ namespace hocon { + * + */ + +- class LIBCPP_HOCON_EXPORT config_list : public config_value { ++ class CPP_HOCON_EXPORT config_list : public config_value { + public: + config_list(shared_origin origin) : config_value(move(origin)) {} + Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__mergeable.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__mergeable.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/config_mergeable.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/config_mergeable.hpp +@@ -5,7 +5,7 @@ + + namespace hocon { + +- class LIBCPP_HOCON_EXPORT config_mergeable { ++ class CPP_HOCON_EXPORT config_mergeable { + friend class config_value; + public: + /** Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__object.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__object.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/config_object.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/config_object.hpp +@@ -8,7 +8,7 @@ + + namespace hocon { + +- class LIBCPP_HOCON_EXPORT config_object : public config_value { ++ class CPP_HOCON_EXPORT config_object : public config_value { + friend class config; + friend class config_value; + friend class simple_config_object; Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__origin.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__origin.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,47 @@ +--- lib/inc/hocon/config_origin.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/config_origin.hpp +@@ -36,7 +36,7 @@ namespace hocon { + * + * @return string describing the origin + */ +- LIBCPP_HOCON_EXPORT virtual std::string const& description() const = 0; ++ CPP_HOCON_EXPORT virtual std::string const& description() const = 0; + + /** + * Returns a {@code ConfigOrigin} based on this one, but with the given +@@ -55,7 +55,7 @@ namespace hocon { + * @param lineNumber the new line number + * @return the created ConfigOrigin + */ +- LIBCPP_HOCON_EXPORT virtual shared_origin with_line_number(int line_number) const = 0; ++ CPP_HOCON_EXPORT virtual shared_origin with_line_number(int line_number) const = 0; + + /** + * Returns a line number where the value or exception originated. This will +@@ -63,7 +63,7 @@ namespace hocon { + * + * @return line number or -1 if none is available + */ +- LIBCPP_HOCON_EXPORT virtual int line_number() const = 0; ++ CPP_HOCON_EXPORT virtual int line_number() const = 0; + + /** + * Returns any comments that appeared to "go with" this place in the file. +@@ -75,7 +75,7 @@ namespace hocon { + * @return any comments that seemed to "go with" this origin, empty list if + * none + */ +- LIBCPP_HOCON_EXPORT virtual std::vector const& comments() const = 0; ++ CPP_HOCON_EXPORT virtual std::vector const& comments() const = 0; + + /** + * Returns a {@code config_origin} based on this one, but with the given +@@ -92,7 +92,7 @@ namespace hocon { + * @param comments the comments used on the returned origin + * @return the config_origin with the given comments + */ +- LIBCPP_HOCON_EXPORT virtual shared_origin with_comments(std::vector comments) const = 0; ++ CPP_HOCON_EXPORT virtual shared_origin with_comments(std::vector comments) const = 0; + }; + + } // namespace hocon Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__parse__options.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__parse__options.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/config_parse_options.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/config_parse_options.hpp +@@ -22,7 +22,7 @@ namespace hocon { + * + * ClassLoader is Java-specific, so it was not ported to C++. + */ +- class LIBCPP_HOCON_EXPORT config_parse_options { ++ class CPP_HOCON_EXPORT config_parse_options { + public: + /** + * Gets an instance of config_parse_options with all fields Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__parseable.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__parseable.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/config_parseable.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/config_parseable.hpp +@@ -16,7 +16,7 @@ namespace hocon { + * interface is likely to grow new methods over time, so third-party + * implementations will break. + */ +- class LIBCPP_HOCON_EXPORT config_parseable { ++ class CPP_HOCON_EXPORT config_parseable { + public: + /** + * Parse whatever it is. The options should come from Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__render__options.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__render__options.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/config_render_options.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/config_render_options.hpp +@@ -17,7 +17,7 @@ namespace hocon { + * config_render_options().set_comments(false) + * + */ +- class LIBCPP_HOCON_EXPORT config_render_options { ++ class CPP_HOCON_EXPORT config_render_options { + public: + /** Leaving the default arguments will result in a verbose rendering, + * which contains comments and therefore is not valid JSON. Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__resolve__options.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__resolve__options.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/config_resolve_options.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/config_resolve_options.hpp +@@ -27,7 +27,7 @@ namespace hocon { + * environment variables or other external system information. (Right now, + * environment variables are the only example.) + */ +- class LIBCPP_HOCON_EXPORT config_resolve_options { ++ class CPP_HOCON_EXPORT config_resolve_options { + public: + /** + * Returns the default resolve options. By default the system environment Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__value.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__value.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/config_value.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/config_value.hpp +@@ -36,7 +36,7 @@ namespace hocon { + * Also, this interface is likely to grow new methods over time, so third-party + * implementations will break. + */ +- class LIBCPP_HOCON_EXPORT config_value : public config_mergeable, public std::enable_shared_from_this { ++ class CPP_HOCON_EXPORT config_value : public config_mergeable, public std::enable_shared_from_this { + friend class token; + friend class value; + friend class default_transformer; Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__value__factory.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__value__factory.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,14 @@ +--- lib/inc/hocon/config_value_factory.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/config_value_factory.hpp +@@ -2,9 +2,10 @@ + + #include "types.hpp" + #include "export.h" ++#include + + namespace hocon { +- class LIBCPP_HOCON_EXPORT config_value_factory { ++ class CPP_HOCON_EXPORT config_value_factory { + public: + /** + * Creates a {@link ConfigValue} from a plain value, which may be Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_parser_config__document.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_parser_config__document.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/parser/config_document.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/parser/config_document.hpp +@@ -23,7 +23,7 @@ namespace hocon { + * Also, this interface is likely to grow new methods over time, so third-party + * implementations will break. + */ +- class LIBCPP_HOCON_EXPORT config_document { ++ class CPP_HOCON_EXPORT config_document { + public: + /** + * Returns a new config_document that is a copy of the current config_document, Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_parser_config__document__factory.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_parser_config__document__factory.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,28 @@ +--- lib/inc/hocon/parser/config_document_factory.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/parser/config_document_factory.hpp +@@ -18,11 +18,11 @@ namespace hocon { namespace config_docum + * parse options to control how the file is interpreted + * @return the parsed configuration + */ +- LIBCPP_HOCON_EXPORT std::shared_ptr parse_file(std::string input_file_path, ++ CPP_HOCON_EXPORT std::shared_ptr parse_file(std::string input_file_path, + config_parse_options options); + + /** Parses a file into a config_document instance using default options. */ +- LIBCPP_HOCON_EXPORT std::shared_ptr parse_file(std::string input_file_path); ++ CPP_HOCON_EXPORT std::shared_ptr parse_file(std::string input_file_path); + + /** + * Parses a string which should be valid HOCON or JSON. +@@ -31,9 +31,9 @@ namespace hocon { namespace config_docum + * @param options parse options + * @return the parsed configuration + */ +- LIBCPP_HOCON_EXPORT std::shared_ptr parse_string(std::string s, config_parse_options options); ++ CPP_HOCON_EXPORT std::shared_ptr parse_string(std::string s, config_parse_options options); + + /** Parses a string into a config_document instance using default options. */ +- LIBCPP_HOCON_EXPORT std::shared_ptr parse_string(std::string s); ++ CPP_HOCON_EXPORT std::shared_ptr parse_string(std::string s); + + }} // namespace hocon::config_document_factory Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_parser_config__node.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_parser_config__node.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/parser/config_node.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/parser/config_node.hpp +@@ -18,7 +18,7 @@ namespace hocon { + * Also, this interface is likely to grow new methods over time, so third-party + * implementations will break. + */ +- class LIBCPP_HOCON_EXPORT config_node { ++ class CPP_HOCON_EXPORT config_node { + public: + /** + * The original text of the input which was used to form this particular Added: head/devel/cpp-hocon/files/patch-lib_inc_hocon_path.hpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_inc_hocon_path.hpp Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,11 @@ +--- lib/inc/hocon/path.hpp.orig 2016-09-23 20:45:10 UTC ++++ lib/inc/hocon/path.hpp +@@ -10,7 +10,7 @@ + + namespace hocon { + +- class LIBCPP_HOCON_EXPORT path { ++ class CPP_HOCON_EXPORT path { + public: + path(); + explicit path(std::string first, path const& remainder); Added: head/devel/cpp-hocon/files/patch-lib_src_config__value__factory.cc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_src_config__value__factory.cc Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,63 @@ +--- lib/src/config_value_factory.cc.orig 2016-09-23 20:45:10 UTC ++++ lib/src/config_value_factory.cc +@@ -17,27 +17,27 @@ namespace hocon { + // TODO: If use cases of from_any_ref require other types to produce config_nulls, + // we can revise this behavior + shared_value operator()(boost::blank null_value) const { +- return make_shared(nullptr); ++ return make_shared(nullptr); + } + + shared_value operator()(string str) const { +- return make_shared(nullptr, str, config_string_type::QUOTED); ++ return make_shared(nullptr, str, config_string_type::QUOTED); + } + + shared_value operator()(int64_t num) const { +- return make_shared(nullptr, num, ""); ++ return make_shared(nullptr, num, ""); + } + + shared_value operator()(double num) const { +- return make_shared(nullptr, num, ""); ++ return make_shared(nullptr, num, ""); + } + + shared_value operator()(int num) const { +- return make_shared(nullptr, num, ""); ++ return make_shared(nullptr, num, ""); + } + + shared_value operator()(bool boolean) const { +- return make_shared(nullptr, boolean); ++ return make_shared(nullptr, boolean); + } + + shared_value operator()(vector value_list) const { +@@ -45,7 +45,7 @@ namespace hocon { + for (unwrapped_value v : value_list) { + config_values.emplace_back(boost::apply_visitor(config_value_visitor(), v)); + } +- return make_shared(nullptr, config_values); ++ return make_shared(nullptr, config_values); + } + + shared_value operator()(unordered_map value_map) const { +@@ -53,7 +53,7 @@ namespace hocon { + for (auto pair : value_map) { + config_map[pair.first] = boost::apply_visitor(config_value_visitor(), pair.second); + } +- return make_shared(nullptr, config_map); ++ return make_shared(nullptr, config_map); + } + }; + +@@ -62,7 +62,7 @@ namespace hocon { + if (origin.empty()) { + origin = "hardcoded value"; + } +- auto conf_origin = make_shared(origin); ++ auto conf_origin = make_shared(origin); + return boost::apply_visitor(config_value_visitor(), value)->with_origin(conf_origin); + } + } // namespace hocon Added: head/devel/cpp-hocon/files/patch-lib_tests_CMakeLists.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_tests_CMakeLists.txt Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,31 @@ +--- lib/tests/CMakeLists.txt.orig 2016-09-23 20:45:10 UTC ++++ lib/tests/CMakeLists.txt +@@ -18,23 +18,23 @@ set(TEST_CASES + program_options.cc + ) + +-add_executable(lib${PROJECT_NAME}_test $ ${TEST_CASES} main.cc) ++add_executable(${PROJECT_NAME}_test $ ${TEST_CASES} main.cc) + + if (${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "SunOS") +- target_link_libraries(lib${PROJECT_NAME}_test rt) ++ target_link_libraries(${PROJECT_NAME}_test rt) + endif() + +-target_link_libraries(lib${PROJECT_NAME}_test ++target_link_libraries(${PROJECT_NAME}_test + ${Boost_LIBRARIES} + ${LEATHERMAN_LIBRARIES} + ${CMAKE_THREAD_LIBS_INIT} + ) + + if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin" AND BOOST_STATIC AND LEATHERMAN_USE_LOCALES) +- target_link_libraries(lib${PROJECT_NAME}_test iconv) ++ target_link_libraries(${PROJECT_NAME}_test iconv) + endif() + +-add_test(NAME "unit_tests" COMMAND lib${PROJECT_NAME}_test) ++add_test(NAME "unit_tests" COMMAND ${PROJECT_NAME}_test) + + configure_file ( + "${CMAKE_CURRENT_LIST_DIR}/fixtures.hpp.in" Added: head/devel/cpp-hocon/files/patch-lib_tests_config__value__test.cc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/files/patch-lib_tests_config__value__test.cc Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,20 @@ +--- lib/tests/config_value_test.cc.orig 2016-09-23 20:45:10 UTC ++++ lib/tests/config_value_test.cc +@@ -91,7 +91,7 @@ TEST_CASE("config object unwraps") { + auto value2 = config_int::new_number(fake_origin(), int64_t(2), "2"); + auto value3 = config_int::new_number(fake_origin(), int64_t(3), "3"); + unordered_map org {{"a", value1}, {"b", value2}, {"c", value3}}; +- auto obj = make_shared(fake_origin(), org); ++ auto obj = make_shared(fake_origin(), org); + unordered_map map {{"a", 1}, {"b", 2}, {"c", 3}}; + unwrapped_value expected(map); + bool test = expected == obj->unwrapped(); +@@ -103,7 +103,7 @@ TEST_CASE("config list unwraps") { + auto value2 = config_int::new_number(fake_origin(), int64_t(2), "2"); + auto value3 = config_int::new_number(fake_origin(), int64_t(3), "3"); + vector data { value1, value2, value3 }; +- auto list = make_shared(fake_origin(), data); ++ auto list = make_shared(fake_origin(), data); + vector v { 1,2,3 }; + unwrapped_value expected(v); + bool test = expected == list->unwrapped(); Added: head/devel/cpp-hocon/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/pkg-descr Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,3 @@ +A C++ implementation of the HOCON configuration file format. + +WWW: https://github.com/puppetlabs/cpp-hocon Added: head/devel/cpp-hocon/pkg-plist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cpp-hocon/pkg-plist Mon Mar 6 10:49:58 2017 (r435531) @@ -0,0 +1,28 @@ +include/hocon/config.hpp +include/hocon/config_exception.hpp +include/hocon/config_include_context.hpp +include/hocon/config_includer.hpp +include/hocon/config_includer_file.hpp +include/hocon/config_list.hpp +include/hocon/config_mergeable.hpp +include/hocon/config_object.hpp +include/hocon/config_origin.hpp +include/hocon/config_parse_options.hpp +include/hocon/config_parseable.hpp +include/hocon/config_render_options.hpp +include/hocon/config_resolve_options.hpp +include/hocon/config_syntax.hpp +include/hocon/config_value.hpp +include/hocon/config_value_factory.hpp +include/hocon/config_value_factory.hpp.orig +include/hocon/export.h +include/hocon/functional_list.hpp +include/hocon/parser/config_document.hpp +include/hocon/parser/config_document_factory.hpp +include/hocon/parser/config_node.hpp +include/hocon/path.hpp +include/hocon/program_options.hpp +include/hocon/types.hpp +include/hocon/version.h +lib/libcpp-hocon.so +lib/libcpp-hocon.so.0.1.2