2009/11/3 troy d. straszheim <troy@resophonic.com>
Since I see that you have a repo up on gitorious, I suspect you have a local clone of that.  To pull from the main repo you first add a remote

 git remote add cmake git://gitorious.org/boost/cmake.git

then fetch all changes from that repository

 git pull cmake 1.40.0


Thanks! It eventually works :)

There is still a small issue, though, with a mpi.so library it generates, strangely at the time of the building of boost_program_options-mt-shared-debug, as shown by the following debugging output:
----------------------------------------------------------
[ 77%] /usr/bin/cmake -E cmake_progress_report /home/build/dev/packages/BUILD/boost-1.40.0.cmake5/build/CMakeFiles
Building CXX object libs/program_options/src/CMakeFiles/boost_program_options-mt-shared-debug.dir/cmdline.cpp.o
/usr/lib64/ccache/c++  -fPIC -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic  -Wl,-z,noexecstack -Wl,-rpath -Wl,/usr/lib64/mpich2                 -shared -Wl,-soname,mpi.so -o ../../../lib/mpi.so CMakeFiles/mpi-mt-shared.dir/python/collectives.cpp.o CMakeFiles/mpi-mt-shared.dir/python/py_communicator.cpp.o CMakeFiles/mpi-mt-shared.dir/python/datatypes.cpp.o CMakeFiles/mpi-mt-shared.dir/python/documentation.cpp.o CMakeFiles/mpi-mt-shared.dir/python/py_environment.cpp.o CMakeFiles/mpi-mt-shared.dir/python/py_nonblocking.cpp.o CMakeFiles/mpi-mt-shared.dir/python/py_exception.cpp.o CMakeFiles/mpi-mt-shared.dir/python/module.cpp.o CMakeFiles/mpi-mt-shared.dir/python/py_request.cpp.o CMakeFiles/mpi-mt-shared.dir/python/skeleton_and_content.cpp.o CMakeFiles/mpi-mt-shared.dir/python/status.cpp.o CMakeFiles/mpi-mt-shared.dir/python/py_timer.cpp.o /usr/lib64/python2.6/config/libpython2.6.so -lpthread -lrt -lpthread -lrt ../../../lib/libboost_python-mt.so.1.40.0 /usr/lib64/python2.6/config/libpython2.6.so -lpthread -lrt -lpthread -lrt -ldl -lutil
----------------------------------------------------------

Note that the Boost.MPI library is itself built a little bit before, with the right soname:
----------------------------------------------------------
[ 73%] Linking CXX shared library ../../../lib/libboost_mpi-mt-d.so
cd /home/build/dev/packages/BUILD/boost-1.40.0.cmake5/build/libs/mpi/src && /usr/bin/cmake -E cmake_link_script CMakeFiles/boost_mpi-mt-shared-debug.dir/link.txt --verbose=1
Building CXX object libs/iostreams/src/CMakeFiles/boost_iostreams-mt-shared.dir/file_descriptor.cpp.o
cd /home/build/dev/packages/BUILD/boost-1.40.0.cmake5/build/libs/iostreams/src && /usr/lib64/ccache/c++   -Dboost_iostreams_mt_shared_EXPORTS -DBOOST_ALL_NO_LIB=1 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic  -fPIC -I/home/build/dev/packages/BUILD/boost-1.40.0.cmake5     -O3 -DNDEBUG -DBOOST_IOSTREAMS_DYN_LINK=1   -pthread -D_REENTRANT -o CMakeFiles/boost_iostreams-mt-shared.dir/file_descriptor.cpp.o -c /home/build/dev/packages/BUILD/boost-1.40.0.cmake5/libs/iostreams/src/file_descriptor.cpp
/usr/lib64/ccache/c++  -fPIC -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic  -Wl,-z,noexecstack -Wl,-rpath -Wl,/usr/lib64/mpich2       -shared -Wl,-soname,libboost_mpi-mt-d.so.1.40.0 -o ../../../lib/libboost_mpi-mt-d.so.1.40.0 CMakeFiles/boost_mpi-mt-shared-debug.dir/broadcast.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/communicator.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/computation_tree.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/content_oarchive.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/environment.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/exception.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/graph_communicator.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/group.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/intercommunicator.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/mpi_datatype_cache.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/mpi_datatype_oarchive.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/packed_iarchive.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/packed_oarchive.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/packed_skeleton_iarchive.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/packed_skeleton_oarchive.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/point_to_point.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/request.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/text_skeleton_oarchive.cpp.o CMakeFiles/boost_mpi-mt-shared-debug.dir/timer.cpp.o /usr/lib64/mpich2/libmpichcxx.so /usr/lib64/mpich2/libmpich.so /usr/lib64/mpich2/libopa.a -lpthread -lrt -lpthread -lrt ../../../lib/libboost_serialization-mt-d.so.1.40.0 -lpthread -lrt
/usr/bin/cmake -E cmake_progress_report /home/build/dev/packages/BUILD/boost-1.40.0.cmake5/build/CMakeFiles
(and the same for the release variant)
----------------------------------------------------------

So, for now, I simply remove that mpi.so library. There are two options:
1. It is useful (and it should therefore not be removed). The name and soname should then be set appropriately (not to mpi.so).
2. It is useless. The corresponding CMake option should then be turned off.

From what I can see by looking at the mpi.so binary (with the 'nm -a -C' command), all the symbols invoked within mpi.so are defined within the libboost_mpi-mt.so library. So, I'd say that that newly appeard mpi.so is useless. Did I miss anything?

Denis