summaryrefslogtreecommitdiff
path: root/config/software/asdf-ruby.rb
diff options
context:
space:
mode:
authormo khan <mo.khan@gmail.com>2020-06-16 17:27:00 -0600
committermo khan <mo.khan@gmail.com>2020-06-16 17:27:00 -0600
commit6f2d8f013765a3a5065edc6201dd082f0eeacd2b (patch)
tree4ec77dc15960f2c90dac6bb039c80b913e59ae27 /config/software/asdf-ruby.rb
parentdf370980301b81abf491c7583765d46a8474a821 (diff)
Install asdf-rubies
Diffstat (limited to 'config/software/asdf-ruby.rb')
-rw-r--r--config/software/asdf-ruby.rb53
1 files changed, 53 insertions, 0 deletions
diff --git a/config/software/asdf-ruby.rb b/config/software/asdf-ruby.rb
new file mode 100644
index 0000000..9ea15cd
--- /dev/null
+++ b/config/software/asdf-ruby.rb
@@ -0,0 +1,53 @@
+name "asdf-ruby"
+
+license "BSD-2-Clause"
+license_file "BSDL"
+license_file "COPYING"
+license_file "LEGAL"
+skip_transitive_dependency_licensing true
+
+default_version "2.6.6"
+
+dependency "zlib"
+dependency "openssl"
+dependency "libffi"
+dependency "libyaml"
+
+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" }
+
+source url: "https://cache.ruby-lang.org/pub/ruby/#{version.match(/^(\d+\.\d+)/)[0]}/ruby-#{version}.tar.gz"
+
+semver = Gem::Version.create(version).segments
+ruby_mmv = "#{semver[0..1].join(".")}.0"
+ruby_dir = "#{install_dir}/embedded/lib/ruby/#{ruby_mmv}"
+gem_dir = "#{install_dir}/embedded/lib/ruby/gems/#{ruby_mmv}"
+bin_dirs bin_dirs.concat ["#{gem_dir}/gems/*/bin/**"]
+lib_dirs ["#{ruby_dir}/**", "#{gem_dir}/extensions/**", "#{gem_dir}/gems/*", "#{gem_dir}/gems/*/lib/**", "#{gem_dir}/gems/*/ext/**"]
+
+relative_path "ruby-#{version}"
+
+env = with_standard_compiler_flags(with_embedded_path)
+env["CFLAGS"] << " -O3 -g -pipe"
+
+build do
+ configure_command = ["--with-out-ext=dbm,readline",
+ "--enable-shared",
+ "--disable-install-doc",
+ "--without-gmp",
+ "--without-doc",
+ "--without-gdbm",
+ "--without-tk",
+ "--disable-dtrace",
+ "--disable-jit-support"]
+ configure_command << "--with-opt-dir=#{install_dir}/embedded"
+ configure(*configure_command, env: env)
+ make "-j #{workers}", env: env
+ make "-j #{workers} install", env: env
+end