remove bcc compilation from kernel

Signed-off-by: Avi Deitcher <avi@deitcher.net>
This commit is contained in:
Avi Deitcher 2025-02-17 11:51:19 +02:00
parent 72f5d331a4
commit 6cf7e8803e
2 changed files with 8 additions and 27 deletions

View File

@ -1,3 +1,3 @@
KERNEL_VERSION=6.6.71 KERNEL_VERSION=6.6.71
KERNEL_SERIES=6.6.x KERNEL_SERIES=6.6.x
BUILD_IMAGE=linuxkit/alpine:e9313150d2cf07ad92b0adb86799dedd9a0476e4 BUILD_IMAGE=linuxkit/alpine:35b33c6b03c40e51046c3b053dd131a68a26c37a

View File

@ -29,7 +29,6 @@ RUN apk update && apk upgrade -a && \
llvm19-dev \ llvm19-dev \
llvm19-static \ llvm19-static \
llvm19-gtest \ llvm19-gtest \
luajit-dev \
m4 \ m4 \
musl-fts-dev \ musl-fts-dev \
python3 \ python3 \
@ -39,18 +38,8 @@ RUN apk update && apk upgrade -a && \
zlib-dev \ zlib-dev \
&& true && true
RUN ln -s /usr/lib/cmake/llvm10/ /usr/lib/cmake/llvm && \
ln -s /usr/include/llvm10/llvm-c/ /usr/include/llvm-c && \
ln -s /usr/include/llvm10/llvm/ /usr/include/llvm
WORKDIR /build WORKDIR /build
ENV BCC_COMMIT=v0.32.0
RUN git clone https://github.com/iovisor/bcc.git && \
cd bcc && \
git checkout $BCC_COMMIT && \
sed -i 's/<error.h>/<errno.h>/' examples/cpp/KModRetExample.cc
COPY --from=ksrc /kernel-headers.tar /build COPY --from=ksrc /kernel-headers.tar /build
COPY --from=ksrc /kernel-dev.tar /build COPY --from=ksrc /kernel-dev.tar /build
COPY --from=ksrc /kernel.tar /build COPY --from=ksrc /kernel.tar /build
@ -58,15 +47,6 @@ RUN tar xf /build/kernel-headers.tar && \
tar xf /build/kernel-dev.tar && \ tar xf /build/kernel-dev.tar && \
tar xf /build/kernel.tar tar xf /build/kernel.tar
RUN mkdir -p bcc/build && cd bcc/build && \
cmake .. -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
-DCMAKE_C_FLAGS="-I/build/usr/include" \
-DPYTHON_CMD=python3 \
-DCMAKE_CXX_FLAGS="-I/build/usr/include" \
-DCMAKE_INSTALL_PREFIX=/usr && \
make && \
make install
RUN mkdir -p /out/usr/ && \ RUN mkdir -p /out/usr/ && \
cp -a /build/usr/src /out/usr/ && \ cp -a /build/usr/src /out/usr/ && \
cp -a /build/usr/include /out/usr cp -a /build/usr/include /out/usr
@ -77,21 +57,22 @@ RUN mkdir -p /out/usr/lib && \
RUN PYTHONPATH=$(python3 -c "import sysconfig; print(sysconfig.get_path('stdlib'))") && mkdir -p /out${PYTHONPATH} && \ RUN PYTHONPATH=$(python3 -c "import sysconfig; print(sysconfig.get_path('stdlib'))") && mkdir -p /out${PYTHONPATH} && \
cp -a ${PYTHONPATH}/site-packages /out/${PYTHONPATH} cp -a ${PYTHONPATH}/site-packages /out/${PYTHONPATH}
RUN mkdir -p /out/usr/share && \
cp -a /usr/share/bcc /out/usr/share/
RUN mkdir -p /out/usr/bin && \
cp -a /usr/bin/bcc-lua /out/usr/bin/
FROM ${BUILD_IMAGE} as mirror FROM ${BUILD_IMAGE} as mirror
RUN mkdir -p /out/etc/apk && cp -r /etc/apk/* /out/etc/apk/ RUN mkdir -p /out/etc/apk && cp -r /etc/apk/* /out/etc/apk/
RUN apk update && apk upgrade -a && \ RUN apk update && apk upgrade -a && \
apk add --no-cache --initdb -p /out \ apk add --no-cache --initdb -p /out \
bcc \
bcc-dev \
bcc-tools \
busybox \ busybox \
luajit \
python3 \ python3 \
zlib \ zlib \
&& true && true
# lua/luajit is not available on all platforms, but we do not consider it blocking
RUN apk add --no-cache -p /out luajit || true
RUN apk add --no-cache -p /out bcc-lua || true
FROM scratch FROM scratch
ENTRYPOINT [] ENTRYPOINT []
CMD [] CMD []