parameters: (self, spec)
return_statement: return os.path.join(path, self.ComputeOutputBasename(spec))
docstring: Return the 'output' (full output path) of a gyp spec.
  
          E.g., the loadable module 'foobar' in directory 'baz' will produce
            '$(obj)/baz/libfoobar.so'
docstring_summary: Return the 'output' (full output path) of a gyp spec.
docstring_tokens: Return the output ( full output path ) of a gyp spec .
function: def ComputeOutput(self, spec):
          """Return the 'output' (full output path) of a gyp spec.
  
          E.g., the loadable module 'foobar' in directory 'baz' will produce
            '$(obj)/baz/libfoobar.so'
          """
          if self.type == "executable":
              # We install host executables into shared_intermediate_dir so they can be
              # run by gyp rules that refer to PRODUCT_DIR.
              path = "$(gyp_shared_intermediate_dir)"
          elif self.type == "shared_library":
              if self.toolset == "host":
                  path = "$($(GYP_HOST_VAR_PREFIX)HOST_OUT_INTERMEDIATE_LIBRARIES)"
              else:
                  path = "$($(GYP_VAR_PREFIX)TARGET_OUT_INTERMEDIATE_LIBRARIES)"
          else:
              # Other targets just get built into their intermediate dir.
              if self.toolset == "host":
                  path = (
                      "$(call intermediates-dir-for,%s,%s,true,,"
                      "$(GYP_HOST_VAR_PREFIX))"
                      % (self.android_class, self.android_module)
                  )
              else:
                  path = "$(call intermediates-dir-for,{},{},,,$(GYP_VAR_PREFIX))".format(
                      self.android_class,
                      self.android_module,
                  )
  
          assert spec.get("product_dir") is None  # TODO: not supported?
          return os.path.join(path, self.ComputeOutputBasename(spec))
function_tokens: def ComputeOutput ( self , spec ) : if self . type == "executable" : # We install host executables into shared_intermediate_dir so they can be # run by gyp rules that refer to PRODUCT_DIR. path = "$(gyp_shared_intermediate_dir)" elif self . type == "shared_library" : if self . toolset == "host" : path = "$($(GYP_HOST_VAR_PREFIX)HOST_OUT_INTERMEDIATE_LIBRARIES)" else : path = "$($(GYP_VAR_PREFIX)TARGET_OUT_INTERMEDIATE_LIBRARIES)" else : # Other targets just get built into their intermediate dir. if self . toolset == "host" : path = ( "$(call intermediates-dir-for,%s,%s,true,," "$(GYP_HOST_VAR_PREFIX))" % ( self . android_class , self . android_module ) ) else : path = "$(call intermediates-dir-for,{},{},,,$(GYP_VAR_PREFIX))" . format ( self . android_class , self . android_module , ) assert spec . get ( "product_dir" ) is None # TODO: not supported? return os . path . join ( path , self . ComputeOutputBasename ( spec ) )