diff options
author | Joseph Hunkeler <jhunkeler@gmail.com> | 2019-01-31 14:12:13 -0500 |
---|---|---|
committer | Joseph Hunkeler <jhunkeler@gmail.com> | 2019-01-31 14:12:13 -0500 |
commit | 11f358cafab2da28692fdaa837dfbcc3cc163736 (patch) | |
tree | 9ed443d35c71e4c27a2803733c41d3e8a2322a73 /etc | |
parent | 73a53c48901e120a06d221c8cb4f02076e3b9888 (diff) | |
download | docker-python-11f358cafab2da28692fdaa837dfbcc3cc163736.tar.gz |
Refactor all
Diffstat (limited to 'etc')
-rwxr-xr-x | etc/pkgs/001-gcc.sh | 95 | ||||
-rwxr-xr-x | etc/pkgs/001-openssl.sh (renamed from etc/pkgs/003-openssl.sh) | 2 | ||||
-rwxr-xr-x | etc/pkgs/002-binutils.sh | 26 | ||||
-rwxr-xr-x | etc/pkgs/002-python.sh (renamed from etc/pkgs/004-python.sh) | 3 | ||||
-rwxr-xr-x | etc/tasks/001-packages.sh | 8 | ||||
-rwxr-xr-x | etc/tasks/002-python-packages.sh | 7 | ||||
-rwxr-xr-x | etc/tasks/999-clean.sh | 12 |
7 files changed, 5 insertions, 148 deletions
diff --git a/etc/pkgs/001-gcc.sh b/etc/pkgs/001-gcc.sh deleted file mode 100755 index 21065cd..0000000 --- a/etc/pkgs/001-gcc.sh +++ /dev/null @@ -1,95 +0,0 @@ -#!/bin/bash -e -set -x -name=gcc -version=8.2.0 -url=http://mirrors-usa.go-parts.com/gcc/releases/${name}-${version}/${name}-${version}.tar.gz -src=${name}-${version} -bld=${src}_build - -version_isl=0.20 -url_isl=http://isl.gforge.inria.fr/isl-${version_isl}.tar.bz2 - -version_cloog=0.18.4 -url_cloog="http://www.bastoul.net/cloog/pages/download/count.php3?url=./cloog-${version_cloog}.tar.gz" - -# Ensure 64-bit libraries go into /lib -sudo ln -sf ${TOOLCHAIN_LIB} ${TOOLCHAIN}/lib64 - -curl -LO ${url} -tar xf ${src}.tar.gz - -mkdir -p ${bld} -pushd ${src} - unset CFLAGS - unset LDFLAGS - - # Disable fixincludes - sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in - - # Use /lib, not /lib64 - #sed -i '/m64=/s/lib64/lib/' gcc/config/i386/t-linux64 - #sed -i 's/lib64/lib/g' gcc/config.gcc - #sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" {libiberty,gcc}/configure - - # Download MPFR and friends - ./contrib/download_prerequisites - - curl -LO ${url_isl} - tar xf $(basename ${url_isl}) - ln -s isl-${version_isl} isl - - curl -LO ${url_cloog} - tar xf $(basename ${url_cloog}) - ln -s cloog-${version_cloog} cloog -popd - -pushd ${bld} - # Beware: x86_64-only toolchain (multilib disabled) - ../${src}/configure \ - --prefix=${TOOLCHAIN} \ - --libdir=${TOOLCHAIN_LIB} \ - --libexecdir=${TOOLCHAIN_LIB} \ - --disable-static \ - --disable-multilib \ - --disable-werror \ - --disable-libunwind-exceptions \ - --disable-libstdcxx-pch \ - --disable-libssp \ - --with-system-zlib \ - --with-isl \ - --with-linker-hash-style=gnu \ - --with-tune=generic \ - --enable-bootstrap \ - --enable-languages=c,c++,fortran,lto,go \ - --enable-shared \ - --enable-threads=posix \ - --enable-libmpx \ - --enable-__cxa_atexit \ - --enable-clocale=gnu \ - --enable-gnu-unique-object \ - --enable-linker-build-id \ - --enable-lto \ - --enable-plugin \ - --enable-install-libiberty \ - --enable-gnu-indirect-function \ - --enable-default-pie \ - --enable-default-ssp \ - --enable-cet=auto \ - --enable-checking=release - - make -j${_maxjobs} - make install-strip - - # Binutils build cannot use this static archive - rm -f "${TOOLCHAIN_LIB}/libiberty.a" - - # Prevent ldconfig from picking up gdb python scripts - autoload="${TOOLCHAIN_DATA}/gdb/auto-load${TOOLCHAIN_LIB}" - mkdir -p "${autoload}" - mv -v "${TOOLCHAIN_LIB}"/*gdb.py "${autoload}" - - # Enforce global linkage to toolchain - /bin/echo "${TOOLCHAIN_LIB}" > gcc.conf - sudo cp -a gcc.conf /etc/ld.so.conf.d - sudo ldconfig -popd diff --git a/etc/pkgs/003-openssl.sh b/etc/pkgs/001-openssl.sh index c5aaabe..fe7aad8 100755 --- a/etc/pkgs/003-openssl.sh +++ b/etc/pkgs/001-openssl.sh @@ -1,5 +1,4 @@ #!/bin/bash -set -e set -x name="openssl" @@ -64,6 +63,7 @@ function post() { bundle=$(get_system_cacert) install -D -m644 "${bundle}" "${prefix}/ssl/cert.pem" + rm -rf "${prefix}/share/doc/openssl/html" rm -rf "${dest}" rm -rf "${tarball}" echo "All done." diff --git a/etc/pkgs/002-binutils.sh b/etc/pkgs/002-binutils.sh deleted file mode 100755 index 83423be..0000000 --- a/etc/pkgs/002-binutils.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash -x -name=binutils -version=2.31.1 -url=https://ftp.gnu.org/gnu/binutils/${name}-${version}.tar.gz - -curl -LO ${url} -tar xf ${name}-${version}.tar.gz - -mkdir -p binutils -pushd binutils - ../${name}-${version}/configure \ - --prefix=${TOOLCHAIN} \ - --target=x86_64-pc-linux-gnu \ - --enable-shared \ - --enable-lto \ - --enable-gold \ - --enable-ld=default \ - --enable-plugins \ - --enable-threads \ - --disable-static \ - --disable-multilib \ - --with-sysroot=/ \ - --with-tune=generic - make -j4 - make install-strip -popd diff --git a/etc/pkgs/004-python.sh b/etc/pkgs/002-python.sh index d7db12f..36cebc6 100755 --- a/etc/pkgs/004-python.sh +++ b/etc/pkgs/002-python.sh @@ -1,5 +1,4 @@ #!/bin/bash -set -e set -x python_version="${PYTHON_VERSION}" @@ -98,7 +97,7 @@ function build() --with-dbmliborder=gdbm:ndbm \ --with-pymalloc \ --with-system-expat - make -j4 + make -j${_maxjobs} make install popd post diff --git a/etc/tasks/001-packages.sh b/etc/tasks/001-packages.sh index fabad6e..5d20ee7 100755 --- a/etc/tasks/001-packages.sh +++ b/etc/tasks/001-packages.sh @@ -1,18 +1,10 @@ #!/bin/bash -set -e set -x -prefix="${TOOLCHAIN}" sysconfdir="${TOOLCHAIN_BUILD}/etc" reqdir=${sysconfdir}/pkgs blddir=builds -export PATH="${prefix}/bin:${PATH}" -export CFLAGS="-I${prefix}/include" -export LDFLAGS="-L${prefix}/lib -Wl,-rpath=${prefix}/lib" -export PKG_CONFIG_PATH="${prefix}/lib/pkgconfig" -export PREFIX="${prefix}" - function pre() { if [[ ! -d ${reqdir} ]]; then diff --git a/etc/tasks/002-python-packages.sh b/etc/tasks/002-python-packages.sh index 9218a8e..bcd0b6f 100755 --- a/etc/tasks/002-python-packages.sh +++ b/etc/tasks/002-python-packages.sh @@ -1,16 +1,9 @@ #!/bin/bash set -x -# Uses GLOBAL environment variable: PYTHON_VERSION defined by `docker build` argument -prefix="${TOOLCHAIN}" sysconfdir="${TOOLCHAIN_BUILD}/etc" reqdir=${sysconfdir}/pip -export PATH="${prefix}/bin:${PATH}" -export PKG_CONFIG_PATH="${prefix}/lib/pkgconfig" -export CFLAGS="-I${prefix}/include" -export LDFLAGS="-L${prefix}/lib -Wl,-rpath=${prefix}/lib" - function pre() { if [[ ! -d ${reqdir} ]]; then diff --git a/etc/tasks/999-clean.sh b/etc/tasks/999-clean.sh index c791ec5..e4e8d13 100755 --- a/etc/tasks/999-clean.sh +++ b/etc/tasks/999-clean.sh @@ -4,22 +4,16 @@ if [[ ! -f /.dockerenv ]]; then exit 1 fi -packages=( - gcc - gcc-c++ - gcc-gfortran -) -sudo yum remove -y "${packages[@]}" sudo yum clean all -# Remove all static libraries -sudo find "${TOOLCHAIN_LIB}" -name '*.a' -delete - sudo rm -rf "${HOME}/.astropy" sudo rm -rf "${HOME}"/* sudo rm -rf /tmp/* sudo rm -rf /var/cache/yum +# Ensure new shared libraries ingested +sudo ldconfig + for logfile in /var/log/* do [[ -f ${logfile} ]] && sudo truncate --size=0 "${logfile}" |