summaryrefslogtreecommitdiff
path: root/config/software/asdf_ruby.rb
blob: 7849feffe4c99dd531f51f528bd78ffda5951b73 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# frozen_string_literal: true

name "asdf_ruby"
default_version "2.7.2"
license "BSD-2-Clause"
license_file "BSDL"
license_file "COPYING"
license_file "LEGAL"

dependency "libffi"
dependency "libyaml"
dependency "openssl"
dependency "zlib"

source url: "https://cache.ruby-lang.org/pub/ruby/#{version.match(/^(\d+\.\d+)/)[0]}/ruby-#{version}.tar.gz"
relative_path "ruby-#{version}"

version("2.7.2") { source sha256: "6e5706d0d4ee4e1e2f883db9d768586b4d06567debea353c796ec45e8321c3d4" }
version("2.7.1") { source sha256: "d418483bdd0000576c1370571121a6eb24582116db0b7bb2005e90e250eae418" }
version("2.7.0") { source sha256: "8c99aa93b5e2f1bc8437d1bbbefd27b13e7694025331f77245d0c068ef1f8cbe" }

version("2.6.6") { source sha256: "364b143def360bac1b74eb56ed60b1a0dca6439b00157ae11ff77d5cd2e92291" }
version("2.6.5") { source sha256: "66976b716ecc1fd34f9b7c3c2b07bbd37631815377a2e3e85a5b194cfdcbed7d" }
version("2.6.4") { source sha256: "4fc1d8ba75505b3797020a6ffc85a8bcff6adc4dabae343b6572bf281ee17937" }
version("2.6.3") { source sha256: "577fd3795f22b8d91c1d4e6733637b0394d4082db659fccf224c774a2b1c82fb" }
version("2.6.2") { source sha256: "a0405d2bf2c2d2f332033b70dff354d224a864ab0edd462b7a413420453b49ab" }
version("2.6.1") { source sha256: "17024fb7bb203d9cf7a5a42c78ff6ce77140f9d083676044a7db67f1e5191cb8" }
version("2.6.0") { source sha256: "f3c35b924a11c88ff111f0956ded3cdc12c90c04b72b266ac61076d3697fc072" }

version("2.5.8") { source sha256: "6c0bdf07876c69811a9e7dc237c43d40b1cb6369f68e0e17953d7279b524ad9a" }

version("2.4.10") { source sha256: "93d06711795bfb76dbe7e765e82cdff3ddf9d82eff2a1f24dead9bb506eaf2d0" }
version("2.4.9") { source sha256: "f99b6b5e3aa53d579a49eb719dd0d3834d59124159a6d4351d1e039156b1c6ae" }
version("2.4.5") { source sha256: "6737741ae6ffa61174c8a3dcdd8ba92bc38827827ab1d7ea1ec78bc3cefc5198" }

build do
  env = with_standard_compiler_flags(with_embedded_path)
  configure_command = [
    "--disable-debug-env",
    "--disable-dtrace",
    "--disable-install-capi",
    "--disable-install-doc",
    "--disable-install-rdoc",
    "--disable-jit-support",
    "--enable-shared",
    "--prefix=#{install_dir}",
    "--with-out-ext=coverage,dbm,readline,rdoc,win32,win32ole,sdbm",
    "--without-gdbm",
    "--without-gmp",
    "--without-jemalloc",
    "--without-tk",
    "--without-valgrind"
  ]
  configure(*configure_command, env: env)
  make "-j #{workers}", env: env
  make "-j #{workers} install", env: env
end

build do
  delete "#{install_dir}/share"
  delete "#{install_dir}/bin/*racc*"
  delete "#{install_dir}/bin/erb"
  delete "#{install_dir}/bin/irb"
  delete "#{install_dir}/bin/rake"
  delete "#{install_dir}/bin/rdoc"
  delete "#{install_dir}/bin/ri"
  delete "#{install_dir}/embedded/share"
  delete "#{install_dir}/lib/ruby/gems/**/cache"
  delete "#{install_dir}/lib/ruby/gems/**/doc"
  delete "#{install_dir}/lib/ruby/gems/**/gems/**/.github"
  delete "#{install_dir}/lib/ruby/gems/**/gems/**/.gitignore"
  delete "#{install_dir}/lib/ruby/gems/**/gems/**/.travis.yml"
  delete "#{install_dir}/lib/ruby/gems/**/gems/**/bundler/man"
  delete "#{install_dir}/lib/ruby/gems/**/gems/**/man"
  delete "#{install_dir}/lib/ruby/gems/**/gems/**/test"
end