File tree 5 files changed +40
-14
lines changed
5 files changed +40
-14
lines changed Original file line number Diff line number Diff line change @@ -37,6 +37,8 @@ RUN set -ex; \
37
37
apt-get install -y --no-install-recommends \
38
38
bzip2 \
39
39
wget \
40
+ # sometimes "pypy" itself is linked against libncurses5, sometimes it's a ".so" file in "/usr/local/lib_pypy"
41
+ libncurses5 \
40
42
; \
41
43
\
42
44
wget -O pypy.tar.bz2 "https://bitbucket.org/pypy/pypy/downloads/pypy2.7-v${PYPY_VERSION}-${pypyArch}.tar.bz2" --progress=dot:giga; \
@@ -70,6 +72,14 @@ RUN set -ex; \
70
72
\
71
73
apt-mark auto '.*' > /dev/null; \
72
74
[ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
75
+ find /usr/local -type f -executable -exec ldd '{}' ';' \
76
+ | awk '/=>/ { print $(NF-1) }' \
77
+ | sort -u \
78
+ | xargs -r dpkg-query --search \
79
+ | cut -d: -f1 \
80
+ | sort -u \
81
+ | xargs -r apt-mark manual \
82
+ ; \
73
83
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
74
84
# smoke test again, to be sure
75
85
rm -rf /var/lib/apt/lists/*; \
Original file line number Diff line number Diff line change @@ -41,6 +41,8 @@ RUN set -ex; \
41
41
apt-get install -y --no-install-recommends \
42
42
bzip2 \
43
43
wget \
44
+ # sometimes "pypy3" itself is linked against libncurses5, sometimes it's a ".so" file in "/usr/local/lib_pypy"
45
+ libncurses5 \
44
46
; \
45
47
\
46
48
wget -O pypy.tar.bz2 "https://bitbucket.org/pypy/pypy/downloads/pypy3.5-v${PYPY_VERSION}-${pypyArch}.tar.bz2" --progress=dot:giga; \
@@ -49,8 +51,6 @@ RUN set -ex; \
49
51
find /usr/local/lib-python -depth -type d -a \( -name test -o -name tests \) -exec rm -rf '{}' +; \
50
52
rm pypy.tar.bz2; \
51
53
\
52
- # ppc64le and s390x link against libncurses.so.5 (https://bitbucket.org/pypy/pypy/issues/2646)
53
- if ldd /usr/local/bin/pypy3 2>&1 | grep -q 'libncurses.so.5 => not found' ; then apt-get install -y --no-install-recommends libncurses5; savedAptMark="$savedAptMark libncurses5" ; fi; \
54
54
# smoke test
55
55
pypy3 --version; \
56
56
\
@@ -76,6 +76,14 @@ RUN set -ex; \
76
76
\
77
77
apt-mark auto '.*' > /dev/null; \
78
78
[ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
79
+ find /usr/local -type f -executable -exec ldd '{}' ';' \
80
+ | awk '/=>/ { print $(NF-1) }' \
81
+ | sort -u \
82
+ | xargs -r dpkg-query --search \
83
+ | cut -d: -f1 \
84
+ | sort -u \
85
+ | xargs -r apt-mark manual \
86
+ ; \
79
87
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
80
88
# smoke test again, to be sure
81
89
rm -rf /var/lib/apt/lists/*; \
Original file line number Diff line number Diff line change @@ -39,6 +39,8 @@ RUN set -ex; \
39
39
apt-get install -y --no-install-recommends \
40
40
bzip2 \
41
41
wget \
42
+ # sometimes "pypy3" itself is linked against libncurses5, sometimes it's a ".so" file in "/usr/local/lib_pypy"
43
+ libncurses5 \
42
44
; \
43
45
\
44
46
wget -O pypy.tar.bz2 "https://bitbucket.org/pypy/pypy/downloads/pypy3.6-v${PYPY_VERSION}-${pypyArch}.tar.bz2" --progress=dot:giga; \
@@ -47,8 +49,6 @@ RUN set -ex; \
47
49
find /usr/local/lib-python -depth -type d -a \( -name test -o -name tests \) -exec rm -rf '{}' +; \
48
50
rm pypy.tar.bz2; \
49
51
\
50
- # ppc64le and s390x link against libncurses.so.5 (https://bitbucket.org/pypy/pypy/issues/2646)
51
- if ldd /usr/local/bin/pypy3 2>&1 | grep -q 'libncurses.so.5 => not found' ; then apt-get install -y --no-install-recommends libncurses5; savedAptMark="$savedAptMark libncurses5" ; fi; \
52
52
# smoke test
53
53
pypy3 --version; \
54
54
\
@@ -74,6 +74,14 @@ RUN set -ex; \
74
74
\
75
75
apt-mark auto '.*' > /dev/null; \
76
76
[ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
77
+ find /usr/local -type f -executable -exec ldd '{}' ';' \
78
+ | awk '/=>/ { print $(NF-1) }' \
79
+ | sort -u \
80
+ | xargs -r dpkg-query --search \
81
+ | cut -d: -f1 \
82
+ | sort -u \
83
+ | xargs -r apt-mark manual \
84
+ ; \
77
85
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
78
86
# smoke test again, to be sure
79
87
rm -rf /var/lib/apt/lists/*; \
Original file line number Diff line number Diff line change @@ -30,6 +30,8 @@ RUN set -ex; \
30
30
apt-get install -y --no-install-recommends \
31
31
bzip2 \
32
32
wget \
33
+ # sometimes "%%CMD%%" itself is linked against libncurses5, sometimes it's a ".so" file in "/usr/local/lib_pypy"
34
+ libncurses5 \
33
35
; \
34
36
\
35
37
wget -O pypy.tar.bz2 "https://bitbucket.org/pypy/pypy/downloads/%%TAR%%-v${PYPY_VERSION}-${pypyArch}.tar.bz2" --progress=dot:giga; \
@@ -38,8 +40,6 @@ RUN set -ex; \
38
40
find /usr/local/lib-python -depth -type d -a \( -name test -o -name tests \) -exec rm -rf '{}' +; \
39
41
rm pypy.tar.bz2; \
40
42
\
41
- # ppc64le and s390x link against libncurses.so.5 (https://bitbucket.org/pypy/pypy/issues/2646)
42
- if ldd /usr/local/bin/%%CMD%% 2>&1 | grep -q 'libncurses.so.5 => not found'; then apt-get install -y --no-install-recommends libncurses5; savedAptMark="$savedAptMark libncurses5"; fi; \
43
43
# smoke test
44
44
%%CMD%% --version; \
45
45
\
@@ -65,6 +65,14 @@ RUN set -ex; \
65
65
\
66
66
apt-mark auto '.*' > /dev/null; \
67
67
[ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; \
68
+ find /usr/local -type f -executable -exec ldd '{}' ';' \
69
+ | awk '/=>/ { print $(NF-1) }' \
70
+ | sort -u \
71
+ | xargs -r dpkg-query --search \
72
+ | cut -d: -f1 \
73
+ | sort -u \
74
+ | xargs -r apt-mark manual \
75
+ ; \
68
76
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
69
77
# smoke test again, to be sure
70
78
rm -rf /var/lib/apt/lists/*; \
Original file line number Diff line number Diff line change @@ -74,16 +74,13 @@ for version in "${versions[@]}"; do
74
74
75
75
linuxArchCase=' dpkgArch="$(dpkg --print-architecture)"; ' $' \\\n '
76
76
linuxArchCase+=$' \t ' ' case "${dpkgArch##*-}" in ' $' \\\n '
77
- haveIBM=
78
77
for dpkgArch in $( dpkgArches) ; do
79
78
bashbrewArch=" $( dpkgToBashbrewArch " $dpkgArch " ) "
80
79
case " $base /$bashbrewArch " in
81
80
jessie/s390x | jessie/ppc64le)
82
81
echo >&2 " warning: skipping $pypy on $bashbrewArch ; https://bitbucket.org/pypy/pypy/issues/2646"
83
82
continue
84
83
;;
85
-
86
- * /s390x | * /ppc64le) haveIBM=1 ;;
87
84
esac
88
85
pypyArch=" $( dpkgToPyPyArch " $dpkgArch " ) "
89
86
sha256=" $( scrapeSha256 " $pypy " " $fullVersion " " $pypyArch " ) " || :
@@ -108,11 +105,6 @@ for version in "${versions[@]}"; do
108
105
" Dockerfile${variant: +-$variant } .template" > " $version /$variant /Dockerfile"
109
106
travisEnv=' \n - VERSION=' " $version VARIANT=$variant$travisEnv "
110
107
done
111
-
112
- if [ -z " $haveIBM " ]; then
113
- # no need for s390x/ppc64le libncurses hax
114
- sed -i ' /libncurses/d' " $version /slim/Dockerfile"
115
- fi
116
108
done
117
109
118
110
travis=" $( awk -v ' RS=\n\n' ' $1 == "env:" { $0 = "env:' " $travisEnv " ' " } { printf "%s%s", $0, RS }' .travis.yml) "
You can’t perform that action at this time.
0 commit comments