summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorngoto <ngoto@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-11-30 15:57:21 +0000
committerngoto <ngoto@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-11-30 15:57:21 +0000
commit4bb1bfa0ed10a3a1e2ca04ada24d72e0227ebce7 (patch)
treea095464605a426fe0190d7b7e8c048cf152ad12f
parent7c1a19b641fadd5eef3d21d327935adbb1aef853 (diff)
* ext/fiddle/extconf.rb, ext/fiddle/function.c
(Fiddle::Function::STDCALL): FFI_STDCALL is not a macro, but an enumeration. [ruby-core:50398] [Bug #7483] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38073 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog6
-rw-r--r--ext/fiddle/extconf.rb2
-rw-r--r--ext/fiddle/function.c2
3 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 54922ca..eb0245a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Sat Dec 1 00:48:19 2012 Naohisa Goto <ngotogenome@gmail.com>
+
+ * ext/fiddle/extconf.rb, ext/fiddle/function.c
+ (Fiddle::Function::STDCALL): FFI_STDCALL is not a macro, but an
+ enumeration. [ruby-core:50398] [Bug #7483]
+
Sat Dec 1 00:08:55 2012 NAKAMURA Usaku <usa@ruby-lang.org>
* test/rubygems/test_gem_installer.rb
diff --git a/ext/fiddle/extconf.rb b/ext/fiddle/extconf.rb
index 9b9803f..2cb9ae0 100644
--- a/ext/fiddle/extconf.rb
+++ b/ext/fiddle/extconf.rb
@@ -33,6 +33,8 @@ elsif have_header "windows.h"
end
end
+have_const('FFI_STDCALL', 'ffi.h') || have_const('FFI_STDCALL', 'ffi/ffi.h')
+
config = File.read(RbConfig.expand(File.join($arch_hdrdir, "ruby/config.h")))
types = {"SIZE_T"=>"SSIZE_T", "PTRDIFF_T"=>nil, "INTPTR_T"=>nil}
types.each do |type, signed|
diff --git a/ext/fiddle/function.c b/ext/fiddle/function.c
index 4c4bc13..38012bf 100644
--- a/ext/fiddle/function.c
+++ b/ext/fiddle/function.c
@@ -194,7 +194,7 @@ Init_fiddle_function(void)
*/
rb_define_const(cFiddleFunction, "DEFAULT", INT2NUM(FFI_DEFAULT_ABI));
-#ifdef FFI_STDCALL
+#ifdef HAVE_CONST_FFI_STDCALL
/*
* Document-const: STDCALL
*