Skip to content

Commit 4a3f1c1

Browse files
committed
BUG#17903583 MYSQL-COMMUNITY-SERVER SHOULD NOT DEPEND ON MYSQL-COMMUNITY-CLIENT (#70985)
Fix is a backport of BUG#18518216/72230 to MySQL 5.5 and 5.6. Will also resolve: BUG#23605713/81384 LIBMYSQLCLIENT.SO.18 MISSING FROM MYSQL 5.7 as mysql-community-libs-5.5 or mysql-community-libs-5.6 can installed on EL6 system with libmysqlclient.16 (from MySQL 5.1) libmysqlclient.20 (from MySQL 5.7) by doing: $ rpm --oldpackage -ivh mysql-community-libs-5.5.50-2.el6.x86_64.rpm Providing a way to have several versions of libmysqlclient installed on the same system. and help: BUG#23088014/80981 LIBS-COMPAT RPMS SHOULD BE INDEPENDENT OF ALL OTHER SUBPACKAGES due to less strict coupling between -libs-compat and -common package.
1 parent 957aefd commit 4a3f1c1

File tree

2 files changed

+49
-45
lines changed

2 files changed

+49
-45
lines changed

packaging/rpm-oel/mysql.spec.in

Lines changed: 27 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@
8181
%global license_type GPLv2
8282
%endif
8383

84+
%global min 5.5.8
85+
8486
Name: mysql-%{product_suffix}
8587
Summary: A very fast and reliable SQL database server
8688
Group: Applications/Databases
@@ -156,11 +158,11 @@ Requires: net-tools
156158
Provides: MySQL-server-advanced%{?_isa} = %{version}-%{release}
157159
Obsoletes: MySQL-server-advanced < %{version}-%{release}
158160
Obsoletes: mysql-community-server < %{version}-%{release}
159-
Requires: mysql-commercial-client%{?_isa} = %{version}-%{release}
161+
Requires: mysql-commercial-client%{?_isa} >= %{min}
160162
Requires: mysql-commercial-common%{?_isa} = %{version}-%{release}
161163
%else
162164
Provides: MySQL-server%{?_isa} = %{version}-%{release}
163-
Requires: mysql-community-client%{?_isa} = %{version}-%{release}
165+
Requires: mysql-community-client%{?_isa} >= %{min}
164166
Requires: mysql-community-common%{?_isa} = %{version}-%{release}
165167
%endif
166168
Obsoletes: MySQL-server < %{version}-%{release}
@@ -209,10 +211,10 @@ Group: Applications/Databases
209211
Provides: MySQL-client-advanced%{?_isa} = %{version}-%{release}
210212
Obsoletes: MySQL-client-advanced < %{version}-%{release}
211213
Obsoletes: mysql-community-client < %{version}-%{release}
212-
Requires: mysql-commercial-libs%{?_isa} = %{version}-%{release}
214+
Requires: mysql-commercial-libs%{?_isa} >= %{min}
213215
%else
214216
Provides: MySQL-client%{?_isa} = %{version}-%{release}
215-
Requires: mysql-community-libs%{?_isa} = %{version}-%{release}
217+
Requires: mysql-community-libs%{?_isa} >= %{min}
216218
%endif
217219
Obsoletes: MySQL-client < %{version}-%{release}
218220
Obsoletes: mariadb
@@ -234,7 +236,7 @@ Obsoletes: mysql-community-common < %{version}-%{release}
234236
%endif
235237
Provides: mysql-common = %{version}-%{release}
236238
Provides: mysql-common%{?_isa} = %{version}-%{release}
237-
%{?el5:Requires: mysql%{?_isa} = %{version}-%{release}}
239+
%{?el5:Requires: mysql%{?_isa} >= %{min}}
238240

239241
%description common
240242
This packages contains common files needed by MySQL client library,
@@ -248,10 +250,10 @@ Group: Applications/Databases
248250
Provides: MySQL-test-advanced%{?_isa} = %{version}-%{release}
249251
Obsoletes: MySQL-test-advanced < %{version}-%{release}
250252
Obsoletes: mysql-community-test < %{version}-%{release}
251-
Requires: mysql-commercial-server%{?_isa} = %{version}-%{release}
253+
Requires: mysql-commercial-server%{?_isa} >= %{min}
252254
%else
253255
Provides: MySQL-test%{?_isa} = %{version}-%{release}
254-
Requires: mysql-community-server%{?_isa} = %{version}-%{release}
256+
Requires: mysql-community-server%{?_isa} >= %{min}
255257
%endif
256258
Obsoletes: MySQL-test < %{version}-%{release}
257259
Obsoletes: mysql-test < %{version}-%{release}
@@ -270,9 +272,9 @@ Summary: MySQL benchmark suite
270272
Group: Applications/Databases
271273
%if 0%{?commercial}
272274
Obsoletes: mysql-community-bench < %{version}-%{release}
273-
Requires: mysql-commercial-server%{?_isa} = %{version}-%{release}
275+
Requires: mysql-commercial-server%{?_isa} >= %{min}
274276
%else
275-
Requires: mysql-community-server%{?_isa} = %{version}-%{release}
277+
Requires: mysql-community-server%{?_isa} >= %{min}
276278
%endif
277279
Obsoletes: mariadb-bench
278280
Obsoletes: community-mysql-bench < %{version}-%{release}
@@ -291,10 +293,10 @@ Group: Applications/Databases
291293
Provides: MySQL-devel-advanced%{?_isa} = %{version}-%{release}
292294
Obsoletes: MySQL-devel-advanced < %{version}-%{release}
293295
Obsoletes: mysql-community-devel < %{version}-%{release}
294-
Requires: mysql-commercial-libs%{?_isa} = %{version}-%{release}
296+
Requires: mysql-commercial-libs%{?_isa} >= %{min}
295297
%else
296298
Provides: MySQL-devel%{?_isa} = %{version}-%{release}
297-
Requires: mysql-community-libs%{?_isa} = %{version}-%{release}
299+
Requires: mysql-community-libs%{?_isa} >= %{min}
298300
%endif
299301
Obsoletes: MySQL-devel < %{version}-%{release}
300302
Obsoletes: mysql-devel < %{version}-%{release}
@@ -314,10 +316,10 @@ Group: Applications/Databases
314316
Provides: MySQL-shared-advanced%{?_isa} = %{version}-%{release}
315317
Obsoletes: MySQL-shared-advanced < %{version}-%{release}
316318
Obsoletes: mysql-community-libs < %{version}-%{release}
317-
Requires: mysql-commercial-common%{?_isa} = %{version}-%{release}
319+
Requires: mysql-commercial-common%{?_isa} >= %{min}
318320
%else
319321
Provides: MySQL-shared%{?_isa} = %{version}-%{release}
320-
Requires: mysql-community-common%{?_isa} = %{version}-%{release}
322+
Requires: mysql-community-common%{?_isa} >= %{min}
321323
%endif
322324
Obsoletes: MySQL-shared < %{version}-%{release}
323325
Obsoletes: mysql-libs < %{version}-%{release}
@@ -341,10 +343,10 @@ Provides: mysql-libs-compat%{?_isa} = %{version}-%{release}
341343
Provides: MySQL-shared-compat-advanced%{?_isa} = %{version}-%{release}
342344
Obsoletes: MySQL-shared-compat-advanced < %{version}-%{release}
343345
Obsoletes: mysql-community-libs-compat < %{version}-%{release}
344-
Requires: mysql-commercial-libs%{?_isa} = %{version}-%{release}
346+
Requires: mysql-commercial-libs%{?_isa} >= %{min}
345347
%else
346348
Provides: MySQL-shared-compat%{?_isa} = %{version}-%{release}
347-
Requires: mysql-community-libs%{?_isa} = %{version}-%{release}
349+
Requires: mysql-community-libs%{?_isa} >= %{min}
348350
%endif
349351
Obsoletes: MySQL-shared-compat < %{version}-%{release}
350352
%if 0%{?rhel} > 5
@@ -391,11 +393,11 @@ Summary: Development header files and libraries for MySQL as an embeddabl
391393
Group: Applications/Databases
392394
%if 0%{?commercial}
393395
Obsoletes: mysql-community-embedded-devel < %{version}-%{release}
394-
Requires: mysql-commercial-devel%{?_isa} = %{version}-%{release}
395-
Requires: mysql-commercial-embedded%{?_isa} = %{version}-%{release}
396+
Requires: mysql-commercial-devel%{?_isa} >= %{min}
397+
Requires: mysql-commercial-embedded%{?_isa} >= %{min}
396398
%else
397-
Requires: mysql-community-devel%{?_isa} = %{version}-%{release}
398-
Requires: mysql-community-embedded%{?_isa} = %{version}-%{release}
399+
Requires: mysql-community-devel%{?_isa} >= %{min}
400+
Requires: mysql-community-embedded%{?_isa} >= %{min}
399401
%endif
400402
Obsoletes: mariadb-embedded-devel
401403
Obsoletes: mysql-embedded-devel < %{version}-%{release}
@@ -411,13 +413,13 @@ the embedded version of the MySQL server.
411413
Summary: Convenience package for easy upgrades of MySQL package set
412414
Group: Applications/Databases
413415
%if 0%{?commercial}
414-
Requires: mysql-commercial-client%{?_isa} = %{version}-%{release}
415-
Requires: mysql-commercial-libs%{?_isa} = %{version}-%{release}
416-
Requires: mysql-commercial-libs-compat%{?_isa} = %{version}-%{release}
416+
Requires: mysql-commercial-client%{?_isa} >= %{min}
417+
Requires: mysql-commercial-libs%{?_isa} >= %{min}
418+
Requires: mysql-commercial-libs-compat%{?_isa} >= %{min}
417419
%else
418-
Requires: mysql-community-client%{?_isa} = %{version}-%{release}
419-
Requires: mysql-community-libs%{?_isa} = %{version}-%{release}
420-
Requires: mysql-community-libs-compat%{?_isa} = %{version}-%{release}
420+
Requires: mysql-community-client%{?_isa} >= %{min}
421+
Requires: mysql-community-libs%{?_isa} >= %{min}
422+
Requires: mysql-community-libs-compat%{?_isa} >= %{min}
421423
%endif
422424

423425
%description -n mysql

packaging/rpm-sles/mysql.spec.in

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@
5757
%global sles11 1
5858
%endif
5959

60+
%global min 5.5.8
61+
6062
Name: mysql-%{product_suffix}
6163
Summary: A very fast and reliable SQL database server
6264
Group: Applications/Databases
@@ -125,12 +127,12 @@ Requires: perl-base
125127
Provides: MySQL-server-advanced = %{version}-%{release}
126128
Obsoletes: MySQL-server-advanced < %{version}-%{release}
127129
Obsoletes: mysql-community-server < %{version}-%{release}
128-
Requires: mysql-commercial-client = %{version}-%{release}
129-
Requires: mysql-commercial-common = %{version}-%{release}
130+
Requires: mysql-commercial-client >= %{min}
131+
Requires: mysql-commercial-common >= %{min}
130132
%else
131133
Provides: MySQL-server = %{version}-%{release}
132-
Requires: mysql-community-client = %{version}-%{release}
133-
Requires: mysql-community-common = %{version}-%{release}
134+
Requires: mysql-community-client >= %{min}
135+
Requires: mysql-community-common >= %{min}
134136
%endif
135137
Obsoletes: MySQL-server < %{version}-%{release}
136138
Obsoletes: mysql < %{version}-%{release}
@@ -180,10 +182,10 @@ Group: Applications/Databases
180182
Provides: MySQL-client-advanced = %{version}-%{release}
181183
Obsoletes: MySQL-client-advanced < %{version}-%{release}
182184
Obsoletes: mysql-community-client < %{version}-%{release}
183-
Requires: mysql-commercial-libs = %{version}-%{release}
185+
Requires: mysql-commercial-libs >= %{min}
184186
%else
185187
Provides: MySQL-client = %{version}-%{release}
186-
Requires: mysql-community-libs = %{version}-%{release}
188+
Requires: mysql-community-libs >= %{min}
187189
%endif
188190
Obsoletes: MySQL-client < %{version}-%{release}
189191
Provides: mysql-client = %{version}-%{release}
@@ -215,10 +217,10 @@ Group: Applications/Databases
215217
Provides: MySQL-test-advanced = %{version}-%{release}
216218
Obsoletes: MySQL-test-advanced < %{version}-%{release}
217219
Obsoletes: mysql-community-test < %{version}-%{release}
218-
Requires: mysql-commercial-server = %{version}-%{release}
220+
Requires: mysql-commercial-server >= %{min}
219221
%else
220222
Provides: MySQL-test = %{version}-%{release}
221-
Requires: mysql-community-server = %{version}-%{release}
223+
Requires: mysql-community-server >= %{min}
222224
%endif
223225
Obsoletes: MySQL-test < %{version}-%{release}
224226
Obsoletes: mysql-test < %{version}-%{release}
@@ -236,9 +238,9 @@ Summary: MySQL benchmark suite
236238
Group: Applications/Databases
237239
%if 0%{?commercial}
238240
Obsoletes: mysql-community-bench < %{version}-%{release}
239-
Requires: mysql-commercial-server = %{version}-%{release}
241+
Requires: mysql-commercial-server >= %{min}
240242
%else
241-
Requires: mysql-community-server = %{version}-%{release}
243+
Requires: mysql-community-server >= %{min}
242244
%endif
243245
Obsoletes: mariadb-bench
244246
Obsoletes: community-mysql-bench < %{version}-%{release}
@@ -257,10 +259,10 @@ Group: Applications/Databases
257259
Provides: MySQL-devel-advanced = %{version}-%{release}
258260
Obsoletes: MySQL-devel-advanced < %{version}-%{release}
259261
Obsoletes: mysql-community-devel < %{version}-%{release}
260-
Requires: mysql-commercial-libs = %{version}-%{release}
262+
Requires: mysql-commercial-libs >= %{min}
261263
%else
262264
Provides: MySQL-devel = %{version}-%{release}
263-
Requires: mysql-community-libs = %{version}-%{release}
265+
Requires: mysql-community-libs >= %{min}
264266
%endif
265267
Obsoletes: MySQL-devel < %{version}-%{release}
266268
Obsoletes: mysql-devel < %{version}-%{release}
@@ -281,10 +283,10 @@ Group: Applications/Databases
281283
Provides: MySQL-shared-advanced = %{version}-%{release}
282284
Obsoletes: MySQL-shared-advanced < %{version}-%{release}
283285
Obsoletes: mysql-community-libs < %{version}-%{release}
284-
Requires: mysql-commercial-common = %{version}-%{release}
286+
Requires: mysql-commercial-common >= %{min}
285287
%else
286288
Provides: MySQL-shared = %{version}-%{release}
287-
Requires: mysql-community-common = %{version}-%{release}
289+
Requires: mysql-community-common >= %{min}
288290
%endif
289291
Obsoletes: MySQL-shared < %{version}-%{release}
290292
Obsoletes: mysql-libs < %{version}-%{release}
@@ -307,10 +309,10 @@ Group: Applications/Databases
307309
Provides: MySQL-embedded-advanced = %{version}-%{release}
308310
Obsoletes: MySQL-embedded-advanced < %{version}-%{release}
309311
Obsoletes: mysql-community-embedded < %{version}-%{release}
310-
Requires: mysql-commercial-common = %{version}-%{release}
312+
Requires: mysql-commercial-common >= %{min}
311313
%else
312314
Provides: MySQL-embedded = %{version}-%{release}
313-
Requires: mysql-community-common = %{version}-%{release}
315+
Requires: mysql-community-common >= %{min}
314316
%endif
315317
Obsoletes: mariadb-embedded
316318
Obsoletes: MySQL-embedded < %{version}-%{release}
@@ -334,11 +336,11 @@ Summary: Development header files and libraries for MySQL as an embeddabl
334336
Group: Applications/Databases
335337
%if 0%{?commercial}
336338
Obsoletes: mysql-community-embedded-devel < %{version}-%{release}
337-
Requires: mysql-commercial-devel = %{version}-%{release}
338-
Requires: mysql-commercial-embedded = %{version}-%{release}
339+
Requires: mysql-commercial-devel >= %{min}
340+
Requires: mysql-commercial-embedded >= %{min}
339341
%else
340-
Requires: mysql-community-devel = %{version}-%{release}
341-
Requires: mysql-community-embedded = %{version}-%{release}
342+
Requires: mysql-community-devel >= %{min}
343+
Requires: mysql-community-embedded >= %{min}
342344
%endif
343345
Obsoletes: mariadb-embedded-devel
344346
Obsoletes: mysql-embedded-devel < %{version}-%{release}

0 commit comments

Comments
 (0)