Add 'third_party/cpp/googleapis/' from commit 'c873fd3aa1'
git-subtree-dir: third_party/cpp/googleapis git-subtree-mainline:438050b3d9git-subtree-split:c873fd3aa1
This commit is contained in:
commit
4bdb118d6e
74 changed files with 3750 additions and 0 deletions
28
third_party/cpp/googleapis/ci/test-install/bigquery/CMakeLists.txt
vendored
Normal file
28
third_party/cpp/googleapis/ci/test-install/bigquery/CMakeLists.txt
vendored
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
# ~~~
|
||||
# Copyright 2019 Google LLC
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
# ~~~
|
||||
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
project(utilize-googleapis CXX C)
|
||||
|
||||
# Configure the compiler options, we will be using C++11 features.
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
find_package(googleapis REQUIRED)
|
||||
|
||||
add_executable(utilize-googleapis main.cc)
|
||||
target_link_libraries(utilize-googleapis googleapis-c++::cloud_bigquery_protos)
|
||||
36
third_party/cpp/googleapis/ci/test-install/bigquery/Makefile
vendored
Normal file
36
third_party/cpp/googleapis/ci/test-install/bigquery/Makefile
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
# Copyright 2019 Google LLC
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# A simple Makefile to test the `install` target.
|
||||
#
|
||||
# This is not intended to be a demonstration of how to write good Makefiles,
|
||||
# nor is it a general solution on how to build Makefiles for google-cloud-cpp.
|
||||
# It is simply a minimal file to test the installed pkg-config support files.
|
||||
|
||||
# The CXX, CXXFLAGS and CXXLD variables are hard-coded. These values work for
|
||||
# our tests, but applications would typically make them configurable parameters.
|
||||
CXX=g++ -std=c++11
|
||||
CXXLD=$(CXX)
|
||||
|
||||
all: main
|
||||
|
||||
# Configuration variables to compile and link against the library.
|
||||
PROTOS := googleapis_cpp_cloud_bigquery_protos
|
||||
CXXFLAGS := $(shell pkg-config $(PROTOS) --cflags)
|
||||
CXXLDFLAGS := $(shell pkg-config $(PROTOS) --libs-only-L)
|
||||
LIBS := $(shell pkg-config $(PROTOS) --libs-only-l)
|
||||
|
||||
# A target using the Google Cloud Storage C++ client library.
|
||||
main: main.cc
|
||||
$(CXXLD) $(CXXFLAGS) $(CXXFLAGS) $(CXXLDFLAGS) -o $@ $^ $(LIBS)
|
||||
22
third_party/cpp/googleapis/ci/test-install/bigquery/main.cc
vendored
Normal file
22
third_party/cpp/googleapis/ci/test-install/bigquery/main.cc
vendored
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
// Copyright 2019 Google LLC
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
#include <google/cloud/bigquery/storage/v1beta1/storage.grpc.pb.h>
|
||||
#include <grpcpp/grpcpp.h>
|
||||
|
||||
int main() {
|
||||
auto creds = grpc::InsecureChannelCredentials();
|
||||
auto channel = grpc::CreateChannel("localhost:12345", creds);
|
||||
auto stub = google::cloud::bigquery::storage::v1beta1::BigQueryStorage::NewStub(channel);
|
||||
}
|
||||
28
third_party/cpp/googleapis/ci/test-install/bigtable/CMakeLists.txt
vendored
Normal file
28
third_party/cpp/googleapis/ci/test-install/bigtable/CMakeLists.txt
vendored
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
# ~~~
|
||||
# Copyright 2019 Google LLC
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
# ~~~
|
||||
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
project(utilize-googleapis CXX C)
|
||||
|
||||
# Configure the compiler options, we will be using C++11 features.
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
find_package(googleapis REQUIRED)
|
||||
|
||||
add_executable(utilize-googleapis main.cc)
|
||||
target_link_libraries(utilize-googleapis googleapis-c++::bigtable_protos)
|
||||
36
third_party/cpp/googleapis/ci/test-install/bigtable/Makefile
vendored
Normal file
36
third_party/cpp/googleapis/ci/test-install/bigtable/Makefile
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
# Copyright 2019 Google LLC
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# A simple Makefile to test the `install` target.
|
||||
#
|
||||
# This is not intended to be a demonstration of how to write good Makefiles,
|
||||
# nor is it a general solution on how to build Makefiles for google-cloud-cpp.
|
||||
# It is simply a minimal file to test the installed pkg-config support files.
|
||||
|
||||
# The CXX, CXXFLAGS and CXXLD variables are hard-coded. These values work for
|
||||
# our tests, but applications would typically make them configurable parameters.
|
||||
CXX=g++ -std=c++11
|
||||
CXXLD=$(CXX)
|
||||
|
||||
all: main
|
||||
|
||||
# Configuration variables to compile and link against the library.
|
||||
PROTOS := googleapis_cpp_bigtable_protos
|
||||
CXXFLAGS := $(shell pkg-config $(PROTOS) --cflags)
|
||||
CXXLDFLAGS := $(shell pkg-config $(PROTOS) --libs-only-L)
|
||||
LIBS := $(shell pkg-config $(PROTOS) --libs-only-l)
|
||||
|
||||
# A target using the Google Cloud Storage C++ client library.
|
||||
main: main.cc
|
||||
$(CXXLD) $(CXXFLAGS) $(CXXFLAGS) $(CXXLDFLAGS) -o $@ $^ $(LIBS)
|
||||
22
third_party/cpp/googleapis/ci/test-install/bigtable/main.cc
vendored
Normal file
22
third_party/cpp/googleapis/ci/test-install/bigtable/main.cc
vendored
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
// Copyright 2019 Google LLC
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
#include <google/bigtable/v2/bigtable.grpc.pb.h>
|
||||
#include <grpcpp/grpcpp.h>
|
||||
|
||||
int main() {
|
||||
auto creds = grpc::InsecureChannelCredentials();
|
||||
auto channel = grpc::CreateChannel("localhost:12345", creds);
|
||||
auto stub = google::bigtable::v2::Bigtable::NewStub(channel);
|
||||
}
|
||||
47
third_party/cpp/googleapis/ci/test-install/compile-test-projects.sh
vendored
Executable file
47
third_party/cpp/googleapis/ci/test-install/compile-test-projects.sh
vendored
Executable file
|
|
@ -0,0 +1,47 @@
|
|||
#!/usr/bin/env bash
|
||||
# Copyright 2019 Google LLC
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# Compile projects that utilize the cpp-cmakefiles header files and libraries
|
||||
# installed to the system. This script expects that the entire source tree is
|
||||
# copied to /home/build/cpp-cmakefiles. Don't try to run this locally.
|
||||
|
||||
set -eu
|
||||
|
||||
# Verify the installed CMake config and pkgconfig files are actually usable.
|
||||
|
||||
for subdir in bigquery bigtable pubsub spanner; do
|
||||
# Compile a test program using CMake.
|
||||
echo "================================================================"
|
||||
echo "Testing ${subdir} $(date) with CMake"
|
||||
echo "================================================================"
|
||||
src_dir="/home/build/cpp-cmakefiles/ci/test-install/${subdir}"
|
||||
cmake_dir="/home/build/test-cmake-${subdir}"
|
||||
make_dir="/home/build/test-make-${subdir}"
|
||||
cmake -H"${src_dir}" -B"${cmake_dir}"
|
||||
cmake --build "${cmake_dir}" -- -j "$(nproc)"
|
||||
# Verify the generated program is runnable
|
||||
"${cmake_dir}/utilize-googleapis"
|
||||
echo "================================================================"
|
||||
echo "Testing ${subdir} $(date) with Make"
|
||||
echo "================================================================"
|
||||
cp -R "${src_dir}" "${make_dir}"
|
||||
cd "${make_dir}"
|
||||
# With Make we may need to set PKG_CONFIG_PATH because the code is installed
|
||||
# in /usr/local and that is not a default search location in some distros.
|
||||
env PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig:/usr/local/lib/pkgconfig \
|
||||
make
|
||||
# Verify the generated program is runnable
|
||||
"${make_dir}/main"
|
||||
done
|
||||
28
third_party/cpp/googleapis/ci/test-install/pubsub/CMakeLists.txt
vendored
Normal file
28
third_party/cpp/googleapis/ci/test-install/pubsub/CMakeLists.txt
vendored
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
# ~~~
|
||||
# Copyright 2019 Google LLC
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
# ~~~
|
||||
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
project(utilize-googleapis CXX C)
|
||||
|
||||
# Configure the compiler options, we will be using C++11 features.
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
find_package(googleapis REQUIRED)
|
||||
|
||||
add_executable(utilize-googleapis main.cc)
|
||||
target_link_libraries(utilize-googleapis googleapis-c++::pubsub_protos)
|
||||
36
third_party/cpp/googleapis/ci/test-install/pubsub/Makefile
vendored
Normal file
36
third_party/cpp/googleapis/ci/test-install/pubsub/Makefile
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
# Copyright 2019 Google LLC
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# A simple Makefile to test the `install` target.
|
||||
#
|
||||
# This is not intended to be a demonstration of how to write good Makefiles,
|
||||
# nor is it a general solution on how to build Makefiles for google-cloud-cpp.
|
||||
# It is simply a minimal file to test the installed pkg-config support files.
|
||||
|
||||
# The CXX, CXXFLAGS and CXXLD variables are hard-coded. These values work for
|
||||
# our tests, but applications would typically make them configurable parameters.
|
||||
CXX=g++ -std=c++11
|
||||
CXXLD=$(CXX)
|
||||
|
||||
all: main
|
||||
|
||||
# Configuration variables to compile and link against the library.
|
||||
PROTOS := googleapis_cpp_pubsub_protos
|
||||
CXXFLAGS := $(shell pkg-config $(PROTOS) --cflags)
|
||||
CXXLDFLAGS := $(shell pkg-config $(PROTOS) --libs-only-L)
|
||||
LIBS := $(shell pkg-config $(PROTOS) --libs-only-l)
|
||||
|
||||
# A target using the Google Cloud Storage C++ client library.
|
||||
main: main.cc
|
||||
$(CXXLD) $(CXXFLAGS) $(CXXFLAGS) $(CXXLDFLAGS) -o $@ $^ $(LIBS)
|
||||
22
third_party/cpp/googleapis/ci/test-install/pubsub/main.cc
vendored
Normal file
22
third_party/cpp/googleapis/ci/test-install/pubsub/main.cc
vendored
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
// Copyright 2019 Google LLC
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
#include <google/pubsub/v1/pubsub.grpc.pb.h>
|
||||
#include <grpcpp/grpcpp.h>
|
||||
|
||||
int main() {
|
||||
auto creds = grpc::InsecureChannelCredentials();
|
||||
auto channel = grpc::CreateChannel("localhost:12345", creds);
|
||||
auto stub = google::pubsub::v1::Publisher::NewStub(channel);
|
||||
}
|
||||
28
third_party/cpp/googleapis/ci/test-install/spanner/CMakeLists.txt
vendored
Normal file
28
third_party/cpp/googleapis/ci/test-install/spanner/CMakeLists.txt
vendored
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
# ~~~
|
||||
# Copyright 2019 Google LLC
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
# ~~~
|
||||
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
project(utilize-googleapis CXX C)
|
||||
|
||||
# Configure the compiler options, we will be using C++11 features.
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
find_package(googleapis REQUIRED)
|
||||
|
||||
add_executable(utilize-googleapis main.cc)
|
||||
target_link_libraries(utilize-googleapis googleapis-c++::spanner_protos)
|
||||
36
third_party/cpp/googleapis/ci/test-install/spanner/Makefile
vendored
Normal file
36
third_party/cpp/googleapis/ci/test-install/spanner/Makefile
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
# Copyright 2019 Google LLC
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# A simple Makefile to test the `install` target.
|
||||
#
|
||||
# This is not intended to be a demonstration of how to write good Makefiles,
|
||||
# nor is it a general solution on how to build Makefiles for google-cloud-cpp.
|
||||
# It is simply a minimal file to test the installed pkg-config support files.
|
||||
|
||||
# The CXX, CXXFLAGS and CXXLD variables are hard-coded. These values work for
|
||||
# our tests, but applications would typically make them configurable parameters.
|
||||
CXX=g++ -std=c++11
|
||||
CXXLD=$(CXX)
|
||||
|
||||
all: main
|
||||
|
||||
# Configuration variables to compile and link against the library.
|
||||
PROTOS := googleapis_cpp_spanner_protos
|
||||
CXXFLAGS := $(shell pkg-config $(PROTOS) --cflags)
|
||||
CXXLDFLAGS := $(shell pkg-config $(PROTOS) --libs-only-L)
|
||||
LIBS := $(shell pkg-config $(PROTOS) --libs-only-l)
|
||||
|
||||
# A target using the Google Cloud Storage C++ client library.
|
||||
main: main.cc
|
||||
$(CXXLD) $(CXXFLAGS) $(CXXFLAGS) $(CXXLDFLAGS) -o $@ $^ $(LIBS)
|
||||
22
third_party/cpp/googleapis/ci/test-install/spanner/main.cc
vendored
Normal file
22
third_party/cpp/googleapis/ci/test-install/spanner/main.cc
vendored
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
// Copyright 2019 Google LLC
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
#include <google/spanner/v1/spanner.grpc.pb.h>
|
||||
#include <grpcpp/grpcpp.h>
|
||||
|
||||
int main() {
|
||||
auto creds = grpc::InsecureChannelCredentials();
|
||||
auto channel = grpc::CreateChannel("localhost:12345", creds);
|
||||
auto stub = google::spanner::v1::Spanner::NewStub(channel);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue