diff --git a/.gitignore b/.gitignore index ea8c4bf..6b39d31 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /target +.idea/ \ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..8f84124 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,42 @@ +# Setup + +```shell +brew install zig just +# OR +winget install zig.zig Casey.Just +# THEN +cargo install --locked cargo-zigbuild +``` + +# Compiling + +```shell +# Linux x86_64 +rustup target add x86_64-unknown-linux-gnu # ONCE +just build-linux-arm + +## OR +# Linux ARM64 +rustup target add aarch64-unknown-linux-gnu # ONCE +just build-linux-64 + +## OR +# Windows ARM64 +rustup target add aarch64-pc-windows-gnullvm # ONCE +just build-windows-arm + +## OR +# Windows x86_64 +rustup target add x86_64-pc-windows-gnu # ONCE +just build-windows-64 + +## OR +# macOS Universal +rustup target add x86_64-apple-darwin +rustup target add aarch64-apple-darwin +just build-macos +``` + +# Windows support note: + +https://github.com/rust-cross/cargo-zigbuild/issues/328 \ No newline at end of file diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 0000000..847484a --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,7 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "rust-multi-os-template" +version = "0.1.0" diff --git a/justfile b/justfile new file mode 100644 index 0000000..24b17eb --- /dev/null +++ b/justfile @@ -0,0 +1,10 @@ +build-linux-arm: + cargo zigbuild --target aarch64-unknown-linux-gnu +build-linux-64: + cargo zigbuild --target x86_64-unknown-linux-gnu +build-windows-arm: + cargo zigbuild --target aarch64-pc-windows-gnullvm +build-windows-64: + cargo zigbuild --target x86_64-pc-windows-gnu +build-macos: + cargo zigbuild --target universal2-apple-darwin