|
| 1 | +FROM debian:bookworm-slim |
| 2 | + |
| 3 | +# No DevelPatchPerl.patch generated |
| 4 | +WORKDIR /usr/src/perl |
| 5 | + |
| 6 | +RUN apt-get update \ |
| 7 | + && apt-get install -y --no-install-recommends \ |
| 8 | + bzip2 \ |
| 9 | + ca-certificates \ |
| 10 | + # cpio \ |
| 11 | + curl \ |
| 12 | + dpkg-dev \ |
| 13 | + # file \ |
| 14 | + gcc \ |
| 15 | + # g++ \ |
| 16 | + # libbz2-dev \ |
| 17 | + # libdb-dev \ |
| 18 | + libc6-dev \ |
| 19 | + # libgdbm-dev \ |
| 20 | + # liblzma-dev \ |
| 21 | + make \ |
| 22 | + netbase \ |
| 23 | + patch \ |
| 24 | + # procps \ |
| 25 | + zlib1g-dev \ |
| 26 | + xz-utils \ |
| 27 | + libssl-dev \ |
| 28 | + && curl -fL https://cpan.metacpan.org/authors/id/H/HA/HAARG/perl-5.40.0.tar.gz -o perl-5.40.0.tar.gz \ |
| 29 | + && echo 'c740348f357396327a9795d3e8323bafd0fe8a5c7835fc1cbaba0cc8dfe7161f *perl-5.40.0.tar.gz' | sha256sum --strict --check - \ |
| 30 | + && tar --strip-components=1 -xaf perl-5.40.0.tar.gz -C /usr/src/perl \ |
| 31 | + && rm perl-5.40.0.tar.gz \ |
| 32 | + && cat *.patch | patch -p1 \ |
| 33 | + && gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)" \ |
| 34 | + && archBits="$(dpkg-architecture --query DEB_BUILD_ARCH_BITS)" \ |
| 35 | + && archFlag="$([ "$archBits" = '64' ] && echo '-Duse64bitall' || echo '-Duse64bitint')" \ |
| 36 | + && ./Configure -Darchname="$gnuArch" "$archFlag" -Dusethreads -Duseshrplib -Dvendorprefix=/usr/local -des \ |
| 37 | + && make -j$(nproc) \ |
| 38 | + && TEST_JOBS=$(nproc) make test_harness \ |
| 39 | + && make install \ |
| 40 | + && cd /usr/src \ |
| 41 | + && curl -fLO https://www.cpan.org/authors/id/M/MI/MIYAGAWA/App-cpanminus-1.7047.tar.gz \ |
| 42 | + && echo '963e63c6e1a8725ff2f624e9086396ae150db51dd0a337c3781d09a994af05a5 *App-cpanminus-1.7047.tar.gz' | sha256sum --strict --check - \ |
| 43 | + && tar -xzf App-cpanminus-1.7047.tar.gz && cd App-cpanminus-1.7047 && perl bin/cpanm . && cd /root \ |
| 44 | + && cpanm IO::Socket::SSL \ |
| 45 | + && curl -fL https://raw.githubusercontent.com/skaji/cpm/0.997014/cpm -o /usr/local/bin/cpm \ |
| 46 | + # sha256 checksum is from docker-perl team, cf https://github.com/docker-library/official-images/pull/12612#issuecomment-1158288299 |
| 47 | + && echo 'ee525f2493e36c6f688eddabaf53a51c4d3b2a4ebaa81576ac8b9f78ab57f4a1 */usr/local/bin/cpm' | sha256sum --strict --check - \ |
| 48 | + && chmod +x /usr/local/bin/cpm \ |
| 49 | + && savedPackages="ca-certificates make netbase zlib1g-dev libssl-dev" \ |
| 50 | + && apt-mark auto '.*' > /dev/null \ |
| 51 | + && apt-mark manual $savedPackages \ |
| 52 | + && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ |
| 53 | + && rm -fr /var/cache/apt/* /var/lib/apt/lists/* \ |
| 54 | + && rm -fr /root/.cpanm /usr/src/perl /usr/src/App-cpanminus-1.7047* /tmp/* \ |
| 55 | + && cpanm --version && cpm --version |
| 56 | + |
| 57 | +WORKDIR /usr/src/app |
| 58 | + |
| 59 | +CMD ["perl5.40.0","-de0"] |
0 commit comments