Merge pull request #215 from haberman/coverage-fixes
Coverage fixes
diff --git a/README.md b/README.md
index f655fde..096d7a8 100644
--- a/README.md
+++ b/README.md
@@ -34,13 +34,27 @@
## Building Bloaty
-Building Bloaty requires CMake and ``protoc``, the protobuf compiler. On Ubuntu, install them with:
+Building Bloaty requires CMake. On Ubuntu, install this with:
```
-$ sudo apt install cmake protobuf-compiler
+$ sudo apt install cmake
```
-Bloaty bundles ``libprotobuf``, ``re2``, ``capstone``, and ``pkg-config`` as Git submodules, but it will prefer the system's versions of those dependencies if available. All other dependencies are included as Git submodules. To build, run:
+and on macOS, this can be installed using homebrew with:
+```
+$ brew install cmake
+```
+
+
+Bloaty bundles ``libprotobuf``, ``re2``, ``capstone``, and ``pkg-config`` as Git submodules, and uses ``protoc`` build from libprotobuf, but it will prefer the system's versions of those dependencies if available. All other dependencies are included as Git submodules.
+
+If the Git repository hasn't been cloned with the `--recursive`, the submodules can be checked out with:
+
+```
+$ git submodule update --init --recursive
+```
+
+To build, run:
```
$ cmake .
diff --git a/src/bloaty.cc b/src/bloaty.cc
index 068de28..791f8a2 100644
--- a/src/bloaty.cc
+++ b/src/bloaty.cc
@@ -1454,7 +1454,7 @@
auto iter = all_known_sources_.find(source.base_data_source());
if (iter == all_known_sources_.end()) {
- THROWF("custom data source '$0': no such base source '$1'", source.name(),
+ THROWF("custom data source '$0': no such base source '$1'.\nTry --list-sources to see valid sources.", source.name(),
source.base_data_source());
} else if (!iter->second->munger->IsEmpty()) {
THROWF("custom data source '$0' tries to depend on custom data source '$1'",
@@ -1473,7 +1473,7 @@
source_names_.emplace_back(name);
auto it = all_known_sources_.find(name);
if (it == all_known_sources_.end()) {
- THROWF("no such data source: $0", name);
+ THROWF("no such data source: $0.\nTry --list-sources to see valid sources.", name);
}
sources_.emplace_back(it->second.get());