Boost logo

Boost-Build :

Subject: [Boost-build] address-model as build requirement broken?
From: John Maddock (jz.maddock_at_[hidden])
Date: 2015-08-08 08:25:13


There seems to be a recent(?) change to boost.build that means adding
<address-model> as a build requirement is now broken.

I have an existing Jamfile that basically builds the same program with a
bunch of different compiler options and compares the results (see
https://github.com/boostorg/math/blob/accuracy/reporting/performance/Jamfile.v2),
this used to work fine, but now I get:

M:/data/boost/boost/tools/build/src/build\feature.jam:782: in
expand-composites from module feature
error: explicitly-specified values of non-free feature <address-model>
conflict
error: existing values: 64 32
error: value from expanding <deduced-address-model>32 : 32
M:/data/boost/boost/tools/build/src/build\feature.jam:867: in
feature.expand from module feature
M:/data/boost/boost/tools/build/src/build\targets.jam:1070: in
evaluate-requirements from module targets
M:/data/boost/boost/tools/build/src/build\targets.jam:1112: in
common-properties2 from module targets
M:/data/boost/boost/tools/build/src/build\targets.jam:977: in
targets.common-properties from module targets
M:/data/boost/boost/tools/build/src/build\targets.jam:1303: in
class_at_basic-target.generate from module object(typed-target)@2026
M:/data/boost/boost/tools/build/src/build\targets.jam:774: in
generate-really from module object(main-target)@2582
M:/data/boost/boost/tools/build/src/build\targets.jam:746: in
class_at_main-target.generate from module object(main-target)@2582
M:/data/boost/boost/tools/build/src/build\targets.jam:895: in
targets.generate-from-reference from module targets
M:/data/boost/boost/tools/build/src/build\targets.jam:1266: in
generate-dependencies from module object(alias-target-class)@2558
M:/data/boost/boost/tools/build/src/build\targets.jam:1323: in
class_at_basic-target.generate from module object(alias-target-class)@2558
M:/data/boost/boost/tools/build/src/build\targets.jam:774: in
generate-really from module object(main-target)@2647
M:/data/boost/boost/tools/build/src/build\targets.jam:746: in
class_at_main-target.generate from module object(main-target)@2647
M:/data/boost/boost/tools/build/src/build\targets.jam:272: in
class_at_project-target.generate from module object(project-target)@1979
M:/data/boost/boost/tools/build/src\build-system.jam:707: in load from
module build-system
M:\data\boost\boost\tools\build\src/kernel\modules.jam:295: in import
from module modules
M:\data\boost\boost\tools\build\src/kernel/bootstrap.jam:139: in
boost-build from module
M:\data\boost\boost\boost-build.jam:17: in module scope from module

To reproduce just add:

<toolset>msvc:<address-model>64

as a build requirement to any otherwise trivial project and try and
build with msvc.

Does this ring a bell with anyone?

Many thanks, John.


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