-
Notifications
You must be signed in to change notification settings - Fork 0
/
hyggec.fsproj
72 lines (72 loc) · 3.08 KB
/
hyggec.fsproj
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<!-- General -->
<AssemblyName>hyggeWasm</AssemblyName>
<Version>0.0.3</Version>
<Description>A WebAssembly compiler for the Hygge programming language. Based on work of Alceste Scalas.</Description>
<Copyright>Copyright 2023 DTU - Technical University of Denmark</Copyright>
<Authors>Troels Lund</Authors>
<OutputType>Exe</OutputType>
<NeutralLanguage>en-US</NeutralLanguage>
<!-- FsLex and FsYacc -->
<FsLexOutputFolder>src/</FsLexOutputFolder>
<FsYaccOutputFolder>src/</FsYaccOutputFolder>
<!-- Build settings -->
<TargetFramework>net8.0</TargetFramework>
<GenerateProgramFile>false</GenerateProgramFile>
<LangVersion>preview</LangVersion>
<Title>A didactic compiler for the Hygge programming language producing WebAssembly (Wasm)</Title>
<Company>Troels Lund</Company>
<RootNamespace>hyggeWasm</RootNamespace>
<!-- Reverse indexes in Parser.fsy -->
</PropertyGroup>
<ItemGroup>
<Compile Include="src/Log.fs" />
<Compile Include="src/AST.fs" />
<Compile Include="src/ASTUtil.fs" />
<!-- Lexer and parser generation -->
<PackageReference Include="FsLexYacc" Version="11.0.1" />
<FsYacc Include="src/Parser.fsy">
<OtherFlags>--module Parser</OtherFlags>
</FsYacc>
<FsLex Include="src/Lexer.fsl">
<OtherFlags>--module Lexer --unicode</OtherFlags>
</FsLex>
<Compile Include="src/Parser.fsi" />
<Compile Include="src/Parser.fs" />
<Compile Include="src/Lexer.fs" />
<Compile Include="src/Util.fs" />
<Compile Include="src/ANF.fs" />
<Compile Include="src/Type.fs" />
<Compile Include="src/Typechecker.fs" />
<Compile Include="src/PrettyPrinter.fs" />
<Compile Include="src/Interpreter.fs" />
<Compile Include="src/RISCV/RISCV.fs" />
<Compile Include="src/RISCV/RISCVCodegen.fs" />
<Compile Include="src/RISCV/ANFRISCVCodegen.fs" />
<Compile Include="src\RISCV\RARS.fs" />
<Compile Include="src/Peephole.fs" />
<Compile Include="src/wasm/CompileConfig.fs" />
<Compile Include="src/WasmTime.fs" />
<Compile Include="src/wasm/SI.fs" />
<Compile Include="src/wasm/WasmCodegen.fs" />
<Compile Include="src/wasm/WasmPeepholeHelper.fs" />
<Compile Include="src/wasm/WasmPeephole.fs" />
<!-- Command line parsing -->
<PackageReference Include="CommandLineParser.FSharp" Version="2.9.1" />
<Compile Include="src/CmdLine.fs" />
<!-- Testing -->
<PackageReference Include="Expecto" Version="9.0.4" />
<PackageReference Include="Microsoft.NET.Runtime.WebAssembly.Wasi.Sdk" Version="8.0.0-preview.7.23375.6" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.5.0" />
<PackageReference Include="YoloDev.Expecto.TestSdk" Version="0.13.3" />
<Compile Include="src/Test.fs" />
<Compile Include="src/CSVWriter.fs" />
<!-- Main entry point -->
<Compile Include="src/Program.fs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="WasmTimeDriver\WasmTimeDriver.csproj" />
<ProjectReference Include="WGF\WGF.fsproj" />
</ItemGroup>
</Project>