about summary refs log tree commit diff
path: root/src/ci/docker
diff options
context:
space:
mode:
authorJorge Aparicio <japaricious@gmail.com>2017-02-06 14:12:56 -0500
committerJorge Aparicio <japaricious@gmail.com>2017-02-08 18:51:43 -0500
commit1914c8e0aca19b844b14a8b8032bc9376c6d37f0 (patch)
treece83274d475963baf1833d106e0a310c43ea177d /src/ci/docker
parent47ae2393e63e0d78118262b70245d34b8c8ba929 (diff)
downloadrust-1914c8e0aca19b844b14a8b8032bc9376c6d37f0.tar.gz
rust-1914c8e0aca19b844b14a8b8032bc9376c6d37f0.zip
dist-x86-linux: install newer kernel headers
Diffstat (limited to 'src/ci/docker')
-rw-r--r--src/ci/docker/dist-x86-linux/Dockerfile5
-rwxr-xr-xsrc/ci/docker/dist-x86-linux/build-headers.sh25
2 files changed, 30 insertions, 0 deletions
diff --git a/src/ci/docker/dist-x86-linux/Dockerfile b/src/ci/docker/dist-x86-linux/Dockerfile
index 7238888a4af..a06e47c3bc9 100644
--- a/src/ci/docker/dist-x86-linux/Dockerfile
+++ b/src/ci/docker/dist-x86-linux/Dockerfile
@@ -63,6 +63,11 @@ RUN ./build-git.sh
 COPY build-cmake.sh /tmp/
 RUN ./build-cmake.sh
 
+# for sanitizers, we need kernel headers files newer than the ones CentOS ships
+# with so we install newer ones here
+COPY build-headers.sh /tmp/
+RUN ./build-headers.sh
+
 RUN curl -Lo /rustroot/dumb-init \
       https://github.com/Yelp/dumb-init/releases/download/v1.2.0/dumb-init_1.2.0_amd64 && \
       chmod +x /rustroot/dumb-init
diff --git a/src/ci/docker/dist-x86-linux/build-headers.sh b/src/ci/docker/dist-x86-linux/build-headers.sh
new file mode 100755
index 00000000000..4ce38fd9205
--- /dev/null
+++ b/src/ci/docker/dist-x86-linux/build-headers.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+# Copyright 2017 The Rust Project Developers. See the COPYRIGHT
+# file at the top-level directory of this distribution and at
+# http://rust-lang.org/COPYRIGHT.
+#
+# Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
+# http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+# <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
+# option. This file may not be copied, modified, or distributed
+# except according to those terms.
+
+set -ex
+source shared.sh
+
+curl https://cdn.kernel.org/pub/linux/kernel/v3.x/linux-3.2.84.tar.xz | unxz | tar x
+
+cd linux-3.2.84
+hide_output make mrproper
+hide_output make INSTALL_HDR_PATH=dest headers_install
+
+find dest/include \( -name .install -o -name ..install.cmd \) -delete
+yes | cp -fr dest/include/* /usr/include
+
+cd ..
+rm -rf linux-3.2.84