Repository navigation
README: -mm=own and Android; release zip Android layout - #529
Merged
Merged
Conversation
What's new and the contents gain both. "Compile for Android" covers the targets, the NDK, the release-zip libraries and their options, an arm64 executable, and running it with adb (chmod +x: a file pushed from Windows is not executable). The memory models table and a new -mm=own subsection cover moves, borrows, the compile error when ownership cannot be proven, Shared<T>, and --no-default-lib (no own default library yet). "Build for Android" lists the two scripts and the DefaultLib one. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Get-ChildItem on .\android_stage\android packed that folder's children, so the zip had arm64-v8a\lib and x86_64\lib at its root rather than the android\<abi>\lib the comment above and the DefaultLib README document. Pass .\android_stage, as gcdll_stage and resourcedir_stage are passed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
README
-mm=ownand the Android targets.aarch64-linux-android29,x86_64-linux-android29), the NDK option, and why the API level must be in the triple;--emit=exeexample and a note on--emit=dll;adb. It needschmod +x, because a file pushed from Windows isn't executable and the run fails with exit 126.-mm=ownrow in the table, and a subsection coveringShared<T>with.valueandShared.count;--no-default-lib, since there is no own default library yet.build_gc_release_android.bat,build_tslang_runtime_release_android.bat, and the DefaultLib repo'sbuild_android.bat.Release zip: Android layout
Get-ChildItem -Path ... .\android_stage\android | Compress-Archivepacks that folder's children. So the Windows zip hasarm64-v8a\lib\andx86_64\lib\at its root, not theandroid\<abi>\lib\that the workflow comment and the DefaultLib README document. The fix is to pass.\android_stage, the same waygcdll_stageandresourcedir_stageare passed.I checked this by running the same pipeline on a small staged tree:
arm64-v8a/lib/libgc.aandroid/arm64-v8a/lib/libgc.av0.0-pre-alpha91's zip was built before this fix, so its Android libraries are at
<zip>\<abi>\lib.Test plan
tslang.exe.adb push,chmod +x, run), and theShared<T>example printed1 1 2.While writing the
-mm=ownsection I found that reassigning a moved-fromletis rejected, and filed it as a separate issue.🤖 Generated with Claude Code