Skip to content
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

build: use aarch64 Clang if cross-compiling for darwin on aarch64 #22436

Merged
merged 1 commit into from
Jul 20, 2021

Conversation

fanquake
Copy link
Member

If we're cross-compiling for darwin on aarch64 hardware, we need to
use a Clang that will run on that hardware.

Only tested in a Linux Docker container (aarch64-unknown-linux-gnu),
running on an Apple M1 mac-mini (aarch64-apple-darwin20.5.0).

If we're cross-compiling for darwin on aarch64 hardware, we need need to
use a Clang that will run on that hardware.

Only tested in a Linux Docker container (aarch64-unknown-linux-gnu),
running on an Apple M1 mac-mini (aarch64-apple-darwin20.5.0).
@hebasto
Copy link
Member

hebasto commented Jul 13, 2021

If we're cross-compiling for darwin on aarch64 hardware, we need to
use a Clang that will run on that hardware.

To be precise, you mean "run natively", as x86 code could be run on aarch64 hardware via Rosetta layer, right?

@fanquake
Copy link
Member Author

To be precise, you mean "run natively", as x86 code could be run on aarch64 hardware via Rosetta layer, right?

I'm talking about cross-compiling for Darwin, using Linux, on aarch64 hardware. I'm not sure what Rosetta is going to help with in that case.

@hebasto
Copy link
Member

hebasto commented Jul 13, 2021

Concept ACK. Cannot test on aarch64 hardware w/o virtualization.

@laanwj
Copy link
Member

laanwj commented Jul 13, 2021

Concept ACK

@sipa
Copy link
Member

sipa commented Jul 13, 2021

I'll run a guix build on aarch64 hardware (Odroid N2+).

@DrahtBot
Copy link
Contributor

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Conflicts

Reviewers, this pull request conflicts with the following ones:

If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

@sipa
Copy link
Member

sipa commented Jul 13, 2021

What guix HOSTS= do I use?

@fanquake
Copy link
Member Author

What guix HOSTS= do I use?

HOSTS="x86_64-apple-darwin18"

@hebasto
Copy link
Member

hebasto commented Jul 17, 2021

Tested 54c7754 for x86_64-apple-darwin18 host in hirsute Docker container on macOS M1, and faced a bug which is fixed in #22448.

Maybe rebase this PR on top of the #22448?

@hebasto
Copy link
Member

hebasto commented Jul 17, 2021

ACK 54c7754, I agree it can be merged (fix in #22448 is orthogonal to this one).

@fanquake fanquake requested a review from dongcarl July 18, 2021 05:50
@fanquake fanquake merged commit 5c8820b into bitcoin:master Jul 20, 2021
@fanquake fanquake deleted the arm64_macos_cross_clang branch July 20, 2021 10:25
sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Jul 23, 2021
…darwin on aarch64

54c7754 build: use aarch64 Clang if cross-compiling for darwin on aarch64 (fanquake)

Pull request description:

  If we're cross-compiling for darwin on aarch64 hardware, we need to
  use a Clang that will run on that hardware.

  Only tested in a Linux Docker container (aarch64-unknown-linux-gnu),
  running on an Apple M1 mac-mini (aarch64-apple-darwin20.5.0).

ACKs for top commit:
  hebasto:
    ACK 54c7754, I agree it can be merged (fix in bitcoin#22448 is orthogonal to this one).

Tree-SHA512: 66c530097a5dc072a0a00dc22eb3d4a7d923dfa8ab8160f7c3e395cbe58da324f367548d673c0510606f5225d5d37bb5607a76b1703b8b03ac7d2cceeccbd542
PastaPastaPasta pushed a commit to PastaPastaPasta/dash that referenced this pull request Mar 5, 2022
…darwin on aarch64

54c7754 build: use aarch64 Clang if cross-compiling for darwin on aarch64 (fanquake)

Pull request description:

  If we're cross-compiling for darwin on aarch64 hardware, we need to
  use a Clang that will run on that hardware.

  Only tested in a Linux Docker container (aarch64-unknown-linux-gnu),
  running on an Apple M1 mac-mini (aarch64-apple-darwin20.5.0).

ACKs for top commit:
  hebasto:
    ACK 54c7754, I agree it can be merged (fix in bitcoin#22448 is orthogonal to this one).

Tree-SHA512: 66c530097a5dc072a0a00dc22eb3d4a7d923dfa8ab8160f7c3e395cbe58da324f367548d673c0510606f5225d5d37bb5607a76b1703b8b03ac7d2cceeccbd542
PastaPastaPasta pushed a commit to PastaPastaPasta/dash that referenced this pull request Mar 5, 2022
…darwin on aarch64

54c7754 build: use aarch64 Clang if cross-compiling for darwin on aarch64 (fanquake)

Pull request description:

  If we're cross-compiling for darwin on aarch64 hardware, we need to
  use a Clang that will run on that hardware.

  Only tested in a Linux Docker container (aarch64-unknown-linux-gnu),
  running on an Apple M1 mac-mini (aarch64-apple-darwin20.5.0).

ACKs for top commit:
  hebasto:
    ACK 54c7754, I agree it can be merged (fix in bitcoin#22448 is orthogonal to this one).

Tree-SHA512: 66c530097a5dc072a0a00dc22eb3d4a7d923dfa8ab8160f7c3e395cbe58da324f367548d673c0510606f5225d5d37bb5607a76b1703b8b03ac7d2cceeccbd542
PastaPastaPasta pushed a commit to PastaPastaPasta/dash that referenced this pull request Mar 5, 2022
…darwin on aarch64

54c7754 build: use aarch64 Clang if cross-compiling for darwin on aarch64 (fanquake)

Pull request description:

  If we're cross-compiling for darwin on aarch64 hardware, we need to
  use a Clang that will run on that hardware.

  Only tested in a Linux Docker container (aarch64-unknown-linux-gnu),
  running on an Apple M1 mac-mini (aarch64-apple-darwin20.5.0).

ACKs for top commit:
  hebasto:
    ACK 54c7754, I agree it can be merged (fix in bitcoin#22448 is orthogonal to this one).

Tree-SHA512: 66c530097a5dc072a0a00dc22eb3d4a7d923dfa8ab8160f7c3e395cbe58da324f367548d673c0510606f5225d5d37bb5607a76b1703b8b03ac7d2cceeccbd542
PastaPastaPasta pushed a commit to PastaPastaPasta/dash that referenced this pull request Mar 7, 2022
…darwin on aarch64

54c7754 build: use aarch64 Clang if cross-compiling for darwin on aarch64 (fanquake)

Pull request description:

  If we're cross-compiling for darwin on aarch64 hardware, we need to
  use a Clang that will run on that hardware.

  Only tested in a Linux Docker container (aarch64-unknown-linux-gnu),
  running on an Apple M1 mac-mini (aarch64-apple-darwin20.5.0).

ACKs for top commit:
  hebasto:
    ACK 54c7754, I agree it can be merged (fix in bitcoin#22448 is orthogonal to this one).

Tree-SHA512: 66c530097a5dc072a0a00dc22eb3d4a7d923dfa8ab8160f7c3e395cbe58da324f367548d673c0510606f5225d5d37bb5607a76b1703b8b03ac7d2cceeccbd542
gades pushed a commit to cosanta/cosanta-core that referenced this pull request May 8, 2022
…darwin on aarch64

54c7754 build: use aarch64 Clang if cross-compiling for darwin on aarch64 (fanquake)

Pull request description:

  If we're cross-compiling for darwin on aarch64 hardware, we need to
  use a Clang that will run on that hardware.

  Only tested in a Linux Docker container (aarch64-unknown-linux-gnu),
  running on an Apple M1 mac-mini (aarch64-apple-darwin20.5.0).

ACKs for top commit:
  hebasto:
    ACK 54c7754, I agree it can be merged (fix in bitcoin#22448 is orthogonal to this one).

Tree-SHA512: 66c530097a5dc072a0a00dc22eb3d4a7d923dfa8ab8160f7c3e395cbe58da324f367548d673c0510606f5225d5d37bb5607a76b1703b8b03ac7d2cceeccbd542
gwillen pushed a commit to ElementsProject/elements that referenced this pull request Jun 1, 2022
@bitcoin bitcoin locked as resolved and limited conversation to collaborators Aug 16, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants