Mathias Gaunard wrote:
Hi,
I'd like to point out that bcp namespace aliasing has been broken for quite a while, which impacts package providers of Boost which choose to package it with a versioned namespace. We should try to fix to enable more people to upgrade.
The bug has been reported March 2018 on trac https://svn.boost.org/trac10/ticket/13460 Then again by me this week on github https://github.com/boostorg/bcp/issues/4
Your issue is a bit on the laconic side. You don't explain what the problem is, you don't explain how the problem can be reproduced, what is the scenario that breaks, how we can test it to be sure it's fixed, etc. I can guess that bcp --namespace=foo edits the line import tools/boost_install/boost-install ; into import tools/foo_install/boost-install ; and that it turns name = boost_$(name) ; autolink = <link>shared:<define>$(name:U)_DYN_LINK=1 ; into name = foo_$(name) ; autolink = <link>shared:<define>$(name:U)_DYN_LINK=1 ; which results in FOO_DYN_LINK=1 being defined. We can fix the latter by changing it to autolink = <link>shared:<define>BOOST_$(name:U)_DYN_LINK=1 ; name = boost_$(name) ; and we could in principle change the former to import tools/boost\_install/boost-install ; in order to hide it from bcp, although that's not very pretty. But as a first step I think that we need to add a Travis test to tools/bcp that exercises the scenario we want to fix. For which we probably need to know what it is.