Added 5.14.4

This commit is contained in:
Peter Martini 2015-04-12 12:13:46 -04:00
parent 1032fd1e95
commit 3775eb7273
7 changed files with 170 additions and 0 deletions

View file

@ -0,0 +1,43 @@
From 6f87f404fa51739971a4068da1f11443024f3fc4 Mon Sep 17 00:00:00 2001
From: Andy Dougherty <doughera@lafayette.edu>
Date: Wed, 6 Jun 2012 11:12:58 -0400
Subject: [perl #113024] Configure: Avoid Cppsym warnings for extra tokens
[perl #113024]
The cppsymbols can include macros such as __INT16_C(c), which can't
be tested with a simple #ifdef. This patch strips off the opening
parenthesis and everything following it. These macros were generated
by cpp -dM.
Also ensure Cppsym.true list is sorted for later input to comm.
(I noticed this while testing this change on Solaris.)
---
Configure | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/Configure b/Configure
index a780b81..3ae16ca 100755
--- a/Configure
+++ b/Configure
@@ -21633,15 +21633,16 @@ $cc -o try -Dcpp_stuff=$cpp_stuff $optimize \$ccflags $ldflags try.c $libs && $r
EOSH
chmod +x Cppsym.try
$eunicefix Cppsym.try
-./Cppsym < Cppsym.know > Cppsym.true
+./Cppsym < Cppsym.know | $sort | $uniq > Cppsym.true
: Add in any linux cpp "predefined macros":
case "$osname::$gccversion" in
*linux*::*.*|*gnukfreebsd*::*.*|gnu::*.*)
tHdrH=_tmpHdr
rm -f $tHdrH'.h' $tHdrH
touch $tHdrH'.h'
+ # Filter out macro arguments, such as Linux's __INT8_C(c)
if $cpp -dM $tHdrH'.h' > $tHdrH'_cppsym.h' && [ -s $tHdrH'_cppsym.h' ]; then
- sed 's/#define[\ \ ]*//;s/[\ \ ].*$//' <$tHdrH'_cppsym.h' >$tHdrH'_cppsym.real'
+ sed -e 's/#define[\ \ ]*//;s/[\ \ ].*$//' -e 's/(.*//' <$tHdrH'_cppsym.h' >$tHdrH'_cppsym.real'
if [ -s $tHdrH'_cppsym.real' ]; then
cat $tHdrH'_cppsym.real' Cppsym.know | sort | uniq | ./Cppsym | sort | uniq > Cppsym.true
fi
--
2.1.4

View file

@ -0,0 +1,10 @@
# This should be auto-generated; for now, it's not,
# simply because it should be generated before the build,
# which means having the appropriate version's patchlevel.h
# available, which I don't want to bake into the fetch just
# yet.
--- a/patchlevel.h
+++ b/patchlevel.h
@@ -135,0 +136 @@
+ ,"Backport of perl5 git 6f87f404fa51739971a4068da1f11443024f3fc4"

View file

@ -0,0 +1,29 @@
FROM buildpack-deps
MAINTAINER Peter Martini <PeterCMartini@GMail.com>
RUN apt-get update \
&& apt-get install -y curl procps \
&& rm -fr /var/lib/apt/lists/*
RUN mkdir /usr/src/perl
COPY *.patch /usr/src/perl/
WORKDIR /usr/src/perl
RUN curl -SL https://cpan.metacpan.org/authors/id/D/DA/DAPM/perl-5.14.4.tar.bz2 -o perl-5.14.4.tar.bz2 \
&& echo '3527c9e26f985cba98796439bf555fde8be73cdf *perl-5.14.4.tar.bz2' | sha1sum -c - \
&& tar --strip-components=1 -xjf perl-5.14.4.tar.bz2 -C /usr/src/perl \
&& rm perl-5.14.4.tar.bz2 \
&& cat *.patch | patch -p1 \
&& ./Configure -Dusethreads -Duse64bitall -A ccflags=-fwrapv -des \
&& make -j$(nproc) \
&& make test_harness \
&& make install \
&& cd /usr/src \
&& curl -LO https://raw.githubusercontent.com/miyagawa/cpanminus/master/cpanm \
&& chmod +x cpanm \
&& ./cpanm App::cpanminus \
&& rm -fr ./cpanm /root/.cpanm /usr/src/perl
WORKDIR /root
CMD ["perl5.14.4","-de0"]

View file

@ -0,0 +1,43 @@
From 6f87f404fa51739971a4068da1f11443024f3fc4 Mon Sep 17 00:00:00 2001
From: Andy Dougherty <doughera@lafayette.edu>
Date: Wed, 6 Jun 2012 11:12:58 -0400
Subject: [perl #113024] Configure: Avoid Cppsym warnings for extra tokens
[perl #113024]
The cppsymbols can include macros such as __INT16_C(c), which can't
be tested with a simple #ifdef. This patch strips off the opening
parenthesis and everything following it. These macros were generated
by cpp -dM.
Also ensure Cppsym.true list is sorted for later input to comm.
(I noticed this while testing this change on Solaris.)
---
Configure | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/Configure b/Configure
index a780b81..3ae16ca 100755
--- a/Configure
+++ b/Configure
@@ -21633,15 +21633,16 @@ $cc -o try -Dcpp_stuff=$cpp_stuff $optimize \$ccflags $ldflags try.c $libs && $r
EOSH
chmod +x Cppsym.try
$eunicefix Cppsym.try
-./Cppsym < Cppsym.know > Cppsym.true
+./Cppsym < Cppsym.know | $sort | $uniq > Cppsym.true
: Add in any linux cpp "predefined macros":
case "$osname::$gccversion" in
*linux*::*.*|*gnukfreebsd*::*.*|gnu::*.*)
tHdrH=_tmpHdr
rm -f $tHdrH'.h' $tHdrH
touch $tHdrH'.h'
+ # Filter out macro arguments, such as Linux's __INT8_C(c)
if $cpp -dM $tHdrH'.h' > $tHdrH'_cppsym.h' && [ -s $tHdrH'_cppsym.h' ]; then
- sed 's/#define[\ \ ]*//;s/[\ \ ].*$//' <$tHdrH'_cppsym.h' >$tHdrH'_cppsym.real'
+ sed -e 's/#define[\ \ ]*//;s/[\ \ ].*$//' -e 's/(.*//' <$tHdrH'_cppsym.h' >$tHdrH'_cppsym.real'
if [ -s $tHdrH'_cppsym.real' ]; then
cat $tHdrH'_cppsym.real' Cppsym.know | sort | uniq | ./Cppsym | sort | uniq > Cppsym.true
fi
--
2.1.4

View file

@ -0,0 +1,10 @@
# This should be auto-generated; for now, it's not,
# simply because it should be generated before the build,
# which means having the appropriate version's patchlevel.h
# available, which I don't want to bake into the fetch just
# yet.
--- a/patchlevel.h
+++ b/patchlevel.h
@@ -135,0 +136 @@
+ ,"Backport of perl5 git 6f87f404fa51739971a4068da1f11443024f3fc4"

View file

@ -0,0 +1,29 @@
FROM buildpack-deps
MAINTAINER Peter Martini <PeterCMartini@GMail.com>
RUN apt-get update \
&& apt-get install -y curl procps \
&& rm -fr /var/lib/apt/lists/*
RUN mkdir /usr/src/perl
COPY *.patch /usr/src/perl/
WORKDIR /usr/src/perl
RUN curl -SL https://cpan.metacpan.org/authors/id/D/DA/DAPM/perl-5.14.4.tar.bz2 -o perl-5.14.4.tar.bz2 \
&& echo '3527c9e26f985cba98796439bf555fde8be73cdf *perl-5.14.4.tar.bz2' | sha1sum -c - \
&& tar --strip-components=1 -xjf perl-5.14.4.tar.bz2 -C /usr/src/perl \
&& rm perl-5.14.4.tar.bz2 \
&& cat *.patch | patch -p1 \
&& ./Configure -Duse64bitall -A ccflags=-fwrapv -des \
&& make -j$(nproc) \
&& make test_harness \
&& make install \
&& cd /usr/src \
&& curl -LO https://raw.githubusercontent.com/miyagawa/cpanminus/master/cpanm \
&& chmod +x cpanm \
&& ./cpanm App::cpanminus \
&& rm -fr ./cpanm /root/.cpanm /usr/src/perl
WORKDIR /root
CMD ["perl5.14.4","-de0"]

View file

@ -1,4 +1,10 @@
releases: releases:
- version: 5.14.4
sha1: 3527c9e26f985cba98796439bf555fde8be73cdf
pause: DAPM
extra_flags: "-A ccflags=-fwrapv"
test_parallel: no
- version: 5.16.3 - version: 5.16.3
sha1: 060bc17cf9f142d043f9bf7b861422ec624875ea sha1: 060bc17cf9f142d043f9bf7b861422ec624875ea
pause: RJBS pause: RJBS