From 0ace02398589e4e79d22755d1e6776fedb3e38a8 Mon Sep 17 00:00:00 2001 From: Bartek Kryza Date: Sat, 7 Jan 2023 14:41:26 +0100 Subject: [PATCH] Fixed building on macos --- Makefile | 10 +++++++++- src/common/visitor/translation_unit_visitor.cc | 1 - src/common/visitor/translation_unit_visitor.h | 2 -- .../visitor/translation_unit_visitor.cc | 6 +++--- src/include_diagram/visitor/translation_unit_visitor.h | 2 -- src/util/util.cc | 5 +++-- 6 files changed, 15 insertions(+), 11 deletions(-) diff --git a/Makefile b/Makefile index 72c0ce4d..d9088428 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,15 @@ .DEFAULT_GOAL := debug -NUMPROC ?= $(shell nproc) +OS_UNAME := $(shell uname -s) + +ifeq ($(OS_UNAME),Linux) + NUMPROC ?= $(shell nproc) +else ifeq ($(OS_UNAME),Darwin) + NUMPROC ?= $(shell sysctl -n hw.logicalcpu) +else + NUMPROC ?= 1 +endif LLVM_VERSION ?= CMAKE_CXX_FLAGS ?= diff --git a/src/common/visitor/translation_unit_visitor.cc b/src/common/visitor/translation_unit_visitor.cc index bd3a6071..bfbb178b 100644 --- a/src/common/visitor/translation_unit_visitor.cc +++ b/src/common/visitor/translation_unit_visitor.cc @@ -26,7 +26,6 @@ namespace clanguml::common::visitor { translation_unit_visitor::translation_unit_visitor( clang::SourceManager &sm, const clanguml::config::diagram &config) : source_manager_{sm} - , config_{config} { if (config.comment_parser() == config::comment_parser_t::plain) { comment_visitor_ = diff --git a/src/common/visitor/translation_unit_visitor.h b/src/common/visitor/translation_unit_visitor.h index 12671d31..e4712597 100644 --- a/src/common/visitor/translation_unit_visitor.h +++ b/src/common/visitor/translation_unit_visitor.h @@ -103,8 +103,6 @@ protected: private: clang::SourceManager &source_manager_; - [[maybe_unused]] const clanguml::config::diagram &config_; - std::unique_ptr comment_visitor_; }; } // namespace clanguml::common::visitor diff --git a/src/include_diagram/visitor/translation_unit_visitor.cc b/src/include_diagram/visitor/translation_unit_visitor.cc index 739ae473..a2ebd18b 100644 --- a/src/include_diagram/visitor/translation_unit_visitor.cc +++ b/src/include_diagram/visitor/translation_unit_visitor.cc @@ -24,11 +24,11 @@ namespace clanguml::include_diagram::visitor { -translation_unit_visitor::translation_unit_visitor(clang::SourceManager &sm, +translation_unit_visitor::translation_unit_visitor( + clang::SourceManager & /*sm*/, clanguml::include_diagram::model::diagram &diagram, const clanguml::config::include_diagram &config) - : source_manager_{sm} - , diagram_{diagram} + : diagram_{diagram} , config_{config} { } diff --git a/src/include_diagram/visitor/translation_unit_visitor.h b/src/include_diagram/visitor/translation_unit_visitor.h index b496636e..54cc2081 100644 --- a/src/include_diagram/visitor/translation_unit_visitor.h +++ b/src/include_diagram/visitor/translation_unit_visitor.h @@ -104,8 +104,6 @@ public: void finalize() { } private: - [[maybe_unused]] clang::SourceManager &source_manager_; - // Reference to the output diagram model clanguml::include_diagram::model::diagram &diagram_; diff --git a/src/util/util.cc b/src/util/util.cc index 9579002d..45bb3ec7 100644 --- a/src/util/util.cc +++ b/src/util/util.cc @@ -52,13 +52,14 @@ std::string get_process_output(const std::string &command) std::array buffer{}; std::string result; -#if defined(__linux) || defined(__unix) +#if defined(__linux) || defined(__unix) || defined(__APPLE__) std::unique_ptr pipe( popen(command.c_str(), "r"), pclose); -#elif defined(WINDOWS) || defined(_WIN32) || defined(WIN32) +#elif defined(_WIN32) std::unique_ptr pipe( _popen(command.c_str(), "r"), _pclose); #endif + if (!pipe) { throw std::runtime_error("popen() failed!"); }