fxruby 1.6.33-x64-mingw32 → 1.6.34-x64-mingw32

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 976877f65b3913a2d3e2fc78ac76584f8e2b5556
4
- data.tar.gz: 345d83f552be95f775894c3dc08cb631a796d046
3
+ metadata.gz: 8774c5c14f1a23e2a176872a90ef38d5edc2fdaf
4
+ data.tar.gz: 57bedd1c412f5c089a19ef0f88b70b661bb962a1
5
5
  SHA512:
6
- metadata.gz: 93560a1477f13a78e678248c3252e3ea56b32d61a242cbea35b5de2adf129922dedfe04775f4df373acfa9c426249e30b8dafd17c1ab20f2eedd2595cbe54b3a
7
- data.tar.gz: 0cf5f68b271b6f6b4c07b94a9f0b057446008d57eba87686fa3abe8a5d88d2eab0ef56897c0b5722e0db555b147a05093857e3c1c058c055c5156e9bb19bbeae
6
+ metadata.gz: 6e45a49b4a205a8c80a632a1f93d0551eda9c033ab2a521fd91e87949fe812ef2db502c7b74a64b313bb75354cb385581e0530da40cad8518edef9ec46160707
7
+ data.tar.gz: 04585b0e65b3972d08e0b03332194988f454af933426065e089173259071fae3b5fab6d5e041c6f2d4fda0954a8e8f63d1849bf003cb318c8b02366dcc832557
data/History.txt CHANGED
@@ -1,6 +1,14 @@
1
+ === 1.6.34 / 2016-04-26
2
+
3
+ * Add support for RubyInstaller-2.3
4
+ * Avoid RARRAY_PTR() which broke fxruby on ruby-2.3.0.
5
+ * Make use of StringValueCStr() where it is suitable.
6
+ * Fix initialisation of runOnUiThread event handler, when FXApp is called with a block.
7
+ * Disable GVL on RubyInstaller-1.9.3. Fixes #24
8
+
1
9
  === 1.6.33 / 2015-08-20
2
10
 
3
- * Avoid calls that are prohibited while GC phases during GC. Fixes #23
11
+ * Avoid rb_* calls that are prohibited during GC. Fixes #23
4
12
  * Use copy'ing getters for FXVec members in FXMat*, FXMaterial and FXLight.
5
13
  This fixes the TC_FXMaterial#test_bug test case.
6
14
  * Fix test suite, so that all tests pass.
data/Rakefile CHANGED
@@ -70,7 +70,7 @@ hoe = Hoe.spec "fxruby" do
70
70
  self.extra_rdoc_files << self.readme_file
71
71
  self.extra_deps << ['mini_portile', '~> 0.6']
72
72
  self.extra_dev_deps << ['rake-compiler', '~> 0.9']
73
- self.extra_dev_deps << ['rake-compiler-dock', '~> 0.4.3']
73
+ self.extra_dev_deps << ['rake-compiler-dock', '~> 0.5.2']
74
74
  self.extra_dev_deps << ['opengl', '~> 0.8']
75
75
  self.extra_dev_deps << ['glu', '~> 8.0']
76
76
  self.extra_dev_deps << ['test-unit', '~> 3.1']
@@ -157,7 +157,7 @@ end
157
157
  desc "Build the windows binary gems"
158
158
  task 'gem:windows' => 'gem' do
159
159
  require 'rake_compiler_dock'
160
- RakeCompilerDock.sh "rake cross native gem RUBYOPT=--disable-rubygems MAKE=\"nice make V=1 -j `nproc`\" "
160
+ RakeCompilerDock.sh "rake cross native gem MAKE=\"nice make V=1 -j `nproc`\" "
161
161
  end
162
162
 
163
163
  # Set environment variable SWIG_LIB to
data/examples/thread.rb CHANGED
@@ -10,8 +10,8 @@ class ThreadedWindow < Fox::FXMainWindow
10
10
  super(app, "Threaded Widget Test", :opts => DECOR_ALL, width: 200, height: 500)
11
11
 
12
12
  @vframe = FXVerticalFrame.new(self,
13
- FRAME_SUNKEN|FRAME_THICK|LAYOUT_FILL_X|LAYOUT_FILL_Y, :padding => 0) do |frame|
14
- FXButton.new(frame, "Klick to add", opts: FRAME_RAISED|FRAME_THICK|LAYOUT_FILL_X) do |button|
13
+ FRAME_SUNKEN|FRAME_THICK|LAYOUT_FILL, :padding => 0) do |frame|
14
+ FXButton.new(frame, "Click to add", opts: FRAME_RAISED|FRAME_THICK|LAYOUT_FILL_X) do |button|
15
15
  button.connect(SEL_COMMAND, method(:on_button_clicked))
16
16
  end
17
17
  end
@@ -19,7 +19,7 @@ class ThreadedWindow < Fox::FXMainWindow
19
19
 
20
20
  def on_button_clicked(sender, sel, ptr)
21
21
  FXHorizontalFrame.new(@vframe,
22
- FRAME_SUNKEN|FRAME_THICK|LAYOUT_FILL_X|LAYOUT_FILL_Y, :padding => 10) do |frame|
22
+ FRAME_SUNKEN|FRAME_THICK|LAYOUT_FILL, :padding => 10) do |frame|
23
23
 
24
24
  label = FXLabel.new frame, "..."
25
25
 
@@ -1347,14 +1347,16 @@ static ID id_backtrace;
1347
1347
  static VALUE handle_rescue(VALUE args,VALUE error){
1348
1348
  VALUE info=rb_gv_get("$!");
1349
1349
  VALUE errat=rb_funcall(info,id_backtrace,0);
1350
- VALUE mesg=RARRAY_PTR(errat)[0];
1350
+ VALUE mesg=rb_ary_entry(errat, 0);
1351
+ VALUE info_str=rb_obj_as_string(info);
1351
1352
  fprintf(stderr,"%s: %s (%s)\n",
1352
- StringValuePtr(mesg),
1353
- RSTRING_PTR(rb_obj_as_string(info)),
1353
+ StringValueCStr(mesg),
1354
+ StringValueCStr(info_str),
1354
1355
  rb_class2name(CLASS_OF(info)));
1355
1356
  for(int i=1;i<RARRAY_LEN(errat);i++){
1356
- if(TYPE(RARRAY_PTR(errat)[i])==T_STRING){
1357
- fprintf(stderr,"\tfrom %s\n",StringValuePtr(RARRAY_PTR(errat)[i]));
1357
+ VALUE entry = rb_ary_entry(errat, i);
1358
+ if(TYPE(entry)==T_STRING){
1359
+ fprintf(stderr,"\tfrom %s\n",StringValueCStr(entry));
1358
1360
  }
1359
1361
  }
1360
1362
  return Qnil;
@@ -313,7 +313,15 @@ def do_rake_compiler_setup
313
313
  end
314
314
 
315
315
  checking_for("thread local variables") do
316
- $defs.push( "-DHAVE___THREAD" ) if try_compile('__thread int x=1;')
316
+ $defs.push( "-DHAVE___THREAD" ) if try_compile(<<-EOT)
317
+ __thread int x=1;
318
+ #if defined(__MINGW32__)
319
+ #include <windows.h>
320
+ #if !defined(__MINGW64_VERSION_MAJOR)
321
+ #error "Old mingw32 compiler doesn't implement thread local variables properly."
322
+ #endif
323
+ #endif
324
+ EOT
317
325
  end &&
318
326
  have_func('rb_thread_call_without_gvl') &&
319
327
  have_func('rb_thread_call_with_gvl')
@@ -5,7 +5,9 @@
5
5
 
6
6
  #include "FXRbCommon.h"
7
7
 
8
- __thread int g_fxrb_thread_has_gvl = 1;
8
+ #ifdef HAVE___THREAD
9
+ __thread int g_fxrb_thread_has_gvl = 1;
10
+ #endif
9
11
 
10
12
  FOR_EACH_BLOCKING_FUNCTION( DEFINE_GVL_WRAPPER_STRUCT );
11
13
  FOR_EACH_BLOCKING_FUNCTION( DEFINE_GVL_SKELETON );
@@ -27,20 +27,6 @@
27
27
  #ifndef FXRUBY_H
28
28
  #define FXRUBY_H
29
29
 
30
- // RARRAY_LEN, RARRAY_PTR, RSTRING_LEN and RSTRING_PTR macros not defined before Ruby 1.8.6
31
- #ifndef RARRAY_LEN
32
- #define RARRAY_LEN(a) RARRAY((a))->len
33
- #endif
34
- #ifndef RARRAY_PTR
35
- #define RARRAY_PTR(a) RARRAY((a))->ptr
36
- #endif
37
- #ifndef RSTRING_LEN
38
- #define RSTRING_LEN(s) RSTRING((s))->len
39
- #endif
40
- #ifndef RSTRING_PTR
41
- #define RSTRING_PTR(s) RSTRING((s))->ptr
42
- #endif
43
-
44
30
  #ifndef NUM2SIZET
45
31
  #define NUM2SIZET(s) NUM2ULONG(s)
46
32
  #endif
@@ -55,19 +55,21 @@ void fxrb_wakeup_fox(void *);
55
55
  when_non_void( rettype retval; ) \
56
56
  };
57
57
 
58
- extern __thread int g_fxrb_thread_has_gvl;
59
-
60
- #define DEFINE_GVL_SKELETON(klass, name, baseclass, when_non_void, rettype, firstparamtype, firstparamname) \
61
- static void * gvl_##klass##_##name##_skeleton( void *data ){ \
62
- struct gvl_wrapper_##klass##_##name##_params *p = (struct gvl_wrapper_##klass##_##name##_params*)data; \
63
- g_fxrb_thread_has_gvl = 0; \
64
- when_non_void( p->retval = ) \
65
- klass##_##name##_gvl( p->params.firstparamname FOR_EACH_PARAM_OF_##baseclass##_##name(DEFINE_PARAM_LIST2) ); \
66
- g_fxrb_thread_has_gvl = 1; \
67
- return NULL; \
68
- }
58
+ #ifdef HAVE___THREAD
59
+ extern __thread int g_fxrb_thread_has_gvl;
60
+ #endif
69
61
 
70
62
  #if defined(HAVE_RB_THREAD_CALL_WITHOUT_GVL)
63
+ #define DEFINE_GVL_SKELETON(klass, name, baseclass, when_non_void, rettype, firstparamtype, firstparamname) \
64
+ static void * gvl_##klass##_##name##_skeleton( void *data ){ \
65
+ struct gvl_wrapper_##klass##_##name##_params *p = (struct gvl_wrapper_##klass##_##name##_params*)data; \
66
+ g_fxrb_thread_has_gvl = 0; \
67
+ when_non_void( p->retval = ) \
68
+ klass##_##name##_gvl( p->params.firstparamname FOR_EACH_PARAM_OF_##baseclass##_##name(DEFINE_PARAM_LIST2) ); \
69
+ g_fxrb_thread_has_gvl = 1; \
70
+ return NULL; \
71
+ }
72
+
71
73
  #define DEFINE_GVL_STUB(klass, name, baseclass, when_non_void, rettype, firstparamtype, firstparamname) \
72
74
  rettype klass##_##name(firstparamtype firstparamname FOR_EACH_PARAM_OF_##baseclass##_##name(DEFINE_PARAM_LIST3)){ \
73
75
  struct gvl_wrapper_##klass##_##name##_params params = { \
@@ -77,6 +79,8 @@ extern __thread int g_fxrb_thread_has_gvl;
77
79
  when_non_void( return params.retval; ) \
78
80
  }
79
81
  #else
82
+ #define DEFINE_GVL_SKELETON(klass, name, baseclass, when_non_void, rettype, firstparamtype, firstparamname)
83
+
80
84
  #define DEFINE_GVL_STUB(klass, name, baseclass, when_non_void, rettype, firstparamtype, firstparamname) \
81
85
  rettype klass##_##name(firstparamtype firstparamname FOR_EACH_PARAM_OF_##baseclass##_##name(DEFINE_PARAM_LIST3)){ \
82
86
  return klass##_##name##_gvl(firstparamname FOR_EACH_PARAM_OF_##baseclass##_##name(DEFINE_PARAM_LIST1)); \
data/lib/2.0/fox16_c.so CHANGED
Binary file
data/lib/2.1/fox16_c.so CHANGED
Binary file
data/lib/2.2/fox16_c.so CHANGED
Binary file
Binary file
data/lib/fox16/thread.rb CHANGED
@@ -7,8 +7,9 @@ module Fox
7
7
  alias initialize_before_thread initialize # :nodoc:
8
8
 
9
9
  def initialize(*args, &block)
10
- initialize_before_thread(*args, &block)
10
+ initialize_before_thread(*args)
11
11
  event_handler_setup
12
+ block.call(self) if block_given?
12
13
  end
13
14
 
14
15
  def runOnUiThread(&block)
data/lib/fox16/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Fox
2
2
  def Fox.fxrubyversion
3
- "1.6.33"
3
+ "1.6.34"
4
4
  end
5
5
  end
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fxruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.33
4
+ version: 1.6.34
5
5
  platform: x64-mingw32
6
6
  authors:
7
7
  - Lyle Johnson
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-08-21 00:00:00.000000000 Z
12
+ date: 2016-04-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: mini_portile
@@ -59,14 +59,14 @@ dependencies:
59
59
  requirements:
60
60
  - - "~>"
61
61
  - !ruby/object:Gem::Version
62
- version: 0.4.3
62
+ version: 0.5.2
63
63
  type: :development
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
67
  - - "~>"
68
68
  - !ruby/object:Gem::Version
69
- version: 0.4.3
69
+ version: 0.5.2
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: opengl
72
72
  requirement: !ruby/object:Gem::Requirement
@@ -115,14 +115,14 @@ dependencies:
115
115
  requirements:
116
116
  - - "~>"
117
117
  - !ruby/object:Gem::Version
118
- version: '3.13'
118
+ version: '3.14'
119
119
  type: :development
120
120
  prerelease: false
121
121
  version_requirements: !ruby/object:Gem::Requirement
122
122
  requirements:
123
123
  - - "~>"
124
124
  - !ruby/object:Gem::Version
125
- version: '3.13'
125
+ version: '3.14'
126
126
  description: FXRuby is the Ruby binding to the FOX GUI toolkit.
127
127
  email:
128
128
  - lyle@lylejohnson.name
@@ -526,6 +526,7 @@ files:
526
526
  - lib/2.0/fox16_c.so
527
527
  - lib/2.1/fox16_c.so
528
528
  - lib/2.2/fox16_c.so
529
+ - lib/2.3/fox16_c.so
529
530
  - lib/fox16.rb
530
531
  - lib/fox16/accel_table.rb
531
532
  - lib/fox16/aliases.rb
@@ -1111,7 +1112,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1111
1112
  version: '0'
1112
1113
  requirements: []
1113
1114
  rubyforge_project:
1114
- rubygems_version: 2.4.8
1115
+ rubygems_version: 2.5.1
1115
1116
  signing_key:
1116
1117
  specification_version: 4
1117
1118
  summary: FXRuby is the Ruby binding to the FOX GUI toolkit.