mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-03 14:34:27 -05:00 
			
		
		
		
	base-files: properly escape strings for version info
Make sure they don't break the sed command, and also make device_info and openwrt_release more robust for parsing by scripts Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 41885
This commit is contained in:
		
							parent
							
								
									dbb77e39a0
								
							
						
					
					
						commit
						d5653558ac
					
				@ -17,28 +17,31 @@ PKG_CONFIG_DEPENDS += \
 | 
			
		||||
	CONFIG_VERSION_PRODUCT \
 | 
			
		||||
	CONFIG_VERSION_HWREV \
 | 
			
		||||
 | 
			
		||||
VERSION_NUMBER:=$(call qstrip,$(CONFIG_VERSION_NUMBER))
 | 
			
		||||
qstrip_escape=$(subst ','\'',$(call qstrip,$(1)))
 | 
			
		||||
#'
 | 
			
		||||
 | 
			
		||||
VERSION_NUMBER:=$(call qstrip_escape,$(CONFIG_VERSION_NUMBER))
 | 
			
		||||
VERSION_NUMBER:=$(if $(VERSION_NUMBER),$(VERSION_NUMBER),$(REVISION))
 | 
			
		||||
 | 
			
		||||
VERSION_CODE:=$(call qstrip,$(CONFIG_VERSION_NUMBER))
 | 
			
		||||
VERSION_CODE:=$(call qstrip_escape,$(CONFIG_VERSION_NUMBER))
 | 
			
		||||
VERSION_CODE:=$(if $(VERSION_CODE),$(VERSION_CODE),Bleeding Edge)
 | 
			
		||||
 | 
			
		||||
VERSION_NICK:=$(call qstrip,$(CONFIG_VERSION_NICK))
 | 
			
		||||
VERSION_NICK:=$(call qstrip_escape,$(CONFIG_VERSION_NICK))
 | 
			
		||||
VERSION_NICK:=$(if $(VERSION_NICK),$(VERSION_NICK),$(RELEASE))
 | 
			
		||||
 | 
			
		||||
VERSION_REPO:=$(call qstrip,$(CONFIG_VERSION_REPO))
 | 
			
		||||
VERSION_REPO:=$(call qstrip_escape,$(CONFIG_VERSION_REPO))
 | 
			
		||||
VERSION_REPO:=$(if $(VERSION_REPO),$(VERSION_REPO),http://downloads.openwrt.org/snapshots/trunk/%T/packages)
 | 
			
		||||
 | 
			
		||||
VERSION_DIST:=$(call qstrip,$(CONFIG_VERSION_DIST))
 | 
			
		||||
VERSION_DIST:=$(call qstrip_escape,$(CONFIG_VERSION_DIST))
 | 
			
		||||
VERSION_DIST:=$(if $(VERSION_DIST),$(VERSION_DIST),OpenWrt)
 | 
			
		||||
 | 
			
		||||
VERSION_MANUFACTURER:=$(call qstrip,$(CONFIG_VERSION_MANUFACTURER))
 | 
			
		||||
VERSION_MANUFACTURER:=$(call qstrip_escape,$(CONFIG_VERSION_MANUFACTURER))
 | 
			
		||||
VERSION_MANUFACTURER:=$(if $(VERSION_MANUFACTURER),$(VERSION_MANUFACTURER),OpenWrt)
 | 
			
		||||
 | 
			
		||||
VERSION_PRODUCT:=$(call qstrip,$(CONFIG_VERSION_PRODUCT))
 | 
			
		||||
VERSION_PRODUCT:=$(call qstrip_escape,$(CONFIG_VERSION_PRODUCT))
 | 
			
		||||
VERSION_PRODUCT:=$(if $(VERSION_PRODUCT),$(VERSION_PRODUCT),Generic)
 | 
			
		||||
 | 
			
		||||
VERSION_HWREV:=$(call qstrip,$(CONFIG_VERSION_HWREV))
 | 
			
		||||
VERSION_HWREV:=$(call qstrip_escape,$(CONFIG_VERSION_HWREV))
 | 
			
		||||
VERSION_HWREV:=$(if $(VERSION_HWREV),$(VERSION_HWREV),v0)
 | 
			
		||||
 | 
			
		||||
define taint2sym
 | 
			
		||||
@ -80,3 +83,5 @@ VERSION_SED:=$(SED) 's,%U,$(VERSION_REPO),g' \
 | 
			
		||||
	-e 's,%M,$(VERSION_MANUFACTURER),g' \
 | 
			
		||||
	-e 's,%P,$(VERSION_PRODUCT),g' \
 | 
			
		||||
	-e 's,%h,$(VERSION_HWREV),g'
 | 
			
		||||
 | 
			
		||||
VERSION_SED_SCRIPT:=$(subst '\'','\'\\\\\'\'',$(VERSION_SED))
 | 
			
		||||
 | 
			
		||||
@ -110,7 +110,9 @@ define Package/base-files/install
 | 
			
		||||
 | 
			
		||||
	$(VERSION_SED) \
 | 
			
		||||
		$(1)/etc/banner \
 | 
			
		||||
		$(1)/etc/openwrt_version \
 | 
			
		||||
		$(1)/etc/openwrt_version
 | 
			
		||||
 | 
			
		||||
	$(VERSION_SED_SCRIPT) \
 | 
			
		||||
		$(1)/etc/openwrt_release \
 | 
			
		||||
		$(1)/etc/device_info
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,3 +1,3 @@
 | 
			
		||||
DEVICE_MANUFACTURER="%M"
 | 
			
		||||
DEVICE_PRODUCT="%P"
 | 
			
		||||
DEVICE_REVISION="%h"
 | 
			
		||||
DEVICE_MANUFACTURER='%M'
 | 
			
		||||
DEVICE_PRODUCT='%P'
 | 
			
		||||
DEVICE_REVISION='%h'
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
DISTRIB_ID="%D"
 | 
			
		||||
DISTRIB_RELEASE="%C"
 | 
			
		||||
DISTRIB_REVISION="%R"
 | 
			
		||||
DISTRIB_CODENAME="%n"
 | 
			
		||||
DISTRIB_TARGET="%S"
 | 
			
		||||
DISTRIB_DESCRIPTION="%D %N %V"
 | 
			
		||||
DISTRIB_TAINTS="%t"
 | 
			
		||||
DISTRIB_ID='%D'
 | 
			
		||||
DISTRIB_RELEASE='%C'
 | 
			
		||||
DISTRIB_REVISION='%R'
 | 
			
		||||
DISTRIB_CODENAME='%n'
 | 
			
		||||
DISTRIB_TARGET='%S'
 | 
			
		||||
DISTRIB_DESCRIPTION='%D %N %V'
 | 
			
		||||
DISTRIB_TAINTS='%t'
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user