@@ -15,11 +15,15 @@ jobs:
15
15
MIX_ENV : prod
16
16
strategy :
17
17
matrix :
18
+ arch :
19
+ - x86_64
20
+ - aarch64
21
+ - riscv64
18
22
job :
19
- - {otp: "27", elixir: "1.17", nif: "2.17" }
20
- - {otp: "25", elixir: "1.16", nif: "2.16" }
23
+ - {otp: "27", elixir: "1.17"}
24
+ - {otp: "25", elixir: "1.16"}
21
25
22
- name : Linux x86_64 - OTP ${{ matrix.job.otp }} - Elixir ${{ matrix.job.elixir }}
26
+ name : Linux ${{ matrix.arch }} - OTP ${{ matrix.job.otp }} - Elixir ${{ matrix.job.elixir }}
23
27
steps :
24
28
- name : Checkout
25
29
uses : actions/checkout@v4
@@ -41,37 +45,34 @@ jobs:
41
45
gcc-powerpc64le-linux-gnu g++-powerpc64le-linux-gnu \
42
46
gcc-s390x-linux-gnu g++-s390x-linux-gnu
43
47
44
- - name : Get musl cross-compilers
48
+ - name : Get musl ${{ matrix.arch }} cross-compilers
45
49
run : |
46
- for musl_arch in x86_64 aarch64 riscv64
47
- do
48
- wget "https://musl.cc/${musl_arch}-linux-musl-cross.tgz" -O "${musl_arch}-linux-musl-cross.tgz"
49
- tar -xf "${musl_arch}-linux-musl-cross.tgz"
50
- done
50
+ wget "https://musl.cc/${{matrix.arch}}-linux-musl-cross.tgz" -O "${{matrix.arch}}-linux-musl-cross.tgz"
51
+ tar -xf "${{matrix.arch}}-linux-musl-cross.tgz"
51
52
52
- - name : Create precompiled x86_64 library
53
+ - name : Create precompiled ${{ matrix.arch }} library
53
54
run : |
54
- export PATH="$(pwd)/x86_64 -linux-musl-cross/bin:${PATH}"
55
+ export PATH="$(pwd)/${{ matrix.arch }} -linux-musl-cross/bin:${PATH}"
55
56
export ELIXIR_MAKE_CACHE_DIR=$(pwd)/cache
56
57
mkdir -p "${ELIXIR_MAKE_CACHE_DIR}"
57
58
mix deps.get
58
59
mix elixir_make.precompile
59
60
60
- - name : Create precompiled aarch64 library
61
- run : |
62
- export PATH="$(pwd)/aarch64-linux-musl-cross/bin:${PATH}"
63
- export ELIXIR_MAKE_CACHE_DIR=$(pwd)/cache
64
- mkdir -p "${ELIXIR_MAKE_CACHE_DIR}"
65
- mix deps.get
66
- mix elixir_make.precompile
61
+ # - name: Create precompiled aarch64 library
62
+ # run: |
63
+ # export PATH="$(pwd)/aarch64-linux-musl-cross/bin:${PATH}"
64
+ # export ELIXIR_MAKE_CACHE_DIR=$(pwd)/cache
65
+ # mkdir -p "${ELIXIR_MAKE_CACHE_DIR}"
66
+ # mix deps.get
67
+ # mix elixir_make.precompile
67
68
68
- - name : Create precompiled riscv64 library
69
- run : |
70
- export PATH="$(pwd)/riscv64-linux-musl-cross/bin:${PATH}"
71
- export ELIXIR_MAKE_CACHE_DIR=$(pwd)/cache
72
- mkdir -p "${ELIXIR_MAKE_CACHE_DIR}"
73
- mix deps.get
74
- mix elixir_make.precompile
69
+ # - name: Create precompiled riscv64 library
70
+ # run: |
71
+ # export PATH="$(pwd)/riscv64-linux-musl-cross/bin:${PATH}"
72
+ # export ELIXIR_MAKE_CACHE_DIR=$(pwd)/cache
73
+ # mkdir -p "${ELIXIR_MAKE_CACHE_DIR}"
74
+ # mix deps.get
75
+ # mix elixir_make.precompile
75
76
76
77
- uses : softprops/action-gh-release@v1
77
78
if : startsWith(github.ref, 'refs/tags/')
0 commit comments