Skip to content

Commit

Permalink
Don't skip install targets if there's <build>no in ureqs (#113)
Browse files Browse the repository at this point in the history
  • Loading branch information
grisumbras authored Dec 11, 2021
1 parent 371b47a commit 78fd284
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 0 deletions.
4 changes: 4 additions & 0 deletions src/tools/stage.jam
Original file line number Diff line number Diff line change
Expand Up @@ -478,6 +478,10 @@ class install-target-class : basic-target
return [ sequence.unique $(result2) ] ;
}

rule skip-from-usage-requirements ( )
{
}

# Returns true iff 'type' is subtype of some element of 'types-to-include'.
#
local rule include-type ( type : types-to-include * )
Expand Down
26 changes: 26 additions & 0 deletions test/install_build_no.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
#!/usr/bin/python

# Copyright 2021 Dmitry Arkhipov ([email protected])
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE.txt or https://www.bfgroup.xyz/b2/LICENSE.txt)

# Check that <build>no in usage-requirements of dependencies does not affect
# install rule, i.e. a skipped installed target does not affect insallation of
# other targets.

import BoostBuild

t = BoostBuild.Tester()

t.write("a.cpp", "int main() {}\n")

t.write("jamroot.jam", """
make x : : maker : <build>no ;
exe a : a.cpp ;
install install : x a ;
""")

t.run_build_system()
t.expect_addition("install/a.exe")

t.cleanup()
1 change: 1 addition & 0 deletions test/test_all.py
Original file line number Diff line number Diff line change
Expand Up @@ -250,6 +250,7 @@ def reorder_tests(tests, first_test):
"inherit_toolset",
"inherited_dependency",
"inline",
"install_build_no",
"libjpeg",
"liblzma",
"libpng",
Expand Down

0 comments on commit 78fd284

Please sign in to comment.