Commit graph

2392 commits

Author SHA1 Message Date
Mislav Marohnić
c3bae8b6a9 Fix fixing JRuby shebangs on macOS
LC_CTYPE is "utf-8" on macOS, which instructs utilities like `tr` to expect Unicode input. However, in case of binary files, which we here explicitly guard against, the utility will fail because of invalid input encoding.

The solution is to set LC_CTYPE=C which effectively removes the expectation around input encoding and allows `tr` to process the input byte-by-byte.
2023-10-23 12:11:16 +02:00
Mislav Marohnić
99fda28fc4 JRuby: remove openssl@1.1 requirement from jruby-dev
This is to allow JRuby itself to check for compatible OpenSSL versions and not have ruby-build abort early on macOS.
2023-10-20 15:09:45 +02:00
Mislav Marohnić
db600ccdfd TruffleRuby: remove explicit openssl@1.1 requirement on macOS
TruffleRuby build definitions used to explicitly rely on `brew --prefix openssl@1.1` on macOS and abort installation if that was not found. However, this check didn't take into account that the user might have set OPENSSL_PREFIX in their environment, or that they have another `openssl@*` version installed via Homebrew. This change removes the `use_homebrew_openssl` check and allows TruffleRuby to perform its own OpenSSL detection.

https://github.com/oracle/truffleruby/blob/vm-23.1.0/lib/truffle/truffle/openssl-prefix.rb#L14-L17
2023-10-20 15:09:45 +02:00
Hiroshi SHIBATA
0e4c61d868
Merge pull request #2277 from headius/jruby-9.4.4.0
Add JRuby 9.4.4.0
2023-10-19 08:50:40 +09:00
Charles Oliver Nutter
0be9ae1956 Add JRuby 9.4.4.0 2023-10-18 13:52:53 -05:00
Mislav Marohnić
1dc3628be3
Merge pull request #2276 from rbenv/openssl-test
Add tests for functionality related to linking to OpenSSL
2023-10-17 16:08:59 +02:00
Mislav Marohnić
08b1cfaf71
Add needs_openssl test 2023-10-17 15:33:08 +02:00
Mislav Marohnić
a559b30fd8
Improve cached_tarball test helper
- Now only generates a `configure` script if explicitly specified
- Add ability to add arbitrary files to the tarball
- Cache most common tarballs in fixtures directory to speed up tests
2023-10-17 12:40:17 +02:00
Mislav Marohnić
fe933abbf8
Merge pull request #2271 from rbenv/ldflags-clean
Remove implicit LDFLAGS, CPPFLAGS, and "ldflags_dirs" build step
2023-10-16 18:19:29 +02:00
Mislav Marohnić
aada31aed5
Avoiding excessive cd when fetching git repos (#2273) 2023-10-16 14:40:04 +02:00
Mislav Marohnić
7a741cfb68
Merge pull request #2270 from rbenv/openssl-clean
Cleanup in OpenSSL compilation step
2023-10-16 14:38:58 +02:00
Mislav Marohnić
1d9b4e268f
Merge pull request #2274 from rbenv/ruby-configure-opts
Avoid compiling OpenSSL if the user supplied `--with-openssl-dir` on the command line
2023-10-14 14:01:09 +02:00
Mislav Marohnić
7773f82f74 Cleanup in truffleruby+graalvm installation
Reuse original `build_package_copy` instead of having to maintain an additional `build_package_copy_to` step.

As a bonus, this prevents a global variable `to` from leaking.
2023-10-14 12:30:53 +02:00
Benoit Daloze
536495d1d3 ruby-build 20231014 2023-10-14 12:19:11 +02:00
Mislav Marohnić
5f4cea14d9
Merge pull request #2258 from eregon/overridable-url
Add RUBY_BUILD_TARBALL_OVERRIDE to override the ruby tarball URL
2023-10-13 21:25:59 +02:00
Mislav Marohnić
9b8749105f
Avoid compiling OpenSSL if the user supplied --with-openssl-dir on the command line
Same with linking libyaml, gmp, etc. to Homebrew. This considers all user configuration inputs when checking for existing flags.
2023-10-13 19:52:42 +02:00
Mislav Marohnić
04ba857b6c
Remove "ldflags_dirs" step from build definitions 2023-10-13 19:25:03 +02:00
Mislav Marohnić
47eda17460
Remove implicit LDFLAGS, CPPFLAGS, and "ldflags_dirs" build step
The default settings for LDFLAGS and CPPFLAGS were there since the initial commit to ruby-build:

    LDFLAGS="-L${PREFIX_PATH}/lib"
    CPPFLAGS="-I${PREFIX_PATH}/include"

However, it's not clear to me what these settings help with. A typical Ruby installation will initialize files in these directories, but it will do so regardless of the environment variables.

So, let's remove them and see what breaks.
2023-10-13 19:21:04 +02:00
Mislav Marohnić
6663720fca
Cleanup in openssl compilation step
- The `make -j 1` workaround seems neither in effect nor necessary anymore
- Assume that KERNEL_BITS workaround isn't necessary anymore
- Declare more variables as local
2023-10-13 19:05:31 +02:00
Benoit Daloze
216084d334 Add RUBY_BUILD_TARBALL_OVERRIDE to override the ruby tarball URL
* Update the check for whether a package is a ruby.
2023-10-12 11:48:03 +02:00
Benoit Daloze
4bf2fece5e ruby-build 20231012 2023-10-12 11:46:39 +02:00
Benoit Daloze
86af235370 Use builds from ruby/truffleruby-dev-builder for truffleruby-dev on macos-arm64
* macos-arm64 runners recently became available for ruby/truffleruby-dev-builder.
* Those builds are more frequently updated than on graalvm-ce-dev-builds.
2023-10-12 11:45:54 +02:00
Mislav Marohnić
b4b1dd20ce
Enable shellcheck parsing of ruby-build source (#2268) 2023-10-12 11:10:43 +02:00
Mislav Marohnić
d9af2ad5e8
Merge pull request #2267 from rbenv/configure-args
Pass ruby configuration flags on the command line
2023-10-11 18:09:39 +02:00
Mislav Marohnić
1c8689b950
Add tests for extra configure flags on the command-line 2023-10-11 18:02:07 +02:00
Mislav Marohnić
6b6fa457a0
Enable test assertions to spot erraneous word-splitting in bash 2023-10-11 18:02:07 +02:00
Mislav Marohnić
d9bdc904b9
💅 RUBY_CONFIGURE_OPTS_ARRAY 2023-10-11 18:02:07 +02:00
Mislav Marohnić
fbdf88cc13
Accept ruby configuration flags as extra position arguments on the command line 2023-10-11 18:02:07 +02:00
Mislav Marohnić
f7d63b7dcb
Rework argument parsing to error out on invalid flags 2023-10-11 18:02:07 +02:00
Mislav Marohnić
c8927eefd0
Expand parse_options to preserve positional arguments after "--" 2023-10-11 15:05:03 +02:00
Thomas Hurst
4cec390699
Set default MAKE=make on FreeBSD (#2263)
This was set to gmake in https://github.com/rbenv/ruby-build/pull/1381
as a workaround for https://bugs.ruby-lang.org/issues/16331

YJIT builds in Ruby 3.3 previews require the use of BSD make on these
platforms, and no supported version of MRI requires the use of gmake, so
revert this.

JRuby continues to require gmake for jruby-launcher.

Fixes #2262

Co-authored-by: Mislav Marohnić <git@mislav.net>
2023-10-11 12:19:40 +02:00
Hiroshi SHIBATA
51071a4df6
Merge pull request #2265 from rbenv/dependabot/github_actions/redhat-plumbers-in-action/differential-shellcheck-5
Bump redhat-plumbers-in-action/differential-shellcheck from 4 to 5
2023-10-10 11:16:12 +09:00
dependabot[bot]
0749cd04e6
Bump redhat-plumbers-in-action/differential-shellcheck from 4 to 5
Bumps [redhat-plumbers-in-action/differential-shellcheck](https://github.com/redhat-plumbers-in-action/differential-shellcheck) from 4 to 5.
- [Release notes](https://github.com/redhat-plumbers-in-action/differential-shellcheck/releases)
- [Changelog](https://github.com/redhat-plumbers-in-action/differential-shellcheck/blob/main/docs/CHANGELOG.md)
- [Commits](https://github.com/redhat-plumbers-in-action/differential-shellcheck/compare/v4...v5)

---
updated-dependencies:
- dependency-name: redhat-plumbers-in-action/differential-shellcheck
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-09 08:20:52 +00:00
Mislav Marohnić
27a5309660
Merge pull request #2259 from rbenv/dependabot/github_actions/mislav/bump-homebrew-formula-action-3
Bump mislav/bump-homebrew-formula-action from 2 to 3
2023-09-27 17:25:34 +02:00
dependabot[bot]
63a306890b
Bump mislav/bump-homebrew-formula-action from 2 to 3
Bumps [mislav/bump-homebrew-formula-action](https://github.com/mislav/bump-homebrew-formula-action) from 2 to 3.
- [Release notes](https://github.com/mislav/bump-homebrew-formula-action/releases)
- [Commits](https://github.com/mislav/bump-homebrew-formula-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: mislav/bump-homebrew-formula-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-25 08:39:33 +00:00
Hiroshi SHIBATA
4eb7e5a239
Merge pull request #2257 from rbenv/openssl-3-1-3
Bump up OpenSSL 3.1.3
2023-09-21 21:28:48 +09:00
Hiroshi SHIBATA
d98943aede
Bump up openssl-3.1.3 2023-09-21 15:17:10 +03:00
Benoit Daloze
bfffe34ba1 ruby-build 20230919 2023-09-19 15:05:22 +02:00
Benoit Daloze
696828981d Add TruffleRuby and TruffleRuby GraalVM 23.1.0 2023-09-19 14:59:07 +02:00
Benoit Daloze
f80eb466b9 ruby-build 20230914.1 2023-09-14 18:24:20 +02:00
Benoit Daloze
9e1290d66a Update URLs for truffleruby+graalvm-dev 2023-09-14 16:18:10 +02:00
Benoit Daloze
43702d07e8 Use the TruffleRuby JVM Standalones for truffleruby+graalvm-dev
* In TruffleRuby 23.1+, the GraalVM Updater (`gu`) is no longer available in GraalVM,
  instead JVM Standalones and Maven artifacts are provided to replace `gu`.
* See https://github.com/oracle/graal/issues/6855
2023-09-14 13:54:34 +02:00
Hiroshi SHIBATA
1fb355bc69
ruby-build 20230914 2023-09-14 16:31:47 +09:00
Hiroshi SHIBATA
23fda20b36
Merge pull request #2250 from rbenv/openssl-1-1-1w
Bump up openssl-1.1.1w
2023-09-14 16:31:05 +09:00
Hiroshi SHIBATA
d24c6b7a7c
Bump openssl-1.1.1w 2023-09-14 16:28:11 +09:00
Hiroshi SHIBATA
0f2476d23a
Merge pull request #2249 from rbenv/3-3-0-preview2
Added 3.3.0-preview2
2023-09-14 16:25:44 +09:00
Hiroshi SHIBATA
b577b997cb
Added 3.3.0-preview2 2023-09-14 16:11:40 +09:00
João Duarte
c6e924edc8
workaround jruby#7799 by updating rubygems for JRuby 9.2.x (#2246)
Co-authored-by: Mislav Marohnić <git@mislav.net>
2023-09-12 16:08:47 +02:00
Hiroshi SHIBATA
2054401317
ruby-build 20230912 2023-09-12 07:03:32 +09:00
Hiroshi SHIBATA
9da585c287
Merge pull request #2248 from headius/jruby-9.3.11.0
Add JRuby 9.3.11.0
2023-09-12 07:03:15 +09:00