aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Jan Tattermusch <jtattermusch@google.com>2018-07-05 14:32:57 +0200
committerGravatar Jan Tattermusch <jtattermusch@google.com>2018-08-07 14:28:41 +0200
commitc42dd8b3c935fa651a62fdd5a828680b8d808ae2 (patch)
treea3800983eba64f2840a39c227839833d637c0398
parent18aac34e293546836f91103758adaee921a6a504 (diff)
attempt to fix protoc build
-rw-r--r--tools/dockerfile/grpc_artifact_protoc/Dockerfile30
-rwxr-xr-xtools/run_tests/artifacts/build_artifact_protoc.sh4
2 files changed, 22 insertions, 12 deletions
diff --git a/tools/dockerfile/grpc_artifact_protoc/Dockerfile b/tools/dockerfile/grpc_artifact_protoc/Dockerfile
index 33e2f2970c..44fde4f99f 100644
--- a/tools/dockerfile/grpc_artifact_protoc/Dockerfile
+++ b/tools/dockerfile/grpc_artifact_protoc/Dockerfile
@@ -30,24 +30,34 @@ RUN yum install -y git \
glibc-devel \
glibc-devel.i686
-# Install GCC 4.7 to support -static-libstdc++
-RUN wget http://people.centos.org/tru/devtools-1.1/devtools-1.1.repo -P /etc/yum.repos.d
-RUN bash -c 'echo "enabled=1" >> /etc/yum.repos.d/devtools-1.1.repo'
-RUN bash -c "sed -e 's/\$basearch/i386/g' /etc/yum.repos.d/devtools-1.1.repo > /etc/yum.repos.d/devtools-i386-1.1.repo"
-RUN sed -e 's/testing-/testing-i386-/g' -i /etc/yum.repos.d/devtools-i386-1.1.repo
+# Install GCC 4.8
+RUN wget http://people.centos.org/tru/devtools-2/devtools-2.repo -P /etc/yum.repos.d
+RUN bash -c 'echo "enabled=1" >> /etc/yum.repos.d/devtools-2.repo'
+RUN bash -c "sed -e 's/\$basearch/i386/g' /etc/yum.repos.d/devtools-2.repo > /etc/yum.repos.d/devtools-i386-2.repo"
+RUN sed -e 's/testing-/testing-i386-/g' -i /etc/yum.repos.d/devtools-i386-2.repo
# We'll get and "Rpmdb checksum is invalid: dCDPT(pkg checksums)" error caused by
# docker issue when using overlay storage driver, but all the stuff we need
# will be installed, so for now we just ignore the error.
# https://github.com/docker/docker/issues/10180
-RUN yum install -y devtoolset-1.1 \
- devtoolset-1.1-libstdc++-devel \
- devtoolset-1.1-libstdc++-devel.i686 || true
+RUN yum install -y devtoolset-2-build \
+ devtoolset-2-toolchain \
+ devtoolset-2-binutils \
+ devtoolset-2-gcc \
+ devtoolset-2-gcc-c++ \
+ devtoolset-2-libstdc++-devel \
+ devtoolset-2-libstdc++-devel.i686 || true
+
+# Again, ignore the "Rpmdb checksum is invalid: dCDPT(pkg checksums)" error.
+RUN yum install -y ca-certificates || true # renew certs to prevent download error for ius-release.rpm
+
+# TODO(jtattermusch): gRPC makefile uses "which" to detect the availability of gcc
+RUN yum install -y which || true
# Update Git to version >1.7 to allow cloning submodules with --reference arg.
RUN yum remove -y git && yum clean all
RUN yum install -y https://centos6.iuscommunity.org/ius-release.rpm && yum clean all
RUN yum install -y git2u && yum clean all
-# Start in devtoolset environment that uses GCC 4.7
-CMD ["scl", "enable", "devtoolset-1.1", "bash"]
+# Start in devtoolset environment that uses GCC 4.8
+CMD ["scl", "enable", "devtoolset-2", "bash"]
diff --git a/tools/run_tests/artifacts/build_artifact_protoc.sh b/tools/run_tests/artifacts/build_artifact_protoc.sh
index b531fc9a5d..6d433f2dad 100755
--- a/tools/run_tests/artifacts/build_artifact_protoc.sh
+++ b/tools/run_tests/artifacts/build_artifact_protoc.sh
@@ -13,8 +13,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-# Use devtoolset environment that has GCC 4.7 before set -ex
-source scl_source enable devtoolset-1.1
+# Use devtoolset environment that has GCC 4.8 before set -ex
+source scl_source enable devtoolset-2
set -ex