]> gitweb.factorcode.org Git - factor.git/blob - extra/mason/mason.factor
Merge branch 'master' into experimental (untested!)
[factor.git] / extra / mason / mason.factor
1 ! Copyright (C) 2008 Eduardo Cavazos, Slava Pestov.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: kernel debugger io io.files threads debugger continuations
4 namespaces accessors calendar mason.common mason.updates
5 mason.build mason.email ;
6 IN: mason
7
8 : build-loop-error ( error -- )
9     error-continuation get call>> email-error ;
10
11 : build-loop-fatal ( error -- )
12     "FATAL BUILDER ERROR:" print
13     error. flush ;
14
15 : build-loop ( -- )
16     ?prepare-build-machine
17     [
18         [
19             builds/factor set-current-directory
20             new-code-available? [ build ] when
21         ] [
22             build-loop-error
23         ] recover
24     ] [
25         build-loop-fatal
26     ] recover
27     5 minutes sleep
28     build-loop ;
29
30 MAIN: build-loop