Fixed glob absolute paths handling on Windows

This commit is contained in:
Bartek Kryza
2024-01-28 15:55:59 +01:00
parent 3dba31a792
commit 7d28be525f
3 changed files with 7 additions and 3 deletions

View File

@@ -1,4 +1,4 @@
param ($Prefix="C:\clang-uml", $BuildType="Release") param ($Prefix="C:\clang-uml-llvm17", $BuildType="Release")
cmake -S . -B $BuildType -DCMAKE_PREFIX_PATH="$Prefix" -DENABLE_CXX_MODULES_TEST_CASES=OFF -Thost=x64 cmake -S . -B $BuildType -DCMAKE_PREFIX_PATH="$Prefix" -DENABLE_CXX_MODULES_TEST_CASES=OFF -Thost=x64
cmake --build $BuildType --config $BuildType cmake --build $BuildType --config $BuildType

View File

@@ -1,6 +1,6 @@
# This script assumes that all clang-uml dependencies are instaled in C:\clang-uml # This script assumes that all clang-uml dependencies are instaled in C:\clang-uml
param ($Prefix="C:\clang-uml", $BuildType="Release") param ($Prefix="C:\clang-uml-llvm17", $BuildType="Release")
mkdir _BUILD mkdir _BUILD

View File

@@ -255,12 +255,16 @@ std::vector<std::string> diagram::get_translation_units() const
for (const auto &g : glob()) { for (const auto &g : glob()) {
std::filesystem::path absolute_glob_path{g}; std::filesystem::path absolute_glob_path{g};
#ifdef _MSC_VER
if (!absolute_glob_path.has_root_name())
#else
if (!absolute_glob_path.is_absolute()) if (!absolute_glob_path.is_absolute())
#endif
absolute_glob_path = root_directory() / absolute_glob_path; absolute_glob_path = root_directory() / absolute_glob_path;
LOG_DBG("Searching glob path {}", absolute_glob_path.string()); LOG_DBG("Searching glob path {}", absolute_glob_path.string());
auto matches = glob::glob(absolute_glob_path, true, false); auto matches = glob::glob(absolute_glob_path.string(), true, false);
for (const auto &match : matches) { for (const auto &match : matches) {
const auto path = const auto path =