Hi, > -----Original Message----- > From: openwrt-devel [mailto:openwrt-devel-boun...@lists.openwrt.org] > On Behalf Of Sven Roederer > Sent: Samstag, 24. April 2021 23:48 > To: openwrt-devel@lists.openwrt.org > Subject: [PATCH v2] imagebuilder, sdk: unset BINARY_FOLDER and > DOWNLOAD_FOLDER in final archives > > Using these config-options to customize the folders used at build-time > makes these folder settings appear in generated archives. This causes the > archives to be not portable, as they going to use the build-time folders on > the new systems. Errors look like for the imagebuilder: > > mkdir: cannot create directory '/mnt/build': Permission denied > Makefile:116: recipe for target '_call_image' failed > make[2]: *** [_call_image] Error 1 > Makefile:241: recipe for target 'image' failed > make[1]: *** [image] Error 2 > > The build-time settings of these folders are passed into the archives via > .config for the imagebuilder and via Config.in and Config.build for the sdk. > The expected behavior is that after unpacking sdk and imagebuilder act like > these settings have the default, using intree folders. So unset or filter out > the build- time settings.
Consider breaking this down into separate patches for imagebuilder and sdk. Best Adrian > > Signed-off-by: Sven Roederer <devel-s...@geroedel.de> > --- > > This is an rewrite and extension of the patch send on 11. April. > > > target/imagebuilder/Makefile | 2 ++ > target/sdk/Makefile | 1 + > target/sdk/convert-config.pl | 9 ++++++++- > 3 files changed, 11 insertions(+), 1 deletion(-) > > diff --git a/target/imagebuilder/Makefile b/target/imagebuilder/Makefile > index f9c08776a8..ef7fd3f25e 100644 > --- a/target/imagebuilder/Makefile > +++ b/target/imagebuilder/Makefile > @@ -29,6 +29,8 @@ $(BIN_DIR)/$(IB_NAME).tar.xz: clean > mkdir -p $(IB_KDIR) $(IB_LDIR) > $(PKG_BUILD_DIR)/staging_dir/host/lib \ > $(PKG_BUILD_DIR)/target $(PKG_BUILD_DIR)/scripts > $(IB_DTSDIR) > -cp $(TOPDIR)/.config $(PKG_BUILD_DIR)/.config > + $(SED) 's/^CONFIG_BINARY_FOLDER=.*/# CONFIG_BINARY_FOLDER > was reset by Imagebuilder/' $(PKG_BUILD_DIR)/.config > + $(SED) 's/^CONFIG_DOWNLOAD_FOLDER=.*/# > CONFIG_DOWNLOAD_FOLDER was > +reset by Imagebuilder/' $(PKG_BUILD_DIR)/.config > $(CP) -L \ > $(INCLUDE_DIR) $(SCRIPT_DIR) \ > $(TOPDIR)/rules.mk \ > diff --git a/target/sdk/Makefile b/target/sdk/Makefile index > 0606621192..5330d14955 100644 > --- a/target/sdk/Makefile > +++ b/target/sdk/Makefile > @@ -159,6 +159,7 @@ $(BIN_DIR)/$(SDK_NAME).tar.xz: clean > $(SED) 's,^# REVISION:=.*,REVISION:=$(REVISION),g' > $(SDK_BUILD_DIR)/include/version.mk > $(SED) 's,^# > SOURCE_DATE_EPOCH:=.*,SOURCE_DATE_EPOCH:=$(SOURCE_DATE_EPOC > H),g' $(SDK_BUILD_DIR)/include/version.mk > $(SED) '/LINUX_VERMAGIC:=/ { s,unknown,$(LINUX_VERMAGIC),g }' > $(SDK_BUILD_DIR)/include/kernel.mk > + $(SED) 's,default "$(CONFIG_DOWNLOAD_FOLDER)",default "",' > +$(SDK_BUILD_DIR)/Config.in > find $(SDK_BUILD_DIR) -name .git | $(XARGS) rm -rf > find $(SDK_BUILD_DIR) -name .svn | $(XARGS) rm -rf > find $(SDK_BUILD_DIR) -name CVS | $(XARGS) rm -rf diff --git > a/target/sdk/convert-config.pl b/target/sdk/convert-config.pl index > f73744af09..f6bc831d3a 100755 > --- a/target/sdk/convert-config.pl > +++ b/target/sdk/convert-config.pl > @@ -9,7 +9,14 @@ while (<>) { > chomp; > next if /^CONFIG_SIGNED_PACKAGES/; > > - if (/^CONFIG_([^=]+)=(.*)$/) { > + if (/^CONFIG_((BINARY)|(DOWNLOAD))_FOLDER=(.*)$/) { > + # We don't want to preserve the build setting of > + # BINARY_FOLDER and DOWNLOAD_FOLDER. > + $var = "$1_FOLDER"; > + $val = '""'; > + $type = "string"; > +# warn "DEBUG: type: $type found for symbol > CONFIG_$var=$val\n"; > + } elsif (/^CONFIG_([^=]+)=(.*)$/) { > $var = $1; > $val = $2; > > -- > 2.17.1 > > > _______________________________________________ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/mailman/listinfo/openwrt-devel
openpgp-digital-signature.asc
Description: PGP signature
_______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel