code: def __generate_really (self, prop_set):
          
          assert isinstance(prop_set, property_set.PropertySet)
          best_alternative = self.__select_alternatives (prop_set, debug=0)
          self.best_alternative = best_alternative
  
          if not best_alternative:
              # FIXME: revive.
              # self.__select_alternatives(prop_set, debug=1)
              self.manager_.errors()(
                  "No best alternative for '%s'.\n"
                    % (self.full_name(),))
  
          result = best_alternative.generate (prop_set)
  
          # Now return virtual targets for the only alternative
          return result
docs: Generates the main target with the given property set
              and returns a list which first element is property_set object
              containing usage_requirements of generated target and with
              generated virtual target in other elements. It's possible
              that no targets are generated.