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 \

Reply via email to