chromium/chrome/utility/safe_browsing/BUILD.gn

# Copyright 2023 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//components/safe_browsing/buildflags.gni")

source_set("safe_browsing") {
  deps = []

  if (safe_browsing_mode == 1) {
    sources = [
      "archive_analyzer.cc",
      "archive_analyzer.h",
      "seven_zip_analyzer.cc",
      "seven_zip_analyzer.h",
      "zip_analyzer.cc",
      "zip_analyzer.h",
    ]

    if (is_mac) {
      sources += [
        "mac/dmg_analyzer.cc",
        "mac/dmg_analyzer.h",
        "mac/dmg_iterator.cc",
        "mac/dmg_iterator.h",
      ]
    }

    deps += [
      "//chrome/common/safe_browsing",
      "//chrome/common/safe_browsing:archive_analyzer_results",
      "//chrome/common/safe_browsing:download_type_util",
      "//components/safe_browsing/content/common:file_type_policies",
      "//components/safe_browsing/core/common",
      "//third_party/lzma_sdk/google:seven_zip_reader",
      "//third_party/zlib",
    ]

    if (safe_browsing_use_unrar) {
      deps += [ "//third_party/unrar" ]
      sources += [
        "rar_analyzer.cc",
        "rar_analyzer.h",
      ]
    }
    defines = [ "USE_UNRAR=$safe_browsing_use_unrar" ]

    if (is_mac) {
      deps += [
        "//base",
        "//chrome/common/safe_browsing:archive_analyzer_results",
        "//chrome/common/safe_browsing:binary_feature_extractor",
        "//chrome/utility/safe_browsing/mac:dmg_common",
        "//components/safe_browsing/content/common:file_type_policies",
        "//components/safe_browsing/core/common",
        "//components/safe_browsing/core/common/proto:csd_proto",
      ]
    }
  }
}