-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfbuild.bff
More file actions
54 lines (45 loc) · 1.08 KB
/
fbuild.bff
File metadata and controls
54 lines (45 loc) · 1.08 KB
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
#import DEVDIR
#import CONFIGURATION
#import CXX_FLAGS
// configuration
.configuration = "$CONFIGURATION$"
// compiler flags
.cxxflags = "$CXX_FLAGS$"
// warnings
+ " -Wall"
// architecture
+ " -m64 -msse4.2 -mfpmath=sse"
// compiling
+ " -std=c++17 -fno-ident -nostdinc"
// assembly listing
+ " -masm=intel --save-temps=obj"
// paths
.clangdir = "$DEVDIR$\Tools\clang\bin"
.outdir = ".bin\$configuration$"
.tempdir = ".tmp\$configuration$"
// build parameters
.Compiler = "$clangdir$\clang++.exe"
.CompilerOptions = "$cxxflags$ -I-"
.Linker = "$clangdir$\lld-link.exe"
.LinkerOptions = "/machine:x64 /debug /out:%2 /pdb:%2.pdb %1"
Settings
{
.CachePath = "$tempdir$"
}
ObjectList("app-lib")
{
.CompilerOptions = "$cxxflags$ -c %1 -o %2"
.CompilerInputPath = "projects\app"
.CompilerOutputPath = "$tempdir$\app"
}
Executable("app")
{
.Libraries = { "app-lib" }
.StaticLibs = "libs\kernel32.lib"
.LinkerOutput = "$outdir$\app.exe"
.LinkerOptions + " $StaticLibs$ /subsystem:console /entry:mainCRTstartup"
}
Alias("all")
{
.Targets = { "app" }
}