datastax/cpp-driver — pull request #14 by NuLL3rr0r (2014-02-21 14:35:48+00:00)
Title: FreeBSD/Clang required headers

These are undefined when building cpp-driver on Clang/FreeBSD: AF_INET, in6_addr, AF_INET6.

So, these headers are required in order to build cpp-drvier successfully: ,

The error output:

/home/babaei/Desktop/cpp-driver/src/cql/internal/cql_serialization.cpp:636:22: error:
use of undeclared identifier 'AF_INET'
return inet_ntop(AF_INET, src, dst, cnt);
^
/home/babaei/Desktop/cpp-driver/src/cql/internal/cql_serialization.cpp:657:22: error:
use of undeclared identifier 'AF_INET6'
return inet_ntop(AF_INET6, src, dst, cnt);
^
/home/babaei/Desktop/cpp-driver/src/cql/internal/cql_serialization.cpp:688:52: error:
unknown type name 'in6_addr'; did you mean 'in_addr'?
BOOST_MPL_ASSERT_RELATION( boost::mpl::sizeof_::value, ==, 16 );
^
/usr/local/include/boost/mpl/assert.hpp:368:60: note: expanded from macro
'BOOST_MPL_ASSERT_RELATION'
BOOST_MPL_ASSERT_RELATION_IMPL(BOOST_MPL_AUX_PP_COUNTER(), x, rel, y) \
^
/usr/local/include/boost/mpl/assert.hpp:328:54: note: expanded from macro '\
BOOST_MPL_ASSERT_RELATION_IMPL'
enum { BOOST_PP_CAT(mpl_assert_rel_value,counter) = (x rel y) }; \
^
/usr/include/arpa/inet.h:109:8: note: 'in_addr' declared here
struct in_addr {
^
/home/babaei/Desktop/cpp-driver/src/cql/internal/cql_serialization.cpp:688:52: error:
unknown type name 'in6_addr'; did you mean 'in_addr'?
BOOST_MPL_ASSERT_RELATION( boost::mpl::sizeof_::value, ==, 16 );
^
/usr/local/include/boost/mpl/assert.hpp:368:60: note: expanded from macro
'BOOST_MPL_ASSERT_RELATION'
BOOST_MPL_ASSERT_RELATION_IMPL(BOOST_MPL_AUX_PP_COUNTER(), x, rel, y) \
^
/usr/local/include/boost/mpl/assert.hpp:337:19: note: expanded from macro '\
BOOST_MPL_ASSERT_RELATION_IMPL'
, x \
^
/usr/local/include/boost/mpl/assert.hpp:59:58: note: expanded from macro '\
BOOST_MPL_AUX_ASSERT_CONSTANT'
# define BOOST_MPL_AUX_ASSERT_CONSTANT(T, expr) enum { expr }
^
/usr/include/arpa/inet.h:109:8: note: 'in_addr' declared here
struct in_addr {
^
/home/babaei/Desktop/cpp-driver/src/cql/internal/cql_serialization.cpp:688:5: error:
no matching function for call to 'assertion_failed'
BOOST_MPL_ASSERT_RELATION( boost::mpl::sizeof_::value, ==, 16 );
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/boost/mpl/assert.hpp:367:49: note: expanded from macro
'BOOST_MPL_ASSERT_RELATION'
# define BOOST_MPL_ASSERT_RELATION(x, rel, y) \
^
/usr/local/include/boost/mpl/assert.hpp:332:9: note: expanded from macro '\
BOOST_MPL_ASSERT_RELATION_IMPL'
...boost::mpl::assertion_failed( \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/boost/mpl/assert.hpp:59:58: note: expanded from macro '\
BOOST_MPL_AUX_ASSERT_CONSTANT'
# define BOOST_MPL_AUX_ASSERT_CONSTANT(T, expr) enum { expr }
^
/usr/local/include/boost/mpl/assert.hpp:82:5: note: candidate function
[with C = false] not viable: no known conversion from 'boost::mpl::failed
************(boost::mpl::assert_relation::value, 16>::************)' to 'typename
assert::type' (aka 'mpl_::assert') for 1st argument
int assertion_failed( typename assert::type );
^
/home/babaei/Desktop/cpp-driver/src/cql/internal/cql_serialization.cpp:711:22: error:
use of undeclared identifier 'AF_INET'
return inet_pton(AF_INET, src, dst);
^
/home/babaei/Desktop/cpp-driver/src/cql/internal/cql_serialization.cpp:721:22: error:
use of undeclared identifier 'AF_INET6'
return inet_pton(AF_INET6, src, dst);
^
/home/babaei/Desktop/cpp-driver/src/cql/internal/cql_serialization.cpp:740:37: error:
unknown type name 'in6_addr'; did you mean 'in_addr'?
const char buffer_size = sizeof(in6_addr);
^~~~~~~~
in_addr
/usr/include/arpa/inet.h:109:8: note: 'in_addr' declared here
struct in_addr {
^
8 errors generated.
*** Error code 1

Stop.
make[2]: stopped in /usr/home/babaei/Desktop/cpp-driver/build
*** Error code 1

Stop.
make[1]: stopped in /usr/home/babaei/Desktop/cpp-driver/build
*** Error code 1

Stop.
make: stopped in /usr/home/babaei/Desktop/cpp-driver/build