mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-05 07:08:48 +00:00
Update remove_temp_files
This commit is contained in:
+16
-4
@@ -413,13 +413,25 @@ void show_timings(Checker *c, Timings *t) {
|
|||||||
void remove_temp_files(String output_base) {
|
void remove_temp_files(String output_base) {
|
||||||
if (build_context.keep_temp_files) return;
|
if (build_context.keep_temp_files) return;
|
||||||
|
|
||||||
gb_file_delete(gb_bprintf("%.*s.ll", LIT(output_base)));
|
Array<u8> data = {};
|
||||||
gb_file_delete(gb_bprintf("%.*s.bc", LIT(output_base)));
|
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)
|
#if defined(GB_SYSTEM_WINDOWS)
|
||||||
gb_file_delete(gb_bprintf("%.*s.obj", LIT(output_base)));
|
EXT_DELETE(".obj");
|
||||||
#else
|
#else
|
||||||
gb_file_delete(gb_bprintf("%.*s.o", LIT(output_base)));
|
EXT_DELETE(".o");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#undef EXT_DELETE
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(int arg_count, char **arg_ptr) {
|
int main(int arg_count, char **arg_ptr) {
|
||||||
|
|||||||
Reference in New Issue
Block a user