sb: Make the source and patch labels have sortable label.

This patch changes 'patch1' to 'patch0001' so sorting of the macro
keys in the patch macro map returns the order the patches are declared.
The helps mamage patch sets that need a specific order.
This commit is contained in:
Chris Johns 2015-03-26 11:12:13 +11:00
parent 6523533354
commit 2e54abc9ba
2 changed files with 6 additions and 3 deletions

View File

@ -199,7 +199,7 @@ class macros:
def map_keys(self, _map): def map_keys(self, _map):
if _map in self.macros: if _map in self.macros:
return self.macros[_map].keys() return sorted(self.macros[_map].keys())
return [] return []
def map_num_keys(self, _map): def map_num_keys(self, _map):

View File

@ -26,6 +26,9 @@ import log
def _args(args): def _args(args):
return [i for s in [ii.split() for ii in args] for i in s] return [i for s in [ii.split() for ii in args] for i in s]
def _make_key(label, index):
return '%s%04d' % (label, index)
def add(label, args, macros, error): def add(label, args, macros, error):
args = _args(args) args = _args(args)
if len(args) < 2: if len(args) < 2:
@ -34,7 +37,7 @@ def add(label, args, macros, error):
macros.create_map(_map) macros.create_map(_map)
index = 0 index = 0
while True: while True:
key = '%s%d' % (label, index) key = _make_key(label, index)
if key not in macros.map_keys(_map): if key not in macros.map_keys(_map):
break break
index += 1 index += 1
@ -49,7 +52,7 @@ def set(label, args, macros, error):
error('%%%s requires at least 2 arguments' % (label)) error('%%%s requires at least 2 arguments' % (label))
_map = '%s-%s' % (label, args[0]) _map = '%s-%s' % (label, args[0])
macros.create_map(_map) macros.create_map(_map)
key = '%s0' % (label) key = _make_key(label, 0)
if key not in macros.map_keys(_map): if key not in macros.map_keys(_map):
macros.set_write_map(_map) macros.set_write_map(_map)
macros.define(key, ' '.join(args[1:])) macros.define(key, ' '.join(args[1:]))