mwild1 / luadbi

Multi-backend SQL database library for Lua
MIT License
41 stars 15 forks source link

Unbreak building against MariaDB 5.5 #77

Closed robert-scheck closed 7 months ago

robert-scheck commented 7 months ago

As mentioned in the compilation notes of MySQL 8.0.1, my_bool was removed.

However, building LuaDBI 0.7.3 against MariaDB 5.5 on CentOS 7 fails like this:

In file included from dbd/mysql/statement.c:1:0:
dbd/mysql/statement.c: In function 'statement_execute': dbd/mysql/dbd_mysql.h:13:17: error: 'bool' undeclared (first use in this function)
 #define my_bool bool
                 ^
dbd/mysql/statement.c:230:23: note: in expansion of macro 'my_bool'
    bind[i].is_null = (my_bool*)0;
                       ^
dbd/mysql/dbd_mysql.h:13:17: note: each undeclared identifier is reported only once for each function it appears in
 #define my_bool bool
                 ^
dbd/mysql/statement.c:230:23: note: in expansion of macro 'my_bool'
    bind[i].is_null = (my_bool*)0;
                       ^
dbd/mysql/statement.c:230:31: error: expected expression before ')' token
    bind[i].is_null = (my_bool*)0;
                               ^
dbd/mysql/statement.c:258:31: error: expected expression before ')' token
    bind[i].is_null = (my_bool*)0;
                               ^
dbd/mysql/statement.c:269:31: error: expected expression before ')' token
    bind[i].is_null = (my_bool*)0;
                               ^

Suggested code change (tested on Fedora and EPEL for CentOS/RHEL/Rocky Linux against MariaDB 5.5 and MariaDB Connector/C) is the same like at: