Re: [OpenWrt-Devel] [PATCH 3/6] kernel: allow parallel build of image and modules

2011-08-30 Thread Florian Fainelli
Hello,

On Monday 29 August 2011 22:11:52 eugene...@gmail.com wrote:
 From: Eugene San (eugenesan) eugene...@gmail.com
 
 
 Signed-off-by: Eugene San (eugenesan) eugene...@gmail.com
 ---
  Config.in  |   13 +
  include/kernel-defaults.mk |6 --
  2 files changed, 17 insertions(+), 2 deletions(-)

We already support building the kernel and modules in parallel when make is 
invoked with a given number of jobs from the top-level directory of OpenWrt. 
Did not you have it working?

 
 diff --git a/Config.in b/Config.in
 index f36221c..f4dbf80 100644
 --- a/Config.in
 +++ b/Config.in
 @@ -307,6 +307,19 @@ menu Global build settings
 If you say Y, toolchain build might break.
 Before reporting build bugs, set this to N and re-run the 
 build.
 
 + config KERNEL_PARALLEL
 + bool
 + prompt Parallelize the kernel build (May break build)
 + depends on PKG_BUILD_PARALLEL
 + default n
 + help
 +   Build the kernel with parallel make jobs.
 +   This speeds up the kernel build on SMP machines, but may
 +   break the build for certain toolchain versions.
 +
 +   If you say Y, kernel build might break.
 +   Before reporting build bugs, set this to N and re-run the 
 build.
 +
   comment Stripping options
 
   choice
 diff --git a/include/kernel-defaults.mk b/include/kernel-defaults.mk
 index 5fd27ae..b637577 100644
 --- a/include/kernel-defaults.mk
 +++ b/include/kernel-defaults.mk
 @@ -5,6 +5,8 @@
  # See /LICENSE for more information.
  #
 
 +KERNEL_JOBS?=$(if $(CONFIG_KERNEL_PARALLEL),-j$(CONFIG_PKG_BUILD_JOBS))
 +
  KERNEL_MAKEOPTS := -C $(LINUX_DIR) \
   CROSS_COMPILE=$(KERNEL_CROSS) \
   ARCH=$(LINUX_KARCH) \
 @@ -93,14 +95,14 @@ endef
 
  define Kernel/CompileModules/Default
   rm -f $(LINUX_DIR)/vmlinux $(LINUX_DIR)/System.map
 - +$(MAKE) $(KERNEL_MAKEOPTS) modules
 + +$(MAKE) $(KERNEL_MAKEOPTS) $(KERNEL_JOBS) modules
  endef
 
  OBJCOPY_STRIP = -R .reginfo -R .notes -R .note -R .comment -R .mdebug -R
 .note.gnu.build-id
 
  define Kernel/CompileImage/Default
   $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),,rm -f $(TARGET_DIR)/init)
 - +$(MAKE) $(KERNEL_MAKEOPTS) $(KERNELNAME)
 + +$(MAKE) $(KERNEL_MAKEOPTS) $(KERNEL_JOBS) $(KERNELNAME)
   $(KERNEL_CROSS)objcopy -O binary $(OBJCOPY_STRIP) -S 
$(LINUX_DIR)/vmlinux
 $(LINUX_KERNEL) $(KERNEL_CROSS)objcopy $(OBJCOPY_STRIP) -S
 $(LINUX_DIR)/vmlinux $(KERNEL_BUILD_DIR)/vmlinux.elf endef

-- 
Florian
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH 3/6] kernel: allow parallel build of image and modules

2011-08-29 Thread eugenesan
From: Eugene San (eugenesan) eugene...@gmail.com


Signed-off-by: Eugene San (eugenesan) eugene...@gmail.com
---
 Config.in  |   13 +
 include/kernel-defaults.mk |6 --
 2 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/Config.in b/Config.in
index f36221c..f4dbf80 100644
--- a/Config.in
+++ b/Config.in
@@ -307,6 +307,19 @@ menu Global build settings
  If you say Y, toolchain build might break.
  Before reporting build bugs, set this to N and re-run the 
build.
 
+   config KERNEL_PARALLEL
+   bool
+   prompt Parallelize the kernel build (May break build)
+   depends on PKG_BUILD_PARALLEL
+   default n
+   help
+ Build the kernel with parallel make jobs.
+ This speeds up the kernel build on SMP machines, but may
+ break the build for certain toolchain versions.
+
+ If you say Y, kernel build might break.
+ Before reporting build bugs, set this to N and re-run the 
build.
+
comment Stripping options
 
choice
diff --git a/include/kernel-defaults.mk b/include/kernel-defaults.mk
index 5fd27ae..b637577 100644
--- a/include/kernel-defaults.mk
+++ b/include/kernel-defaults.mk
@@ -5,6 +5,8 @@
 # See /LICENSE for more information.
 #
 
+KERNEL_JOBS?=$(if $(CONFIG_KERNEL_PARALLEL),-j$(CONFIG_PKG_BUILD_JOBS))
+
 KERNEL_MAKEOPTS := -C $(LINUX_DIR) \
CROSS_COMPILE=$(KERNEL_CROSS) \
ARCH=$(LINUX_KARCH) \
@@ -93,14 +95,14 @@ endef
 
 define Kernel/CompileModules/Default
rm -f $(LINUX_DIR)/vmlinux $(LINUX_DIR)/System.map
-   +$(MAKE) $(KERNEL_MAKEOPTS) modules
+   +$(MAKE) $(KERNEL_MAKEOPTS) $(KERNEL_JOBS) modules
 endef
 
 OBJCOPY_STRIP = -R .reginfo -R .notes -R .note -R .comment -R .mdebug -R 
.note.gnu.build-id
 
 define Kernel/CompileImage/Default
$(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),,rm -f $(TARGET_DIR)/init)
-   +$(MAKE) $(KERNEL_MAKEOPTS) $(KERNELNAME)
+   +$(MAKE) $(KERNEL_MAKEOPTS) $(KERNEL_JOBS) $(KERNELNAME)
$(KERNEL_CROSS)objcopy -O binary $(OBJCOPY_STRIP) -S 
$(LINUX_DIR)/vmlinux $(LINUX_KERNEL)
$(KERNEL_CROSS)objcopy $(OBJCOPY_STRIP) -S $(LINUX_DIR)/vmlinux 
$(KERNEL_BUILD_DIR)/vmlinux.elf
 endef
-- 
1.7.6

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel