ffi 1.4.0-x86-mingw32 → 1.4.1.dev-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of ffi might be problematic. Click here for more details.

data/Rakefile CHANGED
@@ -165,7 +165,7 @@ task 'spec:specdoc' => TEST_DEPS
165
165
  task :default => :specs
166
166
 
167
167
  task 'gem:win32' do
168
- sh("rake cross native gem RUBY_CC_VERSION='1.8.7:1.9.3'") || raise("win32 build failed!")
168
+ sh("rake cross native gem RUBY_CC_VERSION='1.8.7:1.9.3:2.0.0'") || raise("win32 build failed!")
169
169
  end
170
170
 
171
171
 
data/ext/ffi_c/Function.c CHANGED
@@ -26,6 +26,7 @@
26
26
  #include <sys/types.h>
27
27
  #ifndef _WIN32
28
28
  # include <sys/mman.h>
29
+ # include <unistd.h>
29
30
  #endif
30
31
  #include <stdio.h>
31
32
  #ifndef _MSC_VER
@@ -460,7 +461,7 @@ callback_invoke(ffi_cif* cif, void* retval, void** parameters, void* user_data)
460
461
 
461
462
  if (rbffi_thread_has_gvl_p()) {
462
463
  rbffi_active_thread.exc = Qnil;
463
- rb_rescue2(callback_with_gvl, &cb, save_callback_exception, &cb, rb_eException, (VALUE) 0);
464
+ rb_rescue2(callback_with_gvl, (VALUE) &cb, save_callback_exception, (VALUE) &cb, rb_eException, (VALUE) 0);
464
465
 
465
466
  #if defined(DEFER_ASYNC_CALLBACK) && !defined(_WIN32)
466
467
  } else {
@@ -171,7 +171,7 @@ fntype_initialize(int argc, VALUE* argv, VALUE self)
171
171
  fnInfo->ffiReturnType = fnInfo->returnType->ffiType;
172
172
 
173
173
 
174
- #if defined(_WIN32) || defined(__WIN32__)
174
+ #if (defined(_WIN32) || defined(__WIN32__)) && defined(FFI_STDCALL)
175
175
  rbConventionStr = (rbConvention != Qnil) ? rb_funcall2(rbConvention, rb_intern("to_s"), 0, NULL) : Qnil;
176
176
  fnInfo->abi = (rbConventionStr != Qnil && strcmp(StringValueCStr(rbConventionStr), "stdcall") == 0)
177
177
  ? FFI_STDCALL : FFI_DEFAULT_ABI;
data/ext/ffi_c/Thread.c CHANGED
@@ -30,6 +30,7 @@ typedef int bool;
30
30
  # include <pthread.h>
31
31
  # include <errno.h>
32
32
  # include <signal.h>
33
+ # include <unistd.h>
33
34
  #else
34
35
  # include <winsock2.h>
35
36
  # define _WINSOCKAPI_
data/ext/ffi_c/Variadic.c CHANGED
@@ -107,7 +107,7 @@ variadic_initialize(VALUE self, VALUE rbFunction, VALUE rbParameterTypes, VALUE
107
107
  invoker->rbAddress = rbFunction;
108
108
  invoker->function = rbffi_AbstractMemory_Cast(rbFunction, rbffi_PointerClass)->address;
109
109
 
110
- #if defined(_WIN32) || defined(__WIN32__)
110
+ #if (defined(_WIN32) || defined(__WIN32__)) && defined(FFI_STDCALL)
111
111
  rbConventionStr = rb_funcall2(convention, rb_intern("to_s"), 0, NULL);
112
112
  invoker->abi = (RTEST(convention) && strcmp(StringValueCStr(rbConventionStr), "stdcall") == 0)
113
113
  ? FFI_STDCALL : FFI_DEFAULT_ABI;
data/ext/ffi_c/extconf.rb CHANGED
@@ -7,9 +7,11 @@ if !defined?(RUBY_ENGINE) || RUBY_ENGINE == 'ruby' || RUBY_ENGINE == 'rbx'
7
7
 
8
8
  # recent versions of ruby add restrictive ansi and warning flags on a whim - kill them all
9
9
  $warnflags = ''
10
- $CFLAGS.gsub!(/-ansi/, '')
11
- $CFLAGS.gsub!(/-std=[^\s]+/, '')
12
-
10
+ $CFLAGS.gsub!(/[\s+]-ansi/, '')
11
+ $CFLAGS.gsub!(/[\s+]-std=[^\s]+/, '')
12
+ # solaris needs -c99 for <stdbool.h>
13
+ $CFLAGS << " -std=c99" if RbConfig::CONFIG['host_os'] =~ /solaris/
14
+
13
15
  if ENV['RUBY_CC_VERSION'].nil? && (pkg_config("libffi") ||
14
16
  have_header("ffi.h") ||
15
17
  find_header("ffi.h", "/usr/local/include", "/usr/include/ffi"))
data/ffi.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'ffi'
3
- s.version = '1.4.0'
3
+ s.version = '1.4.1.dev'
4
4
  s.author = 'Wayne Meissner'
5
5
  s.email = 'wmeissner@gmail.com'
6
6
  s.homepage = 'http://wiki.github.com/ffi/ffi'
data/lib/1.8/ffi_c.so CHANGED
Binary file
data/lib/1.9/ffi_c.so CHANGED
Binary file
data/lib/2.0/ffi_c.so ADDED
Binary file
@@ -82,6 +82,8 @@ rbx.platform.typedef.int32_t = int
82
82
  rbx.platform.typedef.uint32_t = uint
83
83
  rbx.platform.typedef.int64_t = long_long
84
84
  rbx.platform.typedef.uint64_t = ulong_long
85
+ rbx.platform.typedef.intptr_t = long
86
+ rbx.platform.typedef.uintptr_t = ulong
85
87
  rbx.platform.typedef.u_int8_t = uchar
86
88
  rbx.platform.typedef.u_int16_t = ushort
87
89
  rbx.platform.typedef.u_int32_t = uint
metadata CHANGED
@@ -1,13 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ffi
3
3
  version: !ruby/object:Gem::Version
4
- hash: 7
5
- prerelease:
4
+ hash: 1824508225
5
+ prerelease: 6
6
6
  segments:
7
7
  - 1
8
8
  - 4
9
- - 0
10
- version: 1.4.0
9
+ - 1
10
+ - dev
11
+ version: 1.4.1.dev
11
12
  platform: x86-mingw32
12
13
  authors:
13
14
  - Wayne Meissner
@@ -15,7 +16,7 @@ autorequire:
15
16
  bindir: bin
16
17
  cert_chain: []
17
18
 
18
- date: 2013-02-21 00:00:00 Z
19
+ date: 2013-03-10 00:00:00 Z
19
20
  dependencies:
20
21
  - !ruby/object:Gem::Dependency
21
22
  prerelease: false
@@ -506,6 +507,7 @@ files:
506
507
  - libtest/VariadicTest.c
507
508
  - lib/1.8/ffi_c.so
508
509
  - lib/1.9/ffi_c.so
510
+ - lib/2.0/ffi_c.so
509
511
  homepage: http://wiki.github.com/ffi/ffi
510
512
  licenses:
511
513
  - LGPL-3
@@ -529,12 +531,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
529
531
  required_rubygems_version: !ruby/object:Gem::Requirement
530
532
  none: false
531
533
  requirements:
532
- - - ">="
534
+ - - ">"
533
535
  - !ruby/object:Gem::Version
534
- hash: 3
536
+ hash: 25
535
537
  segments:
536
- - 0
537
- version: "0"
538
+ - 1
539
+ - 3
540
+ - 1
541
+ version: 1.3.1
538
542
  requirements: []
539
543
 
540
544
  rubyforge_project: