Generate 5.024.004/5.026.002

This commit is contained in:
Zak B. Elep 2018-04-19 21:28:18 +08:00
parent e208134d95
commit 642ba5d1d3
8 changed files with 302 additions and 0 deletions

View file

@ -0,0 +1,97 @@
diff --git a/hints/linux.sh b/hints/linux.sh
index fb5a46e..3f38ea0 100644
--- a/hints/linux.sh
+++ b/hints/linux.sh
@@ -221,92 +221,6 @@ case "$libc" in
;;
esac
-# Are we using ELF? Thanks to Kenneth Albanowski <kjahds@kjahds.com>
-# for this test.
-cat >try.c <<'EOM'
-/* Test for whether ELF binaries are produced */
-#include <fcntl.h>
-#include <stdlib.h>
-#include <unistd.h>
-main() {
- char buffer[4];
- int i=open("a.out",O_RDONLY);
- if(i==-1)
- exit(1); /* fail */
- if(read(i,&buffer[0],4)<4)
- exit(1); /* fail */
- if(buffer[0] != 127 || buffer[1] != 'E' ||
- buffer[2] != 'L' || buffer[3] != 'F')
- exit(1); /* fail */
- exit(0); /* succeed (yes, it's ELF) */
-}
-EOM
-if ${cc:-gcc} $ccflags $ldflags try.c >/dev/null 2>&1 && $run ./a.out; then
- cat <<'EOM' >&4
-
-You appear to have ELF support. I'll try to use it for dynamic loading.
-If dynamic loading doesn't work, read hints/linux.sh for further information.
-EOM
-
-else
- cat <<'EOM' >&4
-
-You don't have an ELF gcc. I will use dld if possible. If you are
-using a version of DLD earlier than 3.2.6, or don't have it at all, you
-should probably upgrade. If you are forced to use 3.2.4, you should
-uncomment a couple of lines in hints/linux.sh and restart Configure so
-that shared libraries will be disallowed.
-
-EOM
- lddlflags="-r $lddlflags"
- # These empty values are so that Configure doesn't put in the
- # Linux ELF values.
- ccdlflags=' '
- cccdlflags=' '
- ccflags="-DOVR_DBL_DIG=14 $ccflags"
- so='sa'
- dlext='o'
- nm_so_opt=' '
- ## If you are using DLD 3.2.4 which does not support shared libs,
- ## uncomment the next two lines:
- #ldflags="-static"
- #so='none'
-
- # In addition, on some systems there is a problem with perl and NDBM
- # which causes AnyDBM and NDBM_File to lock up. This is evidenced
- # in the tests as AnyDBM just freezing. Apparently, this only
- # happens on a.out systems, so we disable NDBM for all a.out linux
- # systems. If someone can suggest a more robust test
- # that would be appreciated.
- #
- # More info:
- # Date: Wed, 7 Feb 1996 03:21:04 +0900
- # From: Jeffrey Friedl <jfriedl@nff.ncl.omron.co.jp>
- #
- # I tried compiling with DBM support and sure enough things locked up
- # just as advertised. Checking into it, I found that the lockup was
- # during the call to dbm_open. Not *in* dbm_open -- but between the call
- # to and the jump into.
- #
- # To make a long story short, making sure that the *.a and *.sa pairs of
- # /usr/lib/lib{m,db,gdbm}.{a,sa}
- # were perfectly in sync took care of it.
- #
- # This will generate a harmless Whoa There! message
- case "$d_dbm_open" in
- '') cat <<'EOM' >&4
-
-Disabling ndbm. This will generate a Whoa There message in Configure.
-Read hints/linux.sh for further information.
-EOM
- # You can override this with Configure -Dd_dbm_open
- d_dbm_open=undef
- ;;
- esac
-fi
-
-rm -f try.c a.out
-
if ${sh:-/bin/sh} -c exit; then
echo ''
echo 'You appear to have a working bash. Good.'

View file

@ -0,0 +1,27 @@
FROM buildpack-deps:stretch
LABEL maintainer="Peter Martini <PeterCMartini@GMail.com>, Zak B. Elep <zakame@cpan.org>"
COPY *.patch /usr/src/perl/
WORKDIR /usr/src/perl
RUN curl -SL https://www.cpan.org/src/5.0/perl-5.24.4.tar.bz2 -o perl-5.24.4.tar.bz2 \
&& echo 'e34ff38c54857f431f37403b757267c9998152bf46b5c750b462f62461279b10 *perl-5.24.4.tar.bz2' | sha256sum -c - \
&& tar --strip-components=1 -xjf perl-5.24.4.tar.bz2 -C /usr/src/perl \
&& rm perl-5.24.4.tar.bz2 \
&& cat *.patch | patch -p1 \
&& gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)" \
&& archBits="$(dpkg-architecture --query DEB_BUILD_ARCH_BITS)" \
&& archFlag="$([ "$archBits" = '64' ] && echo '-Duse64bitall' || echo '-Duse64bitint')" \
&& ./Configure -Darchname="$gnuArch" "$archFlag" -Dusethreads -Duseshrplib -Dvendorprefix=/usr/local -des \
&& make -j$(nproc) \
&& TEST_JOBS=$(nproc) make test_harness \
&& make install \
&& cd /usr/src \
&& curl -LO http://www.cpan.org/authors/id/M/MI/MIYAGAWA/App-cpanminus-1.7043.tar.gz \
&& echo '68a06f7da80882a95bc02c92c7ee305846fb6ab648cf83678ea945e44ad65c65 *App-cpanminus-1.7043.tar.gz' | sha256sum -c - \
&& tar -xzf App-cpanminus-1.7043.tar.gz && cd App-cpanminus-1.7043 && perl bin/cpanm . && cd /root \
&& rm -fr ./cpanm /root/.cpanm /usr/src/perl /usr/src/App-cpanminus-1.7043* /tmp/*
WORKDIR /root
CMD ["perl5.24.4","-de0"]

View file

@ -0,0 +1,97 @@
diff --git a/hints/linux.sh b/hints/linux.sh
index fb5a46e..3f38ea0 100644
--- a/hints/linux.sh
+++ b/hints/linux.sh
@@ -221,92 +221,6 @@ case "$libc" in
;;
esac
-# Are we using ELF? Thanks to Kenneth Albanowski <kjahds@kjahds.com>
-# for this test.
-cat >try.c <<'EOM'
-/* Test for whether ELF binaries are produced */
-#include <fcntl.h>
-#include <stdlib.h>
-#include <unistd.h>
-main() {
- char buffer[4];
- int i=open("a.out",O_RDONLY);
- if(i==-1)
- exit(1); /* fail */
- if(read(i,&buffer[0],4)<4)
- exit(1); /* fail */
- if(buffer[0] != 127 || buffer[1] != 'E' ||
- buffer[2] != 'L' || buffer[3] != 'F')
- exit(1); /* fail */
- exit(0); /* succeed (yes, it's ELF) */
-}
-EOM
-if ${cc:-gcc} $ccflags $ldflags try.c >/dev/null 2>&1 && $run ./a.out; then
- cat <<'EOM' >&4
-
-You appear to have ELF support. I'll try to use it for dynamic loading.
-If dynamic loading doesn't work, read hints/linux.sh for further information.
-EOM
-
-else
- cat <<'EOM' >&4
-
-You don't have an ELF gcc. I will use dld if possible. If you are
-using a version of DLD earlier than 3.2.6, or don't have it at all, you
-should probably upgrade. If you are forced to use 3.2.4, you should
-uncomment a couple of lines in hints/linux.sh and restart Configure so
-that shared libraries will be disallowed.
-
-EOM
- lddlflags="-r $lddlflags"
- # These empty values are so that Configure doesn't put in the
- # Linux ELF values.
- ccdlflags=' '
- cccdlflags=' '
- ccflags="-DOVR_DBL_DIG=14 $ccflags"
- so='sa'
- dlext='o'
- nm_so_opt=' '
- ## If you are using DLD 3.2.4 which does not support shared libs,
- ## uncomment the next two lines:
- #ldflags="-static"
- #so='none'
-
- # In addition, on some systems there is a problem with perl and NDBM
- # which causes AnyDBM and NDBM_File to lock up. This is evidenced
- # in the tests as AnyDBM just freezing. Apparently, this only
- # happens on a.out systems, so we disable NDBM for all a.out linux
- # systems. If someone can suggest a more robust test
- # that would be appreciated.
- #
- # More info:
- # Date: Wed, 7 Feb 1996 03:21:04 +0900
- # From: Jeffrey Friedl <jfriedl@nff.ncl.omron.co.jp>
- #
- # I tried compiling with DBM support and sure enough things locked up
- # just as advertised. Checking into it, I found that the lockup was
- # during the call to dbm_open. Not *in* dbm_open -- but between the call
- # to and the jump into.
- #
- # To make a long story short, making sure that the *.a and *.sa pairs of
- # /usr/lib/lib{m,db,gdbm}.{a,sa}
- # were perfectly in sync took care of it.
- #
- # This will generate a harmless Whoa There! message
- case "$d_dbm_open" in
- '') cat <<'EOM' >&4
-
-Disabling ndbm. This will generate a Whoa There message in Configure.
-Read hints/linux.sh for further information.
-EOM
- # You can override this with Configure -Dd_dbm_open
- d_dbm_open=undef
- ;;
- esac
-fi
-
-rm -f try.c a.out
-
if ${sh:-/bin/sh} -c exit; then
echo ''
echo 'You appear to have a working bash. Good.'

View file

@ -0,0 +1,27 @@
FROM buildpack-deps:stretch
LABEL maintainer="Peter Martini <PeterCMartini@GMail.com>, Zak B. Elep <zakame@cpan.org>"
COPY *.patch /usr/src/perl/
WORKDIR /usr/src/perl
RUN curl -SL https://www.cpan.org/src/5.0/perl-5.24.4.tar.bz2 -o perl-5.24.4.tar.bz2 \
&& echo 'e34ff38c54857f431f37403b757267c9998152bf46b5c750b462f62461279b10 *perl-5.24.4.tar.bz2' | sha256sum -c - \
&& tar --strip-components=1 -xjf perl-5.24.4.tar.bz2 -C /usr/src/perl \
&& rm perl-5.24.4.tar.bz2 \
&& cat *.patch | patch -p1 \
&& gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)" \
&& archBits="$(dpkg-architecture --query DEB_BUILD_ARCH_BITS)" \
&& archFlag="$([ "$archBits" = '64' ] && echo '-Duse64bitall' || echo '-Duse64bitint')" \
&& ./Configure -Darchname="$gnuArch" "$archFlag" -Duseshrplib -Dvendorprefix=/usr/local -des \
&& make -j$(nproc) \
&& TEST_JOBS=$(nproc) make test_harness \
&& make install \
&& cd /usr/src \
&& curl -LO http://www.cpan.org/authors/id/M/MI/MIYAGAWA/App-cpanminus-1.7043.tar.gz \
&& echo '68a06f7da80882a95bc02c92c7ee305846fb6ab648cf83678ea945e44ad65c65 *App-cpanminus-1.7043.tar.gz' | sha256sum -c - \
&& tar -xzf App-cpanminus-1.7043.tar.gz && cd App-cpanminus-1.7043 && perl bin/cpanm . && cd /root \
&& rm -fr ./cpanm /root/.cpanm /usr/src/perl /usr/src/App-cpanminus-1.7043* /tmp/*
WORKDIR /root
CMD ["perl5.24.4","-de0"]

View file

@ -0,0 +1,27 @@
FROM buildpack-deps:stretch
LABEL maintainer="Peter Martini <PeterCMartini@GMail.com>, Zak B. Elep <zakame@cpan.org>"
COPY *.patch /usr/src/perl/
WORKDIR /usr/src/perl
RUN curl -SL https://www.cpan.org/src/5.0/perl-5.26.2.tar.bz2 -o perl-5.26.2.tar.bz2 \
&& echo '3f6a6b5bbd43016e5211e24b6631ea84216dd300216a2293b41c9195032f3e81 *perl-5.26.2.tar.bz2' | sha256sum -c - \
&& tar --strip-components=1 -xjf perl-5.26.2.tar.bz2 -C /usr/src/perl \
&& rm perl-5.26.2.tar.bz2 \
&& cat *.patch | patch -p1 \
&& gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)" \
&& archBits="$(dpkg-architecture --query DEB_BUILD_ARCH_BITS)" \
&& archFlag="$([ "$archBits" = '64' ] && echo '-Duse64bitall' || echo '-Duse64bitint')" \
&& ./Configure -Darchname="$gnuArch" "$archFlag" -Dusethreads -Duseshrplib -Dvendorprefix=/usr/local -des \
&& make -j$(nproc) \
&& TEST_JOBS=$(nproc) make test_harness \
&& make install \
&& cd /usr/src \
&& curl -LO http://www.cpan.org/authors/id/M/MI/MIYAGAWA/App-cpanminus-1.7043.tar.gz \
&& echo '68a06f7da80882a95bc02c92c7ee305846fb6ab648cf83678ea945e44ad65c65 *App-cpanminus-1.7043.tar.gz' | sha256sum -c - \
&& tar -xzf App-cpanminus-1.7043.tar.gz && cd App-cpanminus-1.7043 && perl bin/cpanm . && cd /root \
&& rm -fr ./cpanm /root/.cpanm /usr/src/perl /usr/src/App-cpanminus-1.7043* /tmp/*
WORKDIR /root
CMD ["perl5.26.2","-de0"]

View file

View file

@ -0,0 +1,27 @@
FROM buildpack-deps:stretch
LABEL maintainer="Peter Martini <PeterCMartini@GMail.com>, Zak B. Elep <zakame@cpan.org>"
COPY *.patch /usr/src/perl/
WORKDIR /usr/src/perl
RUN curl -SL https://www.cpan.org/src/5.0/perl-5.26.2.tar.bz2 -o perl-5.26.2.tar.bz2 \
&& echo '3f6a6b5bbd43016e5211e24b6631ea84216dd300216a2293b41c9195032f3e81 *perl-5.26.2.tar.bz2' | sha256sum -c - \
&& tar --strip-components=1 -xjf perl-5.26.2.tar.bz2 -C /usr/src/perl \
&& rm perl-5.26.2.tar.bz2 \
&& cat *.patch | patch -p1 \
&& gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)" \
&& archBits="$(dpkg-architecture --query DEB_BUILD_ARCH_BITS)" \
&& archFlag="$([ "$archBits" = '64' ] && echo '-Duse64bitall' || echo '-Duse64bitint')" \
&& ./Configure -Darchname="$gnuArch" "$archFlag" -Duseshrplib -Dvendorprefix=/usr/local -des \
&& make -j$(nproc) \
&& TEST_JOBS=$(nproc) make test_harness \
&& make install \
&& cd /usr/src \
&& curl -LO http://www.cpan.org/authors/id/M/MI/MIYAGAWA/App-cpanminus-1.7043.tar.gz \
&& echo '68a06f7da80882a95bc02c92c7ee305846fb6ab648cf83678ea945e44ad65c65 *App-cpanminus-1.7043.tar.gz' | sha256sum -c - \
&& tar -xzf App-cpanminus-1.7043.tar.gz && cd App-cpanminus-1.7043 && perl bin/cpanm . && cd /root \
&& rm -fr ./cpanm /root/.cpanm /usr/src/perl /usr/src/App-cpanminus-1.7043* /tmp/*
WORKDIR /root
CMD ["perl5.26.2","-de0"]