Index: tools/builtin.py =================================================================== --- tools/builtin.py (revision 75729) +++ tools/builtin.py (working copy) @@ -505,7 +505,7 @@ if real_name: real_name = real_name[0] else: - real_nake = name + real_name = name search = feature.get_values('', properties) usage_requirements = property_set.create(['' + p for p in search]) t = SearchedLibTarget(name, project, shared, real_name, search, a) @@ -668,7 +668,7 @@ fst = [] for s in sources: if type.is_derived(s.type(), 'SEARCHED_LIB'): - n = s.real_name() + n = s.name() if s.shared(): fsa.append(n) Index: tools/common.py =================================================================== --- tools/common.py (revision 75729) +++ tools/common.py (working copy) @@ -16,7 +16,10 @@ import os.path import sys -from b2.build import feature +# for some reason this fails on Python 2.7(r27:82525) +# from b2.build import virtual_target +import b2.build.virtual_target +from b2.build import feature, type from b2.util.utility import * from b2.util import path @@ -640,13 +643,13 @@ if grist == '': result += os.path.basename(name) elif grist == '': - result += join_tag(ungrist(f), + result += join_tag(get_value(f), toolset_tag(name, target_type, prop_set)) elif grist == '': - result += join_tag(ungrist(f), + result += join_tag(get_value(f), threading_tag(name, target_type, prop_set)) elif grist == '': - result += join_tag(ungrist(f), + result += join_tag(get_value(f), runtime_tag(name, target_type, prop_set)) elif grist.startswith('') @@ -670,15 +673,18 @@ assert(len(p) == 1) result += join_tag(ungrist(f), p) else: - result += ungrist(f) + result += f - result = virtual_target.add_prefix_and_suffix( + result = b2.build.virtual_target.add_prefix_and_suffix( ''.join(result), target_type, prop_set) return result def join_tag(joiner, tag): - if not joiner: joiner = '-' - return joiner + tag + if tag: + if not joiner: joiner = '-' + return joiner + tag + else: + return tag __re_toolset_version = re.compile(r"(\d+)[.](\d*)") @@ -687,7 +693,7 @@ properties = prop_set.raw() tools = prop_set.get('') - assert(len(tools) == 0) + assert(len(tools) == 1) tools = tools[0] if tools.startswith('borland'): tag += 'bcb' elif tools.startswith('como'): tag += 'como'