net-libs/google-cloud-cpp: revbump with patches that are now upstream

Package-Manager: Portage-2.3.49, Repoman-2.3.10
This commit is contained in:
Jason Zaman
2018-09-28 00:47:25 +08:00
parent 9484c438dc
commit 62f7ec58dd
5 changed files with 153 additions and 190 deletions

View File

@@ -0,0 +1,12 @@
diff -ur google-cloud-cpp-0.2.0.orig/google/cloud/storage/CMakeLists.txt google-cloud-cpp-0.2.0/google/cloud/storage/CMakeLists.txt
--- google-cloud-cpp-0.2.0.orig/google/cloud/storage/CMakeLists.txt 2018-09-28 00:39:41.170482472 +0800
+++ google-cloud-cpp-0.2.0/google/cloud/storage/CMakeLists.txt 2018-09-28 00:42:09.679979597 +0800
@@ -321,7 +321,7 @@
PATTERN "testing/*"
EXCLUDE)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/version_info.h DESTINATION
- include/storage/client)
+ include/google/cloud/storage)
# Setup global variables used in the following *.in files.
set(GOOGLE_CLOUD_CPP_CONFIG_VERSION_MAJOR ${STORAGE_CLIENT_VERSION_MAJOR})

View File

@@ -1,31 +1,31 @@
From eb0155e90498a5d7341490b9ed123f7638bffe44 Mon Sep 17 00:00:00 2001
From ef34b197dd23833c0dde9ea20f62681dbafa7a9b Mon Sep 17 00:00:00 2001
From: Jason Zaman <jason@perfinion.com>
Date: Fri, 7 Sep 2018 21:19:11 +0800
Subject: [PATCH 1/2] cmake: Fix GOOGLE_CLOUD_CPP_GRPC_PROVIDER=pkg-config
The grpc_cpp_plugin executable needs to be marked imported otherwise
cmake will try (and fail) to build it.
Also the location variable was typo'd.
cmake will try (and fail) to build it. Also the location variable was
typo'd.
Signed-off-by: Jason Zaman <jason@perfinion.com>
---
cmake/IncludeGrpc.cmake | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
cmake/IncludeGrpc.cmake | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/cmake/IncludeGrpc.cmake b/cmake/IncludeGrpc.cmake
index 14273cbb..929f984d 100644
index 36dcfe5c..c18f5cbc 100644
--- a/cmake/IncludeGrpc.cmake
+++ b/cmake/IncludeGrpc.cmake
@@ -231,9 +231,9 @@ elseif("${GOOGLE_CLOUD_CPP_GRPC_PROVIDER}" STREQUAL "pkg-config")
@@ -225,9 +225,8 @@ elseif("${GOOGLE_CLOUD_CPP_GRPC_PROVIDER}" STREQUAL "pkg-config")
${PROTOBUF_SRC_ROOT_FOLDER}/vsprojects/${_PROTOBUF_ARCH_DIR}Release
${PROTOBUF_SRC_ROOT_FOLDER}/vsprojects/${_PROTOBUF_ARCH_DIR}Debug)
mark_as_advanced(PROTOC_GRPCPP_PLUGIN_EXECUTABLE)
- add_executable(grpc_cpp_plugin ${PROTOC_GRPC_PLUGIN_EXECUTABLE})
+ add_executable(grpc_cpp_plugin IMPORTED)
set_property(TARGET grpc_cpp_plugin
PROPERTY IMPORTED_LOCATION
- PROPERTY IMPORTED_LOCATION
- ${PROTOC_GRPCPP_CPP_PLUGIN_EXECUTABLE})
+ ${PROTOC_GRPCPP_PLUGIN_EXECUTABLE})
+ PROPERTY IMPORTED_LOCATION ${PROTOC_GRPCPP_PLUGIN_EXECUTABLE})
endif ()
--

View File

@@ -1,180 +0,0 @@
From 9978d05d4418bf813b8a457a2e49d0fc8fc8b26b Mon Sep 17 00:00:00 2001
From: Jason Zaman <jason@perfinion.com>
Date: Fri, 7 Sep 2018 22:35:24 +0800
Subject: [PATCH 2/2] cmake: fix library issues
Set library soversions so CMake sets the symlinks and soversions
properly.
Install the cmake files in the correct dir.
Signed-off-by: Jason Zaman <jason@perfinion.com>
---
google/cloud/CMakeLists.txt | 14 +++++++-------
google/cloud/bigtable/CMakeLists.txt | 11 ++++++++---
google/cloud/firestore/CMakeLists.txt | 14 ++++++++------
google/cloud/storage/CMakeLists.txt | 12 +++++++-----
4 files changed, 30 insertions(+), 21 deletions(-)
diff --git a/google/cloud/CMakeLists.txt b/google/cloud/CMakeLists.txt
index 4d777261..4e26290c 100644
--- a/google/cloud/CMakeLists.txt
+++ b/google/cloud/CMakeLists.txt
@@ -99,6 +99,9 @@ target_include_directories(google_cloud_cpp_common
$<INSTALL_INTERFACE:include>)
target_compile_options(google_cloud_cpp_common
PUBLIC ${GOOGLE_CLOUD_CPP_EXCEPTIONS_FLAG})
+set_target_properties(google_cloud_cpp_common PROPERTIES
+ VERSION ${GOOGLE_CLOUD_CPP_VERSION_MAJOR}.${GOOGLE_CLOUD_CPP_VERSION_MINOR}.${GOOGLE_CLOUD_CPP_VERSION_PATCH}
+ SOVERSION ${GOOGLE_CLOUD_CPP_VERSION_MAJOR})
include(CreateBazelConfig)
create_bazel_config(google_cloud_cpp_common)
@@ -150,7 +153,7 @@ endforeach ()
# Export the CMake targets to make it easy to create configuration files.
install(EXPORT google_cloud_cpp_common-targets
- DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/google_cloud_cpp_common")
+ DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/cmake/Modules")
# Install the libraries and headers in the locations determined by
# GNUInstallDirs
@@ -186,12 +189,9 @@ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/google_cloud_cpp_common.pc"
configure_file("config.cmake.in" "google_cloud_cpp_common-config.cmake" @ONLY)
configure_file("${PROJECT_SOURCE_DIR}/google/cloud/config-version.cmake.in"
"google_cloud_cpp_common-config-version.cmake" @ONLY)
-install(
- FILES
- "${CMAKE_CURRENT_BINARY_DIR}/google_cloud_cpp_common-config.cmake"
- "${CMAKE_CURRENT_BINARY_DIR}/google_cloud_cpp_common-config-version.cmake"
- DESTINATION
- "${CMAKE_INSTALL_LIBDIR}/cmake/google_cloud_cpp_common")
+install(FILES "${CMAKE_CURRENT_BINARY_DIR}/google_cloud_cpp_common-config.cmake"
+ "${CMAKE_CURRENT_BINARY_DIR}/google_cloud_cpp_common-config-version.cmake"
+ DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/cmake/Modules")
add_subdirectory(bigtable)
add_subdirectory(firestore)
diff --git a/google/cloud/bigtable/CMakeLists.txt b/google/cloud/bigtable/CMakeLists.txt
index 8aaff05c..9bd3effd 100644
--- a/google/cloud/bigtable/CMakeLists.txt
+++ b/google/cloud/bigtable/CMakeLists.txt
@@ -102,6 +102,9 @@ target_include_directories(bigtable_protos
$<INSTALL_INTERFACE:include>)
target_compile_options(bigtable_protos
PUBLIC ${GOOGLE_CLOUD_CPP_EXCEPTIONS_FLAG})
+set_target_properties(bigtable_protos PROPERTIES
+ VERSION ${BIGTABLE_CLIENT_VERSION_MAJOR}.${BIGTABLE_CLIENT_VERSION_MINOR}.${BIGTABLE_CLIENT_VERSION_PATCH}
+ SOVERSION ${BIGTABLE_CLIENT_VERSION_MAJOR})
add_library(bigtable::protos ALIAS bigtable_protos)
# Enable unit tests
@@ -212,6 +215,9 @@ target_include_directories(bigtable_client
$<INSTALL_INTERFACE:include>)
target_compile_options(bigtable_client
PUBLIC ${GOOGLE_CLOUD_CPP_EXCEPTIONS_FLAG})
+set_target_properties(bigtable_client PROPERTIES
+ VERSION ${BIGTABLE_CLIENT_VERSION_MAJOR}.${BIGTABLE_CLIENT_VERSION_MINOR}.${BIGTABLE_CLIENT_VERSION_PATCH}
+ SOVERSION ${BIGTABLE_CLIENT_VERSION_MAJOR})
add_library(bigtable::client ALIAS bigtable_client)
include(CreateBazelConfig)
@@ -369,7 +375,7 @@ if (NOT ${GOOGLE_CLOUD_CPP_GRPC_PROVIDER} STREQUAL "module")
# Export the CMake targets to make it easy to create configuration files.
install(EXPORT bigtable-targets
- DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/bigtable_client")
+ DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/cmake/Modules")
endif ()
install(TARGETS bigtable_client
@@ -407,5 +413,4 @@ configure_file("${PROJECT_SOURCE_DIR}/google/cloud/config-version.cmake.in"
"bigtable_client-config-version.cmake" @ONLY)
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/bigtable_client-config.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/bigtable_client-config-version.cmake"
- DESTINATION
- "${CMAKE_INSTALL_LIBDIR}/cmake/bigtable_client")
+ DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/cmake/Modules")
diff --git a/google/cloud/firestore/CMakeLists.txt b/google/cloud/firestore/CMakeLists.txt
index 88c5ad6d..63d8add1 100644
--- a/google/cloud/firestore/CMakeLists.txt
+++ b/google/cloud/firestore/CMakeLists.txt
@@ -62,6 +62,9 @@ target_include_directories(firestore_client
$<INSTALL_INTERFACE:include>)
target_compile_options(firestore_client
PUBLIC ${GOOGLE_CLOUD_CPP_EXCEPTIONS_FLAG})
+set_target_properties(firestore_client PROPERTIES
+ VERSION ${FIRESTORE_CLIENT_VERSION_MAJOR}.${FIRESTORE_CLIENT_VERSION_MINOR}.${FIRESTORE_CLIENT_VERSION_PATCH}
+ SOVERSION ${FIRESTORE_CLIENT_VERSION_MAJOR})
add_library(firestore::client ALIAS firestore_client)
include(CreateBazelConfig)
@@ -104,7 +107,8 @@ install(TARGETS
# The exports can only be installed if all the dependencies are installed. CMake
# needs to know where the submodules will be installed from,
-install(EXPORT firestore-targets DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/cmake)
+install(EXPORT firestore-targets
+ DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/cmake/Modules")
install(TARGETS firestore_client
EXPORT firestore-targets
@@ -138,8 +142,6 @@ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/firestore_client.pc" DESTINATION
configure_file("config.cmake.in" "firestore_client-config.cmake" @ONLY)
configure_file("${PROJECT_SOURCE_DIR}/google/cloud/config-version.cmake.in"
"firestore_client-config-version.cmake" @ONLY)
-install(
- FILES "${CMAKE_CURRENT_BINARY_DIR}/firestore_client-config.cmake"
- "${CMAKE_CURRENT_BINARY_DIR}/firestore_client-config-version.cmake"
- DESTINATION
- ${CMAKE_INSTALL_DATAROOTDIR}/cmake)
+install(FILES "${CMAKE_CURRENT_BINARY_DIR}/firestore_client-config.cmake"
+ "${CMAKE_CURRENT_BINARY_DIR}/firestore_client-config-version.cmake"
+ DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/cmake/Modules")
diff --git a/google/cloud/storage/CMakeLists.txt b/google/cloud/storage/CMakeLists.txt
index c8b641a0..c91bb17c 100644
--- a/google/cloud/storage/CMakeLists.txt
+++ b/google/cloud/storage/CMakeLists.txt
@@ -216,6 +216,9 @@ target_include_directories(storage_client
$<INSTALL_INTERFACE:include>)
target_compile_options(storage_client
PUBLIC ${GOOGLE_CLOUD_CPP_EXCEPTIONS_FLAG})
+set_target_properties(storage_client PROPERTIES
+ VERSION ${STORAGE_CLIENT_VERSION_MAJOR}.${STORAGE_CLIENT_VERSION_MINOR}.${STORAGE_CLIENT_VERSION_PATCH}
+ SOVERSION ${STORAGE_CLIENT_VERSION_MAJOR})
add_library(storage_client_testing
testing/canonical_errors.h
@@ -326,20 +329,20 @@ install(TARGETS storage_common_options nlohmann_json
# Export the CMake targets to make it easy to create configuration files.
install(EXPORT storage-targets
- DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/storage_client")
+ DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/cmake/Modules")
install(TARGETS storage_client
EXPORT storage-targets
RUNTIME DESTINATION bin
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
-install(DIRECTORY . DESTINATION include/storage/client
+install(DIRECTORY . DESTINATION include/google/cloud/storage/client
FILES_MATCHING
PATTERN "*.h"
PATTERN "testing/*"
EXCLUDE)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/version_info.h DESTINATION
- include/storage/client)
+ include/google/cloud/storage/client)
# Setup global variables used in the following *.in files.
set(GOOGLE_CLOUD_CPP_CONFIG_VERSION_MAJOR ${STORAGE_CLIENT_VERSION_MAJOR})
@@ -362,5 +365,4 @@ configure_file("${PROJECT_SOURCE_DIR}/google/cloud/config-version.cmake.in"
"storage_client-config-version.cmake" @ONLY)
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/storage_client-config.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/storage_client-config-version.cmake"
- DESTINATION
- "${CMAKE_INSTALL_LIBDIR}/cmake/storage_client")
+ DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/cmake/Modules")
--
2.16.4

View File

@@ -0,0 +1,130 @@
From b1d6f58033be92661f91b221b878e333eb02fd7f Mon Sep 17 00:00:00 2001
From: Jason Zaman <jason@perfinion.com>
Date: Fri, 7 Sep 2018 22:35:24 +0800
Subject: [PATCH 2/2] cmake: set library soversions
Set library soversions so CMake sets the symlinks and soversions
properly. Install the cmake files in the correct dir.
Signed-off-by: Jason Zaman <jason@perfinion.com>
---
google/cloud/CMakeLists.txt | 7 +++++++
google/cloud/bigtable/CMakeLists.txt | 14 ++++++++++++++
google/cloud/firestore/CMakeLists.txt | 12 ++++++++++--
google/cloud/storage/CMakeLists.txt | 9 ++++++++-
4 files changed, 39 insertions(+), 3 deletions(-)
diff --git a/google/cloud/CMakeLists.txt b/google/cloud/CMakeLists.txt
index 3f3f8742..442f4e17 100644
--- a/google/cloud/CMakeLists.txt
+++ b/google/cloud/CMakeLists.txt
@@ -98,6 +98,13 @@ target_include_directories(google_cloud_cpp_common
$<INSTALL_INTERFACE:include>)
target_compile_options(google_cloud_cpp_common
PUBLIC ${GOOGLE_CLOUD_CPP_EXCEPTIONS_FLAG})
+set_target_properties(
+ google_cloud_cpp_common
+ PROPERTIES
+ VERSION
+ ${GOOGLE_CLOUD_CPP_VERSION_MAJOR}.${GOOGLE_CLOUD_CPP_VERSION_MINOR}.${GOOGLE_CLOUD_CPP_VERSION_PATCH}
+ SOVERSION
+ ${GOOGLE_CLOUD_CPP_VERSION_MAJOR})
include(CreateBazelConfig)
create_bazel_config(google_cloud_cpp_common)
diff --git a/google/cloud/bigtable/CMakeLists.txt b/google/cloud/bigtable/CMakeLists.txt
index 9ed778eb..fd9c8797 100644
--- a/google/cloud/bigtable/CMakeLists.txt
+++ b/google/cloud/bigtable/CMakeLists.txt
@@ -102,6 +102,13 @@ target_include_directories(bigtable_protos
$<INSTALL_INTERFACE:include>)
target_compile_options(bigtable_protos
PUBLIC ${GOOGLE_CLOUD_CPP_EXCEPTIONS_FLAG})
+set_target_properties(
+ bigtable_protos
+ PROPERTIES
+ VERSION
+ ${BIGTABLE_CLIENT_VERSION_MAJOR}.${BIGTABLE_CLIENT_VERSION_MINOR}.${BIGTABLE_CLIENT_VERSION_PATCH}
+ SOVERSION
+ ${BIGTABLE_CLIENT_VERSION_MAJOR})
add_library(bigtable::protos ALIAS bigtable_protos)
# Enable unit tests
@@ -206,6 +213,13 @@ target_include_directories(bigtable_client
$<INSTALL_INTERFACE:include>)
target_compile_options(bigtable_client
PUBLIC ${GOOGLE_CLOUD_CPP_EXCEPTIONS_FLAG})
+set_target_properties(
+ bigtable_client
+ PROPERTIES
+ VERSION
+ ${BIGTABLE_CLIENT_VERSION_MAJOR}.${BIGTABLE_CLIENT_VERSION_MINOR}.${BIGTABLE_CLIENT_VERSION_PATCH}
+ SOVERSION
+ ${BIGTABLE_CLIENT_VERSION_MAJOR})
add_library(bigtable::client ALIAS bigtable_client)
include(CreateBazelConfig)
diff --git a/google/cloud/firestore/CMakeLists.txt b/google/cloud/firestore/CMakeLists.txt
index 88c5ad6d..c69e48fd 100644
--- a/google/cloud/firestore/CMakeLists.txt
+++ b/google/cloud/firestore/CMakeLists.txt
@@ -62,6 +62,13 @@ target_include_directories(firestore_client
$<INSTALL_INTERFACE:include>)
target_compile_options(firestore_client
PUBLIC ${GOOGLE_CLOUD_CPP_EXCEPTIONS_FLAG})
+set_target_properties(
+ firestore_client
+ PROPERTIES
+ VERSION
+ ${FIRESTORE_CLIENT_VERSION_MAJOR}.${FIRESTORE_CLIENT_VERSION_MINOR}.${FIRESTORE_CLIENT_VERSION_PATCH}
+ SOVERSION
+ ${FIRESTORE_CLIENT_VERSION_MAJOR})
add_library(firestore::client ALIAS firestore_client)
include(CreateBazelConfig)
@@ -104,7 +111,8 @@ install(TARGETS
# The exports can only be installed if all the dependencies are installed. CMake
# needs to know where the submodules will be installed from,
-install(EXPORT firestore-targets DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/cmake)
+install(EXPORT firestore-targets
+ DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/firestore_client")
install(TARGETS firestore_client
EXPORT firestore-targets
@@ -142,4 +150,4 @@ install(
FILES "${CMAKE_CURRENT_BINARY_DIR}/firestore_client-config.cmake"
"${CMAKE_CURRENT_BINARY_DIR}/firestore_client-config-version.cmake"
DESTINATION
- ${CMAKE_INSTALL_DATAROOTDIR}/cmake)
+ "${CMAKE_INSTALL_LIBDIR}/cmake/firestore_client")
diff --git a/google/cloud/storage/CMakeLists.txt b/google/cloud/storage/CMakeLists.txt
index cef3954b..912391cc 100644
--- a/google/cloud/storage/CMakeLists.txt
+++ b/google/cloud/storage/CMakeLists.txt
@@ -205,6 +205,13 @@ target_include_directories(storage_client
$<INSTALL_INTERFACE:include>)
target_compile_options(storage_client
PUBLIC ${GOOGLE_CLOUD_CPP_EXCEPTIONS_FLAG})
+set_target_properties(
+ storage_client
+ PROPERTIES
+ VERSION
+ ${STORAGE_CLIENT_VERSION_MAJOR}.${STORAGE_CLIENT_VERSION_MINOR}.${STORAGE_CLIENT_VERSION_PATCH}
+ SOVERSION
+ ${STORAGE_CLIENT_VERSION_MAJOR})
add_library(storage_client_testing
testing/canonical_errors.h
@@ -315,7 +322,7 @@ install(TARGETS storage_client
RUNTIME DESTINATION bin
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
-install(DIRECTORY . DESTINATION include/storage/client
+install(DIRECTORY . DESTINATION include/google/cloud/storage/client
FILES_MATCHING
PATTERN "*.h"
PATTERN "testing/*"
--
2.16.4

View File

@@ -27,8 +27,9 @@ DEPEND="${RDEPEND}
DOCS=( README.md )
PATCHES=(
"${FILESDIR}/0001-Make-the-install-target-work.patch"
"${FILESDIR}/0001-cmake-Fix-GOOGLE_CLOUD_CPP_GRPC_PROVIDER-pkg-config.patch"
"${FILESDIR}/0002-cmake-fix-library-issues.patch"
"${FILESDIR}/0002-cmake-set-library-soversions.patch"
)
src_prepare() {