Home | History | Annotate | Download | only in storage_monitor
      1 # Copyright 2014 The Chromium Authors. All rights reserved.
      2 # Use of this source code is governed by a BSD-style license that can be
      3 # found in the LICENSE file.
      4 
      5 import("//build/config/features.gni")
      6 
      7 # GYP version: components/storage_monitor.gypi:storage_monitor
      8 static_library("storage_monitor") {
      9   sources = [
     10     "image_capture_device.h",
     11     "image_capture_device.mm",
     12     "image_capture_device_manager.h",
     13     "image_capture_device_manager.mm",
     14     "media_storage_util.cc",
     15     "media_storage_util.h",
     16     "media_transfer_protocol_device_observer_linux.cc",
     17     "media_transfer_protocol_device_observer_linux.h",
     18     "mtab_watcher_linux.cc",
     19     "mtab_watcher_linux.h",
     20     "portable_device_watcher_win.cc",
     21     "portable_device_watcher_win.h",
     22     "removable_device_constants.cc",
     23     "removable_device_constants.h",
     24     "removable_storage_observer.h",
     25     "storage_info.cc",
     26     "storage_info.h",
     27     "storage_monitor.cc",
     28     "storage_monitor.h",
     29     "storage_monitor_chromeos.cc",
     30     "storage_monitor_chromeos.h",
     31     "storage_monitor_linux.cc",
     32     "storage_monitor_linux.h",
     33     "storage_monitor_mac.h",
     34     "storage_monitor_mac.mm",
     35     "storage_monitor_win.cc",
     36     "storage_monitor_win.h",
     37     "transient_device_ids.cc",
     38     "transient_device_ids.h",
     39     "udev_util_linux.cc",
     40     "udev_util_linux.h",
     41     "volume_mount_watcher_win.cc",
     42     "volume_mount_watcher_win.h",
     43   ]
     44 
     45   deps = [
     46     "//base",
     47   ]
     48 
     49   if (is_mac) {
     50     libs = [
     51       "DiskArbitration.framework",
     52       "Foundation.framework",
     53       "ImageCaptureCore.framework",
     54     ]
     55   }
     56 
     57   if (is_linux) {
     58     deps += [
     59       "//device/media_transfer_protocol",
     60       "//device/media_transfer_protocol:mtp_file_entry_proto",
     61       "//device/media_transfer_protocol:mtp_storage_info_proto",
     62     ]
     63   }
     64 
     65   if (use_udev) {
     66     deps += [
     67       "//device/udev_linux",
     68     ]
     69   } else if (is_linux) {
     70     # These were already removed for non-Linux.
     71     sources -= [
     72       "storage_monitor_linux.cc",
     73       "storage_monitor_linux.h",
     74       "udev_util_linux.cc",
     75       "udev_util_linux.h",
     76     ]
     77   }
     78 
     79   if (is_chromeos) {
     80     sources -= [
     81       "mtab_watcher_linux.cc",
     82       "mtab_watcher_linux.h",
     83       "storage_monitor_linux.cc",
     84       "storage_monitor_linux.h",
     85     ]
     86   }
     87 }
     88 
     89 # GYP version: components/storage_monitor.gypi:storage_monitor_test_support
     90 static_library("test_support") {
     91   sources = [
     92     "mock_removable_storage_observer.cc",
     93     "mock_removable_storage_observer.h",
     94     "test_media_transfer_protocol_manager_linux.cc",
     95     "test_media_transfer_protocol_manager_linux.h",
     96     "test_portable_device_watcher_win.cc",
     97     "test_portable_device_watcher_win.h",
     98     "test_storage_monitor.cc",
     99     "test_storage_monitor.h",
    100     "test_storage_monitor_win.cc",
    101     "test_storage_monitor_win.h",
    102     "test_volume_mount_watcher_win.cc",
    103     "test_volume_mount_watcher_win.h",
    104   ]
    105 
    106   deps = [
    107     "//base",
    108     ":storage_monitor",
    109   ]
    110 
    111   if (is_linux) {
    112     deps += [
    113       "//device/media_transfer_protocol",
    114       "//device/media_transfer_protocol:mtp_file_entry_proto",
    115     ]
    116   }
    117 }
    118