summaryrefslogtreecommitdiff
path: root/golang/golang.go
AgeCommit message (Collapse)Author
2024-10-04Remove cross compilation support from go packages Cole Faust
Go packages supported cross-compilation (to linux_musl at least), but go binaries did not. Go packages also add a reverse dependency onto the binary packages, which would cause a missing dependency error, except that all non-primary variants of go modules essentially disable themselves and reuse outputs from the primary variants. However, in mac builds, for some reason the primary variant is arm64 but the binary is only created for x86_64. This causes the missing dependency, but mac sets AllowMissingDependencies, but the missing dependencies still cause problems when generating soong documentation. After we submit this cl, we can potentially make the go modules not copy outputs from the primary variation, and instead have all variations work independently. Bug: 369916167 Test: m soong_docs on mac Change-Id: I967e63fc16f3b2a5cc1fa00ab62f5626b268c087
2024-09-12Fix reanalysis after full build Colin Cross
Blueprint bootstrap and Soong each create rules to install blueprint_go_binary modules to the same location, but with different command lines. Binaries used during bootstrap are installed using the bootstrap rule, but then get reinstalled during a full build via the blueprint_tools phony that is a dependency of droid. This changes the command line used for the rule stored in .ninja_log, and then on the next bootstrap ninja will rerun the binaries, triggering reanalysis. As a quick fix, don't create install rules for loadplugins and soong_build. A more permanent fix may be to move the bootstrap installation to a different location, but that will require more testing. Bug: 366291149 Test: m blueprint_tools && m blueprint_tools Flag; EXEMPT bugfix Change-Id: Ib7f2910976f4b5e6add2128ce0b2a5d10445a53c
2024-09-11Wrap blueprint_go_binary and bootstrap_go_package into android.Modules Colin Cross
Depending on a blueprint_go_binary from a Soong module requires hacks that allow Soong to support both blueprint.Module and android.Module. Wrap the blueprint Go module types with ones that implement android.Module, and delete all the related hacks. Bug: 319288033 Test: m checkbuild Flag: EXEMPT refactor Change-Id: I9b62b450de09bd10288333fbc66aa71c867ae0b3