base-files: provide a mechanism to skip creation of the hostname file

The existence of a /etc/hostname file causes any hostname provided on
the kernel command line or via dhcp to be overwritten by the
initscripts 'init.d/hostname.sh'. This change allows you to set a
value of "" for 'hostname' which will skip the creation of the
/etc/hostname file by the base-files package.

(From OE-Core rev: 5fd3503d4a438d126f44fe8118e9ea465e7699c2)

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Mark Asselstine 2012-09-08 08:42:21 -05:00 committed by Richard Purdie
parent 03109ba97d
commit 9c2bb6822c
1 changed files with 8 additions and 6 deletions

View File

@ -1,7 +1,7 @@
SUMMARY = "Miscellaneous files for the base system."
DESCRIPTION = "The base-files package creates the basic system directory structure and provides a small set of key configuration files for the system."
SECTION = "base"
PR = "r71"
PR = "r72"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://licenses/GPL-2;md5=94d55d512a9ba36caa9b7df079bae19f"
# Removed all license related tasks in this recipe as license.bbclass
@ -107,10 +107,12 @@ do_install () {
}
do_install_basefilesissue () {
if [ -n "${MACHINE}" -a "${hostname}" = "openembedded" ]; then
echo ${MACHINE} > ${D}${sysconfdir}/hostname
else
echo ${hostname} > ${D}${sysconfdir}/hostname
if [ "${hostname}" != "" ]; then
if [ -n "${MACHINE}" -a "${hostname}" = "openembedded" ]; then
echo ${MACHINE} > ${D}${sysconfdir}/hostname
else
echo ${hostname} > ${D}${sysconfdir}/hostname
fi
fi
install -m 644 ${WORKDIR}/issue* ${D}${sysconfdir}
@ -144,5 +146,5 @@ FILES_${PN}-doc = "${docdir} ${datadir}/common-licenses"
PACKAGE_ARCH = "${MACHINE_ARCH}"
CONFFILES_${PN} = "${sysconfdir}/fstab ${sysconfdir}/hostname"
CONFFILES_${PN} = "${sysconfdir}/fstab ${@['', '${sysconfdir}/hostname'][(d.getVar('hostname', True) != '')]}"