#include <core/common.hpp>
#include <core/exceptions.hpp>
#include <core/types.hpp>
-#include <fmtmacros.hpp>
#include <util/DirEntry.hpp>
#include <util/Tokenizer.hpp>
#include <util/UmaskScope.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/path.hpp>
#include <util/string.hpp>
#include <util/wincompat.hpp>
#include "Hash.hpp"
#include "Logging.hpp"
-#include "fmtmacros.hpp"
#include <util/Fd.hpp>
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include <util/string.hpp>
#include <util/wincompat.hpp>
#include "Hash.hpp"
#include "Logging.hpp"
#include "Util.hpp"
-#include "fmtmacros.hpp"
#include <util/DirEntry.hpp>
#include <util/Fd.hpp>
#include <util/TemporaryFile.hpp>
#include <util/conversion.hpp>
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include <fcntl.h>
#include <libgen.h>
#include "Util.hpp"
#include "Win32Util.hpp"
#include "execute.hpp"
-#include "fmtmacros.hpp"
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include <util/time.hpp>
#include <util/wincompat.hpp>
#include "MiniTrace.hpp"
#include "ArgsInfo.hpp"
-#include "fmtmacros.hpp"
#include <core/exceptions.hpp>
#include <util/TemporaryFile.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/wincompat.hpp>
#ifdef HAVE_UNISTD_H
#include "ProgressBar.hpp"
-#include "fmtmacros.hpp"
-
#include <util/assertions.hpp>
+#include <util/fmtmacros.hpp>
#include <util/wincompat.hpp>
#include "third_party/fmt/core.h"
#include <Config.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/DirEntry.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/path.hpp>
#include <util/string.hpp>
#include <util/wincompat.hpp>
#include "Context.hpp"
#include "Logging.hpp"
#include "compopt.hpp"
-#include "fmtmacros.hpp"
#include "language.hpp"
#include <Depfile.hpp>
#include <Util.hpp>
#include <util/assertions.hpp>
+#include <util/fmtmacros.hpp>
#include <util/path.hpp>
#include <util/string.hpp>
#include <util/wincompat.hpp>
#include "argprocessing.hpp"
#include "compopt.hpp"
#include "execute.hpp"
-#include "fmtmacros.hpp"
#include "hashutil.hpp"
#include "language.hpp"
#include <util/expected.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/path.hpp>
#include <util/process.hpp>
#include <util/string.hpp>
#include "compopt.hpp"
-#include "fmtmacros.hpp"
+#include <util/fmtmacros.hpp>
#include "third_party/fmt/core.h"
#include <core/AtomicFile.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/TemporaryFile.hpp>
#include <util/assertions.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
namespace fs = util::filesystem;
#include <core/Result.hpp>
#include <core/exceptions.hpp>
#include <core/types.hpp>
-#include <fmtmacros.hpp>
#include <util/TimePoint.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include <util/zstd.hpp>
#include <cstring>
#pragma once
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/conversion.hpp>
+#include <util/fmtmacros.hpp>
#include <util/string.hpp>
#include <third_party/nonstd/span.hpp>
#pragma once
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/conversion.hpp>
+#include <util/fmtmacros.hpp>
#include <util/string.hpp>
#include <third_party/nonstd/span.hpp>
#include <core/CacheEntryDataReader.hpp>
#include <core/CacheEntryDataWriter.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <hashutil.hpp>
#include <util/XXH3_64.hpp>
+#include <util/fmtmacros.hpp>
#include <util/string.hpp>
// Manifest data format
#include <core/CacheEntryDataWriter.hpp>
#include <core/Statistic.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/Bytes.hpp>
#include <util/DirEntry.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include <util/path.hpp>
#include <util/string.hpp>
#include <util/wincompat.hpp>
#include "ResultExtractor.hpp"
#include "Util.hpp"
-#include "fmtmacros.hpp"
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/Bytes.hpp>
#include <util/DirEntry.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include <util/wincompat.hpp>
#include <fcntl.h>
#include "Context.hpp"
#include "Logging.hpp"
-#include "fmtmacros.hpp"
+
+#include <util/fmtmacros.hpp>
namespace core {
#include <core/MsvcShowIncludesOutput.hpp>
#include <core/common.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/DirEntry.hpp>
#include <util/Fd.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include <util/path.hpp>
#include <util/string.hpp>
#include <util/wincompat.hpp>
#include <Config.hpp>
#include <Logging.hpp>
#include <Util.hpp>
-#include <fmtmacros.hpp>
#include <util/TextTable.hpp>
+#include <util/fmtmacros.hpp>
#include <util/string.hpp>
#include <util/time.hpp>
#include <File.hpp>
#include <Logging.hpp>
#include <core/Statistics.hpp>
-#include <fmtmacros.hpp>
+#include <util/fmtmacros.hpp>
#include <fstream>
#include <Context.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/Finalizer.hpp>
#include <util/Tokenizer.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/path.hpp>
using IncludeDelimiter = util::Tokenizer::IncludeDelimiter;
#include <core/Statistics.hpp>
#include <core/StatsLog.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <storage/Storage.hpp>
#include <storage/local/LocalStorage.hpp>
#include <util/Fd.hpp>
#include <util/environment.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include <util/string.hpp>
#include <fcntl.h>
#include <Config.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/assertions.hpp>
+#include <util/fmtmacros.hpp>
namespace core {
#include <ccache.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/DirEntry.hpp>
#include <util/Fd.hpp>
#include <util/Finalizer.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/path.hpp>
#include <util/string.hpp>
#include <util/wincompat.hpp>
#include "macroskip.hpp"
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/DirEntry.hpp>
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include <util/string.hpp>
#include <util/time.hpp>
#include <util/wincompat.hpp>
#include <core/CacheEntry.hpp>
#include <core/Statistic.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <storage/remote/FileStorage.hpp>
#include <storage/remote/HttpStorage.hpp>
#include <util/assertions.hpp>
+#include <util/fmtmacros.hpp>
#ifdef HAVE_REDIS_STORAGE_BACKEND
# include <storage/remote/RedisStorage.hpp>
#endif
#include <core/Statistics.hpp>
#include <core/common.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/Duration.hpp>
#include <util/TemporaryFile.hpp>
#include <util/TextTable.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/process.hpp>
#include <util/string.hpp>
#include <util/wincompat.hpp>
#include <Logging.hpp>
#include <core/AtomicFile.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/LockFile.hpp>
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
namespace storage::local {
#include <Util.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include <util/string.hpp>
using util::DirEntry;
#include <Util.hpp>
#include <core/AtomicFile.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/Bytes.hpp>
#include <util/DirEntry.hpp>
#include <util/UmaskScope.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/string.hpp>
#include <sys/stat.h> // for mode_t
#include <Logging.hpp>
#include <ccache.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/assertions.hpp>
#include <util/expected.hpp>
+#include <util/fmtmacros.hpp>
#include <util/string.hpp>
#include <util/types.hpp>
#include <Hash.hpp>
#include <Logging.hpp>
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/assertions.hpp>
#include <util/expected.hpp>
+#include <util/fmtmacros.hpp>
#include <util/string.hpp>
#include <util/wincompat.hpp> // for timeval
#include <Config.hpp>
#include <Logging.hpp>
-#include <fmtmacros.hpp>
#include <util/LockFile.hpp>
#include <util/LongLivedLockFileManager.hpp>
+#include <util/fmtmacros.hpp>
#include <util/string.hpp>
#include <memory>
#include <Logging.hpp>
#include <Win32Util.hpp>
-#include <fmtmacros.hpp>
#include <util/Finalizer.hpp>
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include <util/wincompat.hpp>
#ifdef _WIN32
#include "Logging.hpp"
#include "Util.hpp"
#include "Win32Util.hpp"
-#include "fmtmacros.hpp"
#include <util/DirEntry.hpp>
#include <util/assertions.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/process.hpp>
#include <util/wincompat.hpp>
#include "TemporaryFile.hpp"
-#include <fmtmacros.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/process.hpp>
#include <cstdlib>
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
#include "Util.hpp"
-#include "fmtmacros.hpp"
#include <util/assertions.hpp>
+#include <util/fmtmacros.hpp>
#include "third_party/fmt/core.h"
#include "environment.hpp"
-#include <fmtmacros.hpp>
+#include <util/fmtmacros.hpp>
#include <util/wincompat.hpp>
namespace util {
#pragma once
-#include <fmtmacros.hpp>
+#include <util/fmtmacros.hpp>
#include <string_view>
#include <utility>
#include <Logging.hpp>
#include <Win32Util.hpp>
-#include <fmtmacros.hpp>
#include <util/Bytes.hpp>
#include <util/DirEntry.hpp>
#include <util/Fd.hpp>
#include <util/expected.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#ifdef HAVE_UNISTD_H
# include <unistd.h>
#include "path.hpp"
#include <Util.hpp>
-#include <fmtmacros.hpp>
#include <util/DirEntry.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/string.hpp>
#ifdef _WIN32
#include "string.hpp"
-#include <fmtmacros.hpp>
#include <util/assertions.hpp>
+#include <util/fmtmacros.hpp>
#include <algorithm>
#include <cctype>
#include "../src/Util.hpp"
#include <core/exceptions.hpp>
-#include <fmtmacros.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/path.hpp>
#include <util/wincompat.hpp>
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/fmtmacros.hpp"
-
#include <util/environment.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/path.hpp>
#include "third_party/fmt/core.h"
#include "../src/Config.hpp"
#include "../src/Util.hpp"
-#include "../src/fmtmacros.hpp"
#include "TestUtil.hpp"
#include <core/exceptions.hpp>
#include <util/environment.hpp>
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include "third_party/doctest.h"
#include "third_party/fmt/core.h"
#include "../src/Context.hpp"
#include "../src/Depfile.hpp"
-#include "../src/fmtmacros.hpp"
#include "TestUtil.hpp"
#include <Util.hpp>
+#include <util/fmtmacros.hpp>
#include "third_party/doctest.h"
#include "../src/Config.hpp"
#include "../src/Util.hpp"
-#include "../src/fmtmacros.hpp"
#include "TestUtil.hpp"
#include <core/exceptions.hpp>
#include <util/environment.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/path.hpp>
#include <util/wincompat.hpp>
#include "../src/Args.hpp"
#include "../src/Config.hpp"
#include "../src/Context.hpp"
-#include "../src/fmtmacros.hpp"
#include "TestUtil.hpp"
#include "argprocessing.hpp"
#include <Util.hpp>
#include <core/Statistic.hpp>
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include <util/path.hpp>
#include <util/string.hpp>
#include <util/wincompat.hpp>
#include "../src/Context.hpp"
#include "../src/ccache.hpp"
-#include "../src/fmtmacros.hpp"
#include "TestUtil.hpp"
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include <util/path.hpp>
#include <util/wincompat.hpp>
#include <Util.hpp>
#include <core/Statistic.hpp>
-#include <fmtmacros.hpp>
#include <storage/local/StatsFile.hpp>
#include <util/file.hpp>
+#include <util/fmtmacros.hpp>
#include <third_party/doctest.h>
#include "TestUtil.hpp"
-#include <fmtmacros.hpp>
#include <storage/local/util.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <third_party/doctest.h>
#include "TestUtil.hpp"
-#include <fmtmacros.hpp>
#include <util/Bytes.hpp>
#include <util/DirEntry.hpp>
#include <util/Fd.hpp>
#include <util/file.hpp>
#include <util/filesystem.hpp>
+#include <util/fmtmacros.hpp>
#include <util/string.hpp>
#include <third_party/doctest.h>
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
#include <Util.hpp>
-#include <fmtmacros.hpp>
+#include <util/fmtmacros.hpp>
#include <util/path.hpp>
#include <third_party/doctest.h>