@@ -120,27 +120,29 @@ if(FIREBASE_CPP_USE_PRIOR_GRADLE_BUILD)
120120 "${CMAKE_CURRENT_LIST_DIR} /[^/]+/(.*)"
121121 "${CMAKE_CURRENT_LIST_DIR} /app/\\ 1"
122122 APP_BINARY_DIR "${FIREBASE_BINARY_DIR} " )
123+
124+ set (FIRESTORE_SOURCE_DIR ${APP_BINARY_DIR} /external/src/firestore)
123125else ()
124126 # Run the CMake build logic that will download all the external dependencies.
125127 message (STATUS "Downloading external project dependencies..." )
126128 download_external_sources()
127129 message (STATUS "Download complete." )
130+ endif ()
128131
129- # Include Firestore's external build early to resolve conflicts on packages.
130- if (FIREBASE_INCLUDE_FIRESTORE)
131- set (FIRESTORE_SOURCE_DIR ${FIREBASE_BINARY_DIR} /external/src/firestore)
132- set (FIRESTORE_BINARY_DIR ${FIRESTORE_SOURCE_DIR} -build )
132+ # Include Firestore's external build early to resolve conflicts on packages.
133+ if (NOT ANDROID AND FIREBASE_INCLUDE_FIRESTORE)
134+ set (FIRESTORE_SOURCE_DIR ${FIREBASE_BINARY_DIR} /external/src/firestore)
135+ set (FIRESTORE_BINARY_DIR ${FIRESTORE_SOURCE_DIR} -build )
133136
134- set (
135- FIREBASE_IOS_BUILD_TESTS
136- ${FIREBASE_CPP_BUILD_TESTS}
137- CACHE BOOL "Force Firestore build tests to match"
138- )
137+ set (
138+ FIREBASE_IOS_BUILD_TESTS
139+ ${FIREBASE_CPP_BUILD_TESTS}
140+ CACHE BOOL "Force Firestore build tests to match"
141+ )
139142
140- add_subdirectory (${FIRESTORE_SOURCE_DIR} ${FIRESTORE_BINARY_DIR} )
143+ add_subdirectory (${FIRESTORE_SOURCE_DIR} ${FIRESTORE_BINARY_DIR} )
141144
142- copy_subdirectory_definition(${FIRESTORE_SOURCE_DIR} NANOPB_SOURCE_DIR)
143- endif ()
145+ copy_subdirectory_definition(${FIRESTORE_SOURCE_DIR} NANOPB_SOURCE_DIR)
144146endif ()
145147
146148# Disable the Flatbuffer build tests, install and flathash
@@ -252,28 +254,29 @@ if (NOT ANDROID AND NOT IOS)
252254 endif ()
253255endif ()
254256
255- if (FIREBASE_INCLUDE_FIRESTORE)
256- # The Firestore build includes protobuf and nanopb already
257- list (APPEND CMAKE_MODULE_PATH ${NANOPB_SOURCE_DIR} /extra)
258- find_package (Nanopb REQUIRED)
259-
260- set (PROTOBUF_FOUND ON )
261-
262- else ()
263- find_package (Protobuf)
264- if (PROTOBUF_FOUND)
265- # NanoPB requires Protobuf to be present, so only add it if it was found.
266- add_external_library(nanopb)
267-
268- # NanoPB has a FindNanopb which defines the function to generate files, so
269- # add it to the module path, and use that.
257+ if (NOT ANDROID)
258+ if (FIREBASE_INCLUDE_FIRESTORE)
259+ # The Firestore build includes protobuf and nanopb already
270260 list (APPEND CMAKE_MODULE_PATH ${NANOPB_SOURCE_DIR} /extra)
271- find_package (Nanopb)
261+ find_package (Nanopb REQUIRED )
272262
273- target_compile_definitions (
274- protobuf-nanopb-static
275- PUBLIC -DPB_FIELD_32BIT -DPB_ENABLE_MALLOC
276- )
263+ set (PROTOBUF_FOUND ON )
264+ else ()
265+ find_package (Protobuf)
266+ if (PROTOBUF_FOUND)
267+ # NanoPB requires Protobuf to be present, so only add it if it was found.
268+ add_external_library(nanopb)
269+
270+ # NanoPB has a FindNanopb which defines the function to generate files,
271+ # so add it to the module path, and use that.
272+ list (APPEND CMAKE_MODULE_PATH ${NANOPB_SOURCE_DIR} /extra)
273+ find_package (Nanopb)
274+
275+ target_compile_definitions (
276+ protobuf-nanopb-static
277+ PUBLIC -DPB_FIELD_32BIT -DPB_ENABLE_MALLOC
278+ )
279+ endif ()
277280 endif ()
278281endif ()
279282
0 commit comments