26 Makefile patches for enabling parallel builds. Tested on Linux (8-core) and 
Darwin (12-core), individually and from clean build_root. The first set is from 
trunk, the second is from feeds/packages.


Signed-off-by: Joe Roback <[email protected]>

---

+----------------+
| trunk/packages |
+----------------+

Index: package/ncurses/Makefile
===================================================================
--- package/ncurses/Makefile    (revision 22963)
+++ package/ncurses/Makefile    (working copy)
@@ -17,6 +17,7 @@
 PKG_MD5SUM:=cce05daf61a64501ef6cd8da1f727ec6
 
 PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
Index: package/zlib/Makefile
===================================================================
--- package/zlib/Makefile       (revision 22963)
+++ package/zlib/Makefile       (working copy)
@@ -15,6 +15,8 @@
 PKG_SOURCE_URL:=http://www.zlib.net @SF/libpng
 PKG_MD5SUM:=dee233bf288ee795ac96a98cc2e369b6
 
+PKG_BUILD_PARALLEL:=1
+
 include $(INCLUDE_DIR)/package.mk
 
 define Package/zlib
@@ -37,7 +39,7 @@
 endef
 
 define Build/Compile
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                $(TARGET_CONFIGURE_OPTS) \
                LDSHARED="$(TARGET_CROSS)ld -shared" \
                CFLAGS="$(TARGET_CFLAGS) $(FPIC)" \
Index: package/iptables/Makefile
===================================================================
--- package/iptables/Makefile   (revision 22963)
+++ package/iptables/Makefile   (working copy)
@@ -21,6 +21,7 @@
 
 PKG_FIXUP:=libtool
 PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 ifeq ($(DUMP),)
Index: package/mac80211/Makefile
===================================================================
--- package/mac80211/Makefile   (revision 22963)
+++ package/mac80211/Makefile   (working copy)
@@ -19,6 +19,7 @@
 
 PKG_SOURCE:=compat-wireless-$(PKG_VERSION).tar.bz2
 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION)
+PKG_BUILD_PARALLEL:=1
 
 PKG_CONFIG_DEPENDS:= \
        CONFIG_PACKAGE_kmod-mac80211 \
@@ -955,7 +956,7 @@
 ifneq ($(CONFIG_PACKAGE_kmod-cfg80211),)
  define Build/Compile/kmod
        rm -rf $(PKG_BUILD_DIR)/modules
-       $(MAKE) -C "$(PKG_BUILD_DIR)" $(MAKE_OPTS) all
+       $(MAKE) $(PKG_JOBS) -C "$(PKG_BUILD_DIR)" $(MAKE_OPTS) all
  endef
 endif
 
Index: package/dropbear/Makefile
===================================================================
--- package/dropbear/Makefile   (revision 22963)
+++ package/dropbear/Makefile   (working copy)
@@ -17,6 +17,8 @@
        
http://www.mirrors.wiretapped.net/security/cryptography/apps/ssh/dropbear/
 PKG_MD5SUM:=1c69ec674481d7745452f68f2ea5597e
 
+PKG_BUILD_PARALLEL:=1
+
 include $(INCLUDE_DIR)/package.mk
 
 define Package/dropbear/Default
@@ -70,12 +72,12 @@
 endef
 
 define Build/Compile
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                $(TARGET_CONFIGURE_OPTS) \
                LD="$(TARGET_CC)" \
                PROGRAMS="dropbear dbclient dropbearkey scp" \
                MULTI=1 SCPPROGRESS=1
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                $(TARGET_CONFIGURE_OPTS) \
                LD="$(TARGET_CC)" \
                PROGRAMS="dropbearconvert"
Index: package/busybox/Makefile
===================================================================
--- package/busybox/Makefile    (revision 22963)
+++ package/busybox/Makefile    (working copy)
@@ -16,6 +16,8 @@
                http://distfiles.gentoo.org/distfiles/
 PKG_MD5SUM:=7360b7138b899ee7fc885791c740c3c3
 
+PKG_BUILD_PARALLEL:=1
+
 include $(INCLUDE_DIR)/package.mk
 
 ifeq ($(DUMP),)
@@ -65,7 +67,7 @@
 endif
 
 define Build/Compile
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                CC="$(TARGET_CC)" \
                CROSS_COMPILE="$(TARGET_CROSS)" \
                KBUILD_HAVE_NLS=no \
Index: package/cyassl/Makefile
===================================================================
--- package/cyassl/Makefile     (revision 22963)
+++ package/cyassl/Makefile     (working copy)
@@ -17,6 +17,7 @@
 
 PKG_FIXUP:=libtool
 PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 




---

+----------------+
| feeds/packages |
+----------------+


Index: utils/nano/Makefile
===================================================================
--- utils/nano/Makefile (revision 22963)
+++ utils/nano/Makefile (working copy)
@@ -16,6 +16,7 @@
 PKG_MD5SUM:=77a10a49589f975ce98350a4527a2ebf
 
 PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
Index: utils/procps/Makefile
===================================================================
--- utils/procps/Makefile       (revision 22963)
+++ utils/procps/Makefile       (working copy)
@@ -15,6 +15,8 @@
 PKG_SOURCE_URL:=http://procps.sourceforge.net
 PKG_MD5SUM:=9532714b6846013ca9898984ba4cd7e0
 
+PKG_BUILD_PARALLEL:=1
+
 include $(INCLUDE_DIR)/package.mk
 
 define Package/procps
Index: net/iperf/Makefile
===================================================================
--- net/iperf/Makefile  (revision 22963)
+++ net/iperf/Makefile  (working copy)
@@ -15,6 +15,8 @@
 PKG_SOURCE_URL:=...@sf/$(PKG_NAME)
 PKG_MD5SUM:=44b5536b67719f4250faed632a3cd016
 
+PKG_BUILD_PARALLEL:=1
+
 include $(INCLUDE_DIR)/package.mk
 
 define Package/iperf/Default
@@ -57,7 +59,7 @@
 $(STAMP_BUILT)-$(2): $(STAMP_PREPARED)
        -$(MAKE) -C $(PKG_BUILD_DIR) clean
        $(call Build/Configure/Default,$(3))
-       $(MAKE) -C $(PKG_BUILD_DIR)
+       $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR)
        ( cd $(PKG_BUILD_DIR)/src; mv -f iperf iperf-$(2) )
        touch $$@
 
Index: net/rsync/Makefile
===================================================================
--- net/rsync/Makefile  (revision 22963)
+++ net/rsync/Makefile  (working copy)
@@ -16,6 +16,7 @@
 PKG_MD5SUM:=b53525900817cf1ba7ad3a516ab5bfe9
 
 PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
Index: net/wol/Makefile
===================================================================
--- net/wol/Makefile    (revision 22963)
+++ net/wol/Makefile    (working copy)
@@ -15,6 +15,8 @@
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_MD5SUM:=c2fa9d7e771134ac8c89d56b8197d4ca
 
+PKG_BUILD_PARALLEL:=1
+
 include $(INCLUDE_DIR)/package.mk
 
 define Package/wol
 
Index: net/transmission/Makefile
===================================================================
--- net/transmission/Makefile   (revision 22963)
+++ net/transmission/Makefile   (working copy)
@@ -17,6 +17,7 @@
 
 PKG_FIXUP:=libtool
 PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
Index: net/netatalk/Makefile
===================================================================
--- net/netatalk/Makefile       (revision 22963)
+++ net/netatalk/Makefile       (working copy)
@@ -13,6 +13,7 @@
 PKG_SOURCE:=netatalk-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=...@sf/netatalk/
 PKG_MD5SUM:=f35cd7a4ce26c780de380cd2bcae5ce6
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
Index: net/vnstat/Makefile
===================================================================
--- net/vnstat/Makefile (revision 22963)
+++ net/vnstat/Makefile (working copy)
@@ -17,7 +17,8 @@
 
 PKG_INSTALL:=1
 
-PKG_BUILD_DEPENDS:= libgd
+PKG_BUILD_DEPENDS:=libgd
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -59,13 +60,13 @@
 endef
 
 define Build/Compile/vnstat
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                $(TARGET_CONFIGURE_OPTS) \
                CFLAGS="$(TARGET_CFLAGS)"
 endef
 
 define Build/Compile/vnstati
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                $(TARGET_CONFIGURE_OPTS) \
                CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include" \
                LDFLAGS="$(TARGET_LDFLAGS) 
-Wl,-rpath-link,$(STAGING_DIR)/usr/lib" \
Index: libs/jpeg/Makefile
===================================================================
--- libs/jpeg/Makefile  (revision 22963)
+++ libs/jpeg/Makefile  (working copy)
@@ -16,7 +16,8 @@
         ftp://ftp.uu.net/graphics/jpeg/
 PKG_MD5SUM:=dbd5f3b47ed13132f04c685d608a7547
 
-PKG_FIXUP = libtool
+PKG_FIXUP:=libtool
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/host-build.mk
 include $(INCLUDE_DIR)/package.mk
@@ -63,7 +64,7 @@
 
 define Build/Compile
        $(INSTALL_DIR) $(PKG_INSTALL_DIR)/usr/{include,lib,bin,man/man1}
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                LIBTOOL="./libtool --tag=CC" \
                prefix="$(PKG_INSTALL_DIR)/usr" \
                exec_prefix="$(PKG_INSTALL_DIR)/usr" \
Index: libs/avahi/Makefile
===================================================================
--- libs/avahi/Makefile (revision 22963)
+++ libs/avahi/Makefile (working copy)
@@ -19,6 +19,7 @@
 
 PKG_FIXUP:=libtool
 PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -195,4 +196,3 @@
 $(eval $(call BuildPackage,avahi-autoipd))
 $(eval $(call BuildPackage,avahi-daemon))
 $(eval $(call BuildPackage,avahi-dnsconfd))
-
Index: libs/libgcrypt/Makefile
===================================================================
--- libs/libgcrypt/Makefile     (revision 22963)
+++ libs/libgcrypt/Makefile     (working copy)
@@ -17,6 +17,7 @@
 
 PKG_FIXUP:=libtool
 PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
Index: libs/libxml2/Makefile
===================================================================
--- libs/libxml2/Makefile       (revision 22963)
+++ libs/libxml2/Makefile       (working copy)
@@ -18,6 +18,7 @@
 
 PKG_FIXUP:=libtool
 PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
Index: libs/curl/Makefile
===================================================================
--- libs/curl/Makefile  (revision 22963)
+++ libs/curl/Makefile  (working copy)
@@ -21,7 +21,8 @@
        http://curl.mirrors.cyberservers.net/download/
 PKG_MD5SUM:=8402c1f654c51ad7287aad57c3aa79be
 
-PKG_FIXUP = libtool
+PKG_FIXUP:=libtool
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -86,7 +87,7 @@
 endef
 
 define Build/Compile
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                DESTDIR="$(PKG_INSTALL_DIR)" \
                CC="$(TARGET_CC)" \
                install
Index: libs/gdbm/Makefile
===================================================================
--- libs/gdbm/Makefile  (revision 22963)
+++ libs/gdbm/Makefile  (working copy)
@@ -15,7 +15,8 @@
 PKG_SOURCE_URL:=...@gnu/gdbm
 PKG_MD5SUM:=1d1b1d5c0245b1c00aff92da751e9aa1
 
-PKG_FIXUP = libtool
+PKG_FIXUP:=libtool
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -33,7 +34,7 @@
        --enable-static \
 
 define Build/Compile
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                BINOWN=`id -u` \
                BINGRP=`id -g` \
                INSTALL_ROOT="$(PKG_INSTALL_DIR)" \
Index: libs/popt/Makefile
===================================================================
--- libs/popt/Makefile  (revision 22963)
+++ libs/popt/Makefile  (working copy)
@@ -17,6 +17,7 @@
 
 PKG_FIXUP:=libtool
 PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
Index: libs/libevent/Makefile
===================================================================
--- libs/libevent/Makefile      (revision 22963)
+++ libs/libevent/Makefile      (working copy)
@@ -18,6 +18,7 @@
 
 PKG_FIXUP:=libtool
 PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
Index: libs/gd/Makefile
===================================================================
--- libs/gd/Makefile    (revision 22963)
+++ libs/gd/Makefile    (working copy)
@@ -17,6 +17,7 @@
 
 PKG_FIXUP:=libtool
 PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
Index: libs/db47/Makefile
===================================================================
--- libs/db47/Makefile  (revision 22963)
+++ libs/db47/Makefile  (working copy)
@@ -18,6 +18,7 @@
 
 PKG_FIXUP:=libtool
 PKG_LIBTOOL_PATHS:=. build_unix
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -76,6 +77,8 @@
 TARGET_CFLAGS += $(FPIC)
 
 define Build/Compile
+       $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR)/build_unix \
+               DESTDIR="$(PKG_INSTALL_DIR)" all
        $(MAKE) -C $(PKG_BUILD_DIR)/build_unix \
                DESTDIR="$(PKG_INSTALL_DIR)" install
 endef
Index: libs/expat/Makefile
===================================================================
--- libs/expat/Makefile (revision 22963)
+++ libs/expat/Makefile (working copy)
@@ -15,7 +15,8 @@
 PKG_MD5SUM:=ee8b492592568805593f81f8cdf2a04c
 PKG_SOURCE_URL:=...@sf/expat
 
-PKG_FIXUP = libtool
+PKG_FIXUP:=libtool
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/host-build.mk
 include $(INCLUDE_DIR)/package.mk
@@ -39,7 +40,7 @@
        --enable-static
 
 define Build/Compile
-       $(MAKE) -C $(PKG_BUILD_DIR) DESTDIR="$(PKG_INSTALL_DIR)" install
+       $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) DESTDIR="$(PKG_INSTALL_DIR)" 
install
 endef
 
 define Host/Install
Index: libs/libpng/Makefile
===================================================================
--- libs/libpng/Makefile        (revision 22963)
+++ libs/libpng/Makefile        (working copy)
@@ -17,6 +17,7 @@
 
 PKG_FIXUP:=libtool
 PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
 
 include $(INCLUDE_DIR)/host-build.mk
 include $(INCLUDE_DIR)/package.mk

_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to