mirror of
https://github.com/kubeshark/kubeshark.git
synced 2025-07-16 01:16:47 +00:00
Add Capstone to AArch64 cross-compilation target
This commit is contained in:
parent
76393e0c1b
commit
00c1d8c0ef
@ -25,7 +25,7 @@ RUN npm run build
|
|||||||
### Base builder image for native builds architecture
|
### Base builder image for native builds architecture
|
||||||
FROM golang:1.17-alpine AS builder-native-base
|
FROM golang:1.17-alpine AS builder-native-base
|
||||||
ENV CGO_ENABLED=1 GOOS=linux
|
ENV CGO_ENABLED=1 GOOS=linux
|
||||||
RUN apk add --no-cache libpcap-dev g++ perl-utils git build-base bash
|
RUN apk add --no-cache libpcap-dev g++ perl-utils curl build-base bash
|
||||||
COPY devops/install-capstone.sh .
|
COPY devops/install-capstone.sh .
|
||||||
RUN ./install-capstone.sh
|
RUN ./install-capstone.sh
|
||||||
|
|
||||||
@ -41,9 +41,9 @@ ENV GOARCH=arm64
|
|||||||
|
|
||||||
|
|
||||||
### Builder image for x86-64 to AArch64 cross-compilation
|
### Builder image for x86-64 to AArch64 cross-compilation
|
||||||
FROM up9inc/linux-arm64-musl-go-libpcap AS builder-from-amd64-to-arm64v8
|
FROM up9inc/linux-arm64-musl-go-libpcap-capstone AS builder-from-amd64-to-arm64v8
|
||||||
ENV CGO_ENABLED=1 GOOS=linux
|
ENV CGO_ENABLED=1 GOOS=linux
|
||||||
ENV GOARCH=arm64 CGO_CFLAGS="-I/work/libpcap"
|
ENV GOARCH=arm64 CGO_CFLAGS="-I/work/libpcap -I/work/capstone/include"
|
||||||
|
|
||||||
|
|
||||||
### Builder image for AArch64 to x86-64 cross-compilation
|
### Builder image for AArch64 to x86-64 cross-compilation
|
||||||
|
@ -8,5 +8,5 @@ fi
|
|||||||
curl https://github.com/aquynh/capstone/archive/4.0.2.tar.gz -Lo ./capstone.tar.gz \
|
curl https://github.com/aquynh/capstone/archive/4.0.2.tar.gz -Lo ./capstone.tar.gz \
|
||||||
&& tar -xzf capstone.tar.gz && mv ./capstone-* ./capstone \
|
&& tar -xzf capstone.tar.gz && mv ./capstone-* ./capstone \
|
||||||
&& cd capstone \
|
&& cd capstone \
|
||||||
&& ./make.sh \
|
&& CAPSTONE_ARCHS="aarch64 x86" ./make.sh \
|
||||||
&& $SUDO ./make.sh install
|
&& $SUDO ./make.sh install
|
||||||
|
@ -17,4 +17,11 @@ RUN curl https://www.tcpdump.org/release/libpcap-1.10.1.tar.gz -Lo ./libpcap.tar
|
|||||||
WORKDIR /work/libpcap
|
WORKDIR /work/libpcap
|
||||||
RUN ./configure --host=arm && make \
|
RUN ./configure --host=arm && make \
|
||||||
&& cp /work/libpcap/libpcap.a /usr/xcc/aarch64-linux-musl-cross/lib/gcc/aarch64-linux-musl/*/
|
&& cp /work/libpcap/libpcap.a /usr/xcc/aarch64-linux-musl-cross/lib/gcc/aarch64-linux-musl/*/
|
||||||
|
WORKDIR /work
|
||||||
|
|
||||||
|
# Build and install Capstone from source
|
||||||
|
RUN curl https://github.com/aquynh/capstone/archive/4.0.2.tar.gz -Lo ./capstone.tar.gz \
|
||||||
|
&& tar -xzf capstone.tar.gz && mv ./capstone-* ./capstone
|
||||||
|
WORKDIR /work/capstone
|
||||||
|
RUN CAPSTONE_ARCHS="aarch64" CAPSTONE_STATIC=yes ./make.sh \
|
||||||
|
&& cp /work/capstone/libcapstone.a /usr/xcc/aarch64-linux-musl-cross/lib/gcc/aarch64-linux-musl/*/
|
4
devops/linux-arm64-musl-go-libpcap-capstone/build-push.sh
Executable file
4
devops/linux-arm64-musl-go-libpcap-capstone/build-push.sh
Executable file
@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
docker build . -t up9inc/linux-arm64-musl-go-libpcap-capstone && docker push up9inc/linux-arm64-musl-go-libpcap-capstone
|
@ -1,4 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
set -e
|
|
||||||
|
|
||||||
docker build . -t up9inc/linux-arm64-musl-go-libpcap && docker push up9inc/linux-arm64-musl-go-libpcap
|
|
@ -29,3 +29,11 @@ RUN curl https://www.tcpdump.org/release/libpcap-1.10.1.tar.gz -Lo ./libpcap.tar
|
|||||||
WORKDIR /libpcap
|
WORKDIR /libpcap
|
||||||
RUN ./configure --host=x86_64 && make \
|
RUN ./configure --host=x86_64 && make \
|
||||||
&& cp /libpcap/libpcap.a /usr/local/musl/lib/gcc/x86_64-unknown-linux-musl/*/
|
&& cp /libpcap/libpcap.a /usr/local/musl/lib/gcc/x86_64-unknown-linux-musl/*/
|
||||||
|
WORKDIR /
|
||||||
|
|
||||||
|
# Build and install Capstone from source
|
||||||
|
RUN curl https://github.com/aquynh/capstone/archive/4.0.2.tar.gz -Lo ./capstone.tar.gz \
|
||||||
|
&& tar -xzf capstone.tar.gz && mv ./capstone-* ./capstone
|
||||||
|
WORKDIR /work/capstone
|
||||||
|
RUN ./make.sh \
|
||||||
|
&& ./make.sh install
|
4
devops/linux-x86_64-musl-go-libpcap-capstone/build-push.sh
Executable file
4
devops/linux-x86_64-musl-go-libpcap-capstone/build-push.sh
Executable file
@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
docker build . -t up9inc/linux-x86_64-musl-go-libpcap-capstone && docker push up9inc/linux-x86_64-musl-go-libpcap-capstone
|
@ -1,4 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
set -e
|
|
||||||
|
|
||||||
docker build . -t up9inc/linux-x86_64-musl-go-libpcap && docker push up9inc/linux-x86_64-musl-go-libpcap
|
|
Loading…
Reference in New Issue
Block a user