golang / go

The Go programming language
https://go.dev
BSD 3-Clause "New" or "Revised" License
123.41k stars 17.59k forks source link

cmd/link: support internal linking for Android and iOS #31819

Open eliasnaur opened 5 years ago

eliasnaur commented 5 years ago

We're about to run self-hosted Android and iOS builders (#31722). It would be nice if Go could produce internally linked binaries for those platforms, for a less hacky bootstrapping and for being able to build x/build/cmd/buildlet and stage0 everywhere. Depends on #31343 Android.

katiehockman commented 5 years ago

/cc @cherrymui @ianlancetaylor

gopherbot commented 4 years ago

Change https://golang.org/cl/207299 mentions this issue: cmd/link: bootstrap android/arm64 in internal linking mode

bcmills commented 1 year ago

Depends on https://github.com/golang/go/issues/31343 Android.

31343 is marked as fixed. Is there anything else preventing the use of internal linking on Android?

(https://go.dev/cl/207299 only marked it as supported on arm64)

cherrymui commented 1 year ago

Yeah, currently we only support internal linking on Android/Arm64.

We do support internal linking PIE on Linux/AMD64. I guess it would be too hard to make android/amd64 work as well.

We don't currently support internal linking PIE on 386 or 32-bit ARM. That would need more work. Are 32-bit Android platforms still important to support?

ajsinclair commented 1 year ago

Are 32-bit Android platforms still important to support?

I would find it useful. We have Go binaries running on 32 bit ARM and x86 Emulators.