guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#50392] [PATCH core-updates-frozen] gnu: libappindicator: Fix build


From: Sarah Morgensen
Subject: [bug#50392] [PATCH core-updates-frozen] gnu: libappindicator: Fix build for GCC 10.
Date: Sat, 4 Sep 2021 21:36:53 -0700

* gnu/packages/freedesktop.scm (libappindicator): Add snippet to prevent
declaring _PyGObject_API twice.
---
I'm not entirely sure this is the correct fix (I have no expertise with
pygobject), but after reading pygobject.h it's my best guess.

(I'm not sure if adding -fcommon to CFLAGS would cause issues with
dependents not using -fcommon, since this is a library.)

I've tested this to build on x86_64.

 gnu/packages/freedesktop.scm | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index a7766edf04..f7972695e5 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -24,6 +24,7 @@
 ;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
 ;;; Copyright © 2021 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2021 pineapples <guixuser6392@protonmail.com>
+;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2210,6 +2211,13 @@ useful with system integration.")
              "https://launchpad.net/libappindicator/";
              (version-major+minor version) "/" version
              "/+download/libappindicator-" version ".tar.gz"))
+       (modules '((guix build utils)))
+       (snippet
+        '(begin
+           ;; Fix 'multiple definitions' error from GCC 10
+           (substitute* "bindings/python/appindicatormodule.c"
+             (("^#include <pygobject.h>" all)
+              (string-append "#define NO_IMPORT_PYGOBJECT\n" all)))))
        (sha256
         (base32
          "17xlqd60v0zllrxp8bgq3k5a1jkj0svkqn8rzllcyjh8k0gpr46m"))))

base-commit: 68dd6d809398297dc2ebef522186c9b9f2566739
-- 
2.32.0






reply via email to

[Prev in Thread] Current Thread [Next in Thread]