diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-21 11:54:28 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-21 11:54:28 +0000 |
commit | e6918187568dbd01842d8d1d2c808ce16a894239 (patch) | |
tree | 64f88b554b444a49f656b6c656111a145cbbaa28 /src/boost/tools/build/example/named-install-dirs/build.jam | |
parent | Initial commit. (diff) | |
download | ceph-b26c4052f3542036551aa9dec9caa4226e456195.tar.xz ceph-b26c4052f3542036551aa9dec9caa4226e456195.zip |
Adding upstream version 18.2.2.upstream/18.2.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/boost/tools/build/example/named-install-dirs/build.jam')
-rw-r--r-- | src/boost/tools/build/example/named-install-dirs/build.jam | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/boost/tools/build/example/named-install-dirs/build.jam b/src/boost/tools/build/example/named-install-dirs/build.jam new file mode 100644 index 000000000..00fe90128 --- /dev/null +++ b/src/boost/tools/build/example/named-install-dirs/build.jam @@ -0,0 +1,54 @@ +# showcasing several default install directories +install a1 : a : <location>(bindir) ; +install a2 : a : <location>(libdir)/a2 ; +install (sbindir)/a3 : a ; + +# using a custom prefix; the file will be installed into foo/bar/bin/a4 +install (bindir)/a4 : a : <install-prefix>foo/bar ; + +# this one deduces installed package name to be the basename of the project +# directory, so e.g. on Linux the file will be installed installed into +# /usr/local/share/doc/<name of project's directory>/a5 +install (docdir)/a5 : a : <install-prefix>bar/baz ; + +# use a custom named directory; its default on Linux is /usr/local/share/xyz/ +import stage ; +stage.add-install-dir foodir : xyz : datadir ; +install (foodir)/a6 : a ; + + +# another custom named directory, this one appends package name like docdir; +# so, e.g. on Linux it defaults to /usr/local/lib/named-install-dirs +stage.add-install-dir privatedir : "" : libdir : package-suffix ; +install (privatedir)/a7 : a ; + +# using stage.get-package-name +make a8 : a : @write-dirs : <staging-prefix>p/q/r <install-bindir>/bin ; + +rule write-dirs ( target : sources * : properties * ) +{ + import property-set ; + import print ; + local ps = [ property-set.create $(properties) ] ; + local pn = [ stage.get-package-name $(ps) ] ; + print.output $(target) ; + print.text + [ stage.get-dir docdir : $(ps) : $(pn) ] + [ stage.get-dir docdir : $(ps) : $(pn) : staged ] + [ stage.get-dir docdir : $(ps) : $(pn) : relative ] + [ stage.get-dir docdir : $(ps) : $(pn) : relative staged ] + [ stage.get-dir bindir : $(ps) : $(pn) : relative ] + : overwrite + ; +} + +# using staging prefix; on Linux installs into q/r/s/share/a9 +install (datarootdir)/a9 : a : <staging-prefix>q/r/s ; + + +build-project x ; + +# Copyright 2020 Dmitry Arkhipov +# Distributed under the Boost Software License, Version 1.0. +# (See accompanying file LICENSE.txt or copy at +# https://www.bfgroup.xyz/b2/LICENSE.txt) |