base-files: provide a mechanism to skip creation of the hostname file
authorMark Asselstine <mark.asselstine@windriver.com>
Sat, 8 Sep 2012 13:42:21 +0000 (08:42 -0500)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 12 Sep 2012 14:13:36 +0000 (15:13 +0100)
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>
meta/recipes-core/base-files/base-files_3.0.14.bb

index 6bab040..e80cff1 100644 (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) != '')]}"