[PATCH 1/3] UBUNTU: Run kernel-wedge in $(builddir) rather than at the top level
Colin Watson
cjwatson at canonical.com
Tue Jun 9 15:43:07 UTC 2009
In order to copy firmware files, kernel-wedge wants a top-level
'firmware' directory containing file lists, but there's already a
different top-level 'firmware' directory in the kernel tree. Moving all
of this into $(builddir) seems like a good idea anyway to reduce
clutter.
Signed-off-by: Colin Watson <cjwatson at canonical.com>
---
debian/rules | 60 +++++++++++++++++++++++++-------------------
debian/rules.d/5-udebs.mk | 5 ++-
2 files changed, 37 insertions(+), 28 deletions(-)
diff --git a/debian/rules b/debian/rules
index f661442..443babc 100755
--- a/debian/rules
+++ b/debian/rules
@@ -37,7 +37,6 @@ clean: debian/control
dh_clean
# d-i stuff
- rm -rf modules kernel-versions package-list
rm -rf debian/d-i-$(arch)
# normal build junk
@@ -82,22 +81,26 @@ debian/control.stub: debian/d-i/kernel-versions.in \
.PHONY: debian/control
debian/control: debian/control.stub
- rm -rf modules kernel-versions package-list
- mkdir -p modules/$(arch)/
- cp debian/d-i/modules/* modules/$(arch)/
- cp debian/d-i/package-list debian/d-i/kernel-versions .
- touch modules/$(arch)/kernel-image
+ rm -rf $(builddir)/modules $(builddir)/kernel-versions \
+ $(builddir)/package-list $(builddir)/debian
+ mkdir -p $(builddir)/modules/$(arch)/
+ cp debian/d-i/modules/* $(builddir)/modules/$(arch)/
+ cp debian/d-i/package-list debian/d-i/kernel-versions $(builddir)/
+ touch $(builddir)/modules/$(arch)/kernel-image
+ # kernel-wedge needs to poke around in debian/
+ ln -nsf $(CURDIR)/debian $(builddir)/debian
# Some files may need to differ between architectures
if [ -d debian/d-i/modules-$(arch) ]; then \
- cp debian/d-i/modules-$(arch)/* modules/$(arch)/; \
+ cp debian/d-i/modules-$(arch)/* \
+ $(builddir)/modules/$(arch)/; \
fi
# Remove unwanted stuff for this architecture
- if [ -r "debian/d-i/exclude-modules.$(arch)" ]; then \
- (cat debian/d-i/exclude-modules.$(arch); \
- ls modules/$(arch)/) | sort | uniq -d | \
- (cd modules/$(arch)/; xargs rm -f); \
+ if [ -r "debian/d-i/exclude-modules.$(arch)" ]; then \
+ (cat debian/d-i/exclude-modules.$(arch); \
+ ls $(builddir)/modules/$(arch)/) | sort | uniq -d | \
+ (cd $(builddir)/modules/$(arch)/; xargs rm -f); \
fi
# Per flavour module lists
@@ -106,10 +109,10 @@ debian/control: debian/control.stub
if [ "$$flavour_modules" != "" ]; then \
for flav in $$flavour_modules; do \
name=`echo $$flav | sed 's/.*\/modules.$(arch)-//'`; \
- mkdir modules/$(arch)-$$name; \
- (cd modules/; tar cf - `cat ../$$flav`) | \
- (cd modules/$(arch)-$$name/; tar xf -); \
- touch modules/$(arch)-$$name/kernel-image; \
+ mkdir $(builddir)/modules/$(arch)-$$name; \
+ (cd $(builddir)/modules/; tar cf - `cat ../$$flav`) | \
+ (cd $(builddir)/modules/$(arch)-$$name/; tar xf -); \
+ touch $(builddir)/modules/$(arch)-$$name/kernel-image; \
done; \
fi
@@ -119,9 +122,10 @@ debian/control: debian/control.stub
if [ "$$flavour_module_dirs" ]; then \
for flav in $$flavour_module_dirs; do \
name=`echo $$flav | sed 's/.*\/modules-$(arch)-//'`; \
- [ -d modules/$(arch)-$$name ] || \
- cp -a modules/$(arch) modules/$(arch)-$$name; \
- cp $$flav/* modules/$(arch)-$$name/; \
+ [ -d $(builddir)/modules/$(arch)-$$name ] || \
+ cp -a $(builddir)/modules/$(arch) \
+ modules/$(arch)-$$name; \
+ cp $$flav/* $(builddir)/modules/$(arch)-$$name/; \
done; \
fi
@@ -131,17 +135,21 @@ debian/control: debian/control.stub
if [ "$$flavour_exclude" ]; then \
for flav in $$flavour_exclude; do \
name=`echo $$flav | sed 's/.*\/exclude-modules.$(arch)-//'`;\
- [ -d modules/$(arch)-$$name ] || \
- cp -a modules/$(arch) modules/$(arch)-$$name; \
+ [ -d $(builddir)/modules/$(arch)-$$name ] || \
+ cp -a $(builddir)/modules/$(arch) \
+ $(builddir)/modules/$(arch)-$$name; \
(cat $$flav; \
- ls modules/$(arch)-$$name) | sort | uniq -d | \
- (cd modules/$(arch)-$$name/; xargs rm -f); \
+ ls $(builddir)/modules/$(arch)-$$name) | \
+ sort | uniq -d | \
+ (cd $(builddir)/modules/$(arch)-$$name/; \
+ xargs rm -f); \
done; \
fi
- if [ ! -d modules/$(build_arch) ]; then \
- mkdir -p modules/$(build_arch); \
- cp modules/$(arch)/* modules/$(build_arch); \
+ if [ ! -d $(builddir)/modules/$(build_arch) ]; then \
+ mkdir -p $(builddir)/modules/$(build_arch); \
+ cp $(builddir)/modules/$(arch)/* \
+ $(builddir)/modules/$(build_arch); \
fi
- kernel-wedge gen-control > debian/control
+ cd $(builddir) && kernel-wedge gen-control > debian/control
diff --git a/debian/rules.d/5-udebs.mk b/debian/rules.d/5-udebs.mk
index 2e55acf..5e07066 100644
--- a/debian/rules.d/5-udebs.mk
+++ b/debian/rules.d/5-udebs.mk
@@ -11,7 +11,7 @@ do-binary-udebs:
# unpack the kernels into a temporary directory
mkdir -p debian/d-i-${arch}
- imagelist=$$(cat kernel-versions | grep ^${arch} | awk '{print $$4}') && \
+ imagelist=$$(cat $(builddir)/kernel-versions | grep ^${arch} | awk '{print $$4}') && \
for i in $$imagelist; do \
dpkg -x $$(ls ../linux-image-$$i\_$(release)-$(revision)_${arch}.deb) \
debian/d-i-${arch}; \
@@ -19,7 +19,8 @@ do-binary-udebs:
done
touch ignore-dups
- export SOURCEDIR=debian/d-i-${arch} && \
+ export SOURCEDIR=$(CURDIR)/debian/d-i-${arch} && \
+ cd $(builddir) && \
kernel-wedge install-files && \
kernel-wedge check
--
1.6.3.1
More information about the kernel-team
mailing list