[PATCH 1/3] UBUNTU: Run kernel-wedge in $(builddir) rather than at the top level

Andy Whitcroft apw at canonical.com
Thu Jun 11 12:47:30 UTC 2009


This one looks like a simple substitution as claimed.  OK.

-apw

On Tue, Jun 09, 2009 at 04:43:07PM +0100, Colin Watson wrote:
> 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
> 
> -- 
> kernel-team mailing list
> kernel-team at lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team




More information about the kernel-team mailing list