Page MenuHomePhabricator

build: LLD based macOS toolchain
ClosedPublic

Authored by Fabien on Sat, Nov 30, 11:09.

Details

Reviewers
PiRK
Group Reviewers
Restricted Project
Commits
rABCa693a7f85462: build: LLD based macOS toolchain
Summary
This switches us to using a LLD based toolchain for macOS builds.
Benefits

 - Less complicated macOS toolchain.
 - No longer beholden to Apple releasing it's source for cctools, ld64 & libtapi.
 - No more reliance on third parties to modify those sources for us. i.e apple-libtapi, cctools-port (cctools + ld64).

Backport of core#21778.

Note this needs some adaptation or our cmake build, as well as some update in build.sh to work around a cmake bug with llvm-strip.
The Cross build for OSX will be broken on CI (because it lacks the proper clang version). I paused the build for now and will unbreak in a follow-up.

Test Plan

Run the guix osx build.

Diff Detail

Repository
rABC Bitcoin ABC
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Fabien requested review of this revision.Sat, Nov 30, 11:09
depends/packages/openssl.mk
51 ↗(On Diff #51273)

openssl ignores LDFLAGS... So this is the correct way to do it unfortunately

This revision is now accepted and ready to land.Sat, Nov 30, 13:15
This revision was automatically updated to reflect the committed changes.