~ruther/guix-local

825275d7838653b2078b1fe8a8b92d3552b6d869 — Janneke Nieuwenhuizen 1 year, 3 months ago beb40d8
gnu: caribou: Fix build with gcc-14.

* gnu/packages/gnome.scm (caribou)[arguments]: Use G-Expressions.  Add CFLAGS
to #:configure-flags to relax gcc-14's strictness.

Change-Id: I78bf5b03029112aa17977b2947e5446e90150f11
Modified-by: Zheng Junjie <z572@z572.online>
1 files changed, 18 insertions(+), 18 deletions(-)

M gnu/packages/gnome.scm
M gnu/packages/gnome.scm => gnu/packages/gnome.scm +18 -18
@@ 8489,31 8489,31 @@ Evolution (hence the name), but is now used by other packages as well.")
                "0mfychh1q3dx0b96pjz9a9y112bm9yqyim40yykzxx1hppsdjhww"))))
    (build-system glib-or-gtk-build-system)
    (arguments
     '(#:phases
       (modify-phases %standard-phases
         (add-before
          'build 'pre-build
          (lambda* (#:key outputs #:allow-other-keys)
            (let ((out (assoc-ref outputs "out")))
              ;; Use absolute shared library path in Caribou-1.0.typelib.
              (substitute* "libcaribou/Makefile"
                (("--shared-library=libcaribou.so")
                 (string-append "--shared-library="
                                out "/lib/libcaribou.so")))
              #t)))
     (list
      #:configure-flags
      ;; Relax gcc-14's strictness.
      #~(list "CFLAGS=-g -O2 -Wno-error=incompatible-pointer-types")
      #:phases
       #~(modify-phases %standard-phases
           (add-before
               'build 'pre-build
             (lambda _
               ;; Use absolute shared library path in Caribou-1.0.typelib.
               (substitute* "libcaribou/Makefile"
                 (("--shared-library=libcaribou.so")
                  (string-append "--shared-library="
                                 #$output "/lib/libcaribou.so")))))
         (add-after 'install 'wrap-programs
          (lambda* (#:key outputs #:allow-other-keys)
            (let* ((out (assoc-ref outputs "out"))
                   (python-path (getenv "GUIX_PYTHONPATH"))
                   (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
            (let ((python-path (getenv "GUIX_PYTHONPATH"))
                  (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
              (for-each
               (lambda (prog)
                 (wrap-program prog
                   `("GUIX_PYTHONPATH"      ":" prefix (,python-path))
                   `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
               (list (string-append out "/bin/caribou-preferences")
                     (string-append out "/libexec/antler-keyboard"))))
            #t)))))
               (list (string-append #$output "/bin/caribou-preferences")
                     (string-append #$output "/libexec/antler-keyboard")))))))))
    (native-inputs
     `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
       ("gobject-introspection" ,gobject-introspection)