summary refs log tree commit diff
path: root/gnu/packages/databases.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2018-07-28 11:00:49 +0200
committerLudovic Courtès <ludo@gnu.org>2018-07-28 15:08:07 +0200
commit5193ae64ca0c3322364163d356a6d69173c3d233 (patch)
tree867d7d12c1e48ce441db5dbf97e9343018e12b34 /gnu/packages/databases.scm
parent346a632144b89f45b3966732edacc2bfa07126a7 (diff)
downloadguix-5193ae64ca0c3322364163d356a6d69173c3d233.tar.gz
gnu: mariadb: Work around GCC ICE on armhf-linux.
* gnu/packages/patches/mariadb-gcc-ice.patch: New file.
* gnu/packages/databases.scm (mariadb)[arguments]: Conditionally add
'apply-patch' phase.
[native-inputs]: Conditionally add "gcc-ice-patch" input.
Diffstat (limited to 'gnu/packages/databases.scm')
-rw-r--r--gnu/packages/databases.scm19
1 files changed, 17 insertions, 2 deletions
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 382c74cfd9..1433ca59c6 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -638,7 +638,7 @@ Language.")
                 "0bax748j4srsyhw5cs5jvwigndh0zwmf4r2cjvhja31ckx8jqccl"))))
     (build-system cmake-build-system)
     (arguments
-     '(#:configure-flags
+     `(#:configure-flags
        '("-DBUILD_CONFIG=mysql_release"
          ;; Linking with libarchive fails, like this:
 
@@ -665,6 +665,18 @@ Language.")
          "-DINSTALL_SHAREDIR=share/mysql")
        #:phases
        (modify-phases %standard-phases
+
+         ;; Apply this patch that's only needed on ARM.
+         ,@(if (and (not (%current-target-system))
+                    (string=? "armhf-linux" (%current-system)))
+               `((add-after 'unpack 'apply-patch
+                   (lambda* (#:key inputs #:allow-other-keys)
+                     (let ((patch (assoc-ref inputs "gcc-ice-patch")))
+                       (invoke "patch" "-p1" "--force"
+                               "--input" patch)
+                       #t))))
+               '())
+
          (add-before
           'configure 'pre-configure
           (lambda _
@@ -686,7 +698,10 @@ Language.")
               #t))))))
     (native-inputs
      `(("bison" ,bison)
-       ("perl" ,perl)))
+       ("perl" ,perl)
+       ,@(if (string=? "armhf-linux" (%current-system))
+             `(("gcc-ice-patch" ,(search-patch "mariadb-gcc-ice.patch")))
+             '())))
     (inputs
      `(("jemalloc" ,jemalloc)
        ("libaio" ,libaio)