bcp does not copy or list concept_check as bimap dependency

Open
#22 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
48/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
cpp
Domain
cli, tooling

Research direction

Start with the bcp tool's dependency discovery and --list/copy entry points, then compare its result for bimap with boostdep --list-dependencies bimap. Trace the dependency from boost/bimap/detail/bimap_core.hpp to boost/concept_check.hpp and ensure both listing and output copying include concept_check. Re-run the reproduction commands and compile the simple bimap program to confirm the dependency is available.

Written by the indexing model from the issue text.

Description

Problem description

bcp neither copies (to the output-path) nor --lists concept_check dependency for bimap

Problem reproduction
  1. cd $HOME
  2. git clone https://github.com/boostorg/boost.git boost
  3. cd boost
  4. git checkout boost-1.86.0
  5. git submodule update --init
  6. ./bootstrap.sh
  7. ./b2 tools/bcp
  8. ./dist/bin/bcp --list bimap
  9. Nothing from concept_check (only libs/bimap/include/boost/bimap/detail/concept_tags.hpp)
  10. mkdir $HOME/boost_for_bimap
  11. ./dist/bin/bcp bimap $HOME/boost_for_bimap
  12. Try to compile simple C++ program using #include "boost/bimap/bimap.hpp providing following include directories to compiler (I used gcc 9.4.0 on Ubuntu 20.04 LTS but it should not matter):
  • $HOME/boost_for_bimap
  • $HOME/boost_for_bimap/libs/bimap/include
  1. Observe compile error:

In file included from $HOME/boost_for_bimap/libs/bimap/include/boost/bimap/bimap.hpp:61,
from $HOME/<my_simple_program>.cpp:<line_number>,
$HOME/boost_for_bimap/libs/bimap/include/boost/bimap/detail/bimap_core.hpp:31:10: fatal error: boost/concept_check.hpp: No such file or directory
31 | #include <boost/concept_check.hpp>
| ^~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

Inconsistency with boostdep

./dist/bin/boostdep --list-dependencies bimap

correctly outputs concept_check as first primary dependency:

Primary dependencies for bimap:

concept_check:
<boost/concept_check.hpp>
from <boost/bimap/detail/bimap_core.hpp>
from <boost/bimap/list_of.hpp>
from <boost/bimap/multiset_of.hpp>
from <boost/bimap/set_of.hpp>
from <boost/bimap/unconstrained_set_of.hpp>
from <boost/bimap/unordered_multiset_of.hpp>
from <boost/bimap/unordered_set_of.hpp>
from <boost/bimap/vector_of.hpp>

Dominant language
C++
Stars
23
Forks
38
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from boostorg/bcp

All issues in boostorg/bcp

Similar issues

More C++ issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.