diff options
-rw-r--r-- | tools/minicargo/build.cpp | 6 | ||||
-rw-r--r-- | tools/minicargo/build.h | 2 | ||||
-rw-r--r-- | tools/minicargo/main.cpp | 10 |
3 files changed, 13 insertions, 5 deletions
diff --git a/tools/minicargo/build.cpp b/tools/minicargo/build.cpp index 144262c2..665f567e 100644 --- a/tools/minicargo/build.cpp +++ b/tools/minicargo/build.cpp @@ -202,7 +202,7 @@ struct Timestamp } }; -void MiniCargo_Build(const PackageManifest& manifest, ::helpers::path override_path) +bool MiniCargo_Build(const PackageManifest& manifest, ::helpers::path override_path) { BuildList list; @@ -221,12 +221,12 @@ void MiniCargo_Build(const PackageManifest& manifest, ::helpers::path override_p { if( ! builder.build_library(p) ) { - return; + return false; } } // TODO: If the manifest doesn't have a library, build the binary - builder.build_library(manifest); + return builder.build_library(manifest); } void BuildList::add_dependencies(const PackageManifest& p, unsigned level, bool include_build) diff --git a/tools/minicargo/build.h b/tools/minicargo/build.h index 0e61b72f..45ce1679 100644 --- a/tools/minicargo/build.h +++ b/tools/minicargo/build.h @@ -28,4 +28,4 @@ private: Timestamp get_timestamp(const ::helpers::path& path) const; }; -extern void MiniCargo_Build(const PackageManifest& manifest, ::helpers::path override_path); +extern bool MiniCargo_Build(const PackageManifest& manifest, ::helpers::path override_path); diff --git a/tools/minicargo/main.cpp b/tools/minicargo/main.cpp index a00e3192..04fe4fcf 100644 --- a/tools/minicargo/main.cpp +++ b/tools/minicargo/main.cpp @@ -56,7 +56,15 @@ int main(int argc, const char* argv[]) m.load_dependencies(repo, !bs_override_dir.is_valid()); // 3. Build dependency tree and build program. - MiniCargo_Build(m, bs_override_dir ); + if( !MiniCargo_Build(m, bs_override_dir ) ) + { + ::std::cerr << "BUILD FAILED" << ::std::endl; +#if _WIN32 + ::std::cout << "Press enter to exit..." << ::std::endl; + ::std::cin.get(); +#endif + return 1; + } } catch(const ::std::exception& e) { |