parameters: (self, sources, main_target_name, no_renaming=0)
return_statement: return result
docstring: Return the list of sources to use, if main target rule is invoked
          with 'sources'. If there are any objects in 'sources', they are treated
          as main target instances, and the name of such targets are adjusted to
          be '<name_of_this_target>__<name_of_source_target>'. Such renaming
          is disabled is non-empty value is passed for 'no-renaming' parameter.
docstring_summary: Return the list of sources to use, if main target rule is invoked
          with 'sources'. If there are any objects in 'sources', they are treated
          as main target instances, and the name of such targets are adjusted to
          be '<name_of_this_target>__<name_of_source_target>'. Such renaming
          is disabled is non-empty value is passed for 'no-renaming' parameter.
docstring_tokens: Return the list of sources to use if main target rule is invoked with sources . If there are any objects in sources they are treated as main target instances and the name of such targets are adjusted to be <name_of_this_target > __<name_of_source_target > . Such renaming is disabled is non - empty value is passed for no - renaming parameter .
function: def main_target_sources (self, sources, main_target_name, no_renaming=0):
          """Return the list of sources to use, if main target rule is invoked
          with 'sources'. If there are any objects in 'sources', they are treated
          as main target instances, and the name of such targets are adjusted to
          be '<name_of_this_target>__<name_of_source_target>'. Such renaming
          is disabled is non-empty value is passed for 'no-renaming' parameter."""
          result = []
  
          for t in sources:
  
              t = b2.util.jam_to_value_maybe(t)
              
              if isinstance (t, AbstractTarget):
                  name = t.name ()
  
                  if not no_renaming:
                      name = main_target_name + '__' + name
                      t.rename (name)
  
                  # Inline targets are not built by default.
                  p = t.project()
                  p.mark_targets_as_explicit([name])                    
                  result.append(name)
  
              else:
                  result.append (t)
  
          return result
function_tokens: def main_target_sources ( self , sources , main_target_name , no_renaming = 0 ) : result = [ ] for t in sources : t = b2 . util . jam_to_value_maybe ( t ) if isinstance ( t , AbstractTarget ) : name = t . name ( ) if not no_renaming : name = main_target_name + '__' + name t . rename ( name ) # Inline targets are not built by default. p = t . project ( ) p . mark_targets_as_explicit ( [ name ] ) result . append ( name ) else : result . append ( t ) return result