src/Pure/Admin/build_jdk.scala
changeset 64930 8d30727cd56f
parent 64929 3b4e5fad4dc2
child 64931 111d58654822
equal deleted inserted replaced
64929:3b4e5fad4dc2 64930:8d30727cd56f
   116       val platform =
   116       val platform =
   117         jdk_platforms.find(_.detect(jdk_dir)) getOrElse error("Failed to detect JDK platform")
   117         jdk_platforms.find(_.detect(jdk_dir)) getOrElse error("Failed to detect JDK platform")
   118 
   118 
   119       val platform_dir = dir + Path.explode(platform.name)
   119       val platform_dir = dir + Path.explode(platform.name)
   120       if (platform_dir.is_dir) error("Directory already exists: " + platform_dir)
   120       if (platform_dir.is_dir) error("Directory already exists: " + platform_dir)
   121       Isabelle_System.bash(
   121       File.move(jdk_dir, platform_dir)
   122         "mv " + File.bash_path(jdk_dir) + " " + File.bash_path(platform_dir)).check
       
   123 
   122 
   124       (version, platform)
   123       (version, platform)
   125     }
   124     }
   126     catch { case ERROR(msg) => cat_error(msg, "The error(s) above occurred for " + archive) }
   125     catch { case ERROR(msg) => cat_error(msg, "The error(s) above occurred for " + archive) }
   127   }
   126   }
   161 
   160 
   162         Isabelle_System.mkdirs(component_dir + Path.explode("etc"))
   161         Isabelle_System.mkdirs(component_dir + Path.explode("etc"))
   163         File.write(component_dir + Path.explode("etc/settings"), settings)
   162         File.write(component_dir + Path.explode("etc/settings"), settings)
   164         File.write(component_dir + Path.explode("README"), readme(version))
   163         File.write(component_dir + Path.explode("README"), readme(version))
   165 
   164 
   166         for ((_, platform) <- extracted) {
   165         for ((_, platform) <- extracted)
   167           Isabelle_System.bash("mv " +
   166           File.move(dir + Path.explode(platform.name), component_dir)
   168             File.bash_path(dir + Path.explode(platform.name)) + " " +
       
   169             File.bash_path(component_dir)).check
       
   170         }
       
   171 
   167 
   172         Isabelle_System.bash(cwd = component_dir.file,
   168         Isabelle_System.bash(cwd = component_dir.file,
   173           script = """
   169           script = """
   174             chmod -R a+r . &&
   170             chmod -R a+r . &&
   175             chmod -R a+X . &&
   171             chmod -R a+X . &&