~ruther/guix-local

93006671b42a702bc0c663eea3968a377eb65c94 — Maxim Cournoyer 1 year, 10 months ago fb3e1ab
gnu: soci: Apply patch to resolve a bug in liblinphone.

* gnu/packages/patches/soci-mysql-ddl-types.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/databases.scm (soci) [source]: Apply it.

Change-Id: I3840850c650d614f65ee398f948cea6206b03641
Fixes: https://issues.guix.gnu.org/47641
3 files changed, 18 insertions(+), 1 deletions(-)

M gnu/local.mk
M gnu/packages/databases.scm
A gnu/packages/patches/soci-mysql-ddl-types.patch
M gnu/local.mk => gnu/local.mk +1 -0
@@ 2080,6 2080,7 @@ dist_patch_DATA =						\
  %D%/packages/patches/sdl-pango-matrix_declarations.patch	\
  %D%/packages/patches/sdl-pango-sans-serif.patch		\
  %D%/packages/patches/smalltalk-multiplication-overflow.patch	\
  %D%/packages/patches/soci-mysql-ddl-types.patch		\
  %D%/packages/patches/sqlite-hurd.patch			\
  %D%/packages/patches/strace-readlink-tests.patch		\
  %D%/packages/patches/sunxi-tools-remove-sys-io.patch	\

M gnu/packages/databases.scm => gnu/packages/databases.scm +2 -1
@@ 5803,7 5803,8 @@ The drivers officially supported by @code{libdbi} are:
              (file-name (git-file-name name version))
              (sha256
               (base32
                "12aq7pama96l2c1kmfkclb4bvrsxs9a8ppgk5gmzw45w2lg35i0y"))))
                "12aq7pama96l2c1kmfkclb4bvrsxs9a8ppgk5gmzw45w2lg35i0y"))
              (patches (search-patches "soci-mysql-ddl-types.patch"))))
    (build-system cmake-build-system)
    (propagated-inputs
     ;; Headers of soci has include-references to headers of these inputs.

A gnu/packages/patches/soci-mysql-ddl-types.patch => gnu/packages/patches/soci-mysql-ddl-types.patch +15 -0
@@ 0,0 1,15 @@
Description: Add two unusual column type entries to make liblinphone work
Author: Dennis Filder <d.filder@web.de>
Bug-Debian: https://bugs.debian.org/984534
Last-Update: 2021-03-10
--- a/src/backends/sqlite3/statement.cpp
+++ b/src/backends/sqlite3/statement.cpp
@@ -440,6 +440,8 @@
     m["mediumint"]          = dt_integer;
     m["smallint"]           = dt_integer;
     m["tinyint"]            = dt_integer;
+    m["tinyintunsigned"]    = dt_integer;
+    m["intunsigned"]        = dt_integer;
 
     // dt_long_long
     m["bigint"]             = dt_long_long;