1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
   27
   28
   29
   30
   31
   32
   33
   34
   35
   36
   37
   38
   39
   40
   41
   42
   43
   44
   45
   46
   47
   48
   49
   50
   51
   52
   53
   54
   55
   56
   57
   58
   59
   60
   61
   62
   63
   64
   65

media / base / mac / BUILD.gn [blame]

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

assert(is_apple)

source_set("mac") {
  # Note: This source_set is depended on only by //media. In the component
  # build, if other component targets also depend on it, multiple copies of
  # the ObjC classes declared in the files below will cause warnings at
  # run-time.
  visibility = [
    "//media",
    "//media/audio",
    "//media/device_monitors",
    "//media/filters",
    "//media/video",
  ]

  sources = [
    "channel_layout_util_mac.cc",
    "channel_layout_util_mac.h",
    "color_space_util_mac.h",
    "color_space_util_mac.mm",
    "video_capture_device_avfoundation_helpers.h",
    "video_capture_device_avfoundation_helpers.mm",
    "video_frame_mac.h",
    "video_frame_mac.mm",
    "videotoolbox_helpers.cc",
    "videotoolbox_helpers.h",
  ]
  if (is_apple) {
    frameworks = [
      "AudioToolbox.framework",
      "AVFoundation.framework",
      "CoreMedia.framework",
      "CoreVideo.framework",  # Required by video_frame_mac.cc.
      "VideoToolbox.framework",
    ]
  }
  configs += [ "//media:subcomponent_config" ]

  deps = [
    "//media/base",
    "//ui/gfx:color_space",
  ]
}

source_set("unit_tests") {
  testonly = true
  sources = [
    "channel_layout_util_mac_unittests.cc",
    "video_frame_mac_unittests.cc",
  ]
  frameworks = [
    "AudioToolbox.framework",
    "CoreVideo.framework",
  ]
  configs += [ "//media:media_config" ]
  deps = [
    "//media:test_support",
    "//testing/gtest",
    "//ui/gfx:color_space",
  ]
}