-
Notifications
You must be signed in to change notification settings - Fork 185
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TruffleRuby - determine openssl config flags #3303
Comments
Looking over a few pre-built files, it seems that many vendor the openssl files, so in extconf.rb we added
One can still use Closing. |
There is #3170 to track this. |
@MSP-Greg https://github.com/ruby/openssl/pull/653/files is the better workaround until this is added in |
This will be fixed by #3343. |
I found https://github.com/puma/puma/blob/master/ext/puma_http11/extconf.rb#L16. |
Sorry for not including more info here. Everything works fine on Ubuntu. The problem is macOS, where TruffleRuby (not head) is tested. Without the above fix in extconf.rb, below is what happens:
Puma compiles with OpenSSL 3.1.3, but at runtime uses 1.1.1w. The log is here. JFYI, years ago I started watching extension gems re Windows. Now, it's a bit more general, but users have all sorts of problems compiling EventMachine and Puma on macOS where they've got both OpenSSL 1.1.1 and OpenSSL 3.x installed. Hence, using config info embedded in the Ruby build seems like a good solution, as opposed to forcing users to config OpenSSL with gem build options... |
Just checked the 'head' build, thanks for the fix. RbConfig::CONFIG['configure_args']:
'--with-openssl-dir=/usr/local/opt/openssl@1.1'
'--with-libyaml-dir=/usr/local/opt/libyaml' |
Good day.
With MRI Ruby, if the build used a config flag for openssl, it appears in
RbConfig::CONFIG['configure_args']
.Related to the common situation where people have more than one OpenSSL install on macOS, we will be changing Puma's
extconf.rb
file to ignoreopenssl.pc
if openssl is contained inRbConfig::CONFIG['configure_args']
. Not a perfect check, but it works with standard installations.Can a similar check be done with TruffleRuby? We had an issue where Puma was linking to the wrong OpenSSL to link to in GitHub Actions CI...
The text was updated successfully, but these errors were encountered: