mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-10-31 13:04:42 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			61 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Rust
		
	
	
	
	
	
| //@ ignore-cross-compile
 | |
| 
 | |
| use run_make_support::{htmldocck, rust_lib_name, rustc, rustdoc};
 | |
| 
 | |
| fn main() {
 | |
|     let out_dir = "rustdoc";
 | |
|     let ex_dir = "ex.calls";
 | |
|     let proc_crate_name = "foobar_macro";
 | |
|     let crate_name = "foobar";
 | |
| 
 | |
|     let dylib_name = rustc()
 | |
|         .crate_name(proc_crate_name)
 | |
|         .crate_type("dylib")
 | |
|         .arg("--print")
 | |
|         .arg("file-names")
 | |
|         .arg("-")
 | |
|         .run()
 | |
|         .stdout_utf8();
 | |
| 
 | |
|     rustc()
 | |
|         .input("src/proc.rs")
 | |
|         .crate_name(proc_crate_name)
 | |
|         .edition("2021")
 | |
|         .crate_type("proc-macro")
 | |
|         .emit("dep-info,link")
 | |
|         .run();
 | |
|     rustc()
 | |
|         .input("src/lib.rs")
 | |
|         .crate_name(crate_name)
 | |
|         .edition("2021")
 | |
|         .crate_type("lib")
 | |
|         .emit("dep-info,link")
 | |
|         .run();
 | |
| 
 | |
|     rustdoc()
 | |
|         .input("examples/ex.rs")
 | |
|         .crate_name("ex")
 | |
|         .crate_type("bin")
 | |
|         .output(&out_dir)
 | |
|         .extern_(crate_name, rust_lib_name(crate_name))
 | |
|         .extern_(proc_crate_name, dylib_name.trim())
 | |
|         .arg("-Zunstable-options")
 | |
|         .arg("--scrape-examples-output-path")
 | |
|         .arg(&ex_dir)
 | |
|         .arg("--scrape-examples-target-crate")
 | |
|         .arg(crate_name)
 | |
|         .run();
 | |
| 
 | |
|     rustdoc()
 | |
|         .input("src/lib.rs")
 | |
|         .crate_name(crate_name)
 | |
|         .crate_type("lib")
 | |
|         .output(&out_dir)
 | |
|         .arg("-Zunstable-options")
 | |
|         .arg("--with-examples")
 | |
|         .arg(&ex_dir)
 | |
|         .run();
 | |
| 
 | |
|     htmldocck().arg(out_dir).arg("src/lib.rs").run();
 | |
| }
 | 
