abyss996 / gyp

Automatically exported from code.google.com/p/gyp
0 stars 0 forks source link

Android backend: host binaries need to be target-specific #326

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
Some binaries compiled for host during the chromium build are target 
OS/architecture-specific (e.g. v8's mksnapshot). However, Android expects to be 
able to build for multiple targets in the same tree, and host binaries (and 
intermediate files) are stored in a single location. This means that if you 
build for ARM and then subsequently build for x86, it will use the existing 
mksnapshot binary which generates ARM code, and will fail to work correctly.

The only reliable workaround I can think of for this is to mangle target_name 
on host targets when using the android backend to include the target 
architecture, which currently is hard to do because gyp doesn't know the target 
architecture.

Original issue reported on code.google.com by torne@chromium.org on 6 Mar 2013 at 2:58

GoogleCodeExporter commented 8 years ago

Original comment by torne@chromium.org on 6 Mar 2013 at 2:58

GoogleCodeExporter commented 8 years ago
To solve this problem for v8's mksnapshot, we've included <(target_arch) in the 
name of the libs/executables. This is probably not a common enough case to 
really warrant a generic solution, since so far only this one case exists, so 
I'm closing this.

Original comment by torne@chromium.org on 16 May 2013 at 10:50