| # Copyright (c) 2012 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. |
| |
| { |
| 'includes': [ |
| 'jingle.gypi', |
| ], |
| 'variables': { |
| 'chromium_code': 1, |
| }, # variables |
| 'conditions': [ |
| ['enable_webrtc==1 or OS!="android"', { |
| 'targets': [ |
| # A library of various utils for integration with libjingle. |
| # GN version: //jingle:jingle_glue |
| { |
| 'target_name': 'jingle_glue', |
| 'type': 'static_library', |
| 'sources': [ |
| '<@(jingle_glue_sources)', |
| ], |
| 'dependencies': [ |
| '../base/base.gyp:base', |
| '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations', |
| '../net/net.gyp:net', |
| '../third_party/libjingle/libjingle.gyp:libjingle', |
| ], |
| 'export_dependent_settings': [ |
| '../third_party/libjingle/libjingle.gyp:libjingle', |
| ], |
| }, |
| # A library for sending and receiving peer-issued notifications. |
| # |
| # TODO(akalin): Separate out the XMPP stuff from this library into |
| # its own library. |
| # |
| # GN version: //jingle:notifier |
| { |
| 'target_name': 'notifier', |
| 'type': 'static_library', |
| 'sources': [ |
| 'notifier/base/const_communicator.h', |
| 'notifier/base/gaia_constants.cc', |
| 'notifier/base/gaia_constants.h', |
| 'notifier/base/gaia_token_pre_xmpp_auth.cc', |
| 'notifier/base/gaia_token_pre_xmpp_auth.h', |
| 'notifier/base/notification_method.h', |
| 'notifier/base/notification_method.cc', |
| 'notifier/base/notifier_options.cc', |
| 'notifier/base/notifier_options.h', |
| 'notifier/base/notifier_options_util.cc', |
| 'notifier/base/notifier_options_util.h', |
| 'notifier/base/server_information.cc', |
| 'notifier/base/server_information.h', |
| 'notifier/base/weak_xmpp_client.cc', |
| 'notifier/base/weak_xmpp_client.h', |
| 'notifier/base/xmpp_connection.cc', |
| 'notifier/base/xmpp_connection.h', |
| 'notifier/communicator/connection_settings.cc', |
| 'notifier/communicator/connection_settings.h', |
| 'notifier/communicator/login.cc', |
| 'notifier/communicator/login.h', |
| 'notifier/communicator/login_settings.cc', |
| 'notifier/communicator/login_settings.h', |
| 'notifier/communicator/single_login_attempt.cc', |
| 'notifier/communicator/single_login_attempt.h', |
| 'notifier/listener/non_blocking_push_client.cc', |
| 'notifier/listener/non_blocking_push_client.h', |
| 'notifier/listener/notification_constants.cc', |
| 'notifier/listener/notification_constants.h', |
| 'notifier/listener/notification_defines.cc', |
| 'notifier/listener/notification_defines.h', |
| 'notifier/listener/push_client_observer.cc', |
| 'notifier/listener/push_client_observer.h', |
| 'notifier/listener/push_client.cc', |
| 'notifier/listener/push_client.h', |
| 'notifier/listener/push_notifications_listen_task.cc', |
| 'notifier/listener/push_notifications_listen_task.h', |
| 'notifier/listener/push_notifications_send_update_task.cc', |
| 'notifier/listener/push_notifications_send_update_task.h', |
| 'notifier/listener/push_notifications_subscribe_task.cc', |
| 'notifier/listener/push_notifications_subscribe_task.h', |
| 'notifier/listener/send_ping_task.cc', |
| 'notifier/listener/send_ping_task.h', |
| 'notifier/listener/xml_element_util.cc', |
| 'notifier/listener/xml_element_util.h', |
| 'notifier/listener/xmpp_push_client.cc', |
| 'notifier/listener/xmpp_push_client.h', |
| ], |
| 'defines' : [ |
| '_CRT_SECURE_NO_WARNINGS', |
| ], |
| 'dependencies': [ |
| '../base/base.gyp:base', |
| '../net/net.gyp:net', |
| '../third_party/expat/expat.gyp:expat', |
| '../third_party/libjingle/libjingle.gyp:libjingle', |
| '../url/url.gyp:url_lib', |
| 'jingle_glue', |
| ], |
| 'export_dependent_settings': [ |
| '../third_party/libjingle/libjingle.gyp:libjingle', |
| ], |
| }, |
| # GN version: //jingle:notifier_test_util |
| { |
| 'target_name': 'notifier_test_util', |
| 'type': 'static_library', |
| 'sources': [ |
| 'notifier/base/fake_base_task.cc', |
| 'notifier/base/fake_base_task.h', |
| 'notifier/listener/fake_push_client.cc', |
| 'notifier/listener/fake_push_client.h', |
| 'notifier/listener/fake_push_client_observer.cc', |
| 'notifier/listener/fake_push_client_observer.h', |
| ], |
| 'dependencies': [ |
| 'notifier', |
| '../base/base.gyp:base', |
| '../testing/gmock.gyp:gmock', |
| ], |
| }, |
| # GN version: //jingle:jingle_unittests |
| { |
| 'target_name': 'jingle_unittests', |
| 'type': 'executable', |
| 'sources': [ |
| 'glue/chrome_async_socket_unittest.cc', |
| 'glue/fake_ssl_client_socket_unittest.cc', |
| 'glue/jingle_glue_mock_objects.cc', |
| 'glue/jingle_glue_mock_objects.h', |
| 'glue/logging_unittest.cc', |
| 'glue/mock_task.cc', |
| 'glue/mock_task.h', |
| 'glue/proxy_resolving_client_socket_unittest.cc', |
| 'glue/task_pump_unittest.cc', |
| 'glue/thread_wrapper_unittest.cc', |
| 'notifier/base/weak_xmpp_client_unittest.cc', |
| 'notifier/base/xmpp_connection_unittest.cc', |
| 'notifier/communicator/connection_settings_unittest.cc', |
| 'notifier/communicator/login_settings_unittest.cc', |
| 'notifier/communicator/single_login_attempt_unittest.cc', |
| 'notifier/listener/non_blocking_push_client_unittest.cc', |
| 'notifier/listener/notification_defines_unittest.cc', |
| 'notifier/listener/push_client_unittest.cc', |
| 'notifier/listener/push_notifications_send_update_task_unittest.cc', |
| 'notifier/listener/push_notifications_subscribe_task_unittest.cc', |
| 'notifier/listener/send_ping_task_unittest.cc', |
| 'notifier/listener/xml_element_util_unittest.cc', |
| 'notifier/listener/xmpp_push_client_unittest.cc', |
| ], |
| 'conditions': [ |
| ['OS=="android"', { |
| 'sources!': [ |
| # TODO(jrg): |
| # EXPECT_DEBUG_DEATH() uses features not enabled. |
| # Should we -std=c++0x or -std=gnu++0x? |
| 'glue/chrome_async_socket_unittest.cc', |
| 'notifier/base/xmpp_connection_unittest.cc', |
| ], |
| }]], |
| 'include_dirs': [ |
| '..', |
| ], |
| 'dependencies': [ |
| 'jingle_glue', |
| 'notifier', |
| 'notifier_test_util', |
| '../base/base.gyp:base', |
| '../base/base.gyp:run_all_unittests', |
| '../base/base.gyp:test_support_base', |
| '../net/net.gyp:net', |
| '../net/net.gyp:net_test_support', |
| '../testing/gmock.gyp:gmock', |
| '../testing/gtest.gyp:gtest', |
| '../third_party/libjingle/libjingle.gyp:libjingle', |
| ], |
| }, |
| ], |
| 'conditions': [ |
| ['test_isolation_mode != "noop"', { |
| 'targets': [ |
| { |
| 'target_name': 'jingle_unittests_run', |
| 'type': 'none', |
| 'dependencies': [ |
| 'jingle_unittests', |
| ], |
| 'includes': [ |
| '../build/isolate.gypi', |
| ], |
| 'sources': [ |
| 'jingle_unittests.isolate', |
| ], |
| }, |
| ], |
| }], |
| ], |
| }, { # enable_webrtc!=1 and OS=="android" |
| 'targets': [ |
| # Stub targets as Android doesn't use libjingle when webrtc is disabled. |
| { |
| 'target_name': 'jingle_glue', |
| 'type': 'none', |
| }, |
| { |
| 'target_name': 'jingle_glue_test_util', |
| 'type': 'none', |
| }, |
| # GN version: //jingle:notifier |
| { |
| 'target_name': 'notifier', |
| 'type': 'static_library', |
| 'sources': [ |
| 'notifier/base/gaia_constants.cc', |
| 'notifier/base/gaia_constants.h', |
| 'notifier/base/notification_method.h', |
| 'notifier/base/notification_method.cc', |
| 'notifier/base/notifier_options.cc', |
| 'notifier/base/notifier_options.h', |
| ], |
| 'dependencies': [ |
| '../base/base.gyp:base', |
| '../net/net.gyp:net', |
| ], |
| }, |
| { |
| 'target_name': 'notifier_test_util', |
| 'type': 'none', |
| }, |
| ], |
| }], |
| ], |
| } |