annotate lphobos/build.sh @ 109:5ab8e92611f9 trunk

[svn r113] Added initial support for associative arrays (AAs). Fixed some problems with the string runtime support functions. Fixed initialization of array of structs. Fixed slice assignment where LHS is slice but RHS is dynamic array. Fixed problems with result of assignment expressions. Fixed foreach problems with key type mismatches.
author lindquist
date Wed, 21 Nov 2007 04:13:15 +0100
parents 288fe1029e1f
children 27b9f749d9fe
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
c53b6e3fe49a [svn r5] Initial commit. Most things are very rough.
lindquist
parents:
diff changeset
1 #!/bin/bash
c53b6e3fe49a [svn r5] Initial commit. Most things are very rough.
lindquist
parents:
diff changeset
2
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
3 echo "removing old objects"
62
b86e00b938a5 [svn r66] Added support for imaginary floating point types
lindquist
parents: 60
diff changeset
4 mkdir -p obj
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
5 rm -f obj/*.bc
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
6 rm -f ../lib/*.bc
1
c53b6e3fe49a [svn r5] Initial commit. Most things are very rough.
lindquist
parents:
diff changeset
7
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
8 echo "compiling contract runtime"
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
9 llvmdc internal/contract.d -c -of../lib/llvmdcore.bc -noruntime || exit 1
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
10
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
11 echo "compiling common runtime"
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
12 rebuild internal/arrays.d \
34
4648206ca213 [svn r38] * resizing dynamic arrays support
lindquist
parents: 16
diff changeset
13 internal/mem.d \
1
c53b6e3fe49a [svn r5] Initial commit. Most things are very rough.
lindquist
parents:
diff changeset
14 internal/moduleinit.d \
87
25d4fcce53f4 [svn r91] fixed some minor mistakes
lindquist
parents: 86
diff changeset
15 -c -oqobj -dc=llvmdc-posix || exit 1
1
c53b6e3fe49a [svn r5] Initial commit. Most things are very rough.
lindquist
parents:
diff changeset
16
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
17 echo "compiling module init backend"
9
dafae18f9c08 [svn r13] * Updated for LLVM 2.1
lindquist
parents: 1
diff changeset
18 llvm-as -f -o=obj/moduleinit_backend.bc internal/moduleinit_backend.ll || exit 1
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
19 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/internal.*.bc` ../lib/llvmdcore.bc obj/moduleinit_backend.bc || exit 1
1
c53b6e3fe49a [svn r5] Initial commit. Most things are very rough.
lindquist
parents:
diff changeset
20
c53b6e3fe49a [svn r5] Initial commit. Most things are very rough.
lindquist
parents:
diff changeset
21
58
2c3cd3596187 [svn r62] Added support for TypeInfo _Array, _Function, _Pointer, _Delegate, _Enum
lindquist
parents: 55
diff changeset
22 echo "compiling typeinfo 1"
108
288fe1029e1f [svn r112] Fixed 'case 1,2,3:' style case statements.
lindquist
parents: 107
diff changeset
23 rebuild typeinfos1.d -c -oqobj -dc=llvmdc-posix || exit 1
58
2c3cd3596187 [svn r62] Added support for TypeInfo _Array, _Function, _Pointer, _Delegate, _Enum
lindquist
parents: 55
diff changeset
24 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/typeinfo1.*.bc` ../lib/llvmdcore.bc || exit 1
2c3cd3596187 [svn r62] Added support for TypeInfo _Array, _Function, _Pointer, _Delegate, _Enum
lindquist
parents: 55
diff changeset
25
2c3cd3596187 [svn r62] Added support for TypeInfo _Array, _Function, _Pointer, _Delegate, _Enum
lindquist
parents: 55
diff changeset
26 echo "compiling typeinfo 2"
2c3cd3596187 [svn r62] Added support for TypeInfo _Array, _Function, _Pointer, _Delegate, _Enum
lindquist
parents: 55
diff changeset
27 rebuild typeinfos2.d -c -oqobj -dc=llvmdc-posix || exit 1
2c3cd3596187 [svn r62] Added support for TypeInfo _Array, _Function, _Pointer, _Delegate, _Enum
lindquist
parents: 55
diff changeset
28 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/typeinfo2.*.bc` ../lib/llvmdcore.bc || exit 1
2c3cd3596187 [svn r62] Added support for TypeInfo _Array, _Function, _Pointer, _Delegate, _Enum
lindquist
parents: 55
diff changeset
29
86
fd32135dca3e [svn r90] Major updates to the gen directory. Redesigned the 'elem' struct. Much more... !!!
lindquist
parents: 62
diff changeset
30 echo "compiling string foreach runtime support"
fd32135dca3e [svn r90] Major updates to the gen directory. Redesigned the 'elem' struct. Much more... !!!
lindquist
parents: 62
diff changeset
31 llvmdc internal/aApply.d -c -odobj || exit 1
fd32135dca3e [svn r90] Major updates to the gen directory. Redesigned the 'elem' struct. Much more... !!!
lindquist
parents: 62
diff changeset
32 llvmdc internal/aApplyR.d -c -odobj || exit 1
fd32135dca3e [svn r90] Major updates to the gen directory. Redesigned the 'elem' struct. Much more... !!!
lindquist
parents: 62
diff changeset
33 llvm-link -f -o=../lib/llvmdcore.bc obj/aApply.bc obj/aApplyR.bc ../lib/llvmdcore.bc || exit 1
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
34
94
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
35 echo "compiling array runtime support"
108
288fe1029e1f [svn r112] Fixed 'case 1,2,3:' style case statements.
lindquist
parents: 107
diff changeset
36 llvmdc internal/qsort2.d -c -odobj || exit 1
94
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
37 llvm-link -f -o=../lib/llvmdcore.bc obj/qsort2.bc ../lib/llvmdcore.bc || exit 1
108
288fe1029e1f [svn r112] Fixed 'case 1,2,3:' style case statements.
lindquist
parents: 107
diff changeset
38 llvmdc internal/adi.d -c -odobj || exit 1
94
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
39 llvm-link -f -o=../lib/llvmdcore.bc obj/adi.bc ../lib/llvmdcore.bc || exit 1
108
288fe1029e1f [svn r112] Fixed 'case 1,2,3:' style case statements.
lindquist
parents: 107
diff changeset
40 llvmdc internal/aaA.d -c -odobj || exit 1
288fe1029e1f [svn r112] Fixed 'case 1,2,3:' style case statements.
lindquist
parents: 107
diff changeset
41 llvm-link -f -o=../lib/llvmdcore.bc obj/aaA.bc ../lib/llvmdcore.bc || exit 1
94
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
42
98
6789050b5ad1 [svn r102] Further delayed emission of function bodies to avoid problems with circular-forward-references.
lindquist
parents: 94
diff changeset
43 echo "compiling object implementation"
6789050b5ad1 [svn r102] Further delayed emission of function bodies to avoid problems with circular-forward-references.
lindquist
parents: 94
diff changeset
44 llvmdc internal/objectimpl.d -c -odobj || exit 1
6789050b5ad1 [svn r102] Further delayed emission of function bodies to avoid problems with circular-forward-references.
lindquist
parents: 94
diff changeset
45 llvm-link -f -o=../lib/llvmdcore.bc obj/objectimpl.bc ../lib/llvmdcore.bc || exit 1
6789050b5ad1 [svn r102] Further delayed emission of function bodies to avoid problems with circular-forward-references.
lindquist
parents: 94
diff changeset
46
55
0ccfae271c45 [svn r59] Added support for C-style variadic functions. Currently only works on x86, x86-64 va_arg is broken in LLVM 2.1. PPC and PPC64 unknown.
lindquist
parents: 52
diff changeset
47 echo "compiling llvm runtime support"
94
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
48 rebuild llvmsupport.d -c -oqobj -dc=llvmdc-posix || exit 1
55
0ccfae271c45 [svn r59] Added support for C-style variadic functions. Currently only works on x86, x86-64 va_arg is broken in LLVM 2.1. PPC and PPC64 unknown.
lindquist
parents: 52
diff changeset
49 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/llvm.*.bc` ../lib/llvmdcore.bc || exit 1
0ccfae271c45 [svn r59] Added support for C-style variadic functions. Currently only works on x86, x86-64 va_arg is broken in LLVM 2.1. PPC and PPC64 unknown.
lindquist
parents: 52
diff changeset
50
94
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
51 echo "compiling garbage collector"
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
52 llvmdc gc/gclinux.d -c -odobj || exit 1
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
53 llvmdc gc/gcstub.d -c -odobj -Igc || exit 1
109
5ab8e92611f9 [svn r113] Added initial support for associative arrays (AAs).
lindquist
parents: 108
diff changeset
54 llvmdc gc/gcbits.d -c -odobj -Igc || exit 1
5ab8e92611f9 [svn r113] Added initial support for associative arrays (AAs).
lindquist
parents: 108
diff changeset
55 llvm-link -f -o=../lib/llvmdcore.bc obj/gclinux.bc obj/gcstub.bc obj/gcbits.bc ../lib/llvmdcore.bc || exit 1
94
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
56
86
fd32135dca3e [svn r90] Major updates to the gen directory. Redesigned the 'elem' struct. Much more... !!!
lindquist
parents: 62
diff changeset
57 echo "compiling phobos"
106
5b5194b25f33 [svn r110] Fixed typeinfo for classes.
lindquist
parents: 102
diff changeset
58 rebuild phobos.d -c -oqobj -dc=llvmdc-posix || exit 1
86
fd32135dca3e [svn r90] Major updates to the gen directory. Redesigned the 'elem' struct. Much more... !!!
lindquist
parents: 62
diff changeset
59 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/std.*.bc` ../lib/llvmdcore.bc || exit 1
fd32135dca3e [svn r90] Major updates to the gen directory. Redesigned the 'elem' struct. Much more... !!!
lindquist
parents: 62
diff changeset
60
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
61 echo "optimizing"
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
62 opt -f -std-compile-opts -o=../lib/llvmdcore.bc ../lib/llvmdcore.bc || exit 1
1
c53b6e3fe49a [svn r5] Initial commit. Most things are very rough.
lindquist
parents:
diff changeset
63
16
860524276608 [svn r20] * Added a simple compiletime std.stdio by downs
lindquist
parents: 9
diff changeset
64
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
65 echo "SUCCESS"