parameters: (env)
docstring: Add Builders and construction variables for javac to an Environment.
docstring_summary: Add Builders and construction variables for javac to an Environment.
docstring_tokens: Add Builders and construction variables for javac to an Environment .
function: def generate(env):
      """Add Builders and construction variables for javac to an Environment."""
      java_file = SCons.Tool.CreateJavaFileBuilder(env)
      java_class = SCons.Tool.CreateJavaClassFileBuilder(env)
      java_class_dir = SCons.Tool.CreateJavaClassDirBuilder(env)
      java_class.add_emitter(None, emit_java_classes)
      java_class.add_emitter(env.subst('$JAVASUFFIX'), emit_java_classes)
      java_class_dir.emitter = emit_java_classes
  
      env.AddMethod(Java)
  
      version = env.get('JAVAVERSION', None)
  
      if env['PLATFORM'] == 'win32':
          # Ensure that we have a proper path for javac
          paths = get_java_install_dirs('win32', version=version)
          javac = SCons.Tool.find_program_path(env, 'javac', default_paths=paths)
          if javac:
              javac_bin_dir = os.path.dirname(javac)
              env.AppendENVPath('PATH', javac_bin_dir)
      else:
          javac = SCons.Tool.find_program_path(env, 'javac')
  
      env['JAVAINCLUDES'] = get_java_include_paths(env, javac, version)
  
  
      env['JAVAC']                    = 'javac'
      env['JAVACFLAGS']               = SCons.Util.CLVar('')
      env['JAVABOOTCLASSPATH']        = []
      env['JAVACLASSPATH']            = []
      env['JAVASOURCEPATH']           = []
      env['_javapathopt']             = pathopt
      env['_JAVABOOTCLASSPATH']       = '${_javapathopt("-bootclasspath", "JAVABOOTCLASSPATH")} '
      env['_JAVACLASSPATH']           = '${_javapathopt("-classpath", "JAVACLASSPATH")} '
      env['_JAVASOURCEPATH']          = '${_javapathopt("-sourcepath", "JAVASOURCEPATH", "_JAVASOURCEPATHDEFAULT")} '
      env['_JAVASOURCEPATHDEFAULT']   = '${TARGET.attributes.java_sourcedir}'
      env['_JAVACCOM']                = '$JAVAC $JAVACFLAGS $_JAVABOOTCLASSPATH $_JAVACLASSPATH -d ${TARGET.attributes.java_classdir} $_JAVASOURCEPATH $SOURCES'
      env['JAVACCOM']                 = "${TEMPFILE('$_JAVACCOM','$JAVACCOMSTR')}"
      env['JAVACLASSSUFFIX']          = '.class'
      env['JAVASUFFIX']               = '.java'
function_tokens: def generate ( env ) : java_file = SCons . Tool . CreateJavaFileBuilder ( env ) java_class = SCons . Tool . CreateJavaClassFileBuilder ( env ) java_class_dir = SCons . Tool . CreateJavaClassDirBuilder ( env ) java_class . add_emitter ( None , emit_java_classes ) java_class . add_emitter ( env . subst ( '$JAVASUFFIX' ) , emit_java_classes ) java_class_dir . emitter = emit_java_classes env . AddMethod ( Java ) version = env . get ( 'JAVAVERSION' , None ) if env [ 'PLATFORM' ] == 'win32' : # Ensure that we have a proper path for javac paths = get_java_install_dirs ( 'win32' , version = version ) javac = SCons . Tool . find_program_path ( env , 'javac' , default_paths = paths ) if javac : javac_bin_dir = os . path . dirname ( javac ) env . AppendENVPath ( 'PATH' , javac_bin_dir ) else : javac = SCons . Tool . find_program_path ( env , 'javac' ) env [ 'JAVAINCLUDES' ] = get_java_include_paths ( env , javac , version ) env [ 'JAVAC' ] = 'javac' env [ 'JAVACFLAGS' ] = SCons . Util . CLVar ( '' ) env [ 'JAVABOOTCLASSPATH' ] = [ ] env [ 'JAVACLASSPATH' ] = [ ] env [ 'JAVASOURCEPATH' ] = [ ] env [ '_javapathopt' ] = pathopt env [ '_JAVABOOTCLASSPATH' ] = '${_javapathopt("-bootclasspath", "JAVABOOTCLASSPATH")} ' env [ '_JAVACLASSPATH' ] = '${_javapathopt("-classpath", "JAVACLASSPATH")} ' env [ '_JAVASOURCEPATH' ] = '${_javapathopt("-sourcepath", "JAVASOURCEPATH", "_JAVASOURCEPATHDEFAULT")} ' env [ '_JAVASOURCEPATHDEFAULT' ] = '${TARGET.attributes.java_sourcedir}' env [ '_JAVACCOM' ] = '$JAVAC $JAVACFLAGS $_JAVABOOTCLASSPATH $_JAVACLASSPATH -d ${TARGET.attributes.java_classdir} $_JAVASOURCEPATH $SOURCES' env [ 'JAVACCOM' ] = "${TEMPFILE('$_JAVACCOM','$JAVACCOMSTR')}" env [ 'JAVACLASSSUFFIX' ] = '.class' env [ 'JAVASUFFIX' ] = '.java'