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

Use protoc x86_64 on Apple M1 aarch64 #6005

Merged
merged 2 commits into from Apr 27, 2022
Merged

Use protoc x86_64 on Apple M1 aarch64 #6005

merged 2 commits into from Apr 27, 2022

Conversation

schlosna
Copy link
Contributor

@schlosna schlosna commented Apr 21, 2022

Goals (and why):
==COMMIT_MSG==
Use protoc x86_64 on Apple M1 aarch64

The old protoc version 3.5.1 atlasdb uses does not yet support Apple M1 aarch64
(see protocolbuffers/protobuf#8062), so use x86_64 until
atlasdb upgrades to protoc 3.18.0+ which add osx-aarch_64.
==COMMIT_MSG==

Implementation Description (bullets): Use protoc x86_64 on Apple M1 aarch64, otherwise use protoc for default osdetector.classifier

protoc 3.18.0+ include fake osx-aarch64 binaries (e.g. protoc-3.19.2-osx-aarch_64.exe) that are really Mach-O 64-bit executable x86_64 that OSX will run in Rosetta's Intel compatible mode per protocolbuffers/protobuf#8557

Testing (What was existing testing like? What have you done to improve it?): build locally on Apple M1

Concerns (what feedback would you like?): I don't know why AtlasDB's protoc dependency is so ancient (3.5.1), but didn't want to bump it yet until understanding implications

Where should we start reviewing?:

Priority (whenever / two weeks / yesterday):

The old protoc version 3.5.1 atlasdb uses does not yet support Apple M1 aarch64
(see protocolbuffers/protobuf#8062), so use x86_64 until
atlasdb upgrades to protoc 3.18.0+ which add osx-aarch_64.
@changelog-app
Copy link

changelog-app bot commented Apr 21, 2022

Generate changelog in changelog/@unreleased

Type

  • Feature
  • Improvement
  • Fix
  • Break
  • Deprecation
  • Manual task
  • Migration

Description

Use protoc x86_64 on Apple M1 aarch64

The old protoc version 3.5.1 atlasdb uses does not yet support Apple M1 aarch64
(see protocolbuffers/protobuf#8062), so use x86_64 until
atlasdb upgrades to protoc 3.18.0+ which add osx-aarch_64.

Check the box to generate changelog(s)

  • Generate changelog entry

Copy link
Contributor

@mdaudali mdaudali left a comment

Choose a reason for hiding this comment

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

Hey, thanks for this!!

Can confirm it builds on my M1, whereas develop currently doesn't (without any further changes).

We'll get someone who doesn't have an M1 to verify this change doesn't break anything for them before merging :)

Copy link
Contributor

@Jolyon-S Jolyon-S left a comment

Choose a reason for hiding this comment

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

+1 - works on an older mac too.

@bulldozer-bot bulldozer-bot bot merged commit fba6ea4 into develop Apr 27, 2022
@bulldozer-bot bulldozer-bot bot deleted the ds/protoc branch April 27, 2022 14:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants