Change io crate & add a small shell
This commit is contained in:
49
crates/io/justfile
Normal file
49
crates/io/justfile
Normal file
@@ -0,0 +1,49 @@
|
||||
RUST_SRC := `rustc --print sysroot` / "lib/rustlib/src/rust/library/std/src"
|
||||
|
||||
copy-io:
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
|
||||
FILES=(
|
||||
"io/error/repr_unpacked.rs"
|
||||
"io/error/repr_bitpacked.rs"
|
||||
"io/error.rs"
|
||||
"io/buffered/mod.rs"
|
||||
"io/buffered/linewriter.rs"
|
||||
"io/buffered/linewritershim.rs"
|
||||
"io/buffered/bufwriter.rs"
|
||||
"io/buffered/bufreader.rs"
|
||||
"io/buffered/bufreader/buffer.rs"
|
||||
"io/copy.rs"
|
||||
"io/cursor.rs"
|
||||
"io/impls.rs"
|
||||
"io/prelude.rs"
|
||||
"io/util.rs"
|
||||
"io/mod.rs"
|
||||
)
|
||||
|
||||
for f in "${FILES[@]}"; do
|
||||
echo "Processing $f..."
|
||||
DEST="src/$f"
|
||||
|
||||
mkdir -p "$(dirname "$DEST")"
|
||||
|
||||
cp "{{ RUST_SRC }}/$f" "$DEST"
|
||||
sed -i -E -n '$!N; /^#\[cfg\(test\)\]\nmod tests/d; P; D' "$DEST"
|
||||
|
||||
if [[ "$f" == "io/error.rs" ]]; then
|
||||
sed -i "s/alloc::/alloc_crate::/g" "$DEST"
|
||||
fi
|
||||
|
||||
if [[ "$f" == "io/mod.rs" ]]; then
|
||||
sed -i "/mod pipe/d" "$DEST"
|
||||
sed -i "/self::pipe/d" "$DEST"
|
||||
sed -i "/mod stdio/d" "$DEST"
|
||||
sed -i "/stdio::/d" "$DEST"
|
||||
sed -i "/self::stdio/d" "$DEST"
|
||||
sed -i "/feature = \"is_terminal\"/d" "$DEST"
|
||||
sed -i "/feature = \"print_internals\"/d" "$DEST"
|
||||
sed -i "/feature = \"internal_output_capture\"/d" "$DEST"
|
||||
sed -i "/feature = \"anonymous_pipe\"/d" "$DEST"
|
||||
fi
|
||||
done
|
||||
Reference in New Issue
Block a user