9791fb2ac2
Now that the VERSION_NUMBER variable holds the human friendly name and not the commit ID anymore, we need to support adding the revision ID as well. Introduce a new config variable CONFIG_VERSION_CODE_FILENAMES which, if set, causes the resulting file names to contain a commit ID designation as printed by scripts/getver.sh. Also sanitize the input variables to ensure that the resulting strings are lowercased and no not contain spaces. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
333 lines
10 KiB
Text
333 lines
10 KiB
Text
# Copyright (C) 2006-2012 OpenWrt.org
|
|
# Copyright (C) 2010 Vertical Communications
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
menuconfig PREINITOPT
|
|
bool "Preinit configuration options" if IMAGEOPT
|
|
default n
|
|
help
|
|
These options are used to control the environment used to initialize
|
|
the system before running init (which typically mean /sbin/init which
|
|
switches to multiuser mode).
|
|
|
|
config TARGET_PREINIT_SUPPRESS_STDERR
|
|
bool "Suppress stderr messages during preinit" if PREINITOPT
|
|
default y
|
|
help
|
|
Sends stderr to null during preinit. This is the default behaviour
|
|
in previous versions of OpenWrt. This also prevents init process
|
|
itself from displaying stderr, however processes launched by init
|
|
in multiuser through inittab will use the current terminal (e.g.
|
|
the ash shell launched by inittab will display stderr). That's
|
|
the same behaviour as seen in previous version of OpenWrt.
|
|
|
|
config TARGET_PREINIT_DISABLE_FAILSAFE
|
|
bool
|
|
prompt "Disable failsafe" if PREINITOPT
|
|
default n
|
|
help
|
|
Disable failsafe mode. While it is very handy while
|
|
experimenting or developing it really ought to be
|
|
disabled in production environments as it is a major
|
|
security loophole.
|
|
|
|
config TARGET_PREINIT_TIMEOUT
|
|
int
|
|
prompt "Failsafe/Debug wait timeout" if PREINITOPT
|
|
default 2
|
|
help
|
|
How long to wait for failsafe mode to be entered or for
|
|
a debug option to be pressed before continuing with a
|
|
regular boot.
|
|
|
|
config TARGET_PREINIT_SHOW_NETMSG
|
|
bool
|
|
prompt "Show all preinit network messages" if PREINITOPT
|
|
default n
|
|
help
|
|
Show preinit all network messages (via netmsg broadcast), not only
|
|
the message indicating to press reset to enter failsafe. Note that
|
|
if the architecture doesn't define an interface, and there is no
|
|
'Preinit network interface' defined, then no messages will be
|
|
emitted, even if this is set.
|
|
|
|
config TARGET_PREINIT_SUPPRESS_FAILSAFE_NETMSG
|
|
bool
|
|
prompt "Suppress network message indicating failsafe" if ( PREINITOPT && !TARGET_PREINIT_SHOW_NETMSG && !TARGET_PREINIT_DISABLE_FAILSAFE )
|
|
default n
|
|
help
|
|
If "Show all preinit network messages" above is not set, then
|
|
setting this option suppresses the only message that would be
|
|
emitted otherwise, name the network message to enter failsafe
|
|
(via netmsg).
|
|
|
|
config TARGET_PREINIT_IFNAME
|
|
string
|
|
prompt "Preinit network interface" if PREINITOPT
|
|
default ""
|
|
help
|
|
Interface for sending preinit messages to network, and any other
|
|
default networking in failsafe or preinit. If empty
|
|
uses $ifname (if defined in /etc/preinit.arch).
|
|
|
|
config TARGET_PREINIT_IP
|
|
string
|
|
prompt "IP address for preinit network messages" if PREINITOPT
|
|
default "192.168.1.1"
|
|
help
|
|
IP address used to configure interface for preinit network
|
|
messages, including failsafe messages
|
|
|
|
config TARGET_PREINIT_NETMASK
|
|
string
|
|
prompt "Netmask for preinit network messages" if PREINITOPT
|
|
default "255.255.255.0"
|
|
help
|
|
Netmask used to configure interface for preinit network
|
|
messages, including failsafes messages
|
|
|
|
config TARGET_PREINIT_BROADCAST
|
|
string
|
|
prompt "Broadcast address for preinit network messages" if PREINITOPT
|
|
default "192.168.1.255"
|
|
help
|
|
Broadcast address to which to send preinit network messages, as
|
|
as failsafe messages
|
|
|
|
|
|
menuconfig INITOPT
|
|
bool "Init configuration options" if IMAGEOPT
|
|
default n
|
|
help
|
|
These option choose the command that will run as the 'init' command
|
|
(that is which is responsible for controlling the system once preinit
|
|
transfers control to it) as well as some options controlling its
|
|
behaviour. Normally init is /sbin/init.
|
|
|
|
config TARGET_INIT_PATH
|
|
string
|
|
prompt "PATH for regular boot" if INITOPT
|
|
default "/usr/sbin:/usr/bin:/sbin:/bin"
|
|
help
|
|
Default PATH used during normal operation
|
|
|
|
config TARGET_INIT_ENV
|
|
string
|
|
prompt "Environment variables to set when starting init (start with none)" if INITOPT
|
|
default ""
|
|
help
|
|
Should be a space seperated list of variable assignments. These
|
|
variables will be present in the environment. Spaces may not be
|
|
present (including through expansion) even in a quoted string
|
|
(env doesn't understanding quoting).
|
|
|
|
config TARGET_INIT_CMD
|
|
string
|
|
prompt "Init command" if INITOPT
|
|
default "/sbin/init"
|
|
help
|
|
The executable to run as the init process. Is 'exec'd by
|
|
preinit (which is the init that the kernel launches on boot).
|
|
|
|
config TARGET_INIT_SUPPRESS_STDERR
|
|
bool
|
|
prompt "Suppress stderr messages of init" if INITOPT
|
|
default y
|
|
help
|
|
Prevents showing stderr messages for init command if not already
|
|
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,
|
|
/etc/opkg.conf, and /etc/os-release 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.
|
|
|
|
if VERSIONOPT
|
|
|
|
config VERSION_DIST
|
|
string
|
|
prompt "Release distribution"
|
|
default "Lede"
|
|
help
|
|
This is the name of the release distribution.
|
|
If unspecified, it defaults to OpenWrt.
|
|
|
|
config VERSION_NICK
|
|
string
|
|
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"
|
|
help
|
|
This is the release version number embedded in the image.
|
|
If unspecified, it defaults to CURRENT for the master branch
|
|
or to ##.##-CURRENT on release branches.
|
|
|
|
config VERSION_CODE
|
|
string
|
|
prompt "Release version code"
|
|
help
|
|
This is the release version code embedded in the image.
|
|
If unspecified, it defaults to a revision number describing the
|
|
repository version of the source, e.g. the number of commits
|
|
since a branch point or a short Git commit ID.
|
|
|
|
config VERSION_REPO
|
|
string
|
|
prompt "Release repository"
|
|
default "http://downloads.lede-project.org/snapshots"
|
|
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 .. Repository revision ID
|
|
%V .. Configured release version number or "CURRENT", uppercase
|
|
%v .. Configured release version number or "current", lowercase
|
|
%C .. Configured release revision code or value of %R, uppercase
|
|
%c .. Configured release revision code or value of %R, lowercase
|
|
%N .. Release name, uppercase
|
|
%n .. Release name, lowercase
|
|
%D .. Distribution name or "Lede", uppercase
|
|
%d .. Distribution name or "lede", lowercase
|
|
%T .. Target name
|
|
%S .. Target/Subtarget name
|
|
%A .. Package architecture
|
|
%t .. Build taint flags, e.g. "no-all busybox"
|
|
%M .. Manufacturer name or "Lede"
|
|
%P .. Product name or "Generic"
|
|
%h .. Hardware revision or "v0"
|
|
|
|
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_MANUFACTURER_URL
|
|
string
|
|
prompt "Manufacturer URL"
|
|
help
|
|
This is an URL to the manufacturer's website embedded in /etc/device_info
|
|
Useful for OEMs building OpenWrt based firmware
|
|
|
|
config VERSION_BUG_URL
|
|
string
|
|
prompt "Bug reporting URL"
|
|
help
|
|
This is an URL to provide users for providing bug reports
|
|
|
|
config VERSION_SUPPORT_URL
|
|
string
|
|
prompt "Support URL"
|
|
help
|
|
This an URL to provide users seeking support
|
|
|
|
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
|
|
|
|
config VERSION_FILENAMES
|
|
bool
|
|
prompt "Version number in filenames"
|
|
default y
|
|
help
|
|
Enable this to include the version number in firmware image, SDK-
|
|
and Image Builder archive file names
|
|
|
|
config VERSION_CODE_FILENAMES
|
|
bool
|
|
prompt "Revision code in filenames"
|
|
default y
|
|
help
|
|
Enable this to include the revision identifier or the configured
|
|
version code into the firmware image, SDK- and Image Builder archive
|
|
file names
|
|
endif
|
|
|
|
|
|
menuconfig PER_FEED_REPO
|
|
bool "Separate feed repositories" if IMAGEOPT
|
|
default y
|
|
help
|
|
If set, a separate repository is generated within bin/*/packages/
|
|
for the core packages and each enabled feed.
|
|
|
|
config PER_FEED_REPO_ADD_DISABLED
|
|
bool "Add available but not enabled feeds to opkg.conf"
|
|
default y
|
|
depends on PER_FEED_REPO
|
|
help
|
|
Add not installed or disabled feeds from feeds.conf to opkg.conf.
|
|
|
|
config PER_FEED_REPO_ADD_COMMENTED
|
|
bool "Comment out not enabled feeds"
|
|
default y
|
|
depends on PER_FEED_REPO && PER_FEED_REPO_ADD_DISABLED
|
|
help
|
|
Add not enabled feeds as commented out source lines to opkg.conf.
|
|
|
|
source "tmp/.config-feeds.in"
|
|
|
|
|
|
menuconfig SMIMEOPT
|
|
bool "Package signing options" if IMAGEOPT
|
|
default n
|
|
help
|
|
These options configure the signing key and certificate to
|
|
be used for signing and verifying packages.
|
|
|
|
config OPKGSMIME_CERT
|
|
string
|
|
prompt "Path to certificate (PEM certificate format)" if SMIMEOPT
|
|
help
|
|
Path to the certificate to use for signature verification
|
|
|
|
config OPKGSMIME_KEY
|
|
string
|
|
prompt "Path to signing key (PEM private key format)" if SMIMEOPT
|
|
help
|
|
Path to the key to use for signing packages
|
|
|
|
config OPKGSMIME_PASSPHRASE
|
|
bool
|
|
default y
|
|
prompt "Wait for a passphrase when signing packages?" if SMIMEOPT
|
|
help
|
|
If this value is set, then the build will pause and request a passphrase
|
|
from the command line when signing packages. This SHOULD NOT be used with
|
|
automatic builds. If this value is not set, a file can be specified from
|
|
which the passphrase will be read.
|
|
|
|
config OPKGSMIME_PASSFILE
|
|
string
|
|
prompt "Path to a file containing the passphrase" if SMIMEOPT
|
|
depends on !OPKGSMIME_PASSPHRASE
|
|
help
|
|
Path to a file containing the passphrase for the signing key.
|
|
If the signing key is not encrypted and does not require a passphrase,
|
|
this option may be left blank.
|