Your ROOT_URL in app.ini is https://src.whiteboxsystems.nl/ but you are visiting http://src.whiteboxsystems.nl/Whitebox/u-boot/commit/3cf4ae6f8672cd10ddba4b18bf82e4d03aeb15e6
You should set ROOT_URL correctly, otherwise the web may not work correctly.
4 changed files with
41 additions and
8 deletions
tools/buildman/README
tools/buildman/board.py
tools/buildman/buildman.py
tools/buildman/control.py
@ -114,6 +114,13 @@ the '&' operator to limit the selection:
* 'freescale & arm sandbox' All Freescale boards with ARM architecture,
plus sandbox
You can also use -x to specifically exclude some boards. For example:
buildmand arm -x nvidia,freescale,.*ball$
means to build all arm boards except nvidia, freescale and anything ending
with 'ball'.
It is convenient to use the -n option to see whaat will be built based on
the subset given.
@ -239,13 +239,14 @@ class Boards:
terms . append ( term )
return terms
def SelectBoards ( self , args ) :
def SelectBoards ( self , args , exclude = [ ] ) :
""" Mark boards selected based on args
Args :
List of strings specifying boards to include , either named , or
by their target , architecture , cpu , vendor or soc . If empty , all
boards are selected .
args : List of strings specifying boards to include , either named ,
or by their target , architecture , cpu , vendor or soc . If
empty , all boards are selected .
exclude : List of boards to exclude , regardless of ' args '
Returns :
Dictionary which holds the number of boards which were selected
@ -258,17 +259,33 @@ class Boards:
for term in terms :
result [ str ( term ) ] = 0
exclude_list = [ ]
for expr in exclude :
exclude_list . append ( Expr ( expr ) )
for board in self . _boards :
matching_term = None
build_it = False
if terms :
match = False
for term in terms :
if term . Matches ( board . props ) :
board . build_it = True
result [ str ( term ) ] + = 1
result [ ' all ' ] + = 1
matching_term = str ( term )
build_it = True
break
else :
build_it = True
# Check that it is not specifically excluded
for expr in exclude_list :
if expr . Matches ( board . props ) :
build_it = False
break
if build_it :
board . build_it = True
if matching_term :
result [ matching_term ] + = 1
result [ ' all ' ] + = 1
return result
@ -117,6 +117,9 @@ parser.add_option('-u', '--show_unknown', action='store_true',
default = False , help = ' Show boards with unknown build result ' )
parser . add_option ( ' -v ' , ' --verbose ' , action = ' store_true ' ,
default = False , help = ' Show build results while the build progresses ' )
parser . add_option ( ' -x ' , ' --exclude ' , dest = ' exclude ' ,
type = ' string ' , action = ' append ' ,
help = ' Specify a list of boards to exclude, separated by comma ' )
parser . usage + = """
@ -127,7 +127,13 @@ def DoBuildman(options, args):
boards = board . Boards ( )
boards . ReadBoards ( os . path . join ( options . git , ' boards.cfg ' ) )
why_selected = boards . SelectBoards ( args )
exclude = [ ]
if options . exclude :
for arg in options . exclude :
exclude + = arg . split ( ' , ' )
why_selected = boards . SelectBoards ( args , exclude )
selected = boards . GetSelected ( )
if not len ( selected ) :
sys . exit ( col . Color ( col . RED , ' No matching boards found ' ) )