Don't add stage/install alternatives if the project declares their own.

This commit is contained in:
Rene Rivera
2024-04-27 11:05:38 -05:00
parent 5fab2f8f84
commit 76e07e07f3

View File

@@ -1315,61 +1315,68 @@ rule boost-install ( libraries * )
libraries = $(l2) ;
local p = [ project.current ] ;
local location = [ $(p).location ] ;
# Target install
local p = [ project.current ] ;
if ! [ $(p).has-alternative-for-target install ]
{
local libdir = [ boost-install-dirs.libdir ] ;
local bindir = [ boost-install-dirs.bindir ] ;
local libdir = [ boost-install-dirs.libdir ] ;
local bindir = [ boost-install-dirs.bindir ] ;
install install-libraries-static : $(libraries) : <location>$(libdir) <install-dependencies>on <install-type>STATIC_LIB ;
$(p).mark-target-as-explicit install-libraries-static ;
install install-libraries-static : $(libraries) : <location>$(libdir) <install-dependencies>on <install-type>STATIC_LIB ;
$(p).mark-target-as-explicit install-libraries-static ;
alias install-libraries-shared : install-libraries-shared- ;
alias install-libraries-shared : install-libraries-shared-cygwin : <target-os>cygwin ;
$(p).mark-target-as-explicit install-libraries-shared ;
alias install-libraries-shared : install-libraries-shared- ;
alias install-libraries-shared : install-libraries-shared-cygwin : <target-os>cygwin ;
$(p).mark-target-as-explicit install-libraries-shared ;
install install-libraries-shared- : $(libraries) : <location>$(libdir) <install-type>SHARED_LIB <install-type>PDB <install-dependencies>on <install-no-version-symlinks>on ;
$(p).mark-target-as-explicit install-libraries-shared- ;
install install-libraries-shared- : $(libraries) : <location>$(libdir) <install-type>SHARED_LIB <install-type>PDB <install-dependencies>on <install-no-version-symlinks>on ;
$(p).mark-target-as-explicit install-libraries-shared- ;
install install-libraries-shared-cygwin : $(libraries) : <location>$(bindir) <install-type>SHARED_LIB <install-type>PDB <install-dependencies>on <install-no-version-symlinks>on ;
$(p).mark-target-as-explicit install-libraries-shared-cygwin ;
install install-libraries-shared-cygwin : $(libraries) : <location>$(bindir) <install-type>SHARED_LIB <install-type>PDB <install-dependencies>on <install-no-version-symlinks>on ;
$(p).mark-target-as-explicit install-libraries-shared-cygwin ;
install install-unprefixed-static : $(unprefixed) : <install-type>STATIC_LIB <conditional>@boost-install%install-subdir ;
$(p).mark-target-as-explicit install-unprefixed-static ;
install install-unprefixed-static : $(unprefixed) : <install-type>STATIC_LIB <conditional>@boost-install%install-subdir ;
$(p).mark-target-as-explicit install-unprefixed-static ;
install install-unprefixed-shared : $(unprefixed) : <install-type>SHARED_LIB <install-no-version-symlinks>on <conditional>@boost-install%install-subdir ;
$(p).mark-target-as-explicit install-unprefixed-shared ;
install install-unprefixed-shared : $(unprefixed) : <install-type>SHARED_LIB <install-no-version-symlinks>on <conditional>@boost-install%install-subdir ;
$(p).mark-target-as-explicit install-unprefixed-shared ;
install-cmake-config $(libraries) ;
install-cmake-config $(libraries) ;
generate install-dependencies : $(libraries) : <generating-rule>@boost-install%generate-dependencies <name>install ;
$(p).mark-target-as-explicit install-dependencies ;
generate install-dependencies : $(libraries) : <generating-rule>@boost-install%generate-dependencies <name>install ;
$(p).mark-target-as-explicit install-dependencies ;
alias install : install-libraries-static install-libraries-shared install-unprefixed-static install-unprefixed-shared install-cmake-config install-dependencies ;
$(p).mark-target-as-explicit install ;
alias install : install-libraries-static install-libraries-shared install-unprefixed-static install-unprefixed-shared install-cmake-config install-dependencies ;
$(p).mark-target-as-explicit install ;
}
# Target stage
local stage-libdir = [ boost-install-dirs.stage-libdir ] ;
if ! [ $(p).has-alternative-for-target stage ]
{
local stage-libdir = [ boost-install-dirs.stage-libdir ] ;
stage-cmake-config $(libraries) ;
stage-cmake-config $(libraries) ;
install stage-libraries-static : $(libraries) : <location>$(stage-libdir) <install-dependencies>on <install-type>STATIC_LIB ;
$(p).mark-target-as-explicit stage-libraries-static ;
install stage-libraries-static : $(libraries) : <location>$(stage-libdir) <install-dependencies>on <install-type>STATIC_LIB ;
$(p).mark-target-as-explicit stage-libraries-static ;
install stage-libraries-shared : $(libraries) : <location>$(stage-libdir) <install-dependencies>on <install-type>SHARED_LIB <install-type>PDB <install-no-version-symlinks>on ;
$(p).mark-target-as-explicit stage-libraries-shared ;
install stage-libraries-shared : $(libraries) : <location>$(stage-libdir) <install-dependencies>on <install-type>SHARED_LIB <install-type>PDB <install-no-version-symlinks>on ;
$(p).mark-target-as-explicit stage-libraries-shared ;
install stage-unprefixed-static : $(unprefixed) : <install-type>STATIC_LIB <conditional>@boost-install%stage-subdir ;
$(p).mark-target-as-explicit stage-unprefixed-static ;
install stage-unprefixed-static : $(unprefixed) : <install-type>STATIC_LIB <conditional>@boost-install%stage-subdir ;
$(p).mark-target-as-explicit stage-unprefixed-static ;
install stage-unprefixed-shared : $(unprefixed) : <install-type>SHARED_LIB <install-type>PDB <install-no-version-symlinks>on <conditional>@boost-install%stage-subdir ;
$(p).mark-target-as-explicit stage-unprefixed-shared ;
install stage-unprefixed-shared : $(unprefixed) : <install-type>SHARED_LIB <install-type>PDB <install-no-version-symlinks>on <conditional>@boost-install%stage-subdir ;
$(p).mark-target-as-explicit stage-unprefixed-shared ;
generate stage-dependencies : $(libraries) : <generating-rule>@boost-install%generate-dependencies <name>stage ;
$(p).mark-target-as-explicit stage-dependencies ;
generate stage-dependencies : $(libraries) : <generating-rule>@boost-install%generate-dependencies <name>stage ;
$(p).mark-target-as-explicit stage-dependencies ;
alias stage : stage-libraries-static stage-libraries-shared stage-unprefixed-static stage-unprefixed-shared stage-cmake-config stage-dependencies ;
$(p).mark-target-as-explicit stage ;
alias stage : stage-libraries-static stage-libraries-shared stage-unprefixed-static stage-unprefixed-shared stage-cmake-config stage-dependencies ;
$(p).mark-target-as-explicit stage ;
}
}