On 17.12.2011 15:23, Funda Wang wrote: > 2011/12/17 Maarten Vanraes <[email protected]>: >> ah, didn't see that one... i've put the mklibnames in variables and >> resubmitted. >> >> perhaps this can be documented somewhere(.spec file policy), or even better, >> fixed? > %mklibname takes a lot of parameters, so: > > Requires: %mklibname mysql %{major} = %{version}-%{release} > > will let %mklibname think its parameters are: > %1: mysql > %2: %{major} > %3: = > %4: %{version}-%{release} > > After parsing, %mklibname only recognize the first three paramerters, > and put an underscore between %2 and %3. so it becomes: > > %{_lib}mysql%{major}_= > > And, %4(%{version}-%{release}) will be throw away. > >> PS: I provided the exact provides as mysql, just to be sure that there is no >> mageia (or otherwise 3rd party package) could be having troubles finding the >> correct packages. > As mariadb is a binary replacement for mysql, why not just named the > libs as %{_lib}mysql18 and %{_lib}mysqld18, which is more accurate > than %{_lib}mariadb18. Almost all the packages are using binary > dependencies (libmysqlclient.so.18) rather than rpm name dependencies, > which is more nature than package name, and more reliable.
+1 for not naming it as libmariadb18 if it actually contains libmysqlclient.so.18. Even better, just make it libmysqlclient18 for consistency. > Personally, I don't think libmysqld18 (now it is named > libmariadb-embedded18) should have any relationship with libmysqld0. > They have different libmajor, which means all the packages depending > on libmysqld0 should be recompiled. So basically, they are different > libs actually. Adding symbolic link won't provide any help, either. +1 for removal of symlink, and +1 for rename to libmysqld18. -- Anssi Hannula
