Commit Graph

53 Commits

Author SHA1 Message Date
Helmut Buchsbaum
9941c44bee debian/rules: Dynamically generate acrn-hypervisor.install
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>
2022-11-02 14:24:49 +08:00
szhen11
41feb1053e debian: create script to build acrn with debuild
$ 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>
2022-11-01 14:41:59 +08:00
Helmut Buchsbaum
f4e931c762 debian: Fix cleanup for 'debuild clean'
Tracked-On: #8246
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-10-24 15:07:06 +08:00
Helmut Buchsbaum
f26640e6f1 debian: fixup board and scenario detection
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>
2022-10-24 15:07:06 +08:00
Helmut Buchsbaum
a0f84a7992 debian: make ACRN_BOARDLIST and ACRN_SCENARIOLIST optional
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>
2022-10-24 15:07:06 +08:00
szhen11
96e1b6704f config_tools: fix the issue for debuild on tgl-rvp with hybrid scenario
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>
2022-10-24 14:37:06 +08:00
Wu Zhou
dd7a71900b config-tools: genertate performance policy parameter
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>
2022-10-08 11:13:21 +08:00
Kunhui-Li
7acf4fee9c config_tools: remove VMX and VT-d invalid BIOS check in acrn-board-inspector
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>
2022-07-20 11:48:27 +08:00
Jeremy Ouillette
1370965443 Some Debian dependencies are currently missing in the /debian/control file. This change adds these missing dependencies:
Source: acrn-hypervisor
- python3-requests
- python3-tqdm

Package: python3-acrn-board-inspector
- usbutils

Tracked-On: #6688
Signed-off-by: Jeremy Ouillette <jeremy.ouillette@intel.com>
2022-07-20 11:01:01 +08:00
Ziheng Li
eb8bcb06b3 Update copyright year range in code headers
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>
2022-07-15 11:48:35 +08:00
Helmut Buchsbaum
ed9cc9409a debian: Update changelog for UNRELEASED package build
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
3bd6030e08 debian/configs: Remove proprietary configs, just provide a hook directory
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
dc4a1548f3 debian/acrn-doc.doc-base: Fix typo
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
26ebe69ac4 debian: Convert INSTALL.md to INSTALL.rst
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
934fae6cc2 debian: Convert README.md to README.rst
Convert fro MarkDown To RestructuredText using
  pandoc debian/README.md --from markdown --to rst -s -o debian/README.rst

Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
e3f3a3f47b debian: Update changelog for UNRELEASED package build
Update debian/changelog to do an UNREASED package build (pre-3.0) using

  DEBEMAIL=$(git config user.email) \
  DEBFULLNAME=$(git config user.name) gbp dch -S --ignore-branch

Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
1d7a43626b debian: Update README.md
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
19b26530f5 debian: Add build and installation description
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
32c3cd258f debian/docker: Add source package handling for local apt repository
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
8ecf0fe7e8 debian: Switch to elementpath 2.5.0-1 and xmlschema 1.10.0-1
After changes from https://github.com/projectacrn/acrn-hypervisor/pull/7390
we can move to latest versions available.

Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
5f1ee365d9 debian/rules: Generate launch scripts
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
fe85273ae4 debian: Separate build config items to acrn-hypervisor.conf.mk
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
be262a1b71 debian/configs: Add simatic-ipc227g:shared
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
fbf1eb7049 debian/configs: Add nuc7i7dnh:shared
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
7948f87649 debian/configs: Add kontron-COMe-mAL10:shared
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
f0b3adc501 debian: Add default configuration for acrnlog
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
4c37d72bdc debian/rules: Add simatic-ipc227g
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
637125f860 debian/configs: Add simatic-ipc227g/shared+initrd
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
4f04f4a1fe debian: nuc7i7dnh/shared+initrd: Add boot parameters
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
46416f9fc4 debian: acrn-hypervisor: Refactor debconf
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
e49f18f1f3 debian: acrn-tools: Add helper scripts
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
8aa77e6464 debian/rules: Do not start services on install
Do not start services at install automatically, since they are most likely
installed on a non-ACRN system.

Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
36110bf036 debian: Trigger grub-acrn on acrn-hypervisor install
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
d7f51489db debian/rules: override_dh_strip: Fix wrong parameter
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
9c9a7ef325 debian/control: Use compat level 12
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
2729523379 debian: linitian suppression rule update
Fixes https://github.com/tttech-industrial-buchsbaum/acrn-hypervisor/issues/3

Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
b72d20563f debian: Install acrnprobe.xml
Needed to start acrnprobe successfully.

Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
78b64c21b3 debian: Use original acrnd.service
Part of fix for
https://github.com/tttech-industrial-buchsbaum/acrn-hypervisor/issues/6

Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
a344010e68 debian/grub: Remove override variable support
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>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
a75ac7e77f debian/grub: Adapt Linux commandline to ACRN scenario settings
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>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
bcb4c83ffa debian/rules: Store board and scenario xml
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>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
f792336c1c debian: Fixup ACRN lifemngr package build
Part of fix for
https://github.com/tttech-industrial-buchsbaum/acrn-hypervisor/issues/6

Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
ea96fb907c debian: Silence build user creation
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
46d302b94c debian: Preinstall build requirements in docker helper
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
a63f218501 debian: Update changelog for UNRELEASED package build
Update debian/changelog to do an UNREASED package build (pre-3.0) using

  DEBEMAIL=$(git config user.email) \
  DEBFULLNAME=$(git config user.name) gbp dch -S --ignore-branch

Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
f74b09f8c2 debian: Add kontron-COMe-mAL10/shared+initrd
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>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
dbd4987163 debian: Add nuc7i7dnh/shared+initrd
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>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
e2fdbf4610 debian: Update and rename README.md
Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
c231fef961 debian: Create local apt repo after build
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>
2022-05-10 09:20:14 +08:00
Helmut Buchsbaum
909f6b9219 debian: Add docker build helpers
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>
2022-05-10 09:20:14 +08:00