blob: 89f4c6ba9cbd3bb4370b1ced88b4c9774aebc5b4 [file] [log] [blame]
[email protected]65208a02012-04-17 04:39:521# Copyright (c) 2012 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5# This file is meant to be included into a target to provide a rule
6# to build Java in a consistent manner.
7#
8# To use this, create a gyp target with the following form:
9# {
10# 'target_name': 'my-package_java',
11# 'type': 'none',
12# 'variables': {
13# 'package_name': 'my-package',
14# 'java_in_dir': 'path/to/package/root',
15# },
16# 'includes': ['path/to/this/gypi/file'],
17# }
18#
19# Note that this assumes that there's ant buildfile with package_name in
20# java_in_dir. So if if you have package_name="base" and
21# java_in_dir="base/android/java" you should have a directory structure like:
22#
23# base/android/java/base.xml
24# base/android/java/org/chromium/base/Foo.java
25# base/android/java/org/chromium/base/Bar.java
26#
27# Finally, the generated jar-file will be:
[email protected]e0825562012-05-10 01:50:4728# <(PRODUCT_DIR)/lib.java/chromium_base.jar
[email protected]65208a02012-04-17 04:39:5229#
30# TODO(yfriedman): The "finally" statement isn't entirely true yet, as we don't
31# auto-generate the ant file yet.
32
33{
34 'actions': [
35 {
36 'action_name': 'ant_<(package_name)',
37 'message': 'Building <(package_name) java sources.',
38 'inputs': [
39 '<(java_in_dir)/<(package_name).xml',
40 '<!@(find <(java_in_dir) -name "*.java")'
41 ],
42 'outputs': [
[email protected]e0825562012-05-10 01:50:4743 '<(PRODUCT_DIR)/lib.java/chromium_<(package_name).jar',
[email protected]65208a02012-04-17 04:39:5244 ],
45 'action': [
46 'ant',
[email protected]ef7ed7a2012-05-29 23:19:1347 '-DPRODUCT_DIR=<(ant_build_out)',
[email protected]a08029b42012-04-25 03:18:4648 '-DPACKAGE_NAME=<(package_name)',
[email protected]75b558c2012-08-01 11:31:4749 '-DANDROID_SDK=<(android_sdk)',
[email protected]65208a02012-04-17 04:39:5250 '-buildfile',
51 '<(java_in_dir)/<(package_name).xml',
52 ]
53 },
54 ],
55}