diff --git a/kraken.krak b/kraken.krak index 37b0f39..28b89c8 100644 --- a/kraken.krak +++ b/kraken.krak @@ -22,9 +22,14 @@ fun main(argc: int, argv: **char):int { } var input_file_offset = 1 var interpret_instead = false - if (string(argv[1]) == "-i") { + var argv1_str = string(argv[1]) + var opt_str = string("-O3") + if (argv1_str == "-i") { interpret_instead = true input_file_offset++ + } else if (argv1_str.length() > 2 && argv1_str.slice(0,2) == "-O") { + opt_str = argv1_str + input_file_offset++ } var kraken_file_name = string(argv[input_file_offset]) var executable_name = string(".").join(kraken_file_name.split('.').slice(0,-2)) @@ -87,7 +92,7 @@ fun main(argc: int, argv: **char):int { var kraken_c_output_name = kraken_file_name + ".c" write_file(kraken_c_output_name, c_output_pair.first) /*println(string("linker string: ") + c_output_pair.second)*/ - var compile_string = "cc -g -O3 -Wno-int-to-pointer-cast -Wno-pointer-to-int-cast -std=c99 " + c_output_pair.second + " " + kraken_c_output_name + " -o " + executable_name + var compile_string = "cc -g " + opt_str + " -Wno-int-to-pointer-cast -Wno-pointer-to-int-cast -std=c99 " + c_output_pair.second + " " + kraken_c_output_name + " -o " + executable_name printlnerr(compile_string) system(compile_string) }