|
1 | 1 | #!/bin/sh
|
2 | 2 |
|
3 |
| -linux_build() { |
4 |
| -# Set linker environment variables |
5 |
| -export CARGO_TARGET_ARMV7_UNKNOWN_LINUX_MUSLEABIHF_LINKER=arm-linux-gnueabihf-gcc |
6 |
| -export CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=aarch64-linux-gnu-gcc |
7 |
| -export CARGO_TARGET_X86_64_PC_WINDOWS_GNU_LINKER=x86_64-w64-mingw32-gcc |
8 |
| - |
9 |
| -targets=("x86_64-pc-windows-gnu" "x86_64-unknown-linux-musl" "armv7-unknown-linux-musleabihf" "aarch64-unknown-linux-gnu") |
10 |
| -for trgt in ${targets[*]} |
11 |
| -do |
12 |
| - cargo build --release --verbose --target $trgt |
13 |
| - if [ "$?" != "0" ] |
14 |
| - then |
15 |
| - exit 1 |
16 |
| - fi |
17 |
| -done |
18 |
| - |
19 |
| -mkdir -p target/releases/ |
20 |
| -cp target/x86_64-pc-windows-gnu/release/k3d.exe target/releases/k3d.exe |
21 |
| -cp target/x86_64-unknown-linux-musl/release/k3d target/releases/k3d |
22 |
| -cp target/armv7-unknown-linux-musleabihf/release/k3d target/releases/k3d-armhf |
23 |
| -cp target/aarch64-unknown-linux-gnu/release/k3d target/releases/k3d-arm64 |
24 |
| - |
25 |
| -cd target/releases/ |
26 |
| -for filename in ./k3d*; do |
27 |
| - sha256sum $filename > $filename.sha256 |
28 |
| -done |
29 |
| -cd ../../ |
30 |
| -} |
31 |
| - |
32 |
| -osx_build() { |
33 |
| -cargo build --release --verbose |
34 |
| -if [ "$?" != "0" ] |
35 |
| -then |
36 |
| - exit 1 |
37 |
| -fi |
38 |
| -mkdir -p target/releases/ |
39 |
| -cp target/release/k3d target/releases/k3d-darwin |
| 3 | +rustup target add $TARGET |
| 4 | +export OG_FILE="k3d" |
| 5 | + |
| 6 | +case $TARGET in |
| 7 | +"x86_64-pc-windows-gnu") |
| 8 | + sudo apt-get update |
| 9 | + sudo apt-get install -y --no-install-recommends g++-mingw-w64-x86-64 |
| 10 | + rustup target add x86_64-pc-windows-gnu |
| 11 | + export FILENAME="k3d.exe" |
| 12 | + export OG_FILE="k3d.exe" |
| 13 | + ;; |
| 14 | + |
| 15 | +"x86_64-unknown-linux-musl") |
| 16 | + export FILENAME="k3d" |
| 17 | + ;; |
| 18 | + |
| 19 | +"armv7-unknown-linux-musleabihf") |
| 20 | + sudo apt-get update |
| 21 | + sudo apt-get install -y --no-install-recommends g++-arm-linux-gnueabihf libc6-dev-armhf-cross |
| 22 | + export FILENAME="k3d-armhf" |
| 23 | + ;; |
| 24 | + |
| 25 | +"aarch64-unknown-linux-gnu") |
| 26 | + sudo apt-get update |
| 27 | + sudo apt-get install -y --no-install-recommends g++-aarch64-linux-gnu libc6-dev-arm64-cross |
| 28 | + export FILENAME="k3d-arm64" |
| 29 | + ;; |
| 30 | + |
| 31 | +"x86_64-apple-darwin") |
| 32 | + export FILENAME="k3d-darwin" |
| 33 | + ;; |
| 34 | +esac |
40 | 35 |
|
41 |
| -cd target/releases/ |
42 |
| -shasum -a 256 ./k3d-darwin > k3d-darwin.sha256 |
| 36 | +cargo build --release --verbose --target $TARGET |
43 | 37 |
|
44 |
| -./k3d-darwin --help |
45 |
| -if [ "$?" != "0" ] |
46 |
| -then |
47 |
| - exit 1 |
48 |
| -fi |
49 |
| -} |
| 38 | +mkdir -p target/releases/ |
| 39 | +mv target/$TARGET/release/$OG_FILE target/releases/$FILENAME |
| 40 | +sha256sum target/releases/$FILENAME > target/releases/$FILENAME.sha256 |
50 | 41 |
|
51 |
| -case "$(uname -s)" in |
52 |
| - Linux*) linux_build;; |
53 |
| - Darwin*) osx_build;; |
54 |
| -esac |
| 42 | +ls -la target/releases |
0 commit comments