Bug 92036 - Parallel build failure when compiling tests
Summary: Parallel build failure when compiling tests
Status: RESOLVED FIXED
Alias: None
Product: xdg-app
Classification: Unclassified
Component: General (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Alexander Larsson
QA Contact: Alexander Larsson
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-09-17 21:56 UTC by David King
Modified: 2015-09-18 12:17 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
proposed patch (882 bytes, patch)
2015-09-17 21:58 UTC, David King
Details | Splinter Review

Description David King 2015-09-17 21:56:41 UTC
When compiling the tests with multiple make jobs (in a rpmbuild/mock environment), linking with libxdgapp.la often fails: https://kojipkgs.fedoraproject.org//work/tasks/8373/11128373/build.log

/bin/sh ./libtool  --tag=CC   --mode=link gcc  -pthread -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include  "-I./libglnx" -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -avoid-version -Bsymbolic-functions -export-symbols-regex "^glnx_" -no-undefined -export-dynamic  -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -o libglnx.la  ./libglnx/libglnx_la-glnx-backports.lo ./libglnx/libglnx_la-glnx-local-alloc.lo ./libglnx/libglnx_la-glnx-errors.lo ./libglnx/libglnx_la-glnx-console.lo ./libglnx/libglnx_la-glnx-dirfd.lo ./libglnx/libglnx_la-glnx-fdio.lo ./libglnx/libglnx_la-glnx-lockfile.lo ./libglnx/libglnx_la-glnx-libcontainer.lo ./libglnx/libglnx_la-glnx-xattrs.lo ./libglnx/libglnx_la-glnx-shutil.lo  -lgio-2.0 -lgobject-2.0 -lglib-2.0  
libtool: link: ar cru .libs/libglnx.a ./libglnx/.libs/libglnx_la-glnx-backports.o ./libglnx/.libs/libglnx_la-glnx-local-alloc.o ./libglnx/.libs/libglnx_la-glnx-errors.o ./libglnx/.libs/libglnx_la-glnx-console.o ./libglnx/.libs/libglnx_la-glnx-dirfd.o ./libglnx/.libs/libglnx_la-glnx-fdio.o ./libglnx/.libs/libglnx_la-glnx-lockfile.o ./libglnx/.libs/libglnx_la-glnx-libcontainer.o ./libglnx/.libs/libglnx_la-glnx-xattrs.o ./libglnx/.libs/libglnx_la-glnx-shutil.o 
libtool: link: ranlib .libs/libglnx.a
libtool: link: ( cd ".libs" && rm -f "libglnx.la" && ln -s "../libglnx.la" "libglnx.la" )
/bin/sh ./libtool  --tag=CC   --mode=link gcc  -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic  -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -o xdg-app-helper lib/xdg_app_helper-xdg-app-helper.o -lseccomp  
/bin/sh ./libtool  --tag=CC   --mode=link gcc -pthread -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include  -DTEST_SERVICES=\""/builddir/build/BUILD/xdg-app-0.4.0/tests/services"\" -DDOC_PORTAL=\""/builddir/build/BUILD/xdg-app-0.4.0/xdg-document-portal"\" -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic  -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -o test-doc-portal tests/test_doc_portal-test-doc-portal.o document-portal/test_doc_portal-xdp-dbus.o -lgio-2.0 -lgobject-2.0 -lglib-2.0  -lgsystem -lostree-1 -lgio-2.0 -lgobject-2.0 -lglib-2.0  libglnx.la libxdgapp.la  
/bin/sh ./libtool  --tag=CC   --mode=link gcc  -pthread -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include  -pthread -I/usr/include/libgsystem -I/usr/include/ostree-1 -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include  -pthread -I/usr/include/libsoup-2.4 -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include  -I./dbus-proxy -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic  -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -o libxdgapp.la  lib/libxdgapp_la-xdg-app-dir.lo lib/libxdgapp_la-xdg-app-run.lo lib/libxdgapp_la-xdg-app-error.lo lib/libxdgapp_la-xdg-app-utils.lo lib/libxdgapp_la-xdg-app-chain-input-stream.lo lib/gvdb/libxdgapp_la-gvdb-reader.lo lib/gvdb/libxdgapp_la-gvdb-builder.lo lib/libxdgapp_la-xdg-app-db.lo lib/libxdgapp_la-xdg-app-dbus.lo lib/libxdgapp_la-xdg-app-systemd-dbus.lo  libglnx.la -lgio-2.0 -lgobject-2.0 -lglib-2.0  -lgsystem -lostree-1 -lgio-2.0 -lgobject-2.0 -lglib-2.0  -lsoup-2.4 -lgio-2.0 -lgobject-2.0 -lglib-2.0  
libtool: link: gcc -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -Wl,-z -Wl,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -o xdg-app-helper lib/xdg_app_helper-xdg-app-helper.o  -lseccomp
libtool: link: cannot find the library `libxdgapp.la' or unhandled argument `libxdgapp.la'
Makefile:1200: recipe for target 'test-doc-portal' failed
make[2]: *** [test-doc-portal] Error 1
make[2]: *** Waiting for unfinished jobs....
libtool: link: (cd .libs/libxdgapp.lax/libglnx.a && ar x "/builddir/build/BUILD/xdg-app-0.4.0/./.libs/libglnx.a")
libtool: link: ar cru .libs/libxdgapp.a lib/.libs/libxdgapp_la-xdg-app-dir.o lib/.libs/libxdgapp_la-xdg-app-run.o lib/.libs/libxdgapp_la-xdg-app-error.o lib/.libs/libxdgapp_la-xdg-app-utils.o lib/.libs/libxdgapp_la-xdg-app-chain-input-stream.o lib/gvdb/.libs/libxdgapp_la-gvdb-reader.o lib/gvdb/.libs/libxdgapp_la-gvdb-builder.o lib/.libs/libxdgapp_la-xdg-app-db.o lib/.libs/libxdgapp_la-xdg-app-dbus.o lib/.libs/libxdgapp_la-xdg-app-systemd-dbus.o   .libs/libxdgapp.lax/libglnx.a/libglnx_la-glnx-backports.o .libs/libxdgapp.lax/libglnx.a/libglnx_la-glnx-console.o .libs/libxdgapp.lax/libglnx.a/libglnx_la-glnx-dirfd.o .libs/libxdgapp.lax/libglnx.a/libglnx_la-glnx-errors.o .libs/libxdgapp.lax/libglnx.a/libglnx_la-glnx-fdio.o .libs/libxdgapp.lax/libglnx.a/libglnx_la-glnx-libcontainer.o .libs/libxdgapp.lax/libglnx.a/libglnx_la-glnx-local-alloc.o .libs/libxdgapp.lax/libglnx.a/libglnx_la-glnx-lockfile.o .libs/libxdgapp.lax/libglnx.a/libglnx_la-glnx-shutil.o .libs/libxdgapp.lax/libglnx.a/libglnx_la-glnx-xattrs.o 
libtool: link: ranlib .libs/libxdgapp.a
libtool: link: rm -fr .libs/libxdgapp.lax
libtool: link: ( cd ".libs" && rm -f "libxdgapp.la" && ln -s "../libxdgapp.la" "libxdgapp.la" )
make[2]: Leaving directory '/builddir/build/BUILD/xdg-app-0.4.0'
Makefile:2153: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/builddir/build/BUILD/xdg-app-0.4.0'
Makefile:946: recipe for target 'all' failed
make: *** [all] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.tBW2WN (%build)
RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.tBW2WN (%build)
Child return code was: 1
EXCEPTION: Command failed. See logs for output.
 # bash --login -c /usr/bin/rpmbuild -bb --target x86_64 --nodeps  /builddir/build/SPECS/xdg-app.spec 
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/mockbuild/trace_decorator.py", line 84, in trace
    result = func(*args, **kw)
  File "/usr/lib/python2.7/site-packages/mockbuild/util.py", line 493, in do
    raise exception.Error("Command failed. See logs for output.\n # %s" % (command,), child.returncode)
Error: Command failed. See logs for output.
 # bash --login -c /usr/bin/rpmbuild -bb --target x86_64 --nodeps  /builddir/build/SPECS/xdg-app.spec 
LEAVE do --> EXCEPTION RAISED
Comment 1 David King 2015-09-17 21:58:41 UTC
Created attachment 118336 [details] [review]
proposed patch

Works around the build failure for me.
Comment 2 Alexander Larsson 2015-09-18 12:17:40 UTC
Seems good to me. pushed.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.