Skip to content

Commit 943d996

Browse files
authored
Add internal documentation to the FirebaseFirestore podspec (#7482)
1 parent 025eecd commit 943d996

File tree

1 file changed

+29
-2
lines changed

1 file changed

+29
-2
lines changed

FirebaseFirestore.podspec

Lines changed: 29 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,24 @@ Google Cloud Firestore is a NoSQL document database built for automatic scaling,
2323
s.cocoapods_version = '>= 1.4.0'
2424
s.prefix_header_file = false
2525

26+
# Header files that constitute the interface to this module. Only Objective-C
27+
# headers belong here, since FirebaseFirestore is primarily an Objective-C
28+
# framework.
29+
s.public_header_files = 'Firestore/Source/Public/FirebaseFirestore/*.h'
30+
31+
# source_files contains most of the header and source files for the project.
32+
# This includes files named in `public_header_files`.
33+
#
34+
# Each header in this list must be globally unique, even within customer
35+
# projects. This generally means that only Objective-C Headers with a `FIR`
36+
# or `FST` prefix can be in `source_files`. Non-public C++ headers that have
37+
# no filename prefix must be in `preserve_paths`. See
38+
# https://github.com/firebase/firebase-ios-sdk/issues/4035 for more details.
39+
#
40+
# Note: headers from FirebaseCore can be in this list because while they're
41+
# not globally unique, each copy will be the same. It doesn't matter which
42+
# version wins in the global header map. The benefit of keeping them here is
43+
# that "quick open" by filename in Xcode will continue to work.
2644
s.source_files = [
2745
'FirebaseCore/Sources/Private/*.h',
2846
'Firestore/Source/Public/FirebaseFirestore/*.h',
@@ -32,6 +50,13 @@ Google Cloud Firestore is a NoSQL document database built for automatic scaling,
3250
'Firestore/core/src/**/*.{cc,mm}',
3351
'Interop/Auth/Public/*.h',
3452
]
53+
54+
# Internal headers that aren't necessarily globally unique. Most C++ internal
55+
# headers should be here to avoid polluting the global header map with
56+
# unprefixed filenames.
57+
#
58+
# These filenames won't be available in Xcode's "quick open" but the types
59+
# inside these files will be available.
3560
s.preserve_paths = [
3661
'Firestore/Source/API/*.h',
3762
'Firestore/Source/Core/*.h',
@@ -46,16 +71,18 @@ Google Cloud Firestore is a NoSQL document database built for automatic scaling,
4671
'Firestore/Source/**/*',
4772
'Firestore/core/src/**/*.mm',
4873
]
74+
75+
# Exclude alternate implementations for other platforms. These types depend
76+
# upon link-time substitution, and there's no provision within CocoaPods for
77+
# selecting files dynamically.
4978
s.exclude_files = [
50-
# Exclude alternate implementations for other platforms
5179
'Firestore/core/src/api/input_validation_std.cc',
5280
'Firestore/core/src/remote/connectivity_monitor_noop.cc',
5381
'Firestore/core/src/util/filesystem_win.cc',
5482
'Firestore/core/src/util/hard_assert_stdio.cc',
5583
'Firestore/core/src/util/log_stdio.cc',
5684
'Firestore/core/src/util/secure_random_openssl.cc'
5785
]
58-
s.public_header_files = 'Firestore/Source/Public/FirebaseFirestore/*.h'
5986

6087
s.dependency 'FirebaseCore', '~> 7.0'
6188

0 commit comments

Comments
 (0)