summaryrefslogtreecommitdiffhomepage
path: root/tasks/toolchains/gcc.rake
diff options
context:
space:
mode:
Diffstat (limited to 'tasks/toolchains/gcc.rake')
-rw-r--r--tasks/toolchains/gcc.rake4
1 files changed, 3 insertions, 1 deletions
diff --git a/tasks/toolchains/gcc.rake b/tasks/toolchains/gcc.rake
index 316d2d9a1..8714e1854 100644
--- a/tasks/toolchains/gcc.rake
+++ b/tasks/toolchains/gcc.rake
@@ -3,6 +3,7 @@ MRuby::Toolchain.new(:gcc) do |conf, params|
compiler_flags = %w(-g -O3 -Wall -Wundef)
c_mandatory_flags = %w(-std=gnu99)
cxx_invalid_flags = %w(-Werror-implicit-function-declaration)
+ compile_opt = '%{flags} -MMD -MF "%{outfile}.d" -o "%{outfile}" "%{infile}"'
[conf.cc, conf.objc, conf.asm, conf.cxx].each do |compiler|
if compiler == conf.cxx
@@ -14,7 +15,8 @@ MRuby::Toolchain.new(:gcc) do |conf, params|
end
compiler.option_include_path = %q[-I"%s"]
compiler.option_define = '-D%s'
- compiler.compile_options = %q[%{flags} -MMD -o "%{outfile}" -c "%{infile}"]
+ compiler.compile_options = "-c #{compile_opt}"
+ compiler.preprocess_options = "-E -P #{compile_opt}"
compiler.cxx_compile_flag = '-x c++ -std=gnu++03'
compiler.cxx_exception_flag = '-fexceptions'
compiler.cxx_invalid_flags = c_mandatory_flags + cxx_invalid_flags