Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Duplicate checks run / configuration duplicated for address-model and x86_* #434

Open
Flamefire opened this issue Dec 27, 2024 · 0 comments
Labels
bug Something isn't working

Comments

@Flamefire
Copy link
Contributor

Flamefire commented Dec 27, 2024

Environment and version details

b2 5.2.1, any OS, in this case Windows

Brief problem description

Number of configurations is twice as expected

Steps to reproduce the issue

Testing Boost.Locale with b2 --abbreviate-paths libs/locale/test//show_config --verbose-test toolset=msvc-14.0 address-model=32,64 link=shared,static variant=debug,release

Actual behavior summary

I see 17 configurations in the configure section even though there should only be 8(+1):

[1] msvc-14.0
[2] msvc-14.0/dbg/adrs-mdl-32/thrd-mlt/vsblt-hdn
[3] msvc-14.0/dbg/x86_3/thrdp-wn32/thrd-mlt/vsblt-hdn
[4] msvc-14.0/rls/adrs-mdl-32/thrd-mlt/vsblt-hdn
[5] msvc-14.0/rls/x86_3/thrdp-wn32/thrd-mlt/vsblt-hdn
[6] msvc-14.0/dbg/adrs-mdl-32/lnk-sttc/thrd-mlt/vsblt-hdn
[7] msvc-14.0/dbg/x86_3/lnk-sttc/thrdp-wn32/thrd-mlt/vsblt-hdn
[8] msvc-14.0/rls/adrs-mdl-32/lnk-sttc/thrd-mlt/vsblt-hdn
[9] msvc-14.0/rls/x86_3/lnk-sttc/thrdp-wn32/thrd-mlt/vsblt-hdn
[10] msvc-14.0/dbg/adrs-mdl-64/thrd-mlt/vsblt-hdn
[11] msvc-14.0/dbg/x86_6/thrdp-wn32/thrd-mlt/vsblt-hdn
[12] msvc-14.0/rls/adrs-mdl-64/thrd-mlt/vsblt-hdn
[13] msvc-14.0/rls/x86_6/thrdp-wn32/thrd-mlt/vsblt-hdn
[14] msvc-14.0/dbg/adrs-mdl-64/lnk-sttc/thrd-mlt/vsblt-hdn
[15] msvc-14.0/dbg/x86_6/lnk-sttc/thrdp-wn32/thrd-mlt/vsblt-hdn
[16] msvc-14.0/rls/adrs-mdl-64/lnk-sttc/thrd-mlt/vsblt-hdn
[17] msvc-14.0/rls/x86_6/lnk-sttc/thrdp-wn32/thrd-mlt/vsblt-hdn

Reduced for a single configuration:

$ ./b2 --abbreviate-paths libs/locale/test//show_config toolset=msvc-14.3 cxxstd=14 address-model=32 link=shared variant=debug
Performing configuration checks

    - default address-model    : 64-bit (cached) [1]
    - default architecture     : x86 (cached) [1]
    - BOOST_COMP_GNUC >= 8.0.0 : no  (cached) [2]
    - BOOST_COMP_GNUC < 12     : yes (cached) [2]
    - BOOST_COMP_CLANG >= 5    : no  (cached) [2]
    - BOOST_COMP_CLANG >= 9    : no  (cached) [2]
    - BOOST_COMP_CLANG < 14    : yes (cached) [2]
    - symlinks supported       : no  (cached)
    - junctions supported      : yes (cached)
    - hardlinks supported      : yes (cached)
    - cxx11_char16_t           : yes (cached) [2]
    - cxx11_char32_t           : yes (cached) [2]
    - BOOST_COMP_GNUC >= 8.0.0 : no  (cached) [3]
    - BOOST_COMP_GNUC < 12     : yes (cached) [3]
    - BOOST_COMP_CLANG >= 5    : no  (cached) [3]
    - BOOST_COMP_CLANG >= 9    : no  (cached) [3]
    - BOOST_COMP_CLANG < 14    : yes (cached) [3]
    - cxx11_char16_t           : yes (cached) [3]
    - cxx11_char32_t           : yes (cached) [3]
    - cxx11_variadic_templates : yes (cached) [3]
    - cxx11_decltype           : yes (cached) [3]
    - GCC libquadmath and __float128 support : no  (cached) [3]
    - cxx11_hdr_ratio          : yes (cached) [3]
    - cxx11_template_aliases   : yes (cached) [3]
    - icu                      : no  (cached) [3]
    - iconv (libc)             : no  (cached) [3]
    - iconv (separate)         : no  (cached) [3]
    - cxx11_defaulted_moves    : yes (cached) [3]
    - cxx11_hdr_type_traits    : yes (cached) [3]
    - cxx11_override           : yes (cached) [3]

[1] msvc-14.3
[2] msvc-14.3/dbg/adrs-mdl-32/cxstd-14-iso/thrd-mlt/vsblt-hdn
[3] msvc-14.3/dbg/x86_3/cxstd-14-iso/thrdp-wn32/thrd-mlt/vsblt-hdn

It shows that some checks are done twice.

It is related to the test Jamfile doing more checks in an own project:
import config : requires ;
import predef : check : predef-check ;

project : requirements
    <library>/boost/locale//boost_locale
    [ predef-check "BOOST_COMP_GNUC >= 8.0.0" : : <cxxflags>-Wsuggest-override ]
    [ predef-check "BOOST_COMP_GNUC >= 8.0.0" and "BOOST_COMP_GNUC < 12" : : <warnings-as-errors>on ]
    [ predef-check "BOOST_COMP_CLANG >= 5" : : <cxxflags>-Wzero-as-null-pointer-constant ]
    [ predef-check "BOOST_COMP_CLANG >= 9" and "BOOST_COMP_CLANG < 14" : : <warnings-as-errors>on ]
    [ requires
      cxx11_char16_t
      cxx11_char32_t
    ]
  ;

Expected behavior summary

"adrs-mdl-32" and "x86_386"(?) should be the same so checks are only run once.

@Flamefire Flamefire added the bug Something isn't working label Dec 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant