diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:45:59 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:45:59 +0000 |
commit | 19fcec84d8d7d21e796c7624e521b60d28ee21ed (patch) | |
tree | 42d26aa27d1e3f7c0b8bd3fd14e7d7082f5008dc /src/boost/tools/build/test/param.py | |
parent | Initial commit. (diff) | |
download | ceph-upstream/16.2.11+ds.tar.xz ceph-upstream/16.2.11+ds.zip |
Adding upstream version 16.2.11+ds.upstream/16.2.11+dsupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/boost/tools/build/test/param.py')
-rw-r--r-- | src/boost/tools/build/test/param.py | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/src/boost/tools/build/test/param.py b/src/boost/tools/build/test/param.py new file mode 100644 index 000000000..14b3d7d94 --- /dev/null +++ b/src/boost/tools/build/test/param.py @@ -0,0 +1,61 @@ +#!/usr/bin/python + +# Copyright 2018 Steven Watanabe +# Distributed under the Boost Software License, Version 1.0. +# (See accompanying file LICENSE_1_0.txt or copy at +# http://www.boost.org/LICENSE_1_0.txt) + +import BoostBuild + +t = BoostBuild.Tester(pass_toolset=0) + +t.write("Jamroot.jam", """\ +import param ; +import assert ; +import errors : try catch ; +rule test1 ( ) +{ + param.handle-named-params ; +} +test1 ; +rule test2 ( sources * ) +{ + param.handle-named-params sources ; + return $(sources) ; +} +assert.result : test2 ; +assert.result test1.cpp test2.cpp : test2 test1.cpp test2.cpp ; +assert.result test1.cpp test2.cpp : test2 sources test1.cpp test2.cpp ; +rule test3 ( sources * : requirements * ) +{ + param.handle-named-params sources requirements ; + return $(sources) -- $(requirements) ; +} +assert.result -- : test3 ; +assert.result -- <link>shared : test3 : <link>shared ; +assert.result test1.cpp -- <link>shared : test3 test1.cpp : <link>shared ; +assert.result test1.cpp -- <link>shared + : test3 test1.cpp : requirements <link>shared ; +assert.result test1.cpp -- <link>shared + : test3 sources test1.cpp : requirements <link>shared ; +assert.result test1.cpp -- <link>shared + : test3 requirements <link>shared : sources test1.cpp ; +assert.result -- : test3 sources ; +assert.result -- : test3 requirements ; +assert.result -- <link>shared : test3 requirements <link>shared ; +try ; +{ + test3 sources test1.cpp : sources test2.cpp ; +} +catch Parameter 'sources' passed more than once. ; +try ; +{ + test3 sources test1.cpp : <link>shared ; +} +catch "Positional arguments must appear first." ; +EXIT : 0 ; +""") + +t.run_build_system() + +t.cleanup() |