diff --git a/internal/rosa/all.go b/internal/rosa/all.go index 9d5f8535..d670823e 100644 --- a/internal/rosa/all.go +++ b/internal/rosa/all.go @@ -181,6 +181,7 @@ const ( Rdfind Readline Rsync + Ruby Sed SPIRVHeaders SPIRVLLVMTranslator diff --git a/internal/rosa/ruby.go b/internal/rosa/ruby.go new file mode 100644 index 00000000..50c73550 --- /dev/null +++ b/internal/rosa/ruby.go @@ -0,0 +1,40 @@ +package rosa + +import ( + "strings" + + "hakurei.app/internal/pkg" +) + +func (t Toolchain) newRuby() (pkg.Artifact, string) { + const ( + version = "4.0.4" + checksum = "QyulcwFhodxYsuYu2MfMgk5nnVpsR5NO2NGsJ3AIMFJQdafn6ZkFBJhVp_XhU6gU" + ) + return t.NewPackage("ruby", version, newTar( + "https://cache.ruby-lang.org/pub/ruby/"+ + strings.Join(strings.SplitN(version, ".", 3)[:2], ".")+ + "/ruby-"+version+".tar.gz", + checksum, + pkg.TarGzip, + ), nil, &MakeHelper{ + SkipCheck: true, + Configure: []KV{[2]string{"--disable-install-doc"}}, + }, + Libffi, + OpenSSL, + ), version +} +func init() { + artifactsM[Ruby] = Metadata{ + f: Toolchain.newRuby, + + Name: "ruby", + Description: "a programming language", + Website: "https://www.ruby-lang.org/", + + // TODO(ophestra): resolve runtime deps + + ID: 4223, + } +}