remove math.blas.syntax and merge parsing words into math.blas.vectors/matrices
[factor/jcg.git] / extra / update / update.factor
blobba09cc3f3d48c4d215e993ab53fc6f246ad56ce8
1 USING: kernel system sequences io.files io.directories
2 io.pathnames io.launcher bootstrap.image http.client update.util ;
3 IN: update
5 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
7 : run-command ( cmd -- ) to-strings try-process ;
9 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
11 : git-pull-clean ( -- )
12   image parent-directory
13     [
14       { "git" "pull" "git://factorcode.org/git/factor.git" branch-name }
15       run-command
16     ]
17   with-directory ;
19 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
21 : remote-clean-image ( -- url )
22   { "http://factorcode.org/images/clean/" platform "/" my-boot-image-name }
23   to-string ;
25 : download-clean-image ( -- ) remote-clean-image download ;
27 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
29 : make-clean ( -- ) { gnu-make "clean" } run-command ;
30 : make       ( -- ) { gnu-make         } run-command ;
31 : boot       ( -- ) { "./factor" { "-i=" my-boot-image-name } } run-command ;
33 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
35 : rebuild ( -- )
36   image parent-directory
37     [
38       download-clean-image
39       make-clean
40       make
41       boot
42     ]
43   with-directory ;
45 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
47 : update ( -- )
48   image parent-directory
49     [
50       git-id
51       git-pull-clean
52       git-id
53       = not
54         [ rebuild ]
55       when
56     ]
57   with-directory ;
59 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
61 MAIN: update