On 03/18/2009 07:30 AM, Antony Dovgal wrote:
> Hello all.
> At the moment MySQL plugin process is overly complicated - in order to build a plugin
> one must perform the following actions:
> 1) fetch MySQL sources
> 2) run `./configure`
> 3) run `make`, as my_config.h is created by make, not ./configure.
> Patch #1 (mysql_my_config.h.diff) addresses this problem by eliminating step #3.
> Patch #2 (mysql_defines.h) fixes another problem: if MySQL server has been built with
> --with-debug option,
> it uses SAFE_MUTEX (and SAFEMALLOC for "full" debug), but these defines are nowhere
> to be found,
> hence one needs to add them manually in order to build a working plugin (there are no
> compile errors,
> just random runtime problems because of different structure size).
> The patch adds these defines to config.h (and my_config.h).
> Please review attached patches.
> You can also find them here:
I applied these two to some internals 5.1 and 6.0 trees, which percolate
into main trees soon. You should see those changes in the next releases
As for the follow-up patch to export all headers to "devel" packages,
I"m still thinking about it. Intuitively, I suspect some things we want
to keep private, but I don't have a list or rationale yet. Expect a
decision in a few days.