On Fri, Jan 07, 2011 at 02:15:57PM -0500, Don Zickus wrote:
On Fri, Jan 07, 2011 at 01:36:59PM -0500, Jarod Wilson wrote:
> I just implemented exactly what I described here locally, and it worked
> perfectly. The config-local file needs to be a Source: file so that it
> actually gets included in the source rpm, and I'm not sure why you're
> doing anything touching debuginfo bits...
>
> My test case was to simply add CONFIG_VIDEO_VIA_CAMERA=y to my
> config-local, as I know its disabled in the stock config, because it
> doesn't build (due to a dependency on updated viafb bits in 2.6.37). I
> created a source rpm with that modified config-local, then did an
> rpmbuild, and it failed on drivers/media/video/via-camera.c exactly like
> I'd expected it to. So I suspect you've either done something wrong with
> your implementation or you execution. :)
Jarod,
Patch please, just don't make sure everyone is on the same page.
Inlined. Was getting there, I swear. :) Patch is against current F14 git.
---
config-local | 2 ++
kernel.spec | 15 +++++++++++++++
2 files changed, 17 insertions(+), 0 deletions(-)
diff --git a/config-local b/config-local
new file mode 100644
index 0000000..8c32be5
--- /dev/null
+++ b/config-local
@@ -0,0 +1,2 @@
+# This file is intentionally left empty in the stock kernel. Its a nicety
+# added for those wanting to do custom rebuilds with altered config opts.
diff --git a/kernel.spec b/kernel.spec
index ff0c2b4..d8eda70 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -548,6 +548,10 @@ Source90: config-sparc64-generic
Source100: config-arm
+# This file is intentionally left empty in the stock kernel. Its a nicety
+# added for those wanting to do custom rebuilds with altered config opts.
+Source1000: config-local
+
# Here should be only the patches up to the upstream canonical Linus tree.
# For a stable release kernel
@@ -1198,6 +1202,14 @@ make -f %{SOURCE20} VERSION=%{version} configs
done
%endif
+# Merge in any user-provided local config option changes
+for i in %{all_arch_configs}
+do
+ mv $i $i.tmp
+ ./merge.pl %{SOURCE1000} $i.tmp > $i
+ rm $i.tmp
+done
+
ApplyOptionalPatch git-linus.diff
# This patch adds a "make nonint_oldconfig" which is non-interactive and
@@ -2090,6 +2102,9 @@ fi
# and build.
%changelog
+* Fri Jan 07 2011 Jarod Wilson <jarod(a)redhat.com>
+- Add support for local rebuild config option overrides
+
* Thu Jan 06 2011 Chuck Ebbert <cebbert(a)redhat.com>
- Fix failure to get link with e1000e model 82576DC (#652744)
--
Jarod Wilson
jarod(a)redhat.com