1e01aa904Sopenharmony_ciARG ubuntu_version=22.04 2e01aa904Sopenharmony_ciARG gcc_version=10.3.0 3e01aa904Sopenharmony_ciFROM ghcr.io/rse-ops/gcc-ubuntu-${ubuntu_version}:gcc-${gcc_version} 4e01aa904Sopenharmony_ci 5e01aa904Sopenharmony_ci# docker build -t ghcr.io/woodard/libabigail-ubuntu-22.04 . 6e01aa904Sopenharmony_ci 7e01aa904Sopenharmony_ci# Install Libabigail to its own view 8e01aa904Sopenharmony_ciWORKDIR /opt/abigail-env 9e01aa904Sopenharmony_ciRUN . /opt/spack/share/spack/setup-env.sh && \ 10e01aa904Sopenharmony_ci spack env create -d . && \ 11e01aa904Sopenharmony_ci spack env activate . && \ 12e01aa904Sopenharmony_ci spack add libabigail@master && \ 13e01aa904Sopenharmony_ci spack --debug install 14e01aa904Sopenharmony_ci 15e01aa904Sopenharmony_ci# Prepare a source extraction of libabigail at /src (intended to be overwritten by user) 16e01aa904Sopenharmony_ciCOPY . /src 17e01aa904Sopenharmony_ci 18e01aa904Sopenharmony_ci# Second run - should have deps cached 19e01aa904Sopenharmony_ciRUN . /opt/spack/share/spack/setup-env.sh && \ 20e01aa904Sopenharmony_ci 21e01aa904Sopenharmony_ci # This adds metadata for libabigail to spack.yaml 22e01aa904Sopenharmony_ci spack develop --path /src libabigail@master && \ 23e01aa904Sopenharmony_ci spack --debug install 24e01aa904Sopenharmony_ci # At this point you can spack install, and bind the code to /code to develop 25e01aa904Sopenharmony_ci 26e01aa904Sopenharmony_ci# ensure libabigail stuffs always on the path 27e01aa904Sopenharmony_ciRUN cd /opt/abigail-env && \ 28e01aa904Sopenharmony_ci spack env activate --sh -d . >> /etc/profile.d/z10_spack_environment.sh 29e01aa904Sopenharmony_ci 30e01aa904Sopenharmony_ciENTRYPOINT ["/bin/bash", "--rcfile", "/etc/profile", "-l", "-c"] 31