Mercurial > projects > ldc
comparison lphobos/build.sh @ 123:7f9a0a58394b trunk
[svn r127] Updated the lphobos build scripts a little. Created a new rebuild profile.
Removed some potentially very long logging lines.
Added support for inner classes.
author | lindquist |
---|---|
date | Wed, 28 Nov 2007 03:01:51 +0100 |
parents | 36ab367572df |
children | 5825d48b27d1 |
comparison
equal
deleted
inserted
replaced
122:36ab367572df | 123:7f9a0a58394b |
---|---|
3 echo "removing old objects" | 3 echo "removing old objects" |
4 mkdir -p obj | 4 mkdir -p obj |
5 rm -f obj/*.bc | 5 rm -f obj/*.bc |
6 rm -f ../lib/*.bc | 6 rm -f ../lib/*.bc |
7 | 7 |
8 LLVMDCFLAGS="-c -odobj" | |
9 REBUILDFLAGS="-dc=llvmdc-posix-internal -c -oqobj" | |
10 | |
8 echo "compiling contract runtime" | 11 echo "compiling contract runtime" |
9 llvmdc internal/contract.d -c -of../lib/llvmdcore.bc -noruntime || exit 1 | 12 llvmdc internal/contract.d -c -of../lib/llvmdcore.bc -noruntime || exit 1 |
10 | 13 |
11 echo "compiling common runtime" | 14 echo "compiling common runtime" |
12 rebuild internal/arrays.d \ | 15 rebuild internal/arrays.d \ |
13 internal/mem.d \ | 16 internal/mem.d \ |
14 -c -oqobj -dc=llvmdc-posix || exit 1 | 17 $REBUILDFLAGS || exit 1 |
15 | 18 |
16 echo "compiling module init backend" | 19 echo "compiling module init backend" |
17 llvm-as -f -o=obj/moduleinit_backend.bc internal/moduleinit_backend.ll || exit 1 | 20 llvm-as -f -o=obj/moduleinit_backend.bc internal/moduleinit_backend.ll || exit 1 |
18 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/internal.*.bc` ../lib/llvmdcore.bc obj/moduleinit_backend.bc || exit 1 | 21 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/internal.*.bc` ../lib/llvmdcore.bc obj/moduleinit_backend.bc || exit 1 |
19 | 22 |
20 echo "compiling typeinfo 1" | 23 echo "compiling typeinfo 1" |
21 rebuild typeinfos1.d -c -oqobj -dc=llvmdc-posix || exit 1 | 24 rebuild typeinfos1.d $REBUILDFLAGS || exit 1 |
22 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/typeinfo1.*.bc` ../lib/llvmdcore.bc || exit 1 | 25 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/typeinfo1.*.bc` ../lib/llvmdcore.bc || exit 1 |
23 | 26 |
24 echo "compiling typeinfo 2" | 27 echo "compiling typeinfo 2" |
25 rebuild typeinfos2.d -c -oqobj -dc=llvmdc-posix || exit 1 | 28 rebuild typeinfos2.d $REBUILDFLAGS || exit 1 |
26 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/typeinfo2.*.bc` ../lib/llvmdcore.bc || exit 1 | 29 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/typeinfo2.*.bc` ../lib/llvmdcore.bc || exit 1 |
27 | 30 |
28 echo "compiling object/interface casting runtime support" | 31 echo "compiling object/interface casting runtime support" |
29 llvmdc internal/cast.d -c -odobj || exit 1 | 32 llvmdc internal/cast.d $LLVMDCFLAGS || exit 1 |
30 llvm-link -f -o=../lib/llvmdcore.bc obj/cast.bc ../lib/llvmdcore.bc || exit 1 | 33 llvm-link -f -o=../lib/llvmdcore.bc obj/cast.bc ../lib/llvmdcore.bc || exit 1 |
31 | 34 |
32 echo "compiling string foreach/switch runtime support" | 35 echo "compiling string foreach/switch runtime support" |
33 llvmdc internal/aApply.d -c -odobj || exit 1 | 36 llvmdc internal/aApply.d $LLVMDCFLAGS || exit 1 |
34 llvmdc internal/aApplyR.d -c -odobj || exit 1 | 37 llvmdc internal/aApplyR.d $LLVMDCFLAGS || exit 1 |
35 llvmdc internal/switch.d -c -odobj || exit 1 | 38 llvmdc internal/switch.d $LLVMDCFLAGS || exit 1 |
36 llvm-link -f -o=../lib/llvmdcore.bc obj/aApply.bc obj/aApplyR.bc obj/switch.bc ../lib/llvmdcore.bc || exit 1 | 39 llvm-link -f -o=../lib/llvmdcore.bc obj/aApply.bc obj/aApplyR.bc obj/switch.bc ../lib/llvmdcore.bc || exit 1 |
37 | 40 |
38 echo "compiling array runtime support" | 41 echo "compiling array runtime support" |
39 llvmdc internal/qsort2.d -c -odobj || exit 1 | 42 llvmdc internal/qsort2.d $LLVMDCFLAGS || exit 1 |
40 llvm-link -f -o=../lib/llvmdcore.bc obj/qsort2.bc ../lib/llvmdcore.bc || exit 1 | 43 llvm-link -f -o=../lib/llvmdcore.bc obj/qsort2.bc ../lib/llvmdcore.bc || exit 1 |
41 llvmdc internal/adi.d -c -odobj || exit 1 | 44 llvmdc internal/adi.d $LLVMDCFLAGS || exit 1 |
42 llvm-link -f -o=../lib/llvmdcore.bc obj/adi.bc ../lib/llvmdcore.bc || exit 1 | 45 llvm-link -f -o=../lib/llvmdcore.bc obj/adi.bc ../lib/llvmdcore.bc || exit 1 |
43 llvmdc internal/aaA.d -c -odobj || exit 1 | 46 llvmdc internal/aaA.d $LLVMDCFLAGS || exit 1 |
44 llvm-link -f -o=../lib/llvmdcore.bc obj/aaA.bc ../lib/llvmdcore.bc || exit 1 | 47 llvm-link -f -o=../lib/llvmdcore.bc obj/aaA.bc ../lib/llvmdcore.bc || exit 1 |
45 | 48 |
46 echo "compiling object implementation" | 49 echo "compiling object implementation" |
47 llvmdc internal/objectimpl.d -c -odobj || exit 1 | 50 llvmdc internal/objectimpl.d $LLVMDCFLAGS || exit 1 |
48 llvm-link -f -o=../lib/llvmdcore.bc obj/objectimpl.bc ../lib/llvmdcore.bc || exit 1 | 51 llvm-link -f -o=../lib/llvmdcore.bc obj/objectimpl.bc ../lib/llvmdcore.bc || exit 1 |
49 | 52 |
50 echo "compiling llvm runtime support" | 53 echo "compiling llvm runtime support" |
51 rebuild llvmsupport.d -c -oqobj -dc=llvmdc-posix || exit 1 | 54 rebuild llvmsupport.d $REBUILDFLAGS || exit 1 |
52 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/llvm.*.bc` ../lib/llvmdcore.bc || exit 1 | 55 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/llvm.*.bc` ../lib/llvmdcore.bc || exit 1 |
53 | 56 |
54 echo "compiling garbage collector" | 57 echo "compiling garbage collector" |
55 llvmdc gc/gclinux.d -c -odobj || exit 1 | 58 llvmdc gc/gclinux.d $LLVMDCFLAGS || exit 1 |
56 llvmdc gc/gcstub.d -c -odobj -Igc || exit 1 | 59 llvmdc gc/gcstub.d $LLVMDCFLAGS -Igc || exit 1 |
57 llvmdc gc/gcbits.d -c -odobj -Igc || exit 1 | 60 llvmdc gc/gcbits.d $LLVMDCFLAGS -Igc || exit 1 |
58 llvm-link -f -o=../lib/llvmdcore.bc obj/gclinux.bc obj/gcstub.bc obj/gcbits.bc ../lib/llvmdcore.bc || exit 1 | 61 llvm-link -f -o=../lib/llvmdcore.bc obj/gclinux.bc obj/gcstub.bc obj/gcbits.bc ../lib/llvmdcore.bc || exit 1 |
59 | 62 |
60 echo "compiling phobos" | 63 echo "compiling phobos" |
61 rebuild phobos.d -c -oqobj -dc=llvmdc-posix || exit 1 | 64 rebuild phobos.d $REBUILDFLAGS || exit 1 |
62 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/std.*.bc` ../lib/llvmdcore.bc || exit 1 | 65 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/std.*.bc` ../lib/llvmdcore.bc || exit 1 |
63 | 66 |
64 echo "optimizing" | 67 echo "optimizing" |
65 opt -f -std-compile-opts -o=../lib/llvmdcore.bc ../lib/llvmdcore.bc || exit 1 | 68 opt -f -std-compile-opts -o=../lib/llvmdcore.bc ../lib/llvmdcore.bc || exit 1 |
66 | 69 |