1 ! Copyright (C) 2008, 2011 Eduardo Cavazos, Slava Pestov.
2 ! See https://factorcode.org/license.txt for BSD license.
3 USING: arrays calendar combinators continuations io.backend
4 io.directories io.pathnames kernel mason.child mason.cleanup
5 mason.common mason.config mason.docs mason.git mason.notify
6 mason.platform mason.release mason.updates namespaces sequences
10 : create-build-dir ( -- )
11 now datestamp stamp set
12 build-dir make-directory ;
14 : enter-build-dir ( -- )
15 "Building in directory " build-dir append print-timestamp
16 build-dir set-current-directory ;
19 "Cloning GIT repository" print-timestamp
20 "git" "clone" builds-dir get "factor" append-path absolute-path 3array
21 short-running-process ;
24 builds-dir get target-boot-image-name append-path
25 [ "." copy-file-into ] [ "factor" copy-file-into ] bi ;
28 "factor" [ git-id ] with-directory {
30 [ "factor/git-id" to-file ]
31 [ current-git-id set ]
32 [ notify-begin-build ]
48 [ notify-upload upload-docs release ] when
52 ] [ cleanup-build ] finally