summaryrefslogtreecommitdiff
path: root/boost-1.78-build-Don-t-skip-install-targets-if-there-s-build-no-in-ureqs.patch
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-04-24 08:46:38 +0000
committerCoprDistGit <infra@openeuler.org>2023-04-24 08:46:38 +0000
commitb4f1d771777090b4e09abd34c701c0cbb47cb0c9 (patch)
tree7d2e99b4b8a7f5ee49fcc0318a572d93d30d74ac /boost-1.78-build-Don-t-skip-install-targets-if-there-s-build-no-in-ureqs.patch
parent13a5c32b80e77cfc952fa466af74509e593873d7 (diff)
automatic import of boost
Diffstat (limited to 'boost-1.78-build-Don-t-skip-install-targets-if-there-s-build-no-in-ureqs.patch')
-rw-r--r--boost-1.78-build-Don-t-skip-install-targets-if-there-s-build-no-in-ureqs.patch71
1 files changed, 71 insertions, 0 deletions
diff --git a/boost-1.78-build-Don-t-skip-install-targets-if-there-s-build-no-in-ureqs.patch b/boost-1.78-build-Don-t-skip-install-targets-if-there-s-build-no-in-ureqs.patch
new file mode 100644
index 0000000..ca4e6ba
--- /dev/null
+++ b/boost-1.78-build-Don-t-skip-install-targets-if-there-s-build-no-in-ureqs.patch
@@ -0,0 +1,71 @@
+From 62e7321669f66a90e2a90c8f31af34f59ebc5d7a Mon Sep 17 00:00:00 2001
+From: Dmitry Arkhipov <grisumbras@gmail.com>
+Date: Thu, 9 Dec 2021 08:11:57 +0300
+Subject: [PATCH] Don't skip install targets if there's <build>no in ureqs
+
+---
+ tools/build/src/tools/stage.jam | 4 ++++
+ tools/build/test/install_build_no.py | 26 ++++++++++++++++++++++++++
+ tools/build/test/test_all.py | 1 +
+ 3 files changed, 31 insertions(+)
+ create mode 100755 test/install_build_no.py
+
+diff --git a/tools/build/src/tools/stage.jam b/tools/build/src/tools/stage.jam
+index c5f02e3ba4..325129dc81 100644
+--- a/tools/build/src/tools/stage.jam
++++ b/tools/build/src/tools/stage.jam
+@@ -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 * )
+diff --git a/tools/build/test/install_build_no.py b/tools/build/test/install_build_no.py
+new file mode 100755
+index 0000000000..0ccf3c5cc6
+--- /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()
+diff --git a/tools/build/test/test_all.py b/tools/build/test/test_all.py
+index b7ef5ad701..9ed729d017 100644
+--- a/tools/build/test/test_all.py
++++ b/tools/build/test/test_all.py
+@@ -250,6 +250,7 @@ def reorder_tests(tests, first_test):
+ "inherit_toolset",
+ "inherited_dependency",
+ "inline",
++ "install_build_no",
+ "libjpeg",
+ "liblzma",
+ "libpng",