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