Index: gyp/common_conditions.gypi |
diff --git a/gyp/common_conditions.gypi b/gyp/common_conditions.gypi |
index d03dfb00a6cea198a7a3e59d5f8814a29208fb01..3c6a1b50d17083d3f2915f02e2b16ccb164f5e99 100644 |
--- a/gyp/common_conditions.gypi |
+++ b/gyp/common_conditions.gypi |
@@ -8,6 +8,24 @@ |
'SK_FORCE_DISTANCEFIELD_FONTS=<(skia_force_distancefield_fonts)', |
], |
'conditions' : [ |
+ ['skia_pic', { |
+ 'cflags': [ |
+ '-fPIC', |
+ ], |
+ 'conditions' : [ |
+ # FIXME: The reason we don't do this on Android is due to the way |
+ # we build the executables/skia_launcher on Android. See |
+ # https://codereview.chromium.org/406613003/diff/1/gyp/common_conditions.gypi#newcode455 |
+ ['skia_os != "android"', { |
+ 'target_conditions': [ |
+ [ '_type == "executable"', { |
+ 'cflags': [ '-fPIE' ], |
+ 'ldflags': [ '-pie' ], |
+ }], |
+ ], |
+ }], |
+ ], |
+ }], |
[ 'skia_arch_type == "arm64"', { |
'cflags': [ |
'-ffp-contract=off', |
@@ -403,9 +421,6 @@ |
}, |
'conditions' : [ |
[ 'skia_shared_lib', { |
- 'cflags': [ |
- '-fPIC', |
- ], |
'defines': [ |
'SKIA_DLL', |
'SKIA_IMPLEMENTATION=1', |
@@ -449,23 +464,9 @@ |
'conditions' : [ |
[ 'skia_sanitizer == "thread"', { |
'defines': [ 'SK_DYNAMIC_ANNOTATIONS_ENABLED=1' ], |
- 'cflags': [ '-fPIC' ], |
- 'target_conditions': [ |
- [ '_type == "executable"', { |
- 'cflags': [ '-fPIE' ], |
- 'ldflags': [ '-pie' ], |
- }], |
- ], |
}], |
[ 'skia_sanitizer == "undefined"', { |
- 'cflags': [ '-fPIC' ], |
'cflags_cc!': ['-fno-rtti'], |
- 'target_conditions': [ |
- [ '_type == "executable"', { |
- 'cflags': [ '-fPIE' ], |
- 'ldflags': [ '-pie' ], |
- }], |
- ], |
}], |
], |
}], |
@@ -664,9 +665,6 @@ |
], |
}], |
[ 'skia_shared_lib', { |
- 'cflags': [ |
- '-fPIC', |
- ], |
'defines': [ |
'SKIA_DLL', |
'SKIA_IMPLEMENTATION=1', |