Build Steps

The main build script in the OpenXT repo is do_build.sh. This script is written to execute a series of build STEPS that in the end result in an ISO file that is the OpenXT installer. By default do_build.sh will execute a default set of STEPS that are defined within the script.

If you want to override this variable you can do so by redefining it on the .config file at the root of your build script directory. You can also execute a single or series of build steps usingdo_build.sh directly on the command line:

do_build.sh -s step1,step2,step3

The rest of this page documents the steps that do_build.sh can execute.

Required Steps

StepDescription
setupoeClones all of the git repos needed to build OpenXT and processes .config to make OE's local.conf.
initramfsThe initial ram file system of OpenXT. This contains all the device drivers necessary to mount the actual file system.
stubinitramfsThe initramfs of the stub domains in which VMs run.
dom0OpenXT control domain.
uivmOpenXT service VM that runs the user interface.
ndvmOpenXT service VM that runs the networking domain.
syncvmOpenXT synchronizer service VM, responsible for remote image/policy management.
sysrootTODO
syncuiOpenXT synchronizer UI.
installerOpenXT installer.
installer2OpenXT installer program.
shipPull everything together and create the ISOs and other packages.

Optional Steps

StepDescription
copyCopy the build out to a central location. This is really only used in automated build scenarios. The default location is /master unless the build script is passed a -d option. e.g. do_build.sh -d "~/some_path".
xctoolsPulls together the various xen tools into an ISO. Requires "WIN_BUILD_OUTPUT" to be specified in .config or the path passed to do_build.sh via the -w switch. Calls debian step, thus requiring "rpm" package (apt-get install rpm). xc-tools.iso will be created in the "./build-output/openxt-dev--master/raw" directory.
debianBuilds the Debian, Ubuntu, CentOS, and RedHat tools. Requires "rpm" package to be installed (apt-get install rpm). Called by xctools step.
sourceTODO
sdkPackages the SDK.
licenseTODO
sourceinfoTODO
extra_pkgsBuilds a bunch of extra OpenEmbedded packages, that will be installable separately.
packages_treeAdds the built packages to an OpenEmbedded repository pool, that uses hardlinks to save disk space.
sync_cache_backSync's the current build's download cache to the location specified by SYNC_CACHE_OE in the config file.
sync_cacheSync's the current build's download cache from the location specified by SYNC_CACHE_OE in the config file.
dom0cpTODO
sysrootcpTODO
installercpTODO
installer2cpTODO
nilfvmTODO
vpnvmTODO
syncuiTODO
uivmcpTODO
ndvmcpTODO
vpnvmcpTODO
syncvmcpTODO
syncuicpTODO
oldxctoolsTODO
debian_repo_xctoolsTODO
debian_repo_xctools_copyTODO
sourcecpTODO
simTODO
cleanupTODO
rmoutputTODO
waitTODO

Minimum Required Steps

To create a minimum build the easiest way to specify the steps across multiple builds is to use the line below in your .config file.

STEPS="initramfs,stubinitramfs,dom0,uivm,ndvm,syncvm,installer,installer2,ship"