mirror of
https://github.com/ruby/ruby.git
synced 2026-08-31 00:21:56 +08:00
Ensure that buffer sizes have been properly tracked when running in debug mode, and appease the GC slightly when running in release mode. Ref: https://bugs.ruby-lang.org/issues/21861 https://github.com/ruby/json/commit/90354007ea
20 lines
622 B
Ruby
20 lines
622 B
Ruby
require 'mkmf'
|
|
|
|
if RUBY_ENGINE == 'truffleruby'
|
|
# The pure-Ruby generator is faster on TruffleRuby, so skip compiling the generator extension
|
|
File.write('Makefile', dummy_makefile("").join)
|
|
else
|
|
append_cflags("-std=c99")
|
|
have_const("RUBY_TYPED_EMBEDDABLE", "ruby.h") # RUBY_VERSION >= 3.3
|
|
have_func("ruby_xfree_sized", "ruby.h") # RUBY_VERSION >= 4.1
|
|
|
|
$defs << "-DJSON_GENERATOR"
|
|
$defs << "-DJSON_DEBUG" if ENV.fetch("JSON_DEBUG", "0") != "0"
|
|
|
|
if enable_config('generator-use-simd', default=!ENV["JSON_DISABLE_SIMD"])
|
|
load __dir__ + "/../simd/conf.rb"
|
|
end
|
|
|
|
create_makefile 'json/ext/generator'
|
|
end
|