commit | a81cb9305e55dbcba81dac585ccdc4d086a1a9fe | [log] [tgz] |
---|---|---|
author | Milton D. Miller II <miltonm@us.ibm.com> | Mon Mar 07 17:46:28 2016 -0600 |
committer | Milton D. Miller II <miltonm@us.ibm.com> | Mon Mar 07 17:46:28 2016 -0600 |
tree | 61175ff42f8ee1f26dd62e4cdbbeff06fdded627 | |
parent | b8c5174dd737ac0c9ba46585bd8de997254290f3 [diff] |
init: Increase fidelity of u-boot environment parsing Deleting a variable with a long value exposed a duplicate openbmcinitdownloadurl variable resulting in two lines in the url file, and wget was not happy. The u-boot environment ends with a double NUL character like many operating environments. Using strings to separate on the NUL bytes was loosing this information. The fw_printenv command does not clear the remainder of the environment when deleting variables. Instead it just makes sure it is terminated with a double NUL byte. Switch from strings to tr to separate the strings. Translate NL to CR to avoid false matches, and use sed to detect a blank line. Also use tail to skip over the CRC bytes. We don't have the config file to know if a flag exists so assume 1 copy for now. Signed-off-by: Milton Miller <miltonm@us.ibm.com>
OpenBMC uses Yocto/Open-Embedded for a build system, which supports an out-of-tree build. It is recommended that you create an empty directory somewhere to hold the build. This directory will get big.
On Ubuntu 14.04 the following packages are required to build the default target
sudo apt-get install -y git build-essential libsdl1.2-dev texinfo gawk chrpath diffstat
On Fedora 23 the following packages are required to build the default target:
sudo dnf install -y git patch diffstat texinfo chrpath SDL-devel bitbake sudo dnf groupinstall "C Development Tools and Libraries"
To start a build:
cd <builddir> . <repodir>/openbmc-env bitbake obmc-phosphor-image