# HG changeset patch # User wenzelm # Date 1627906122 -7200 # Node ID fa92c5f8af865919c9dcd000360e53eaaec5e74b # Parent 3b56d00ac333ca33c0d881a92708c4abb6ee4619 clarified jEdit java sources; diff -r 3b56d00ac333 -r fa92c5f8af86 Admin/components/components.sha1 --- a/Admin/components/components.sha1 Mon Aug 02 13:50:45 2021 +0200 +++ b/Admin/components/components.sha1 Mon Aug 02 14:08:42 2021 +0200 @@ -182,6 +182,7 @@ 778fd85c827ec49d2d658a832d20e63916186b0d jedit-20210715.tar.gz beb99f2cb0bd4e595c5c597d3970c46aa21616e4 jedit-20210717.tar.gz 33dd96cd83f2c6a26c035b7a0ee57624655224c5 jedit-20210724.tar.gz +0e4fd4d66388ddc760fa5fbd8d4a9a3b77cf59c7 jedit-20210802.tar.gz 44775a22f42a9d665696bfb49e53c79371c394b0 jedit_build-20111217.tar.gz a242a688810f2bccf24587b0062ce8027bf77fa2 jedit_build-20120304.tar.gz 4c948dee53f74361c097c08f49a1a5ff9b17bd1d jedit_build-20120307.tar.gz diff -r 3b56d00ac333 -r fa92c5f8af86 Admin/components/main --- a/Admin/components/main Mon Aug 02 13:50:45 2021 +0200 +++ b/Admin/components/main Mon Aug 02 14:08:42 2021 +0200 @@ -10,7 +10,7 @@ isabelle_fonts-20210322 isabelle_setup-20210726 jdk-15.0.2+7 -jedit-20210724 +jedit-20210802 jfreechart-1.5.1 jortho-1.0-2 kodkodi-1.5.6-1 diff -r 3b56d00ac333 -r fa92c5f8af86 src/Pure/Admin/build_jedit.scala --- a/src/Pure/Admin/build_jedit.scala Mon Aug 02 13:50:45 2021 +0200 +++ b/src/Pure/Admin/build_jedit.scala Mon Aug 02 14:08:42 2021 +0200 @@ -102,6 +102,11 @@ "Navigator" -> "2.7", "SideKick" -> "1.8") + private def exclude_package(name: String): Boolean = + name.startsWith("de.masters_of_disaster.ant") || + name == "doclet" || + name == "installer" + def build_jedit( component_dir: Path, version: String, @@ -181,14 +186,11 @@ Isabelle_System.copy_file(tmp_source_dir + Path.explode("build/jedit.jar"), jedit_patched_dir) val java_sources = - File.find_files(source_dir.file, file => file.getName.endsWith(".java")). - flatMap(file => - { - if (Scala_Project.package_dir(File.path(file)).isDefined) { - Some(File.path(component_dir.java_path.relativize(file.toPath).toFile)) - } - else None - }) + for { + file <- File.find_files(source_dir.file, file => file.getName.endsWith(".java")) + package_name <- Scala_Project.package_name(File.path(file)) + if !exclude_package(package_name) + } yield File.path(component_dir.java_path.relativize(file.toPath).toFile) File.write(etc_dir + Path.explode("build.props"), "module = " + jedit_patched + "/jedit.jar\n" + diff -r 3b56d00ac333 -r fa92c5f8af86 src/Pure/Tools/scala_project.scala --- a/src/Pure/Tools/scala_project.scala Mon Aug 02 13:50:45 2021 +0200 +++ b/src/Pure/Tools/scala_project.scala Mon Aug 02 14:08:42 2021 +0200 @@ -94,20 +94,22 @@ val default_project_dir = Path.explode("$ISABELLE_HOME_USER/scala_project") - def package_dir(source_file: Path): Option[Path] = + def package_name(source_file: Path): Option[String] = { val lines = split_lines(File.read(source_file)) val Package = """\s*\bpackage\b\s*(?:object\b\s*)?((?:\w|\.)+)\b.*""".r - lines.collectFirst( - { - case Package(name) => - if (source_file.is_java) Path.explode(space_explode('.', name).mkString("/")) - else Path.basic(name) - }) + lines.collectFirst({ case Package(name) => name }) } def the_package_dir(source_file: Path): Path = - package_dir(source_file) getOrElse error("Failed to guess package from " + source_file) + { + package_name(source_file) match { + case Some(name) => + if (source_file.is_java) Path.explode(space_explode('.', name).mkString("/")) + else Path.basic(name) + case None => error("Failed to guess package from " + source_file) + } + } def scala_project( project_dir: Path = default_project_dir,