1# Copyright 2010-2018, Google Inc. 2# All rights reserved. 3# 4# Redistribution and use in source and binary forms, with or without 5# modification, are permitted provided that the following conditions are 6# met: 7# 8# * Redistributions of source code must retain the above copyright 9# notice, this list of conditions and the following disclaimer. 10# * Redistributions in binary form must reproduce the above 11# copyright notice, this list of conditions and the following disclaimer 12# in the documentation and/or other materials provided with the 13# distribution. 14# * Neither the name of Google Inc. nor the names of its 15# contributors may be used to endorse or promote products derived from 16# this software without specific prior written permission. 17# 18# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 30{ 31 'variables': { 32 'relative_dir': 'chrome/nacl', 33 'gen_out_dir': '<(SHARED_INTERMEDIATE_DIR)/<(relative_dir)', 34 'dummy_input_file': 'nacl_extension.gyp', 35 # You should get browser_tester file from following URL to run end-to-end 36 # test. 37 # http://src.chromium.org/viewvc/chrome/trunk/src/ppapi/native_client/tools/ 38 'browser_tester_dir': '../../third_party/browser_tester', 39 'nacl_mozc_files': [ 40 '<(gen_out_dir)/nacl_mozc/_locales/en/messages.json', 41 '<(gen_out_dir)/nacl_mozc/_locales/ja/messages.json', 42 '<(gen_out_dir)/nacl_mozc/credits_en.html', 43 '<(gen_out_dir)/nacl_mozc/dictionary_tool.js', 44 '<(gen_out_dir)/nacl_mozc/key_translator.js', 45 '<(gen_out_dir)/nacl_mozc/manifest.json', 46 '<(gen_out_dir)/nacl_mozc/nacl_mozc.html', 47 '<(gen_out_dir)/nacl_mozc/nacl_mozc.js', 48 '<(gen_out_dir)/nacl_mozc/nacl_mozc_init.js', 49 '<(gen_out_dir)/nacl_mozc/nacl_mozc_version.js', 50 '<(gen_out_dir)/nacl_mozc/nacl_session_handler.nmf', 51 '<(gen_out_dir)/nacl_mozc/nacl_session_handler_x86_32.nexe', 52 '<(gen_out_dir)/nacl_mozc/nacl_session_handler_x86_64.nexe', 53 '<(gen_out_dir)/nacl_mozc/nacl_session_handler_arm.nexe', 54 '<(gen_out_dir)/nacl_mozc/product_icon_32bpp-128.png', 55 '<(gen_out_dir)/nacl_mozc/option_page.js', 56 '<(gen_out_dir)/nacl_mozc/options.css', 57 '<(gen_out_dir)/nacl_mozc/options.html', 58 '<(gen_out_dir)/nacl_mozc/options.js', 59 '<(gen_out_dir)/nacl_mozc/inputview/config/jp.js', 60 '<(gen_out_dir)/nacl_mozc/inputview/config/us.js', 61 '<(gen_out_dir)/nacl_mozc/inputview/images/backspace.png', 62 '<(gen_out_dir)/nacl_mozc/inputview/images/compact.png', 63 '<(gen_out_dir)/nacl_mozc/inputview/images/down.png', 64 '<(gen_out_dir)/nacl_mozc/inputview/images/enter.png', 65 '<(gen_out_dir)/nacl_mozc/inputview/images/error.png', 66 '<(gen_out_dir)/nacl_mozc/inputview/images/globe.png', 67 '<(gen_out_dir)/nacl_mozc/inputview/images/hide_candidates.png', 68 '<(gen_out_dir)/nacl_mozc/inputview/images/hidekeyboard.png', 69 '<(gen_out_dir)/nacl_mozc/inputview/images/hide.png', 70 '<(gen_out_dir)/nacl_mozc/inputview/images/keydots.png', 71 '<(gen_out_dir)/nacl_mozc/inputview/images/left.png', 72 '<(gen_out_dir)/nacl_mozc/inputview/images/modifier-hold.png', 73 '<(gen_out_dir)/nacl_mozc/inputview/images/modifier-off.png', 74 '<(gen_out_dir)/nacl_mozc/inputview/images/modifier-on.png', 75 '<(gen_out_dir)/nacl_mozc/inputview/images/regular_size.png', 76 '<(gen_out_dir)/nacl_mozc/inputview/images/right.png', 77 '<(gen_out_dir)/nacl_mozc/inputview/images/setting.png', 78 '<(gen_out_dir)/nacl_mozc/inputview/images/shift.png', 79 '<(gen_out_dir)/nacl_mozc/inputview/images/show_candidates.png', 80 '<(gen_out_dir)/nacl_mozc/inputview/images/tab.png', 81 '<(gen_out_dir)/nacl_mozc/inputview/images/up.png', 82 '<(gen_out_dir)/nacl_mozc/inputview.html', 83 '<(gen_out_dir)/nacl_mozc/inputview.js', 84 '<(gen_out_dir)/nacl_mozc/inputview_css.css', 85 '<(gen_out_dir)/nacl_mozc/inputview/inputview_layouts/101kbd.js', 86 '<(gen_out_dir)/nacl_mozc/inputview/inputview_layouts/compactkbd.js', 87 ], 88 'partial_supported_messages': [ 89 '<(gen_out_dir)/nacl_mozc/_locales/am/messages.json', 90 '<(gen_out_dir)/nacl_mozc/_locales/ar/messages.json', 91 '<(gen_out_dir)/nacl_mozc/_locales/bg/messages.json', 92 '<(gen_out_dir)/nacl_mozc/_locales/bn/messages.json', 93 '<(gen_out_dir)/nacl_mozc/_locales/ca/messages.json', 94 '<(gen_out_dir)/nacl_mozc/_locales/cs/messages.json', 95 '<(gen_out_dir)/nacl_mozc/_locales/da/messages.json', 96 '<(gen_out_dir)/nacl_mozc/_locales/de/messages.json', 97 '<(gen_out_dir)/nacl_mozc/_locales/el/messages.json', 98 '<(gen_out_dir)/nacl_mozc/_locales/en_GB/messages.json', 99 '<(gen_out_dir)/nacl_mozc/_locales/es_419/messages.json', 100 '<(gen_out_dir)/nacl_mozc/_locales/es/messages.json', 101 '<(gen_out_dir)/nacl_mozc/_locales/et/messages.json', 102 '<(gen_out_dir)/nacl_mozc/_locales/fa/messages.json', 103 '<(gen_out_dir)/nacl_mozc/_locales/fil/messages.json', 104 '<(gen_out_dir)/nacl_mozc/_locales/fi/messages.json', 105 '<(gen_out_dir)/nacl_mozc/_locales/fr/messages.json', 106 '<(gen_out_dir)/nacl_mozc/_locales/gu/messages.json', 107 '<(gen_out_dir)/nacl_mozc/_locales/hi/messages.json', 108 '<(gen_out_dir)/nacl_mozc/_locales/hr/messages.json', 109 '<(gen_out_dir)/nacl_mozc/_locales/hu/messages.json', 110 '<(gen_out_dir)/nacl_mozc/_locales/id/messages.json', 111 '<(gen_out_dir)/nacl_mozc/_locales/it/messages.json', 112 '<(gen_out_dir)/nacl_mozc/_locales/iw/messages.json', 113 '<(gen_out_dir)/nacl_mozc/_locales/kn/messages.json', 114 '<(gen_out_dir)/nacl_mozc/_locales/ko/messages.json', 115 '<(gen_out_dir)/nacl_mozc/_locales/lt/messages.json', 116 '<(gen_out_dir)/nacl_mozc/_locales/lv/messages.json', 117 '<(gen_out_dir)/nacl_mozc/_locales/ml/messages.json', 118 '<(gen_out_dir)/nacl_mozc/_locales/mr/messages.json', 119 '<(gen_out_dir)/nacl_mozc/_locales/ms/messages.json', 120 '<(gen_out_dir)/nacl_mozc/_locales/nl/messages.json', 121 '<(gen_out_dir)/nacl_mozc/_locales/no/messages.json', 122 '<(gen_out_dir)/nacl_mozc/_locales/pl/messages.json', 123 '<(gen_out_dir)/nacl_mozc/_locales/pt_BR/messages.json', 124 '<(gen_out_dir)/nacl_mozc/_locales/pt_PT/messages.json', 125 '<(gen_out_dir)/nacl_mozc/_locales/ro/messages.json', 126 '<(gen_out_dir)/nacl_mozc/_locales/ru/messages.json', 127 '<(gen_out_dir)/nacl_mozc/_locales/sk/messages.json', 128 '<(gen_out_dir)/nacl_mozc/_locales/sl/messages.json', 129 '<(gen_out_dir)/nacl_mozc/_locales/sr/messages.json', 130 '<(gen_out_dir)/nacl_mozc/_locales/sv/messages.json', 131 '<(gen_out_dir)/nacl_mozc/_locales/sw/messages.json', 132 '<(gen_out_dir)/nacl_mozc/_locales/ta/messages.json', 133 '<(gen_out_dir)/nacl_mozc/_locales/te/messages.json', 134 '<(gen_out_dir)/nacl_mozc/_locales/th/messages.json', 135 '<(gen_out_dir)/nacl_mozc/_locales/tr/messages.json', 136 '<(gen_out_dir)/nacl_mozc/_locales/uk/messages.json', 137 '<(gen_out_dir)/nacl_mozc/_locales/vi/messages.json', 138 '<(gen_out_dir)/nacl_mozc/_locales/zh_CN/messages.json', 139 '<(gen_out_dir)/nacl_mozc/_locales/zh_TW/messages.json', 140 ], 141 'conditions': [ 142 ['branding=="GoogleJapaneseInput"', { 143 'nacl_mozc_files': [ 144 '<(gen_out_dir)/nacl_mozc/zipped_data_chromeos', 145 '<@(partial_supported_messages)', 146 ], 147 }], 148 ['branding=="Mozc"', { 149 'nacl_mozc_files': [ 150 '<(gen_out_dir)/nacl_mozc/mozc.data', 151 ], 152 }], 153 ], 154 }, 155 'targets': [ 156 { 157 'target_name': 'translate_nacl_session_handler', 158 'sources': [ 159 '<(PRODUCT_DIR)/nacl_session_handler', 160 ], 161 'includes': ['pnacl_translate.gypi'], 162 }, 163 { 164 'target_name': 'nacl_session_handler', 165 'type': 'executable', 166 'sources': [ 167 'nacl_session_handler.cc', 168 ], 169 'dependencies': [ 170 'dictionary_downloader', 171 '../../base/base.gyp:base', 172 '../../composer/composer.gyp:key_parser', 173 '../../config/config.gyp:config_handler', 174 '../../data_manager/data_manager_base.gyp:data_manager', 175 '../../dictionary/dictionary_base.gyp:user_dictionary', 176 '../../dictionary/dictionary_base.gyp:user_pos', 177 '../../engine/engine.gyp:engine', 178 '../../net/net.gyp:http_client', 179 '../../net/net.gyp:json_util', 180 '../../protocol/protocol.gyp:commands_proto', 181 '../../protocol/protocol.gyp:config_proto', 182 '../../session/session.gyp:session', 183 '../../session/session.gyp:session_handler', 184 '../../session/session.gyp:session_usage_observer', 185 '../../usage_stats/usage_stats.gyp:usage_stats_uploader', 186 '../../usage_stats/usage_stats_base.gyp:usage_stats', 187 ], 188 }, 189 { 190 'target_name': 'dictionary_downloader', 191 'type': 'static_library', 192 'sources': [ 193 'dictionary_downloader.cc', 194 ], 195 'dependencies': [ 196 'url_loader_util', 197 '../../base/base.gyp:base', 198 '../../net/net.gyp:http_client', 199 ], 200 }, 201 { 202 'target_name': 'url_loader_util', 203 'type': 'static_library', 204 'sources': [ 205 'url_loader_util.cc', 206 ], 207 'dependencies': [ 208 '../../base/base.gyp:base', 209 ], 210 }, 211 { 212 'target_name': 'gather_nacl_net_test_files', 213 'type': 'none', 214 'copies': [{ 215 'destination': '<(gen_out_dir)/nacl_net_test', 216 'files': [ 217 '<(PRODUCT_DIR)/nacl_net_test_module_x86_64.nexe', 218 'browser_test/nacl_net_test/nacl_net_test_module.html', 219 'browser_test/nacl_net_test/nacl_net_test_module.nmf', 220 'browser_test/nacl_net_test/manifest.json', 221 ], 222 }], 223 }, 224 { 225 'target_name': 'run_nacl_net_test', 226 'type': 'none', 227 'actions': [ 228 { 229 'action_name': 'run_nacl_net_test', 230 'inputs': [ 231 'nacl_net_test_server.py', 232 '<(gen_out_dir)/nacl_net_test/nacl_net_test_module_x86_64.nexe', 233 '<(gen_out_dir)/nacl_net_test/nacl_net_test_module.html', 234 '<(gen_out_dir)/nacl_net_test/nacl_net_test_module.nmf', 235 '<(gen_out_dir)/nacl_net_test/manifest.json', 236 ], 237 'outputs': ['dummy_run_nacl_net_test'], 238 'action': [ 239 'xvfb-run', 240 '--auto-servernum', 241 '/usr/local/bin/python3.8', 242 'nacl_net_test_server.py', 243 '--browser_path=/usr/bin/google-chrome', 244 '--load_extension=<(gen_out_dir)/nacl_net_test', 245 '--timeout=100', 246 ], 247 }, 248 ], 249 'dependencies': [ 250 'translate_nacl_net_test_module', 251 ], 252 }, 253 { 254 'target_name': 'translate_nacl_net_test_module', 255 'sources': [ 256 '<(PRODUCT_DIR)/nacl_net_test_module', 257 ], 258 'includes': ['pnacl_translate.gypi'], 259 }, 260 { 261 'target_name': 'nacl_net_test_module', 262 'type': 'executable', 263 'sources': [ 264 '../../base/file_util_test.cc', 265 'nacl_net_test_module.cc', 266 ], 267 'dependencies': [ 268 'dictionary_downloader', 269 '../../base/base.gyp:base', 270 '../../net/net.gyp:http_client', 271 '../../net/net.gyp:json_util', 272 '../../testing/testing.gyp:nacl_mock_module', 273 ], 274 }, 275 { 276 'target_name': 'nacl_mozc_crx', 277 'type': 'none', 278 'copies': [ 279 { 280 'destination': '<(PRODUCT_DIR)', 281 'files': [ 282 '<(gen_out_dir)/nacl_mozc.crx', 283 '<(gen_out_dir)/nacl_mozc.pem', 284 ], 285 }, 286 ], 287 }, 288 { 289 'target_name': 'pack_nacl_mozc_crx', 290 'type': 'none', 291 'actions': [ 292 { 293 'action_name': 'pack_nacl_mozc_crx', 294 'inputs': [ 295 '<@(nacl_mozc_files)', 296 ], 297 'outputs': [ 298 '<(gen_out_dir)/nacl_mozc.crx', 299 '<(gen_out_dir)/nacl_mozc.pem', 300 ], 301 'action': [ 302 'xvfb-run', 303 '--auto-servernum', 304 'google-chrome', 305 '--pack-extension=<(gen_out_dir)/nacl_mozc', 306 # With --pack-extension-key=nacl_mozc.pem option, we should use the 307 # same private key to sign the extension. Otherwise, a new packed 308 # extension looks a different extension. 309 # Of course, the private key must be placed in a secure manner. 310 '--no-message-box', 311 ], 312 }, 313 ], 314 }, 315 { 316 'target_name': 'nacl_mozc_versioning', 317 'type': 'none', 318 'actions': [ 319 { 320 'action_name': 'nacl_mozc_versioning', 321 'inputs': [ 322 '../../mozc_version.txt', 323 '../../build_tools/versioning_files.py', 324 '<(PRODUCT_DIR)/nacl_mozc.zip', 325 '<(PRODUCT_DIR)/nacl-mozc.tgz', 326 ], 327 'outputs': [ 328 '<(PRODUCT_DIR)/nacl_mozc_versioning_dummy', 329 ], 330 'action': [ 331 '/usr/local/bin/python3.8', 332 '../../build_tools/versioning_files.py', 333 '--version_file', '../../mozc_version.txt', 334 '--configuration', '<(CONFIGURATION_NAME)', 335 '<(PRODUCT_DIR)/nacl_mozc.zip', 336 '<(PRODUCT_DIR)/nacl-mozc.tgz', 337 ], 338 'dependencies': [ 339 'nacl_mozc', 340 ], 341 }, 342 ], 343 }, 344 { 345 'target_name': 'nacl_mozc', 346 'type': 'none', 347 'copies': [ 348 { 349 'destination': '<(PRODUCT_DIR)', 350 'files': [ 351 '<(gen_out_dir)/nacl_mozc.zip', 352 '<(gen_out_dir)/nacl-mozc.tgz', 353 ], 354 }, 355 ], 356 }, 357 { 358 'target_name': 'archive_nacl_mozc_files', 359 'type': 'none', 360 'actions': [ 361 { 362 'action_name': 'archive_nacl_mozc_files', 363 'inputs': [ 364 '../../mozc_version.txt', 365 'archive_files.py', 366 '<@(nacl_mozc_files)', 367 ], 368 'outputs': [ 369 '<(gen_out_dir)/nacl_mozc.zip', 370 '<(gen_out_dir)/nacl-mozc.tgz', 371 ], 372 'action': [ 373 '/usr/local/bin/python3.8', 374 'archive_files.py', 375 '--zip_output=<(gen_out_dir)/nacl_mozc.zip', 376 '--tgz_output=<(gen_out_dir)/nacl-mozc.tgz', 377 '--version_file', '../../mozc_version.txt', 378 '--top_dir_base', 'nacl-mozc', 379 '--base_path=<(gen_out_dir)/nacl_mozc/', 380 '<@(nacl_mozc_files)', 381 ], 382 }, 383 ], 384 }, 385 { 386 'target_name': 'gather_nacl_mozc_files', 387 'type': 'none', 388 'copies': [ 389 { 390 'destination': '<(gen_out_dir)/nacl_mozc', 391 'files': [ 392 '../../data/images/product_icon_32bpp-128.png', 393 '../../data/installer/credits_en.html', 394 '<(gen_out_dir)/manifest.json', 395 '<(gen_out_dir)/nacl_mozc_version.js', 396 '<(PRODUCT_DIR)/nacl_session_handler_x86_32.nexe', 397 '<(PRODUCT_DIR)/nacl_session_handler_x86_64.nexe', 398 '<(PRODUCT_DIR)/nacl_session_handler_arm.nexe', 399 'dictionary_tool.js', 400 'key_translator.js', 401 'nacl_mozc.html', 402 'nacl_mozc.js', 403 'nacl_mozc_init.js', 404 'nacl_session_handler.nmf', 405 'option_page.js', 406 'options.css', 407 'options.html', 408 'options.js', 409 'inputview/inputview.html', 410 'inputview/inputview.js', 411 'inputview/inputview_css.css', 412 ], 413 'conditions': [ 414 ['branding=="GoogleJapaneseInput"', { 415 'files': [ 416 '<(SHARED_INTERMEDIATE_DIR)/data_manager/chromeos/zipped_data_chromeos', 417 ], 418 }], 419 ['branding=="Mozc"', { 420 'files': [ 421 '<(SHARED_INTERMEDIATE_DIR)/data_manager/oss/mozc.data', 422 ], 423 }], 424 ], 425 }, 426 { 427 'destination': '<(gen_out_dir)/nacl_mozc/inputview/config', 428 'files': [ 429 'inputview/config/jp.js', 430 'inputview/config/us.js', 431 ], 432 }, 433 { 434 'destination': '<(gen_out_dir)/nacl_mozc/inputview/images', 435 'files': [ 436 'inputview/images/backspace.png', 437 'inputview/images/compact.png', 438 'inputview/images/down.png', 439 'inputview/images/enter.png', 440 'inputview/images/error.png', 441 'inputview/images/globe.png', 442 'inputview/images/hide_candidates.png', 443 'inputview/images/hidekeyboard.png', 444 'inputview/images/hide.png', 445 'inputview/images/keydots.png', 446 'inputview/images/left.png', 447 'inputview/images/modifier-hold.png', 448 'inputview/images/modifier-off.png', 449 'inputview/images/modifier-on.png', 450 'inputview/images/regular_size.png', 451 'inputview/images/right.png', 452 'inputview/images/setting.png', 453 'inputview/images/shift.png', 454 'inputview/images/show_candidates.png', 455 'inputview/images/tab.png', 456 'inputview/images/up.png', 457 ], 458 }, 459 { 460 'destination': '<(gen_out_dir)/nacl_mozc/inputview/inputview_layouts', 461 'files': [ 462 'inputview/inputview_layouts/101kbd.js', 463 'inputview/inputview_layouts/compactkbd.js', 464 ], 465 }, 466 ], 467 }, 468 { 469 'target_name': 'gen_manifest_and_messages', 470 'type': 'none', 471 'toolsets': ['host'], 472 'actions': [ 473 { 474 'action_name': 'gen_manifest', 475 'inputs': [ 476 '../../mozc_version.txt', 477 '../../build_tools/replace_version.py', 478 'manifest/manifest_template.json', 479 ], 480 'outputs': [ 481 '<(gen_out_dir)/manifest.json', 482 ], 483 'action': [ 484 '/usr/local/bin/python3.8', '../../build_tools/replace_version.py', 485 '--version_file', '../../mozc_version.txt', 486 '--input', 'manifest/manifest_template.json', 487 '--output', '<(gen_out_dir)/manifest.json', 488 '--branding', '<(branding)', 489 ], 490 }, 491 { 492 'action_name': 'gen_nacl_mozc_version', 493 'inputs': [ 494 '../../mozc_version.txt', 495 '../../build_tools/replace_version.py', 496 'nacl_mozc_version_template.js', 497 ], 498 'outputs': [ 499 '<(gen_out_dir)/nacl_mozc_version.js', 500 ], 501 'action': [ 502 '/usr/local/bin/python3.8', '../../build_tools/replace_version.py', 503 '--version_file', '../../mozc_version.txt', 504 '--input', 'nacl_mozc_version_template.js', 505 '--output', '<(gen_out_dir)/nacl_mozc_version.js', 506 '--branding', '<(branding)', 507 ], 508 }, 509 { 510 'action_name': 'gen_en_messages', 511 'inputs': [ 512 '../../mozc_version.txt', 513 '../../build_tools/replace_version.py', 514 '_locales/en/messages_template.json', 515 ], 516 'outputs': [ 517 '<(gen_out_dir)/nacl_mozc/_locales/en/messages.json', 518 ], 519 'action': [ 520 '/usr/local/bin/python3.8', '../../build_tools/replace_version.py', 521 '--version_file', '../../mozc_version.txt', 522 '--input', '_locales/en/messages_template.json', 523 '--output', 524 '<(gen_out_dir)/nacl_mozc/_locales/en/messages.json', 525 '--branding', '<(branding)', 526 ], 527 }, 528 { 529 'action_name': 'gen_ja_messages', 530 'inputs': [ 531 '../../mozc_version.txt', 532 '../../build_tools/replace_version.py', 533 '_locales/ja/messages_template.json', 534 ], 535 'outputs': [ 536 '<(gen_out_dir)/nacl_mozc/_locales/ja/messages.json', 537 ], 538 'action': [ 539 '/usr/local/bin/python3.8', '../../build_tools/replace_version.py', 540 '--version_file', '../../mozc_version.txt', 541 '--input', '_locales/ja/messages_template.json', 542 '--output', 543 '<(gen_out_dir)/nacl_mozc/_locales/ja/messages.json', 544 '--branding', '<(branding)', 545 ], 546 }, 547 ], 548 'conditions': [ 549 ['branding=="GoogleJapaneseInput"', { 550 'actions': [ 551 { 552 'action_name': 'gen_partial_supported_messages', 553 'inputs': [ 554 '../../mozc_version.txt', 555 'gen_partial_supported_messages.py', 556 ], 557 'outputs': [ 558 '<@(partial_supported_messages)', 559 ], 560 'action': [ 561 '/usr/local/bin/python3.8', 'gen_partial_supported_messages.py', 562 '--version_file', '../../mozc_version.txt', 563 '--outdir', '<(gen_out_dir)/nacl_mozc/_locales/', 564 ], 565 }, 566 ], 567 }], 568 ], 569 }, 570 { 571 'target_name': 'run_nacl_test', 572 'type': 'none', 573 'hard_dependency': 1, 574 'dependencies': [ 575 'build_nacl_test', 576 ], 577 'export_dependent_settings': [ 578 'build_nacl_test', 579 ], 580 'actions': [ 581 { 582 'action_name': 'run_nacl_test', 583 'inputs': ['<(dummy_input_file)'], 584 'outputs': ['dummy_run_nacl_test'], 585 'action': [ 586 '/usr/local/bin/python3.8', 'run_nacl_test.py', 587 '--nacl_sdk_root=<(nacl_sdk_root)', 588 '--test_bin_dir=<(PRODUCT_DIR)', 589 ], 590 }, 591 ], 592 }, 593 { 594 'target_name': 'build_nacl_test', 595 'sources': [ 596 '<(PRODUCT_DIR)/base_test', 597 '<(PRODUCT_DIR)/rewriter_test', 598 '<(PRODUCT_DIR)/session_handler_test', 599 ], 600 'includes': ['pnacl_translate.gypi'], 601 }, 602 # This test doesn't works well on general environment since it depends on 603 # external source code. 604 { 605 'target_name': 'run_nacl_end_to_end_test_target', 606 'type': 'none', 607 'actions': [ 608 { 609 'action_name': 'run_nacl_end_to_end_test', 610 'inputs': [ 611 '<(gen_out_dir)/nacl_mozc/key_translator.js', 612 '<(gen_out_dir)/nacl_mozc/manifest.json', 613 '<(gen_out_dir)/nacl_mozc/nacl_mozc.html', 614 '<(gen_out_dir)/nacl_mozc/nacl_mozc.js', 615 '<(gen_out_dir)/nacl_mozc/nacl_mozc_version.js', 616 '<(gen_out_dir)/nacl_mozc/nacl_session_handler.nmf', 617 '<(gen_out_dir)/nacl_mozc/nacl_session_handler_x86_32.nexe', 618 '<(gen_out_dir)/nacl_mozc/nacl_session_handler_x86_64.nexe', 619 'browser_test/nacl_mozc_test.html', 620 'browser_test/nacl_mozc_test_util.js', 621 ], 622 'outputs': ['dummy_run_nacl_end_to_end_test'], 623 'action': [ 624 'xvfb-run', 625 '--auto-servernum', 626 '/usr/local/bin/python3.8', 627 '<(browser_tester_dir)/browser_tester.py', 628 '--browser_path=/usr/bin/google-chrome', 629 '--file=<(browser_tester_dir)/nacltest.js', 630 '--serving_dir=<(gen_out_dir)/nacl_mozc', 631 '--serving_dir=browser_test', 632 '--url=nacl_mozc_test.html', 633 '--timeout=15', 634 ], 635 }, 636 ], 637 'dependencies': [ 638 'gather_nacl_mozc_files', 639 ], 640 }, 641 ], 642} 643