From a43ae30e1bebe4d502ff1da4e715dd4cabcde83c Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 12 Apr 2012 17:31:16 +0000 Subject: include, base-files, opkg: introduce version configuration to override the embedded version info of generated images - Introduce new Kconfig symbols VERSION_DIST, VERSION_NICK, VERSION_NUMBER and VERSION_REPO to specify distribution, release name, version and repository for a given build - Introduce include/version.mk to provide common helpers for packages dealing with versions - Make opkg use version.mk to populate the opkg.conf template - Make base-files use version.mk to populate /etc/openwrt_version, /etc/openwrt_release and /etc/banner The available placeholders are: %D .. Replace with $(CONFIG_VERSION_DIST), default to "OpenWrt" %d .. Like %D, but all characters made lowercase and spaces substituted with "_" (e.g. "openwrt") %N .. Replace with $(CONFIG_VERSION_NICK), default to the build tree release (e.g. "Attitude Adjustment") %n .. Like %N, but all characters made lowercase and spaces substituted with "_" (e.g. "attitude_adjustment") %V .. Replace with $(CONFIG_VERSION_NUMBER), default to the build tree release (e.g. "r31262") %v .. Like %V, but all characters made lowercase and spaces substituted with "_" %C .. Replace with $(CONFIG_VERSION_NUMBER), default to "Bleeding Edge" %c .. Like %C, but all characters made lowercase and spaces substituted with "_" (e.g. "bleeding_edge") %U .. Replace with $(CONFIG_VERSION_REPO), default to "http://downloads.openwrt.org/snapshots/trunk/%T/packages" %R .. Replace with the current build tree revision (e.g. "r31262" or "75488c4a05b8033cf69e91874a61852db7ba9c6c") %T .. Replace with the current target (e.g. "ar71xx") %S .. Replace with the current target/subtarget combo (e.g. "adm5120/router_le") SVN-Revision: 31262 --- package/base-files/image-config.in | 55 +++++++++++++++++++++++++++++++++++++- 1 file changed, 54 insertions(+), 1 deletion(-) (limited to 'package/base-files/image-config.in') diff --git a/package/base-files/image-config.in b/package/base-files/image-config.in index aca511cdf5..497b092d26 100644 --- a/package/base-files/image-config.in +++ b/package/base-files/image-config.in @@ -1,4 +1,4 @@ -# Copyright (C) 2006 OpenWrt.org +# Copyright (C) 2006-2012 OpenWrt.org # Copyright (C) 2010 Vertical Communications # # This is free software, licensed under the GNU General Public License v2. @@ -130,3 +130,56 @@ menuconfig INITOPT suppressed during preinit. This is the default behaviour in previous versions of OpenWRT. Removing this does nothing if stderr is suppressed during preinit (which is the default). + + +menuconfig VERSIONOPT + bool "Version configuration options" if IMAGEOPT + default n + help + These options allow to override the version information embedded in + the /etc/openwrt_version, /etc/openwrt_release, /etc/banner and + /etc/opkg.conf files. Usually there is no need to set these, but + they're useful for release builds or custom OpenWrt redistributions + that should carry custom version tags. + + config VERSION_DIST + string + prompt "Release distribution" if VERSIONOPT + 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 + 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 + help + This is the release version number embedded in the image. + If unspecified, it defaults to the svn or git-svn revision + of the build tree. + + config VERSION_REPO + string + prompt "Release repository" if VERSIONOPT + 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: + %R .. Revision number + %V .. Release version or revision number, uppercase + %v .. Release version or revision number, lowercase + %C .. Release version or "Bleeding Edge", uppercase + %c .. Release version or "bleeding_edge", lowercase + %N .. Release name, uppercase + %n .. Release name, lowercase + %D .. Distribution name or "OpenWrt", uppercase + %d .. Distribution name or "openwrt", lowercase + %T .. Target name + %S .. Target/Subtarget name -- cgit v1.2.3