0.9.0.26:
[sbcl.git] / make-target-1.sh
1 #!/bin/sh
2
3 # This is a script to be run as part of make.sh. The only time you'd
4 # want to run it by itself is if you're trying to cross-compile the
5 # system or if you're doing some kind of troubleshooting.
6
7 # This software is part of the SBCL system. See the README file for
8 # more information.
9 #
10 # This software is derived from the CMU CL system, which was
11 # written at Carnegie Mellon University and released into the
12 # public domain. The software is in the public domain and is
13 # provided with absolutely no warranty. See the COPYING and CREDITS
14 # files for more information.
15
16 echo //entering make-target-1.sh
17
18 LANG=C
19 export LANG
20
21 # Build the runtime system and symbol table (.nm) file.
22 #
23 # (This C build has to come after the first genesis in order to get
24 # the sbcl.h the C build needs, and come before the second genesis in
25 # order to produce the symbol table file that second genesis needs. It 
26 # could come either before or after running the cross compiler; that
27 # doesn't matter.)
28 echo //building runtime system and symbol table file
29 cd ./src/runtime
30 $GNUMAKE clean  || exit 1
31 $GNUMAKE depend || exit 1
32 $GNUMAKE all    || exit 1
33 cd ../..
34
35 # Use a little C program to grab stuff from the C header files and
36 # smash it into Lisp source code.
37 cd ./tools-for-build
38 $GNUMAKE -I../src/runtime grovel-headers || exit 1
39 cd ..
40 tools-for-build/grovel-headers > output/stuff-groveled-from-headers.lisp
41
42 # after-grovel-headers may not exist for all platforms (used for
43 # Darwin hacks)
44 cd ./src/runtime
45 $GNUMAKE after-grovel-headers || true
46 cd ..