Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(362)

Unified Diff: third_party/liblouis/liblouis_untrusted.gyp

Issue 67283007: Build liblouis_nacl using gyp. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@lkgr
Patch Set: Don't copy build artifacts to final location (defered to the cl that lands all of chromevox). Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/liblouis/liblouis_untrusted.gyp
diff --git a/third_party/liblouis/liblouis_untrusted.gyp b/third_party/liblouis/liblouis_untrusted.gyp
new file mode 100644
index 0000000000000000000000000000000000000000..78cf61304de32c5c80bec7208a28fb7e96dac12e
--- /dev/null
+++ b/third_party/liblouis/liblouis_untrusted.gyp
@@ -0,0 +1,189 @@
+# Copyright (c) 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.
+
+{
+ 'variables': {
+ 'braille_test_data_dir': '<(PRODUCT_DIR)/chromevox_test_data/braille',
+ 'braille_chromevox_dir': '<(PRODUCT_DIR)/resources/chromeos/chromevox/chromevox/background/braille',
+ 'table_files': [
+ '>!@pymod_do_main(liblouis_list_tables -D overrides/tables -D src/tables tables.json)',
+ ],
+ },
+ # x86 targets build both 32 and 64 bit binaries by default. We only need
+ # the one that matches our target architecture.
+ 'target_defaults': {
+ 'conditions': [
+ ['target_arch=="ia32"', {
+ 'variables': {
+ 'enable_x86_64': 0,
+ },
+ }],
+ ['target_arch=="x64"', {
+ 'variables': {
+ 'enable_x86_32': 0,
+ },
+ }],
+ ],
+ },
+ 'includes': [
+ '../../build/common_untrusted.gypi',
+ ],
+ 'conditions': [
+ ['disable_nacl==0 and disable_nacl_untrusted==0', {
+ 'targets': [
+ {
+ 'target_name': 'liblouis_untrusted',
+ 'type': 'none',
+ 'variables': {
+ 'nacl_untrusted_build': 1,
+ 'nlib_target': 'liblouis_untrusted.a',
+ 'build_newlib': 1,
+ },
+ 'compile_flags': [
+ '-Wno-switch',
+ '-Wno-unused-but-set-variable',
+ ],
+ 'include_dirs': [
+ 'overrides/liblouis',
+ 'src/liblouis',
+ '.',
+ ],
+ 'direct_dependent_settings': {
+ 'include_dirs': [
+ 'overrides',
+ ],
+ },
+ 'sources': [
+ 'overrides/liblouis/config.h',
+ 'overrides/liblouis/liblouis.h',
+ 'overrides/liblouis/compileTranslationTable.c',
+ 'src/liblouis/lou_backTranslateString.c',
+ 'src/liblouis/lou_translateString.c',
+ 'src/liblouis/transcommon.ci',
+ 'src/liblouis/wrappers.c',
+ ],
+ 'dependencies': [
+ '../../native_client/tools.gyp:prep_toolchain',
+ ],
+ },
+
+ {
+ 'target_name': 'liblouis_nacl_wrapper_untrusted',
+ 'type': 'none',
+ 'variables': {
+ 'nacl_untrusted_build': 1,
+ 'nexe_target': 'liblouis_nacl',
+ 'out_newlib64': '<(braille_test_data_dir)/>(nexe_target)_x86_64.nexe',
+ 'out_newlib32': '<(braille_test_data_dir)/>(nexe_target)_x86_32.nexe',
+ 'out_newlib_arm': '<(braille_test_data_dir)/>(nexe_target)_arm.nexe',
+ 'build_newlib': 1,
+ 'extra_args': [
+ '--strip-debug',
+ ],
+ 'nmf': '<(braille_test_data_dir)/>(nexe_target).nmf',
+ 'target_conditions': [
+ ['enable_x86_64==1', {
+ 'nexe_files': ['>(out_newlib64)'],
+ }],
+ ['enable_x86_32==1', {
+ 'nexe_files': ['>(out_newlib32)'],
+ }],
+ ['enable_arm==1', {
+ 'nexe_files': ['>(out_newlib_arm)'],
+ }],
+ ],
+ },
+ 'sources': [
+ 'nacl_wrapper/liblouis_instance.h',
+ 'nacl_wrapper/liblouis_instance.cc',
+ 'nacl_wrapper/liblouis_module.h',
+ 'nacl_wrapper/liblouis_module.cc',
+ 'nacl_wrapper/liblouis_wrapper.h',
+ 'nacl_wrapper/liblouis_wrapper.cc',
+ 'nacl_wrapper/translation_params.h',
+ 'nacl_wrapper/translation_result.h',
+ ],
+ 'link_flags': [
+ '-lppapi',
+ '-lppapi_cpp',
+ '-llouis_untrusted',
+ '-ljsoncpp_untrusted',
+ '-lpthread',
+ '-lnacl_io',
+ ],
+ 'dependencies': [
+ '../../native_client/src/untrusted/nacl/nacl.gyp:nacl_lib',
+ '../../native_client/tools.gyp:prep_toolchain',
+ '../../native_client_sdk/native_client_sdk_untrusted.gyp:nacl_io_untrusted',
+ '../../ppapi/native_client/native_client.gyp:ppapi_lib',
+ '../../ppapi/ppapi_untrusted.gyp:ppapi_cpp_lib',
+ '../jsoncpp/jsoncpp_untrusted.gyp:jsoncpp_untrusted',
+ 'liblouis_untrusted',
+ ],
+ 'actions': [
+ {
+ 'action_name': 'Generate NEWLIB NMF',
+ 'inputs': [
+ '>@(nexe_files)',
+ ],
+ 'outputs': ['>(nmf)'],
+ 'action': [
+ 'python',
+ '<(DEPTH)/native_client_sdk/src/tools/create_nmf.py',
+ '>@(_inputs)',
+ '--output=>(nmf)',
+ ],
+ },
+ ],
+ # Copy specific files into the product directory to avoid
+ # copying over the unstripped binary file.
+ # TODO(plundblad): Temporarily disabled while the rest of chromevox
+ # lands.
+ # 'copies': [
+ # {
+ # 'destination': '<(braille_chromevox_dir)',
+ # 'files': [
+ # '<(nmf)',
+ # '>@(nexe_files)',
+ # 'tables.json',
+ # ],
+ # },
+ # {
+ # 'destination': '<(braille_chromevox_dir)/tables',
+ # 'files': [
+ # '<@(table_files)',
+ # ],
+ # },
+ # ],
+ },
+ {
+ 'target_name': 'liblouis_test_data',
+ 'type': 'none',
+ 'variables': {
+ 'test_extension_dir': '<(DEPTH)/chrome/test/data/chromeos/liblouis_nacl',
+ },
+ 'dependencies': [
+ 'liblouis_nacl_wrapper_untrusted',
+ ],
+ 'copies': [
+ {
+ 'destination': '<(braille_test_data_dir)',
+ 'files': [
+ 'tables.json',
+ '<(test_extension_dir)/manifest.json',
+ '<(test_extension_dir)/test.js',
+ ],
+ },
+ {
+ 'destination': '<(braille_test_data_dir)/tables',
+ 'files': [
+ '<@(table_files)',
+ ],
+ },
+ ],
+ },
+ ],
+ }],
+ ],
+}

Powered by Google App Engine
This is Rietveld 408576698