Skip to content

Commit c7ff668

Browse files
authored
build binaries for Linux ARM64 (#142)
1 parent 9ebc209 commit c7ff668

File tree

5 files changed

+17
-2
lines changed

5 files changed

+17
-2
lines changed

.github/workflows/build.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ jobs:
3737
shell: bash
3838
run: |
3939
rustup target add x86_64-unknown-linux-musl \
40+
aarch64-unknown-linux-musl \
4041
aarch64-apple-darwin \
4142
x86_64-apple-darwin \
4243
x86_64-pc-windows-gnu
@@ -46,11 +47,14 @@ jobs:
4647
run: cargo zigbuild --target universal2-apple-darwin --release
4748
- name: Linux - build x86_64 musl
4849
run: cargo zigbuild --target x86_64-unknown-linux-musl --release
50+
- name: Linux - build aarch64 musl
51+
run: cargo zigbuild --target aarch64-unknown-linux-musl --release
4952
- name: Windows - build x86_64 musl
5053
run: cargo zigbuild --target x86_64-pc-windows-gnu --release
5154
- name: Move / Rename Artifacts
5255
run: |
5356
mv target/x86_64-unknown-linux-musl/release/rewatch ./rewatch-linux
57+
mv target/aarch64-unknown-linux-musl/release/rewatch ./rewatch-linux-arm64
5458
mv target/universal2-apple-darwin/release/rewatch ./rewatch-macos
5559
mv target/x86_64-pc-windows-gnu/release/rewatch.exe ./rewatch-windows.exe
5660

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
"/rewatch",
1414
"/rewatch.cmd",
1515
"/rewatch-linux",
16+
"/rewatch-linux-arm64",
1617
"/rewatch-macos",
1718
"/rewatch-windows.exe"
1819
]

postinstall.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,11 @@ const installWindowsBinary = () => {
3535

3636
switch (process.platform) {
3737
case "linux":
38-
installMacLinuxBinary("rewatch-linux");
38+
if (process.arch === "arm64") {
39+
installMacLinuxBinary("rewatch-linux-arm64");
40+
} else {
41+
installMacLinuxBinary("rewatch-linux");
42+
}
3943
break;
4044
case "darwin":
4145
installMacLinuxBinary("rewatch-macos");

rewatch

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,12 @@ if [ "$(uname)" = "Darwin" ]; then
88
$DIR/rewatch-macos.exe $@
99
elif [ "$(expr substr $(uname -s) 1 5)" = "Linux" ]; then
1010
# Run the Linux Version
11-
$DIR/rewatch-linux.exe $@
11+
elif [ "$(expr substr $(uname -m) 1 7)" = "aarch64" ]; then
12+
# Run the Linux ARM64 Version
13+
$DIR/rewatch-linux-arm64.exe $@
14+
else
15+
$DIR/rewatch-linux.exe $@
16+
fi
1217
else
1318
echo "No release available for '$(uname)'"
1419
exit 1

src/helpers.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,7 @@ pub fn get_bsc(root_path: &str, workspace_root: Option<String>) -> String {
140140
let subfolder = match (std::env::consts::OS, std::env::consts::ARCH) {
141141
("macos", "aarch64") => "darwinarm64",
142142
("macos", _) => "darwin",
143+
("linux", "aarch64") => "linuxarm64",
143144
("linux", _) => "linux",
144145
("windows", _) => "win32",
145146
_ => panic!("Unsupported architecture"),

0 commit comments

Comments
 (0)