Bug 144336

Summary: [PATCH] devel/boost-libs: Fix libtorrent-rasterbar-14 python bindings build on FreeBSD 8.x
Product: Ports & Packages Reporter: Mario Sergio Fujikawa Ferreira <lioux>
Component: Individual Port(s)Assignee: Mario Sergio Fujikawa Ferreira <lioux>
Status: Closed FIXED    
Severity: Affects Only Me CC: churanov.port.maintainer
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
boost-libs-1.41.0_1.patch none

Description Mario Sergio Fujikawa Ferreira freebsd_committer freebsd_triage 2010-02-27 00:40:03 UTC
- Add compile gcc option to make sure that boost compilation toolchain
  acknowledges that gcc versions prior to 4.3.x do not implement
  inclass member initialization

	- This enables net-p2p/libtorrent-rasterbar-14 to build
	  python bindings with the base system gcc on FreeBSD 8.x.
	  Without resorting to gcc 4.3, gcc 4.4 or gcc 4.5 ports.

	- Prior to this patch, libtorrent-rasterbar-14 python
	  bindings could only be built with gcc 4.3+. This is a
	  problem for 2 reasons:
		1) We required gcc 4.3+ to be available and/or built
		   prior to building rasterbar.
		2) Any port requiring rasterbar will also have to
		   depend upon gcc 4.3+

	- This patch should be merged to the original boost
	  distribution.

- Bump PORTREVISION to acknowledge the fix

Added file(s):
- files/patch-boost__config__compiler__gcc.hpp

Port maintainer (churanov.port.maintainer@gmail.com) is cc'd.

Generated with FreeBSD Port Tools 0.99
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2010-02-27 00:40:12 UTC
Responsible Changed
From-To: freebsd-ports-bugs->lioux

Submitter has GNATS access (via the GNATS Auto Assign Tool)
Comment 2 Edwin Groothuis freebsd_committer freebsd_triage 2010-02-27 00:40:14 UTC
Maintainer of devel/boost-libs,

Please note that PR ports/144336 has just been submitted.

If it contains a patch for an upgrade, an enhancement or a bug fix
you agree on, reply to this email stating that you approve the patch
and a committer will take care of it.

The full text of the PR can be found at:
    http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/144336

-- 
Edwin Groothuis via the GNATS Auto Assign Tool
edwin@FreeBSD.org
Comment 3 Edwin Groothuis freebsd_committer freebsd_triage 2010-02-27 00:40:17 UTC
State Changed
From-To: open->feedback

Awaiting maintainers feedback (via the GNATS Auto Assign Tool)
Comment 4 dfilter service freebsd_committer freebsd_triage 2010-03-15 02:13:02 UTC
lioux       2010-03-15 02:12:53 UTC

  FreeBSD ports repository

  Modified files:
    devel/boost-libs     Makefile 
  Added files:
    devel/boost-libs/files patch-boost__config__compiler__gcc.hpp 
  Log:
  o Add compile gcc option to make sure that boost compilation toolchain
    acknowledges that gcc versions prior to 4.3.x do not implement
    inclass member initialization.
  o This enables net-p2p/libtorrent-rasterbar-14 to build python
    bindings with the base system gcc on FreeBSD 8.x. Previously, we
    would have had to resort gcc 4.3+ ports.
  o Bump PORTREVISION
  
  PR:             ports/144336
  Approved by:    maintainer (timeout 16 days)
  
  Revision  Changes    Path
  1.4       +1 -0      ports/devel/boost-libs/Makefile
  1.1       +16 -0     ports/devel/boost-libs/files/patch-boost__config__compiler__gcc.hpp (new)
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
Comment 5 Mario Sergio Fujikawa Ferreira freebsd_committer freebsd_triage 2010-03-15 02:13:10 UTC
State Changed
From-To: feedback->closed

Committed. Thanks!
Comment 6 Michael Gmelin 2011-03-28 02:55:46 UTC
This patch is breaking parts of boost, at least lexical_cast, probably also other type_trait related constructs.

Defining BOOST_NO_INCLASS_MEMBER_INITIALIZATION to fix a problem in Boost.Python (and specifically for the p2p port in question) is just too much, since in class member initialization should be available in gcc since version 3 at least. I would suggest to develop a patch for net-p2p/libtorrent-rasterbar-14 instead of breaking boost ;)

Simple test program:
#include <iostream>
#include <boost/lexical_cast.hpp>

using namespace boost;

int main(int, char** argv)
{
  std::cout << boost::lexical_cast<bool>(std::string(argv[1])) << std::endl;
}

See the boost website for details on the issue:

https://svn.boost.org/trac/boost/ticket/4669

and

https://svn.boost.org/trac/boost/ticket/4381

Thanks
Michael