diff --git a/Dockerfile b/Dockerfile index f8f64115f..4024885da 100644 --- a/Dockerfile +++ b/Dockerfile @@ -46,6 +46,7 @@ COPY scripts/phpspy_build.sh . RUN ./phpspy_build.sh # async-profiler +# requires CentOS 6, so the built DSO can be loaded into machines running with old glibc. # centos:6 FROM centos@sha256:dec8f471302de43f4cfcf82f56d99a5227b5ea1aa6d02fa56344986e1f4610e7 AS async-profiler-builder COPY scripts/async_profiler_env.sh . diff --git a/gprofiler/__init__.py b/gprofiler/__init__.py index c72e3798a..1436d8fe8 100644 --- a/gprofiler/__init__.py +++ b/gprofiler/__init__.py @@ -1 +1 @@ -__version__ = "1.1.4" +__version__ = "1.1.6" diff --git a/pyi.Dockerfile b/pyi.Dockerfile index 8e630ac04..8abd49dfa 100644 --- a/pyi.Dockerfile +++ b/pyi.Dockerfile @@ -35,6 +35,8 @@ COPY scripts/phpspy_build.sh . RUN ./phpspy_build.sh # async-profiler +# requires CentOS 6, so the built DSO can be loaded into machines running with old glibc. +# centos:6 FROM centos@sha256:dec8f471302de43f4cfcf82f56d99a5227b5ea1aa6d02fa56344986e1f4610e7 AS async-profiler-builder COPY scripts/async_profiler_env.sh . RUN ./async_profiler_env.sh diff --git a/scripts/async_profiler_build.sh b/scripts/async_profiler_build.sh index cb8e09f34..a42a0d995 100755 --- a/scripts/async_profiler_build.sh +++ b/scripts/async_profiler_build.sh @@ -5,10 +5,14 @@ # set -euo pipefail -VERSION=v2.0g3 +VERSION=v2.0g4 +GIT_REV=9d29169e34abc004f534a85ba6a4cf8920250381 OUTPUT=async-profiler-2.0-linux-x64.tar.gz -git clone --depth 1 -b "$VERSION" https://github.com/Granulate/async-profiler.git && cd async-profiler && git reset --hard 51447a849d686e899c1cd393e83f0f7c41685d95 +git clone --depth 1 -b "$VERSION" https://github.com/Granulate/async-profiler.git && cd async-profiler && git reset --hard "$GIT_REV" +set +eu # this funny script has errors :shrug: +source scl_source enable devtoolset-7 +set -eu make release # add a version file to the build directory diff --git a/scripts/async_profiler_env.sh b/scripts/async_profiler_env.sh index 8839eb4a4..9c8c9717f 100755 --- a/scripts/async_profiler_env.sh +++ b/scripts/async_profiler_env.sh @@ -5,9 +5,14 @@ # set -euo pipefail -# fix legacy yum repos. slightly adapted from https://stackoverflow.com/a/53848450 -# this basically comments out all mirrorlist URLs, uncomments all baseurls (all seem to be commented) -# and replaces the domain from mirror.centos.org to vault.centos.org. -sed -i -e 's|^mirrorlist|#mirrorlist|' -e 's|^# *baseurl|baseurl|' -e 's|mirror.centos.org|vault.centos.org|' /etc/yum.repos.d/* +function fix_legacy_repos() { + # fix legacy yum repos. slightly adapted from https://stackoverflow.com/a/53848450 + # this basically comments out all mirrorlist URLs, uncomments all baseurls (all seem to be commented) + # and replaces the domain from mirror.centos.org to vault.centos.org. + sed -i -e 's|^mirrorlist|#mirrorlist|' -e 's|^# *baseurl|baseurl|' -e 's|mirror.centos.org|vault.centos.org|' /etc/yum.repos.d/* +} -yum install -y gcc g++ gcc-c++.x86_64 make java-1.8.0-openjdk-devel glibc-static git +fix_legacy_repos +yum install -y centos-release-scl +fix_legacy_repos # fix again, after adding new scl repos +yum install -y devtoolset-7-toolchain make java-1.8.0-openjdk-devel glibc-static git