fxruby 1.6.33-x86-mingw32 → 1.6.34-x86-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: 75ffb1bf31368b4ec60a58c908d8b2944a16c6fc
4
- data.tar.gz: c39dc0c3130aec21545875fcf86d7e4e986bdb18
3
+ metadata.gz: 10f2f1d9c7fa5a7d0c4cbaad196dd98d9281bd2b
4
+ data.tar.gz: 4b7d753dbe990bd344aa0ea52e4663b8713f7c10
5
5
  SHA512:
6
- metadata.gz: 0b3ab472ca46648a64d74b5099806b568fc0739f14bb3ec37581fef1543f7c44896120b0b02c331e7d35a824ba935016efb425ce800707ee129622bb34b54ea4
7
- data.tar.gz: 9ab7eb8aed3589aabe7e340b3faceb4c5b7da01f8f6280fc1a5459bc76c577fa27582a3f8029c85ca85f53b78bbfac766a06029319e70533b339ce1ca25bd391
6
+ metadata.gz: 968a8c3936da24ffc502fa97effaaae2fa5d013f3d7d625eb32695c1880d7e9c8f95add34d965937fcf19c890ed1ced761e698d8056a29aaa01c1bb51801ee05
7
+ data.tar.gz: 63075b7564a44c96e262c0fbd429bcfd170d9564e9b6f23153c3775296e68e8fc58aaaa511a11891aeac55defb3e4dec8353474b70a9b86e315795f92f550754
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/1.8/fox16_c.so CHANGED
Binary file
data/lib/1.9/fox16_c.so CHANGED
Binary file
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
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: x86-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
@@ -528,6 +528,7 @@ files:
528
528
  - lib/2.0/fox16_c.so
529
529
  - lib/2.1/fox16_c.so
530
530
  - lib/2.2/fox16_c.so
531
+ - lib/2.3/fox16_c.so
531
532
  - lib/fox16.rb
532
533
  - lib/fox16/accel_table.rb
533
534
  - lib/fox16/aliases.rb
@@ -1119,7 +1120,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1119
1120
  version: '0'
1120
1121
  requirements: []
1121
1122
  rubyforge_project:
1122
- rubygems_version: 2.4.8
1123
+ rubygems_version: 2.5.1
1123
1124
  signing_key:
1124
1125
  specification_version: 4
1125
1126
  summary: FXRuby is the Ruby binding to the FOX GUI toolkit.