boostorg / fiber

userland threads

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Build script relies on third party to import Context before Fiber

Kojoley opened this issue · comments

Fiber build script uses <segmented-stacks> feature

fiber/build/Jamfile.v2

Lines 23 to 26 in 2cb72f5

<target-os>linux,<toolset>gcc,<segmented-stacks>on:<cxxflags>-fsplit-stack
<target-os>linux,<toolset>gcc,<segmented-stacks>on:<cxxflags>-DBOOST_USE_SEGMENTED_STACKS
<toolset>clang,<segmented-stacks>on:<cxxflags>-fsplit-stack
<toolset>clang,<segmented-stacks>on:<cxxflags>-DBOOST_USE_SEGMENTED_STACKS
which is defined in Context library build script. It works currently by pure luck that boost-cpp.jam (main Boost build script) was unintentionally consistently importing Context before Fiber.

Possible solutions:

  1. If -fsplit-stack -DBOOST_USE_SEGMENTED_STACKS is not needed by Fiber itself -- we can just delete these lines and issue will be resolved.
  2. If -fsplit-stack -DBOOST_USE_SEGMENTED_STACKS is needed by Fiber -- we can put there in Context usage requirements and Fiber will get them automatically by using <library>/boost/context//boost_context.