Skip to content

Update perl image for 5.24.3/5.26.1 and more architectures #3769

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Dec 4, 2017

Conversation

zakame
Copy link
Contributor

@zakame zakame commented Dec 4, 2017

- Update to Perl 5.24.3 and 5.26.1
- Build Perl for more architectures (Perl/docker-perl#43)
@yosifkit
Copy link
Member

yosifkit commented Dec 4, 2017

Diff:
diff --git a/_bashbrew-arches b/_bashbrew-arches
index 739831f..509893a 100644
--- a/_bashbrew-arches
+++ b/_bashbrew-arches
@@ -1,12 +1,36 @@
 perl:5.22.4 @ amd64
+perl:5.22.4 @ arm32v7
 perl:5.22.4 @ arm64v8
+perl:5.22.4 @ i386
+perl:5.22.4 @ ppc64le
+perl:5.22.4 @ s390x
 perl:5.22.4-threaded @ amd64
+perl:5.22.4-threaded @ arm32v7
 perl:5.22.4-threaded @ arm64v8
-perl:5.24.2 @ amd64
-perl:5.24.2 @ arm64v8
-perl:5.24.2-threaded @ amd64
-perl:5.24.2-threaded @ arm64v8
-perl:5.26.0 @ amd64
-perl:5.26.0 @ arm64v8
-perl:5.26.0-threaded @ amd64
-perl:5.26.0-threaded @ arm64v8
+perl:5.22.4-threaded @ i386
+perl:5.22.4-threaded @ ppc64le
+perl:5.22.4-threaded @ s390x
+perl:5.24.3 @ amd64
+perl:5.24.3 @ arm32v7
+perl:5.24.3 @ arm64v8
+perl:5.24.3 @ i386
+perl:5.24.3 @ ppc64le
+perl:5.24.3 @ s390x
+perl:5.24.3-threaded @ amd64
+perl:5.24.3-threaded @ arm32v7
+perl:5.24.3-threaded @ arm64v8
+perl:5.24.3-threaded @ i386
+perl:5.24.3-threaded @ ppc64le
+perl:5.24.3-threaded @ s390x
+perl:5.26.1 @ amd64
+perl:5.26.1 @ arm32v7
+perl:5.26.1 @ arm64v8
+perl:5.26.1 @ i386
+perl:5.26.1 @ ppc64le
+perl:5.26.1 @ s390x
+perl:5.26.1-threaded @ amd64
+perl:5.26.1-threaded @ arm32v7
+perl:5.26.1-threaded @ arm64v8
+perl:5.26.1-threaded @ i386
+perl:5.26.1-threaded @ ppc64le
+perl:5.26.1-threaded @ s390x
diff --git a/_bashbrew-list b/_bashbrew-list
index ee58625..95db42a 100644
--- a/_bashbrew-list
+++ b/_bashbrew-list
@@ -6,11 +6,11 @@ perl:5.22.4
 perl:5.22.4-threaded
 perl:5.24
 perl:5.24-threaded
-perl:5.24.2
-perl:5.24.2-threaded
+perl:5.24.3
+perl:5.24.3-threaded
 perl:5.26
 perl:5.26-threaded
-perl:5.26.0
-perl:5.26.0-threaded
+perl:5.26.1
+perl:5.26.1-threaded
 perl:latest
 perl:threaded
diff --git a/perl_5.22.4-threaded/Dockerfile b/perl_5.22.4-threaded/Dockerfile
index 4281bfc..40f2629 100644
--- a/perl_5.22.4-threaded/Dockerfile
+++ b/perl_5.22.4-threaded/Dockerfile
@@ -9,7 +9,10 @@ RUN curl -SL https://www.cpan.org/src/5.0/perl-5.22.4.tar.bz2 -o perl-5.22.4.tar
     && tar --strip-components=1 -xjf perl-5.22.4.tar.bz2 -C /usr/src/perl \
     && rm perl-5.22.4.tar.bz2 \
     && cat *.patch | patch -p1 \
-    && ./Configure -Dusethreads -Duse64bitall -Duseshrplib -Dvendorprefix=/usr/local  -des \
+    && 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 \
diff --git a/perl_5.22.4/Dockerfile b/perl_5.22.4/Dockerfile
index 97a3c18..0a1db01 100644
--- a/perl_5.22.4/Dockerfile
+++ b/perl_5.22.4/Dockerfile
@@ -9,7 +9,10 @@ RUN curl -SL https://www.cpan.org/src/5.0/perl-5.22.4.tar.bz2 -o perl-5.22.4.tar
     && tar --strip-components=1 -xjf perl-5.22.4.tar.bz2 -C /usr/src/perl \
     && rm perl-5.22.4.tar.bz2 \
     && cat *.patch | patch -p1 \
-    && ./Configure -Duse64bitall -Duseshrplib -Dvendorprefix=/usr/local  -des \
+    && 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 \
diff --git a/perl_5.24.2-threaded/DevelPatchPerl.patch b/perl_5.24.3-threaded/DevelPatchPerl.patch
similarity index 100%
rename from perl_5.24.2-threaded/DevelPatchPerl.patch
rename to perl_5.24.3-threaded/DevelPatchPerl.patch
diff --git a/perl_5.22.4-threaded/Dockerfile b/perl_5.24.3-threaded/Dockerfile
similarity index 52%
copy from perl_5.22.4-threaded/Dockerfile
copy to perl_5.24.3-threaded/Dockerfile
index 4281bfc..b52b21e 100644
--- a/perl_5.22.4-threaded/Dockerfile
+++ b/perl_5.24.3-threaded/Dockerfile
@@ -4,12 +4,15 @@ LABEL maintainer="Peter Martini <PeterCMartini@GMail.com>, Zak B. Elep <zakame@c
 COPY *.patch /usr/src/perl/
 WORKDIR /usr/src/perl
 
-RUN curl -SL https://www.cpan.org/src/5.0/perl-5.22.4.tar.bz2 -o perl-5.22.4.tar.bz2 \
-    && echo '8b3122046d1186598082d0e6da53193b045e85e3505e7d37ee0bdd0bdb539b71 *perl-5.22.4.tar.bz2' | sha256sum -c - \
-    && tar --strip-components=1 -xjf perl-5.22.4.tar.bz2 -C /usr/src/perl \
-    && rm perl-5.22.4.tar.bz2 \
+RUN curl -SL https://www.cpan.org/src/5.0/perl-5.24.3.tar.bz2 -o perl-5.24.3.tar.bz2 \
+    && echo 'c1af071e7bc133cedff9dd2278d6d92aa78f3514f195ab201c476382c130854e *perl-5.24.3.tar.bz2' | sha256sum -c - \
+    && tar --strip-components=1 -xjf perl-5.24.3.tar.bz2 -C /usr/src/perl \
+    && rm perl-5.24.3.tar.bz2 \
     && cat *.patch | patch -p1 \
-    && ./Configure -Dusethreads -Duse64bitall -Duseshrplib -Dvendorprefix=/usr/local  -des \
+    && 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 \
@@ -21,4 +24,4 @@ RUN curl -SL https://www.cpan.org/src/5.0/perl-5.22.4.tar.bz2 -o perl-5.22.4.tar
 
 WORKDIR /root
 
-CMD ["perl5.22.4","-de0"]
+CMD ["perl5.24.3","-de0"]
diff --git a/perl_5.24.2/DevelPatchPerl.patch b/perl_5.24.3/DevelPatchPerl.patch
similarity index 100%
rename from perl_5.24.2/DevelPatchPerl.patch
rename to perl_5.24.3/DevelPatchPerl.patch
diff --git a/perl_5.24.2-threaded/Dockerfile b/perl_5.24.3/Dockerfile
similarity index 53%
rename from perl_5.24.2-threaded/Dockerfile
rename to perl_5.24.3/Dockerfile
index ee6b368..258a678 100644
--- a/perl_5.24.2-threaded/Dockerfile
+++ b/perl_5.24.3/Dockerfile
@@ -4,12 +4,15 @@ LABEL maintainer="Peter Martini <PeterCMartini@GMail.com>, Zak B. Elep <zakame@c
 COPY *.patch /usr/src/perl/
 WORKDIR /usr/src/perl
 
-RUN curl -SL https://www.cpan.org/src/5.0/perl-5.24.2.tar.bz2 -o perl-5.24.2.tar.bz2 \
-    && echo 'e28c8fa588c4227eb25350036b45d7b1b46d61bb3a2194ee09dc79be6ed0fd0f *perl-5.24.2.tar.bz2' | sha256sum -c - \
-    && tar --strip-components=1 -xjf perl-5.24.2.tar.bz2 -C /usr/src/perl \
-    && rm perl-5.24.2.tar.bz2 \
+RUN curl -SL https://www.cpan.org/src/5.0/perl-5.24.3.tar.bz2 -o perl-5.24.3.tar.bz2 \
+    && echo 'c1af071e7bc133cedff9dd2278d6d92aa78f3514f195ab201c476382c130854e *perl-5.24.3.tar.bz2' | sha256sum -c - \
+    && tar --strip-components=1 -xjf perl-5.24.3.tar.bz2 -C /usr/src/perl \
+    && rm perl-5.24.3.tar.bz2 \
     && cat *.patch | patch -p1 \
-    && ./Configure -Dusethreads -Duse64bitall -Duseshrplib -Dvendorprefix=/usr/local  -des \
+    && 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 \
@@ -21,4 +24,4 @@ RUN curl -SL https://www.cpan.org/src/5.0/perl-5.24.2.tar.bz2 -o perl-5.24.2.tar
 
 WORKDIR /root
 
-CMD ["perl5.24.2","-de0"]
+CMD ["perl5.24.3","-de0"]
diff --git a/perl_5.26.0-threaded/Dockerfile b/perl_5.26.0-threaded/Dockerfile
deleted file mode 100644
index e2da41f..0000000
diff --git a/perl_5.26.0/Dockerfile b/perl_5.26.0/Dockerfile
deleted file mode 100644
index 4d5839c..0000000
diff --git a/perl_5.26.0-threaded/DevelPatchPerl.patch b/perl_5.26.1-threaded/DevelPatchPerl.patch
similarity index 100%
rename from perl_5.26.0-threaded/DevelPatchPerl.patch
rename to perl_5.26.1-threaded/DevelPatchPerl.patch
diff --git a/perl_5.22.4-threaded/Dockerfile b/perl_5.26.1-threaded/Dockerfile
similarity index 52%
copy from perl_5.22.4-threaded/Dockerfile
copy to perl_5.26.1-threaded/Dockerfile
index 4281bfc..7d3f0c7 100644
--- a/perl_5.22.4-threaded/Dockerfile
+++ b/perl_5.26.1-threaded/Dockerfile
@@ -4,12 +4,15 @@ LABEL maintainer="Peter Martini <PeterCMartini@GMail.com>, Zak B. Elep <zakame@c
 COPY *.patch /usr/src/perl/
 WORKDIR /usr/src/perl
 
-RUN curl -SL https://www.cpan.org/src/5.0/perl-5.22.4.tar.bz2 -o perl-5.22.4.tar.bz2 \
-    && echo '8b3122046d1186598082d0e6da53193b045e85e3505e7d37ee0bdd0bdb539b71 *perl-5.22.4.tar.bz2' | sha256sum -c - \
-    && tar --strip-components=1 -xjf perl-5.22.4.tar.bz2 -C /usr/src/perl \
-    && rm perl-5.22.4.tar.bz2 \
+RUN curl -SL https://www.cpan.org/src/5.0/perl-5.26.1.tar.bz2 -o perl-5.26.1.tar.bz2 \
+    && echo '2812a01dd4d4cd7650cb70abfe259ee572bf6a0f1ee95763422ba7e54c68d12d *perl-5.26.1.tar.bz2' | sha256sum -c - \
+    && tar --strip-components=1 -xjf perl-5.26.1.tar.bz2 -C /usr/src/perl \
+    && rm perl-5.26.1.tar.bz2 \
     && cat *.patch | patch -p1 \
-    && ./Configure -Dusethreads -Duse64bitall -Duseshrplib -Dvendorprefix=/usr/local  -des \
+    && 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 \
@@ -21,4 +24,4 @@ RUN curl -SL https://www.cpan.org/src/5.0/perl-5.22.4.tar.bz2 -o perl-5.22.4.tar
 
 WORKDIR /root
 
-CMD ["perl5.22.4","-de0"]
+CMD ["perl5.26.1","-de0"]
diff --git a/perl_5.26.0/DevelPatchPerl.patch b/perl_5.26.1/DevelPatchPerl.patch
similarity index 100%
rename from perl_5.26.0/DevelPatchPerl.patch
rename to perl_5.26.1/DevelPatchPerl.patch
diff --git a/perl_5.24.2/Dockerfile b/perl_5.26.1/Dockerfile
similarity index 53%
rename from perl_5.24.2/Dockerfile
rename to perl_5.26.1/Dockerfile
index e5fa5a0..39dc7ae 100644
--- a/perl_5.24.2/Dockerfile
+++ b/perl_5.26.1/Dockerfile
@@ -4,12 +4,15 @@ LABEL maintainer="Peter Martini <PeterCMartini@GMail.com>, Zak B. Elep <zakame@c
 COPY *.patch /usr/src/perl/
 WORKDIR /usr/src/perl
 
-RUN curl -SL https://www.cpan.org/src/5.0/perl-5.24.2.tar.bz2 -o perl-5.24.2.tar.bz2 \
-    && echo 'e28c8fa588c4227eb25350036b45d7b1b46d61bb3a2194ee09dc79be6ed0fd0f *perl-5.24.2.tar.bz2' | sha256sum -c - \
-    && tar --strip-components=1 -xjf perl-5.24.2.tar.bz2 -C /usr/src/perl \
-    && rm perl-5.24.2.tar.bz2 \
+RUN curl -SL https://www.cpan.org/src/5.0/perl-5.26.1.tar.bz2 -o perl-5.26.1.tar.bz2 \
+    && echo '2812a01dd4d4cd7650cb70abfe259ee572bf6a0f1ee95763422ba7e54c68d12d *perl-5.26.1.tar.bz2' | sha256sum -c - \
+    && tar --strip-components=1 -xjf perl-5.26.1.tar.bz2 -C /usr/src/perl \
+    && rm perl-5.26.1.tar.bz2 \
     && cat *.patch | patch -p1 \
-    && ./Configure -Duse64bitall -Duseshrplib -Dvendorprefix=/usr/local  -des \
+    && 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 \
@@ -21,4 +24,4 @@ RUN curl -SL https://www.cpan.org/src/5.0/perl-5.24.2.tar.bz2 -o perl-5.24.2.tar
 
 WORKDIR /root
 
-CMD ["perl5.24.2","-de0"]
+CMD ["perl5.26.1","-de0"]

@yosifkit
Copy link
Member

yosifkit commented Dec 4, 2017

Build test of #3769; 776e5da; amd64 (perl):

$ bashbrew build perl:latest
Building bashbrew/cache:4bed676f9044482c2808d74629a95c31a6d8e57447739ead543d04fe1fe90685 (perl:latest)
Tagging perl:latest
Tagging perl:5
Tagging perl:5.26
Tagging perl:5.26.1

$ test/run.sh perl:latest
testing perl:latest
	'utc' [1/5]...passed
	'cve-2014--shellshock' [2/5]...passed
	'no-hard-coded-passwords' [3/5]...passed
	'override-cmd' [4/5]...passed
	'perl-hello-world' [5/5]...passed


$ bashbrew build perl:threaded
Building bashbrew/cache:446265880b401cace359659cda331db2368a76b8db8fe3da8fd092c8a98b05bd (perl:threaded)
Tagging perl:threaded
Tagging perl:5-threaded
Tagging perl:5.26-threaded
Tagging perl:5.26.1-threaded

$ test/run.sh perl:threaded
testing perl:threaded
	'utc' [1/5]...passed
	'cve-2014--shellshock' [2/5]...passed
	'no-hard-coded-passwords' [3/5]...passed
	'override-cmd' [4/5]...passed
	'perl-hello-world' [5/5]...passed


$ bashbrew build perl:5.24
Building bashbrew/cache:3f8ed110ed2c35b47a56d2499922114428b4445fd7a9a89a5d3c1ad5a1761280 (perl:5.24)
Tagging perl:5.24
Tagging perl:5.24.3

$ test/run.sh perl:5.24
testing perl:5.24
	'utc' [1/5]...passed
	'cve-2014--shellshock' [2/5]...passed
	'no-hard-coded-passwords' [3/5]...passed
	'override-cmd' [4/5]...passed
	'perl-hello-world' [5/5]...passed


$ bashbrew build perl:5.24-threaded
Building bashbrew/cache:29d144021f00d9c036e56a100e03be579429c5a669cdc5fd4a519516c9f604b9 (perl:5.24-threaded)
Tagging perl:5.24-threaded
Tagging perl:5.24.3-threaded

$ test/run.sh perl:5.24-threaded
testing perl:5.24-threaded
	'utc' [1/5]...passed
	'cve-2014--shellshock' [2/5]...passed
	'no-hard-coded-passwords' [3/5]...passed
	'override-cmd' [4/5]...passed
	'perl-hello-world' [5/5]...passed


$ bashbrew build perl:5.22
Building bashbrew/cache:4f93c800d003a88eee44898bda279288c92362e908fde904a2dc2c166701a362 (perl:5.22)
Tagging perl:5.22
Tagging perl:5.22.4

$ test/run.sh perl:5.22
testing perl:5.22
	'utc' [1/5]...passed
	'cve-2014--shellshock' [2/5]...passed
	'no-hard-coded-passwords' [3/5]...passed
	'override-cmd' [4/5]...passed
	'perl-hello-world' [5/5]...passed


$ bashbrew build perl:5.22-threaded
Building bashbrew/cache:39dfd496156c290b0eb48b4e21a0b88e9e1ad3fa706d5749794ac281e607cbee (perl:5.22-threaded)
Tagging perl:5.22-threaded
Tagging perl:5.22.4-threaded

$ test/run.sh perl:5.22-threaded
testing perl:5.22-threaded
	'utc' [1/5]...passed
	'cve-2014--shellshock' [2/5]...passed
	'no-hard-coded-passwords' [3/5]...passed
	'override-cmd' [4/5]...passed
	'perl-hello-world' [5/5]...passed

@yosifkit yosifkit merged commit d2f6d97 into docker-library:master Dec 4, 2017
@zakame
Copy link
Contributor Author

zakame commented Dec 5, 2017

Thanks @yosifkit ! 🎉

@zakame zakame deleted the update-perl branch December 5, 2017 02:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants