media/webrtc/trunk/build/jar_file_jni_generator.gypi

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/media/webrtc/trunk/build/jar_file_jni_generator.gypi	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,53 @@
     1.4 +# Copyright (c) 2012 The Chromium Authors. All rights reserved.
     1.5 +# Use of this source code is governed by a BSD-style license that can be
     1.6 +# found in the LICENSE file.
     1.7 +
     1.8 +# This file is meant to be included into a target to provide a rule
     1.9 +# to generate jni bindings for system Java-files in a consistent manner.
    1.10 +#
    1.11 +# To use this, create a gyp target with the following form:
    1.12 +# {
    1.13 +#   'target_name': 'android_jar_jni_headers',
    1.14 +#   'type': 'none',
    1.15 +#   'variables': {
    1.16 +#     'jni_gen_dir': 'chrome',
    1.17 +#     'input_java_class': 'java/io/InputStream.class',
    1.18 +#     'input_jar_file': '<(android_sdk)/android.jar',
    1.19 +#   },
    1.20 +#   'includes': [ '../build/jar_file_jni_generator.gypi' ],
    1.21 +# },
    1.22 +
    1.23 +{
    1.24 +  'variables': {
    1.25 +    'jni_generator': '<(DEPTH)/base/android/jni_generator/jni_generator.py',
    1.26 +  },
    1.27 +  'actions': [
    1.28 +    {
    1.29 +      'action_name': 'generate_jni_headers_from_jar_file',
    1.30 +      'inputs': [
    1.31 +        '<(jni_generator)',
    1.32 +        '<(input_jar_file)',
    1.33 +      ],
    1.34 +      'variables': {
    1.35 +        'java_class_name': '<!(basename <(input_java_class)|sed "s/\.class//")'
    1.36 +      },
    1.37 +      'outputs': [
    1.38 +        '<(SHARED_INTERMEDIATE_DIR)/<(jni_gen_dir)/jni/<(java_class_name)_jni.h',
    1.39 +      ],
    1.40 +      'action': [
    1.41 +        '<(jni_generator)',
    1.42 +        '-j',
    1.43 +        '<(input_jar_file)',
    1.44 +        '--input_file',
    1.45 +        '<(input_java_class)',
    1.46 +        '--output_dir',
    1.47 +        '<(SHARED_INTERMEDIATE_DIR)/<(jni_gen_dir)/jni',
    1.48 +      ],
    1.49 +      'message': 'Generating JNI bindings from  <(input_jar_file)/<(input_java_class)',
    1.50 +      'process_outputs_as_sources': 1,
    1.51 +    },
    1.52 +  ],
    1.53 +  # This target exports a hard dependency because it generates header
    1.54 +  # files.
    1.55 +  'hard_dependency': 1,
    1.56 +}

mercurial