You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

52 lines
1.4 KiB

--- a/tools/build/src/tools/stage.jam
+++ b/tools/build/src/tools/stage.jam
@@ -478,6 +478,10 @@ class install-target-class : basic-targe
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 * )
--- /dev/null
+++ b/tools/build/test/install_build_no.py
@@ -0,0 +1,26 @@
+#!/usr/bin/python
+
+# Copyright 2021 Dmitry Arkhipov (grisumbras@gmail.com)
+# 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()
--- a/tools/build/test/test_all.py
+++ b/tools/build/test/test_all.py
@@ -250,6 +250,7 @@ tests = ["abs_workdir",
"inherit_toolset",
"inherited_dependency",
"inline",
+ "install_build_no",
"libjpeg",
"liblzma",
"libpng",