equal
deleted
inserted
replaced
224 Isabelle_System.gnutar(args, cwd = dir.file).check |
224 Isabelle_System.gnutar(args, cwd = dir.file).check |
225 |
225 |
226 private def tar_options: String = |
226 private def tar_options: String = |
227 if (Platform.is_macos) "--owner=root --group=staff" else "--owner=root --group=root" |
227 if (Platform.is_macos) "--owner=root --group=staff" else "--owner=root --group=root" |
228 |
228 |
229 private val default_platform_families = |
229 private val default_platform_families: List[Platform.Family.Value] = |
230 List(Platform.Family.linux, Platform.Family.windows, Platform.Family.macos) |
230 List(Platform.Family.linux, Platform.Family.windows, Platform.Family.macos) |
231 |
231 |
232 def build_release(base_dir: Path, |
232 def build_release(base_dir: Path, |
233 options: Options, |
233 options: Options, |
234 components_base: Option[Path] = None, |
234 components_base: Option[Path] = None, |
790 val more_args = getopts(args) |
790 val more_args = getopts(args) |
791 val base_dir = more_args match { case List(base_dir) => base_dir case _ => getopts.usage() } |
791 val base_dir = more_args match { case List(base_dir) => base_dir case _ => getopts.usage() } |
792 |
792 |
793 val progress = new Console_Progress() |
793 val progress = new Console_Progress() |
794 |
794 |
|
795 if (platform_families.contains(Platform.Family.windows) && !Isabelle_System.bash("7z i").ok) |
|
796 error("Building for windows requires 7z") |
|
797 |
795 build_release(Path.explode(base_dir), options, components_base = components_base, |
798 build_release(Path.explode(base_dir), options, components_base = components_base, |
796 progress = progress, rev = rev, afp_rev = afp_rev, official_release = official_release, |
799 progress = progress, rev = rev, afp_rev = afp_rev, official_release = official_release, |
797 proper_release_name = proper_release_name, website = website, |
800 proper_release_name = proper_release_name, website = website, |
798 platform_families = |
801 platform_families = |
799 if (platform_families.isEmpty) default_platform_families |
802 if (platform_families.isEmpty) default_platform_families |