Date: Wed, 13 Nov 2013 15:49:25 +0000 (UTC) From: Raphael Kubo da Costa <rakuco@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r333701 - head/science/openbabel/files Message-ID: <201311131549.rADFnPCn086654@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: rakuco Date: Wed Nov 13 15:49:25 2013 New Revision: 333701 URL: http://svnweb.freebsd.org/changeset/ports/333701 Log: Add upstream patch to fix the build with libc++. The original commit has been slightly tuned so that it builds with the code in the latest stable release. Approved by: makc (maintainer) Added: head/science/openbabel/files/patch-git_c3abbdda (contents, props changed) Added: head/science/openbabel/files/patch-git_c3abbdda ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/science/openbabel/files/patch-git_c3abbdda Wed Nov 13 15:49:25 2013 (r333701) @@ -0,0 +1,84 @@ +This is the git commit below, with the change to include/openbabel/shared_ptr.h +properly adapted since it originally depends on commit ce178cbb. + +commit c3abbddae78e654df9322ad1020ff79dd6332946 +Author: Matt Swain <m.swain@me.com> +Date: Thu Oct 31 15:25:53 2013 +0000 + + Detect libc++ as this is now the default in OS X Mavericks + +diff --git a/include/openbabel/obmolecformat.h b/include/openbabel/obmolecformat.h +index 46ec724..c004313 100644 +--- include/openbabel/obmolecformat.h ++++ include/openbabel/obmolecformat.h +@@ -23,7 +23,10 @@ GNU General Public License for more details. + #include <hash_map> + #endif + +-#if __GNUC__ == 4 && __GNUC_MINOR__ >= 1 ++#include <ciso646> // detect std::lib ++#ifdef _LIBCPP_VERSION ++ #include <unordered_map> ++#elif __GNUC__ == 4 && __GNUC_MINOR__ >= 1 + #include <tr1/unordered_map> + #elif defined(USE_BOOST) + #include <boost/tr1/unordered_map.hpp> +@@ -141,6 +144,8 @@ public: + + #ifdef _MSC_VER + typedef stdext::hash_map<std::string, unsigned> NameIndexType; ++#elif defined(_LIBCPP_VERSION) ++ typedef std::unordered_map<std::string, unsigned> NameIndexType; + #elif (__GNUC__ == 4 && __GNUC_MINOR__ >= 1 && !defined(__APPLE_CC__)) || defined (USE_BOOST) + typedef std::tr1::unordered_map<std::string, unsigned> NameIndexType; + #else +diff --git a/include/openbabel/shared_ptr.h b/include/openbabel/shared_ptr.h +index 5d20254..378856a 100644 +--- include/openbabel/shared_ptr.h ++++ include/openbabel/shared_ptr.h +@@ -22,9 +22,17 @@ GNU General Public License for more details. + #else + #include <memory> + #if __GNUC__ == 4 //&& __GNUC_MINOR__ < 3 removed at the suggestion of Konstantin Tokarev +- #include <tr1/memory> ++ #ifdef _LIBCPP_VERSION ++ #include <memory> ++ #else ++ #include <tr1/memory> ++ #endif ++ #endif ++ #ifdef _LIBCPP_VERSION ++ using std::shared_ptr; ++ #else ++ using std::tr1::shared_ptr; + #endif +- using std::tr1::shared_ptr; + #endif + + #endif // OB_SHARED_PTR_H +diff --git a/src/ops/unique.cpp b/src/ops/unique.cpp +index 5f7714f..8527fba 100644 +--- src/ops/unique.cpp ++++ src/ops/unique.cpp +@@ -21,7 +21,7 @@ GNU General Public License for more details. + #include <openbabel/obconversion.h> + #include <openbabel/descriptor.h> + #include <openbabel/inchiformat.h> +-#ifdef _MSC_VER ++#if defined(_MSC_VER) || defined(_LIBCPP_VERSION) + #include <unordered_map> + #elif (__GNUC__ == 4 && __GNUC_MINOR__ >= 1 && !defined(__APPLE_CC__)) + #include <tr1/unordered_map> +@@ -36,7 +36,11 @@ GNU General Public License for more details. + + using namespace std; + #ifndef NO_UNORDERED_MAP +-using std::tr1::unordered_map; ++ #ifdef _LIBCPP_VERSION ++ using std::unordered_map; ++ #else ++ using std::tr1::unordered_map; ++ #endif + #endif + namespace OpenBabel + {
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201311131549.rADFnPCn086654>