1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
Fixes target toolchain arguments being passed to the host toolchain when
cross-compiling. For example, -m64 is not available on aarch64.
diff --git a/common.gypi b/common.gypi
index 3161adbe09..08983f589c 100644
--- a/common.gypi
+++ b/common.gypi
@@ -411,28 +411,56 @@
'cflags': [ '-I/usr/local/include' ],
'ldflags': [ '-Wl,-z,wxneeded' ],
}],
- ],
- 'conditions': [
- [ 'target_arch=="ia32"', {
- 'cflags': [ '-m32' ],
- 'ldflags': [ '-m32' ],
- }],
- [ 'target_arch=="x64"', {
- 'cflags': [ '-m64' ],
- 'ldflags': [ '-m64' ],
- }],
- [ 'target_arch=="ppc" and OS not in "aix os400"', {
- 'cflags': [ '-m32' ],
- 'ldflags': [ '-m32' ],
- }],
- [ 'target_arch=="ppc64" and OS not in "aix os400"', {
- 'cflags': [ '-m64', '-mminimal-toc' ],
- 'ldflags': [ '-m64' ],
+ ['_toolset=="host"', {
+ 'conditions': [
+ [ 'host_arch=="ia32"', {
+ 'cflags': [ '-m32' ],
+ 'ldflags': [ '-m32' ],
+ }],
+ [ 'host_arch=="x64"', {
+ 'cflags': [ '-m64' ],
+ 'ldflags': [ '-m64' ],
+ }],
+ [ 'host_arch=="ppc" and OS not in "aix os400"', {
+ 'cflags': [ '-m32' ],
+ 'ldflags': [ '-m32' ],
+ }],
+ [ 'host_arch=="ppc64" and OS not in "aix os400"', {
+ 'cflags': [ '-m64', '-mminimal-toc' ],
+ 'ldflags': [ '-m64' ],
+ }],
+ [ 'host_arch=="s390x" and OS=="linux"', {
+ 'cflags': [ '-m64', '-march=z196' ],
+ 'ldflags': [ '-m64', '-march=z196' ],
+ }],
+ ],
}],
- [ 'target_arch=="s390x" and OS=="linux"', {
- 'cflags': [ '-m64', '-march=z196' ],
- 'ldflags': [ '-m64', '-march=z196' ],
+ ['_toolset=="target"', {
+ 'conditions': [
+ [ 'target_arch=="ia32"', {
+ 'cflags': [ '-m32' ],
+ 'ldflags': [ '-m32' ],
+ }],
+ [ 'target_arch=="x64"', {
+ 'cflags': [ '-m64' ],
+ 'ldflags': [ '-m64' ],
+ }],
+ [ 'target_arch=="ppc" and OS not in "aix os400"', {
+ 'cflags': [ '-m32' ],
+ 'ldflags': [ '-m32' ],
+ }],
+ [ 'target_arch=="ppc64" and OS not in "aix os400"', {
+ 'cflags': [ '-m64', '-mminimal-toc' ],
+ 'ldflags': [ '-m64' ],
+ }],
+ [ 'target_arch=="s390x" and OS=="linux"', {
+ 'cflags': [ '-m64', '-march=z196' ],
+ 'ldflags': [ '-m64', '-march=z196' ],
+ }],
+ ],
}],
+ ],
+ 'conditions': [
[ 'OS=="solaris"', {
'cflags': [ '-pthreads' ],
'ldflags': [ '-pthreads' ],
|