Skip to content

[DOC] Bump autoconf requirement #13910

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

Closed
wants to merge 1 commit into from

Conversation

st0012
Copy link
Member

@st0012 st0012 commented Jul 16, 2025

Autoconf 2.70 or later is required to properly handle multi-line AC_CHECK_FUNCS lists. The recent changes in #13907 that split function lists across multiple lines require autoconf 2.70's improved whitespace handling (ref).

Without autoconf 2.70+, the configure script generation fails with syntax errors like:
../configure: line 29306: syntax error near unexpected token `pthread_attr_get_np'

This is because autoconf 2.69 and earlier don't properly handle multi-line function lists in AC_CHECK_FUNCS without backslash continuations, while 2.70+ requires square brackets and handles newlines correctly.

cc @nobu

Autoconf 2.70 or later is required to properly handle multi-line
AC_CHECK_FUNCS lists. The recent changes in ruby#13907 that split function
lists across multiple lines require autoconf 2.70's improved whitespace
handling.

Without autoconf 2.70+, the configure script generation fails with syntax
errors like:
../configure: line 29306: syntax error near unexpected token `pthread_attr_get_np'

This is because autoconf 2.69 and earlier don't properly handle multi-line
function lists in AC_CHECK_FUNCS without backslash continuations, while
2.70+ requires square brackets and handles newlines correctly.
@github-actions github-actions bot added the Documentation Improvements to documentation. label Jul 16, 2025
@tekknolagi
Copy link
Contributor

Is it possible to make the build fail with a better message in addition to bumping the documentation? Like detect an old autoconf

@nobu
Copy link
Member

nobu commented Jul 16, 2025

Thank you.
Should we revert 32bfb61?

@nobu
Copy link
Member

nobu commented Jul 16, 2025

@tekknolagi It would be possible by bumping up AC_PREREQ.

@st0012
Copy link
Member Author

st0012 commented Jul 16, 2025

I'm not familiar with the criteria required to bump Ruby's build dependencies. But given that autoconf 2.67 is released in 2010 and 2.70 is 2020, this is likely a big jump to some devs/build systems.
So if we don't get much out of 32bfb61 other than fixing warnings, I think it's better to revert it.

@Earlopain
Copy link
Contributor

For reference, debian bullseye only contains autoconf 2.69: https://packages.debian.org/bullseye/autoconf

nobu added a commit to nobu/ruby that referenced this pull request Jul 16, 2025
This reverts commit 32bfb61, that
requires autoconf 2.70's improved whitespace handling.  It is too
early for some platforms yet.

Fix rubyGH-13910
@nobu nobu closed this in #13923 Jul 17, 2025
nobu added a commit that referenced this pull request Jul 17, 2025
This reverts commit 32bfb61, that
requires autoconf 2.70's improved whitespace handling.  It is too
early for some platforms yet.

Fix GH-13910
@st0012 st0012 deleted the doc-bump-autoconf-requirement branch July 17, 2025 12:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Documentation Improvements to documentation.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants