summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/version.mk16
-rw-r--r--package/base-files/Makefile3
-rw-r--r--package/base-files/files/etc/device_info3
-rw-r--r--package/base-files/image-config.in36
4 files changed, 50 insertions, 8 deletions
diff --git a/include/version.mk b/include/version.mk
index 575398b..a84065d 100644
--- a/include/version.mk
+++ b/include/version.mk
@@ -12,7 +12,10 @@ PKG_CONFIG_DEPENDS += \
CONFIG_VERSION_NUMBER \
CONFIG_VERSION_NICK \
CONFIG_VERSION_REPO \
- CONFIG_VERSION_DIST
+ CONFIG_VERSION_DIST \
+ CONFIG_VERSION_MANUFACTURER \
+ CONFIG_VERSION_PRODUCT \
+ CONFIG_VERSION_HWREV \
VERSION_NUMBER:=$(call qstrip,$(CONFIG_VERSION_NUMBER))
VERSION_NUMBER:=$(if $(VERSION_NUMBER),$(VERSION_NUMBER),$(REVISION))
@@ -29,6 +32,14 @@ VERSION_REPO:=$(if $(VERSION_REPO),$(VERSION_REPO),http://downloads.openwrt.org/
VERSION_DIST:=$(call qstrip,$(CONFIG_VERSION_DIST))
VERSION_DIST:=$(if $(VERSION_DIST),$(VERSION_DIST),OpenWrt)
+VERSION_MANUFACTURER:=$(call qstrip,$(CONFIG_VERSION_MANUFACTURER))
+VERSION_MANUFACTURER:=$(if $(VERSION_MANUFACTURER),$(VERSION_MANUFACTURER),OpenWrt)
+
+VERSION_PRODUCT:=$(call qstrip,$(CONFIG_VERSION_PRODUCT))
+VERSION_PRODUCT:=$(if $(VERSION_PRODUCT),$(VERSION_PRODUCT),Generic)
+
+VERSION_HWREV:=$(call qstrip,$(CONFIG_VERSION_HWREV))
+VERSION_HWREV:=$(if $(VERSION_HWREV),$(VERSION_HWREV),v0)
define taint2sym
$(CONFIG_$(firstword $(subst :, ,$(subst +,,$(subst -,,$(1))))))
@@ -66,3 +77,6 @@ VERSION_SED:=$(SED) 's,%U,$(VERSION_REPO),g' \
-e 's,%T,$(BOARD),g' \
-e 's,%S,$(BOARD)/$(if $(SUBTARGET),$(SUBTARGET),generic),g' \
-e 's,%t,$(VERSION_TAINTS),g' \
+ -e 's,%M,$(VERSION_MANUFACTURER),g' \
+ -e 's,%P,$(VERSION_PRODUCT),g' \
+ -e 's,%h,$(VERSION_HWREV),g'
diff --git a/package/base-files/Makefile b/package/base-files/Makefile
index 5faa439..76a4dab 100644
--- a/package/base-files/Makefile
+++ b/package/base-files/Makefile
@@ -111,7 +111,8 @@ define Package/base-files/install
$(VERSION_SED) \
$(1)/etc/banner \
$(1)/etc/openwrt_version \
- $(1)/etc/openwrt_release
+ $(1)/etc/openwrt_release \
+ $(1)/etc/device_info
mkdir -p $(1)/CONTROL
mkdir -p $(1)/dev
diff --git a/package/base-files/files/etc/device_info b/package/base-files/files/etc/device_info
new file mode 100644
index 0000000..da2c4a3
--- /dev/null
+++ b/package/base-files/files/etc/device_info
@@ -0,0 +1,3 @@
+DEVICE_MANUFACTURER="%M"
+DEVICE_PRODUCT="%P"
+DEVICE_REVISION="%h"
diff --git a/package/base-files/image-config.in b/package/base-files/image-config.in
index a9eb78c..66134aa 100644
--- a/package/base-files/image-config.in
+++ b/package/base-files/image-config.in
@@ -142,24 +142,26 @@ menuconfig VERSIONOPT
they're useful for release builds or custom OpenWrt redistributions
that should carry custom version tags.
+if VERSIONOPT
+
config VERSION_DIST
string
- prompt "Release distribution" if VERSIONOPT
- default "OpenWrt" if VERSIONOPT
+ prompt "Release distribution"
+ default "OpenWrt"
help
This is the name of the release distribution.
If unspecified, it defaults to OpenWrt.
config VERSION_NICK
string
- prompt "Release version nickname" if VERSIONOPT
+ prompt "Release version nickname"
help
This is the release codename embedded in the image.
If unspecified, it defaults to the name of source branch.
config VERSION_NUMBER
string
- prompt "Release version number" if VERSIONOPT
+ prompt "Release version number"
help
This is the release version number embedded in the image.
If unspecified, it defaults to the svn or git-svn revision
@@ -167,8 +169,8 @@ menuconfig VERSIONOPT
config VERSION_REPO
string
- prompt "Release repository" if VERSIONOPT
- default "http://downloads.openwrt.org/snapshots/trunk/%T/packages" if VERSIONOPT
+ prompt "Release repository"
+ default "http://downloads.openwrt.org/snapshots/trunk/%T/packages"
help
This is the repository address embedded in the image, it defaults
to the trunk snapshot repo; the url may contain the following placeholders:
@@ -184,6 +186,28 @@ menuconfig VERSIONOPT
%T .. Target name
%S .. Target/Subtarget name
+ config VERSION_MANUFACTURER
+ string
+ prompt "Manufacturer name"
+ help
+ This is the manufacturer name embedded in /etc/device_info
+ Useful for OEMs building OpenWrt based firmware
+
+ config VERSION_PRODUCT
+ string
+ prompt "Product name"
+ help
+ This is the product name embedded in /etc/device_info
+ Useful for OEMs building OpenWrt based firmware
+
+ config VERSION_HWREV
+ string
+ prompt "Hardware revision"
+ help
+ This is the hardware revision string embedded in /etc/device_info
+ Useful for OEMs building OpenWrt based firmware
+endif
+
menuconfig SMIMEOPT
bool "Package signing options" if IMAGEOPT
default n