annotate lphobos/build.sh @ 73:b706170e24a9 trunk

[svn r77] Fixed foreach on slice. Fixed some nested function problems when accessing outer function parameters. Major changes to handling of structs. Initial support for unions. Probably more...
author lindquist
date Wed, 31 Oct 2007 03:11:32 +0100
parents b86e00b938a5
children fd32135dca3e
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 \
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
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
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
21 echo "compiling object implementation"
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
22 llvmdc internal/objectimpl.d -c -odobj || exit 1
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
23 llvm-link -f -o=../lib/llvmdcore.bc obj/objectimpl.bc ../lib/llvmdcore.bc || exit 1
1
c53b6e3fe49a [svn r5] Initial commit. Most things are very rough.
lindquist
parents:
diff changeset
24
58
2c3cd3596187 [svn r62] Added support for TypeInfo _Array, _Function, _Pointer, _Delegate, _Enum
lindquist
parents: 55
diff changeset
25 echo "compiling typeinfo 1"
2c3cd3596187 [svn r62] Added support for TypeInfo _Array, _Function, _Pointer, _Delegate, _Enum
lindquist
parents: 55
diff changeset
26 rebuild typeinfos1.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
27 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
28
2c3cd3596187 [svn r62] Added support for TypeInfo _Array, _Function, _Pointer, _Delegate, _Enum
lindquist
parents: 55
diff changeset
29 echo "compiling typeinfo 2"
2c3cd3596187 [svn r62] Added support for TypeInfo _Array, _Function, _Pointer, _Delegate, _Enum
lindquist
parents: 55
diff changeset
30 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
31 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
32
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
33
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
34 echo "compiling llvm runtime support"
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
35 rebuild llvmsupport.d -c -oqobj -dc=llvmdc-posix || exit
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
36 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
37
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
38 echo "optimizing"
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
39 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
40
16
860524276608 [svn r20] * Added a simple compiletime std.stdio by downs
lindquist
parents: 9
diff changeset
41 # build phobos
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
42 echo "compiling phobos"
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
43 rebuild phobos.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
44 llvm-link -f -o=../lib/lphobos.bc `ls obj/std.*.bc` || exit 1
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
45 opt -f -std-compile-opts -o=../lib/lphobos.bc ../lib/lphobos.bc || exit 1
16
860524276608 [svn r20] * Added a simple compiletime std.stdio by downs
lindquist
parents: 9
diff changeset
46
52
0c77619e803b [svn r56] Initial support for TypeInfo.
lindquist
parents: 34
diff changeset
47 echo "SUCCESS"