Commit Graph

7 Commits

Author SHA1 Message Date
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 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 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
Helmut Buchsbaum 300a8b259d Add debianization support
Add support to generate Debian packages.
For details see debian/README.

debian/changelog is manually intialized, ready to be updated by gbp dch
command.

Tracked-On: #6688
Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
2022-05-10 09:20:14 +08:00