Opened 7 years ago

Closed 7 years ago

#11559 closed Bugs (fixed)

Boost.Log 1.59 does not compile with Android NDK

Reported by: jeffcrogers@… Owned by: Andrey Semashev
Milestone: To Be Determined Component: log
Version: Boost 1.59.0 Severity: Problem
Keywords: Cc:

Description

Seems like include/boost/log/detail/event.hpp will always result in BOOST_LOG_EVENT_USE_FUTEX being defined on newer linux, including Android, but Android does not support the sys_futex sys call:

libs/log/src/event.cpp:93:27: error: 'SYS_futex' was not declared in this scope
             if (::syscall(SYS_futex, &m_state.storage(), BOOST_LOG_FUTEX_WAIT, 0, NULL, NULL, 0) == 0)
                           ^
In file included from ./boost/config.hpp:39:0,
                 from ./boost/log/detail/config.hpp:27,
                 from libs/log/src/event.cpp:16:
libs/log/src/event.cpp: In member function 'void boost::log::v2s_mt_posix::aux::futex_based_event::set_signalled()':
libs/log/src/event.cpp:121:38: error: 'SYS_futex' was not declared in this scope
         if (BOOST_UNLIKELY(::syscall(SYS_futex, &m_state.storage(), BOOST_LOG_FUTEX_WAKE, 1, NULL, NULL, 0) < 0))

Change History (1)

comment:1 by Andrey Semashev, 7 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.