Boost logo

Boost-Build :

Subject: Re: [Boost-build] BUMPITTY BUMP: [git] genrating forward headers
From: Bjørn Roald (bjorn_at_[hidden])
Date: 2013-08-24 17:40:41


On 08/23/2013 07:27 PM, Bjørn Roald wrote:

>> I'm happy to help you with the b2 core language, but I've been out of
>> the loop on b2 for so long that even there I probably shouldn't be
>> considered an authority. Volodya is really the guy who knows, and since
>> he has offered to help I suggest you ask questions generously ;-)
>
> Thanks a lot, both you and Volodya has offered to help, so I am hopeful
> we are in good shape. I will look at the TODOs today and start some
> testing in both layouts, maybe posting a new patch tomorrow and
> questions as needed.

I have applied my patch + changes to SVN trunk and git repo.

My tests running in SVN trunk:
./b2
...
...found 11726 targets...
ok

cd status
../b2 -j 4
...
...failed updating 81 targets...
...skipped 142 targets...
...updated 47720 targets...

git layout are now giving similar results,
./b2
...
...found 16365 targets...
ok

cd status
../b2 -j 4
...
...failed updating 83 targets...
...skipped 154 targets...
...updated 47445 targets...

The git repositories and svn trunk checkouts are not from same SVN
commit, They are just what I happened to have on my system and that
probably account for some differences. I guess the header targets show
up as the almost 5000 more targets in library build in git, I was
surprised not to see the same increase in the target count during the
test build in the status folder. This gave me a suspicion of a problem,
and some tests that header targets does not get built if I don't build
in the BOOST_ROOT folder first ;-(. I thought we were past that problem
after Stevens last commit. I will have to poke at this a bit more to
see if I can figure out what is going on.

As you can see I get some failed and skipped targets running tests in
the status folder. I am not sure exactly how to interpret the numbers
and whether they are something I should expect that is unrelated to the
b2 changes. Maybe you can give me some guidelines here: My config says:

Performing configuration checks

     - symlinks supported : yes
     - hardlinks supported : yes

Building the Boost C++ Libraries.

     - 32-bit : no
     - 64-bit : yes
     - arm : no
     - mips1 : no
     - power : no
     - sparc : no
     - x86 : yes
     - has_icu builds : yes
warning: Graph library does not contain MPI-based parallel components.
note: to enable them, add "using mpi ;" to your user-config.jam
     - zlib : yes
     - iconv (libc) : yes
     - icu : yes
     - compiler-supports-ssse3 : yes
     - compiler-supports-avx2 : no
     - gcc visibility : yes
     - long double support : no
warning: skipping optional Message Passing Interface (MPI) library.
note: to enable MPI support, add "using mpi ;" to user-config.jam.
note: to suppress this message, pass "--without-mpi" to bjam.
note: otherwise, you can safely ignore this message.
     - zlib : yes

searching for ...failed in the build log from status folder test build:
84 matches for "\.\.\.failed" in buffer:
modular-boost-status-test-201308240800.log
    1475:...failed gcc.compile.c++
../bin.v2/libs/test/test/test_assertion_construction.test/gcc-4.6/debug/test_assertion_construction.o...
    9502:...failed gcc.compile.c++
../bin.v2/libs/tr1/test/test_ref_wrapper_tricky.test/gcc-4.6/debug/test_ref_wrapper_tricky.o...
    9549:...failed gcc.compile.c++
../bin.v2/libs/tr1/test/std_test_ref_wrapper_tricky.test/gcc-4.6/debug/std_test_ref_wrapper_tricky.o...
    9907:...failed gcc.compile.c++
../bin.v2/libs/tr1/test/test_cmath_tricky.test/gcc-4.6/debug/test_cmath_tricky.o...
   10203:...failed gcc.compile.c++
../bin.v2/libs/tr1/test/std_test_cmath_tricky.test/gcc-4.6/debug/std_test_cmath_tricky.o...
   10514:...failed gcc.compile.c++
../bin.v2/libs/tr1/test/test_mem_fn_tricky.test/gcc-4.6/debug/test_mem_fn_tricky.o...
   10604:...failed gcc.compile.c++
../bin.v2/libs/tr1/test/std_test_mem_fn_tricky.test/gcc-4.6/debug/std_test_mem_fn_tricky.o...
   11155:...failed testing.capture-output
../bin.v2/libs/tr1/test/run_random.test/gcc-4.6/debug/run_random.run...
   11255:...failed testing.capture-output
../bin.v2/libs/tr1/test/std_run_random.test/gcc-4.6/debug/std_run_random.run...
   16867:...failed testing.capture-output
../bin.v2/libs/wave/test/build/testwave.test/gcc-4.6/debug/link-static/threading-multi/testwave.run...
   17547:...failed testing.capture-output
../bin.v2/libs/accumulators/test/p_square_cumul_dist.test/gcc-4.6/debug/link-static/p_square_cumul_dist.run...
   17783:...failed testing.capture-output
../bin.v2/libs/accumulators/test/weighted_p_square_cumul_dist.test/gcc-4.6/debug/link-static/weighted_p_square_cumul_dist.run...
   21612:...failed testing.capture-output
../bin.v2/libs/chrono/test/test_7868_d.test/gcc-4.6/debug/test_7868_d.run...
   21686:...failed testing.capture-output
../bin.v2/libs/chrono/test/test_7868_h.test/gcc-4.6/debug/test_7868_h.run...
   22142:...failed gcc.compile.c++
../bin.v2/libs/concept_check/stl_concept_covering.test/gcc-4.6/debug/stl_concept_covering.o...
   23512:...failed gcc.compile.c++
../bin.v2/libs/detail/test/container_fwd/correctly_disable.test/gcc-4.6/debug/correctly_disable.o...
   25106:...failed gcc.compile.c++
../bin.v2/libs/function_types/test/nonmember_ccs.test/gcc-4.6/debug/nonmember_ccs.o...
   25133:...failed gcc.compile.c++
../bin.v2/libs/function_types/test/member_ccs.test/gcc-4.6/debug/member_ccs.o...
   25190:...failed gcc.compile.c++
../bin.v2/libs/function_types/test/nonmember_ccs_exact.test/gcc-4.6/debug/nonmember_ccs_exact.o...
   25264:...failed gcc.compile.c++
../bin.v2/libs/function_types/test/member_ccs_exact.test/gcc-4.6/debug/member_ccs_exact.o...
   28520:...failed gcc.compile.c++
../bin.v2/libs/geometry/extensions/test/algorithms/dissolve.test/gcc-4.6/debug/dissolve.o...
   28536:...failed gcc.compile.c++
../bin.v2/libs/geometry/extensions/test/algorithms/offset.test/gcc-4.6/debug/offset.o...
   29891:...failed gcc.compile.c++
../bin.v2/libs/geometry/extensions/test/gis/latlong/distance_mixed.test/gcc-4.6/debug/distance_mixed.o...
   29998:...failed gcc.compile.c++
../bin.v2/libs/geometry/extensions/test/nsphere/multi_within.test/gcc-4.6/debug/multi_within.o...
   32624:...failed gcc.compile.c++
../bin.v2/libs/interprocess/test/multi_index_test.test/gcc-4.6/debug/threading-multi/multi_index_test.o...
   37386:...failed gcc.compile.c++
../bin.v2/libs/math/test/test_ldouble_simple.test/gcc-4.6/debug/link-static/test_ldouble_simple.o...
   43097:...failed gcc.compile.c++
../bin.v2/libs/move/test/move.test/gcc-4.6/debug/link-static/move.o...
   44521:...failed gcc.compile.c++
../bin.v2/libs/numeric/interval/test/test_float.test/gcc-4.6/debug/libs/numeric/interval/test/test_float.o...
   49138:...failed testing.capture-output
../bin.v2/libs/numeric/ublas/test/test_banded_storage_layout.test/gcc-4.6/debug/test_banded_storage_layout.run...
   50123:...failed gcc.compile.c++
../bin.v2/libs/parameter/test/literate/predicate-requirements0.test/gcc-4.6/debug/predicate-requirements0.o...
   51479:...failed gcc.link
../bin.v2/libs/pool/test/test_simple_seg_storage.test/gcc-4.6/debug/test_simple_seg_storage...
   51496:...failed gcc.link
../bin.v2/libs/pool/test/test_pool_alloc.test/gcc-4.6/debug/test_pool_alloc...
   51511:...failed gcc.link
../bin.v2/libs/pool/test/pool_msvc_compiler_bug_test.test/gcc-4.6/debug/pool_msvc_compiler_bug_test...
   51528:...failed gcc.link
../bin.v2/libs/pool/test/test_msvc_mem_leak_detect.test/gcc-4.6/debug/test_msvc_mem_leak_detect...
   51543:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_3349.test/gcc-4.6/debug/test_bug_3349...
   51561:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_4960.test/gcc-4.6/debug/test_bug_4960...
   51575:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_1252.test/gcc-4.6/debug/test_bug_1252...
   51591:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_2696.test/gcc-4.6/debug/test_bug_2696...
   51608:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_5526.test/gcc-4.6/debug/test_bug_5526...
   51645:...failed gcc.compile.c++
../bin.v2/libs/pool/test/test_threading.test/gcc-4.6/debug/threading-multi/test_threading.o...
   51668:...failed gcc.link
../bin.v2/libs/pool/test/time_pool_alloc.test/gcc-4.6/debug/time_pool_alloc...
   51683:...failed gcc.link
../bin.v2/libs/pool/test/pool_msvc_compiler_bug_test_valgrind.test/gcc-4.6/debug/pool_msvc_compiler_bug_test_valgrind...
   51698:...failed gcc.link
../bin.v2/libs/pool/test/test_simple_seg_storage_valgrind.test/gcc-4.6/debug/test_simple_seg_storage_valgrind...
   51715:...failed gcc.link
../bin.v2/libs/pool/test/test_pool_alloc_valgrind.test/gcc-4.6/debug/test_pool_alloc_valgrind...
   51730:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_3349_valgrind.test/gcc-4.6/debug/test_bug_3349_valgrind...
   51748:...failed gcc.link
../bin.v2/libs/pool/test/test_msvc_mem_leak_detect_valgrind.test/gcc-4.6/debug/test_msvc_mem_leak_detect_valgrind...
   51765:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_4960_valgrind.test/gcc-4.6/debug/test_bug_4960_valgrind...
   51780:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_1252_valgrind.test/gcc-4.6/debug/test_bug_1252_valgrind...
   51796:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_2696_valgrind.test/gcc-4.6/debug/test_bug_2696_valgrind...
   51813:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_5526_valgrind.test/gcc-4.6/debug/test_bug_5526_valgrind...
   51828:...failed gcc.link
../bin.v2/libs/pool/test/test_simple_seg_storage_valgrind_2.test/gcc-4.6/debug/test_simple_seg_storage_valgrind_2...
   51865:...failed gcc.compile.c++
../bin.v2/libs/pool/test/test_threading_valgrind.test/gcc-4.6/debug/threading-multi/test_threading.o...
   51882:...failed gcc.link
../bin.v2/libs/pool/test/pool_msvc_compiler_bug_test_valgrind_2.test/gcc-4.6/debug/pool_msvc_compiler_bug_test_valgrind_2...
   51898:...failed gcc.link
../bin.v2/libs/pool/test/test_pool_alloc_valgrind_2.test/gcc-4.6/debug/test_pool_alloc_valgrind_2...
   51916:...failed gcc.link
../bin.v2/libs/pool/test/test_msvc_mem_leak_detect_valgrind_2.test/gcc-4.6/debug/test_msvc_mem_leak_detect_valgrind_2...
   51930:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_3349_valgrind_2.test/gcc-4.6/debug/test_bug_3349_valgrind_2...
   51947:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_4960_valgrind_2.test/gcc-4.6/debug/test_bug_4960_valgrind_2...
   51967:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_1252_valgrind_2.test/gcc-4.6/debug/test_bug_1252_valgrind_2...
   51978:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_2696_valgrind_2.test/gcc-4.6/debug/test_bug_2696_valgrind_2...
   51995:...failed gcc.link
../bin.v2/libs/pool/test/test_bug_5526_valgrind_2.test/gcc-4.6/debug/test_bug_5526_valgrind_2...
   52010:...failed gcc.link
../bin.v2/libs/pool/test/test_valgrind_fail_1.test/gcc-4.6/debug/test_valgrind_fail_1...
   52031:...failed gcc.link
../bin.v2/libs/pool/test/test_valgrind_fail_2.test/gcc-4.6/debug/test_valgrind_fail_2...
   52080:...failed gcc.compile.c++
../bin.v2/libs/pool/test/test_threading_valgrind_2.test/gcc-4.6/debug/threading-multi/test_threading.o...
   53250:...failed gcc.compile.c++
../bin.v2/libs/ptr_container/test/tut1.test/gcc-4.6/debug/tut1.o...
   53374:...failed gcc.compile.c++
../bin.v2/libs/ptr_container/test/const_element_containers.test/gcc-4.6/debug/const_element_containers.o...
   53417:...failed testing.capture-output
../bin.v2/libs/ptr_container/test/serialization.test/gcc-4.6/debug/serialization.run...
   58464:...failed gcc.compile.c++
../bin.v2/libs/regex/test/regex_regress_noeh.test/gcc-4.6/debug/exception-handling-off/link-static/threading-multi/regress/main.o...
   58484:...failed gcc.compile.c++
../bin.v2/libs/regex/test/regex_regress_noeh.test/gcc-4.6/debug/exception-handling-off/link-static/threading-multi/regress/test_deprecated.o...
   58494:...failed gcc.compile.c++
../bin.v2/libs/regex/test/regex_regress_noeh.test/gcc-4.6/debug/exception-handling-off/link-static/threading-multi/regress/test_locale.o...
   58540:...failed gcc.compile.c++
../bin.v2/libs/regex/test/regex_regress_noeh.test/gcc-4.6/debug/exception-handling-off/link-static/threading-multi/regress/test_icu.o...
   58830:...failed gcc.compile.c++
../bin.v2/libs/scope_exit/test/world_checkpoint_all.test/gcc-4.6/debug/world_checkpoint_all.o...
   58841:...failed gcc.compile.c++
../bin.v2/libs/scope_exit/test/world_checkpoint_all_seq.test/gcc-4.6/debug/world_checkpoint_all_seq.o...
   58853:...failed gcc.compile.c++
../bin.v2/libs/scope_exit/test/world_checkpoint_all_seq_nova.test/gcc-4.6/debug/world_checkpoint_all_seq_nova.o...
   59292:...failed testing.capture-output
../bin.v2/libs/serialization/test/test_array_xml_warchive.test/gcc-4.6/debug/test_array_xml_warchive.run...
   64917:...failed gcc.link
../bin.v2/libs/spirit/test/qi_tst-p3.test/gcc-4.6/debug/phoenix_v3-on/qi_tst-p3...
   64931:...failed gcc.compile.c++
../bin.v2/libs/spirit/test/qi_terminal_ex-p3.test/gcc-4.6/debug/phoenix_v3-on/qi/terminal_ex.o...
   65148:...failed testing.capture-output
../bin.v2/libs/spirit/test/qi_regression_stream_eof-p3.test/gcc-4.6/debug/phoenix_v3-on/qi_regression_stream_eof-p3.run...
   65253:...failed testing.capture-output
../bin.v2/libs/spirit/test/karma_alternative1-p3.test/gcc-4.6/debug/phoenix_v3-on/karma_alternative1-p3.run...
   66016:...failed testing.capture-output
../bin.v2/libs/spirit/test/lex_lexertl2-p3.test/gcc-4.6/debug/phoenix_v3-on/lex_lexertl2-p3.run...
   66351:...failed gcc.link.dll
../bin.v2/libs/statechart/test/gcc-4.6/debug/libLibTestNormalLib.so.1.55.0...
   66362:...failed gcc.link.dll
../bin.v2/libs/statechart/test/gcc-4.6/debug/libLibTestNativeLib.so.1.55.0...
   66436:...failed gcc.compile.c++
../bin.v2/libs/spirit/repository/test/karma_repo_subrule.test/gcc-4.6/debug/karma/subrule.o...
   67261:...failed testing.capture-output
../bin.v2/libs/spirit/test/qi_match_manip1-p3.test/gcc-4.6/debug/phoenix_v3-on/qi_match_manip1-p3.run...
   67262:...failed updating 83 targets...

Should I have no failures? In that case I need to be checking
individual errors.

I will download a clean SVN trunk and run tests there as a reference.

I did the remaining TODOs from may last post, except the header install
glob.

I had to change the test for the Git layout in Jamroot, and are now using:

BOOST_MODULARLAYOUT = [ path.glob . : $(BOOST_ROOT)/libs/*/include/boost] ;

To ensure $(BOOST_MODULARLAYOUT] evaluate to true if there is _any_
libs/*/include/boost folder. I really don't know if this is the right
way, but it seems to work.

If there is interest from other people to run tests, I can post a new
patch. I needed to remove all errors testing in the status folder
before it make any sense to commit, then I will start looking at that next.

I don't know what exactly is the bar for getting the patches committed,
I guess the main thing is to get something that works well enough in
MODULARIZED_LAYOUT to build and test but does break anything in SVN
layout. Given that, what I have may be close.

--
Bjørn

Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk