rake-compiler-dock 0.7.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (31) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/.gitignore +4 -0
  5. data/Dockerfile.jruby +9 -5
  6. data/{Dockerfile.mri → Dockerfile.mri.erb} +81 -23
  7. data/History.md +23 -0
  8. data/README.md +62 -10
  9. data/Rakefile +36 -4
  10. data/{lib/rake_compiler_dock → build}/gem_helper.rb +0 -15
  11. data/build/parallel_docker_build.rb +102 -0
  12. data/build/patches/{ruby-2.5.3 → ruby-2.5.7}/no_sendfile.patch +1 -1
  13. data/build/patches/ruby-2.7.0/no_sendfile.patch +24 -0
  14. data/build/patches2/hoe-3.20.0/0001-Load-encrypted-private-key-using-ENV-GEM_PRIVATE_KEY.patch +32 -0
  15. data/build/patches2/rake-compiler-1.1.0/0001-Allow-parallel-builds-of-cross-rubies.patch +119 -0
  16. data/build/patches2/rake-compiler-1.1.0/0001-Enable-build-of-static-libruby.patch +28 -0
  17. data/build/patches2/rake-compiler-1.1.0/0001-Fix-determining-of-ruby-versions-in-rake-native-gem.patch +44 -0
  18. data/build/patches2/rake-compiler-1.1.0/0002-Extend-mingw-search-pattern-to-find-x86_64-gcc.patch +26 -0
  19. data/build/patches2/rake-compiler-1.1.0/0002-Strip-cross-built-shared-library-files-while-linking.patch +29 -0
  20. data/build/patches2/ruby-2.7.0/ruby2_keywords.patch +15 -0
  21. data/build/runas +2 -0
  22. data/build/sudoers +1 -1
  23. data/lib/rake_compiler_dock.rb +10 -0
  24. data/lib/rake_compiler_dock/docker_check.rb +12 -6
  25. data/lib/rake_compiler_dock/starter.rb +68 -53
  26. data/lib/rake_compiler_dock/version.rb +2 -2
  27. data/test/test_environment_variables.rb +2 -2
  28. data/test/test_parallel_docker_build.rb +57 -0
  29. metadata +39 -8
  30. metadata.gz.sig +2 -0
  31. data/build/patches/rake-compiler-1.0.7/enable-static.diff +0 -13
@@ -6,6 +6,8 @@ useradd -o -g "$GID" -u "$UID" -G rvm,sudo -p "" -b /tmp/home -m "$USER"
6
6
 
7
7
  HOME=$(bash <<< "echo ~$USER")
8
8
  ln -s /usr/local/rake-compiler "$HOME"/.rake-compiler
9
+ mkdir -p "$HOME"/.gem
10
+ chown "$USER" "$HOME"/.gem
9
11
 
10
12
  sudo -u "$USER" --set-home \
11
13
  BASH_ENV=/etc/rubybashrc \
@@ -1 +1 @@
1
- Defaults env_keep += "http_proxy https_proxy ftp_proxy RCD_HOST_RUBY_PLATFORM RCD_HOST_RUBY_VERSION RCD_IMAGE RUBY_CC_VERSION"
1
+ Defaults env_keep += "http_proxy https_proxy ftp_proxy GEM_PRIVATE_KEY_PASSPHRASE RCD_HOST_RUBY_PLATFORM RCD_HOST_RUBY_VERSION RCD_IMAGE RUBY_CC_VERSION"
@@ -21,6 +21,16 @@ module RakeCompilerDock
21
21
  # Option +:verbose+ can be set to enable printing of the command line.
22
22
  # If not set, rake's verbose flag is used.
23
23
  #
24
+ # Option +:rubyvm+ can be set to +:mri+ or +:jruby+ .
25
+ # It selects the docker image with an appropriate toolchain.
26
+ #
27
+ # Option +:platform+ can be set to a list of space separated values.
28
+ # It selects the docker image(s) with an appropriate toolchain.
29
+ # Allowed values are +:x86-mingw32+, +x64-mingw32+, +x86-linux+ or +x86_64-linux+.
30
+ # If the list contains multiple values, +cmd+ is consecutively executed in each of the docker images,
31
+ # Option +:platform+ is ignored when +:rubyvm+ is set to +:jruby+.
32
+ # Default is "x86-mingw32 x64-mingw32" .
33
+ #
24
34
  # Examples:
25
35
  #
26
36
  # RakeCompilerDock.sh 'bundle && rake cross native gem'
@@ -8,6 +8,7 @@ module RakeCompilerDock
8
8
 
9
9
  attr_reader :io
10
10
  attr_reader :pwd
11
+ attr_reader :docker_command
11
12
  attr_accessor :machine_name
12
13
 
13
14
  def initialize(io, pwd, machine_name="rake-compiler-dock")
@@ -53,12 +54,17 @@ module RakeCompilerDock
53
54
  end
54
55
  end
55
56
 
57
+ COMMANDS = %w[docker podman]
56
58
  def docker_version
57
- @docker_version_text, @docker_version_status = run("docker version")
59
+ COMMANDS.find do |command|
60
+ @docker_version_text, @docker_version_status = run("#{command} version")
61
+ @docker_command = command
62
+ @docker_version_status == 0
63
+ end
58
64
  end
59
65
 
60
66
  def ok?
61
- @docker_version_status == 0 && @docker_version_text =~ /version/ && doma_pwd_ok?
67
+ @docker_version_status == 0 && @docker_version_text =~ /version/i && doma_pwd_ok?
62
68
  end
63
69
 
64
70
  def docker_client_avail?
@@ -216,16 +222,16 @@ module RakeCompilerDock
216
222
  help << yellow("Please download and install the docker-toolbox:")
217
223
  help << yellow(" https://www.docker.com/docker-toolbox")
218
224
  when /linux/
219
- help << red("Docker is not available.")
225
+ help << red("Neither Docker nor Podman is available.")
220
226
  help << ""
221
- help << yellow("Install on Ubuntu/Debian:")
227
+ help << yellow("Install Docker on Ubuntu/Debian:")
222
228
  help << " sudo apt-get install docker.io"
223
229
  help << ""
224
- help << yellow("Install on Fedora/Centos/RHEL")
230
+ help << yellow("Install Docker on Fedora/Centos/RHEL")
225
231
  help << " sudo yum install docker"
226
232
  help << " sudo systemctl start docker"
227
233
  help << ""
228
- help << yellow("Install on SuSE")
234
+ help << yellow("Install Docker on SuSE")
229
235
  help << " sudo zypper install docker"
230
236
  help << " sudo systemctl start docker"
231
237
  when /darwin/
@@ -1,5 +1,6 @@
1
1
  require "shellwords"
2
2
  require "etc"
3
+ require "io/console"
3
4
  require "rake_compiler_dock/version"
4
5
 
5
6
  module RakeCompilerDock
@@ -9,15 +10,15 @@ module RakeCompilerDock
9
10
  class Starter
10
11
  class << self
11
12
  def sh(cmd, options={}, &block)
12
- if verbose_flag(options)
13
- $stderr.puts "rake-compiler-dock bash -c #{ cmd.inspect }"
13
+ begin
14
+ exec('bash', '-c', cmd, options, &block)
15
+ ensure
16
+ STDIN.cooked!
14
17
  end
15
- exec('bash', '-c', cmd, options, &block)
16
18
  end
17
19
 
18
20
  def exec(*args)
19
21
  options = (Hash === args.last) ? args.pop : {}
20
- runargs = args.dup
21
22
 
22
23
  mountdir = options.fetch(:mountdir){ ENV['RCD_MOUNTDIR'] || Dir.pwd }
23
24
  workdir = options.fetch(:workdir){ ENV['RCD_WORKDIR'] || Dir.pwd }
@@ -40,49 +41,61 @@ module RakeCompilerDock
40
41
  user = options.fetch(:username){ current_user }
41
42
  group = options.fetch(:groupname){ current_group }
42
43
  rubyvm = options.fetch(:rubyvm){ ENV['RCD_RUBYVM'] } || "mri"
43
- image_name = options.fetch(:image) do
44
- ENV['RCD_IMAGE'] ||
45
- ENV['RAKE_COMPILER_DOCK_IMAGE'] ||
46
- "larskanis/rake-compiler-dock-#{rubyvm}:#{IMAGE_VERSION}"
47
- end
48
44
 
49
- check_docker(mountdir) if options.fetch(:check_docker){ true }
50
- runargs.unshift("sigfw") if options.fetch(:sigfw){ true }
51
- runargs.unshift("runas") if options.fetch(:runas){ true }
52
- docker_opts = options.fetch(:options) do
53
- opts = ["--rm", "-i"]
54
- opts << "-t" if $stdin.tty?
55
- opts
56
- end
45
+ platforms = options.fetch(:platform){ ENV['RCD_PLATFORM'] } || "x86-mingw32 x64-mingw32"
46
+ platforms.split(" ").each do |platform|
47
+ image_name = options.fetch(:image) do
48
+ platform_postfix = rubyvm.to_s == "jruby" ? "" : "-#{platform}"
49
+ ENV['RCD_IMAGE'] ||
50
+ ENV['RAKE_COMPILER_DOCK_IMAGE'] ||
51
+ "larskanis/rake-compiler-dock-#{rubyvm}#{platform_postfix}:#{IMAGE_VERSION}"
52
+ end
57
53
 
58
- cmd = ["docker", "run",
59
- "-v", "#{mountdir}:#{make_valid_path(mountdir)}",
60
- "-e", "UID=#{uid}",
61
- "-e", "GID=#{gid}",
62
- "-e", "USER=#{user}",
63
- "-e", "GROUP=#{group}",
64
- "-e", "ftp_proxy=#{ENV['ftp_proxy']}",
65
- "-e", "http_proxy=#{ENV['http_proxy']}",
66
- "-e", "https_proxy=#{ENV['https_proxy']}",
67
- "-e", "RCD_HOST_RUBY_PLATFORM=#{RUBY_PLATFORM}",
68
- "-e", "RCD_HOST_RUBY_VERSION=#{RUBY_VERSION}",
69
- "-e", "RCD_IMAGE=#{image_name}",
70
- "-w", make_valid_path(workdir),
71
- *docker_opts,
72
- image_name,
73
- *runargs]
74
-
75
- cmdline = Shellwords.join(cmd)
76
- if verbose_flag(options) == true
77
- $stderr.puts cmdline
78
- end
54
+ check = check_docker(mountdir) if options.fetch(:check_docker){ true }
55
+ docker_opts = options.fetch(:options) do
56
+ opts = ["--rm", "-i"]
57
+ opts << "-t" if $stdin.tty?
58
+ opts
59
+ end
60
+
61
+ if verbose_flag(options) && args.size == 3 && args[0] == "bash" && args[1] == "-c"
62
+ $stderr.puts "rake-compiler-dock bash -c #{ args[2].inspect }"
63
+ end
64
+
65
+ runargs = args.dup
66
+ runargs.unshift("sigfw") if options.fetch(:sigfw){ true }
67
+ runargs.unshift("runas") if options.fetch(:runas){ true }
68
+
69
+ cmd = [check.docker_command, "run",
70
+ "-v", "#{mountdir}:#{make_valid_path(mountdir)}",
71
+ "-e", "UID=#{uid}",
72
+ "-e", "GID=#{gid}",
73
+ "-e", "USER=#{user}",
74
+ "-e", "GROUP=#{group}",
75
+ "-e", "GEM_PRIVATE_KEY_PASSPHRASE",
76
+ "-e", "ftp_proxy",
77
+ "-e", "http_proxy",
78
+ "-e", "https_proxy",
79
+ "-e", "RCD_HOST_RUBY_PLATFORM=#{RUBY_PLATFORM}",
80
+ "-e", "RCD_HOST_RUBY_VERSION=#{RUBY_VERSION}",
81
+ "-e", "RCD_IMAGE=#{image_name}",
82
+ "-w", make_valid_path(workdir),
83
+ *docker_opts,
84
+ image_name,
85
+ *runargs]
86
+
87
+ cmdline = Shellwords.join(cmd)
88
+ if verbose_flag(options) == true
89
+ $stderr.puts cmdline
90
+ end
79
91
 
80
- ok = system(*cmd)
81
- if block_given?
82
- yield(ok, $?)
83
- elsif !ok
84
- fail "Command failed with status (#{$?.exitstatus}): " +
85
- "[#{cmdline}]"
92
+ ok = system(*cmd)
93
+ if block_given?
94
+ yield(ok, $?)
95
+ elsif !ok
96
+ fail "Command failed with status (#{$?.exitstatus}): " +
97
+ "[#{cmdline}]"
98
+ end
86
99
  end
87
100
  end
88
101
 
@@ -130,20 +143,22 @@ module RakeCompilerDock
130
143
  name = name.gsub(/[ ]/i, "_")
131
144
  end
132
145
 
146
+ @@docker_checked_lock = Mutex.new
133
147
  @@docker_checked = {}
134
148
 
135
149
  def check_docker(pwd)
136
- return if @@docker_checked[pwd]
137
-
138
- check = DockerCheck.new($stderr, pwd)
139
- unless check.ok?
140
- at_exit do
141
- check.print_help_text
150
+ @@docker_checked_lock.synchronize do
151
+ @@docker_checked[pwd] ||= begin
152
+ check = DockerCheck.new($stderr, pwd)
153
+ unless check.ok?
154
+ at_exit do
155
+ check.print_help_text
156
+ end
157
+ raise DockerIsNotAvailable, "Docker is not available"
158
+ end
159
+ check
142
160
  end
143
- raise DockerIsNotAvailable, "Docker is not available"
144
161
  end
145
-
146
- @@docker_checked[pwd] = check
147
162
  end
148
163
 
149
164
  # Change Path from "C:\Path" to "/c/Path" as used by boot2docker
@@ -1,4 +1,4 @@
1
1
  module RakeCompilerDock
2
- VERSION = "0.7.2"
3
- IMAGE_VERSION = "0.7.2"
2
+ VERSION = "1.0.0"
3
+ IMAGE_VERSION = "1.0.0"
4
4
  end
@@ -30,11 +30,11 @@ class TestEnvironmentVariables < Test::Unit::TestCase
30
30
  end
31
31
 
32
32
  def test_IMAGE
33
- assert_equal "larskanis/rake-compiler-dock-mri:#{RakeCompilerDock::IMAGE_VERSION}", rcd_env['RCD_IMAGE']
33
+ assert_equal "larskanis/rake-compiler-dock-mri-x86-mingw32:#{RakeCompilerDock::IMAGE_VERSION}", rcd_env['RCD_IMAGE']
34
34
  end
35
35
 
36
36
  def test_RUBY_CC_VERSION
37
- df = File.read(File.expand_path("../../Dockerfile.mri", __FILE__))
37
+ df = File.read(File.expand_path("../../Dockerfile.mri.erb", __FILE__))
38
38
  df =~ /^ENV RUBY_CC_VERSION\s+(.*)\s+$/
39
39
  assert_equal $1, rcd_env['RUBY_CC_VERSION']
40
40
  end
@@ -0,0 +1,57 @@
1
+ require 'test/unit'
2
+ require_relative "../build/parallel_docker_build"
3
+
4
+ class TestParallelDockerBuild < Test::Unit::TestCase
5
+ def setup
6
+ File.write "File0", <<-EOT
7
+ FROM a
8
+ RUN a
9
+ RUN d
10
+ EOT
11
+ File.write "File1", <<-EOT
12
+ FROM a
13
+ RUN a
14
+ RUN d
15
+ RUN f \\
16
+ g
17
+ EOT
18
+ File.write "File2", <<-EOT
19
+ FROM a
20
+ RUN b
21
+ RUN c
22
+ RUN d
23
+ EOT
24
+ File.write "File3", <<-EOT
25
+ FROM a
26
+ RUN b
27
+ RUN c
28
+ RUN d
29
+ EOT
30
+ end
31
+
32
+ def test_tasks
33
+ RakeCompilerDock::ParallelDockerBuild.new(%w[ File0 File1 File2 File3 ], task_prefix: "y")
34
+
35
+ assert_operator Rake::Task["File0"].prerequisites, :include?, "yFile0File1"
36
+ assert_operator Rake::Task["File1"].prerequisites, :include?, "yFile1"
37
+ assert_operator Rake::Task["yFile1"].prerequisites, :include?, "yFile0File1"
38
+ assert_operator Rake::Task["yFile0File1"].prerequisites, :include?, "yFile0File1File2File3"
39
+
40
+ assert_operator Rake::Task["File2"].prerequisites, :include?, "yFile2File3"
41
+ assert_operator Rake::Task["File3"].prerequisites, :include?, "yFile2File3"
42
+ assert_operator Rake::Task["yFile2File3"].prerequisites, :include?, "yFile0File1File2File3"
43
+ end
44
+
45
+ def test_common_files
46
+ RakeCompilerDock::ParallelDockerBuild.new(%w[ File0 File1 File2 File3 ], task_prefix: "y")
47
+
48
+ assert_equal "FROM a\nRUN a\nRUN d\nRUN f \\\ng\n", read_df("yFile1")
49
+ assert_equal "FROM a\nRUN a\nRUN d\n", read_df("yFile0File1")
50
+ assert_equal "FROM a\nRUN b\nRUN c\nRUN d\n", read_df("yFile2File3")
51
+ assert_equal "FROM a\n", read_df("yFile0File1File2File3")
52
+ end
53
+
54
+ def read_df(fn)
55
+ File.read("tmp/docker/#{fn}").each_line.map(&:lstrip).join
56
+ end
57
+ end
metadata CHANGED
@@ -1,14 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rake-compiler-dock
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lars Kanis
8
8
  autorequire:
9
9
  bindir: bin
10
- cert_chain: []
11
- date: 2019-03-18 00:00:00.000000000 Z
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDPDCCAiSgAwIBAgIBBTANBgkqhkiG9w0BAQsFADBEMQ0wCwYDVQQDDARsYXJz
14
+ MR8wHQYKCZImiZPyLGQBGRYPZ3JlaXotcmVpbnNkb3JmMRIwEAYKCZImiZPyLGQB
15
+ GRYCZGUwHhcNMTkxMjMwMjIyMjAxWhcNMjAxMjI5MjIyMjAxWjBEMQ0wCwYDVQQD
16
+ DARsYXJzMR8wHQYKCZImiZPyLGQBGRYPZ3JlaXotcmVpbnNkb3JmMRIwEAYKCZIm
17
+ iZPyLGQBGRYCZGUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZb4Uv
18
+ RFJfRu/VEWiy3psh2jinETjiuBrL0NeRFGf8H7iU9+gx/DI/FFhfHGLrDeIskrJx
19
+ YIWDMmEjVO10UUdj7wu4ZhmU++0Cd7Kq9/TyP/shIP3IjqHjVLCnJ3P6f1cl5rxZ
20
+ gqo+d3BAoDrmPk0rtaf6QopwUw9RBiF8V4HqvpiY+ruJotP5UQDP4/lVOKvA8PI9
21
+ P0GmVbFBrbc7Zt5h78N3UyOK0u+nvOC23BvyHXzCtcFsXCoEkt+Wwh0RFqVZdnjM
22
+ LMO2vULHKKHDdX54K/sbVCj9pN9h1aotNzrEyo55zxn0G9PHg/G3P8nMvAXPkUTe
23
+ brhXrfCwWRvOXA4TAgMBAAGjOTA3MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0G
24
+ A1UdDgQWBBRAHK81igrXodaDj8a8/BIKsaZrETANBgkqhkiG9w0BAQsFAAOCAQEA
25
+ aXjW/gcrSmbQsdbMtG3w1GkNWQJoLFJD10ETUI1ohCQAPOp8MYbPnn79VdaeDxrw
26
+ bVAbBOsMX/dGteKXTZnGI/fS5GotdfJTkFp5TmXQaYKDx25dML7D7DMRj4CLsvnZ
27
+ nuxL2EHH10m59/NaSpZSoFhwte9v8XMnI3MxQt1lvQUgh3X94HVhqJUO2KM/egYb
28
+ yU6ZEvrQtTCgrZR23W4R8wuzOzRCgMvy5ah4cRO2z1rbTSnQyajmWKbFKC6DKK+i
29
+ 59Ghcc//WA3MsBHQVXh0+GZSt91RuOxamQO1GPlTfnfh5kT1UeypRm2Jcu7Ar5to
30
+ aTK5xiVwWU7P6psbEyrqkg==
31
+ -----END CERTIFICATE-----
32
+ date: 2020-01-04 00:00:00.000000000 Z
12
33
  dependencies:
13
34
  - !ruby/object:Gem::Dependency
14
35
  name: bundler
@@ -64,16 +85,25 @@ extra_rdoc_files: []
64
85
  files:
65
86
  - ".gitignore"
66
87
  - Dockerfile.jruby
67
- - Dockerfile.mri
88
+ - Dockerfile.mri.erb
68
89
  - Gemfile
69
90
  - History.md
70
91
  - LICENSE.txt
71
92
  - README.md
72
93
  - Rakefile
73
94
  - bin/rake-compiler-dock
95
+ - build/gem_helper.rb
74
96
  - build/mk_i686.rb
75
- - build/patches/rake-compiler-1.0.7/enable-static.diff
76
- - build/patches/ruby-2.5.3/no_sendfile.patch
97
+ - build/parallel_docker_build.rb
98
+ - build/patches/ruby-2.5.7/no_sendfile.patch
99
+ - build/patches/ruby-2.7.0/no_sendfile.patch
100
+ - build/patches2/hoe-3.20.0/0001-Load-encrypted-private-key-using-ENV-GEM_PRIVATE_KEY.patch
101
+ - build/patches2/rake-compiler-1.1.0/0001-Allow-parallel-builds-of-cross-rubies.patch
102
+ - build/patches2/rake-compiler-1.1.0/0001-Enable-build-of-static-libruby.patch
103
+ - build/patches2/rake-compiler-1.1.0/0001-Fix-determining-of-ruby-versions-in-rake-native-gem.patch
104
+ - build/patches2/rake-compiler-1.1.0/0002-Extend-mingw-search-pattern-to-find-x86_64-gcc.patch
105
+ - build/patches2/rake-compiler-1.1.0/0002-Strip-cross-built-shared-library-files-while-linking.patch
106
+ - build/patches2/ruby-2.7.0/ruby2_keywords.patch
77
107
  - build/runas
78
108
  - build/sigfw.c
79
109
  - build/strip_wrapper
@@ -81,12 +111,12 @@ files:
81
111
  - lib/rake_compiler_dock.rb
82
112
  - lib/rake_compiler_dock/colors.rb
83
113
  - lib/rake_compiler_dock/docker_check.rb
84
- - lib/rake_compiler_dock/gem_helper.rb
85
114
  - lib/rake_compiler_dock/predefined_user_group.rb
86
115
  - lib/rake_compiler_dock/starter.rb
87
116
  - lib/rake_compiler_dock/version.rb
88
117
  - rake-compiler-dock.gemspec
89
118
  - test/test_environment_variables.rb
119
+ - test/test_parallel_docker_build.rb
90
120
  - test/test_starter.rb
91
121
  homepage: https://github.com/rake-compiler/rake-compiler-dock
92
122
  licenses:
@@ -107,11 +137,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
107
137
  - !ruby/object:Gem::Version
108
138
  version: '0'
109
139
  requirements: []
110
- rubygems_version: 3.0.1
140
+ rubygems_version: 3.1.2
111
141
  signing_key:
112
142
  specification_version: 4
113
143
  summary: Easy to use and reliable cross compiler environment for building Windows
114
144
  and Linux binary gems.
115
145
  test_files:
116
146
  - test/test_environment_variables.rb
147
+ - test/test_parallel_docker_build.rb
117
148
  - test/test_starter.rb
@@ -0,0 +1,2 @@
1
+ 3p*��Ԗ�������Ʌ��~#��D�y@�
2
+ ����_��E�a����)��� CD�U�m&���RzT{��^y,������$ ���QsY�lgn_�k�4�����
@@ -1,13 +0,0 @@
1
- diff --git a/tasks/bin/cross-ruby.rake b/tasks/bin/cross-ruby.rake
2
- index 6230799..3a69f13 100644
3
- --- a/tasks/bin/cross-ruby.rake
4
- +++ b/tasks/bin/cross-ruby.rake
5
- @@ -134,6 +134,8 @@ file "#{USER_HOME}/builds/#{MINGW_HOST}/#{RUBY_CC_VERSION}/Makefile" => ["#{USER
6
- "--target=#{MINGW_TARGET}",
7
- "--build=#{RUBY_BUILD}",
8
- '--enable-shared',
9
- + '--enable-static',
10
- + '--enable-install-static-library',
11
- '--disable-install-doc',
12
- '--with-ext='
13
- ]