Merge pull request #205 from boostorg/pr/remove-unversioned-targets

Remove unused targets from boostcpp.jam
This commit is contained in:
Peter Dimov 2018-10-12 05:47:17 +03:00 committed by GitHub
commit c2dbd63b5b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -228,46 +228,9 @@ rule python-tag ( name : type ? : property-set )
#
# - 'stage-proper' that puts all libraries in stage/lib
# - 'install-proper' that install libraries and headers to system location
# - 'stage-unversioned' that creates links to libraries without boost version
# in name
# - 'install-unversioned' which creates unversioned linked to installed
# libraries.
#
################################################################################
# Worker function suitable to the 'generate' metatarget. Creates a link to
# 'source', striping any version number information from the name.
rule make-unversioned-links ( project name ? : property-set : sources * )
{
local filter ;
if [ modules.peek : NT ]
{
filter = "(.*[.]lib)" ;
}
else
{
filter =
"(.*[.]so)[.0-9]*"
"(.*[.]dylib)"
"(.*[.]a)" ;
}
local result ;
for local s in $(sources)
{
local m = [ MATCH "^(.*)-[0-9_]+$(filter)$" : [ $(s).name ] ] ;
if $(m)
{
local ea = [ $(s).action ] ;
local ep = [ $(ea).properties ] ;
local a = [ new non-scanning-action $(s) : symlink.ln : $(ep) ] ;
result += [ new file-target $(m:J=) exact : [ $(s).type ] :
$(project) : $(a) ] ;
}
}
return $(result) ;
}
rule filtered-target ( name : message + : sources + : requirements * )
{
message $(name)-message : warning\: $(message) ;
@ -381,33 +344,6 @@ rule declare_install_and_stage_proper_targets ( libraries * : headers * : modula
<install-no-version-symlinks>on
;
$(p).mark-target-as-explicit stage-proper ;
# Commented out as it does not seem to work. Whoever wrote this originally,
# left some typos in the code, but when that got corrected and the code got
# enabled - it started reporting ambiguous/duplicate target Boost Build
# errors. Anyone requiring unversioned staged libraries needs to correct
# those errors before reenabling this code. For more detailed information
# see the related Boost library development mailing list thread at
# 'http://lists.boost.org/Archives/boost/2012/06/194312.php'.
# (06.07.2012.) (Jurko)
#~ if $(layout-versioned) && ( [ modules.peek : NT ] || [ modules.peek : UNIX ] )
#~ {
#~ generate stage-unversioned : stage-proper :
#~ <generating-rule>@boostcpp.make-unversioned-links ;
#~ $(p).mark-target-as-explicit stage-unversioned ;
#~
#~ generate install-unversioned : install-proper :
#~ <generating-rule>@boostcpp.make-unversioned-links ;
#~ $(p).mark-target-as-explicit install-unversioned ;
#~ }
#~ else
{
# Create do-nothing aliases.
alias stage-unversioned ;
$(p).mark-target-as-explicit stage-unversioned ;
alias install-unversioned ;
$(p).mark-target-as-explicit install-unversioned ;
}
}
@ -558,11 +494,11 @@ rule declare_top_level_targets ( libraries * : headers * : modular-headers * )
targets.create-metatarget top-level-target : [ project.current ]
: install
: install-$(modular-headers)-headers install-proper install-unversioned
: install-$(modular-headers)-headers install-proper
;
targets.create-metatarget top-level-target : [ project.current ]
: stage
: stage-proper stage-unversioned headers
: stage-proper headers
;
p = [ project.current ] ;