cheatsheet: Add instructions to build a machine configuration

The instructions include setting the MACHINE environment variable,
and making this value available to BitBake via BB_ENV_EXTRAWHITE.

Reference:
- https://www.yoctoproject.org/docs/1.6/bitbake-user-manual/bitbake-user-manual.html#var-BB_ENV_EXTRAWHITE
- https://stackoverflow.com/questions/17366984/is-it-possible-to-pass-in-command-line-variables-to-a-bitbake-build

Change-Id: Iab16dfb7e6692e876efd6a23d4455d5aff3d6510
Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
diff --git a/cheatsheet.md b/cheatsheet.md
index 544a35f..0d73b42 100644
--- a/cheatsheet.md
+++ b/cheatsheet.md
@@ -44,6 +44,23 @@
 $ bitbake obmc-phosphor-image
 ```
 
+## Building a specific machine configuration
+
+If the system you want to build contains different machine configurations:
+
+    meta-<layer>/meta-<system>/conf/machine/machineA.conf
+    meta-<layer>/meta-<system>/conf/machine/machineB.conf
+
+You can specify the machine configuration you want to build by setting the
+MACHINE environment variable. Then add `MACHINE` to the BB_ENV_EXTRAWHITE
+environment variable to make the new MACHINE value available to BitBake:
+
+    $ cd openbmc
+    $ TEMPLATECONF=meta-<layer>/meta-<system>/conf . openbmc-env
+    $ export MACHINE="machineB"
+    $ export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE MACHINE"
+    $ bitbake obmc-phosphor-image
+
 ## Building the OpenBMC SDK
 Looking for a way to compile your programs for 'ARM' but you happen to be running on a 'PPC' or 'x86' system?  You can build the sdk receive a fakeroot environment.
 ```