diff --git a/lib/motion/project/builder.rb b/lib/motion/project/builder.rb index 340427d3..255eaf72 100644 --- a/lib/motion/project/builder.rb +++ b/lib/motion/project/builder.rb @@ -88,7 +88,8 @@ module Motion; module Project; # LLVM bitcode. bc = File.join(objs_build_dir, "#{path}.#{arch}.bc") bs_flags = bs_files.map { |x| "--uses-bs \"" + x + "\" " }.join(' ') - sh "/usr/bin/env VM_KERNEL_PATH=\"#{kernel}\" VM_OPT_LEVEL=\"#{config.opt_level}\" /usr/bin/arch -arch #{arch} #{ruby} #{bs_flags} --emit-llvm \"#{bc}\" #{init_func} \"#{path}\"" + arch_cmd = (arch =~ /^arm/) ? "/usr/bin/arch -arch i386" : "/usr/bin/arch -arch #{arch}" + sh "/usr/bin/env VM_KERNEL_PATH=\"#{kernel}\" VM_OPT_LEVEL=\"#{config.opt_level}\" #{arch_cmd} #{ruby} #{bs_flags} --emit-llvm \"#{bc}\" #{init_func} \"#{path}\"" # Assembly. asm = File.join(objs_build_dir, "#{path}.#{arch}.s")