blob: 459dc45a41524798e8150da954b59f30041f169f [file] [log] [blame]
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08001From 2279e30be5796e9b185545543ea54fe68633cbdd Mon Sep 17 00:00:00 2001
Brad Bishop316dfdd2018-06-25 12:45:53 -04002From: Alexey Firago <alexey_firago@mentor.com>
3Date: Mon, 30 Oct 2017 23:24:49 +0300
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08004Subject: [PATCH] CMakeLists.txt: Fix libraries installation for Linux
Brad Bishop316dfdd2018-06-25 12:45:53 -04005
6* Set libs versions as in Makefile
7
8Signed-off-by: Alexey Firago <alexey_firago@mentor.com>
9
10%% original patch: 0001-CMakeLists.txt-Fix-libraries-installation-for-Linux.patch
11---
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080012 CMakeLists.txt | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++
13 1 file changed, 59 insertions(+)
Brad Bishop316dfdd2018-06-25 12:45:53 -040014
15diff --git a/CMakeLists.txt b/CMakeLists.txt
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080016index a59fd818e3..5066f44a32 100644
Brad Bishop316dfdd2018-06-25 12:45:53 -040017--- a/CMakeLists.txt
18+++ b/CMakeLists.txt
19@@ -30,6 +30,15 @@ set(PACKAGE_TARNAME "${PACKAGE_NAME}-${PACKAGE_VERSION}")
20 set(PACKAGE_BUGREPORT "https://github.com/grpc/grpc/issues/")
21 project(${PACKAGE_NAME} C CXX)
22
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080023+set (CORE_VERSION_MAJOR "6")
24+set (CORE_VERSION "6.0.0")
Brad Bishop316dfdd2018-06-25 12:45:53 -040025+
26+set (CPP_VERSION_MAJOR "1")
27+set (CPP_VERSION "${PACKAGE_VERSION}")
28+
29+set (CSHARP_VERSION_MAJOR "1")
30+set (CSHARP_VERSION "${PACKAGE_VERSION}")
31+
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080032 set(gRPC_INSTALL_BINDIR "bin" CACHE STRING "Installation directory for executables")
33 set(gRPC_INSTALL_LIBDIR "lib" CACHE STRING "Installation directory for libraries")
34 set(gRPC_INSTALL_INCLUDEDIR "include" CACHE STRING "Installation directory for headers")
35@@ -702,6 +711,10 @@ if(WIN32 AND MSVC)
36 endif()
37 endif()
38
39+if(_gRPC_PLATFORM_LINUX)
40+ set_property(TARGET address_sorting PROPERTY VERSION ${CORE_VERSION})
41+ set_property(TARGET address_sorting PROPERTY SOVERSION ${CORE_VERSION_MAJOR})
42+endif()
43
44 target_include_directories(address_sorting
45 PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
46@@ -825,6 +838,10 @@ if(WIN32 AND MSVC)
Brad Bishop316dfdd2018-06-25 12:45:53 -040047 endif()
48 endif()
49
50+if(_gRPC_PLATFORM_LINUX)
51+ set_property(TARGET gpr PROPERTY VERSION ${CORE_VERSION})
52+ set_property(TARGET gpr PROPERTY SOVERSION ${CORE_VERSION_MAJOR})
53+endif()
54
55 target_include_directories(gpr
56 PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080057@@ -1259,6 +1276,10 @@ if(WIN32 AND MSVC)
Brad Bishop316dfdd2018-06-25 12:45:53 -040058 endif()
59 endif()
60
61+if(_gRPC_PLATFORM_LINUX)
62+ set_property(TARGET grpc PROPERTY VERSION ${CORE_VERSION})
63+ set_property(TARGET grpc PROPERTY SOVERSION ${CORE_VERSION_MAJOR})
64+endif()
65
66 target_include_directories(grpc
67 PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080068@@ -1633,6 +1654,10 @@ if(WIN32 AND MSVC)
Brad Bishop316dfdd2018-06-25 12:45:53 -040069 endif()
70 endif()
71
72+if(_gRPC_PLATFORM_LINUX)
73+ set_property(TARGET grpc_cronet PROPERTY VERSION ${CORE_VERSION})
74+ set_property(TARGET grpc_cronet PROPERTY SOVERSION ${CORE_VERSION_MAJOR})
75+endif()
76
77 target_include_directories(grpc_cronet
78 PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080079@@ -2575,6 +2600,10 @@ if(WIN32 AND MSVC)
Brad Bishop316dfdd2018-06-25 12:45:53 -040080 endif()
81 endif()
82
83+if(_gRPC_PLATFORM_LINUX)
84+ set_property(TARGET grpc_unsecure PROPERTY VERSION ${CORE_VERSION})
85+ set_property(TARGET grpc_unsecure PROPERTY SOVERSION ${CORE_VERSION_MAJOR})
86+endif()
87
88 target_include_directories(grpc_unsecure
89 PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080090@@ -2791,6 +2820,10 @@ if(WIN32 AND MSVC)
Brad Bishop316dfdd2018-06-25 12:45:53 -040091 endif()
92 endif()
93
94+if(_gRPC_PLATFORM_LINUX)
95+ set_property(TARGET grpc++ PROPERTY VERSION ${CPP_VERSION})
96+ set_property(TARGET grpc++ PROPERTY SOVERSION ${CPP_VERSION_MAJOR})
97+endif()
98
99 target_include_directories(grpc++
100 PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800101@@ -3357,6 +3390,10 @@ if(WIN32 AND MSVC)
Brad Bishop316dfdd2018-06-25 12:45:53 -0400102 endif()
103 endif()
104
105+if(_gRPC_PLATFORM_LINUX)
106+ set_property(TARGET grpc++_cronet PROPERTY VERSION ${CPP_VERSION})
107+ set_property(TARGET grpc++_cronet PROPERTY SOVERSION ${CPP_VERSION_MAJOR})
108+endif()
109
110 target_include_directories(grpc++_cronet
111 PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800112@@ -3630,6 +3667,11 @@ protobuf_generate_grpc_cpp(
Brad Bishop316dfdd2018-06-25 12:45:53 -0400113 src/proto/grpc/status/status.proto
114 )
115
116+if(_gRPC_PLATFORM_LINUX)
117+ set_property(TARGET grpc++_error_details PROPERTY VERSION ${CPP_VERSION})
118+ set_property(TARGET grpc++_error_details PROPERTY SOVERSION ${CPP_VERSION_MAJOR})
119+endif()
120+
121 target_include_directories(grpc++_error_details
122 PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
123 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800124@@ -3762,6 +3804,11 @@ protobuf_generate_grpc_cpp(
Brad Bishop316dfdd2018-06-25 12:45:53 -0400125 src/proto/grpc/reflection/v1alpha/reflection.proto
126 )
127
128+if(_gRPC_PLATFORM_LINUX)
129+ set_property(TARGET grpc++_reflection PROPERTY VERSION ${CPP_VERSION})
130+ set_property(TARGET grpc++_reflection PROPERTY SOVERSION ${CPP_VERSION_MAJOR})
131+endif()
132+
133 target_include_directories(grpc++_reflection
134 PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
135 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800136@@ -4265,6 +4312,10 @@ if(WIN32 AND MSVC)
Brad Bishop316dfdd2018-06-25 12:45:53 -0400137 endif()
138 endif()
139
140+if(_gRPC_PLATFORM_LINUX)
141+ set_property(TARGET grpc++_unsecure PROPERTY VERSION ${CPP_VERSION})
142+ set_property(TARGET grpc++_unsecure PROPERTY SOVERSION ${CPP_VERSION_MAJOR})
143+endif()
144
145 target_include_directories(grpc++_unsecure
146 PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800147@@ -4649,6 +4700,10 @@ if(WIN32 AND MSVC)
Brad Bishop316dfdd2018-06-25 12:45:53 -0400148 endif()
149 endif()
150
151+if(_gRPC_PLATFORM_LINUX)
152+ set_property(TARGET grpc_plugin_support PROPERTY VERSION ${CORE_VERSION})
153+ set_property(TARGET grpc_plugin_support PROPERTY SOVERSION ${CORE_VERSION_MAJOR})
154+endif()
155
156 target_include_directories(grpc_plugin_support
157 PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800158@@ -5184,6 +5239,10 @@ if(WIN32 AND MSVC)
Brad Bishop316dfdd2018-06-25 12:45:53 -0400159 endif()
160 endif()
161
162+if(_gRPC_PLATFORM_LINUX)
163+ set_property(TARGET grpc_csharp_ext PROPERTY VERSION ${CSHARP_VERSION})
164+ set_property(TARGET grpc_csharp_ext PROPERTY SOVERSION ${CSHARP_VERSION_MAJOR})
165+endif()
166
167 target_include_directories(grpc_csharp_ext
168 PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400169--
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08001702.17.1
Brad Bishop316dfdd2018-06-25 12:45:53 -0400171