summaryrefslogtreecommitdiff
path: root/automation/tests-artifacts/kernel/6.1.19.dockerfile
blob: c2171555a0a6c202fa7a37c0bde1302f1aa506d7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
FROM debian:unstable
LABEL maintainer.name="The Xen Project" \
      maintainer.email="xen-devel@lists.xenproject.org"

ENV DEBIAN_FRONTEND=noninteractive
ENV LINUX_VERSION=6.1.19
ENV USER root

RUN mkdir /build
WORKDIR /build

# build depends
RUN apt-get update && \
    apt-get --quiet --yes install \
        build-essential \
        libssl-dev \
        bc \
        curl \
        flex \
        bison \
        libelf-dev \
        && \
    apt-get autoremove -y && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists* /tmp/* /var/tmp/*

# Build the kernel
RUN curl -fsSLO https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-"$LINUX_VERSION".tar.xz && \
    tar xvJf linux-"$LINUX_VERSION".tar.xz && \
    cd linux-"$LINUX_VERSION" && \
    make defconfig && \
    make xen.config && \
    scripts/config --enable BRIDGE && \
    scripts/config --enable IGC && \
    cp .config .config.orig && \
    cat .config.orig | grep XEN | grep =m |sed 's/=m/=y/g' >> .config && \
    make -j$(nproc) bzImage && \
    cp arch/x86/boot/bzImage / && \
    cd /build && \
    rm -rf linux-"$LINUX_VERSION"*