Skip to content

Comments

GH-49369: [C++][R] Deal with validating libtool again#49370

Open
jonkeane wants to merge 5 commits intoapache:mainfrom
jonkeane:49369-libtool-again
Open

GH-49369: [C++][R] Deal with validating libtool again#49370
jonkeane wants to merge 5 commits intoapache:mainfrom
jonkeane:49369-libtool-again

Conversation

@jonkeane
Copy link
Member

@jonkeane jonkeane commented Feb 22, 2026

Rationale for this change

Deal with bespoke frameworks on CRAN machines, ensure we can detect Apple-provided libtool as opposed to GNU libtool. Modernize cmake.

What changes are included in this PR?

Use VALIDATOR to validate libtool, a slightly more flexible regex

Are these changes tested?

Yes

Are there any user-facing changes?

No, well just one.

@jonkeane
Copy link
Member Author

@github-actions crossbow submit test-r-install-local

@github-actions
Copy link

Revision: b6fa4e7

Submitted crossbow builds: ursacomputing/crossbow @ actions-dd37c5e22c

Task Status
test-r-install-local GitHub Actions

@jonkeane
Copy link
Member Author

@github-actions crossbow submit test-r-install-local

@github-actions
Copy link

Revision: dcc373d

Submitted crossbow builds: ursacomputing/crossbow @ actions-cb360883d6

Task Status
test-r-install-local GitHub Actions

@jonkeane jonkeane requested review from kou and thisisnic February 22, 2026 18:04
@jonkeane jonkeane force-pushed the 49369-libtool-again branch from bdafffa to fd2af48 Compare February 22, 2026 18:37
@jonkeane
Copy link
Member Author

The failures are either on main (macos 14) or transient (ubuntu gcc)

Copy link
Member

@raulcd raulcd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @jonkeane ! Just so I understand for the future if this or something similar happens again. Was the problem with GNU libtool found on CI? Where?

@github-actions github-actions bot added awaiting changes Awaiting changes and removed awaiting committer review Awaiting committer review labels Feb 23, 2026
@jonkeane
Copy link
Member Author

This is something that showed up on CRAN: the red M1Mac on https://cran.r-project.org/web/checks/check_results_arrow.html.

-- CMAKE_CXX_FLAGS_RELEASE: -O3 -DNDEBUG -O2 
CMake Error at cmake_modules/BuildUtils.cmake:114 (message):
  libtool found appears not to be Apple's libtool: /usr/bin/libtool

And then separately I also received this from one of the CRAN maintainers:

/usr/bin/libtool -V
Apple Inc. version cctools_ld-1266.5

The whole reason for this detection issue is because some CRAN machines had GNU libtool (an entirely different tool higher on their path than the apple-provided libtool that does the linking we want/need see #40259). So we sniffed for a string that could tell the difference. I'm not sure why on this machine (suddenly! nothing in our code here has changed since 2024...) the version string is slightly different, but this new regex is a bit more flexible.

We test this in crossbow jobs installing macos locally https://github.com/ursacomputing/crossbow/actions/runs/22282130627/job/64454329380#step:9:790 which we setup to use GNU libtool specially: https://github.com/ursacomputing/crossbow/actions/runs/22282130627/job/64454329380#step:6:2 though that runner has the standard (apple) libtool version string that we detect just fine with our stricter regex.

I am also going to add a print if I can to the cmake to also print out the version string we get when it errors so that we didn't need one of the CRAN maintainers to send us the string.

@github-actions github-actions bot added awaiting change review Awaiting change review and removed awaiting changes Awaiting changes labels Feb 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants