Page MenuHomePhabricator

[CMAKE] Fix linux cross compilation with the glibc compatibility

Authored by Fabien on Wed, Sep 11, 15:19.


Group Reviewers
Restricted Project

Using the glibc compatibility requires, but it is not part of
the depends subsystem.
This diff adds the cross compiler installation dir to the search path:

  • By setting the search prefix explicitely for ARM;
  • By using the system path as a fallback to support the x86 platform.

Because of CMake search priority, the libraries from the depends subsystem will always be found first (if they exist).

Depends on D4038.

Test Plan

Repeat with Linux64, LinuxARM and LinuxAArch64

Diff Detail

rABC Bitcoin ABC
Lint OK
No Unit Test Coverage
Build Status
Buildable 7483
Build 13009: Bitcoin ABC Teamcity Staging
Build 13008: arc lint + arc unit

Event Timeline

Fabien created this revision.Wed, Sep 11, 15:19
Herald added a reviewer: Restricted Project. · View Herald TranscriptWed, Sep 11, 15:19
Fabien planned changes to this revision.Mon, Sep 16, 14:52
Fabien edited the summary of this revision. (Show Details)Mon, Sep 16, 15:27
Fabien updated this revision to Diff 11349.Mon, Sep 16, 15:28

Set the fallback at the toochain file level rather than the library.

While this is clearly not the right solution, we can move on with that for the sake of progress. The longer term solution is to add all we depend on in the depends.

Fabien added a comment.Thu, Sep 19, 12:41

In this specific case we might just drop the RT library requirement which brings compatibility to an old glibc version.

deadalnix accepted this revision.Fri, Sep 20, 16:16
This revision is now accepted and ready to land.Fri, Sep 20, 16:16