On Wed, Oct 19, 2022 at 3:24 PM Ali Alnubani <alialnu@nvidia.com> wrote:
> -----Original Message-----
> From: ohilyard@iol.unh.edu <ohilyard@iol.unh.edu>
> Sent: Wednesday, October 19, 2022 3:53 PM
> To: ci@dpdk.org
> Cc: aconole@redhat.com; Ali Alnubani <alialnu@nvidia.com>; Owen Hilyard
> <ohilyard@iol.unh.edu>
> Subject: [PATCH v2 4/6] containers/templates: Templates for Dockerfiles
>
> From: Owen Hilyard <ohilyard@iol.unh.edu>
>
> Adds a variety of extensible templates used to create the Dockerfiles
> for each target. All templates inherit from base, and most distros and
> distro families have their own templates that are used to define common
> functionality. Multiple versions of a distro may use a single template
> if they are similar enough (ex: fedora).
>
> Signed-off-by: Owen Hilyard <ohilyard@iol.unh.edu>
> ---
[..]
> diff --git
> a/containers/template_engine/templates/containers/base.dockerfile.j2
> b/containers/template_engine/templates/containers/base.dockerfile.j2
> new file mode 100644
> index 0000000..c6194e9
> --- /dev/null
> +++ b/containers/template_engine/templates/containers/base.dockerfile.j2
> @@ -0,0 +1,81 @@
[..]
> +# install libabigail
> +{% block install_libabigail %}
> +COPY libabigail libabigail
> +RUN --mount=type=cache,target=/ccache cd libabigail && mkdir build &&
> autoreconf -i && cd build && ../configure --prefix=/usr/local && make all
> install && \
> +    ldconfig && cd .. && rm -rf libabigail

Current directory is /libabigail/build/. You need to go back another directory before executing "rm -rf libabigail".

$ podman run -it --rm localhost/ubuntu20.04_compile
$ du -chs /libabigail/
1.9G    /libabigail/
1.9G    total

I'll fix that for v3. 
 
By the way, do we have to build libabigail when DPDK_CI_CONTAINERS_BUILD_ABI is disabled?

Technically no, but libabigail is installed via the package manager for distros that have it (Fedora, RHEL 7 & 8, and a few others). At UNH, we value environment consistency (same tools in every container) much more than disk space or build time. I'll add an option for anyone who has different preferences/priorities in v3. 
 
> +{% endblock install_libabigail %}
[..]