Commit 52155e1d authored by Ben Hamilton's avatar Ben Hamilton Committed by Facebook Github Bot 7

Make Fibers library conditional on working Boost.Context fcontext_t

Summary:
Boost 1.61 removes the `boost::context::fcontext_t` type
which Folly Fibers depends on.

This makes the Fibers library conditional on a working `fcontext_t`,
so Folly will build (just without Fibers) if it's not present.

Depends On D3419638

Fixes https://github.com/facebook/folly/issues/413

Reviewed By: Orvid

Differential Revision: D3420097

fbshipit-source-id: 876f8f76a2d0dda4ce5085c27875ab6aaa7b86c0
parent 6d52608a
......@@ -97,32 +97,6 @@ nobase_follyinclude_HEADERS = \
experimental/EventCount.h \
experimental/Instructions.h \
experimental/bser/Bser.h \
fibers/AddTasks.h \
fibers/AddTasks-inl.h \
fibers/Baton.h \
fibers/Baton-inl.h \
fibers/BoostContextCompatibility.h \
fibers/EventBaseLoopController.h \
fibers/EventBaseLoopController-inl.h \
fibers/Fiber.h \
fibers/Fiber-inl.h \
fibers/FiberManager.h \
fibers/FiberManager-inl.h \
fibers/FiberManagerMap.h \
fibers/ForEach.h \
fibers/ForEach-inl.h \
fibers/GenericBaton.h \
fibers/GuardPageAllocator.h \
fibers/LoopController.h \
fibers/Promise.h \
fibers/Promise-inl.h \
fibers/SimpleLoopController.h \
fibers/TimedMutex.h \
fibers/TimedMutex-inl.h \
fibers/TimeoutController.h \
fibers/traits.h \
fibers/WhenN.h \
fibers/WhenN-inl.h \
experimental/FunctionScheduler.h \
experimental/FutureDAG.h \
experimental/io/FsUtil.h \
......@@ -467,12 +441,6 @@ libfolly_la_SOURCES = \
experimental/bser/Dump.cpp \
experimental/bser/Load.cpp \
experimental/DynamicParser.cpp \
fibers/Baton.cpp \
fibers/Fiber.cpp \
fibers/FiberManager.cpp \
fibers/FiberManagerMap.cpp \
fibers/GuardPageAllocator.cpp \
fibers/TimeoutController.cpp \
experimental/FunctionScheduler.cpp \
experimental/io/FsUtil.cpp \
experimental/JSONSchema.cpp \
......@@ -496,6 +464,44 @@ if !HAVE_BITS_FUNCTEXCEPT_H
libfollybase_la_SOURCES += detail/FunctionalExcept.cpp
endif
if HAVE_BOOST_CONTEXT
nobase_follyinclude_HEADERS += \
fibers/AddTasks.h \
fibers/AddTasks-inl.h \
fibers/Baton.h \
fibers/Baton-inl.h \
fibers/BoostContextCompatibility.h \
fibers/EventBaseLoopController.h \
fibers/EventBaseLoopController-inl.h \
fibers/Fiber.h \
fibers/Fiber-inl.h \
fibers/FiberManager.h \
fibers/FiberManager-inl.h \
fibers/FiberManagerMap.h \
fibers/ForEach.h \
fibers/ForEach-inl.h \
fibers/GenericBaton.h \
fibers/GuardPageAllocator.h \
fibers/LoopController.h \
fibers/Promise.h \
fibers/Promise-inl.h \
fibers/SimpleLoopController.h \
fibers/TimedMutex.h \
fibers/TimedMutex-inl.h \
fibers/TimeoutController.h \
fibers/traits.h \
fibers/WhenN.h \
fibers/WhenN-inl.h
libfolly_la_SOURCES += \
fibers/Baton.cpp \
fibers/Fiber.cpp \
fibers/FiberManager.cpp \
fibers/FiberManagerMap.cpp \
fibers/GuardPageAllocator.cpp \
fibers/TimeoutController.cpp
endif
libfollybase_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LT_VERSION)
libfolly_la_LIBADD = libfollybase.la
......
......@@ -536,6 +536,7 @@ AM_CONDITIONAL([HAVE_BITS_FUNCTEXCEPT_H], [test "$ac_cv_header_bits_functexcept_
AM_CONDITIONAL([HAVE_EXTRANDOM_SFMT19937],
[test "$folly_cv_prog_cc_have_extrandom_sfmt19937" = "yes"])
AM_CONDITIONAL([FOLLY_TESTMAIN], [test "x${use_follytestmain}" = "xyes"])
AM_CONDITIONAL([HAVE_BOOST_CONTEXT], [test "x${ax_cv_boost_context}" = "xyes"])
# Output
AC_CONFIG_FILES([Makefile
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment