To be able to to conditionally add a launch script directory for
acrn-hypervisor package, the debian/acrn-hypervisor.install file must be
created dynamically. If there are only configurations (e.g. partitioned
scenarios) that do not need any launch scripts, we have to omit the
launch script directory entry in debian/acrn-hypervisor.install.
Tracked-On: #8263
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
$ debian/debian_build.sh -h
Usage: debian/debian_build.sh [--board_list ACRN_BOARDLIST] [--scenario_list ACRN_SCENARIOLIST] [--config_path CONFIGDIRS] [--release n|y] [acrn | board_inspector | clean]
Optional arguments:
-h, --help show this help message and exit
-b, --board_list list the boards to build, seperated by blank; build all scanned boards in the config path if specified as ""; build the default boards in debian rules if not specified
-s, --scenario_list list the scenarios to build, seperated by blank; build all scanned scenarios in the config path if specified as ""; build the default scenarios in debian rules if not specified
-c, --config_path specify the config path for the board and scenario configuration files, default use misc/config_tools/data if not specified
-r, --release build debug version with n, release version with y; default defined in debian rules if not specified
acrn|board_inspector|clean specify the build target, default value is acrn if not specified
Examples:
debian/debian_build.sh
debian/debian_build.sh -b nuc11tnbi5 -s shared
debian/debian_build.sh -b "nuc11tnbi5 tgl-vecow-spc-7100-Corei7" -s "shared hybrid" -c misc/config_tools/data -r y
debian/debian_build.sh -b "" -s shared
debian/debian_build.sh board_inspector
Tracked-On: #8246
Signed-off-by: szhen11 <shuang.zheng@intel.com>
Reviewed-by: Geoffroy Van Cutsem <geoffroy.vancutsem@intel.com>
Reviewed-by: Junjie Mao <junjie.mao@intel.com>
Using e.g.
debuild -eACRN_BOARDLIST= -eACRN_SCENARIOLIST= -eCONFIGDIRS=<custom config path> -- binary
builds all board/scenario combinations provided in <custom config path>.
Tracked-On: #8246
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
To be able to set ACRN_BOARDLIST and ACRN_SCENARIOLIST via environment
variable when using debuild, both variables must be overridable.
Tracked-On: #8246
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
The debian build rule of calculating method for post launch vm ids
when generating launch scripts should not be reading //vm/@id in
scenario xmls directly but reading //vm/@id in scenario xml and
then plus vm id for service vm.
Since the objective here is to generate the launch scripts for all
VMs, change the debian rule to invoking the launch_cfg_gen.py script
without parameter user_vmid when there are post launch vms to achieve
the objective.
Tracked-On: #8245
Signed-off-by: szhen11 <shuang.zheng@intel.com>
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
Reviewed-by: Junjie Mao <junjie.mao@intel.com>
This patch is to generate an ACRN CPU performance policy type boot
parameter.
The generated parameter is either 'cpu_perf_policy=Performance’ or
‘cpu_perf_policy=Nominal’, according to the 'CPU performance policy type'
config item in configurator.
It will then be packed into acrn-hypervisor deb file, and will be
automatically added to grub cfg file through installation.
Tracked-On: #8168
Signed-off-by: Wu Zhou <wu.zhou@intel.com>
Reviewed-by: Junjie Mao <junjie.mao@intel.com>
this patch removes VMX and VT-d invalid BIOS setting check in
acrn-board-inspector because the board inspector tool also adds
these checks (please refer to PR #7216) and may it's possible for user
to get the wrong information by these two check in acrn-board-inspector.
so we remove the repeated check in acrn-board-inspector.
Tracked-On: #6689
Signed-off-by: Kunhui-Li <kunhuix.li@intel.com>
Modified the copyright year range in code, and corrected "int32_tel"
into "Intel" in two "hypervisor/include/debug/profiling.h" and
"hypervisor/include/debug/profiling_internal.h".
Tracked-On: #7559
Signed-off-by: Ziheng Li <ziheng.li@intel.com>
The support for
GRUB_CMDLINE_LINUX_ACRN_REPLACE_DEFAULT
GRUB_CMDLINE_LINUX_ACRN_REPLACE
to override kernel parameter settings when booting ACRN Service VM has been
discontinued in favor of setting the kernel parameters in the scenario
configuration properly.
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
Read kernel boot parameters for ACRN Service VM from respective ACRN scenario
and add them to the kernel commanline in generated grub configuration.
The only exception is removing the root=XXX kernel parameter as given
in the scenario configuration, since grub helper scripts on Debian/Ubuntu
systems detect the root partition automatically.
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
Since we have to adapt various data, e.g. bootparams, at install time,
preserve the respective XML configuration to get the required data from there.
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
Just add an example for ApolloLake base board.
The share+initrd scenario enables ramdisk_mod attribute as needed for
grub-acrn package to work an be able to install e.f. on a standard Debian
system.
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
This has been added for test purposes and as an example for how to add a
configuration outside the config_tools/data section.
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
Provide local APR repository as part of the result in the distribution's
build result folder and prepare this folder as a local APT repository for
easy install on a target system.
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
To ease building ACRN with all its requirements, provide a distribution aware,
self-contained docker build environment to build regular Debian packages.
For Debian Buster(10) and Ubuntu Focal Fossa(20.04 LTS) some build tools are
grabbed from their respective backports repositories. This provides a much
easier alignment with the more resent distributions.
There are three packages to be re-packaged to accommodate the build needs as
well as the runtime needs of the ACRN packages:
* python3-elementpath_2.4.0-1
* python3-xmlschema_1.9.2-1
* acpica-tools_20200925-1
These packages are built during docker image build time and provided within
a local APT repository for installation at build time, i.e. when running the
respective docker container.
The multistage Dockerfile separates the required pre-build stages and reduces
the resulting image footprint of the final docker image. There are separate
docker images for each distribution.
To summarize the build steps the script acrn-docker-build.sh is provided. To
control the vendor and the distribution for the build, just set the
environment variables VENDOR and DISTRO before calling the script from the
top directory of the ACRN hypervisor workspace, e.g.:
VENDOR=debian DISTRO=bullseye debian/docker/acrn-docker-build.sh
or
VENDOR=ubuntu DISTRO=focal debian/docker/acrn-docker-build.sh
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>