Unusual "bug" in Boost Build with gcc usage requirements

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Unusual "bug" in Boost Build with gcc usage requirements

Boost - Build mailing list
Given a user-config.jam of:

import toolset ;
import feature ;
using gcc : 8.3 : "C:/Utilities/mingw-w64/i686-8.3.0/bin/g++" ;
using gcc : 8.1 :
"C:/Utilities/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/bin/g++" ;
# using gcc : 8.3 : "C:/Utilities/mingw-w64/i686-8.3.0/bin/g++" : :
<address-model>32 ;
# using gcc : 8.1 :
"C:/Utilities/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/bin/g++"
: : <address-model>32 ;
feature.subfeature toolset gcc : tsestd : c03 c11 c14 c17 : optional
composite propagated ;
feature.compose <toolset-gcc:tsestd>c03 : <cxxflags>-std=c++03 ;
feature.compose <toolset-gcc:tsestd>c11 : <cxxflags>-std=c++11 ;
feature.compose <toolset-gcc:tsestd>c14 : <cxxflags>-std=c++14 ;
feature.compose <toolset-gcc:tsestd>c17 : <cxxflags>-std=c++1z ;

running:

b2 toolset=gcc-8.3

in any library's test directory will run "successfully", ie. no Boost
Build error messages.

Now comment out the first two 'using gcc' lines and remove the comment
from the next two 'using gcc' lines, so that the usage requirement for
<address-model>32 is now a part of the toolset definitions. Running the
same b2 command from any library's test directory will produce:

E:/Programming/VersionControl/modular-boost/tools/build/src/build\feature.jam:787:
in expand-composites from module feature
error: explicitly-specified values of non-free feature
<toolset-gcc:version> conflict
error: existing values: 8.1 8.3
error: value from expanding  <toolset-gcc:version>8.3 : 8.3
E:/Programming/VersionControl/modular-boost/tools/build/src/build\feature.jam:872:
in feature.expand from module feature
E:/Programming/VersionControl/modular-boost/tools/build/src/build\targets.jam:1103:
in evaluate-requirements from module targets
E:/Programming/VersionControl/modular-boost/tools/build/src/build\targets.jam:1121:
in common-properties2 from module targets
E:/Programming/VersionControl/modular-boost/tools/build/src/build\targets.jam:1017:
in targets.common-properties from module targets
E:/Programming/VersionControl/modular-boost/tools/build/src/build\targets.jam:1313:
in [hidden email] from module object(alias-target-class)@6339
E:/Programming/VersionControl/modular-boost/tools/build/src/build\targets.jam:812:
in generate-really from module object(main-target)@6615
E:/Programming/VersionControl/modular-boost/tools/build/src/build\targets.jam:784:
in [hidden email] from module object(main-target)@6615
E:/Programming/VersionControl/modular-boost/tools/build/src/build\targets.jam:273:
in [hidden email] from module object(project-target)@6233
E:/Programming/VersionControl/modular-boost/tools/build/src\build-system.jam:797:
in load from module build-system
E:\Programming\VersionControl\modular-boost\tools\build\src/kernel\modules.jam:295:
in import from module modules
E:\Programming\VersionControl\modular-boost\tools\build\src/kernel/bootstrap.jam:139:
in boost-build from module
E:\Programming\VersionControl\modular-boost\boost-build.jam:17: in
module scope from module

This is with the latest Boost Build 'develop' branch. It seems as if the
gcc usage requirements does not work with feature composition. I do not
know if this is a gcc.jam problem or a more general Boost Build problem,
but any help solving this or finding a workaround will be appreciated. I
can of course add this as a Github issue for Boost Build, but there
seems to be so little Boost Build activity recently at Github that I
wanted to bring it up here first.

_______________________________________________
Unsubscribe & other changes: https://lists.boost.org/mailman/listinfo.cgi/boost-build
Reply | Threaded
Open this post in threaded view
|

Re: Unusual "bug" in Boost Build with gcc usage requirements

Boost - Build mailing list
On 7/31/2019 2:12 PM, Edward Diener via Boost-build wrote:
> Given a user-config.jam of:
> sjip...

Posted as Boost Build issue at
https://github.com/boostorg/build/issues/463 .

_______________________________________________
Unsubscribe & other changes: https://lists.boost.org/mailman/listinfo.cgi/boost-build
Reply | Threaded
Open this post in threaded view
|

Re: Unusual "bug" in Boost Build with gcc usage requirements

Boost - Build mailing list
Well I got:

config.jam: No such file or directory
H:/boost_1_69_0/boost-build/share/boost-build/src/kernel\modules.jam:314: in
modules.import
IMPORT error: rule "requires" unknown in module "config".
H:/boost_1_69_0/boost-build/share/boost-build/src/build\project.jam:1119: in
import
x3\Jamfile:11: in modules.load
H:/boost_1_69_0/boost-build/share/boost-build/src/build\project.jam:375: in
load-jamfile
H:/boost_1_69_0/boost-build/share/boost-build/src/build\project.jam:64: in
load
H:/boost_1_69_0/boost-build/share/boost-build/src/build\project.jam:145: in
project.find
H:/boost_1_69_0/boost-build/share/boost-build/src/build\targets.jam:453: in
find-really
H:/boost_1_69_0/boost-build/share/boost-build/src/build\targets.jam:475: in
find
H:/boost_1_69_0/boost-build/share/boost-build/src/build\targets.jam:306: in
targets-to-build
H:/boost_1_69_0/boost-build/share/boost-build/src/build\targets.jam:271: in
[hidden email]
H:/boost_1_69_0/boost-build/share/boost-build/src\build-system.jam:797: in
load
H:\boost_1_69_0\boost-build\share\boost-build\src\kernel\modules.jam:295: in
import
H:\boost_1_69_0\boost-build\share\boost-build\src\kernel\bootstrap.jam:139:
in boost-build
H:\boost_1_69_0\boost-build\share\boost-build\boost-build.jam:8: in module
scope

When I compare this with what you are reporting it doesn't look as the same
problem.

What judgement have you applied to assume what you are reporting is helpful
for my issue?

As a bit of personal feedback I think you can be a much more pleasant person
if you take the effort to understand what I'm reporting as an issue raher
than only taking things seriously when you have experienced someting
yourself on your computer.

_______________________________________________
Unsubscribe & other changes: https://lists.boost.org/mailman/listinfo.cgi/boost-build