Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(258)

Issue 10795044: Support Mac android cross compile.

Created:
8 years, 5 months ago by luke.weber
Modified:
7 years, 6 months ago
Reviewers:
Mark Mentovai, Torne
CC:
gyp-developer_googlegroups.com
Visibility:
Public.

Description

* Assume all make build tools that are copied are specific to host only. * change LINK_COMMANDS_ANDROID to only contain android specific commands, where it previously contained a mix of android and Linux commands. * Change android specific link commands to all be suffixed with _target. * Override for android link commands no longer _host for specific host commands, but _target for android specific commands. * Added GetHostOS(), returns GetHostFlavor({}), no param overrides.

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Total comments: 11

Patch Set 4 : #

Patch Set 5 : #

Patch Set 6 : #

Patch Set 7 : #

Total comments: 4

Patch Set 8 : * GYP_HOST_FLAVOR environment var #

Patch Set 9 : #

Total comments: 4

Patch Set 10 : #

Total comments: 2

Patch Set 11 : #

Patch Set 12 : #

Patch Set 13 : #

Patch Set 14 : Updated patch for newest gyp #

Patch Set 15 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+63 lines, -34 lines) Patch
M pylib/gyp/common.py View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +5 lines, -0 lines 0 comments Download
M pylib/gyp/generator/make.py View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 9 chunks +58 lines, -34 lines 0 comments Download

Messages

Total messages: 28 (0 generated)
luke.weber
8 years, 5 months ago (2012-07-20 13:49:37 UTC) #1
Torne
There probably should be new gyp test(s) covering this. https://chromiumcodereview.appspot.com/10795044/diff/3001/pylib/gyp/common.py File pylib/gyp/common.py (right): https://chromiumcodereview.appspot.com/10795044/diff/3001/pylib/gyp/common.py#newcode363 pylib/gyp/common.py:363: ...
8 years, 4 months ago (2012-08-01 11:20:32 UTC) #2
luke.weber
Incorporated Torne's feedback. Could use some guidance on what kind of tests to write for ...
8 years, 4 months ago (2012-08-07 11:52:35 UTC) #3
Torne
http://codereview.chromium.org/10795044/diff/15001/pylib/gyp/__init__.py File pylib/gyp/__init__.py (right): http://codereview.chromium.org/10795044/diff/15001/pylib/gyp/__init__.py#newcode303 pylib/gyp/__init__.py:303: help='To override the value of the build os') Help ...
8 years, 4 months ago (2012-08-14 11:04:01 UTC) #4
luke.weber
On 2012/08/14 11:04:01, Torne wrote: > http://codereview.chromium.org/10795044/diff/15001/pylib/gyp/__init__.py > File pylib/gyp/__init__.py (right): > > http://codereview.chromium.org/10795044/diff/15001/pylib/gyp/__init__.py#newcode303 > ...
8 years, 4 months ago (2012-08-14 13:10:08 UTC) #5
luke.weber
* GYP_HOST_FLAVOR environment var * Command line option host_flavor. * Assume all make build tools ...
8 years, 4 months ago (2012-08-14 13:22:43 UTC) #6
luke.weber
I've removed Ninja in the latest patch, as I didn't feel comfortable with my changes ...
8 years, 4 months ago (2012-08-14 13:23:53 UTC) #7
Torne
A few nits, but this looks much better. However, we do use ninja to build ...
8 years, 4 months ago (2012-08-21 09:47:17 UTC) #8
Torne
Patch needs a rebase also; doesn't apply to trunk.
8 years, 4 months ago (2012-08-21 09:56:06 UTC) #9
luke.weber
I've rebased. Ninja is working at least on a first draft basis. I'm seeing first ...
8 years, 4 months ago (2012-08-22 02:35:14 UTC) #10
Torne
On 2012/08/22 02:35:14, luke.weber wrote: > I've rebased. > > Ninja is working at least ...
8 years, 4 months ago (2012-08-22 11:22:57 UTC) #11
Torne
https://chromiumcodereview.appspot.com/10795044/diff/22001/pylib/gyp/common.py File pylib/gyp/common.py (right): https://chromiumcodereview.appspot.com/10795044/diff/22001/pylib/gyp/common.py#newcode13 pylib/gyp/common.py:13: import pprint Left over from debugging?
8 years, 4 months ago (2012-08-22 11:23:21 UTC) #12
Torne
Mark, can you take a look at this? It seems fine with me from Android's ...
8 years, 4 months ago (2012-08-22 11:24:42 UTC) #13
Mark Mentovai
Since I’ve been added to this at a late stage of the game, can someone ...
8 years, 4 months ago (2012-08-22 13:13:40 UTC) #14
Torne
On 2012/08/22 13:13:40, Mark Mentovai wrote: > Since I’ve been added to this at a ...
8 years, 4 months ago (2012-08-22 13:16:58 UTC) #15
Mark Mentovai
The idea of detecting the host OS is sound. https://chromiumcodereview.appspot.com/10795044/diff/22001/pylib/gyp/__init__.py File pylib/gyp/__init__.py (right): https://chromiumcodereview.appspot.com/10795044/diff/22001/pylib/gyp/__init__.py#newcode323 pylib/gyp/__init__.py:323: ...
8 years, 4 months ago (2012-08-22 13:21:14 UTC) #16
Torne
On 2012/08/22 13:21:14, Mark Mentovai wrote: > The idea of detecting the host OS is ...
8 years, 4 months ago (2012-08-22 13:39:51 UTC) #17
Mark Mentovai
Yes, I see that. It’s a mistake that should not be perpetrated any further.
8 years, 4 months ago (2012-08-22 13:43:47 UTC) #18
Torne
On 2012/08/22 13:43:47, Mark Mentovai wrote: > Yes, I see that. It’s a mistake that ...
8 years, 4 months ago (2012-08-22 16:51:39 UTC) #19
luke.weber
I've uploaded the changes that were suggested to change all host_flavor to host_os. Need a ...
8 years, 4 months ago (2012-08-22 22:24:25 UTC) #20
luke.weber
Well last point is almost certainly my issue. I have to figure out how to ...
8 years, 4 months ago (2012-08-22 23:13:06 UTC) #21
Torne
On 2012/08/22 22:24:25, luke.weber wrote: > I've uploaded the changes that were suggested to change ...
8 years, 4 months ago (2012-08-23 16:44:02 UTC) #22
luke.weber
1) I've incorporated the discussed changes to remove the override, which made the patch a ...
8 years, 3 months ago (2012-09-10 10:32:37 UTC) #23
luke.weber
Sorry this is a better version of the diff: http://pastebin.com/7LjbnKQS
8 years, 3 months ago (2012-09-10 10:36:12 UTC) #24
Mark Mentovai
Seems fine now. LGTM, but you should also get this looked at by someone more ...
8 years, 3 months ago (2012-09-10 16:25:21 UTC) #25
Torne
Luke, are you still interested in pursuing this?
7 years, 10 months ago (2013-02-25 13:37:43 UTC) #26
luke.weber
Updated patch for newest gyp
7 years, 10 months ago (2013-02-25 21:49:53 UTC) #27
luke.weber
7 years, 10 months ago (2013-02-25 22:37:07 UTC) #28
On 2013/02/25 13:37:43, Torne wrote:
> Luke, are you still interested in pursuing this?

I'm kind of interested, but it's kind of a big time investment every time.

I had all of webrtc building originally with the original patch, but it's
constantly changing, and constantly breaking as things are refactored. I'm
willing to put in some time on it, but I need a little bit of air support, like
how to get ads2gas working on apple, as it's just out of my depth.

1) libvpx doesn't build currently. AR_target needs to be set, and it isn't for
unpack_lib_posix.sh to work. Then ads2gas doesn't work correctly, and I get the
wrong magic number. Right now it fails silently on mac, where it should generate
the objects to asm conversion.
2) build/common.gypi  sets android_toolchain incorrectly: 
'android_toolchain%':
'<(android_ndk_root)/toolchains/arm-linux-androideabi-4.6/prebuilt/<(host_os)-<(android_host_arch)/bin',
=> generates incorrectly mac-x86_64, when it should be darwin-x86
3) To compile the host stuff on mac, I also needed to add this to
build/common.gypi
['OS=="android" and HOST_OS=="mac"', {
  'target_defaults': {
    'ldflags!': [
      '-Wl,-z,now',
      '-Wl,-z,relro',
      ],
    },
}],

Anyways let me know if this is interesting to you guys, or how I should proceed.

Powered by Google App Engine
This is Rietveld 408576698