Package: qt-x11-free Version: 3.3.8b-5 Severity: important Tags: patch Fails to build from source on parallel build (dpkg-buildpackage -j2) due to a race condition in debian/rules.
The first hunk fixes that, the rest fixes improper use of "make" that discards make flags, making -j parameter useless. -- System Information: Debian Release: lenny/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 2.6.18-6-amd64 (SMP w/2 CPU cores) Locale: LANG=ca_AD.UTF-8, LC_CTYPE=ca_AD.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash
diff -ur qt-x11-free-3.3.8b/debian/rules qt-x11-free-3.3.8b.new/debian/rules --- qt-x11-free-3.3.8b/debian/rules 2008-04-09 20:08:24.000000000 +0200 +++ qt-x11-free-3.3.8b.new/debian/rules 2008-04-09 20:48:24.000000000 +0200 @@ -109,11 +109,11 @@ CONFIGURE_OPTS += -DQT_QLOCALE_USES_FCVT endif -build: $(QUILT_STAMPFN) libqt-thread-stamp +build: libqt-thread-stamp touch build-stamp -libqt-thread-stamp: +libqt-thread-stamp: $(QUILT_STAMPFN) @echo "QTDIR is ${QTDIR}" @@ -127,10 +127,10 @@ ln -s ../src/inputmethod/qinputcontextplugin.h include/qinputcontextplugin.h # proceed - make sub-src sub-plugins sub-tools - make -C src INSTALL_ROOT=$(TMP_INSTALL) install_target - make INSTALL_ROOT=$(TMP_INSTALL) install - make INSTALL_ROOT=$(TMP_INSTALL) plugins-install + $(MAKE) sub-src sub-plugins sub-tools + $(MAKE) -C src INSTALL_ROOT=$(TMP_INSTALL) install_target + $(MAKE) INSTALL_ROOT=$(TMP_INSTALL) install + $(MAKE) INSTALL_ROOT=$(TMP_INSTALL) plugins-install # archives get accidentally stripped by make install. Copy over unstripped ones for now. cp lib/lib*.a $(TMP_INSTALL)/usr/lib/ @@ -140,11 +140,11 @@ cp bin/findtr $(TMP_INSTALL)/usr/bin/ # build conv2ui - cd tools/designer/tools/conv2ui && make + cd tools/designer/tools/conv2ui && $(MAKE) cp bin/conv2ui $(TMP_INSTALL)/usr/bin/conv2ui # build qvfb - cd tools/qvfb/ && make + cd tools/qvfb/ && $(MAKE) cp tools/qvfb/qvfb $(TMP_INSTALL)/usr/bin/qvfb # install qmake.cache file @@ -172,12 +172,12 @@ -chmod a-x doc/html/layout?.png if [ -f "src/Makefile" ]; then \ - make -C src clean; make -C plugins/src distclean; make -C tools distclean; \ - make -C tools/makeqpf distclean; make -C tools/qconfig distclean; make -C tools/qvfb distclean; \ - make -C tools/msg2qm distclean; make -C tools/mergetr distclean; make -C tools/qembed distclean; \ - make -C tools/designer/tools/conv2ui distclean; make -C tools/designer/tools/createcw distclean; \ - make -C tools/designer/plugins/glade distclean; make -C tools/designer/plugins/qglwidget distclean; \ - make -C config.tests/unix/largefile distclean; make -C qmake distclean; \ + $(MAKE) -C src clean; $(MAKE) -C plugins/src distclean; $(MAKE) -C tools distclean; \ + $(MAKE) -C tools/makeqpf distclean; $(MAKE) -C tools/qconfig distclean; $(MAKE) -C tools/qvfb distclean; \ + $(MAKE) -C tools/msg2qm distclean; $(MAKE) -C tools/mergetr distclean; $(MAKE) -C tools/qembed distclean; \ + $(MAKE) -C tools/designer/tools/conv2ui distclean; $(MAKE) -C tools/designer/tools/createcw distclean; \ + $(MAKE) -C tools/designer/plugins/glade distclean; $(MAKE) -C tools/designer/plugins/qglwidget distclean; \ + $(MAKE) -C config.tests/unix/largefile distclean; $(MAKE) -C qmake distclean; \ fi -rm -rf .qmake.cache src/.qmake.internal.cache tools/designer/designer/.qmake.internal.cache qmake/GNUmakefile \