89
|
|
Move libmysqlclient.so from the shared package to the devel package
This commit is part of a series of fixes in all the branches of Percona-Server and Percona-XtraDB-Cluster, for which the goal is to stop including libmysqlclient.so and libmysqlclient_r.so in the shared packages and include it in the devel package.
Also, for rhel5, have the shared package obsolete mysql, which is the package containing the libmysqlclient.so.15 library in the distribution.
Rationale: Following the model of the upstream (MySQL) packages, a copy of the versioned library -- libmysqlclient.so.15 for 5.0, libmysqlclient.so.16 for 51 and libmysqlclient.so.18 for 5.5 -- was included in the shared package with name libmysqlclient.so.
This creates the problem of making the library packages not compatible to each other, making it impossible to have PS-shared-51 and PS-shared-55 installed at the same time, for example. Upstream solved this problem by providing a shared-compat package (which we also include), containing all the older versions of the libraries.
This solution is acceptable for manual installation, however it doesn't play good with our repositories. Since we include all of our software in the same repository, there are many combinations possible that you can choose. As long as the user stuck to a particular version, this wouldn't cause trouble -- but it's impossible to avoid when installing a package that depends on a particular libmysqlclient.so version, like php-mysql, or percona-toolkit (indirectly via perl-DBD-mysql). In rhel6, these packages depend on the 5.1 version of the library, so if Percona-Server-5.5 was installed, the shared package for the 5.1 version got selected by yum but it would conflict at the file level on libmysqlclient.so. In rhel5 the situation would be even worse, since these packages depend on the 5.0 version of the library, making 5.1 and 5.5 difficult to install unless the user would select specifically Percona-Server-shared-compat. Having 5.1 or 5.5 depend directly on PS-shared-compat only introduced further problems.
The solution proposed hereby is to follow the model of the distributions, and have the packages not install libmysqlclient.so, but only the versioned libraries. The distro packages are prepared to link against the versioned libraries only, so not having the unversioned libraries should not be a problem for installing packages. The unversiones libraries are installed in the -devel packages, since these are needed for linking new programs against it.
This way, PS 5.1, PS 5.5 and PXC can be installed alonside the shared package for 5.0 (Percona-SQL-shared-50) in rhel5 and 5.1 (Percona-Server-shared-51) in rhel6, allowing for any combination of software and seamless installs of percona-toolkit or any other package that would depend on a specific package.
|
Ignacio Nin |
11 years ago
|
|
|
88
|
|
|
Ignacio Nin |
11 years ago
|
|
|
87
|
|
|
Ignacio Nin |
13 years ago
|
|
|
86
|
|
|
Ignacio Nin |
13 years ago
|
|
|
85
|
|
|
Ignacio Nin |
13 years ago
|
|
|
84
|
|
|
Ignacio Nin |
13 years ago
|
|
|
83
|
|
|
Oleg Tsarev |
13 years ago
|
|
|
82
|
|
|
Ignacio Nin |
13 years ago
|
|
|
81
|
|
|
Ignacio Nin |
13 years ago
|
|
|
80
|
|
|
Ignacio Nin |
13 years ago
|
|
|
79
|
|
|
Ignacio Nin |
13 years ago
|
|
|
78
|
|
|
Ignacio Nin |
13 years ago
|
|
|
77
|
|
|
Oleg Tsarev |
13 years ago
|
|
|
76
|
|
|
Oleg Tsarev |
13 years ago
|
|
|
75
|
|
|
Oleg Tsarev |
13 years ago
|
|
|
74
|
|
|
Oleg Tsarev |
13 years ago
|
|
|
73
|
|
|
Aleksandr Kuzminsky |
13 years ago
|
|
|
72
|
|
|
Aleksandr Kuzminsky |
13 years ago
|
|
|
71
|
|
|
Aleksandr Kuzminsky |
13 years ago
|
|
|
70
|
|
|
Aleksandr Kuzminsky |
13 years ago
|
|
|