mirror of https://github.com/Nonannet/copapy.git
Cross-compile Docker container updated to include musl
This commit is contained in:
parent
bca7f85ddc
commit
803913c066
|
|
@ -25,7 +25,7 @@ jobs:
|
||||||
password: ${{ secrets.GITHUB_TOKEN }}
|
password: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
- name: Set image name
|
- name: Set image name
|
||||||
run: echo "IMAGE_NAME=ghcr.io/${GITHUB_REPOSITORY_OWNER,,}/cross_compiler_unix:1" >> $GITHUB_ENV
|
run: echo "IMAGE_NAME=ghcr.io/${GITHUB_REPOSITORY_OWNER,,}/cross_compiler_unix:2" >> $GITHUB_ENV
|
||||||
|
|
||||||
- name: Build Docker image
|
- name: Build Docker image
|
||||||
run: docker build -t $IMAGE_NAME ./tools/cross_compiler_unix/
|
run: docker build -t $IMAGE_NAME ./tools/cross_compiler_unix/
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@ jobs:
|
||||||
build_stencils:
|
build_stencils:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/nonannet/cross_compiler_unix:1
|
image: ghcr.io/nonannet/cross_compiler_unix:2
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@ jobs:
|
||||||
build_stencils:
|
build_stencils:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/nonannet/cross_compiler_unix:1
|
image: ghcr.io/nonannet/cross_compiler_unix:2
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ WORKDIR /home
|
||||||
RUN apt-get update && apt-get install -y \
|
RUN apt-get update && apt-get install -y \
|
||||||
build-essential \
|
build-essential \
|
||||||
gcc-13 \
|
gcc-13 \
|
||||||
|
gcc-12-i686-linux-gnu \
|
||||||
gcc-13-arm-linux-gnueabihf \
|
gcc-13-arm-linux-gnueabihf \
|
||||||
gcc-13-mips-linux-gnu \
|
gcc-13-mips-linux-gnu \
|
||||||
gcc-13-mipsel-linux-gnu \
|
gcc-13-mipsel-linux-gnu \
|
||||||
|
|
@ -13,3 +14,7 @@ RUN apt-get update && apt-get install -y \
|
||||||
gcc-13-multilib \
|
gcc-13-multilib \
|
||||||
python3 \
|
python3 \
|
||||||
git
|
git
|
||||||
|
|
||||||
|
COPY *.sh ./
|
||||||
|
|
||||||
|
RUN sh build_musl.sh && ls build/
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
git clone --single-branch --branch master --depth 1 https://git.musl-libc.org/git/musl
|
||||||
|
cd musl
|
||||||
|
|
||||||
|
./configure CFLAGS="-O2 -fno-stack-protector -ffast-math"
|
||||||
|
sh packobjs.sh x86_64
|
||||||
|
|
||||||
|
./configure CFLAGS="-O2 -fno-stack-protector" CC=i686-linux-gnu-gcc-13
|
||||||
|
sh packobjs.sh x86
|
||||||
|
|
||||||
|
./configure CFLAGS="-O2 -fno-stack-protector" CC=aarch64-linux-gnu-gcc-13
|
||||||
|
sh packobjs.sh arm64
|
||||||
|
|
||||||
|
#./configure CFLAGS="-O2 -fno-stack-protector" CC=mips-linux-gnu-gcc-13
|
||||||
|
#sh packobjs.sh mips
|
||||||
|
|
||||||
|
#./configure CFLAGS="-O2 -fno-stack-protector" CC=riscv64-linux-gnu-gcc-13
|
||||||
|
#sh packobjs.sh riscv64
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,16 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
ARCH=$1
|
||||||
|
|
||||||
|
mkdir -p ../build/stencil_objs
|
||||||
|
|
||||||
|
cd ../build/stencil_objs
|
||||||
|
ar x ../../../musl/lib/libc.a sinf.lo cosf.lo tanf.lo asinf.lo acosf.lo atanf.lo atan2f.lo
|
||||||
|
ar x ../../../musl/lib/libc.a sqrtf.lo logf.lo expf.lo sqrt.lo
|
||||||
|
ar x ../../../musl/lib/libc.a logf_data.lo __tandf.lo __cosdf.lo __sindf.lo __rem_pio2f.lo __math_invalidf.lo __stack_chk_fail.lo __math_divzerof.lo __math_oflowf.lo __rem_pio2_large.lo scalbn.lo floor.lo exp2f_data.lo powf.lo powf_data.lo __math_uflowf.lo __math_xflowf.lo
|
||||||
|
ar x ../../../musl/lib/libc.a fabsf.lo
|
||||||
|
|
||||||
|
ld -r *.lo -o ../musl_objects_{$ARCH}.o
|
||||||
|
|
||||||
|
rm ../build/stencil_objs/*
|
||||||
|
cd ../../musl
|
||||||
Loading…
Reference in New Issue