Update remove_temp_files

This commit is contained in:
Ginger Bill
2017-07-31 12:15:20 +01:00
parent 9f4f5f9346
commit 4d14b3bcb4

View File

@@ -413,13 +413,25 @@ void show_timings(Checker *c, Timings *t) {
void remove_temp_files(String output_base) {
if (build_context.keep_temp_files) return;
gb_file_delete(gb_bprintf("%.*s.ll", LIT(output_base)));
gb_file_delete(gb_bprintf("%.*s.bc", LIT(output_base)));
Array<u8> data = {};
array_init_count(&data, heap_allocator(), output_base.len + 10);
defer (array_free(&data));
isize n = output_base.len;
gb_memcopy(data.data, output_base.text, n);
#define EXT_DELETE(s) do { \
gb_memcopy(data.data+n, s, gb_size_of(s)); \
gb_file_delete(cast(char *)data.data); \
} while (0)
EXT_DELETE(".ll");
EXT_DELETE(".bc");
#if defined(GB_SYSTEM_WINDOWS)
gb_file_delete(gb_bprintf("%.*s.obj", LIT(output_base)));
EXT_DELETE(".obj");
#else
gb_file_delete(gb_bprintf("%.*s.o", LIT(output_base)));
EXT_DELETE(".o");
#endif
#undef EXT_DELETE
}
int main(int arg_count, char **arg_ptr) {