File: build-world.sh

package info (click to toggle)
cmucl 21d-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 45,328 kB
  • sloc: lisp: 378,758; ansic: 30,673; asm: 2,977; sh: 1,417; makefile: 357; csh: 31
file content (79 lines) | stat: -rwxr-xr-x 1,767 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#!/bin/sh

if [ "$1" = "" ]
then
	echo "Usage: $0 target-directory [build-binary] [build-flags...]"
	exit 1
fi

if [ ! -d "$1" ]
then
	echo "$1 isn't a directory"
	exit 2
fi

TARGET="`echo $1 | sed 's:/*$::'`"
LISP="${2:-cmucl}"
if [ $# -ge 2 ]
then
	shift 2
else
	shift
fi

if [ -n "$MAKE_POT" ]; then
    GETFMT="(map nil #'(lambda (f) (stream::find-external-format (car f))) (list-all-external-formats))"
    SAVEPOT='(intl::dump-pot-files :output-directory "default:src/i18n/locale/")'
fi

if [ "$GIT_FILE_COMMENT" = "no" ]; then
    GIT_FILE_COMMENT="(setf c::*file-comment-from-git* nil)"
else
    GIT_FILE_COMMENT=
fi
    
$LISP "$@" -noinit -nositeinit <<EOF
(in-package :cl-user)

;;(setf lisp::*enable-package-locked-errors* nil)

(setf *default-pathname-defaults* (ext:default-directory))
(intl::install)
(intl::translation-enable)

(setf (ext:search-list "target:")
      '("$TARGET/" "src/"))

(when (probe-file "target:bootstrap.lisp")
  (load "target:bootstrap.lisp"))

(load "target:setenv")

(pushnew :no-clx *features*)
(pushnew :no-clm *features*)
(pushnew :no-hemlock *features*)

(load "target:code/exports")
(load "target:tools/setup" :if-source-newer :load-source)
(comf "target:tools/setup" :load t)

(setq *gc-verbose* nil)
(setq *interactive* ${INTERACTIVE:-nil})
(setq debug:*debug-print-level* nil)
(setq debug:*debug-print-length* nil)

$GIT_FILE_COMMENT

(load "target:tools/worldcom")
#-(or no-compiler runtime) (load "target:tools/comcom")
;; Compile at least new-genesis, so that genesis doesn't take ages
#+(or no-compiler runtime) (comf "target:compiler/generic/new-genesis")
#-(or no-pcl runtime) (load "target:tools/pclcom")

$GETFMT
$SAVEPOT
(setq *gc-verbose* t *interactive* t)

(load "target:tools/worldbuild")
(ext:quit)
EOF