chromium/ios/third_party/motion_animator_objc/BUILD.gn

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

config("config") {
  include_dirs = [ "forwarding_headers" ]
}

config("private_config") {
  include_dirs = [ "src/src" ]
  visibility = [ ":motion_animator_objc" ]
}

source_set("motion_animator_objc") {
  sources = [
    "src/src/CATransaction+MotionAnimator.h",
    "src/src/CATransaction+MotionAnimator.m",
    "src/src/MDMAnimatableKeyPaths.h",
    "src/src/MDMAnimatableKeyPaths.m",
    "src/src/MDMCoreAnimationTraceable.h",
    "src/src/MDMMotionAnimator.h",
    "src/src/MDMMotionAnimator.m",
    "src/src/MotionAnimator.h",
    "src/src/private/CABasicAnimation+MotionAnimator.h",
    "src/src/private/CABasicAnimation+MotionAnimator.m",
    "src/src/private/CAMediaTimingFunction+MotionAnimator.h",
    "src/src/private/CAMediaTimingFunction+MotionAnimator.m",
    "src/src/private/MDMAnimationRegistrar.h",
    "src/src/private/MDMAnimationRegistrar.m",
    "src/src/private/MDMBlockAnimations.h",
    "src/src/private/MDMBlockAnimations.m",
    "src/src/private/MDMDragCoefficient.h",
    "src/src/private/MDMDragCoefficient.m",
    "src/src/private/MDMRegisteredAnimation.h",
    "src/src/private/MDMRegisteredAnimation.m",
    "src/src/private/MDMUIKitValueCoercion.h",
    "src/src/private/MDMUIKitValueCoercion.m",
  ]
  public = [
    "src/src/CATransaction+MotionAnimator.h",
    "src/src/MDMAnimatableKeyPaths.h",
    "src/src/MDMCoreAnimationTraceable.h",
    "src/src/MDMMotionAnimator.h",
    "src/src/MotionAnimator.h",
  ]

  frameworks = [
    "CoreGraphics.framework",
    "Foundation.framework",
    "QuartzCore.framework",
    "UIKit.framework",
  ]
  configs -= [
    "//build/config/compiler:chromium_code",
    "//build/config/gcc:symbol_visibility_hidden",
  ]
  configs += [
    ":private_config",
    "//build/config/compiler:no_chromium_code",
    "//build/config/gcc:symbol_visibility_default",
  ]
  public_configs = [
    ":config",
    "//build/config/compiler:default_include_dirs",
  ]

  public_deps = [ "//ios/third_party/motion_interchange_objc" ]
}