Bug#702280: libmariadbclient complicates this beyond reasonable levels

Clint Byrum spamaps at debian.org
Fri Aug 30 19:51:02 UTC 2013


I just wanted to weigh in on this, as I don't think it is obvious how
difficult doing this will be.

First, you simply cannot build-depend on them both. They conflict,
and must conflict, because MariaDB has chosen to erroneously usurp
the name libmysqlclient with their backward-but-not-forward compatible
library. They simply cannot exist together.

MariaDB's version contains symbols that MySQL's does not. I would argue
that this makes it a different library. The appropriate thing to do is to
rename it to libmariadbclient.  This will allow programs which want to use
its new functionality to actually make use of its new functionality. And
if there is a need for building twice, it can be done with two builds,
one using -lmariadbclient, and one using -lmysqlclient.

Further, there is simply no reason to have a flexible dependency, but
there are plenty of reasons for versioned dependencies based on symbols,
which we get right now because of dh_shlibdeps.

For basically no gain, trying to do a flexible dependency will complicate
packagers' lives. Let people use libmysqlclient if they want, or
libmariadbclient if they need.

For this case, I'd say that mariadb can likely work fine with
libdbd-mysql-perl as-is. If not, please explain why.



More information about the pkg-perl-maintainers mailing list