Skip to content

Fix removing -O3 on ruby-dev and Ruby < 3.2 on Fedora 42+ - #2638

Merged
mislav merged 4 commits into
rbenv:masterfrom
eregon:opt-flags-fixes
Sep 2, 2026
Merged

mislav merged 4 commits into
rbenv:masterfrom
eregon:opt-flags-fixes

Conversation

@eregon

@eregon eregon commented Aug 31, 2026

Copy link
Copy Markdown
Member

Fixes #2637

eregon and others added 4 commits August 31, 2026 16:29
Exporting CFLAGS overrides Ruby's default optflags/debugflags/warnflags,
notably losing -O3 and silently producing a much slower (-O0) Ruby.
The cflags configure variable is appended to those defaults instead.
Keep prepending to CFLAGS when the user already overrides CFLAGS,
since configure ignores cflags when CFLAGS is given.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
"Additional" was misleading: passing CFLAGS to Ruby's configure replaces
the default optflags/debugflags/warnflags, so e.g. RUBY_CFLAGS=-march=native
silently builds an unoptimized (-O0) Ruby. Document the overriding
semantics and point to RUBY_CONFIGURE_OPTS=cflags=... for adding flags.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
normalize_semver("dev") returned 0, so ruby-dev was treated as older
than any released version and version-gated workarounds misfired.
Notably the Fedora 42+ -std=gnu17 workaround for Ruby < 3.2 was
applied to ruby-dev builds, which do not need it.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@eregon
eregon requested a review from mislav August 31, 2026 14:44
@mislav
mislav merged commit 78d71ae into rbenv:master Sep 2, 2026
4 checks passed
@mislav

mislav commented Sep 2, 2026

Copy link
Copy Markdown
Member

Great catch; thanks!

social4hyq pushed a commit to social4hyq/homebrew-core that referenced this pull request Sep 20, 2026
ruby-build 20260902

Created-by: HarmonybrewBot
Commit-by: HarmonybrewBot
Merged-by: HarmonybrewBot
Description: Created by `brew bump`

---

Created with `brew bump-formula-pr`.<details>
  <summary>release notes</summary>
  <pre>## What's Changed
* JRuby 10.1.1.0 by @headius in rbenv/ruby-build#2635
* Produce optimized builds for `ruby-dev`, Ruby < 3.2 on Fedora 42+ after regression in ruby-build 20250716 by @eregon in rbenv/ruby-build#2638


**Full Changelog**: https://github.com/rbenv/ruby-build/compare/v20260716...v20260902</pre>
  <p>View the full release notes at <a href="https://github.com/rbenv/ruby-build/releases/tag/v20260902">https://github.com/rbenv/ruby-build/releases/tag/v20260902</a>.</p>
</details>
<hr>

See merge request: Harmonybrew/homebrew-core!18429
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ruby-dev and Ruby < 3.2 compiled with -O0 on Fedora 42+

2 participants