win32-api 1.7.0-universal-mingw32 → 1.7.1-universal-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
- SHA1:
3
- metadata.gz: 41a72c313fa86b07d5fe937675d37d563c41efb9
4
- data.tar.gz: f12df49826c30fd8903b958e0e26f2082d0696bc
2
+ SHA256:
3
+ metadata.gz: 899305029a34692ac9e4b83188289c9b3a9df8c0eb54ffef342542e1166af56f
4
+ data.tar.gz: a9169febd00afba822e694e06efb21bb341a82d7b89a943d4e7dad6b7722f5d9
5
5
  SHA512:
6
- metadata.gz: def9577d7bb25e8fbe94c6f07d34176369475a21a45e4328dace67bacaa5674ba596631396afea239454c45402f769ae4e576c321ea7be5634ee996453c9a978
7
- data.tar.gz: cfa0ade06bbc3ecd88bd72fb3cd1c00b5af3bd389e6841d9387d97e0b1bb90a0758efba061e94d7df5effcaa89e2b435c29475bec8568d4e103dc35f5bd468b0
6
+ metadata.gz: 945c06c178dc2924016acfe65dae51fceccf09a87a70a136dc676df184f7c3d39916dc7413fde9682250e0e2d0c325885ff459a3da4e7522553d8eb687177708
7
+ data.tar.gz: f19cbbcfcaa13d33df2e8ea153d2ecd91caf217c7aaf49a4b0c3c6a8fe3677d3b3557408d4c1f5b848705f446b5002759029f22846b13e5ba6e3ef4f386daf14
data/CHANGES CHANGED
@@ -1,3 +1,8 @@
1
+ == 1.7.1 - 4-Jan-2018
2
+ * Add Ruby 2.6 snapshot support.
3
+ * Now includes binaries for Ruby 2.6 both 32 and 64 bit versions.
4
+ * Use RubyInstaller 2.5.0-1 for Ruby 2.5 binaries.
5
+
1
6
  == 1.7.0 - 28-Nov-2017
2
7
  * Add gcc option to fix crash on RubyInstaller2 x86
3
8
 
data/Rakefile CHANGED
@@ -59,63 +59,69 @@ namespace 'gem' do
59
59
  end
60
60
 
61
61
  desc 'Build a binary gem'
62
- task :binary, :ruby2_32, :ruby2_64, :ruby21, :ruby21_64, :ruby22, :ruby22_64, :ruby23_32, :ruby23_64, :ruby24_32, :ruby24_64 do |task, args|
62
+ task :binary, :ruby2_32, :ruby2_64, :ruby21, :ruby21_64, :ruby22, :ruby22_64, :ruby23_32, :ruby23_64, :ruby24_32, :ruby24_64, :ruby25_32, :ruby25_64 do |task, args|
63
63
  # These are just what's on my system at the moment. Adjust as needed.
64
+ # ri refers to RubyInstaller, ruby 2.3 and prev were built with RubyInstaller (:ri),
65
+ # 2.4 and later with RubyInstaller2 (:ri2)
66
+ # pre variable allows local builds with ruby & DevKit not at drive root
67
+
68
+ dk_path = {}
69
+ if ENV['APPVEYOR'] =~ /true/i
70
+ pre = "C:"
71
+ dk_path[:ri] = "C:/ruby23/DevKit/bin;C:/ruby23/DevKit/mingw/bin"
72
+ dk_path[:ri_64] = "C:/ruby23-x64/DevKit/bin;C:/ruby23-x64/DevKit/mingw/bin"
73
+ else
74
+ ENV['BASEPATH'] = ENV['PATH'].gsub(/\\/, '/')
75
+ pre = "C:"
76
+ dk_path[:ri] = "#{pre}/Devkit/bin;#{pre}/Devkit/mingw/bin"
77
+ dk_path[:ri_64] = "#{pre}/Devkit64/bin;#{pre}/Devkit64/mingw/bin"
78
+ end
79
+ # at present, Appveyor & local DevKit paths match for ri2
80
+ dk_path[:ri2] = "C:/msys64/usr/bin;C:/msys64/mingw32/bin"
81
+ dk_path[:ri2_64] = "C:/msys64/usr/bin;C:/msys64/mingw64/bin"
82
+
64
83
  args.with_defaults(
65
84
  {
66
- :ruby2_32 => {:path => "c:/ruby200/bin/ruby", :msys => :msys1},
67
- :ruby2_64 => {:path => "c:/ruby200-x64/bin/ruby", :msys => :msys1},
68
- :ruby21_32 => {:path => "c:/ruby21/bin/ruby", :msys => :msys1},
69
- :ruby21_64 => {:path => "c:/ruby21-x64/bin/ruby", :msys => :msys1},
70
- :ruby22_32 => {:path => "c:/ruby22/bin/ruby", :msys => :msys1},
71
- :ruby22_64 => {:path => "c:/ruby22-x64/bin/ruby", :msys => :msys1},
72
- :ruby23_32 => {:path => "c:/ruby23/bin/ruby", :msys => :msys1},
73
- :ruby23_64 => {:path => "c:/ruby23-x64/bin/ruby", :msys => :msys1},
74
- :ruby24_32 => {:path => "c:/ruby24/bin/ruby", :msys => :msys2},
75
- :ruby24_64 => {:path => "c:/ruby24-x64/bin/ruby", :msys => :msys2},
76
- :ruby25_32 => {:path => "c:/ruby25/bin/ruby", :msys => :msys2},
77
- :ruby25_64 => {:path => "c:/ruby25-x64/bin/ruby", :msys => :msys2}
85
+ :ruby2_32 => {:path => "#{pre}/ruby200/bin", :ri => :ri, :omit => false},
86
+ :ruby2_64 => {:path => "#{pre}/ruby200-x64/bin", :ri => :ri_64, :omit => false},
87
+ :ruby21_32 => {:path => "#{pre}/ruby21/bin", :ri => :ri, :omit => false},
88
+ :ruby21_64 => {:path => "#{pre}/ruby21-x64/bin", :ri => :ri_64, :omit => false},
89
+ :ruby22_32 => {:path => "#{pre}/ruby22/bin", :ri => :ri, :omit => false},
90
+ :ruby22_64 => {:path => "#{pre}/ruby22-x64/bin", :ri => :ri_64, :omit => false},
91
+ :ruby23_32 => {:path => "#{pre}/ruby23/bin", :ri => :ri, :omit => false},
92
+ :ruby23_64 => {:path => "#{pre}/ruby23-x64/bin", :ri => :ri_64, :omit => false},
93
+ :ruby24_32 => {:path => "#{pre}/ruby24/bin", :ri => :ri2, :omit => false},
94
+ :ruby24_64 => {:path => "#{pre}/ruby24-x64/bin", :ri => :ri2_64, :omit => false},
95
+ :ruby25_32 => {:path => "#{pre}/ruby25/bin", :ri => :ri2, :omit => true},
96
+ :ruby25_64 => {:path => "#{pre}/ruby25-x64/bin", :ri => :ri2_64, :omit => true},
97
+ :ruby26_32 => {:path => "#{pre}/ruby26/bin", :ri => :ri2, :omit => true},
98
+ :ruby26_64 => {:path => "#{pre}/ruby26-x64/bin", :ri => :ri2_64, :omit => true},
78
99
  }
79
100
  )
80
101
 
81
102
  Rake::Task[:clobber].invoke
82
103
 
83
- args.each{ |key|
84
- default_path = ENV['PATH']
104
+ default_path = ENV['PATH']
85
105
 
86
- spec = eval(IO.read('win32-api.gemspec'))
87
-
88
- if spec.version.prerelease? && !File.exist?("#{key.last[:path]}.exe")
89
- puts "#{key.last[:path]} does not exist! Skip."
106
+ args.each { |key|
107
+ # These lines are used for trunk build.
108
+ if key.last[:omit] && !File.exist?("#{key.last[:path]}/ruby.exe")
109
+ puts "#{key.last[:path]}/ruby does not exist! Skip."
90
110
  next
91
111
  end
92
112
 
93
- if key.last[:msys] == :msys1
94
- # Adjust devkit paths as needed.
95
- if `"#{key.last[:path]}" -v` =~ /x64/i
96
- ENV['PATH'] = "C:/Devkit64/bin;C:/Devkit64/mingw/bin;" + ENV['PATH']
97
- else
98
- ENV['PATH'] = "C:/Devkit/bin;C:/Devkit/mingw/bin;" + ENV['PATH']
99
- end
100
- elsif key.last[:msys] == :msys2
101
- ENV.delete('RI_DEVKIT')
102
- # Adjust devkit paths as needed.
103
- if `"#{key.last[:path]}" -v` =~ /x64/i
104
- ENV['PATH'] = "C:/msys64/usr/bin;C:/msys64/mingw64/bin;" + ENV['PATH']
105
- else
106
- ENV['PATH'] = "C:/msys64/usr/bin;C:/msys64/mingw32/bin;" + ENV['PATH']
107
- end
108
- end
113
+ bld_path = "#{key.last[:path]};#{dk_path[key.last[:ri]]};#{ENV['BASEPATH']}"
109
114
  mkdir_p "lib/win32/#{key.first}/win32"
110
115
 
111
116
  Dir.chdir('ext') do
117
+ ENV['PATH'] = bld_path
112
118
  sh "make distclean" rescue nil
113
- sh "#{key.last[:path]} extconf.rb"
119
+ sh "ruby extconf.rb"
114
120
  sh "make"
121
+ sh "strip --strip-unneeded -p api.so"
122
+ ENV['PATH'] = default_path
115
123
  cp 'api.so', "../lib/win32/#{key.first}/win32/api.so"
116
124
  end
117
-
118
- ENV['PATH'] = default_path
119
125
  }
120
126
 
121
127
  text = <<HERE
@@ -171,6 +177,14 @@ begin
171
177
  end
172
178
  end
173
179
 
180
+ if RbConfig::CONFIG['MINOR'] == '6'
181
+ if RbConfig::CONFIG['arch'] =~ /x64/i
182
+ require File.join(File.dirname(__FILE__), 'ruby26_64/win32/api')
183
+ else
184
+ require File.join(File.dirname(__FILE__), 'ruby26_32/win32/api')
185
+ end
186
+ end
187
+
174
188
  end
175
189
  rescue LoadError
176
190
  require File.join(File.dirname(__FILE__), '../../ext/api')
@@ -1,61 +1,46 @@
1
1
  version: '{build}'
2
2
 
3
+ init:
4
+ # use a minimal path
5
+ - set PATH=C:\ruby%ruby_version%\bin;C:\Program Files\7-Zip;C:\Program Files\AppVeyor\BuildAgent;C:\Program Files\Git\cmd;C:\Windows\system32
6
+ # Load ruby trunk build
7
+ - if %ruby_version%==_trunk (
8
+ appveyor DownloadFile https://ci.appveyor.com/api/projects/MSP-Greg/ruby-loco/artifacts/ruby_trunk.7z -FileName C:\ruby_trunk.7z &
9
+ 7z x C:\ruby_trunk.7z -oC:\ruby_trunk
10
+ )
11
+
3
12
  platform: x64
4
13
 
5
14
  install:
6
- - SET PATH=C:\Ruby%ruby_version%\bin;%PATH%
7
- - "%devkit64%\\devkitvars.bat"
8
- - "%devkit32%\\devkitvars.bat"
9
15
  - ruby --version
10
16
  - gem --version
11
- - IF %msys2%==1 ridk.cmd enable
12
- - IF %msys2%==1 gem install bundler --force
17
+ # Assume we can use the version of bundler that Appveyor has packaged with each ruby version
13
18
  - bundle install
19
+
14
20
  build: off
21
+
15
22
  test_script:
16
- - bundle exec rake gem:binary
17
- - IF %msys2%==0 bundle exec rake test:all
18
- - IF %msys2%==1 ridk.cmd exec bundle exec rake test:all
23
+ - rake gem:binary
24
+ - rake -rdevkit test:all
19
25
 
20
26
  environment:
21
27
  matrix:
22
- - ruby_version: "24-x64"
23
- devkit64: C:\Ruby23-x64\DevKit
24
- devkit32: C:\Ruby23\DevKit
25
- msys2: 1
26
- - ruby_version: "24"
27
- devkit64: C:\Ruby23-x64\DevKit
28
- devkit32: C:\Ruby23\DevKit
29
- msys2: 1
30
- - ruby_version: "23-x64"
31
- devkit64: C:\Ruby23-x64\DevKit
32
- devkit32: C:\Ruby23\DevKit
33
- msys2: 0
34
- - ruby_version: "23"
35
- devkit64: C:\Ruby23-x64\DevKit
36
- devkit32: C:\Ruby23\DevKit
37
- msys2: 0
38
- - ruby_version: "22-x64"
39
- devkit64: C:\Ruby23-x64\DevKit
40
- devkit32: C:\Ruby23\DevKit
41
- msys2: 0
42
- - ruby_version: "22"
43
- devkit64: C:\Ruby23-x64\DevKit
44
- devkit32: C:\Ruby23\DevKit
45
- msys2: 0
46
- - ruby_version: "21-x64"
47
- devkit64: C:\Ruby23-x64\DevKit
48
- devkit32: C:\Ruby23\DevKit
49
- msys2: 0
50
- - ruby_version: "21"
51
- devkit64: C:\Ruby23-x64\DevKit
52
- devkit32: C:\Ruby23\DevKit
53
- msys2: 0
54
- - ruby_version: "200-x64"
55
- devkit64: C:\Ruby23-x64\DevKit
56
- devkit32: C:\Ruby23\DevKit
57
- msys2: 0
58
- - ruby_version: "200"
59
- devkit64: C:\Ruby23-x64\DevKit
60
- devkit32: C:\Ruby23\DevKit
61
- msys2: 0
28
+ - ruby_version: _trunk
29
+ - ruby_version: 25-x64
30
+ - ruby_version: 25
31
+ - ruby_version: 24-x64
32
+ - ruby_version: 24
33
+ - ruby_version: 23-x64
34
+ - ruby_version: 23
35
+ - ruby_version: 22-x64
36
+ - ruby_version: 22
37
+ - ruby_version: 21-x64
38
+ - ruby_version: 21
39
+ - ruby_version: 200-x64
40
+ - ruby_version: 200
41
+
42
+ matrix:
43
+ allow_failures:
44
+ - ruby_version: _trunk
45
+ - ruby_version: 25-x64
46
+ - ruby_version: 25
@@ -37,7 +37,7 @@
37
37
 
38
38
 
39
39
  #define MAX_BUF 1024
40
- #define WINDOWS_API_VERSION "1.7.0"
40
+ #define WINDOWS_API_VERSION "1.7.1"
41
41
 
42
42
  #define _T_VOID 0
43
43
  #define _T_LONG 1
@@ -50,6 +50,14 @@ begin
50
50
  end
51
51
  end
52
52
 
53
+ if RbConfig::CONFIG['MINOR'] == '6'
54
+ if RbConfig::CONFIG['arch'] =~ /x64/i
55
+ require File.join(File.dirname(__FILE__), 'ruby26_64/win32/api')
56
+ else
57
+ require File.join(File.dirname(__FILE__), 'ruby26_32/win32/api')
58
+ end
59
+ end
60
+
53
61
  end
54
62
  rescue LoadError
55
63
  require File.join(File.dirname(__FILE__), '../../ext/api')
@@ -18,7 +18,7 @@ class TC_Win32_API < Test::Unit::TestCase
18
18
  end
19
19
 
20
20
  def test_version
21
- assert_equal('1.6.1.2', API::VERSION)
21
+ assert_equal('1.7.1', API::VERSION)
22
22
  end
23
23
 
24
24
  def test_constructor_basic
@@ -2,7 +2,7 @@ require 'rubygems'
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = 'win32-api'
5
- spec.version = '1.7.0'
5
+ spec.version = '1.7.1'
6
6
  spec.authors = ['Daniel J. Berger', 'Park Heesob', 'Hiroshi Hatake']
7
7
  spec.license = 'Artistic-2.0'
8
8
  spec.email = 'djberg96@gmail.com'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: win32-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.0
4
+ version: 1.7.1
5
5
  platform: universal-mingw32
6
6
  authors:
7
7
  - Daniel J. Berger
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2017-11-28 00:00:00.000000000 Z
13
+ date: 2018-01-04 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: test-unit
@@ -73,6 +73,8 @@ files:
73
73
  - lib/win32/ruby24_64/win32/api.so
74
74
  - lib/win32/ruby25_32/win32/api.so
75
75
  - lib/win32/ruby25_64/win32/api.so
76
+ - lib/win32/ruby26_32/win32/api.so
77
+ - lib/win32/ruby26_64/win32/api.so
76
78
  - lib/win32/ruby2_32/win32/api.so
77
79
  - lib/win32/ruby2_64/win32/api.so
78
80
  - test/test_win32_api.rb
@@ -99,7 +101,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
101
  version: '0'
100
102
  requirements: []
101
103
  rubyforge_project:
102
- rubygems_version: 2.6.13
104
+ rubygems_version: 2.7.3
103
105
  signing_key:
104
106
  specification_version: 4
105
107
  summary: A superior replacement for Win32API