Fixed building with clang
This commit is contained in:
@@ -15,16 +15,18 @@ set(CLANG_UML_INSTALL_BIN_DIR ${PROJECT_SOURCE_DIR}/bin)
|
||||
|
||||
set(UML_HEADERS_DIR ${PROJECT_SOURCE_DIR}/src/uml)
|
||||
|
||||
set(LLVM_PREFERRED_VERSION 12.0.0)
|
||||
|
||||
message(STATUS "Checking for spdlog...")
|
||||
find_package(spdlog REQUIRED)
|
||||
get_target_property(SPDLOG_INCLUDE_DIRS spdlog::spdlog INTERFACE_INCLUDE_DIRECTORIES)
|
||||
get_target_property(SPDLOG_INCLUDE_DIRS spdlog::spdlog_header_only INTERFACE_INCLUDE_DIRECTORIES)
|
||||
add_definitions(-DSPDLOG_FMT_EXTERNAL)
|
||||
|
||||
message(STATUS "Checking for yaml-cpp...")
|
||||
find_package(yaml-cpp REQUIRED)
|
||||
|
||||
message(STATUS "Checking for libclang...")
|
||||
set(LLVM_PREFERRED_VERSION 12.0.0)
|
||||
set(LIBCLANG_LLVM_CONFIG_EXECUTABLE "/usr/local/opt/llvm@12/bin/llvm-config")
|
||||
find_package(LibClang REQUIRED)
|
||||
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17 ${LIBCLANG_CXXFLAGS}")
|
||||
@@ -63,7 +65,7 @@ add_library(clang-umllib OBJECT ${SOURCES})
|
||||
|
||||
add_executable(clang-uml ${MAIN_SOURCE_FILE})
|
||||
install(TARGETS clang-uml DESTINATION ${CLANG_UML_INSTALL_BIN_DIR})
|
||||
target_link_libraries(clang-uml ${LIBCLANG_LIBRARIES} ${YAML_CPP_LIBRARIES} spdlog::spdlog cppast clang-umllib)
|
||||
target_link_libraries(clang-uml ${LIBCLANG_LIBRARIES} ${YAML_CPP_LIBRARIES} spdlog::spdlog_header_only cppast clang-umllib)
|
||||
target_compile_features(clang-uml PRIVATE cxx_std_17)
|
||||
|
||||
install(
|
||||
|
||||
2
Makefile
2
Makefile
@@ -38,7 +38,7 @@ release/CMakeLists.txt:
|
||||
|
||||
debug: debug/CMakeLists.txt
|
||||
echo "Using ${NUMPROC} cores"
|
||||
make -C debug -j$(NUMPROC)
|
||||
make -C debug -j$(NUMPROC) VERBOSE=1
|
||||
|
||||
release: release/CMakeLists.txt
|
||||
make -C release -j
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#include <utility>
|
||||
|
||||
namespace clanguml {
|
||||
namespace t00017 {
|
||||
class A {
|
||||
@@ -34,6 +36,15 @@ class K {
|
||||
};
|
||||
|
||||
class R {
|
||||
explicit R(int &some_int, C &cc, const E &ee, F &&ff, I *&ii)
|
||||
: some_int_reference{some_int}
|
||||
, c{cc}
|
||||
, e{ee}
|
||||
, f{std::move(ff)}
|
||||
, i{ii}
|
||||
{
|
||||
}
|
||||
|
||||
private:
|
||||
int some_int;
|
||||
int *some_int_pointer;
|
||||
@@ -43,7 +54,7 @@ private:
|
||||
B *b;
|
||||
C &c;
|
||||
const D *d;
|
||||
const E &e{};
|
||||
const E &e;
|
||||
F &&f;
|
||||
G **g;
|
||||
H ***h;
|
||||
|
||||
Reference in New Issue
Block a user