# HG changeset patch # User wenzelm # Date 1707167023 -3600 # Node ID 163b554af747a650da03082d57e8e5b1d845507d # Parent 157de27b0863cc8c6fac2564ce2f0b38573d36cf# Parent 37e57ac55559d42fa73e3a98be978d9f4c4db881 merged; diff -r 157de27b0863 -r 163b554af747 Admin/components/bundled-windows --- a/Admin/components/bundled-windows Fri Jan 19 13:56:26 2024 +0100 +++ b/Admin/components/bundled-windows Mon Feb 05 22:03:43 2024 +0100 @@ -1,3 +1,3 @@ #additional components to be bundled for release cygwin-20230711-1 -windows_app-20240204 +windows_app-20240205 diff -r 157de27b0863 -r 163b554af747 Admin/components/components.sha1 --- a/Admin/components/components.sha1 Fri Jan 19 13:56:26 2024 +0100 +++ b/Admin/components/components.sha1 Mon Feb 05 22:03:43 2024 +0100 @@ -542,6 +542,7 @@ 9e96ba128a0617a9020a178781df49d48c997e19 windows_app-20181006.tar.gz 4883f93efb27ae51fb2cc0e1f52309728f2dc407 windows_app-20240202.tar.gz 5269b9e38fe58be10272d6817dbfd08b67b312e7 windows_app-20240204.tar.gz +94fecdab25ddc52b5afde4ab3f017a3c14c656c8 windows_app-20240205.tar.gz 1c36a840320dfa9bac8af25fc289a4df5ea3eccb xz-java-1.2-1.tar.gz 2ae13aa17d0dc95ce254a52f1dba10929763a10d xz-java-1.2.tar.gz c22196148fcace5443a933238216cff5112948df xz-java-1.5.tar.gz diff -r 157de27b0863 -r 163b554af747 src/Pure/Admin/component_windows_app.scala --- a/src/Pure/Admin/component_windows_app.scala Fri Jan 19 13:56:26 2024 +0100 +++ b/src/Pure/Admin/component_windows_app.scala Mon Feb 05 22:03:43 2024 +0100 @@ -11,7 +11,7 @@ /* resources */ def tool_platform(): String = { - require(Platform.is_linux, "Linux platform required") + require(Platform.is_unix, "Linux or macOS platform required") Isabelle_Platform.self.ISABELLE_PLATFORM64 } @@ -34,7 +34,6 @@ "https://github.com/chrislake/7zsfxmm/releases/download/1.7.1.3901/7zsd_extra_171_3901.7z" def build_windows_app( - build_binutils: Boolean = false, launch4j_url: String = default_launch4j_url, binutils_url: String = default_binutils_url, sfx_url: String = default_sfx_url, @@ -67,23 +66,21 @@ /* GNU binutils */ - if (build_binutils) { - Isabelle_System.download_file(binutils_url, download_tar, progress = progress) - Isabelle_System.extract(download_tar, tmp_dir, strip = true) + Isabelle_System.download_file(binutils_url, download_tar, progress = progress) + Isabelle_System.extract(download_tar, tmp_dir, strip = true) - progress.echo("Building GNU binutils for " + platform_name + " ...") - val build_script = - List("""./configure --prefix="$PWD/target" --with-windres --with-ld --target=x86_64-w64-mingw32""", - "make", "make install") - Isabelle_System.bash(build_script.mkString(" && "), cwd = tmp_dir.file, - progress_stdout = progress.echo(_, verbose = true), - progress_stderr = progress.echo(_, verbose = true)).check + progress.echo("Building GNU binutils for " + platform_name + " ...") + val build_script = + List("""./configure --prefix="$PWD/target" --target=x86_64-w64-mingw32""", + "make", "make install") + Isabelle_System.bash(build_script.mkString(" && "), cwd = tmp_dir.file, + progress_stdout = progress.echo(_, verbose = true), + progress_stderr = progress.echo(_, verbose = true)).check - for (name <- List("ld", "windres")) { - Isabelle_System.copy_file( - tmp_dir + Path.explode("target/bin") + Path.basic("x86_64-w64-mingw32-" + name), - platform_bin_dir + Path.basic(name)) - } + for (name <- List("ld", "windres")) { + Isabelle_System.copy_file( + tmp_dir + Path.explode("target/bin") + Path.basic("x86_64-w64-mingw32-" + name), + platform_bin_dir + Path.basic(name)) } @@ -106,7 +103,7 @@ * Application launcher: http://launch4j.sourceforge.net * Platform binaries "ld" and "windres" from GNU binutils: - """ + binutils_url + """ + """ + binutils_url + build_script.mkString("\n\n ", "\n ", "") + """ * Self-extracting installer: """ + sfx_url + """ @@ -139,7 +136,6 @@ "build windows_app component from GNU binutils and launch4j", Scala_Project.here, { args => - var build_binutils = false var target_dir = Path.current var launch4j_url = default_launch4j_url var binutils_url = default_binutils_url @@ -162,7 +158,6 @@ Build Isabelle windows_app component from GNU binutils and launch4j. """, - "B" -> (_ => build_binutils = true), "D:" -> (arg => target_dir = Path.explode(arg)), "U:" -> (arg => launch4j_url = arg), "V:" -> (arg => binutils_url = arg), @@ -174,8 +169,7 @@ val progress = new Console_Progress(verbose = verbose) - build_windows_app(build_binutils = build_binutils, - launch4j_url = launch4j_url, binutils_url = binutils_url, + build_windows_app(launch4j_url = launch4j_url, binutils_url = binutils_url, sfx_url = sfx_url, progress = progress, target_dir = target_dir) }) }