Ruby/OpenSSL 3.2.4, 3.3.3 and 4.0.2 added OpenSSL 4 support and ship
with Ruby 3.3.12, 3.4.10 and 4.0.6. Widen the needs_openssl upper
bound to 4.x.x for those releases and later, including the matching
development definitions, so an installed OpenSSL 4 is used instead of
vendoring OpenSSL 3. Make update-cruby apply the same boundaries to
new definitions, and cover a 4.x.x upper bound in the build tests.
Signed-off-by: Patrick Linnane <patrick@linnane.io>
Ruby >= 4.0 requires OpenSSL >= 1.1.1, but the script hardcoded
needs_openssl:1.0.2-3.x.x for all versions. Add version-based
condition to use needs_openssl:1.1.1-3.x.x for Ruby 4.x and later.
Ref: https://github.com/rbenv/ruby-build/pull/2608
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
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.