mirror of
https://github.com/boostorg/build.git
synced 2026-02-15 00:52:16 +00:00
Merge branch 'develop' of https://github.com/boostorg/build into develop
This commit is contained in:
@@ -394,7 +394,7 @@ class project-target : abstract-target
|
||||
if ! [ path.is-rooted $(project-part) ]
|
||||
{
|
||||
local rooted = [ path.root $(project-part) / ] ;
|
||||
if [ project.is-registered-id $(rooted) ]
|
||||
if $(rooted) && [ project.is-registered-id $(rooted) ]
|
||||
{
|
||||
extra-error-message += - possibly missing a leading
|
||||
slash ('/') character. ;
|
||||
@@ -830,6 +830,10 @@ rule resolve-reference ( target-reference : project )
|
||||
# Separate target name from properties override.
|
||||
local split = [ MATCH "^([^<]*)(/(<.*))?$" : $(target-reference) ] ;
|
||||
local id = $(split[1]) ;
|
||||
if ! $(split) || ! $(id)
|
||||
{
|
||||
error "Malformed target reference $(target-reference)" ;
|
||||
}
|
||||
local sproperties = ;
|
||||
if $(split[3])
|
||||
{
|
||||
|
||||
@@ -88,6 +88,16 @@ rule process (
|
||||
|
||||
case --help-options :
|
||||
print-help-usage ;
|
||||
local BOOST_BUILD_PATH = [ modules.peek : BOOST_BUILD_PATH ] ;
|
||||
local plugin-dir = options ;
|
||||
local option-files = [ GLOB $(plugin-dir:D=$(BOOST_BUILD_PATH)) : *.jam ] ;
|
||||
if $(option-files)
|
||||
{
|
||||
for local file in $(option-files)
|
||||
{
|
||||
do-scan $(file) : print-help-options ;
|
||||
}
|
||||
}
|
||||
did-help = true ;
|
||||
|
||||
case --help :
|
||||
|
||||
@@ -69,14 +69,11 @@ flags cray.compile DEFINES <define> ;
|
||||
flags cray.compile INCLUDES <include> ;
|
||||
flags cray.link OPTIONS <linkflags> ;
|
||||
|
||||
# flags cray.compile OPTIONS : -hgnu -fPIC -h system_alloc -h tolerant -h ipa0 ;
|
||||
flags cray.compile OPTIONS : -march=bdver1 -mfpmath=sse -mfma4 -mavx -funroll-all-loops -mprefer-avx128 -fprefetch-loop-arrays --param prefetch-latency=300 -minline-all-stringops -ffast-math -fno-finite-math-only ;
|
||||
flags cray.compile OPTIONS : -hgnu -fPIC -h system_alloc -h tolerant -h ipa0 ;
|
||||
flags cray.compile OPTIONS <link>shared : -dynamic ;
|
||||
flags cray.compile OPTIONS <link>static : -static ;
|
||||
# flags cray.link OPTIONS <link>static : -static ;
|
||||
# flags cray.link OPTIONS <link>shared ;
|
||||
flags cray.link OPTIONS <link>static : -static -march=bdver1 -mfpmath=sse -mfma4 -mavx -funroll-all-loops -mprefer-avx128 -fprefetch-loop-arrays --param prefetch-latency=300 -minline-all-stringops -ffast-math -fno-finite-math-only -Xlinker --allow-multiple-definition ;
|
||||
flags cray.link OPTIONS <link>shared : -march=bdver1 -mfpmath=sse -mfma4 -mavx -funroll-all-loops -mprefer-avx128 -fprefetch-loop-arrays --param prefetch-latency=300 -minline-all-stringops -ffast-math -fno-finite-math-only -Xlinker --allow-multiple-definition ;
|
||||
flags cray.link OPTIONS <link>static : -static ;
|
||||
flags cray.link OPTIONS <link>shared ;
|
||||
flags cray.link LOPTIONS <link>shared : -dynamic ;
|
||||
|
||||
flags cray.link LIBPATH <library-path> ;
|
||||
|
||||
@@ -790,12 +790,16 @@ rule init-link-flags ( toolset linker condition )
|
||||
# searched during load-time. Note that the AIX linker does not have an
|
||||
# -soname equivalent, this is as close as it gets.
|
||||
#
|
||||
# The -bbigtoc option instrcuts the linker to create a TOC bigger than 64k.
|
||||
# This is neccesary for some submodules such as math, but it does make running
|
||||
# the tests a tad slower.
|
||||
#
|
||||
# The above options are definately for AIX 5.x, and most likely also for
|
||||
# AIX 4.x and AIX 6.x. For details about the AIX linker see:
|
||||
# http://download.boulder.ibm.com/ibmdl/pub/software/dw/aix/es-aix_ll.pdf
|
||||
#
|
||||
|
||||
toolset.flags $(toolset).link OPTIONS : -Wl,-brtl -Wl,-bnoipath
|
||||
toolset.flags $(toolset).link OPTIONS : -Wl,-brtl -Wl,-bnoipath -Wl,-bbigtoc
|
||||
: unchecked ;
|
||||
|
||||
case darwin :
|
||||
@@ -1182,4 +1186,4 @@ cpu-flags gcc OPTIONS : power : rios2 : -mcpu=rios2 ;
|
||||
cpu-flags gcc OPTIONS : power : rsc : -mcpu=rsc ;
|
||||
cpu-flags gcc OPTIONS : power : rs64a : -mcpu=rs64 ;
|
||||
# AIX variant of RS/6000 & PowerPC
|
||||
toolset.flags gcc AROPTIONS <address-model>64/<target-os>aix : "-X 64" ;
|
||||
toolset.flags gcc AROPTIONS <address-model>64/<target-os>aix : "-X64" ;
|
||||
|
||||
@@ -830,4 +830,4 @@ cpu_flags('gcc', 'OPTIONS', 'power', 'rs64a', ['-mcpu=rs64'])
|
||||
# AIX variant of RS/6000 & PowerPC
|
||||
flags('gcc', 'OPTIONS', ['<architecture>power/<address-model>32/<target-os>aix'], ['-maix32'])
|
||||
flags('gcc', 'OPTIONS', ['<architecture>power/<address-model>64/<target-os>aix'], ['-maix64'])
|
||||
flags('gcc', 'AROPTIONS', ['<architecture>power/<address-model>64/<target-os>aix'], ['-X 64'])
|
||||
flags('gcc', 'AROPTIONS', ['<architecture>power/<address-model>64/<target-os>aix'], ['-X64'])
|
||||
|
||||
@@ -45,6 +45,12 @@ help-output-file = help ;
|
||||
#
|
||||
.option.debug ?= ;
|
||||
|
||||
# These are all the options available for enabling or disabling to control the
|
||||
# help system in various ways. Options can be enabled or disabled with
|
||||
# '--help-enable-<option>', and '--help-disable-<option>' respectively.
|
||||
#
|
||||
.option-description = Help Options ;
|
||||
|
||||
# Enable or disable a documentation option.
|
||||
#
|
||||
local rule set-option (
|
||||
@@ -358,31 +364,32 @@ local rule print-help-usage ( )
|
||||
print.list-end ;
|
||||
}
|
||||
|
||||
|
||||
# Generates description of options controlling the help system. This
|
||||
# automatically reads the options as all variables in the doc module of the form
|
||||
# ".option.*".
|
||||
# automatically reads the options as all variables in the module given
|
||||
# with the name `module-name` of the form ".option.*".
|
||||
#
|
||||
local rule print-help-options (
|
||||
module-name # The doc module.
|
||||
module-name
|
||||
)
|
||||
{
|
||||
print.section "Help Options"
|
||||
These are all the options available for enabling or disabling to control
|
||||
the help system in various ways. Options can be enabled or disabled with
|
||||
'"--help-enable-<option>"', and "'--help-disable-<option>'"
|
||||
respectively.
|
||||
;
|
||||
local options-to-list = [ MATCH ^[.]option[.](.*) : $($(module-name).variables) ] ;
|
||||
if $(options-to-list)
|
||||
{
|
||||
local option-title = $($(module-name)..option-description.initial) ;
|
||||
if ! $(option-title) || $(option-title) = "(empty)"
|
||||
{
|
||||
option-title = "$(module-name) Options" ;
|
||||
}
|
||||
local option-description = $(option-title)
|
||||
$($(module-name)..option-description.docs) ;
|
||||
print.section $(option-description) ;
|
||||
print.list-start ;
|
||||
for local option in [ sequence.insertion-sort $(options-to-list) ]
|
||||
{
|
||||
local def = disabled ;
|
||||
if $($(module-name)..option.$(option).default) != "(empty)"
|
||||
{
|
||||
def = enabled ;
|
||||
def = $($(module-name)..option.$(option).default) ;
|
||||
}
|
||||
print.list-item $(option): $($(module-name)..option.$(option).docs)
|
||||
Default is $(def). ;
|
||||
|
||||
Reference in New Issue
Block a user