Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 20 Nov 2016 20:58:08 +0000 (UTC)
From:      Jan Beich <jbeich@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r426627 - in head/sysutils/facter: . files
Message-ID:  <201611202058.uAKKw8ho064868@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jbeich
Date: Sun Nov 20 20:58:08 2016
New Revision: 426627
URL: https://svnweb.freebsd.org/changeset/ports/426627

Log:
  sysutils/facter: unbreak build with boost 1.62
  
  vendor/leatherman/logging/src/logging.cc:75:44: error: no matching constructor for initialization of 'sink_t' (aka 'synchronous_sink<leatherman::logging::color_writer>')
          boost::shared_ptr<sink_t> sink(new sink_t(&dst));
                                             ^      ~~~~
  /usr/local/include/boost/log/sinks/sync_frontend.hpp:72:7: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'ostream *' (aka 'basic_ostream<char> *') to 'const boost::log::v2_mt_posix::sinks::synchronous_sink<leatherman::logging::color_writer>' for 1st argument
  class synchronous_sink :
        ^
  /usr/local/include/boost/log/sinks/sync_frontend.hpp:123:14: note: candidate constructor not viable: no known conversion from 'ostream *' (aka 'basic_ostream<char> *') to 'const shared_ptr<sink_backend_type>' for 1st argument
      explicit synchronous_sink(shared_ptr< sink_backend_type > const& backend) :
               ^
  /usr/local/include/boost/log/sinks/sync_frontend.hpp:134:45: note: candidate template ignored: substitution failure [with T0 = std::__1::basic_ostream<char, std::__1::char_traits<char> > *]: no type named 'type' in 'boost::log::v2_mt_posix::aux::enable_if_named_parameters<std::__1::basic_ostream<char, std::__1::char_traits<char> > *, boost::log::v2_mt_posix::aux::sfinae_dummy>'
      BOOST_LOG_PARAMETRIZED_CONSTRUCTORS_GEN(BOOST_LOG_SINK_CTOR_FORWARD_INTERNAL, ~)
                                              ^
  /usr/local/include/boost/log/detail/parameter_tools.hpp:44:66: note: expanded from macro 'BOOST_LOG_PARAMETRIZED_CONSTRUCTORS_GEN'
          BOOST_PP_REPEAT_FROM_TO(1, BOOST_LOG_MAX_PARAMETER_ARGS, macro, args)
                                                                   ^
  /usr/local/include/boost/preprocessor/repetition/repeat_from_to.hpp:36:125: note: expanded from macro 'BOOST_PP_REPEAT_FROM_TO_1'
                                                                                                                              ^
  /usr/local/include/boost/preprocessor/repetition/repeat_from_to.hpp:54:136: note: expanded from macro 'BOOST_PP_REPEAT_FROM_TO_D_1'
                                                                                                                                         ^
  note: (skipping 25 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
  /usr/local/include/boost/preprocessor/control/iif.hpp:25:60: note: expanded from macro 'BOOST_PP_IIF_I'
                                                             ^
  /usr/local/include/boost/preprocessor/control/iif.hpp:32:31: note: expanded from macro 'BOOST_PP_IIF_1'
                                ^
  /usr/local/include/boost/log/sinks/sync_frontend.hpp:51:14: note: expanded from macro 'BOOST_LOG_SINK_CTOR_FORWARD_INTERNAL_1'
      explicit synchronous_sink(T0 const& arg0, typename boost::log::aux::enable_if_named_parameters< T0, boost::log::aux::sfinae_dummy >::type = boost::log::aux::sfinae_dummy()) :\
               ^                                                                                                                           ~~~~
  /usr/local/include/boost/log/sinks/sync_frontend.hpp:134:45: note: candidate constructor template not viable: requires 2 arguments, but 1 was provided
  /usr/local/include/boost/log/detail/parameter_tools.hpp:44:66: note: expanded from macro 'BOOST_LOG_PARAMETRIZED_CONSTRUCTORS_GEN'
          BOOST_PP_REPEAT_FROM_TO(1, BOOST_LOG_MAX_PARAMETER_ARGS, macro, args)
                                                                   ^
  
  PR:		214469
  Submitted by:	antoine
  Obtained from:	upstream
  Approved by:	portmgr blanket

Added:
  head/sysutils/facter/files/patch-vendor_leatherman_logging_src_logging.cc   (contents, props changed)
Modified:
  head/sysutils/facter/Makefile   (contents, props changed)

Modified: head/sysutils/facter/Makefile
==============================================================================
--- head/sysutils/facter/Makefile	Sun Nov 20 20:57:54 2016	(r426626)
+++ head/sysutils/facter/Makefile	Sun Nov 20 20:58:08 2016	(r426627)
@@ -2,7 +2,7 @@
 
 PORTNAME=	facter
 PORTVERSION=	3.1.3
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	sysutils
 MASTER_SITES=	http://downloads.puppetlabs.com/facter/
 

Added: head/sysutils/facter/files/patch-vendor_leatherman_logging_src_logging.cc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/facter/files/patch-vendor_leatherman_logging_src_logging.cc	Sun Nov 20 20:58:08 2016	(r426627)
@@ -0,0 +1,19 @@
+(LTH-115) Fix Boost.Log sink initialization with Boost 1.62
+
+In Boost 1.62, the way sink argument forwarding appears to have changed
+in such a way that it failed to identify the implicit creation of a
+color_writer. Switch to explicitly creating the color_writer sink.
+
+https://github.com/puppetlabs/leatherman/commit/e8196d55ecac7f2bf3aa5cb0aefef0122e63db21
+
+--- vendor/leatherman/logging/src/logging.cc.orig	2015-11-25 00:14:00 UTC
++++ vendor/leatherman/logging/src/logging.cc
+@@ -72,7 +72,7 @@ namespace leatherman { namespace logging
+         core->remove_all_sinks();
+ 
+         using sink_t = sinks::synchronous_sink<color_writer>;
+-        boost::shared_ptr<sink_t> sink(new sink_t(&dst));
++        boost::shared_ptr<sink_t> sink = boost::make_shared<sink_t>(boost::make_shared<color_writer>(&dst));
+         core->add_sink(sink);
+ 
+ #if (!defined(__sun) && !defined(_AIX)) || !defined(__GNUC__)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201611202058.uAKKw8ho064868>