Skip to content

Commit

Permalink
Don't add stage/install alternatives if the project declares their own.
Browse files Browse the repository at this point in the history
  • Loading branch information
grafikrobot committed Apr 27, 2024
1 parent 5fab2f8 commit 76e07e0
Showing 1 changed file with 43 additions and 36 deletions.
79 changes: 43 additions & 36 deletions boost-install.jam
Original file line number Diff line number Diff line change
Expand Up @@ -1315,61 +1315,68 @@ rule boost-install ( libraries * )

libraries = $(l2) ;

# Target install

local p = [ project.current ] ;
local location = [ $(p).location ] ;

local libdir = [ boost-install-dirs.libdir ] ;
local bindir = [ boost-install-dirs.bindir ] ;
# Target install

install install-libraries-static : $(libraries) : <location>$(libdir) <install-dependencies>on <install-type>STATIC_LIB ;
$(p).mark-target-as-explicit install-libraries-static ;
if ! [ $(p).has-alternative-for-target install ]
{
local libdir = [ boost-install-dirs.libdir ] ;
local bindir = [ boost-install-dirs.bindir ] ;

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-static : $(libraries) : <location>$(libdir) <install-dependencies>on <install-type>STATIC_LIB ;
$(p).mark-target-as-explicit install-libraries-static ;

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- ;
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-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- : $(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-unprefixed-static : $(unprefixed) : <install-type>STATIC_LIB <conditional>@boost-install%install-subdir ;
$(p).mark-target-as-explicit install-unprefixed-static ;
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-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-static : $(unprefixed) : <install-type>STATIC_LIB <conditional>@boost-install%install-subdir ;
$(p).mark-target-as-explicit install-unprefixed-static ;

install-cmake-config $(libraries) ;
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 ;

generate install-dependencies : $(libraries) : <generating-rule>@boost-install%generate-dependencies <name>install ;
$(p).mark-target-as-explicit install-dependencies ;
install-cmake-config $(libraries) ;

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 ;
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 ;
}

# 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 ;
}
}

0 comments on commit 76e07e0

Please sign in to comment.