Opened 18 years ago

Last modified 18 years ago

#81 new defect

Can't have recursive dependent libs.

Reported by: grafik@… Owned by: somebody
Priority: major Milestone:
Component: component1 Version:
Keywords: Cc:

Description

BBv2 enforces not having recursive dependencies between libraries. But this is a common use case for library archives. The usual solution is to list archive libs multiple times on the link, or if the compile allows for it to tell it to recursively search some libs. For example GNU LD has the "-(", "-)", "--start-group", and "--end-group" options. Three solutions are possible:

  • Duplicate libraries unconditionally in the link commands.
  • Unconditionally group libraries in each toolset if supported.
  • When a recursion is detected, duplicate only those libraries.
  • When a recursion is detected, put those libraries in recursive group.

For now, I'm going to make the GCC toolset do option 2. Until a better solution can be implemented.

Change History (1)

comment:1 by ghost, 18 years ago

Milestone: C++ Boost switch (regression runners)

Cleaning the milestone. It's not a critical bug as far as regression runners switch to V2 is concerned since Boost does not have recursive dependencies between libs.

Note: See TracTickets for help on using tickets.