40 } |
40 } |
41 |
41 |
42 progress.echo("Build started for documentation " + commas_quote(selected_docs)) |
42 progress.echo("Build started for documentation " + commas_quote(selected_docs)) |
43 |
43 |
44 val res1 = |
44 val res1 = |
45 Build.build(options, progress, requirements = true, build_heap = true, |
45 Build.build(options, Sessions.Selection(requirements = true, sessions = sessions), |
46 max_jobs = max_jobs, sessions = sessions) |
46 progress = progress, build_heap = true, max_jobs = max_jobs) |
47 if (res1.ok) { |
47 if (res1.ok) { |
48 Isabelle_System.with_tmp_dir("document_output")(output => |
48 Isabelle_System.with_tmp_dir("document_output")(output => |
49 { |
49 { |
50 val res2 = |
50 val res2 = |
51 Build.build( |
51 Build.build( |
52 options.bool.update("browser_info", false). |
52 options.bool.update("browser_info", false). |
53 string.update("document", "pdf"). |
53 string.update("document", "pdf"). |
54 string.update("document_output", output.implode), |
54 string.update("document_output", output.implode), |
55 progress, clean_build = true, max_jobs = max_jobs, sessions = sessions) |
55 Sessions.Selection(sessions = sessions), |
|
56 progress = progress, clean_build = true, max_jobs = max_jobs) |
56 if (res2.ok) { |
57 if (res2.ok) { |
57 val doc_dir = Path.explode("~~/doc") |
58 val doc_dir = Path.explode("~~/doc") |
58 for (doc <- selected_docs) { |
59 for (doc <- selected_docs) { |
59 val name = Path.explode(doc + ".pdf") |
60 val name = Path.explode(doc + ".pdf") |
60 File.copy(output + name, doc_dir + name) |
61 File.copy(output + name, doc_dir + name) |