[oe] [meta-oe][PATCH] mysql-python: fix compilation with MariaDB 10.3.13

Yu, Mingli mingli.yu at windriver.com
Fri Mar 8 03:44:58 UTC 2019


BTW, what's the patch version on your system?

On my system:
---------------------------------------------------------
$ patch --version
GNU patch 2.7.5
Copyright (C) 2003, 2009-2012 Free Software Foundation, Inc.
Copyright (C) 1988 Larry Wall

License GPLv3+: GNU GPL version 3 or later 
<http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Larry Wall and Paul Eggert
---------------------------------------------------------

Thanks,


On 2019年03月08日 10:50, Yu, Mingli wrote:
>
>
> On 2019年03月07日 23:29, Khem Raj wrote:
>> Applying patch
>> 0001-_mysql.c-fix-compilation-with-MariaDB-with-10.3.13.patch
>> patching file _mysql.c
>> Hunk #1 FAILED at 2002 (different line endings).
>> 1 out of 1 hunk FAILED -- saving rejects to file _mysql.c.rej
>
> Hi Khem,
>
> It's strange that I can't reproduce the Hunk issue as you mentioned
> while I pull the commit[5173929d7 mysql-python: fix compilation with
> MariaDB 10.3.13] from master-next.
>
> Does this issue still exist in your env?
>
> Thanks,
>
>>
>> On Wed, Mar 6, 2019 at 1:12 AM <mingli.yu at windriver.com> wrote:
>>>
>>> From: Mingli Yu <mingli.yu at windriver.com>
>>>
>>> Use standard API function MYSQL_OPT_RECONNECT
>>> instead of direct modification of internal structures
>>> which does not work for MariaDB to fix below compile
>>> issue.
>>> | _mysql.c: In function '_mysql_ConnectionObject_ping':
>>> | _mysql.c:2005:41: error: 'MYSQL' {aka 'struct st_mysql'} has no
>>> member named 'reconnect'
>>>
>>> Signed-off-by: Mingli Yu <mingli.yu at windriver.com>
>>> ---
>>>   ...ompilation-with-MariaDB-with-10.3.13.patch | 39 +++++++++++++++++++
>>>   .../recipes-dbs/mysql/mysql-python_1.2.5.bb   |  4 +-
>>>   2 files changed, 42 insertions(+), 1 deletion(-)
>>>   create mode 100644
>>> meta-oe/recipes-dbs/mysql/mysql-python/0001-_mysql.c-fix-compilation-with-MariaDB-with-10.3.13.patch
>>>
>>>
>>> diff --git
>>> a/meta-oe/recipes-dbs/mysql/mysql-python/0001-_mysql.c-fix-compilation-with-MariaDB-with-10.3.13.patch
>>> b/meta-oe/recipes-dbs/mysql/mysql-python/0001-_mysql.c-fix-compilation-with-MariaDB-with-10.3.13.patch
>>>
>>> new file mode 100644
>>> index 000000000..b816618c7
>>> --- /dev/null
>>> +++
>>> b/meta-oe/recipes-dbs/mysql/mysql-python/0001-_mysql.c-fix-compilation-with-MariaDB-with-10.3.13.patch
>>>
>>> @@ -0,0 +1,39 @@
>>> +From 45436592aa64308b2ab46f84c6107c6d7de0a3ec Mon Sep 17 00:00:00 2001
>>> +From: Mingli Yu <mingli.yu at windriver.com>
>>> +Date: Wed, 6 Mar 2019 00:16:17 -0800
>>> +Subject: [PATCH] _mysql.c: fix compilation with MariaDB 10.3.13
>>> +
>>> +Use standard API function MYSQL_OPT_RECONNECT
>>> +instead of direct modification of internal structures
>>> +which does not work for MariaDB.
>>> +
>>> +Upstream-Status: Pending
>>> +
>>> +Signed-off-by: Mingli Yu <mingli.yu at windriver.com>
>>> +---
>>> + _mysql.c | 9 ++++++++-
>>> + 1 file changed, 8 insertions(+), 1 deletion(-)
>>> +
>>> +diff --git a/_mysql.c b/_mysql.c
>>> +index f081346..2262e9e 100644
>>> +--- a/_mysql.c
>>> ++++ b/_mysql.c
>>> +@@ -2002,7 +2002,14 @@ _mysql_ConnectionObject_ping(
>>> +       int r, reconnect = -1;
>>> +       if (!PyArg_ParseTuple(args, "|I", &reconnect)) return NULL;
>>> +       check_connection(self);
>>> +-      if ( reconnect != -1 ) self->connection.reconnect = reconnect;
>>> ++      if ( reconnect != -1 ) {
>>> ++             #if MYSQL_VERSION_ID >= 50013
>>> ++               my_bool recon = reconnect;
>>> ++               mysql_options(&self->connection,
>>> MYSQL_OPT_RECONNECT, &recon);
>>> ++             #else
>>> ++                 self->connection.reconnect = reconnect;
>>> ++             #endif
>>> ++        }
>>> +       Py_BEGIN_ALLOW_THREADS
>>> +       r = mysql_ping(&(self->connection));
>>> +       Py_END_ALLOW_THREADS
>>> +--
>>> +2.17.1
>>> +
>>> diff --git a/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb
>>> b/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb
>>> index ac0df4f06..f2faec1c1 100644
>>> --- a/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb
>>> +++ b/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb
>>> @@ -8,7 +8,9 @@ DEPENDS = "mysql5"
>>>
>>>   SRCNAME = "MySQL-python"
>>>
>>> -SRC_URI =
>>> "https://pypi.python.org/packages/source/M/${SRCNAME}/${SRCNAME}-${PV}.zip"
>>>
>>> +SRC_URI =
>>> "https://pypi.python.org/packages/source/M/${SRCNAME}/${SRCNAME}-${PV}.zip
>>> \
>>> +
>>> file://0001-_mysql.c-fix-compilation-with-MariaDB-with-10.3.13.patch \
>>> +"
>>>   SRC_URI[md5sum] = "654f75b302db6ed8dc5a898c625e030c"
>>>   SRC_URI[sha256sum] =
>>> "811040b647e5d5686f84db415efd697e6250008b112b6909ba77ac059e140c74"
>>>
>>> --
>>> 2.17.1
>>>
>>


More information about the Openembedded-devel mailing list