Mercurial > projects > ldc
annotate premake.lua @ 298:3b8ada4c9f8b trunk
[svn r319] Call substatement->toIR in LabelStatement::toIR even when the label is inside an asm block.
author | ChristianK |
---|---|
date | Tue, 24 Jun 2008 17:24:55 +0200 |
parents | 895e1b50cf2a |
children | aaade6ded589 |
rev | line source |
---|---|
1 | 1 project.name = llvmdc |
2 | |
268
23d0d9855cad
[svn r289] Fixed: right shift >> was broken for unsigned types.
lindquist
parents:
237
diff
changeset
|
3 -- options |
295
895e1b50cf2a
[svn r316] Fixed array slice assignments like: int[] arr = ...; arr[] = 42;
lindquist
parents:
285
diff
changeset
|
4 |
895e1b50cf2a
[svn r316] Fixed array slice assignments like: int[] arr = ...; arr[] = 42;
lindquist
parents:
285
diff
changeset
|
5 -- we always make vtables opaque, it simply kills performance... |
268
23d0d9855cad
[svn r289] Fixed: right shift >> was broken for unsigned types.
lindquist
parents:
237
diff
changeset
|
6 OPAQUE_VTBLS = 1 |
295
895e1b50cf2a
[svn r316] Fixed array slice assignments like: int[] arr = ...; arr[] = 42;
lindquist
parents:
285
diff
changeset
|
7 |
895e1b50cf2a
[svn r316] Fixed array slice assignments like: int[] arr = ...; arr[] = 42;
lindquist
parents:
285
diff
changeset
|
8 -- use of boehm gc |
285
297690b5d4a5
[svn r306] Fixed: it's now possible to compile and link llvmdc with MinGW32 and msys on Win32 :D I tried it myself ;) Building the runtime still needs some work, but it's a step in the right direction.
lindquist
parents:
268
diff
changeset
|
9 if OS == "windows" then |
295
895e1b50cf2a
[svn r316] Fixed array slice assignments like: int[] arr = ...; arr[] = 42;
lindquist
parents:
285
diff
changeset
|
10 USE_BOEHM_GC = 0 |
285
297690b5d4a5
[svn r306] Fixed: it's now possible to compile and link llvmdc with MinGW32 and msys on Win32 :D I tried it myself ;) Building the runtime still needs some work, but it's a step in the right direction.
lindquist
parents:
268
diff
changeset
|
11 else |
295
895e1b50cf2a
[svn r316] Fixed array slice assignments like: int[] arr = ...; arr[] = 42;
lindquist
parents:
285
diff
changeset
|
12 addoption("no-boehm", "Disable use of the Boehm GC") |
895e1b50cf2a
[svn r316] Fixed array slice assignments like: int[] arr = ...; arr[] = 42;
lindquist
parents:
285
diff
changeset
|
13 |
895e1b50cf2a
[svn r316] Fixed array slice assignments like: int[] arr = ...; arr[] = 42;
lindquist
parents:
285
diff
changeset
|
14 if options["no-boehm"] then |
895e1b50cf2a
[svn r316] Fixed array slice assignments like: int[] arr = ...; arr[] = 42;
lindquist
parents:
285
diff
changeset
|
15 USE_BOEHM_GC = 0 |
895e1b50cf2a
[svn r316] Fixed array slice assignments like: int[] arr = ...; arr[] = 42;
lindquist
parents:
285
diff
changeset
|
16 else |
895e1b50cf2a
[svn r316] Fixed array slice assignments like: int[] arr = ...; arr[] = 42;
lindquist
parents:
285
diff
changeset
|
17 USE_BOEHM_GC = 1 |
895e1b50cf2a
[svn r316] Fixed array slice assignments like: int[] arr = ...; arr[] = 42;
lindquist
parents:
285
diff
changeset
|
18 end |
285
297690b5d4a5
[svn r306] Fixed: it's now possible to compile and link llvmdc with MinGW32 and msys on Win32 :D I tried it myself ;) Building the runtime still needs some work, but it's a step in the right direction.
lindquist
parents:
268
diff
changeset
|
19 end |
268
23d0d9855cad
[svn r289] Fixed: right shift >> was broken for unsigned types.
lindquist
parents:
237
diff
changeset
|
20 |
23d0d9855cad
[svn r289] Fixed: right shift >> was broken for unsigned types.
lindquist
parents:
237
diff
changeset
|
21 -- idgen |
1 | 22 package = newpackage() |
23 package.name = "idgen" | |
24 package.kind = "exe" | |
25 package.language = "c++" | |
26 package.files = { "dmd/idgen.c" } | |
27 package.buildoptions = { "-x c++" } | |
35
3cfcb944304e
[svn r39] * Updated to DMD 1.022 with the exception of:
lindquist
parents:
4
diff
changeset
|
28 package.postbuildcommands = { "./idgen", "mv -f id.c id.h dmd" } |
1 | 29 |
268
23d0d9855cad
[svn r289] Fixed: right shift >> was broken for unsigned types.
lindquist
parents:
237
diff
changeset
|
30 -- impcnvgen |
1 | 31 package = newpackage() |
32 package.name = "impcnvgen" | |
33 package.kind = "exe" | |
34 package.language = "c++" | |
35 package.files = { "dmd/impcnvgen.c" } | |
36 package.buildoptions = { "-x c++" } | |
35
3cfcb944304e
[svn r39] * Updated to DMD 1.022 with the exception of:
lindquist
parents:
4
diff
changeset
|
37 package.postbuildcommands = { "./impcnvgen", "mv -f impcnvtab.c dmd" } |
1 | 38 |
268
23d0d9855cad
[svn r289] Fixed: right shift >> was broken for unsigned types.
lindquist
parents:
237
diff
changeset
|
39 -- llvmdc |
1 | 40 package = newpackage() |
35
3cfcb944304e
[svn r39] * Updated to DMD 1.022 with the exception of:
lindquist
parents:
4
diff
changeset
|
41 package.bindir = "bin" |
1 | 42 package.name = "llvmdc" |
43 package.kind = "exe" | |
44 package.language = "c++" | |
136
0e28624814e8
[svn r140] did a lot of the work towards being able to pass multiple modules on the command line. not complete yet though
lindquist
parents:
131
diff
changeset
|
45 package.files = { matchfiles("dmd/*.c"), matchfiles("gen/*.cpp"), matchfiles("ir/*.cpp") } |
1 | 46 package.excludes = { "dmd/idgen.c", "dmd/impcnvgen.c" } |
47 package.buildoptions = { "-x c++", "`llvm-config --cxxflags`" } | |
131 | 48 package.linkoptions = { |
49 -- long but it's faster than just 'all' | |
237
a168a2c3ea48
[svn r253] Removed -inlineasm option. inline asm is now enabled by default unless the new -noasm option is passed.
lindquist
parents:
193
diff
changeset
|
50 "`llvm-config --libs core asmparser bitreader bitwriter linker support target transformutils scalaropts ipo instrumentation x86 powerpc`", |
193
aca17e55b7a5
[svn r209] Fixed: exotic array to pointer casts were broken.
lindquist
parents:
136
diff
changeset
|
51 "`llvm-config --ldflags`", |
131 | 52 } |
193
aca17e55b7a5
[svn r209] Fixed: exotic array to pointer casts were broken.
lindquist
parents:
136
diff
changeset
|
53 package.defines = { |
aca17e55b7a5
[svn r209] Fixed: exotic array to pointer casts were broken.
lindquist
parents:
136
diff
changeset
|
54 "IN_LLVM", |
aca17e55b7a5
[svn r209] Fixed: exotic array to pointer casts were broken.
lindquist
parents:
136
diff
changeset
|
55 "_DH", |
268
23d0d9855cad
[svn r289] Fixed: right shift >> was broken for unsigned types.
lindquist
parents:
237
diff
changeset
|
56 "OPAQUE_VTBLS="..OPAQUE_VTBLS, |
23d0d9855cad
[svn r289] Fixed: right shift >> was broken for unsigned types.
lindquist
parents:
237
diff
changeset
|
57 "USE_BOEHM_GC="..USE_BOEHM_GC, |
193
aca17e55b7a5
[svn r209] Fixed: exotic array to pointer casts were broken.
lindquist
parents:
136
diff
changeset
|
58 } |
1 | 59 package.config.Release.defines = { "LLVMD_NO_LOGGER" } |
86
fd32135dca3e
[svn r90] Major updates to the gen directory. Redesigned the 'elem' struct. Much more... !!!
lindquist
parents:
35
diff
changeset
|
60 package.config.Debug.buildoptions = { "-g -O0" } |
1 | 61 --package.targetprefix = "llvm" |
4
e116aa1488e6
[svn r8] changed backend includes to always use the gen/<foo>.h prefix
lindquist
parents:
1
diff
changeset
|
62 package.includepaths = { ".", "dmd" } |
1 | 63 --package.postbuildcommands = { "cd runtime; ./build.sh; cd .." } |
268
23d0d9855cad
[svn r289] Fixed: right shift >> was broken for unsigned types.
lindquist
parents:
237
diff
changeset
|
64 if USE_BOEHM_GC == 1 then |
23d0d9855cad
[svn r289] Fixed: right shift >> was broken for unsigned types.
lindquist
parents:
237
diff
changeset
|
65 package.links = { "gc" } |
23d0d9855cad
[svn r289] Fixed: right shift >> was broken for unsigned types.
lindquist
parents:
237
diff
changeset
|
66 end |