summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2018-11-29 12:42:09 +0100
committerLudovic Courtès <ludo@gnu.org>2018-11-29 12:42:09 +0100
commit994b5b1d01b6592bf2531e801ce3de0a4a8189bf (patch)
tree2f9e87bba71f36367ea4ece6c9a3e34d566e066c
parent892307aed55c5062841e9defa19d7299c8844be5 (diff)
downloadguix-994b5b1d01b6592bf2531e801ce3de0a4a8189bf.tar.gz
gnu: libbonobo: Build sequentially.
See
<https://berlin.guixsd.org/log/5mr1fyac5kyz41zwmnf4b0wm7vl42ryv-libbonobo-2.32.1>
for an example of a parallel build failure:

    CCLD   echo-client-2
    CCLD   bonobo-echo-2
  ld: libEcho.a(Bonobo_Sample_Echo-stubs.o): in function `Bonobo_Sample_Echo_echo':
  /tmp/guix-build-libbonobo-2.32.1.drv-0/libbonobo-2.32.1/samples/echo/Bonobo_Sample_Echo-stubs.c:12: undefined reference to `Bonobo_Sample_Echo__iinterface'
  ld: /tmp/guix-build-libbonobo-2.32.1.drv-0/libbonobo-2.32.1/samples/echo/Bonobo_Sample_Echo-stubs.c:12: undefined reference to `Bonobo_Sample_Echo__classid'
  ld: /tmp/guix-build-libbonobo-2.32.1.drv-0/libbonobo-2.32.1/samples/echo/Bonobo_Sample_Echo-stubs.c:12: undefined reference to `_ORBIT_skel_small_Bonobo_Sample_Echo_echo'
  collect2: error: ld returned 1 exit status
  make[3]: *** [Makefile:488: echo-client-2] Error 1

* gnu/packages/gnome.scm (libbonobo)[arguments]: Add #:parallel-build?.
-rw-r--r--gnu/packages/gnome.scm9
1 files changed, 8 insertions, 1 deletions
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index cbd9afbd30..b497b965bc 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -1376,7 +1376,14 @@ featuring mature C, C++ and Python bindings.")
            (lambda _
              (substitute* "activation-server/Makefile.in"
                (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))
-             #t)))))
+             #t)))
+
+       ;; There's apparently a race condition between the server stub
+       ;; generation and linking of the example under 'samples/echo' that can
+       ;; lead do undefined references when building in parallel, as reported
+       ;; at <https://forums.gentoo.org/viewtopic-t-223376-start-550.html>.
+       ;; Thus, disable parallel builds.
+       #:parallel-build? #f))
     (inputs `(("popt" ,popt)
               ("libxml2" ,libxml2)))
     ;; The following are Required by the .pc file