Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

check-target-builds breaks module imports #454

Open
Assignees
Labels
bugSomething isn't working
@Lastique

Description

Make sure you completed the following tasks

Environment and version details

  • Operating System+version: Kubuntu 24.04
  • Compiler+version: GCC 13.3
  • Shell: bash
  • B2 Version: B2 5.3.2 (OS=LINUX, jobs=16)

Brief problem description

When a check-target-builds check is added to the library tests' requirements, it breaks module imports in the library's Jamfile.

Steps to reproduce the issue

  1. Unpack the attached reproducer in $BOOST_ROOT/libs. This is a reduced Boost.Atomic project.

my_atomic.tar.gz

  1. cd libs/my_atomic/test and run b2 -j8 release.

Actual behavior summary

Building the tests fails with the following output:

Performing configuration checks
 - default address-model : 64-bit (cached) [1]
 - default architecture : x86 (cached) [1]
 - symlinks supported : yes (cached)
 - cxx11_constexpr : yes (cached) [2]
 - cxx11_noexcept : yes (cached) [2]
 - cxx11_nullptr : yes (cached) [2]
 - cxx11_lambdas : yes (cached) [2]
 - cxx11_static_assert : yes (cached) [2]
 - cxx11_defaulted_functions : yes (cached) [2]
 - cxx11_deleted_functions : yes (cached) [2]
 - cxx11_hdr_ratio : yes (cached) [2]
 - cxx11_hdr_chrono : yes (cached) [2]
 - cxx11_hdr_mutex : yes (cached) [2]
 - cxx11_hdr_condition_variable : yes (cached) [2]
 - cxx11_hdr_thread : yes (cached) [2]
[errno 2] atomic-arch-config.jam (No such file or directory)
 - has sufficient <type_traits> : yes (cached) [2]
 - cxx11_constexpr : yes (cached) [3]
 - cxx11_noexcept : yes (cached) [3]
 - cxx11_nullptr : yes (cached) [3]
 - cxx11_lambdas : yes (cached) [3]
 - cxx11_static_assert : yes (cached) [3]
 - cxx11_defaulted_functions : yes (cached) [3]
 - cxx11_deleted_functions : yes (cached) [3]
 - cxx11_hdr_ratio : yes (cached) [3]
 - cxx11_hdr_chrono : yes (cached) [3]
 - cxx11_hdr_mutex : yes (cached) [3]
 - cxx11_hdr_condition_variable : yes (cached) [3]
 - cxx11_hdr_thread : yes (cached) [3]
 - has sufficient <type_traits> : yes (cached) [3]
/home/user/src/boost/libs/my_atomic/build/Jamfile.v2:68: in Jamfile</home/user/src/boost/libs/my_atomic/build>.select-arch-specific-sources
ERROR: rule "atomic-arch-config.deduce-architecture" unknown in module "Jamfile</home/user/src/boost/libs/my_atomic/build>".
(builtin): in modules.call-in
/home/user/src/boost/tools/build/src/util/indirect.jam:105: in indirect.call
/home/user/src/boost/tools/build/src/build/property.jam:144: in property.evaluate-conditionals-in-context
/home/user/src/boost/tools/build/src/build/targets.jam:1108: in evaluate-requirements
/home/user/src/boost/tools/build/src/build/targets.jam:1142: in common-properties2
/home/user/src/boost/tools/build/src/build/targets.jam:1038: in targets.common-properties
/home/user/src/boost/tools/build/src/build/targets.jam:1328: in class@basic-target.generate
/home/user/src/boost/tools/build/src/build/targets.jam:822: in generate-really
/home/user/src/boost/tools/build/src/build/targets.jam:804: in class@main-target.generate
/home/user/src/boost/tools/build/src/build/targets.jam:938: in targets.generate-from-reference
/home/user/src/boost/tools/build/src/build/targets.jam:1292: in generate-dependencies
/home/user/src/boost/tools/build/src/build/targets.jam:1365: in class@basic-target.generate
/home/user/src/boost/tools/build/src/build/targets.jam:822: in generate-really
/home/user/src/boost/tools/build/src/build/targets.jam:804: in class@main-target.generate
/home/user/src/boost/tools/build/src/build/targets.jam:938: in targets.generate-from-reference
/home/user/src/boost/tools/build/src/build/targets.jam:1292: in generate-dependencies
/home/user/src/boost/tools/build/src/build/targets.jam:1362: in class@basic-target.generate
/home/user/src/boost/tools/build/src/build/targets.jam:822: in generate-really
/home/user/src/boost/tools/build/src/build/targets.jam:804: in class@main-target.generate
/home/user/src/boost/tools/build/src/build/targets.jam:271: in class@project-target.generate
/home/user/src/boost/tools/build/src/build-system.jam:832: in module scope

You can clearly see that libs/my_atomic/build/atomic-arch-config.jam exists. Furthermore, if you comment line 28 in libs/my_atomic/test/Jamfile.v2, which contains the check-target-builds check, the compilation succeeds.

Expected behavior summary

check-target-builds should not break module imports.

Metadata

Metadata

Labels

bugSomething isn't working

Type

Projects

Status

🔖 Ready

Milestone

No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      AltStyle によって変換されたページ (->オリジナル) /