mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
Test each combination of boxing, mrb_int size, and archtecture.
Boxing: * `MRB_NO_BOXING` (`mrb_value` packed in `struct`) * `MRB_WORD_BOXING` (`mrb_value` packed in `struct`) default * `MRB_NAN_BOXING` (`mrb_value` packed in `double`) `mrb_int` size * `MRB_INT32` (`int32_t` as `mrb_int`) * `MRB_INT64` (`int64` as `mrb_int`) conflict with `MRB_NAN_BOXING' Architecture * `MRB_64BIT` (`sizeof(void*)` is 64 bits) * `MRB_32BIT` (`sizeof(void*)` is 32 bits)
This commit is contained in:
+124
-5
@@ -1,32 +1,151 @@
|
||||
MRuby::Build.new('no-boxing') do |conf|
|
||||
MRuby::Build.new('boxing-no-m64-i64') do |conf|
|
||||
toolchain :gcc
|
||||
|
||||
conf.cc.flags << '-m64'
|
||||
conf.linker.flags << '-m64'
|
||||
|
||||
conf.gembox 'default'
|
||||
conf.compilers.each do |c|
|
||||
c.defines += %w(MRB_NO_BOXING)
|
||||
c.defines += %w(MRB_NO_BOXING MRB_INT64)
|
||||
end
|
||||
conf.enable_debug
|
||||
conf.enable_test
|
||||
conf.enable_bintest
|
||||
end
|
||||
|
||||
MRuby::Build.new('word_boxing') do |conf|
|
||||
MRuby::Build.new('boxing-no-m64-i32') do |conf|
|
||||
toolchain :gcc
|
||||
|
||||
conf.cc.flags << '-m64'
|
||||
conf.linker.flags << '-m64'
|
||||
|
||||
conf.gembox 'default'
|
||||
conf.compilers.each do |c|
|
||||
c.defines += %w(MRB_WORD_BOXING)
|
||||
c.defines += %w(MRB_NO_BOXING MRB_INT32)
|
||||
end
|
||||
conf.enable_debug
|
||||
conf.enable_test
|
||||
conf.enable_bintest
|
||||
end
|
||||
|
||||
MRuby::Build.new('nan_boxing') do |conf|
|
||||
MRuby::Build.new('boxing-no-m32-i64') do |conf|
|
||||
toolchain :gcc
|
||||
|
||||
conf.cc.flags << '-m32'
|
||||
conf.linker.flags << '-m32'
|
||||
|
||||
# Turn on `enable_debug` for better debugging
|
||||
conf.gembox 'default'
|
||||
conf.compilers.each do |c|
|
||||
c.defines += %w(MRB_NO_BOXING MRB_INT64)
|
||||
end
|
||||
conf.enable_debug
|
||||
conf.enable_test
|
||||
conf.enable_bintest
|
||||
end
|
||||
|
||||
MRuby::Build.new('boxing-no-m32-i32') do |conf|
|
||||
toolchain :gcc
|
||||
|
||||
conf.cc.flags << '-m32'
|
||||
conf.linker.flags << '-m32'
|
||||
|
||||
# Turn on `enable_debug` for better debugging
|
||||
conf.gembox 'default'
|
||||
conf.compilers.each do |c|
|
||||
c.defines += %w(MRB_NO_BOXING MRB_INT32)
|
||||
end
|
||||
conf.enable_debug
|
||||
conf.enable_test
|
||||
conf.enable_bintest
|
||||
end
|
||||
|
||||
MRuby::Build.new('boxing-word-m64-i64') do |conf|
|
||||
toolchain :gcc
|
||||
|
||||
conf.cc.flags << '-m64'
|
||||
conf.linker.flags << '-m64'
|
||||
|
||||
conf.gembox 'default'
|
||||
conf.compilers.each do |c|
|
||||
c.defines += %w(MRB_WORD_BOXING MRB_INT64)
|
||||
end
|
||||
conf.enable_debug
|
||||
conf.enable_test
|
||||
conf.enable_bintest
|
||||
end
|
||||
|
||||
MRuby::Build.new('boxing-word-m64-i32') do |conf|
|
||||
toolchain :gcc
|
||||
|
||||
conf.cc.flags << '-m64'
|
||||
conf.linker.flags << '-m64'
|
||||
|
||||
conf.gembox 'default'
|
||||
conf.compilers.each do |c|
|
||||
c.defines += %w(MRB_WORD_BOXING MRB_INT32)
|
||||
end
|
||||
conf.enable_debug
|
||||
conf.enable_test
|
||||
conf.enable_bintest
|
||||
end
|
||||
|
||||
MRuby::Build.new('boxing-word-m32-i64') do |conf|
|
||||
toolchain :gcc
|
||||
|
||||
conf.cc.flags << '-m32'
|
||||
conf.linker.flags << '-m32'
|
||||
|
||||
conf.gembox 'default'
|
||||
conf.compilers.each do |c|
|
||||
c.defines += %w(MRB_WORD_BOXING MRB_INT64)
|
||||
end
|
||||
conf.enable_debug
|
||||
conf.enable_test
|
||||
conf.enable_bintest
|
||||
end
|
||||
|
||||
MRuby::Build.new('boxing-word-m32-i32') do |conf|
|
||||
toolchain :gcc
|
||||
|
||||
conf.cc.flags << '-m32'
|
||||
conf.linker.flags << '-m32'
|
||||
|
||||
conf.gembox 'default'
|
||||
conf.compilers.each do |c|
|
||||
c.defines += %w(MRB_WORD_BOXING MRB_INT32)
|
||||
end
|
||||
conf.enable_debug
|
||||
conf.enable_test
|
||||
conf.enable_bintest
|
||||
end
|
||||
|
||||
MRuby::Build.new('boxing-nan-m64') do |conf|
|
||||
toolchain :gcc
|
||||
|
||||
conf.cc.flags << '-m64'
|
||||
conf.linker.flags << '-m64'
|
||||
|
||||
conf.gembox 'default'
|
||||
conf.compilers.each do |c|
|
||||
c.defines += %w(MRB_NAN_BOXING)
|
||||
end
|
||||
conf.enable_debug
|
||||
conf.enable_test
|
||||
conf.enable_bintest
|
||||
end
|
||||
|
||||
MRuby::Build.new('boxing-nan-m64') do |conf|
|
||||
toolchain :gcc
|
||||
|
||||
conf.cc.flags << '-m32'
|
||||
conf.linker.flags << '-m32'
|
||||
|
||||
conf.gembox 'default'
|
||||
conf.compilers.each do |c|
|
||||
c.defines += %w(MRB_NAN_BOXING MRB_INT32)
|
||||
end
|
||||
conf.enable_debug
|
||||
conf.enable_test
|
||||
conf.enable_bintest
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user