#gamedev #cargo #cargo-build #tool

build copy_to_output

A small rust library to copy files/folders from the project directory to the output directory

5 stable releases

2.2.0 Dec 19, 2023
2.1.0 Mar 26, 2023
2.0.1 Mar 18, 2023
2.0.0 Jul 7, 2022
1.0.0 Jun 21, 2022

#261 in Filesystem

Download history 31/week @ 2024-01-12 50/week @ 2024-01-19 78/week @ 2024-01-26 55/week @ 2024-02-02 66/week @ 2024-02-09 109/week @ 2024-02-16 147/week @ 2024-02-23 103/week @ 2024-03-01 161/week @ 2024-03-08 146/week @ 2024-03-15 186/week @ 2024-03-22 177/week @ 2024-03-29 101/week @ 2024-04-05 96/week @ 2024-04-12 122/week @ 2024-04-19 90/week @ 2024-04-26

441 downloads per month
Used in ctp-sys

MIT/Apache

7KB

copy_to_output

A small rust library to copy files/folders from the project directory to the output directory

Copy file/folder

copy_to_output("path name", "build profile");

When building

You can use a build.rs file to copy a file/folder to the output directory when running cargo build

Example build.rs

 use std::env;  
 use copy_to_output::copy_to_output;  
   
 fn main() {  
     // Re-runs script if any files in res are changed  
     println!("cargo:rerun-if-changed=res/*");  
     copy_to_output("res", &env::var("PROFILE").unwrap()).expect("Could not copy");  
 }

where 'res' is the name of the directory to copy to the output directory

Example Cargo.toml

[package]
name = "test_crate"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[build-dependencies]
copy_to_output = "2.1.0"
glob = "0.3"

glob provides the * wildcard operator for the println!() line in build.rs

Both of these examples are in the example_files folder in this repo

Dependencies

~250KB