| #!/bin/bash | |
| # Copyright 2018 The Fuchsia Authors. All rights reserved. | |
| # Use of this source code is governed by a BSD-style license that can be | |
| # found in the LICENSE file. | |
| ### Run various checks to determine the health of a Fuchsia checkout. | |
| ## usage: fx doctor | |
| # The goal of this script is to detect common issues with a Fuchsia | |
| # checkout. For example, on OS X the xcode command line tool | |
| # installation often lapses. Ensuring that `xcode select --install` is | |
| # run as part of a checkout or build is problematic: the step involves | |
| # manual input. Detecting that it needs to be run, however, is | |
| # perfectly mechanizable. | |
| source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"/lib/vars.sh | |
| fx-config-read | |
| function dr-mac { | |
| # TODO actually check the need for this | |
| echo "A common issue with Fuchsia development on macOS is needing to" | |
| echo "re-run the \`xcode-select install\` step. The typical symptom is" | |
| echo "failure to find system C or C++ headers after a reboot or update." | |
| return | |
| } | |
| function dr-linux { | |
| return | |
| } | |
| function dr { | |
| return | |
| } | |
| function main { | |
| case $(uname) in | |
| Darwin) | |
| dr-mac | |
| ;; | |
| Linux) | |
| dr-linux | |
| ;; | |
| esac | |
| dr | |
| return | |
| } | |
| main "$@" |