Skip to content

Added swiftpm and other libs to Android toolchain #11870

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

Merged
merged 1 commit into from
Oct 23, 2017

Conversation

amraboelela
Copy link
Contributor

These changes will add swift package management tools to the android toolchain, among other libraries and tools

@amraboelela
Copy link
Contributor Author

@milseman Please check this :)

@milseman milseman requested a review from Rostepher September 12, 2017 20:46
@milseman
Copy link
Member

@Rostepher, could you review this or let me know who is a more appropriate reviewer for this?

@milseman
Copy link
Member

@swift-ci please smoke test

1 similar comment
@milseman
Copy link
Member

@swift-ci please smoke test

@amraboelela
Copy link
Contributor Author

Question. When you say @ swift-ci please smoke test, are there humans behind this or is it automatic thing? :)

@milseman
Copy link
Member

Automatically handled by a bot. There are sometimes issues, of course, which are inherent to the problem of CI.

@Rostepher
Copy link
Contributor

If you don't see a build start almost immediately then the CI bot probably didn't get the message.

@amraboelela
Copy link
Contributor Author

Does that mean I can also initiate the test by saying @ swift-ci please smoke test ?

@milseman
Copy link
Member

@amraboelela It might be limited to those with commit access, to help manage potential load on the bots.

@amraboelela
Copy link
Contributor Author

@swift-ci please smoke test

@amraboelela
Copy link
Contributor Author

Just testing :) so I guess it didn't work from me.

@amraboelela amraboelela force-pushed the android-build-toolchain2 branch from d7ebf25 to 969645c Compare September 12, 2017 23:52
@amraboelela
Copy link
Contributor Author

Oh, the tests actually got started after a while, so maybe anybody can start them.

@amraboelela
Copy link
Contributor Author

@swift-ci please smoke test

@amraboelela
Copy link
Contributor Author

It got stuck at Waiting for status to be reported

@milseman
Copy link
Member

@swift-ci please smoke test

@CodaFi
Copy link
Contributor

CodaFi commented Sep 14, 2017

Not that I know what I'm taking about, but is it reasonable to constrain the script to only build for armv7e? Shouldn't this be something that's figured out from a target triple instead of hard-coded?

@milseman
Copy link
Member

@Rostepher could you review this?

@compnerd
Copy link
Member

@CodaFi android only supports the A class of CPUs AFAIK. The NDK only provides the v7a bits, so I think that bit is reasonable.

@Rostepher
Copy link
Contributor

@milseman I'll give this a look over in the morning.

Copy link
Contributor

@Rostepher Rostepher left a comment

Choose a reason for hiding this comment

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

I don't see any issues with this, except for what @CodaFi pointed out with hardcoding the ARM version. I've not had any experience with building for Android yet so take my input with a grain of salt. @gottesmm Do you have any experience with Android builds?

@gottesmm
Copy link
Contributor

No. I think @modocache is the best AFAIK.

@alblue
Copy link
Contributor

alblue commented Oct 13, 2017

@swift-ci please smoke test

@alblue
Copy link
Contributor

alblue commented Oct 13, 2017

@amraboelela note that the swift-ci bot is picky about who it listens to - committers have access to trigger builds but not others. When it says 'waiting for status' it's really waiting for someone else to kick it off on your behalf.

@milseman
Copy link
Member

@compnerd or @modocache what do you think of this change?

Copy link
Contributor

@modocache modocache left a comment

Choose a reason for hiding this comment

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

This is great, thanks!

I believe "armeabi-v7a" is hardcoded in a few spots in the build scripts and testing utilities for Android, so it doesn't bother me that it also is here. Maybe someone could create a task to clean that up and take care of it in a forthcoming pull request?

@@ -0,0 +1,14 @@

# Build Android Toolchain
Copy link
Contributor

Choose a reason for hiding this comment

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

Just a suggestion: I think expanding on what "Android toolchain" means here would help people who have some interest, but don't quite understand what a "toolchain" is, to use the scripts and tools in here. Ideally, I think this README should answer the question: "why would I want to build an Android toolchain?"

@amraboelela amraboelela force-pushed the android-build-toolchain2 branch 3 times, most recently from 2551bb2 to 888bc52 Compare October 16, 2017 17:05

# Build Android Toolchain

This toolchain will generate the .so and .swiftmodule files of swift standard library and Foundation framework for Android environment, armv7 architecture. Those files are needed when building any swift library to be included in an applciation for Android.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Please capitalize "Swift" and correct the typo in the word "application".
Insert "the" before "Swift standard library" and before "Android environment".

@amraboelela amraboelela force-pushed the android-build-toolchain2 branch 5 times, most recently from e38f79f to d9ef07a Compare October 17, 2017 16:08
@milseman
Copy link
Member

@amraboelela, do you want to do those fixes in this PR or a followup? I know it's been open for quite a while, and I have no strong opinions so long as @modocache and @xwu are fine with either.

@amraboelela
Copy link
Contributor Author

@milseman I already did the changes that @modocache and @xwu asked me to do.

@milseman
Copy link
Member

@swift-ci please smoke test

@amraboelela amraboelela force-pushed the android-build-toolchain2 branch from ff6a306 to 0e9f909 Compare October 18, 2017 03:17
@alblue
Copy link
Contributor

alblue commented Oct 18, 2017

@swift-ci please smoke test

@milseman
Copy link
Member

@swift-ci please smoke test Linux Platform


# Build Android Toolchain

This toolchain will generate the .so and .swiftmodule files of the Swift standard library and Foundation framework for the Android environment, armv7 architecture. Those files are needed when building any swift library to be included in an application for Android.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Please capitalize all instances of "Swift" :)

@amraboelela amraboelela force-pushed the android-build-toolchain2 branch from 0e9f909 to eacb632 Compare October 19, 2017 14:29
@milseman
Copy link
Member

@swift-ci please smoke test

@amraboelela amraboelela force-pushed the android-build-toolchain2 branch from a4173c1 to 3936714 Compare October 20, 2017 17:23
@amraboelela
Copy link
Contributor Author

Did I ruin the smoke test by doing merge from master?

@Rostepher
Copy link
Contributor

Any new commits will update the status of the PR and require a new smoke-test run. Same goes for force pushing a git rebase or a new merge commit.

@Rostepher
Copy link
Contributor

@swift-ci please smoke test

@amraboelela amraboelela force-pushed the android-build-toolchain2 branch from 30b2470 to 1d75bc8 Compare October 21, 2017 02:05
@amraboelela
Copy link
Contributor Author

Did another merge from master because the Linux smoke test failed.

@modocache
Copy link
Contributor

@swift-ci please smoke test

@milseman milseman merged commit edb078f into swiftlang:master Oct 23, 2017
@amraboelela amraboelela deleted the android-build-toolchain2 branch October 23, 2017 03:47
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.

9 participants