Bug 213763

Summary: [NEW PORT] devel/cpp-hocon: Type safe C++ config file library
Product: Ports & Packages Reporter: Jason Slagle <jslagle>
Component: Individual Port(s)Assignee: Dmitry Marakasov <amdmi3>
Status: Closed FIXED    
Severity: Affects Some People CC: zleslie
Priority: ---    
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
New CPP-HOCON port. none

Description Jason Slagle 2016-10-25 03:16:50 UTC
Created attachment 176128 [details]
New CPP-HOCON port.

This port adds devel/cpp-hocon which is needed for newer versions of facter.  It relies on the devel/leatherman port also in queue.

I'm maintaining patches in the port tree which are submitted upstream and will patch the port after they are released upstream.
Comment 1 Dmitry Marakasov freebsd_committer freebsd_triage 2016-12-29 17:01:58 UTC
Similar problems as with leatherman ports.
Comment 2 Zach Leslie freebsd_committer freebsd_triage 2017-01-29 07:08:04 UTC
This looks to be missing the cmake modules required for a facter build.  With a patch to sysutils/facter like 

https://gist.github.com/xaque208/eed0c798cf937e76c1a6b8ed36f74bc2

I get the following:

CMake Error at /usr/local/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:138 (message):
  cpp-hocon was not found.  (missing: CPPHOCON_LIBRARY)
Call Stack (most recent call first):
  /usr/local/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
  cmake/FindDependency.cmake:28 (find_package_handle_standard_args)
  cmake/FindCPPHOCON.cmake:2 (find_dependency)
  CMakeLists.txt:97 (find_package)

If I look in the leatherman port, I see the cmake directory in the plist, but not here.  Perhaps I'm pointing at the wrong thing here, so perhaps there is another change required to my facter patch before it will compile.
Comment 3 Dmitry Marakasov freebsd_committer freebsd_triage 2017-03-06 10:50:04 UTC
Committed with fixes.
Comment 4 commit-hook freebsd_committer freebsd_triage 2017-03-06 10:50:33 UTC
A commit references this bug:

Author: amdmi3
Date: Mon Mar  6 10:50:01 UTC 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

Changes:
  head/devel/Makefile
  head/devel/cpp-hocon/
  head/devel/cpp-hocon/Makefile
  head/devel/cpp-hocon/distinfo
  head/devel/cpp-hocon/files/
  head/devel/cpp-hocon/files/patch-lib_CMakeLists.txt
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_config.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__include__context.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__includer.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__includer__file.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__list.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__mergeable.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__object.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__origin.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__parse__options.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__parseable.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__render__options.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__resolve__options.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__value.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_config__value__factory.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_parser_config__document.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_parser_config__document__factory.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_parser_config__node.hpp
  head/devel/cpp-hocon/files/patch-lib_inc_hocon_path.hpp
  head/devel/cpp-hocon/files/patch-lib_src_config__value__factory.cc
  head/devel/cpp-hocon/files/patch-lib_tests_CMakeLists.txt
  head/devel/cpp-hocon/files/patch-lib_tests_config__value__test.cc
  head/devel/cpp-hocon/pkg-descr
  head/devel/cpp-hocon/pkg-plist