Port to x86-64 versions of Windows
[sbcl.git] / make-target-1.sh
1 #!/bin/sh
2 set -e
3
4 # This is a script to be run as part of make.sh. The only time you'd
5 # want to run it by itself is if you're trying to cross-compile the
6 # system or if you're doing some kind of troubleshooting.
7
8 # This software is part of the SBCL system. See the README file for
9 # more information.
10 #
11 # This software is derived from the CMU CL system, which was
12 # written at Carnegie Mellon University and released into the
13 # public domain. The software is in the public domain and is
14 # provided with absolutely no warranty. See the COPYING and CREDITS
15 # files for more information.
16
17 echo //entering make-target-1.sh
18
19 LANG=C
20 LC_ALL=C
21 export LANG LC_ALL
22
23 # Load our build configuration
24 . output/build-config
25
26 # Build the runtime system and symbol table (.nm) file.
27 #
28 # (This C build has to come after the first genesis in order to get
29 # the sbcl.h the C build needs, and come before the second genesis in
30 # order to produce the symbol table file that second genesis needs. It
31 # could come either before or after running the cross compiler; that
32 # doesn't matter.)
33 #
34 # Note that the latter requirement does not apply to sb-dynamic-core
35 # builds, since the cross compiler does not depend on symbol tables in
36 # that case.  Only because sbcl.nm is convenient for debugging purposes
37 # is its generation left enabled even for those builds.
38 echo //building runtime system and symbol table file
39
40 # The clean is needed for Darwin's readonlyspace hack.
41 $GNUMAKE -C src/runtime clean
42 # $GNUMAKE -C src/runtime depend
43 $GNUMAKE -C src/runtime all
44
45 # Use a little C program to grab stuff from the C header files and
46 # smash it into Lisp source code.
47 $GNUMAKE -C tools-for-build -I../src/runtime grovel-headers
48 tools-for-build/grovel-headers > output/stuff-groveled-from-headers.lisp
49
50 $GNUMAKE -C src/runtime after-grovel-headers