xref: /aosp_15_r20/external/sandboxed-api/cmake/protobuf.cmake (revision ec63e07ab9515d95e79c211197c445ef84cefa6a)
1# Copyright 2019 Google LLC
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#     https://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15FetchContent_Declare(protobuf
16  URL https://github.com/protocolbuffers/protobuf/releases/download/v23.4/protobuf-23.4.tar.gz
17  URL_HASH SHA256=a700a49470d301f1190a487a923b5095bf60f08f4ae4cac9f5f7c36883d17971
18)
19
20set(protobuf_ABSL_PROVIDER "package" CACHE STRING "" FORCE)
21set(protobuf_BUILD_TESTS OFF CACHE BOOL "" FORCE)
22set(protobuf_BUILD_SHARED_LIBS OFF CACHE BOOL "" FORCE)
23set(protobuf_INSTALL OFF CACHE BOOL "" FORCE)
24set(protobuf_WITH_ZLIB OFF CACHE BOOL "" FORCE)
25
26FetchContent_MakeAvailable(protobuf)
27
28sapi_check_target(protobuf::libprotobuf)
29sapi_check_target(protobuf::protoc)
30set(Protobuf_INCLUDE_DIR "${protobuf_SOURCE_DIR}/src" CACHE INTERNAL "")
31set(Protobuf_LIBRARIES protobuf::libprotobuf CACHE INTERNAL "")
32