From lapo@lapo.it  Fri Feb 14 11:13:53 2014
Return-Path: <lapo@lapo.it>
Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115])
	(using TLSv1 with cipher ADH-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by hub.freebsd.org (Postfix) with ESMTPS id 91E52AA9
	for <FreeBSD-gnats-submit@freebsd.org>; Fri, 14 Feb 2014 11:13:53 +0000 (UTC)
Received: from relay.andxor.it (firewall.andxor.it [78.134.40.49])
	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by mx1.freebsd.org (Postfix) with ESMTPS id B2E9A1BAF
	for <FreeBSD-gnats-submit@freebsd.org>; Fri, 14 Feb 2014 11:13:52 +0000 (UTC)
Received: (qmail 35028 invoked from network); 14 Feb 2014 11:13:41 -0000
Received: from lapo.andxor.it (192.168.2.22)
  by relay.andxor.it with SMTP; 14 Feb 2014 11:13:41 -0000
Received: by lapo.andxor.it (sSMTP sendmail emulation); Fri, 14 Feb 2014 12:13:41 +0100
Date: Fri, 14 Feb 2014 12:13:41 +0100
From: Lapo Luchini <lapo@lapo.it>
To: FreeBSD-gnats-submit@freebsd.org
Cc: Lapo Luchini <lapo@lapo.it>, madpilot@FreeBSD.org
Subject: [MAINTAINER] devel/monotone: unbreak with latest boost
X-Send-Pr-Version: 3.113
X-GNATS-Notify:

>Number:         186762
>Category:       ports
>Synopsis:       [MAINTAINER] devel/monotone: unbreak with latest boost
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    decke
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Fri Feb 14 11:20:00 UTC 2014
>Closed-Date:    Fri Feb 14 14:48:12 UTC 2014
>Last-Modified:  Fri Feb 14 14:50:00 UTC 2014
>Originator:     Lapo Luchini
>Release:        FreeBSD 10.0-RELEASE amd64
>Organization:
>Environment:
System: FreeBSD lapo.andxor.it 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Thu Jan 16 22:34:59 UTC
>Description:
Upgrading boost to 1.55 broke compilation of monotone (existing binaries are ok, they only use boost headers at compile time), this patch fixes it.

This version can also be obtained via RedPorts:
svn co https://svn.redports.org/lapo/devel/monotone@23110

Generated with FreeBSD Port Tools 0.99_11 (mode: change, diff: ports)
>How-To-Repeat:
>Fix:

--- monotone-1.0_3.patch begins here ---
diff -ruN /usr/ports/devel/monotone/files/patch-boost.diff ./files/patch-boost.diff
--- /usr/ports/devel/monotone/files/patch-boost.diff	1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-boost.diff	2014-02-14 11:49:36.701814237 +0100
@@ -0,0 +1,94 @@
+# Add support for Boost 1.53+.
+# Upstream commit: dfe4b51c8db852b7281a125aac6f3ddee34906f6
+============================================================
+--- src/database.cc	87efeeff2d3263ba98af684a4022f1897434ed2d
++++ src/database.cc	39ab2644b936e09a536b99ebd28b93f6e0d7c162
+@@ -92,7 +92,7 @@ using boost::shared_ptr;
+ using std::accumulate;
+ 
+ using boost::shared_ptr;
+-using boost::shared_dynamic_cast;
++using boost::dynamic_pointer_cast;
+ using boost::lexical_cast;
+ using boost::get;
+ using boost::tuple;
+@@ -3430,7 +3430,7 @@ database::encrypt_rsa(key_id const & pub
+ 
+   shared_ptr<X509_PublicKey> x509_key(Botan::X509::load_key(pub_block));
+   shared_ptr<RSA_PublicKey> pub_key
+-    = shared_dynamic_cast<RSA_PublicKey>(x509_key);
++    = dynamic_pointer_cast<RSA_PublicKey>(x509_key);
+   if (!pub_key)
+     throw recoverable_failure(origin::system,
+                               "Failed to get RSA encrypting key");
+@@ -3481,7 +3481,7 @@ database::check_signature(key_id const &
+       L(FL("building verifier for %d-byte pub key") % pub_block.size());
+       shared_ptr<X509_PublicKey> x509_key(Botan::X509::load_key(pub_block));
+       shared_ptr<RSA_PublicKey> pub_key
+-        = boost::shared_dynamic_cast<RSA_PublicKey>(x509_key);
++        = boost::dynamic_pointer_cast<RSA_PublicKey>(x509_key);
+ 
+       E(pub_key, id.inner().made_from,
+         F("failed to get RSA verifying key for %s") % id);
+============================================================
+--- src/key_store.cc	b7859345f7c665914d16357409bdff24a48b7996
++++ src/key_store.cc	1ca13b7ee527bc2872d9fc325cf5ef327ca053c2
+@@ -43,7 +43,7 @@ using boost::shared_ptr;
+ 
+ using boost::scoped_ptr;
+ using boost::shared_ptr;
+-using boost::shared_dynamic_cast;
++using boost::dynamic_pointer_cast;
+ 
+ using Botan::RSA_PrivateKey;
+ using Botan::RSA_PublicKey;
+@@ -641,7 +641,7 @@ key_store_state::decrypt_private_key(key
+   I(pkcs8_key);
+ 
+   shared_ptr<RSA_PrivateKey> priv_key;
+-  priv_key = shared_dynamic_cast<RSA_PrivateKey>(pkcs8_key);
++  priv_key = dynamic_pointer_cast<RSA_PrivateKey>(pkcs8_key);
+   E(priv_key, origin::no_fault,
+     F("failed to extract RSA private key from PKCS#8 keypair"));
+ 
+@@ -879,7 +879,8 @@ key_store::make_signature(database & db,
+         L(FL("make_signature: building %d-byte pub key") % pub_block.size());
+         shared_ptr<X509_PublicKey> x509_key =
+           shared_ptr<X509_PublicKey>(Botan::X509::load_key(pub_block));
+-        shared_ptr<RSA_PublicKey> pub_key = shared_dynamic_cast<RSA_PublicKey>(x509_key);
++        shared_ptr<RSA_PublicKey> pub_key =
++          dynamic_pointer_cast<RSA_PublicKey>(x509_key);
+ 
+         if (!pub_key)
+           throw recoverable_failure(origin::system,
+@@ -1092,7 +1093,7 @@ key_store_state::migrate_old_key_pair
+         continue;
+       }
+ 
+-  priv_key = shared_dynamic_cast<RSA_PrivateKey>(pkcs8_key);
++  priv_key = dynamic_pointer_cast<RSA_PrivateKey>(pkcs8_key);
+   I(priv_key);
+ 
+   // now we can write out the new key
+============================================================
+--- src/ssh_agent.cc	4a0dcab873559e934e41c5f220b5434d35600d9b
++++ src/ssh_agent.cc	6313ee3cdfca4112ba3957dc4a5f318472289dfa
+@@ -32,7 +32,7 @@ using boost::shared_ptr;
+ using std::vector;
+ 
+ using boost::shared_ptr;
+-using boost::shared_dynamic_cast;
++using boost::dynamic_pointer_cast;
+ 
+ using Botan::RSA_PublicKey;
+ using Botan::RSA_PrivateKey;
+@@ -391,7 +391,8 @@ ssh_agent::has_key(const keypair & key)
+   L(FL("has_key: building %d-byte pub key") % pub_block.size());
+   shared_ptr<X509_PublicKey> x509_key =
+     shared_ptr<X509_PublicKey>(Botan::X509::load_key(pub_block));
+-  shared_ptr<RSA_PublicKey> pub_key = shared_dynamic_cast<RSA_PublicKey>(x509_key);
++  shared_ptr<RSA_PublicKey> pub_key = 
++    dynamic_pointer_cast<RSA_PublicKey>(x509_key);
+ 
+   if (!pub_key)
+     throw recoverable_failure(origin::system,
--- monotone-1.0_3.patch ends here ---

>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-ports-bugs->decke 
Responsible-Changed-By: decke 
Responsible-Changed-When: Fri Feb 14 14:44:41 UTC 2014 
Responsible-Changed-Why:  
I'll take it. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=186762 
State-Changed-From-To: open->closed 
State-Changed-By: decke 
State-Changed-When: Fri Feb 14 14:48:12 UTC 2014 
State-Changed-Why:  
Committed. Thanks! 

http://www.freebsd.org/cgi/query-pr.cgi?pr=186762 

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/186762: commit references a PR
Date: Fri, 14 Feb 2014 14:48:05 +0000 (UTC)

 Author: decke
 Date: Fri Feb 14 14:47:58 2014
 New Revision: 344217
 URL: http://svnweb.freebsd.org/changeset/ports/344217
 QAT: https://qat.redports.org/buildarchive/r344217/
 
 Log:
   - Unbreak building with latest boost
   - Don't bump PORTREVISION as it's only a build fix
   
   PR:		ports/186762
   Submitted by:	Lapo Luchini <lapo@lapo.it> (maintainer)
 
 Added:
   head/devel/monotone/files/patch-boost.diff   (contents, props changed)
 
 Added: head/devel/monotone/files/patch-boost.diff
 ==============================================================================
 --- /dev/null	00:00:00 1970	(empty, because file is newly added)
 +++ head/devel/monotone/files/patch-boost.diff	Fri Feb 14 14:47:58 2014	(r344217)
 @@ -0,0 +1,95 @@
 +# Add support for Boost 1.53+.
 +# Upstream commit: dfe4b51c8db852b7281a125aac6f3ddee34906f6
 +============================================================
 +--- src/database.cc	87efeeff2d3263ba98af684a4022f1897434ed2d
 ++++ src/database.cc	39ab2644b936e09a536b99ebd28b93f6e0d7c162
 +@@ -92,7 +92,7 @@ using boost::shared_ptr;
 + using std::accumulate;
 + 
 + using boost::shared_ptr;
 +-using boost::shared_dynamic_cast;
 ++using boost::dynamic_pointer_cast;
 + using boost::lexical_cast;
 + using boost::get;
 + using boost::tuple;
 +@@ -3430,7 +3430,7 @@ database::encrypt_rsa(key_id const & pub
 + 
 +   shared_ptr<X509_PublicKey> x509_key(Botan::X509::load_key(pub_block));
 +   shared_ptr<RSA_PublicKey> pub_key
 +-    = shared_dynamic_cast<RSA_PublicKey>(x509_key);
 ++    = dynamic_pointer_cast<RSA_PublicKey>(x509_key);
 +   if (!pub_key)
 +     throw recoverable_failure(origin::system,
 +                               "Failed to get RSA encrypting key");
 +@@ -3481,7 +3481,7 @@ database::check_signature(key_id const &
 +       L(FL("building verifier for %d-byte pub key") % pub_block.size());
 +       shared_ptr<X509_PublicKey> x509_key(Botan::X509::load_key(pub_block));
 +       shared_ptr<RSA_PublicKey> pub_key
 +-        = boost::shared_dynamic_cast<RSA_PublicKey>(x509_key);
 ++        = boost::dynamic_pointer_cast<RSA_PublicKey>(x509_key);
 + 
 +       E(pub_key, id.inner().made_from,
 +         F("failed to get RSA verifying key for %s") % id);
 +============================================================
 +--- src/key_store.cc	b7859345f7c665914d16357409bdff24a48b7996
 ++++ src/key_store.cc	1ca13b7ee527bc2872d9fc325cf5ef327ca053c2
 +@@ -43,7 +43,7 @@ using boost::shared_ptr;
 + 
 + using boost::scoped_ptr;
 + using boost::shared_ptr;
 +-using boost::shared_dynamic_cast;
 ++using boost::dynamic_pointer_cast;
 + 
 + using Botan::RSA_PrivateKey;
 + using Botan::RSA_PublicKey;
 +@@ -641,7 +641,7 @@ key_store_state::decrypt_private_key(key
 +   I(pkcs8_key);
 + 
 +   shared_ptr<RSA_PrivateKey> priv_key;
 +-  priv_key = shared_dynamic_cast<RSA_PrivateKey>(pkcs8_key);
 ++  priv_key = dynamic_pointer_cast<RSA_PrivateKey>(pkcs8_key);
 +   E(priv_key, origin::no_fault,
 +     F("failed to extract RSA private key from PKCS#8 keypair"));
 + 
 +@@ -879,7 +879,8 @@ key_store::make_signature(database & db,
 +         L(FL("make_signature: building %d-byte pub key") % pub_block.size());
 +         shared_ptr<X509_PublicKey> x509_key =
 +           shared_ptr<X509_PublicKey>(Botan::X509::load_key(pub_block));
 +-        shared_ptr<RSA_PublicKey> pub_key = shared_dynamic_cast<RSA_PublicKey>(x509_key);
 ++        shared_ptr<RSA_PublicKey> pub_key =
 ++          dynamic_pointer_cast<RSA_PublicKey>(x509_key);
 + 
 +         if (!pub_key)
 +           throw recoverable_failure(origin::system,
 +@@ -1092,7 +1093,7 @@ key_store_state::migrate_old_key_pair
 +         continue;
 +       }
 + 
 +-  priv_key = shared_dynamic_cast<RSA_PrivateKey>(pkcs8_key);
 ++  priv_key = dynamic_pointer_cast<RSA_PrivateKey>(pkcs8_key);
 +   I(priv_key);
 + 
 +   // now we can write out the new key
 +============================================================
 +--- src/ssh_agent.cc	4a0dcab873559e934e41c5f220b5434d35600d9b
 ++++ src/ssh_agent.cc	6313ee3cdfca4112ba3957dc4a5f318472289dfa
 +@@ -32,7 +32,7 @@ using boost::shared_ptr;
 + using std::vector;
 + 
 + using boost::shared_ptr;
 +-using boost::shared_dynamic_cast;
 ++using boost::dynamic_pointer_cast;
 + 
 + using Botan::RSA_PublicKey;
 + using Botan::RSA_PrivateKey;
 +@@ -391,7 +391,8 @@ ssh_agent::has_key(const keypair & key)
 +   L(FL("has_key: building %d-byte pub key") % pub_block.size());
 +   shared_ptr<X509_PublicKey> x509_key =
 +     shared_ptr<X509_PublicKey>(Botan::X509::load_key(pub_block));
 +-  shared_ptr<RSA_PublicKey> pub_key = shared_dynamic_cast<RSA_PublicKey>(x509_key);
 ++  shared_ptr<RSA_PublicKey> pub_key = 
 ++    dynamic_pointer_cast<RSA_PublicKey>(x509_key);
 + 
 +   if (!pub_key)
 +     throw recoverable_failure(origin::system,
 +
 _______________________________________________
 svn-ports-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/svn-ports-all
 To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
 
>Unformatted:
