1# Copyright (c) 2011 Google Inc. 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{ 6 'targets': [ 7 { 8 'target_name': 'print_rule_input_dirname', 9 'type': 'none', 10 'msvs_cygwin_shell': 0, 11 'sources': [ 12 'foo/bar/baz.printvars', 13 'a/b/c.printvars', 14 ], 15 'rules': [ 16 { 17 'rule_name': 'printvars', 18 'extension': 'printvars', 19 'inputs': [ 20 'printvars.py', 21 ], 22 'outputs': [ 23 '<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT).dirname', 24 ], 25 'action': [ 26 'python', '<@(_inputs)', '<(RULE_INPUT_DIRNAME)', '<@(_outputs)', 27 ], 28 }, 29 ], 30 }, 31 { 32 'target_name': 'print_rule_input_path', 33 'type': 'none', 34 'msvs_cygwin_shell': 0, 35 'sources': [ 36 'foo/bar/baz.printvars', 37 'a/b/c.printvars', 38 ], 39 'rules': [ 40 { 41 'rule_name': 'printvars', 42 'extension': 'printvars', 43 'inputs': [ 44 'printvars.py', 45 ], 46 'outputs': [ 47 '<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT).path', 48 ], 49 'action': [ 50 'python', '<@(_inputs)', '<(RULE_INPUT_PATH)', '<@(_outputs)', 51 ], 52 }, 53 ], 54 }, 55 { 56 'target_name': 'gencc_int_output', 57 'type': 'executable', 58 'msvs_cygwin_shell': 0, 59 'sources': [ 60 'nodir.gencc', 61 'foo/bar/baz.gencc', 62 'a/b/c.gencc', 63 'main.cc', 64 ], 65 'rules': [ 66 { 67 'rule_name': 'gencc', 68 'extension': 'gencc', 69 'inputs': [ 70 '<(DEPTH)/copy-file.py', 71 ], 72 'outputs': [ 73 '<(INTERMEDIATE_DIR)/<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT).cc', 74 ], 75 'action': [ 76 'python', '<@(_inputs)', '<(RULE_INPUT_PATH)', '<@(_outputs)', 77 ], 78 'process_outputs_as_sources': 1, 79 }, 80 ], 81 }, 82 ], 83 'conditions': [ 84 ['OS=="win"', { 85 'targets': [ 86 { 87 'target_name': 'gencc_int_output_external', 88 'type': 'executable', 89 'msvs_cygwin_shell': 0, 90 'msvs_cygwin_dirs': ['../../../../../../<(DEPTH)/third_party/cygwin'], 91 'sources': [ 92 'nodir.gencc', 93 'foo/bar/baz.gencc', 94 'a/b/c.gencc', 95 'main.cc', 96 ], 97 'dependencies': [ 98 'cygwin', 99 ], 100 'rules': [ 101 { 102 'rule_name': 'gencc', 103 'extension': 'gencc', 104 'msvs_external_rule': 1, 105 'inputs': [ 106 '<(DEPTH)/copy-file.py', 107 ], 108 'outputs': [ 109 '<(INTERMEDIATE_DIR)/<(RULE_INPUT_DIRNAME)/<(RULE_INPUT_ROOT).cc', 110 ], 111 'action': [ 112 'python', '<@(_inputs)', '<(RULE_INPUT_PATH)', '<@(_outputs)', 113 ], 114 'process_outputs_as_sources': 1, 115 }, 116 ], 117 }, 118 { 119 'target_name': 'cygwin', 120 'type': 'none', 121 'actions': [ 122 { 123 'action_name': 'setup_mount', 124 'msvs_cygwin_shell': 0, 125 'inputs': [ 126 '../../../../../../<(DEPTH)/third_party/cygwin/setup_mount.bat', 127 ], 128 # Visual Studio requires an output file, or else the 129 # custom build step won't run. 130 'outputs': [ 131 '<(INTERMEDIATE_DIR)/_always_run_setup_mount.marker', 132 ], 133 'action': ['<@(_inputs)'], 134 }, 135 ], 136 }, 137 ], 138 }], 139 ], 140} 141