1
0
Fork 0
mirror of https://github.com/docker-library/ruby.git synced 2022-11-09 11:41:34 -05:00

Merge pull request #266 from lsb/master

Add libgmp for faster Integer calculations.
This commit is contained in:
Tianon Gravi 2019-02-28 17:00:26 -08:00 committed by GitHub
commit f2bdb4a6de
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
16 changed files with 107 additions and 56 deletions

View file

@ -28,6 +28,7 @@ RUN set -ex \
gcc \
gdbm-dev \
glib-dev \
gmp-dev \
libc-dev \
libffi-dev \
libxml2-dev \

View file

@ -28,6 +28,7 @@ RUN set -ex \
gcc \
gdbm-dev \
glib-dev \
gmp-dev \
libc-dev \
libffi-dev \
libxml2-dev \

View file

@ -28,7 +28,8 @@ ENV RUBYGEMS_VERSION 3.0.1
# we purge system ruby later to make sure our final image uses what we just built
RUN set -ex \
\
&& buildDeps=' \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update && apt-get install -y --no-install-recommends \
autoconf \
bison \
dpkg-dev \
@ -36,6 +37,7 @@ RUN set -ex \
libbz2-dev \
libgdbm-dev \
libglib2.0-dev \
libgmp-dev \
libncurses-dev \
libreadline-dev \
libxml2-dev \
@ -44,9 +46,6 @@ RUN set -ex \
ruby \
wget \
xz-utils \
' \
&& apt-get update \
&& apt-get install -y --no-install-recommends $buildDeps \
&& rm -rf /var/lib/apt/lists/* \
\
&& wget -O ruby.tar.xz "https://cache.ruby-lang.org/pub/ruby/${RUBY_MAJOR%-rc}/ruby-$RUBY_VERSION.tar.xz" \
@ -76,10 +75,17 @@ RUN set -ex \
&& make -j "$(nproc)" \
&& make install \
\
&& dpkg-query --show --showformat '${package}\n' \
| grep -P '^libreadline\d+$' \
| xargs apt-mark manual \
&& apt-get purge -y --auto-remove $buildDeps \
&& apt-mark auto '.*' > /dev/null \
&& apt-mark manual $savedAptMark \
&& find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \
| awk '/=>/ { print $(NF-1) }' \
| sort -u \
| xargs -r dpkg-query --search \
| cut -d: -f1 \
| sort -u \
| xargs -r apt-mark manual \
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
\
&& cd / \
&& rm -r /usr/src/ruby \
# make sure bundled "rubygems" is older than RUBYGEMS_VERSION (https://github.com/docker-library/ruby/issues/246)

View file

@ -28,7 +28,8 @@ ENV RUBYGEMS_VERSION 3.0.1
# we purge system ruby later to make sure our final image uses what we just built
RUN set -ex \
\
&& buildDeps=' \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update && apt-get install -y --no-install-recommends \
autoconf \
bison \
dpkg-dev \
@ -36,6 +37,7 @@ RUN set -ex \
libbz2-dev \
libgdbm-dev \
libglib2.0-dev \
libgmp-dev \
libncurses-dev \
libreadline-dev \
libxml2-dev \
@ -44,9 +46,6 @@ RUN set -ex \
ruby \
wget \
xz-utils \
' \
&& apt-get update \
&& apt-get install -y --no-install-recommends $buildDeps \
&& rm -rf /var/lib/apt/lists/* \
\
&& wget -O ruby.tar.xz "https://cache.ruby-lang.org/pub/ruby/${RUBY_MAJOR%-rc}/ruby-$RUBY_VERSION.tar.xz" \
@ -76,10 +75,17 @@ RUN set -ex \
&& make -j "$(nproc)" \
&& make install \
\
&& dpkg-query --show --showformat '${package}\n' \
| grep -P '^libreadline\d+$' \
| xargs apt-mark manual \
&& apt-get purge -y --auto-remove $buildDeps \
&& apt-mark auto '.*' > /dev/null \
&& apt-mark manual $savedAptMark \
&& find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \
| awk '/=>/ { print $(NF-1) }' \
| sort -u \
| xargs -r dpkg-query --search \
| cut -d: -f1 \
| sort -u \
| xargs -r apt-mark manual \
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
\
&& cd / \
&& rm -r /usr/src/ruby \
# make sure bundled "rubygems" is older than RUBYGEMS_VERSION (https://github.com/docker-library/ruby/issues/246)

View file

@ -28,6 +28,7 @@ RUN set -ex \
gcc \
gdbm-dev \
glib-dev \
gmp-dev \
libc-dev \
libffi-dev \
libxml2-dev \

View file

@ -28,6 +28,7 @@ RUN set -ex \
gcc \
gdbm-dev \
glib-dev \
gmp-dev \
libc-dev \
libffi-dev \
libxml2-dev \

View file

@ -28,7 +28,8 @@ ENV RUBYGEMS_VERSION 3.0.1
# we purge system ruby later to make sure our final image uses what we just built
RUN set -ex \
\
&& buildDeps=' \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update && apt-get install -y --no-install-recommends \
autoconf \
bison \
dpkg-dev \
@ -36,6 +37,7 @@ RUN set -ex \
libbz2-dev \
libgdbm-dev \
libglib2.0-dev \
libgmp-dev \
libncurses-dev \
libreadline-dev \
libxml2-dev \
@ -44,9 +46,6 @@ RUN set -ex \
ruby \
wget \
xz-utils \
' \
&& apt-get update \
&& apt-get install -y --no-install-recommends $buildDeps \
&& rm -rf /var/lib/apt/lists/* \
\
&& wget -O ruby.tar.xz "https://cache.ruby-lang.org/pub/ruby/${RUBY_MAJOR%-rc}/ruby-$RUBY_VERSION.tar.xz" \
@ -76,10 +75,17 @@ RUN set -ex \
&& make -j "$(nproc)" \
&& make install \
\
&& dpkg-query --show --showformat '${package}\n' \
| grep -P '^libreadline\d+$' \
| xargs apt-mark manual \
&& apt-get purge -y --auto-remove $buildDeps \
&& apt-mark auto '.*' > /dev/null \
&& apt-mark manual $savedAptMark \
&& find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \
| awk '/=>/ { print $(NF-1) }' \
| sort -u \
| xargs -r dpkg-query --search \
| cut -d: -f1 \
| sort -u \
| xargs -r apt-mark manual \
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
\
&& cd / \
&& rm -r /usr/src/ruby \
# make sure bundled "rubygems" is older than RUBYGEMS_VERSION (https://github.com/docker-library/ruby/issues/246)

View file

@ -28,7 +28,8 @@ ENV RUBYGEMS_VERSION 3.0.1
# we purge system ruby later to make sure our final image uses what we just built
RUN set -ex \
\
&& buildDeps=' \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update && apt-get install -y --no-install-recommends \
autoconf \
bison \
dpkg-dev \
@ -36,6 +37,7 @@ RUN set -ex \
libbz2-dev \
libgdbm-dev \
libglib2.0-dev \
libgmp-dev \
libncurses-dev \
libreadline-dev \
libxml2-dev \
@ -44,9 +46,6 @@ RUN set -ex \
ruby \
wget \
xz-utils \
' \
&& apt-get update \
&& apt-get install -y --no-install-recommends $buildDeps \
&& rm -rf /var/lib/apt/lists/* \
\
&& wget -O ruby.tar.xz "https://cache.ruby-lang.org/pub/ruby/${RUBY_MAJOR%-rc}/ruby-$RUBY_VERSION.tar.xz" \
@ -76,10 +75,17 @@ RUN set -ex \
&& make -j "$(nproc)" \
&& make install \
\
&& dpkg-query --show --showformat '${package}\n' \
| grep -P '^libreadline\d+$' \
| xargs apt-mark manual \
&& apt-get purge -y --auto-remove $buildDeps \
&& apt-mark auto '.*' > /dev/null \
&& apt-mark manual $savedAptMark \
&& find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \
| awk '/=>/ { print $(NF-1) }' \
| sort -u \
| xargs -r dpkg-query --search \
| cut -d: -f1 \
| sort -u \
| xargs -r apt-mark manual \
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
\
&& cd / \
&& rm -r /usr/src/ruby \
# make sure bundled "rubygems" is older than RUBYGEMS_VERSION (https://github.com/docker-library/ruby/issues/246)

View file

@ -28,6 +28,7 @@ RUN set -ex \
gcc \
gdbm-dev \
glib-dev \
gmp-dev \
libc-dev \
libffi-dev \
libxml2-dev \

View file

@ -28,6 +28,7 @@ RUN set -ex \
gcc \
gdbm-dev \
glib-dev \
gmp-dev \
libc-dev \
libffi-dev \
libxml2-dev \

View file

@ -28,7 +28,8 @@ ENV RUBYGEMS_VERSION 3.0.1
# we purge system ruby later to make sure our final image uses what we just built
RUN set -ex \
\
&& buildDeps=' \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update && apt-get install -y --no-install-recommends \
autoconf \
bison \
dpkg-dev \
@ -36,6 +37,7 @@ RUN set -ex \
libbz2-dev \
libgdbm-dev \
libglib2.0-dev \
libgmp-dev \
libncurses-dev \
libreadline-dev \
libxml2-dev \
@ -44,9 +46,6 @@ RUN set -ex \
ruby \
wget \
xz-utils \
' \
&& apt-get update \
&& apt-get install -y --no-install-recommends $buildDeps \
&& rm -rf /var/lib/apt/lists/* \
\
&& wget -O ruby.tar.xz "https://cache.ruby-lang.org/pub/ruby/${RUBY_MAJOR%-rc}/ruby-$RUBY_VERSION.tar.xz" \
@ -76,10 +75,17 @@ RUN set -ex \
&& make -j "$(nproc)" \
&& make install \
\
&& dpkg-query --show --showformat '${package}\n' \
| grep -P '^libreadline\d+$' \
| xargs apt-mark manual \
&& apt-get purge -y --auto-remove $buildDeps \
&& apt-mark auto '.*' > /dev/null \
&& apt-mark manual $savedAptMark \
&& find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \
| awk '/=>/ { print $(NF-1) }' \
| sort -u \
| xargs -r dpkg-query --search \
| cut -d: -f1 \
| sort -u \
| xargs -r apt-mark manual \
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
\
&& cd / \
&& rm -r /usr/src/ruby \
# make sure bundled "rubygems" is older than RUBYGEMS_VERSION (https://github.com/docker-library/ruby/issues/246)

View file

@ -27,6 +27,7 @@ RUN set -ex \
gcc \
gdbm-dev \
glib-dev \
gmp-dev \
libc-dev \
libffi-dev \
libxml2-dev \

View file

@ -27,6 +27,7 @@ RUN set -ex \
gcc \
gdbm-dev \
glib-dev \
gmp-dev \
libc-dev \
libffi-dev \
libxml2-dev \

View file

@ -27,7 +27,8 @@ ENV RUBY_DOWNLOAD_SHA256 47b629808e9fd44ce1f760cdf3ed14875fc9b19d4f334e82e2cf25c
# we purge system ruby later to make sure our final image uses what we just built
RUN set -ex \
\
&& buildDeps=' \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update && apt-get install -y --no-install-recommends \
autoconf \
bison \
dpkg-dev \
@ -35,6 +36,7 @@ RUN set -ex \
libbz2-dev \
libgdbm-dev \
libglib2.0-dev \
libgmp-dev \
libncurses-dev \
libreadline-dev \
libxml2-dev \
@ -43,9 +45,6 @@ RUN set -ex \
ruby \
wget \
xz-utils \
' \
&& apt-get update \
&& apt-get install -y --no-install-recommends $buildDeps \
&& rm -rf /var/lib/apt/lists/* \
\
&& wget -O ruby.tar.xz "https://cache.ruby-lang.org/pub/ruby/${RUBY_MAJOR%-rc}/ruby-$RUBY_VERSION.tar.xz" \
@ -75,10 +74,17 @@ RUN set -ex \
&& make -j "$(nproc)" \
&& make install \
\
&& dpkg-query --show --showformat '${package}\n' \
| grep -P '^libreadline\d+$' \
| xargs apt-mark manual \
&& apt-get purge -y --auto-remove $buildDeps \
&& apt-mark auto '.*' > /dev/null \
&& apt-mark manual $savedAptMark \
&& find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \
| awk '/=>/ { print $(NF-1) }' \
| sort -u \
| xargs -r dpkg-query --search \
| cut -d: -f1 \
| sort -u \
| xargs -r apt-mark manual \
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
\
&& cd / \
&& rm -r /usr/src/ruby \
# rough smoke test

View file

@ -28,6 +28,7 @@ RUN set -ex \
gcc \
gdbm-dev \
glib-dev \
gmp-dev \
libc-dev \
libffi-dev \
libxml2-dev \

View file

@ -28,7 +28,8 @@ ENV RUBYGEMS_VERSION %%RUBYGEMS%%
# we purge system ruby later to make sure our final image uses what we just built
RUN set -ex \
\
&& buildDeps=' \
&& savedAptMark="$(apt-mark showmanual)" \
&& apt-get update && apt-get install -y --no-install-recommends \
autoconf \
bison \
dpkg-dev \
@ -36,6 +37,7 @@ RUN set -ex \
libbz2-dev \
libgdbm-dev \
libglib2.0-dev \
libgmp-dev \
libncurses-dev \
libreadline-dev \
libxml2-dev \
@ -44,9 +46,6 @@ RUN set -ex \
ruby \
wget \
xz-utils \
' \
&& apt-get update \
&& apt-get install -y --no-install-recommends $buildDeps \
&& rm -rf /var/lib/apt/lists/* \
\
&& wget -O ruby.tar.xz "https://cache.ruby-lang.org/pub/ruby/${RUBY_MAJOR%-rc}/ruby-$RUBY_VERSION.tar.xz" \
@ -76,10 +75,17 @@ RUN set -ex \
&& make -j "$(nproc)" \
&& make install \
\
&& dpkg-query --show --showformat '${package}\n' \
| grep -P '^libreadline\d+$' \
| xargs apt-mark manual \
&& apt-get purge -y --auto-remove $buildDeps \
&& apt-mark auto '.*' > /dev/null \
&& apt-mark manual $savedAptMark \
&& find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' \
| awk '/=>/ { print $(NF-1) }' \
| sort -u \
| xargs -r dpkg-query --search \
| cut -d: -f1 \
| sort -u \
| xargs -r apt-mark manual \
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
\
&& cd / \
&& rm -r /usr/src/ruby \
# make sure bundled "rubygems" is older than RUBYGEMS_VERSION (https://github.com/docker-library/ruby/issues/246)