app-office/libreoffice: Fix build with >=dev-db/mysql-connector-c-8
authorAndreas Sturmlechner <asturm@gentoo.org>
Fri, 18 Oct 2019 23:47:47 +0000 (01:47 +0200)
committerAndreas Sturmlechner <asturm@gentoo.org>
Fri, 18 Oct 2019 23:59:05 +0000 (01:59 +0200)
Thanks-to: Peter Levine <plevine457@gmail.com>
Closes: https://bugs.gentoo.org/692422
Package-Manager: Portage-2.3.77, Repoman-2.3.17
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
app-office/libreoffice/files/libreoffice-6.3.2.2-mysql-connector-c-8.patch [new file with mode: 0644]
app-office/libreoffice/libreoffice-6.3.2.2.ebuild
app-office/libreoffice/libreoffice-6.3.9999.ebuild

diff --git a/app-office/libreoffice/files/libreoffice-6.3.2.2-mysql-connector-c-8.patch b/app-office/libreoffice/files/libreoffice-6.3.2.2-mysql-connector-c-8.patch
new file mode 100644 (file)
index 0000000..677ba39
--- /dev/null
@@ -0,0 +1,45 @@
+From 5917ba8bc645a2b105ec089101b8a664481b5b61 Mon Sep 17 00:00:00 2001
+From: Peter Levine <plevine457@gmail.com>
+Date: Thu, 17 Oct 2019 23:08:57 -0400
+Subject: Fix building against MySQL Connector/C 8
+
+In MySQL Connector/C 8, my_bool is replaced by bool. It was
+previously defined as char. When building against
+MySQL Connector/C 8, this leads to type punning build errors.
+Redefine affected members of struct BindMetaData as bool if using
+version 8 of greater. Otherwise, default to char.
+
+Change-Id: If12b975d95afae86502867cb334cb4195802f91d
+Reviewed-on: https://gerrit.libreoffice.org/81002
+Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
+Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
+---
+ .../source/drivers/mysqlc/mysqlc_preparedstatement.hxx         | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/connectivity/source/drivers/mysqlc/mysqlc_preparedstatement.hxx b/connectivity/source/drivers/mysqlc/mysqlc_preparedstatement.hxx
+index 1df2c70..3450473 100644
+--- a/connectivity/source/drivers/mysqlc/mysqlc_preparedstatement.hxx
++++ b/connectivity/source/drivers/mysqlc/mysqlc_preparedstatement.hxx
+@@ -39,11 +39,17 @@ using ::com::sun::star::uno::Reference;
+ using ::com::sun::star::uno::RuntimeException;
+ using ::com::sun::star::uno::Type;
++#if defined MYSQL_VERSION_ID && (MYSQL_VERSION_ID >= 80000)
++using my_bool = bool;
++#else
++using my_bool = char;
++#endif
++
+ struct BindMetaData
+ {
+-    char is_null = 0;
++    my_bool is_null = 0;
+     unsigned long length = 0;
+-    char error = 0;
++    my_bool error = 0;
+ };
+ typedef ::cppu::ImplHelper5<css::sdbc::XPreparedStatement, css::sdbc::XParameters,
+-- 
+cgit v1.1
index 6d7145dfa9322681bb478e0884c093bf77f30428..0233e28a4fb1cfed88703dff58a124f53cc0b3ba 100644 (file)
@@ -250,6 +250,9 @@ PATCHES=(
        "${FILESDIR}/${PN}-5.4-system-pyuno.patch"
        "${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch"
        "${FILESDIR}/${PN}-6.1-nomancompress.patch"
+
+       # master branch
+       "${FILESDIR}/${P}-mysql-connector-c-8.patch" # bug #692422
 )
 
 S="${WORKDIR}/${PN}-${MY_PV}"
index 6d7145dfa9322681bb478e0884c093bf77f30428..f66047b35ff3de9384bb67ad7be8fc4c845357e0 100644 (file)
@@ -250,6 +250,9 @@ PATCHES=(
        "${FILESDIR}/${PN}-5.4-system-pyuno.patch"
        "${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch"
        "${FILESDIR}/${PN}-6.1-nomancompress.patch"
+
+       # master branch
+       "${FILESDIR}/${PN}-6.3.2.2-mysql-connector-c-8.patch" # bug #692422
 )
 
 S="${WORKDIR}/${PN}-${MY_PV}"