annotate lphobos/build.sh @ 106:5b5194b25f33 trunk

[svn r110] Fixed typeinfo for classes.
author lindquist
date Mon, 19 Nov 2007 06:01:48 +0100
parents 027b8d8b71ec
children 3efbcc81ba45
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"
106
5b5194b25f33 [svn r110] Fixed typeinfo for classes.
lindquist
parents: 102
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"
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
36 llvmdc internal/qsort2.d -c -odobj || exit
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
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
38 llvmdc internal/adi.d -c -odobj || exit
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
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
40
98
6789050b5ad1 [svn r102] Further delayed emission of function bodies to avoid problems with circular-forward-references.
lindquist
parents: 94
diff changeset
41 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
42 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
43 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
44
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
45 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
46 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
47 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
48
94
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
49 echo "compiling garbage collector"
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
50 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
51 llvmdc gc/gcstub.d -c -odobj -Igc || exit 1
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
52 llvm-link -f -o=../lib/llvmdcore.bc obj/gclinux.bc obj/gcstub.bc ../lib/llvmdcore.bc || exit 1
61615fa85940 [svn r98] Added support for std.c.stdlib.alloca via pragma(LLVM_internal, "alloca").
lindquist
parents: 87
diff changeset
53
86
fd32135dca3e [svn r90] Major updates to the gen directory. Redesigned the 'elem' struct. Much more... !!!
lindquist
parents: 62
diff changeset
54 echo "compiling phobos"
106
5b5194b25f33 [svn r110] Fixed typeinfo for classes.
lindquist
parents: 102
diff changeset
55 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
56 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
57
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
58 echo "optimizing"
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
59 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
60
16
860524276608 [svn r20] * Added a simple compiletime std.stdio by downs
lindquist
parents: 9
diff changeset
61
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
62 echo "SUCCESS"