From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mediacenter.hi.pengutronix.de ([2001:6f8:1178:2::65]) by metis.ext.pengutronix.de with esmtp (Exim 4.72) (envelope-from ) id 1SZlft-0005oP-4u for ptxdist@pengutronix.de; Wed, 30 May 2012 18:23:05 +0200 Received: from mol by mediacenter.hi.pengutronix.de with local (Exim 4.72) (envelope-from ) id 1SZlft-0008LE-42 for ptxdist@pengutronix.de; Wed, 30 May 2012 18:23:05 +0200 Date: Wed, 30 May 2012 18:23:05 +0200 From: Michael Olbrich Message-ID: <20120530162305.GE31687@pengutronix.de> References: <1338208981-8681-11-git-send-email-bartvdrmeulen@gmail.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <1338208981-8681-11-git-send-email-bartvdrmeulen@gmail.com> Subject: Re: [ptxdist] [PATCH] kernel: Ignore config difference when using rootfs in kernel option Reply-To: ptxdist@pengutronix.de List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: ptxdist-bounces@pengutronix.de Errors-To: ptxdist-bounces@pengutronix.de To: ptxdist@pengutronix.de On Mon, May 28, 2012 at 02:42:37PM +0200, Bart vdr. Meulen wrote: > From: "Bart vdr. Meulen" > > When using a rootfs inside the kernel the config option CONFIG_INITRAMFS_SOURCE > is changed build time, ignore this when checking for differences > after running oldconfig. > > This prevents a make failure when the source kernel.config is read-only, > preventing the copy back action that normally takes place when a > difference is detected. > > Signed-off-by: Bart vdr. Meulen > --- > rules/kernel.make | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) > > diff --git a/rules/kernel.make b/rules/kernel.make > index 4a45a3f..e1e3a6a 100644 > --- a/rules/kernel.make > +++ b/rules/kernel.make > @@ -111,16 +111,19 @@ ifdef KERNEL_INITRAMFS_SOURCE_y > endif > > @$(call ptx/oldconfig, KERNEL) > - @diff -q -I "# [^C]" "$(KERNEL_DIR)/.config" "$(<)" > /dev/null || cp "$(KERNEL_DIR)/.config" "$(<)" > - > # > +# CONFIG_INITRAMFS_SOURCE has been changed in .config, ignore when taking diff. > # Don't keep the expanded path to INITRAMS_SOURCE in $(KERNEL_CONFIG), > # because it contains local workdir path which is not relevant to > # other developers. > # > ifdef KERNEL_INITRAMFS_SOURCE_y > + @diff -q -I "# [^C]" -I "^CONFIG_INITRAMFS_SOURCE=[^C]" "$(KERNEL_DIR)/.config" "$(<)" > /dev/null || \ > + cp "$(KERNEL_DIR)/.config" "$(<)" > @sed -i -e 's,^CONFIG_INITRAMFS_SOURCE.*$$,CONFIG_INITRAMFS_SOURCE=\"# Automatically set by PTXDist\",g' \ > "$(<)" > +else > + @diff -q -I "# [^C]" "$(KERNEL_DIR)/.config" "$(<)" > /dev/null || cp "$(KERNEL_DIR)/.config" "$(<)" > endif This is getting rather complex. Maybe like this (untested): @cp "$(KERNEL_DIR)/.config" "$(KERNEL_DIR)/.config.ptx" ifdef KERNEL_INITRAMFS_SOURCE_y @sed -i -e 's,^CONFIG_INITRAMFS_SOURCE.*$$,CONFIG_INITRAMFS_SOURCE=\"# Automatically set by PTXDist\",g' \ "$(KERNEL_DIR)/.config.ptx" endif @diff -q -I "# [^C]" "$(KERNEL_DIR)/.config.ptx" "$(<)" > /dev/null || cp "$(KERNEL_DIR)/.config.ptx" "$(<)" Michael > @$(call touch) > > -- > 1.7.9.5 > > > -- > ptxdist mailing list > ptxdist@pengutronix.de > -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | -- ptxdist mailing list ptxdist@pengutronix.de