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

Add linux-arm64 RID builds #99

Closed
wants to merge 1 commit into from
Closed

Conversation

omajid
Copy link

@omajid omajid commented Aug 8, 2019

The normal approach is to take the oldest OS supported and use that to make linux-$ARCH RID packages. Here, we use ubuntu 16.04.

This commit makes the following changes:

Add a new dockerfile for linux-arm64, which is actually just a copy of Dockerfile.ubuntu.16.04-arm64. This is so we can build linux-arm64 RID packages in CI.

Add a dllmap for mapping from armv8 (which is what mono calls arm64/aarch64 - see https://www.mono-project.com/docs/advanced/pinvoke/dllmap/) to the linux-arm64 RID.

Also fix build.libgit2.sh to handle building natively on arm64. I used this to build libgit2, using ./build.libgit2.sh, on RHEL 8 on arm64.

The normal approach is to take the oldest OS supported and use that to
make linux-$ARCH RID packages. Here, we use ubuntu 16.04.

This commit makes the following changes:

Add a new dockerfile for linux-arm64, which is actually just a copy of
Dockerfile.ubuntu.16.04-arm64. This is so we can build linux-arm64 RID
packages in CI.

Add a dllmap for mapping from armv8 (which is what mono calls arm64 - see
https://www.mono-project.com/docs/advanced/pinvoke/dllmap/) to the
linux-arm64 RID.

Also fix build.libgit2.sh to handle building natively on arm64. I used
this to build libgit2, using ./build.libgit2.sh, on RHEL 8 on arm64.
@omajid
Copy link
Author

omajid commented Aug 8, 2019

Some open questions:

  1. Is there a way I can verify the built libgit2 works end-to-end?

  2. What is the process of getting this released?

  3. Once CI systmes (eg Support for ARM (dotnet core support ARM32 today) microsoft/azure-pipelines-agent#1521 (comment)) start supporting arm64, maybe we might want to do native builds on arm64 instead of cross compilation?

@omajid
Copy link
Author

omajid commented Oct 5, 2019

Closing because libgit2/libgit2sharp#1714 does it much better.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant