code: def TryBuild(self, builder, text = None, extension = ""):
          
          global _ac_build_counter
  
          # Make sure we have a PSPAWN value, and save the current
          # SPAWN value.
          try:
              self.pspawn = self.env['PSPAWN']
          except KeyError:
              raise SCons.Errors.UserError('Missing PSPAWN construction variable.')
          try:
              save_spawn = self.env['SPAWN']
          except KeyError:
              raise SCons.Errors.UserError('Missing SPAWN construction variable.')
  
          nodesToBeBuilt = []
  
          f = "conftest_" + str(_ac_build_counter)
          pref = self.env.subst( builder.builder.prefix )
          suff = self.env.subst( builder.builder.suffix )
          target = self.confdir.File(pref + f + suff)
  
          try:
              # Slide our wrapper into the construction environment as
              # the SPAWN function.
              self.env['SPAWN'] = self.pspawn_wrapper
              sourcetext = self.env.Value(text)
  
              if text is not None:
                  textFile = self.confdir.File(f + extension)
                  textFileNode = self.env.SConfSourceBuilder(target=textFile,
                                                             source=sourcetext)
                  nodesToBeBuilt.extend(textFileNode)
                  source = textFileNode
              else:
                  source = None
  
              nodes = builder(target = target, source = source)
              if not SCons.Util.is_List(nodes):
                  nodes = [nodes]
              nodesToBeBuilt.extend(nodes)
              result = self.BuildNodes(nodesToBeBuilt)
  
          finally:
              self.env['SPAWN'] = save_spawn
  
          _ac_build_counter = _ac_build_counter + 1
          if result:
              self.lastTarget = nodes[0]
          else:
              self.lastTarget = None
  
          return result
docs: Low level TryBuild implementation. Normally you don't need to
          call that - you can use TryCompile / TryLink / TryRun instead