#platform #target #toolchain #port #different #quickly #applications

bin+lib remy

quickly port Rust applications to different platforms

4 releases

Uses old Rust 2015

0.0.4 Feb 14, 2019
0.0.3 Dec 26, 2018
0.0.2 Dec 24, 2018
0.0.1 Nov 6, 2018

#1392 in Development tools

BSD-2-Clause

2MB
357 lines

remy: sous-chef de métro

pizza rat

EXAMPLE

$ cd example

$ remy hello

$ tree target/bin
target/bin
├── arm-unknown-linux-gnueabi
   └── hello
├── i686-unknown-linux-gnu
   └── hello
├── wasm32-unknown-unknown
   └── hello.wasm
├── x86_64-unknown-cloudabi
   └── hello
└── x86_64-unknown-linux-gnu
    └── hello

Target types can be skipped with -e <pattern>, e.g. -e cloudabi.

See remy -h for more details.

ABOUT

remy quickly generates Rust ports for multiple target environments, by running your Rust project through an array of Docker containers for different target toolchains.

DOWNLOADS

https://github.com/mcandre/remy/releases

CRATE

https://crates.io/crates/remy

API DOCUMENTATION

https://docs.rs/releases/search?query=remy

RUNTIME REQUIREMENTS

INSTALL

$ cargo install remy

USAGE

  1. Define any custom linkers in .cargo/config. See the included example project for more information.
  2. Run remy with your project's binary names as arguments.
  3. remy products ports in the structure target/bin/<environment>/<binary>.

CONTRIBUTING

For more details on developing remy itself, see DEVELOPMENT.md.

SEE ALSO

  • cartel provides Docker images for C/C++ cross-compilation toolchains
  • goxcart generates Go application ports based on the standard Go toolchain
  • tonixxx provides a more heavyweight solution using virtual machines
  • trust integrates CI systems with Rust ports.

Dependencies

~2.3–4MB
~62K SLoC