Now that devel kernels rpms require the kernel-firmware rpm, it makes sense to me that one should be able to build both of them at the same time. So this patch adds the "--with firmware" build option which will allow kernel-firmware rpms to built with kernel rpms.
This patch also adds the "--without vdso_install" build option which stop the VDSO binaries from being installed. This cuts down the overall build time especially when you build over NFS like I do..
Signed-Off-By: Steve Dickson steved@redhat.com
diff -up SPECS/kernel.spec.orig SPECS/kernel.spec --- SPECS/kernel.spec.orig 2008-07-29 09:07:48.000000000 -0400 +++ SPECS/kernel.spec 2008-07-29 11:44:39.000000000 -0400 @@ -75,11 +75,13 @@ Summary: The Linux kernel # kernel-headers %define with_headers %{?_without_headers: 0} %{?!_without_headers: 1} # kernel-firmware -%define with_firmware %{?_without_firmware: 0} %{?!_without_firmware: 1} +%define with_firmware %{?_with_firmware: 1} %{?!_with_firmware: 0} # kernel-debuginfo %define with_debuginfo %{?_without_debuginfo: 0} %{?!_without_debuginfo: 1} # kernel-bootwrapper (for creating zImages from kernel + initrd) %define with_bootwrapper %{?_without_bootwrapper: 0} %{?!_without_bootwrapper: 1} +# Want to build a the vsdo directories installed +%define with_vdso_install %{?_without_vdso_install: 0} %{?!_without_vdso_install: 1}
# don't build the kernel-doc package %define with_doc 0 @@ -188,8 +190,10 @@ Summary: The Linux kernel
%define all_x86 i386 i586 i686
+%if %{with_vdso_install} # These arches install vdso/ directories. %define vdso_arches %{all_x86} x86_64 ppc ppc64 +%endif
# Overrides for generic default options
@@ -217,7 +221,6 @@ Summary: The Linux kernel # only package docs noarch %ifnarch noarch %define with_doc 0 -%define with_firmware 0 %endif
# no need to build headers again for these arches, @@ -231,6 +234,7 @@ Summary: The Linux kernel %define with_up 0 %define with_headers 0 %define all_arch_configs kernel-%{version}-*.config +%define with_firmware 1 %endif
# bootwrapper is only on ppc
Steve Dickson wrote:
Now that devel kernels rpms require the kernel-firmware rpm, it makes sense to me that one should be able to build both of them at the same time. So this patch adds the "--with firmware" build option which will allow kernel-firmware rpms to built with kernel rpms.
This patch also adds the "--without vdso_install" build option which stop the VDSO binaries from being installed. This cuts down the overall build time especially when you build over NFS like I do..
Signed-Off-By: Steve Dickson steved@redhat.com
With one small change we can still support --without firmware. That way the default behavior can be overridden in either case. See below...
diff -up SPECS/kernel.spec.orig SPECS/kernel.spec --- SPECS/kernel.spec.orig 2008-07-29 09:07:48.000000000 -0400 +++ SPECS/kernel.spec 2008-07-29 11:44:39.000000000 -0400 @@ -75,11 +75,13 @@ Summary: The Linux kernel # kernel-headers %define with_headers %{?_without_headers: 0} %{?!_without_headers: 1} # kernel-firmware -%define with_firmware %{?_without_firmware: 0} %{?!_without_firmware: 1} +%define with_firmware %{?_with_firmware: 1} %{?!_with_firmware: 0} # kernel-debuginfo %define with_debuginfo %{?_without_debuginfo: 0} %{?!_without_debuginfo: 1} # kernel-bootwrapper (for creating zImages from kernel + initrd) %define with_bootwrapper %{?_without_bootwrapper: 0} %{?!_without_bootwrapper: 1} +# Want to build a the vsdo directories installed +%define with_vdso_install %{?_without_vdso_install: 0} %{?!_without_vdso_install: 1}
# don't build the kernel-doc package %define with_doc 0 @@ -188,8 +190,10 @@ Summary: The Linux kernel
%define all_x86 i386 i586 i686
+%if %{with_vdso_install} # These arches install vdso/ directories. %define vdso_arches %{all_x86} x86_64 ppc ppc64 +%endif
# Overrides for generic default options
@@ -217,7 +221,6 @@ Summary: The Linux kernel # only package docs noarch %ifnarch noarch %define with_doc 0 -%define with_firmware 0 %endif
# no need to build headers again for these arches, @@ -231,6 +234,7 @@ Summary: The Linux kernel %define with_up 0 %define with_headers 0 %define all_arch_configs kernel-%{version}-*.config +%define with_firmware 1
+%define with_firmware %{?_without_firmware: 0} %{?!_without_firmware: 1}
%endif
# bootwrapper is only on ppc
Chuck Ebbert wrote:
Steve Dickson wrote:
Now that devel kernels rpms require the kernel-firmware rpm, it makes sense to me that one should be able to build both of them at the same time. So this patch adds the "--with firmware" build option which will allow kernel-firmware rpms to built with kernel rpms.
This patch also adds the "--without vdso_install" build option which stop the VDSO binaries from being installed. This cuts down the overall build time especially when you build over NFS like I do.. Signed-Off-By: Steve Dickson steved@redhat.com
With one small change we can still support --without firmware. That way the default behavior can be overridden in either case. See below...
Sure.. that works... Is there an ETA for these two changes?
steved.
On Tuesday 05 August 2008 09:24:10 Steve Dickson wrote:
Chuck Ebbert wrote:
Steve Dickson wrote:
Now that devel kernels rpms require the kernel-firmware rpm, it makes sense to me that one should be able to build both of them at the same time. So this patch adds the "--with firmware" build option which will allow kernel-firmware rpms to built with kernel rpms.
This patch also adds the "--without vdso_install" build option which stop the VDSO binaries from being installed. This cuts down the overall build time especially when you build over NFS like I do.. Signed-Off-By: Steve Dickson steved@redhat.com
With one small change we can still support --without firmware. That way the default behavior can be overridden in either case. See below...
Sure.. that works... Is there an ETA for these two changes?
I don't quite follow how the firmware change is supposed to work... The firmware is currently supposed to be a noarch package, and it gets built in the same pass as the kernel-docs sub-package, so it *shouldn't* be built in the same pass as the kernel. Is this flag to simply override that and build the firmware as an arch-specific package for simplified one-off builds?
On Tue, Aug 05, 2008 at 11:01:17AM -0400, Jarod Wilson wrote:
On Tuesday 05 August 2008 09:24:10 Steve Dickson wrote:
Chuck Ebbert wrote:
Steve Dickson wrote:
Now that devel kernels rpms require the kernel-firmware rpm, it makes sense to me that one should be able to build both of them at the same time. So this patch adds the "--with firmware" build option which will allow kernel-firmware rpms to built with kernel rpms.
This patch also adds the "--without vdso_install" build option which stop the VDSO binaries from being installed. This cuts down the overall build time especially when you build over NFS like I do.. Signed-Off-By: Steve Dickson steved@redhat.com
With one small change we can still support --without firmware. That way the default behavior can be overridden in either case. See below...
Sure.. that works... Is there an ETA for these two changes?
I don't quite follow how the firmware change is supposed to work... The firmware is currently supposed to be a noarch package, and it gets built in the same pass as the kernel-docs sub-package, so it *shouldn't* be built in the same pass as the kernel. Is this flag to simply override that and build the firmware as an arch-specific package for simplified one-off builds?
You bring up a pretty good point here Jarod, what happens with firmware for arch-specific drivers? The Makefile rules will have to be written in such a way that it gets built into the package despite the CONFIG_* symbol being unset on the build arch.
r, Kyle
Kyle McMartin wrote:
On Tue, Aug 05, 2008 at 11:01:17AM -0400, Jarod Wilson wrote:
On Tuesday 05 August 2008 09:24:10 Steve Dickson wrote:
Chuck Ebbert wrote:
Steve Dickson wrote:
Now that devel kernels rpms require the kernel-firmware rpm, it makes sense to me that one should be able to build both of them at the same time. So this patch adds the "--with firmware" build option which will allow kernel-firmware rpms to built with kernel rpms.
This patch also adds the "--without vdso_install" build option which stop the VDSO binaries from being installed. This cuts down the overall build time especially when you build over NFS like I do.. Signed-Off-By: Steve Dickson steved@redhat.com
With one small change we can still support --without firmware. That way the default behavior can be overridden in either case. See below...
Sure.. that works... Is there an ETA for these two changes?
I don't quite follow how the firmware change is supposed to work... The firmware is currently supposed to be a noarch package, and it gets built in the same pass as the kernel-docs sub-package, so it *shouldn't* be built in the same pass as the kernel. Is this flag to simply override that and build the firmware as an arch-specific package for simplified one-off builds?
You bring up a pretty good point here Jarod, what happens with firmware for arch-specific drivers? The Makefile rules will have to be written in such a way that it gets built into the package despite the CONFIG_* symbol being unset on the build arch.
That's what it does. It includes all firmware, even for drivers that don't get built. Look in firmware/Makefile and you'll see it builds lists named fw-shipped-y, fw-shipped-m and fw-shipped- then just merges them to create fw-shipped-all which it uses to build/install the firmware.
On Tue, Aug 05, 2008 at 04:19:07PM -0400, Chuck Ebbert wrote:
That's what it does. It includes all firmware, even for drivers that don't get built. Look in firmware/Makefile and you'll see it builds lists named fw-shipped-y, fw-shipped-m and fw-shipped- then just merges them to create fw-shipped-all which it uses to build/install the firmware.
Does this cover the case of firmware declared in Makefiles in subdirs that are obj-$(CONFIG_i) += subdir/?
If so, cool, but I can't be arsed to check.
cheers, kyle
Kyle McMartin wrote:
On Tue, Aug 05, 2008 at 04:19:07PM -0400, Chuck Ebbert wrote:
That's what it does. It includes all firmware, even for drivers that don't get built. Look in firmware/Makefile and you'll see it builds lists named fw-shipped-y, fw-shipped-m and fw-shipped- then just merges them to create fw-shipped-all which it uses to build/install the firmware.
Does this cover the case of firmware declared in Makefiles in subdirs that are obj-$(CONFIG_i) += subdir/?
If so, cool, but I can't be arsed to check.
It only does its thing for stuff in firmware/
Every firmware file needs to be moved there; some are not and they don't get into the package.
Steve Dickson wrote:
Chuck Ebbert wrote:
Steve Dickson wrote:
Now that devel kernels rpms require the kernel-firmware rpm, it makes sense to me that one should be able to build both of them at the same time. So this patch adds the "--with firmware" build option which will allow kernel-firmware rpms to built with kernel rpms.
This patch also adds the "--without vdso_install" build option which stop the VDSO binaries from being installed. This cuts down the overall build time especially when you build over NFS like I do.. Signed-Off-By: Steve Dickson steved@redhat.com
With one small change we can still support --without firmware. That way the default behavior can be overridden in either case. See below...
Sure.. that works... Is there an ETA for these two changes?
Applied.
kernel@lists.fedoraproject.org