]> xenbits.xensource.com Git - xentesttools/bootstrap.git/commitdiff
parallize the build
authorKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Mon, 7 Feb 2011 23:55:15 +0000 (18:55 -0500)
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Mon, 7 Feb 2011 23:55:15 +0000 (18:55 -0500)
root_image/Makefile

index 5403bfc3f81fb18f476806b488b13926fb245668..1039f9154ba278deee188a7c68ffddd12e0142e7 100644 (file)
@@ -40,6 +40,7 @@ FC13 = 1
 FC12_RPM = 1
 endif
 
+NCPUS := $(shell grep processor /proc/cpuinfo | wc -l)
 TOP = ../
 include $(TOP)/sources.mk
 LINUX_DST = $(TOP)/linux-build
@@ -155,12 +156,12 @@ CLEAN_SUBDIRS := $(shell find . -maxdepth 2 -mindepth 1 -name "Makefile" | awk -
 clean: $(CLEAN_SUBDIRS:%=%-clean) root_image-clean
 
 %-clean: %
-       if [ -f $?/Makefile ] ; then $(MAKE) $(MFLAGS) -C $? clean || true ;fi
+       if [ -f $?/Makefile ] ; then $(MAKE) -j$$(($(NCPUS) * 2)) $(MFLAGS) -C $? clean || true ;fi
 .PHONY:        distclean
 distclean: $(CLEAN_SUBDIRS:%=%-distclean) root_image-clean
 
 %-distclean: %
-       if [ -f $?/Makefile ] ; then $(MAKE) $(MFLAGS) -C $? distclean || true ;fi
+       if [ -f $?/Makefile ] ; then $(MAKE) -j$$(($(NCPUS) * 2)) $(MFLAGS) -C $? distclean || true ;fi
 
 USERSPACE = busybox udev
 
@@ -610,7 +611,7 @@ rsync-install:
 .PHONY:        netperf-install
 netperf-install:
        if ! [ -e netperf/config.h ]; then (cd netperf; ./autogen.sh;./configure --prefix=/usr); fi
-       $(MAKE) $(MFLAGS) -C netperf
+       $(MAKE) $(MFLAGS) -j$$(($(NCPUS) * 2)) -C netperf
 
        $(INSTALL_PROG)   netperf/src/netperf     userspace/usr/bin/
        $(INSTALL_PROG)   netperf/src/netserver     userspace/usr/bin/
@@ -618,7 +619,7 @@ netperf-install:
 .PHONY:        pciutils-install
 pciutils-install:
        mkdir -p userspace/usr/local/share
-       $(MAKE) $(MFLAGS) -C pciutils  PREFIX=/
+       $(MAKE) $(MFLAGS)-j$$(($(NCPUS) * 2)) -C pciutils  PREFIX=/
        $(MAKE) $(MFLAGS) -C pciutils  PREFIX=../userspace install
        $(INSTALL_DATA) pciutils/pci.ids.gz userspace/usr/local/share/pci.ids.gz
        (cd userspace/lib;chmod 755 libpci*.so.*)
@@ -724,7 +725,7 @@ python-install: python-core
 
 .PHONY: xen-python-bytecode
 xen-python-bytecode: python-install
-       make -C ../xen/tools/python DESTDIR=$(CURDIR)/userspace install
+       make -j$$(($(NCPUS) * 2)) -C ../xen/tools/python DESTDIR=$(CURDIR)/userspace install
 
 XEN_SRC = $(dir $(CURDIR))xen
 XEN_DISTDIR = $(dir $(CURDIR))xen/dist/install
@@ -790,17 +791,17 @@ nfs-install:
 
 .PHONY:        busybox-install
 busybox-install: userspace-prep busybox/.config
-       $(MAKE) $(MFLAGS) -C busybox CONFIG_PREFIX=../userspace install
+       $(MAKE) $(MFLAGS)-j$$(($(NCPUS) * 2)) -C busybox CONFIG_PREFIX=../userspace install
        mv userspace/linuxrc userspace/init
        ( cd userspace; ln -sf /sbin/init init )
 
 busybox/.config:  busybox.config
        cp busybox.config $@
-       $(MAKE) -C busybox oldconfig
+       $(MAKE) -j$$(($(NCPUS) * 2)) -C busybox oldconfig
 
 .PHONY: xtt-tools-install
 xtt-tools-install:
-       LDLIBS="-L$(shell pwd)/userspace/$(LIBSDIR)" $(MAKE) $(MFLAGS) -C tools
+       LDLIBS="-L$(shell pwd)/userspace/$(LIBSDIR)" $(MAKE) -j$$(($(NCPUS) * 2)) $(MFLAGS) -C tools
        $(INSTALL_PROG)   tools/ssh_support/ssh-shadowgen     userspace/usr/sbin/
        $(INSTALL_SCRIPT) tools/ssh_support/sshd_server       userspace/usr/bin/
        $(INSTALL_PROG)   tools/load_xen_modules/xen-detect     userspace/usr/bin/
@@ -812,7 +813,7 @@ xtt-tools-install:
        $(INSTALL_PROG)   tools/eatmem/eatmem     userspace/usr/bin/
 
 fio/fio: fio/fio
-       $(MAKE) -C fio
+       $(MAKE) -j$$(($(NCPUS) * 2)) -C fio
 
 .PHONY: fio-install
 fio-install: fio/fio
@@ -872,7 +873,7 @@ modulespace-prep: $(MODULESPACE_DIRS:%=modulespace/%)
 
 .PHONY: linux-map-exists
 linux-map-exists:
-       if ! [ -f $(LINUX_DST)/System.map ]; then $(MAKE) $(MFLAGS) linux-install; fi
+       if ! [ -f $(LINUX_DST)/System.map ]; then $(MAKE) -j$$(($(NCPUS) * 2)) $(MFLAGS) linux-install; fi
 
 .PHONY:        modulespace-install
 modulespace/lib/modules/$(LINUX_VERSION)/modules.dep: $(LINUX_DST)/modulespace/lib/modules/$(LINUX_VERSION)/modules.dep
@@ -884,9 +885,9 @@ linux-modules-install: modulespace/lib/modules/$(LINUX_VERSION)/modules.dep
 
 modulespace-install: modulespace-prep linux-modules-install local-firmware-install
        if [ -d $(CURDIR)/drivers ]; then \
-               $(MAKE) $(MFLAGS) V=1 -C $(LINUX_DST) \
+               $(MAKE) -j$$(($(NCPUS) * 2)) $(MFLAGS) V=1 -C $(LINUX_DST) \
                        SUBDIRS=$(CURDIR)/drivers modules; \
-               $(MAKE) $(MFLAGS) -C $(LINUX_DST) \
+               $(MAKE) -j$$(($(NCPUS) * 2)) $(MFLAGS) -C $(LINUX_DST) \
                        SUBDIRS=$(CURDIR)/drivers \
                        INSTALL_MOD_PATH=$(CURDIR)/modulespace/ modules_install; \
        fi
@@ -917,13 +918,13 @@ local-firmware-install: modulespace-prep
        fi
 .PHONY:        syslinux-clean
 syslinux-clean:
-       $(MAKE) -C syslinux/menu clean
+       $(MAKE) -j$$(($(NCPUS) * 2)) -C syslinux/menu clean
 
 .PHONY:        syslinux-distclean
 syslinux-distclean:
-       $(MAKE) -C syslinux/menu clean
+       $(MAKE) -j$$(($(NCPUS) * 2)) -C syslinux/menu clean
 
 .PHONY: initramfs-install
 initramfs-install: root_image-userspace-install modulespace-install $(LINUX_DST)/usr/gen_init_cpio
-       $(MAKE) $(MFLAGS) initramfs
+       $(MAKE) $(MFLAGS) -j$$(($(NCPUS) * 2)) initramfs