blob: 074de4c708a68347c9c9ddcd6a1d50ce4a72f927 [file] [log] [blame]
# 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_starboard) {
import("//components/crx_file/testdata/sha1_files.gni")
}
import("//third_party/protobuf/proto_library.gni")
# The accompanying crx_creator target has been left behind during the migration
# from GYP to GN because it introduces some -Wc++11-narrowing compiler errors
# and isn't actually used in Cobalt. If it's at some point needed we can
# likely pull in the narrowing fixes made by the Chromium team in
# https://source.chromium.org/chromium/chromium/src/+/379c52be13901beae4f773fe9e8054ad42a186c4.
static_library("crx_file") {
sources = [
"crx_file.h",
"crx_verifier.cc",
"crx_verifier.h",
"id_util.cc",
"id_util.h",
]
deps = [
"//base",
"//crypto",
]
public_deps = [
":crx3_proto",
]
}
if (is_starboard) {
action("crx_file_download_test_data") {
install_content = true
script = "//tools/download_from_gcs.py"
sha_sources = []
foreach(sha1_file, sha1_files) {
sha_sources += [ string_join("/",
[
"testdata",
sha1_file,
]) ]
}
sha_outputs = []
subdir = "components/crx_file"
outdir = "$sb_static_contents_output_data_dir/test/$subdir"
foreach(sha_source, sha_sources) {
sha_outputs += [ string_join("/",
[
outdir,
string_replace(sha_source, ".sha1", ""),
]) ]
}
sources = sha_sources
outputs = sha_outputs
sha1_dir = rebase_path("testdata", root_build_dir)
args = [
"--bucket",
"cobalt-static-storage",
"--sha1",
sha1_dir,
"--output",
rebase_path("$outdir/testdata", root_build_dir),
]
}
target(gtest_target_type, "crx_file_test") {
testonly = true
sources = [ "crx_verifier_unittest.cc" ]
deps = [
":crx_file",
"//cobalt/test:run_all_unittests",
"//starboard:starboard_headers_only",
"//testing/gtest",
]
data_deps = [ ":crx_file_download_test_data" ]
}
}
proto_library("crx3_proto") {
sources = [
"crx3.proto",
]
}