crosvm/tools/cargo-doc
Junichi Uekawa 7af06dfc70 Revert "github: Minimize dependencies for document generation"
This reverts commit 2b85d4d1e5.

Reason for revert: breaks powerd compile

Original change's description:
> github: Minimize dependencies for document generation
>
> Instead of install full dependencies with `install-deps` in GitHub
> action, minimize dependencies because we use GitHub only for document
> generation.
>
> - Passed `CARGO_DOC` environment when running cargo-doc command so we
>   can skip unnecessary build flow when we just want to generate API docs.
> - Added a new script `install-docs-deps` to install only doc-related
>   dependencies.
>
> BUG=none
> TEST=test on GitHub Action at my personal repository
>
> Change-Id: Ibe988ab43215e285d946812bdd6c1536ae87b50e
> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3578144
> Tested-by: kokoro <noreply+kokoro@google.com>
> Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
> Reviewed-by: Anton Romanov <romanton@google.com>
> Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>

Bug: none
Change-Id: Ie16b65235490071ac4e69bf3f09af3ba0c766eab
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3581836
Auto-Submit: Junichi Uekawa <uekawa@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Junichi Uekawa <uekawa@chromium.org>
2022-04-12 13:15:16 +00:00

43 lines
886 B
Bash
Executable file

#!/usr/bin/env bash
# Copyright 2021 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
set -ex
# Build cargo-doc
# $ ./tools/cargo-doc --target-dir /path/to/dir
echo "start cargo-doc"
MANIFEST_PATH=$(dirname "$0")/../Cargo.toml
echo "manifest = ${MANIFEST_PATH}"
DISABLED_FEATURES=(
audio_cras
chromeos
libvda
power-monitor-powerd
video-decoder
video-encoder
)
ALL_FEATURES=$(
cargo metadata --manifest-path "${MANIFEST_PATH}" | \
jq -r '.packages[] |
select(.name == "crosvm") |
.features |
keys[]')
features=""
for f in $ALL_FEATURES; do
if [[ ! "${DISABLED_FEATURES[*]}" =~ $f ]]; then
features+=",${f}"
fi
done
cargo doc \
--manifest-path="${MANIFEST_PATH}" \
--features="${features}" "$@"