win32-api 1.6.1.2-universal-mingw32 → 1.9.0-universal-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/CHANGES +22 -0
- data/Dockerfile +99 -0
- data/Dockerfile.trunk +17 -0
- data/README +2 -2
- data/RELEASE.md +32 -0
- data/Rakefile +83 -32
- data/appveyor.yml +33 -52
- data/build-gem.bat +3 -0
- data/ext/win32/api.c +1 -1
- data/lib/win32/api.rb +32 -0
- data/lib/win32/ruby21_32/win32/api.so +0 -0
- data/lib/win32/ruby21_64/win32/api.so +0 -0
- data/lib/win32/ruby22_32/win32/api.so +0 -0
- data/lib/win32/ruby22_64/win32/api.so +0 -0
- data/lib/win32/ruby23_32/win32/api.so +0 -0
- data/lib/win32/ruby23_64/win32/api.so +0 -0
- data/lib/win32/ruby24_32/win32/api.so +0 -0
- data/lib/win32/ruby24_64/win32/api.so +0 -0
- data/lib/win32/ruby25_32/win32/api.so +0 -0
- data/lib/win32/ruby25_64/win32/api.so +0 -0
- data/lib/win32/ruby26_32/win32/api.so +0 -0
- data/lib/win32/ruby26_64/win32/api.so +0 -0
- data/lib/win32/ruby27_32/win32/api.so +0 -0
- data/lib/win32/ruby27_64/win32/api.so +0 -0
- data/lib/win32/ruby28_64/win32/api.so +0 -0
- data/lib/win32/ruby2_32/win32/api.so +0 -0
- data/lib/win32/ruby2_64/win32/api.so +0 -0
- data/test/test_win32_api.rb +1 -1
- data/win32-api.gemspec +1 -1
- metadata +14 -5
- data/Gemfile.lock +0 -24
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: c84861dda02ef376babbdbd653e323627cda2c197293401e9dd8805be5b53b04
|
4
|
+
data.tar.gz: 1250d17a9afd0f9bcf7aa4909873016bb32d0e96d51b10b63d7c815e6a29c702
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 71edfa49cdeadd82541470d5a025a50cf7ea9926f8ff7f0192cf6b9ddcde34babbce20127cefe92e7309f80a75624d64e6d58251802db88c739e0d59c552651a
|
7
|
+
data.tar.gz: bf933ebeb1d9e46856e6a32aab8f02b231ed43a3fde5a01cf516aa893bfa702a5c63ed31a5097f3fb3165618c9fc3f29f979d845d562fb8f5c8291b5f27f8c4c
|
data/CHANGES
CHANGED
@@ -1,3 +1,25 @@
|
|
1
|
+
== 1.9.0 - 6-Jan-2020
|
2
|
+
* Add Ruby 2.8 snapshot support.
|
3
|
+
* Now includes binaries for Ruby 2.8 both 32 and 64 bit versions.
|
4
|
+
* Use RubyInstaller 2.7.0-1 for Ruby 2.7 binaries.
|
5
|
+
|
6
|
+
== 1.8.0 - 6-Jan-2019
|
7
|
+
* Add Ruby 2.7 snapshot support.
|
8
|
+
* Now includes binaries for Ruby 2.7 both 32 and 64 bit versions.
|
9
|
+
* Use RubyInstaller 2.6.0-1 for Ruby 2.6 binaries.
|
10
|
+
|
11
|
+
== 1.7.1 - 4-Jan-2018
|
12
|
+
* Add Ruby 2.6 snapshot support.
|
13
|
+
* Now includes binaries for Ruby 2.6 both 32 and 64 bit versions.
|
14
|
+
* Use RubyInstaller 2.5.0-1 for Ruby 2.5 binaries.
|
15
|
+
|
16
|
+
== 1.7.0 - 28-Nov-2017
|
17
|
+
* Add gcc option to fix crash on RubyInstaller2 x86
|
18
|
+
|
19
|
+
== 1.7.0.pre1 - 16-July-2017
|
20
|
+
* Add Ruby 2.5 snapshot support.
|
21
|
+
* Now includes binaries for Ruby 2.5 for both 32 and 64 bit versions.
|
22
|
+
|
1
23
|
== 1.6.1.2 - 2-Feb-2017
|
2
24
|
* Fix wrong gem packaging.
|
3
25
|
|
data/Dockerfile
ADDED
@@ -0,0 +1,99 @@
|
|
1
|
+
FROM mcr.microsoft.com/windows/servercore:1903
|
2
|
+
LABEL maintainer "Hiroshi Hatake <cosmo0920.wp@gmail.com>"
|
3
|
+
LABEL Description="win32-api building docker image"
|
4
|
+
|
5
|
+
# Do not split this into multiple RUN!
|
6
|
+
# Docker creates a layer for every RUN-Statement
|
7
|
+
RUN powershell -Command "Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))"
|
8
|
+
|
9
|
+
# Ruby 2.0.0
|
10
|
+
RUN powershell \
|
11
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
12
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.0.0-p648.exe https://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.0.0-p648.exe
|
13
|
+
RUN cmd /c "C:\rubyinstaller-2.0.0-p648.exe" /silent /dir=c:\ruby200
|
14
|
+
RUN powershell \
|
15
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
16
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.0.0-p648-x64.exe https://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.0.0-p648-x64.exe
|
17
|
+
RUN cmd /c "C:\rubyinstaller-2.0.0-p648-x64.exe" /silent /dir=c:\ruby200-x64
|
18
|
+
# Ruby 2.1
|
19
|
+
RUN powershell \
|
20
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
21
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.1.9.exe https://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.1.9.exe
|
22
|
+
RUN cmd /c "C:\rubyinstaller-2.1.9.exe" /silent /dir=c:\ruby21
|
23
|
+
RUN powershell \
|
24
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
25
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.1.9-x64.exe https://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.1.9-x64.exe
|
26
|
+
RUN cmd /c "C:\rubyinstaller-2.1.9-x64.exe" /silent /dir=c:\ruby21-x64
|
27
|
+
# Ruby 2.2
|
28
|
+
RUN powershell \
|
29
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
30
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.2.6.exe https://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.2.6.exe
|
31
|
+
RUN cmd /c "C:\rubyinstaller-2.2.6.exe" /silent /dir=c:\ruby22
|
32
|
+
RUN powershell \
|
33
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
34
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.2.6-x64.exe https://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.2.6-x64.exe
|
35
|
+
RUN cmd /c "C:\rubyinstaller-2.2.6-x64.exe" /silent /dir=c:\ruby22-x64
|
36
|
+
# Ruby 2.3
|
37
|
+
RUN powershell \
|
38
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
39
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.3.3.exe https://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.3.3.exe
|
40
|
+
RUN cmd /c "C:\rubyinstaller-2.3.3.exe" /silent /dir=c:\ruby23
|
41
|
+
RUN powershell \
|
42
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
43
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.3.3-x64.exe https://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.3.3-x64.exe
|
44
|
+
RUN cmd /c "C:\rubyinstaller-2.3.3-x64.exe" /silent /dir=c:\ruby23-x64
|
45
|
+
# Ruby 2.4
|
46
|
+
RUN powershell \
|
47
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
48
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.4.9-1-x86.exe https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.4.9-1/rubyinstaller-2.4.9-1-x86.exe
|
49
|
+
RUN cmd /c "C:\rubyinstaller-2.4.9-1-x86.exe" /silent /dir=c:\ruby24
|
50
|
+
RUN powershell \
|
51
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
52
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.4.9-1-x64.exe https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.4.9-1/rubyinstaller-2.4.9-1-x64.exe
|
53
|
+
RUN cmd /c "C:\rubyinstaller-2.4.9-1-x64.exe" /silent /dir=c:\ruby24-x64
|
54
|
+
# Ruby 2.5
|
55
|
+
RUN powershell \
|
56
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
57
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.5.7-1-x86.exe https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.5.7-1/rubyinstaller-2.5.7-1-x86.exe
|
58
|
+
RUN cmd /c "C:\rubyinstaller-2.5.7-1-x86.exe" /silent /dir=c:\ruby25
|
59
|
+
RUN powershell \
|
60
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
61
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.5.7-1-x64.exe https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.5.7-1/rubyinstaller-2.5.7-1-x64.exe
|
62
|
+
RUN cmd /c "C:\rubyinstaller-2.5.7-1-x64.exe" /silent /dir=c:\ruby25-x64
|
63
|
+
# Ruby 2.6
|
64
|
+
RUN powershell \
|
65
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
66
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.6.5-1-x86.exe https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.6.5-1/rubyinstaller-2.6.5-1-x86.exe
|
67
|
+
RUN cmd /c "C:\rubyinstaller-2.6.5-1-x86.exe" /silent /dir=c:\ruby26
|
68
|
+
RUN powershell \
|
69
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
70
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.6.5-1-x64.exe https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.6.5-1/rubyinstaller-2.6.5-1-x64.exe
|
71
|
+
RUN cmd /c "C:\rubyinstaller-2.6.5-1-x64.exe" /silent /dir=c:\ruby26-x64
|
72
|
+
|
73
|
+
# Ruby 2.7
|
74
|
+
RUN powershell \
|
75
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
76
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.7.0-1-x86.exe https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.7.0-1/rubyinstaller-2.7.0-1-x86.exe
|
77
|
+
RUN cmd /c "C:\rubyinstaller-2.7.0-1-x86.exe" /silent /dir=c:\ruby27
|
78
|
+
RUN powershell \
|
79
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
80
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-2.7.0-1-x64.exe https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.7.0-1/rubyinstaller-2.7.0-1-x64.exe
|
81
|
+
RUN cmd /c "C:\rubyinstaller-2.7.0-1-x64.exe" /silent /dir=c:\ruby27-x64
|
82
|
+
|
83
|
+
# DevKit
|
84
|
+
RUN powershell \
|
85
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
86
|
+
Invoke-WebRequest -OutFile C:\DevKit-mingw64-32-4.7.2-20130224-1151-sfx.exe https://dl.bintray.com/oneclick/rubyinstaller/DevKit-mingw64-32-4.7.2-20130224-1151-sfx.exe
|
87
|
+
RUN cmd /c C:\DevKit-mingw64-32-4.7.2-20130224-1151-sfx.exe -o"c:\DevKit" -y
|
88
|
+
RUN powershell \
|
89
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
90
|
+
Invoke-WebRequest -OutFile C:\DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe https://dl.bintray.com/oneclick/rubyinstaller/DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe
|
91
|
+
RUN cmd /c C:\DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe -o"c:\DevKit64" -y
|
92
|
+
|
93
|
+
RUN choco install -y git \
|
94
|
+
&& choco install -y msys2 --params "'/NoPath /NoUpdate /InstallDir:C:\msys64'"
|
95
|
+
RUN refreshenv \
|
96
|
+
&& C:\ruby27\bin\ridk install 2 3 \
|
97
|
+
&& C:\ruby27-x64\bin\ridk install 2 3
|
98
|
+
|
99
|
+
ENTRYPOINT ["cmd"]
|
data/Dockerfile.trunk
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
FROM cosmo0920/win32-api:latest
|
2
|
+
LABEL maintainer "Hiroshi Hatake <cosmo0920.wp@gmail.com>"
|
3
|
+
LABEL Description="win32-api building docker image"
|
4
|
+
|
5
|
+
# Ruby 2.8
|
6
|
+
RUN powershell \
|
7
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
8
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-head-x86-20200106.exe https://ci.appveyor.com/api/buildjobs/n7m98ejuhuu2rn4g/artifacts/packages%2Fri%2Frecipes%2Finstaller-inno%2Frubyinstaller-head-x64.exe
|
9
|
+
RUN cmd /c "C:\rubyinstaller-head-x86-20200106.exe" /silent /dir=c:\ruby28
|
10
|
+
RUN powershell \
|
11
|
+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
|
12
|
+
Invoke-WebRequest -OutFile C:\rubyinstaller-head-x64-20200106.exe https://ci.appveyor.com/api/buildjobs/n7m98ejuhuu2rn4g/artifacts/packages%2Fri%2Frecipes%2Finstaller-inno%2Frubyinstaller-head-x64.exe
|
13
|
+
RUN cmd /c "C:\rubyinstaller-head-x64-20200106.exe" /silent /dir=c:\ruby28-x64
|
14
|
+
|
15
|
+
RUN mkdir C:\pkg
|
16
|
+
COPY build-gem.bat C:\\build-gem.bat
|
17
|
+
ENTRYPOINT ["cmd"]
|
data/README
CHANGED
@@ -98,7 +98,7 @@
|
|
98
98
|
Possible callback issues when dealing with multi-threaded applications.
|
99
99
|
|
100
100
|
Please submit any bug reports to the project page at
|
101
|
-
https://github.com/
|
101
|
+
https://github.com/cosmo0920/win32-api
|
102
102
|
|
103
103
|
== Contributions
|
104
104
|
Although this library is free, please consider having your company
|
@@ -117,7 +117,7 @@
|
|
117
117
|
|
118
118
|
= Copyright
|
119
119
|
(C) 2003-2015 Daniel J. Berger
|
120
|
-
(C) 2016 Hiroshi Hatake
|
120
|
+
(C) 2016-2019 Hiroshi Hatake
|
121
121
|
All Rights Reserved
|
122
122
|
|
123
123
|
= License
|
data/RELEASE.md
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
## Prerequisites
|
2
|
+
|
3
|
+
* Docker for Windows
|
4
|
+
|
5
|
+
### Release step
|
6
|
+
|
7
|
+
Check the latest ruby-head-YYYYmmDD image:
|
8
|
+
https://hub.docker.com/r/cosmo0920/win32-api/tags?page=1&name=ruby-head
|
9
|
+
|
10
|
+
```powershell
|
11
|
+
PS> mkdir pkg
|
12
|
+
PS> docker run -it -v $PWD\pkg:C:\pkg cosmo0920/win32-api:ruby-head-AWESOMEDATE
|
13
|
+
```
|
14
|
+
|
15
|
+
Build universal gem:
|
16
|
+
|
17
|
+
```cmd
|
18
|
+
> .\build-gem.bat
|
19
|
+
```
|
20
|
+
|
21
|
+
Copy built universal gem into mounted directory:
|
22
|
+
|
23
|
+
```cmd
|
24
|
+
> copy C:\win32-api\win32-api-*.gem C:\pkg
|
25
|
+
```
|
26
|
+
|
27
|
+
Then, exit and push built gem:
|
28
|
+
|
29
|
+
```cmd
|
30
|
+
> exit
|
31
|
+
> gem push win32-api-*.gem
|
32
|
+
```
|
data/Rakefile
CHANGED
@@ -59,54 +59,73 @@ 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, :ruby_26_32, :ruby26_64, :ruby27_32, :ruby27_64, :ruby28_32, :ruby28_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 => "
|
67
|
-
:ruby2_64 => {:path => "
|
68
|
-
:ruby21_32 => {:path => "
|
69
|
-
:ruby21_64 => {:path => "
|
70
|
-
:ruby22_32 => {:path => "
|
71
|
-
:ruby22_64 => {:path => "
|
72
|
-
:ruby23_32 => {:path => "
|
73
|
-
:ruby23_64 => {:path => "
|
74
|
-
:ruby24_32 => {:path => "
|
75
|
-
:ruby24_64 => {:path => "
|
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 => false},
|
96
|
+
:ruby25_64 => {:path => "#{pre}/ruby25-x64/bin", :ri => :ri2_64, :omit => false},
|
97
|
+
:ruby26_32 => {:path => "#{pre}/ruby26/bin", :ri => :ri2, :omit => false},
|
98
|
+
:ruby26_64 => {:path => "#{pre}/ruby26-x64/bin", :ri => :ri2_64, :omit => false},
|
99
|
+
:ruby27_32 => {:path => "#{pre}/ruby27/bin", :ri => :ri2, :omit => true},
|
100
|
+
:ruby27_64 => {:path => "#{pre}/ruby27-x64/bin", :ri => :ri2_64, :omit => true},
|
101
|
+
:ruby28_32 => {:path => "#{pre}/ruby28/bin", :ri => :ri2, :omit => true},
|
102
|
+
:ruby28_64 => {:path => "#{pre}/ruby28-x64/bin", :ri => :ri2_64, :omit => true},
|
76
103
|
}
|
77
104
|
)
|
78
105
|
|
79
106
|
Rake::Task[:clobber].invoke
|
80
107
|
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
else
|
89
|
-
ENV['PATH'] = "C:/Devkit/bin;C:/Devkit/mingw/bin;" + ENV['PATH']
|
90
|
-
end
|
91
|
-
elsif key.last[:msys] == :msys2
|
92
|
-
ENV.delete('RI_DEVKIT')
|
93
|
-
# Adjust devkit paths as needed.
|
94
|
-
if `"#{key.last[:path]}" -v` =~ /x64/i
|
95
|
-
ENV['PATH'] = "C:/msys64/usr/bin;C:/msys64/mingw64/bin;" + ENV['PATH']
|
96
|
-
else
|
97
|
-
ENV['PATH'] = "C:/msys64/usr/bin;C:/msys64/mingw32/bin;" + ENV['PATH']
|
98
|
-
end
|
108
|
+
default_path = ENV['PATH']
|
109
|
+
|
110
|
+
args.each { |key|
|
111
|
+
# These lines are used for trunk build.
|
112
|
+
if key.last[:omit] && !File.exist?("#{key.last[:path]}/ruby.exe")
|
113
|
+
puts "#{key.last[:path]}/ruby does not exist! Skip."
|
114
|
+
next
|
99
115
|
end
|
116
|
+
|
117
|
+
bld_path = "#{key.last[:path]};#{dk_path[key.last[:ri]]};#{ENV['BASEPATH']}"
|
100
118
|
mkdir_p "lib/win32/#{key.first}/win32"
|
101
119
|
|
102
120
|
Dir.chdir('ext') do
|
121
|
+
ENV['PATH'] = bld_path
|
103
122
|
sh "make distclean" rescue nil
|
104
|
-
sh "
|
123
|
+
sh "ruby extconf.rb"
|
105
124
|
sh "make"
|
125
|
+
sh "strip --strip-unneeded -p api.so"
|
126
|
+
ENV['PATH'] = default_path
|
106
127
|
cp 'api.so', "../lib/win32/#{key.first}/win32/api.so"
|
107
128
|
end
|
108
|
-
|
109
|
-
ENV['PATH'] = default_path
|
110
129
|
}
|
111
130
|
|
112
131
|
text = <<HERE
|
@@ -154,6 +173,38 @@ begin
|
|
154
173
|
end
|
155
174
|
end
|
156
175
|
|
176
|
+
if RbConfig::CONFIG['MINOR'] == '5'
|
177
|
+
if RbConfig::CONFIG['arch'] =~ /x64/i
|
178
|
+
require File.join(File.dirname(__FILE__), 'ruby25_64/win32/api')
|
179
|
+
else
|
180
|
+
require File.join(File.dirname(__FILE__), 'ruby25_32/win32/api')
|
181
|
+
end
|
182
|
+
end
|
183
|
+
|
184
|
+
if RbConfig::CONFIG['MINOR'] == '6'
|
185
|
+
if RbConfig::CONFIG['arch'] =~ /x64/i
|
186
|
+
require File.join(File.dirname(__FILE__), 'ruby26_64/win32/api')
|
187
|
+
else
|
188
|
+
require File.join(File.dirname(__FILE__), 'ruby26_32/win32/api')
|
189
|
+
end
|
190
|
+
end
|
191
|
+
|
192
|
+
if RbConfig::CONFIG['MINOR'] == '7'
|
193
|
+
if RbConfig::CONFIG['arch'] =~ /x64/i
|
194
|
+
require File.join(File.dirname(__FILE__), 'ruby27_64/win32/api')
|
195
|
+
else
|
196
|
+
require File.join(File.dirname(__FILE__), 'ruby27_32/win32/api')
|
197
|
+
end
|
198
|
+
end
|
199
|
+
|
200
|
+
if RbConfig::CONFIG['MINOR'] == '8'
|
201
|
+
if RbConfig::CONFIG['arch'] =~ /x64/i
|
202
|
+
require File.join(File.dirname(__FILE__), 'ruby28_64/win32/api')
|
203
|
+
else
|
204
|
+
require File.join(File.dirname(__FILE__), 'ruby28_32/win32/api')
|
205
|
+
end
|
206
|
+
end
|
207
|
+
|
157
208
|
end
|
158
209
|
rescue LoadError
|
159
210
|
require File.join(File.dirname(__FILE__), '../../ext/api')
|
data/appveyor.yml
CHANGED
@@ -1,65 +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
|
-
- ps: Start-FileDownload https://github.com/larskanis/rubyinstaller2/releases/download/2.4.0-7/rubyinstaller-2.4.0-7-x86.exe
|
10
|
-
- rubyinstaller-2.4.0-7-x86.exe TYPE=full /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /CLOSEAPPLICATIONS /NORESTARTAPPLICATIONS /DIR="C:\Ruby24"
|
11
|
-
- ps: Start-FileDownload https://github.com/larskanis/rubyinstaller2/releases/download/2.4.0-7/rubyinstaller-2.4.0-7-x64.exe
|
12
|
-
- rubyinstaller-2.4.0-7-x64.exe TYPE=full /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /CLOSEAPPLICATIONS /NORESTARTAPPLICATIONS /DIR="C:\Ruby24-x64"
|
13
15
|
- ruby --version
|
14
16
|
- gem --version
|
15
|
-
|
16
|
-
- IF %msys2%==1 gem install bundler
|
17
|
+
# Assume we can use the version of bundler that Appveyor has packaged with each ruby version
|
17
18
|
- bundle install
|
19
|
+
|
18
20
|
build: off
|
21
|
+
|
19
22
|
test_script:
|
20
|
-
-
|
21
|
-
-
|
22
|
-
- IF %msys2%==1 ridk.cmd exec bundle exec rake test:all
|
23
|
+
- rake gem:binary
|
24
|
+
- rake -rdevkit test:all
|
23
25
|
|
24
26
|
environment:
|
25
27
|
matrix:
|
26
|
-
- ruby_version:
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
- ruby_version:
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
- ruby_version:
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
- ruby_version:
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
msys2: 0
|
46
|
-
- ruby_version: "22"
|
47
|
-
devkit64: C:\Ruby23-x64\DevKit
|
48
|
-
devkit32: C:\Ruby23\DevKit
|
49
|
-
msys2: 0
|
50
|
-
- ruby_version: "21-x64"
|
51
|
-
devkit64: C:\Ruby23-x64\DevKit
|
52
|
-
devkit32: C:\Ruby23\DevKit
|
53
|
-
msys2: 0
|
54
|
-
- ruby_version: "21"
|
55
|
-
devkit64: C:\Ruby23-x64\DevKit
|
56
|
-
devkit32: C:\Ruby23\DevKit
|
57
|
-
msys2: 0
|
58
|
-
- ruby_version: "200-x64"
|
59
|
-
devkit64: C:\Ruby23-x64\DevKit
|
60
|
-
devkit32: C:\Ruby23\DevKit
|
61
|
-
msys2: 0
|
62
|
-
- ruby_version: "200"
|
63
|
-
devkit64: C:\Ruby23-x64\DevKit
|
64
|
-
devkit32: C:\Ruby23\DevKit
|
65
|
-
msys2: 0
|
28
|
+
- ruby_version: _trunk
|
29
|
+
- ruby_version: 26-x64
|
30
|
+
- ruby_version: 26
|
31
|
+
- ruby_version: 25-x64
|
32
|
+
- ruby_version: 25
|
33
|
+
- ruby_version: 24-x64
|
34
|
+
- ruby_version: 24
|
35
|
+
- ruby_version: 23-x64
|
36
|
+
- ruby_version: 23
|
37
|
+
- ruby_version: 22-x64
|
38
|
+
- ruby_version: 22
|
39
|
+
- ruby_version: 21-x64
|
40
|
+
- ruby_version: 21
|
41
|
+
- ruby_version: 200-x64
|
42
|
+
- ruby_version: 200
|
43
|
+
|
44
|
+
matrix:
|
45
|
+
allow_failures:
|
46
|
+
- ruby_version: _trunk
|
data/build-gem.bat
ADDED
data/ext/win32/api.c
CHANGED
data/lib/win32/api.rb
CHANGED
@@ -42,6 +42,38 @@ begin
|
|
42
42
|
end
|
43
43
|
end
|
44
44
|
|
45
|
+
if RbConfig::CONFIG['MINOR'] == '5'
|
46
|
+
if RbConfig::CONFIG['arch'] =~ /x64/i
|
47
|
+
require File.join(File.dirname(__FILE__), 'ruby25_64/win32/api')
|
48
|
+
else
|
49
|
+
require File.join(File.dirname(__FILE__), 'ruby25_32/win32/api')
|
50
|
+
end
|
51
|
+
end
|
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
|
+
|
61
|
+
if RbConfig::CONFIG['MINOR'] == '7'
|
62
|
+
if RbConfig::CONFIG['arch'] =~ /x64/i
|
63
|
+
require File.join(File.dirname(__FILE__), 'ruby27_64/win32/api')
|
64
|
+
else
|
65
|
+
require File.join(File.dirname(__FILE__), 'ruby27_32/win32/api')
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
if RbConfig::CONFIG['MINOR'] == '8'
|
70
|
+
if RbConfig::CONFIG['arch'] =~ /x64/i
|
71
|
+
require File.join(File.dirname(__FILE__), 'ruby28_64/win32/api')
|
72
|
+
else
|
73
|
+
require File.join(File.dirname(__FILE__), 'ruby28_32/win32/api')
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
45
77
|
end
|
46
78
|
rescue LoadError
|
47
79
|
require File.join(File.dirname(__FILE__), '../../ext/api')
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/test/test_win32_api.rb
CHANGED
data/win32-api.gemspec
CHANGED
@@ -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.
|
5
|
+
spec.version = '1.9.0'
|
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.
|
4
|
+
version: 1.9.0
|
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:
|
13
|
+
date: 2020-07-15 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: test-unit
|
@@ -55,12 +55,15 @@ extra_rdoc_files:
|
|
55
55
|
- ext/win32/api.c
|
56
56
|
files:
|
57
57
|
- CHANGES
|
58
|
+
- Dockerfile
|
59
|
+
- Dockerfile.trunk
|
58
60
|
- Gemfile
|
59
|
-
- Gemfile.lock
|
60
61
|
- MANIFEST
|
61
62
|
- README
|
63
|
+
- RELEASE.md
|
62
64
|
- Rakefile
|
63
65
|
- appveyor.yml
|
66
|
+
- build-gem.bat
|
64
67
|
- ext/win32/api.c
|
65
68
|
- lib/win32/api.rb
|
66
69
|
- lib/win32/ruby21_32/win32/api.so
|
@@ -71,6 +74,13 @@ files:
|
|
71
74
|
- lib/win32/ruby23_64/win32/api.so
|
72
75
|
- lib/win32/ruby24_32/win32/api.so
|
73
76
|
- lib/win32/ruby24_64/win32/api.so
|
77
|
+
- lib/win32/ruby25_32/win32/api.so
|
78
|
+
- lib/win32/ruby25_64/win32/api.so
|
79
|
+
- lib/win32/ruby26_32/win32/api.so
|
80
|
+
- lib/win32/ruby26_64/win32/api.so
|
81
|
+
- lib/win32/ruby27_32/win32/api.so
|
82
|
+
- lib/win32/ruby27_64/win32/api.so
|
83
|
+
- lib/win32/ruby28_64/win32/api.so
|
74
84
|
- lib/win32/ruby2_32/win32/api.so
|
75
85
|
- lib/win32/ruby2_64/win32/api.so
|
76
86
|
- test/test_win32_api.rb
|
@@ -96,8 +106,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
96
106
|
- !ruby/object:Gem::Version
|
97
107
|
version: '0'
|
98
108
|
requirements: []
|
99
|
-
|
100
|
-
rubygems_version: 2.6.8
|
109
|
+
rubygems_version: 3.1.2
|
101
110
|
signing_key:
|
102
111
|
specification_version: 4
|
103
112
|
summary: A superior replacement for Win32API
|
data/Gemfile.lock
DELETED
@@ -1,24 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
win32-api (1.6.1.2)
|
5
|
-
|
6
|
-
GEM
|
7
|
-
remote: https://rubygems.org/
|
8
|
-
specs:
|
9
|
-
power_assert (0.4.1)
|
10
|
-
rake (12.0.0)
|
11
|
-
test-unit (3.2.3)
|
12
|
-
power_assert
|
13
|
-
|
14
|
-
PLATFORMS
|
15
|
-
x64-mingw32
|
16
|
-
x86-mingw32
|
17
|
-
|
18
|
-
DEPENDENCIES
|
19
|
-
rake
|
20
|
-
test-unit (>= 2.5.0)
|
21
|
-
win32-api!
|
22
|
-
|
23
|
-
BUNDLED WITH
|
24
|
-
1.14.2
|