aboutsummaryrefslogtreecommitdiff
path: root/generate-readme.sh
blob: be0dc929af2c9db515d12fdf731e162093e9462d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!/bin/bash
#
# Copyright 2022 The Fuchsia Authors
#
# Licensed under a BSD-style license <LICENSE-BSD>, Apache License, Version 2.0
# <LICENSE-APACHE or https://www.apache.org/licenses/LICENSE-2.0>, or the MIT
# license <LICENSE-MIT or https://opensource.org/licenses/MIT>, at your option.
# This file may not be copied, modified, or distributed except according to
# those terms.

set -eo pipefail

COPYRIGHT_HEADER=$(mktemp)
BODY=$(mktemp)
DISCLAIMER_FOOTER=$(mktemp)

cat > $COPYRIGHT_HEADER <<'EOF'
<!-- Copyright 2022 The Fuchsia Authors

Licensed under a BSD-style license <LICENSE-BSD>, Apache License, Version 2.0
<LICENSE-APACHE or https://www.apache.org/licenses/LICENSE-2.0>, or the MIT
license <LICENSE-MIT or https://opensource.org/licenses/MIT>, at your option.
This file may not be copied, modified, or distributed except according to
those terms.

WARNING: DO NOT EDIT THIS FILE. It is generated automatically. Edits should be
made in the doc comment on `src/lib.rs` or in `generate-readme.sh`.
-->

EOF

# This uses the `cargo readme` tool, which you can install via `cargo install
# cargo-readme --version 3.2.0`.
#
# The `sed` command is used to strip code links like:
#
#   /// Here is a link to [`Vec`].
#
# These links don't work in a Markdown file, and so we remove the `[` and `]`
# characters to convert them to non-link code snippets.
cargo readme --no-license | sed 's/\[\(`[^`]*`\)]/\1/g' > $BODY

cat > $DISCLAIMER_FOOTER <<'EOF'

## Disclaimer

Disclaimer: Zerocopy is not an officially supported Google product.
EOF

cat $COPYRIGHT_HEADER $BODY $DISCLAIMER_FOOTER