# Copyright 2014 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. if (is_android) { import("//build/config/android/rules.gni") } static_library("variations") { sources = [ "active_field_trials.cc", "active_field_trials.h", "android/variations_associated_data_android.cc", "android/variations_seed_bridge.cc", "android/variations_seed_bridge.h", "caching_permuted_entropy_provider.cc", "caching_permuted_entropy_provider.h", "child_process_field_trial_syncer.cc", "child_process_field_trial_syncer.h", "client_filterable_state.cc", "client_filterable_state.h", "entropy_provider.cc", "entropy_provider.h", "experiment_labels.cc", "experiment_labels.h", "metrics.cc", "metrics.h", "metrics_util.cc", "metrics_util.h", "platform_field_trials.h", "pref_names.cc", "pref_names.h", "processed_study.cc", "processed_study.h", "proto/client_variations.proto", "proto/permuted_entropy_cache.proto", "proto/study.proto", "proto/variations_seed.proto", "study_filtering.cc", "study_filtering.h", "synthetic_trial_registry.cc", "synthetic_trial_registry.h", "synthetic_trials.cc", "synthetic_trials.h", "synthetic_trials_active_group_id_provider.cc", "synthetic_trials_active_group_id_provider.h", "variations_associated_data.cc", "variations_associated_data.h", "variations_experiment_util.cc", "variations_experiment_util.h", "variations_http_header_provider.cc", "variations_http_header_provider.h", "variations_request_scheduler.cc", "variations_request_scheduler.h", "variations_seed_processor.cc", "variations_seed_processor.h", "variations_seed_simulator.cc", "variations_seed_simulator.h", "variations_seed_store.cc", "variations_seed_store.h", "variations_switches.cc", "variations_switches.h", "variations_url_constants.cc", "variations_url_constants.h", "variations_util.cc", "variations_util.h", ] if (is_android || is_ios) { sources += [ "variations_request_scheduler_mobile.cc", "variations_request_scheduler_mobile.h", ] } deps = [ "proto", "//base", "//components/crash/core/common", "//components/prefs", "//crypto", "//third_party/mt19937ar", "//third_party/protobuf:protobuf_lite", "//third_party/zlib/google:compression_utils", ] if (is_android) { deps += [ ":jni" ] } } if (is_android) { generate_jni("jni") { sources = [ "android/java/src/org/chromium/components/variations/VariationsAssociatedData.java", "android/java/src/org/chromium/components/variations/firstrun/VariationsSeedBridge.java", ] jni_package = "variations" } } static_library("test_support") { testonly = true sources = [ "variations_params_manager.cc", "variations_params_manager.h", ] public_deps = [ ":variations", ] deps = [ "field_trial_config:field_trial_config", "//base/test:test_support", ] } source_set("unit_tests") { testonly = true sources = [ "active_field_trials_unittest.cc", "caching_permuted_entropy_provider_unittest.cc", "child_process_field_trial_syncer_unittest.cc", "entropy_provider_unittest.cc", "experiment_labels_unittest.cc", "metrics_util_unittest.cc", "net/variations_http_headers_unittest.cc", "study_filtering_unittest.cc", "synthetic_trial_registry_unittest.cc", "variations_associated_data_unittest.cc", "variations_http_header_provider_unittest.cc", "variations_request_scheduler_unittest.cc", "variations_seed_processor_unittest.cc", "variations_seed_simulator_unittest.cc", "variations_seed_store_unittest.cc", ] if (is_android || is_ios) { sources += [ "variations_request_scheduler_mobile_unittest.cc" ] } deps = [ ":variations", "net", "proto", "//base/test:test_support", "//components/prefs:test_support", "//components/variations/field_trial_config:unit_tests", "//testing/gtest", "//third_party/zlib/google:compression_utils", ] }