Mercurial > projects > ldc
annotate lphobos/build.sh @ 55:0ccfae271c45 trunk
[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.
Updates to runtime. Rebuild!
author | lindquist |
---|---|
date | Wed, 24 Oct 2007 22:18:06 +0200 |
parents | 0c77619e803b |
children | 2c3cd3596187 |
rev | line source |
---|---|
1 | 1 #!/bin/bash |
2 | |
52 | 3 echo "removing old objects" |
4 rm -f obj/*.bc | |
5 rm -f ../lib/*.bc | |
1 | 6 |
52 | 7 echo "compiling contract runtime" |
8 llvmdc internal/contract.d -c -of../lib/llvmdcore.bc -noruntime || exit 1 | |
9 | |
10 echo "compiling common runtime" | |
11 rebuild internal/arrays.d \ | |
34 | 12 internal/mem.d \ |
1 | 13 internal/moduleinit.d \ |
52 | 14 -c -oqobj -dc=llvmdc-posix || exit 1 |
1 | 15 |
52 | 16 echo "compiling module init backend" |
9 | 17 llvm-as -f -o=obj/moduleinit_backend.bc internal/moduleinit_backend.ll || exit 1 |
52 | 18 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/internal.*.bc` ../lib/llvmdcore.bc obj/moduleinit_backend.bc || exit 1 |
1 | 19 |
52 | 20 echo "compiling object implementation" |
21 llvmdc internal/objectimpl.d -c -odobj || exit 1 | |
22 llvm-link -f -o=../lib/llvmdcore.bc obj/objectimpl.bc ../lib/llvmdcore.bc || exit 1 | |
1 | 23 |
52 | 24 echo "compiling typeinfos" |
25 rebuild typeinfos.d -c -oqobj -dc=llvmdc-posix || exit 1 | |
26 llvm-link -f -o=../lib/llvmdcore.bc `ls obj/typeinfo.*.bc` ../lib/llvmdcore.bc || exit 1 | |
27 | |
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
|
28 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
|
29 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
|
30 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
|
31 |
52 | 32 echo "optimizing" |
33 opt -f -std-compile-opts -o=../lib/llvmdcore.bc ../lib/llvmdcore.bc || exit 1 | |
1 | 34 |
16
860524276608
[svn r20] * Added a simple compiletime std.stdio by downs
lindquist
parents:
9
diff
changeset
|
35 # build phobos |
52 | 36 echo "compiling phobos" |
37 rebuild phobos.d -c -oqobj -dc=llvmdc-posix || exit 1 | |
38 llvm-link -f -o=../lib/lphobos.bc `ls phobos_obj/*.bc` || exit 1 | |
39 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
|
40 |
52 | 41 echo "SUCCESS" |