/[cmucl]/src/tools/cross-build-world.sh
ViewVC logotype

Contents of /src/tools/cross-build-world.sh

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations)
Fri Oct 17 18:05:23 2003 UTC (10 years, 6 months ago) by toy
Branch: MAIN
CVS Tags: snapshot-2003-11, snapshot-2003-12
File MIME type: application/x-sh
Initial import of Pierre Mai's build scripts (slightly modified from
his 2.4 release).
1 toy 1.1 #!/bin/sh
2    
3     if [ "$1" = "" -o "$2" = "" ]
4     then
5     echo "Usage: $0 target-directory cross-directory cross-compiler-script [build-binary] [build-flags...]"
6     exit 1
7     fi
8    
9     if [ ! -d "$1" ]
10     then
11     echo "$1 isn't a directory"
12     exit 2
13     fi
14    
15     if [ -f "$2" ]
16     then
17     echo "$2 exists but isn't a directory"
18     exit 2
19     fi
20    
21     if [ ! -f "$3" ]
22     then
23     echo "$3 doesn't exist, or isn't a normal file"
24     fi
25    
26     TARGET="`echo $1 | sed 's:/*$::'`"
27     CROSS="`echo $2 | sed 's:/*$::'`"
28     SCRIPT="$3"
29     LISP="${4:-lisp}"
30     if [ $# -ge 4 ]
31     then
32     shift 4
33     else
34     shift 3
35     fi
36    
37     if [ ! -d "$CROSS" ]
38     then
39     # Create a directory tree that mirrors the source directory tree
40     find src -name 'CVS' -prune -o -type d -print | \
41     sed "s:^src:$CROSS:g" | xargs mkdir
42     fi
43    
44     $LISP "$@" -noinit -nositeinit <<EOF
45     (in-package :cl-user)
46    
47     ;;(setf lisp::*enable-package-locked-errors* nil)
48    
49     (setf (ext:search-list "target:")
50     '("$CROSS/" "src/"))
51    
52     (when (probe-file "$TARGET/cross-bootstrap.lisp")
53     (load "$TARGET/cross-bootstrap.lisp"))
54    
55     (load "target:code/exports")
56     (load "target:tools/setup" :if-source-newer :load-source)
57     (comf "target:tools/setup" :load t)
58    
59     (setq *gc-verbose* nil *interactive* nil)
60    
61     (load "$SCRIPT")
62    
63     (pushnew :bootstrap *features*)
64    
65     (setf (ext:search-list "target:")
66     '("$TARGET/" "src/"))
67    
68     (when (probe-file "target:bootstrap.lisp")
69     (load "target:bootstrap.lisp"))
70    
71     (load "target:setenv")
72    
73     (pushnew :no-pcl *features*)
74     (pushnew :no-clx *features*)
75     (pushnew :no-clm *features*)
76     (pushnew :no-hemlock *features*)
77    
78     (load "target:tools/worldcom")
79     #-(or no-compiler runtime) (load "target:tools/comcom")
80     ;; Compile at least new-genesis, so that genesis doesn't take ages
81     #+(or no-compiler runtime) (comf "target:compiler/generic/new-genesis")
82     #-(or no-pcl runtime) (load "target:tools/pclcom")
83    
84     (setq *gc-verbose* t *interactive* t)
85    
86     (load "target:tools/worldbuild")
87     (ext:quit)
88     EOF

  ViewVC Help
Powered by ViewVC 1.1.5