* ILTokenizer.cs: When building instructions allow the '.' char so
[mono.git] / mcs / ilasm / makefile
1 CSC = csc
2 CSFLAGS = /nologo /optimize /target:exe /out:ilasm.exe
3 LIBFLAGS = /r:../class/lib/PEAPI.dll
4 INSTALL = /usr/bin/install
5 prefix = /usr
6
7 SOURCES =                               \
8         Driver.cs                       \
9         AssemblyInfo.cs                 \
10         codegen/CodeGen.cs              \
11         codegen/ExternTable.cs          \
12         codegen/InstrTable.cs           \
13         codegen/ITypeRef.cs             \
14         codegen/IClassRef.cs            \
15         codegen/FieldDef.cs             \
16         codegen/ParamDef.cs             \
17         codegen/MethodDef.cs            \
18         codegen/TypeDef.cs              \
19         codegen/DataDef.cs              \
20         codegen/TypeRef.cs              \
21         codegen/PeapiTypeRef.cs         \
22         codegen/ExternTypeRef.cs        \
23         codegen/PrimitiveTypeRef.cs     \
24         codegen/TypeManager.cs          \
25         codegen/IInstr.cs               \
26         codegen/IntInstr.cs             \
27         codegen/LdstrInstr.cs           \
28         codegen/SimpInstr.cs            \
29         codegen/MiscInstr.cs            \
30         codegen/LdcInstr.cs             \
31         codegen/BranchInstr.cs          \
32         codegen/SwitchInstr.cs          \
33         codegen/TypeInstr.cs            \
34         codegen/MethodInstr.cs          \
35         codegen/Local.cs                \
36         codegen/IMethodRef.cs           \
37         codegen/ExternMethodRef.cs      \
38         codegen/MethodRef.cs            \
39         codegen/GlobalMethodRef.cs      \
40         codegen/IFieldRef.cs            \
41         codegen/ExternFieldRef.cs       \
42         codegen/GlobalFieldRef.cs       \
43         codegen/FieldRef.cs             \
44         codegen/FieldInstr.cs           \
45         codegen/LdtokenInstr.cs         \
46         codegen/CalliInstr.cs           \
47         parser/ILParser.cs              \
48         parser/ScannerAdapter.cs        \
49         scanner/ILReader.cs             \
50         scanner/ILSyntaxError.cs        \
51         scanner/ILTables.cs             \
52         scanner/ILToken.cs              \
53         scanner/ILTokenizer.cs          \
54         scanner/InstrToken.cs           \
55         scanner/ITokenStream.cs         \
56         scanner/Location.cs             \
57         scanner/NumberHelper.cs         \
58         scanner/StringHelperBase.cs     \
59         scanner/StringHelper.cs 
60
61 ilasm.exe: list
62         $(CSC) $(CSFLAGS) $(LIBFLAGS) @list
63
64 install: all
65         mkdir -p $(prefix)/bin
66         $(INSTALL) -m 755 ilasm.exe $(prefix)/bin
67
68 parser/ILParser.cs: parser/ILParser.jay ../jay/skeleton.cs
69         ../jay/jay -ct < ../jay/skeleton.cs parser/ILParser.jay > parser/ILParser.cs
70
71 list: $(SOURCES)
72         echo $(SOURCES) | sed -e 's@/@\\@g' > list
73
74 all: ilasm.exe
75
76 linux: ilasm.exe
77
78 windows: ilasm.exe
79
80 clean:
81         rm -f ilasm.exe parser/ILParser.cs list