blob: 0969031852bf27f6326add15f90cc9f3532fd8bf [file] [log] [blame]
# Copyright 2018 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.
import("//ios/third_party/firebase/firebase.gni")
source_set("firebase") {
# From gn documentation:
# https://chromium.googlesource.com/chromium/src/+/master/tools/gn/docs/reference.md#ldflags
# "ldflags are NOT pushed to dependents, so applying ldflags to source sets
# or static libraries will be a no-op. If you want to apply ldflags to
# dependent targets, put them in a config and set it in the
# all_dependent_configs or public_configs."
#
# This source_set must be specified as a direct deps of an ios_app_bundle
# target for ldflags specified in :firebase_config to be applied.
public_configs = [ ":firebase_config" ]
deps = [
":resources",
]
}
config("firebase_config") {
visibility = [ ":firebase" ]
ldflags = [
"-F",
rebase_path("Analytics", root_build_dir),
]
libs = [
"FirebaseAnalytics.framework",
"FirebaseCore.framework",
"FirebaseCoreDiagnostics.framework",
"FirebaseInstanceID.framework",
"FirebaseNanoPB.framework",
"nanopb.framework",
]
}
bundle_data("resources") {
assert(ios_firebase_plist_path != "",
"ios_firebase_plist_path must be defined if Firebase SDK is enabled.")
sources = [
ios_firebase_plist_path,
]
outputs = [
"{{bundle_resources_dir}}/{{source_file_part}}",
]
}