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
