Index: tools/android/run_pie/run_pie.gyp |
diff --git a/tools/android/run_pie/run_pie.gyp b/tools/android/run_pie/run_pie.gyp |
new file mode 100644 |
index 0000000000000000000000000000000000000000..b713dc4f855d236bb79639f2b6fdd4dfa6365623 |
--- /dev/null |
+++ b/tools/android/run_pie/run_pie.gyp |
@@ -0,0 +1,49 @@ |
+# Copyright 2014 The Chromium Authors. All rights reserved. |
+# Use of this source code is governed by a BSD-style license that can be |
+# found in the LICENSE file. |
+ |
+{ |
+ 'targets': [ |
+ { |
+ 'target_name': 'run_pie-unstripped', |
+ 'type': 'executable', |
+ 'sources': [ |
+ 'run_pie.c', |
+ ], |
+ # See crbug.com/373219. This is the only Android executable which must be |
+ # non PIE. |
+ 'cflags!': [ |
+ '-fPIE', |
+ ], |
+ 'ldflags!': [ |
+ '-pie', |
+ ], |
+ # Don't inherit unneeded dependencies on stlport.so, so the binary remains |
+ # self-contained also in component=shared_library builds. |
+ 'libraries!': [ |
+ '-l<(android_stlport_library)', |
+ ], |
+ }, |
+ { |
+ 'target_name': 'run_pie', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'run_pie-unstripped', |
+ ], |
+ 'actions': [ |
+ { |
+ 'action_name': 'strip_run_pie', |
+ 'inputs': ['<(PRODUCT_DIR)/run_pie-unstripped'], |
+ 'outputs': ['<(PRODUCT_DIR)/run_pie'], |
+ 'action': [ |
+ '<(android_strip)', |
+ '--strip-unneeded', |
+ '<@(_inputs)', |
+ '-o', |
+ '<@(_outputs)', |
+ ], |
+ }, |
+ ], |
+ }, |
+ ], |
+} |