Port bld cache to linux successfuly
This commit is contained in:
37
bld_file.cpp
37
bld_file.cpp
@@ -1,5 +1,35 @@
|
||||
#include "bld_lib.cpp"
|
||||
|
||||
Strs cc = ON_WINDOWS("cl") ON_MAC("clang") ON_LINUX("gcc");
|
||||
|
||||
int CompileFiles(Strs files) {
|
||||
int result = 0;
|
||||
Str exe = FilenameWithoutExt(files[0]);
|
||||
Str filestr = Merge(files);
|
||||
if (cc == "gcc") {
|
||||
result = OS_SystemF("g++ -o %Q.exe %Q -g -Wno-write-strings", exe, filestr);
|
||||
}
|
||||
else if (cc == "clang") {
|
||||
result = OS_SystemF("clang++ -o %Q.exe %Q -g -Wno-writable-strings", exe, filestr);
|
||||
}
|
||||
else {
|
||||
result = OS_SystemF("cl -Fe:%Q.exe %Q -Zi -WX -W3 -wd4200 -diagnostics:column -nologo -D_CRT_SECURE_NO_WARNINGS", exe, filestr);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
int Main() {
|
||||
Strs files = ListDir("../test");
|
||||
For(files) {
|
||||
if (S8_Find(it, "test_"_s, 0, 0)) {
|
||||
CompileFiles(it);
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#if 0 // msvc flag reference
|
||||
int Main() {
|
||||
bool debug = true;
|
||||
bool release = !debug;
|
||||
@@ -9,7 +39,7 @@ int Main() {
|
||||
Strs flags = Split("-WX -W3 -wd4200 -diagnostics:column -nologo -Z7 -FC -GF -Gm- -Oi -Zo -D_CRT_SECURE_NO_WARNINGS");
|
||||
Strs link = Split("-link -incremental:no");
|
||||
Strs files = Split("../test/main_core_as_header.cpp ../core.c");
|
||||
// files += IfCodeWasModified("../core.c", "../core.obj");
|
||||
// files += IfCodeWasModified("../core.c", "../core.obj"); // .o for linux!
|
||||
if (use_std) {
|
||||
flags += Split("-GR- -EHa-");
|
||||
}
|
||||
@@ -32,8 +62,9 @@ int Main() {
|
||||
if (error != 0) return error;
|
||||
}
|
||||
|
||||
objs += S8_Format(Perm, "../build/%Q.obj", FilenameWithoutExt(it));
|
||||
objs += S8_Format(Perm, "../build/%Q.obj", FilenameWithoutExt(it)); // .o for linux!
|
||||
}
|
||||
int error = Run(cc + objs + flags + link);
|
||||
return error;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user