|  | # Copyright 2013 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. | 
|  |  | 
|  | # This file is meant to be included into a target to provide a rule | 
|  | # to strip and place dependent shared libraries required by a native binary in a | 
|  | # single folder that can later be pushed to the device. | 
|  | # | 
|  | # NOTE: consider packaging your binary as an apk instead of running a native | 
|  | # library. | 
|  | # | 
|  | # To use this, create a gyp target with the following form: | 
|  | #  { | 
|  | #    'target_name': 'target_that_depends_on_my_binary', | 
|  | #    'type': 'none', | 
|  | #    'dependencies': [ | 
|  | #      'my_binary', | 
|  | #    ], | 
|  | #    'variables': { | 
|  | #      'native_binary': '<(PRODUCT_DIR)/my_binary', | 
|  | #      'output_dir': 'location to place binary and dependent libraries' | 
|  | #    }, | 
|  | #    'includes': [ '../../build/android/native_app_dependencies.gypi' ], | 
|  | #  }, | 
|  | # | 
|  |  | 
|  | { | 
|  | 'variables': { | 
|  | 'include_main_binary%': 1, | 
|  | }, | 
|  | 'conditions': [ | 
|  | ['component == "shared_library"', { | 
|  | 'dependencies': [ | 
|  | '<(DEPTH)/build/android/setup.gyp:copy_system_libraries', | 
|  | ], | 
|  | 'variables': { | 
|  | 'intermediate_dir': '<(PRODUCT_DIR)/<(_target_name)', | 
|  | 'ordered_libraries_file': '<(intermediate_dir)/native_libraries.json', | 
|  | }, | 
|  | 'actions': [ | 
|  | { | 
|  | 'variables': { | 
|  | 'input_libraries': ['<(native_binary)'], | 
|  | }, | 
|  | 'includes': ['../../build/android/write_ordered_libraries.gypi'], | 
|  | }, | 
|  | { | 
|  | 'action_name': 'stripping native libraries', | 
|  | 'variables': { | 
|  | 'stripped_libraries_dir%': '<(output_dir)', | 
|  | 'input_paths': ['<(native_binary)'], | 
|  | 'stamp': '<(intermediate_dir)/strip.stamp', | 
|  | }, | 
|  | 'includes': ['../../build/android/strip_native_libraries.gypi'], | 
|  | }, | 
|  | ], | 
|  | }], | 
|  | ['include_main_binary==1', { | 
|  | 'copies': [ | 
|  | { | 
|  | 'destination': '<(output_dir)', | 
|  | 'files': [ '<(native_binary)' ], | 
|  | } | 
|  | ], | 
|  | }], | 
|  | ], | 
|  | } |