summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2020-03-04 18:41:47 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2020-03-04 18:41:47 +0900
commit95f387f61a4a4ea92635da760b7de5b1e09bb84e (patch)
tree551a04194bab87302fff42c79291ea2ace854f16 /ext
parent633a1f15d8228236094ddee12e4e169d655ec49e (diff)
[ruby/fiddle] ffi_closure_free is available in the bundled libffi
Diffstat (limited to 'ext')
-rw-r--r--ext/fiddle/extconf.rb4
1 files changed, 3 insertions, 1 deletions
diff --git a/ext/fiddle/extconf.rb b/ext/fiddle/extconf.rb
index 915afb9..2d0e188 100644
--- a/ext/fiddle/extconf.rb
+++ b/ext/fiddle/extconf.rb
@@ -135,7 +135,6 @@ elsif have_header "windows.h"
end
have_const('FFI_STDCALL', ffi_header)
-have_func('ffi_closure_alloc', ffi_header)
config = File.read(RbConfig.expand(File.join($arch_hdrdir, "ruby/config.h")))
types = {"SIZE_T"=>"SSIZE_T", "PTRDIFF_T"=>nil, "INTPTR_T"=>nil}
@@ -154,6 +153,9 @@ end
if libffi
$LOCAL_LIBS.prepend("./#{libffi.a} ").strip! # to exts.mk
$INCFLAGS.gsub!(/-I#{libffi.dir}/, '-I$(LIBFFI_DIR)')
+ $defs << "-DUSE_FFI_CLOSURE_ALLOC=1"
+else
+ have_func('ffi_closure_alloc', ffi_header)
end
$INCFLAGS << " -I$(top_srcdir)"
create_makefile 'fiddle' do |conf|