Stephen Leake <stephen_le...@stephe-leake.org> writes:

> I'm considering becoming the new Debian maintainer for gnade. I'm very

Thanks!

> You have suggested changing it to unversioned libmysqlclient. However,
> I think that is potentially dangerous.

The official package name *is* libmysqlclient-dev; there is no
libmysqlclient16-dev, even as a provided virtual package name.  I
suspect specifiying

    libmysqclient-dev (>= 5.1), libmysqlclient-dev (<< 5.2~) 

would have the desired effect, though.

> For a C program using libmysqlclient, the C compiler can detect an API
> function profile change. However, gnade is written in Ada, and has
> hand-written imports of the libmysqlclient functions. Thus changes are
> not automatically detected.

Oops, good point.  As I understand it, any backward-incompatible
changes were at the ABI level, and so should only have broken anything
that had to hardcode details of structure layouts and the like, a set
that unfortunately turns out to include gnade at present. :-/

> Both of these issues are major flaws in gnade. The first can be
> addressed by the latest versions of GNAT, which can generate Ada
> imports of C functions. The later can only be addressed by hard work
> :(.

Automatically picking up structure layout and call details from C
headers definitely sounds like the way to go.

> Is there a summary of the API changes?
> http://dev.mysql.com/doc/refman/5.1/en/news-5-1-x.html lists all the
> changes to MySQL; I'm working my way thru the list, but it's hard to
> be sure how that relates to the library API.

I'd just compare the headers to see how the relevant declarations
changed.

-- 
Aaron M. Ucko, KB1CJC (amu at alum.mit.edu, ucko at debian.org)
http://www.mit.edu/~amu/ | http://stuff.mit.edu/cgi/finger/?...@monk.mit.edu



-- 
To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to