ContinuationIndentWidth: 2
IncludeBlocks: Regroup
IncludeCategories:
- - Regex: '^"system.hpp"$'
- Priority: 1
- - Regex: '^["<]third_party/'
- Priority: 4
- # System headers:
- - Regex: '\.h>$'
- Priority: 5
- # C++ headers:
- - Regex: '^<[^.]+>$'
- Priority: 6
+ # Relative headers
- Regex: '^"'
+ Priority: 1
+ # Ccache headers:
+ - Regex: '^<ccache/'
Priority: 2
- - Regex: '.*'
+ # System headers:
+ - Regex: '\.h.*>$'
Priority: 3
+ # C++ headers:
+ - Regex: '^<'
+ Priority: 4
IndentPPDirectives: AfterHash
KeepEmptyLinesAtTheStartOfBlocks: false
PointerAlignment: Left
### Subdirectories of `src`
+* `ccache`: Ccache source code.
+* `third_party`: Bundled third party code.
+
+### Subdirectories of `src/ccache`
+
This section describes the directory structure that the project aims to
-transform the `src` directory into in the long run to make the code base easier
-to understand and work with. In other words, this is work in progress.
+transform the `src/ccache` directory into in the long run to make the code base
+easier to understand and work with. In other words, this is work in progress.
* `compiler`: Knowledge about things like compiler options, compiler behavior,
preprocessor output format, etc. Ideally this code should in the future be
* `storage`: Storage backends.
* `storage/local`: Code for the local storage backend.
* `storage/remote`: Code for remote storage backends.
-* `third_party`: Bundled third party code.
* `util`: Generic utility functionality that does not depend on ccache-specific
things.
#
# Source code
#
-add_subdirectory(src)
+add_subdirectory(src/ccache)
+add_subdirectory(src/third_party)
#
# ccache executable
#
-add_executable(ccache src/main.cpp)
+add_executable(ccache src/ccache/main.cpp)
target_link_libraries(ccache PRIVATE standard_settings standard_warnings ccache_framework)
#
configure_file(
${CMAKE_SOURCE_DIR}/cmake/version.cpp.in
- ${CMAKE_BINARY_DIR}/src/version.cpp
+ ${CMAKE_BINARY_DIR}/src/ccache/version.cpp
@ONLY)
#include "Args.hpp"
-#include <core/exceptions.hpp>
-#include <util/file.hpp>
-#include <util/logging.hpp>
-#include <util/string.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/string.hpp>
Args::Args(Args&& other) noexcept : m_args(std::move(other.m_args))
{
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include "Args.hpp"
+#include <ccache/Args.hpp>
#include <optional>
#include <string>
PRIVATE standard_settings standard_warnings ZSTD::ZSTD Threads::Threads third_party
)
-target_include_directories(ccache_framework PUBLIC ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR})
+get_filename_component(SRC_DIR ${CMAKE_CURRENT_SOURCE_DIR} DIRECTORY)
+target_include_directories(ccache_framework PUBLIC ${CMAKE_BINARY_DIR} ${SRC_DIR})
if(REDIS_STORAGE_BACKEND)
target_compile_definitions(ccache_framework PUBLIC -DHAVE_REDIS_STORAGE_BACKEND)
add_subdirectory(core)
add_subdirectory(storage)
-add_subdirectory(third_party)
add_subdirectory(util)
#include "Config.hpp"
-#include "Util.hpp"
-
-#include <core/AtomicFile.hpp>
-#include <core/common.hpp>
-#include <core/exceptions.hpp>
-#include <core/types.hpp>
-#include <util/DirEntry.hpp>
-#include <util/Tokenizer.hpp>
-#include <util/UmaskScope.hpp>
-#include <util/assertions.hpp>
-#include <util/environment.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/string.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/core/AtomicFile.hpp>
+#include <ccache/core/common.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/core/types.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/Tokenizer.hpp>
+#include <ccache/util/UmaskScope.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/environment.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/wincompat.hpp>
#ifdef HAVE_PWD_H
# include <pwd.h>
#pragma once
-#include <core/Sloppiness.hpp>
-#include <util/NonCopyable.hpp>
-#include <util/string.hpp>
+#include <ccache/core/Sloppiness.hpp>
+#include <ccache/util/NonCopyable.hpp>
+#include <ccache/util/string.hpp>
#include <sys/types.h>
#include "Context.hpp"
-#include "SignalHandler.hpp"
-#include "Util.hpp"
-#include "hashutil.hpp"
-
-#include <util/TimePoint.hpp>
-#include <util/file.hpp>
-#include <util/logging.hpp>
-#include <util/path.hpp>
-#include <util/process.hpp>
-#include <util/string.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/SignalHandler.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/hashutil.hpp>
+#include <ccache/util/TimePoint.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/path.hpp>
+#include <ccache/util/process.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/wincompat.hpp>
#ifdef HAVE_UNISTD_H
# include <unistd.h>
#pragma once
-#include "Args.hpp"
-#include "ArgsInfo.hpp"
-#include "Config.hpp"
-
-#include <util/FileStream.hpp>
-#include <util/NonCopyable.hpp>
+#include <ccache/Args.hpp>
+#include <ccache/ArgsInfo.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/core/Manifest.hpp>
+#include <ccache/storage/Storage.hpp>
+#include <ccache/util/Bytes.hpp>
+#include <ccache/util/FileStream.hpp>
+#include <ccache/util/NonCopyable.hpp>
+#include <ccache/util/TimePoint.hpp>
#ifdef INODE_CACHE_SUPPORTED
-# include "InodeCache.hpp"
+# include <ccache/InodeCache.hpp>
#endif
-#include <Hash.hpp>
-#include <core/Manifest.hpp>
-#include <storage/Storage.hpp>
-#include <util/Bytes.hpp>
-#include <util/TimePoint.hpp>
-
#include <sys/types.h>
#include <ctime>
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "Depfile.hpp"
-#include "Context.hpp"
-#include "Hash.hpp"
-
-#include <Util.hpp>
-#include <core/exceptions.hpp>
-#include <util/Tokenizer.hpp>
-#include <util/assertions.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/logging.hpp>
-#include <util/path.hpp>
-#include <util/string.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/Tokenizer.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/path.hpp>
+#include <ccache/util/string.hpp>
#include <algorithm>
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "Hash.hpp"
-#include <util/Fd.hpp>
-#include <util/file.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/string.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/util/Fd.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/wincompat.hpp>
#include <fcntl.h>
#include <sys/stat.h>
#pragma once
-#include "third_party/blake3/blake3.h"
-#include <third_party/nonstd/span.hpp>
-#include <third_party/tl/expected.hpp>
+#include <blake3/blake3.h>
+#include <nonstd/span.hpp>
+#include <tl/expected.hpp>
#include <array>
#include <cstdint>
#include "InodeCache.hpp"
-#include "Config.hpp"
-#include "Hash.hpp"
-#include "Util.hpp"
-
-#include <util/DirEntry.hpp>
-#include <util/Fd.hpp>
-#include <util/Finalizer.hpp>
-#include <util/PathString.hpp>
-#include <util/TemporaryFile.hpp>
-#include <util/conversion.hpp>
-#include <util/file.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/Fd.hpp>
+#include <ccache/util/Finalizer.hpp>
+#include <ccache/util/PathString.hpp>
+#include <ccache/util/TemporaryFile.hpp>
+#include <ccache/util/conversion.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
#include <fcntl.h>
#pragma once
-#include <Hash.hpp>
-#include <hashutil.hpp>
-#include <util/Duration.hpp>
-#include <util/Fd.hpp>
-#include <util/MemoryMap.hpp>
-#include <util/TimePoint.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/hashutil.hpp>
+#include <ccache/util/Duration.hpp>
+#include <ccache/util/Fd.hpp>
+#include <ccache/util/MemoryMap.hpp>
+#include <ccache/util/TimePoint.hpp>
#include <sys/types.h>
-// Copyright (C) 2019-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2019-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "ProgressBar.hpp"
-#include <util/assertions.hpp>
-#include <util/format.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/wincompat.hpp>
#ifdef _WIN32
#else
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "SignalHandler.hpp"
-#include "Context.hpp"
-
-#include <util/assertions.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/util/assertions.hpp>
#include <signal.h> // NOLINT: sigaddset et al are defined in signal.h
#include <sys/types.h>
#include "Util.hpp"
-#include "Context.hpp"
-
-#include <Config.hpp>
-#include <core/exceptions.hpp>
-#include <util/DirEntry.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/path.hpp>
-#include <util/string.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/path.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/wincompat.hpp>
#ifdef HAVE_UNISTD_H
# include <unistd.h>
#include "argprocessing.hpp"
-#include "Context.hpp"
-#include "compopt.hpp"
-#include "language.hpp"
-
-#include <Depfile.hpp>
-#include <Util.hpp>
-#include <util/PathString.hpp>
-#include <util/assertions.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/path.hpp>
-#include <util/string.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/Depfile.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/compopt.hpp>
+#include <ccache/language.hpp>
+#include <ccache/util/PathString.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/path.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/wincompat.hpp>
#ifdef HAVE_UNISTD_H
# include <unistd.h>
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include "Args.hpp"
-
-#include <core/Statistic.hpp>
+#include <ccache/Args.hpp>
+#include <ccache/core/Statistic.hpp>
#include <optional>
#include <string>
#include "ccache.hpp"
-#include "Args.hpp"
-#include "ArgsInfo.hpp"
-#include "Context.hpp"
-#include "Depfile.hpp"
-#include "Hash.hpp"
-#include "SignalHandler.hpp"
-#include "Util.hpp"
-#include "argprocessing.hpp"
-#include "compopt.hpp"
-#include "execute.hpp"
-#include "hashutil.hpp"
-#include "language.hpp"
-
-#include <core/CacheEntry.hpp>
-#include <core/Manifest.hpp>
-#include <core/MsvcShowIncludesOutput.hpp>
-#include <core/Result.hpp>
-#include <core/ResultRetriever.hpp>
-#include <core/Statistics.hpp>
-#include <core/StatsLog.hpp>
-#include <core/common.hpp>
-#include <core/exceptions.hpp>
-#include <core/mainoptions.hpp>
-#include <core/types.hpp>
-#include <storage/Storage.hpp>
-#include <util/Fd.hpp>
-#include <util/FileStream.hpp>
-#include <util/Finalizer.hpp>
-#include <util/PathString.hpp>
-#include <util/TemporaryFile.hpp>
-#include <util/UmaskScope.hpp>
-#include <util/environment.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/path.hpp>
-#include <util/process.hpp>
-#include <util/string.hpp>
-#include <util/time.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/Args.hpp>
+#include <ccache/ArgsInfo.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/Depfile.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/SignalHandler.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/argprocessing.hpp>
+#include <ccache/compopt.hpp>
+#include <ccache/core/CacheEntry.hpp>
+#include <ccache/core/Manifest.hpp>
+#include <ccache/core/MsvcShowIncludesOutput.hpp>
+#include <ccache/core/Result.hpp>
+#include <ccache/core/ResultRetriever.hpp>
+#include <ccache/core/Statistics.hpp>
+#include <ccache/core/StatsLog.hpp>
+#include <ccache/core/common.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/core/mainoptions.hpp>
+#include <ccache/core/types.hpp>
+#include <ccache/execute.hpp>
+#include <ccache/hashutil.hpp>
+#include <ccache/language.hpp>
+#include <ccache/storage/Storage.hpp>
+#include <ccache/util/Fd.hpp>
+#include <ccache/util/FileStream.hpp>
+#include <ccache/util/Finalizer.hpp>
+#include <ccache/util/PathString.hpp>
+#include <ccache/util/TemporaryFile.hpp>
+#include <ccache/util/UmaskScope.hpp>
+#include <ccache/util/environment.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/path.hpp>
+#include <ccache/util/process.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/time.hpp>
+#include <ccache/util/wincompat.hpp>
#include <fcntl.h>
#pragma once
-#include <Args.hpp>
-#include <Config.hpp>
+#include <ccache/Args.hpp>
+#include <ccache/Config.hpp>
#include <filesystem>
#include <functional>
#include "compopt.hpp"
-#include <util/format.hpp>
+#include <ccache/util/format.hpp>
// The option it too hard to handle at all.
int TOO_HARD = 1 << 0;
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <core/AtomicFile.hpp>
-#include <core/exceptions.hpp>
-#include <util/TemporaryFile.hpp>
-#include <util/assertions.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
+#include "AtomicFile.hpp"
+
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/TemporaryFile.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
namespace fs = util::filesystem;
#pragma once
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#include <cstdint>
#include <cstdio>
#include "CacheEntry.hpp"
-#include <ccache.hpp>
-#include <core/CacheEntryDataReader.hpp>
-#include <core/CacheEntryDataWriter.hpp>
-#include <core/Result.hpp>
-#include <core/exceptions.hpp>
-#include <core/types.hpp>
-#include <util/TimePoint.hpp>
-#include <util/XXH3_128.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/zstd.hpp>
+#include <ccache/ccache.hpp>
+#include <ccache/core/CacheEntryDataReader.hpp>
+#include <ccache/core/CacheEntryDataWriter.hpp>
+#include <ccache/core/Result.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/core/types.hpp>
+#include <ccache/util/TimePoint.hpp>
+#include <ccache/util/XXH3_128.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/zstd.hpp>
#include <cstring>
#pragma once
-#include <core/Serializer.hpp>
-#include <core/types.hpp>
-#include <util/Bytes.hpp>
+#include <ccache/core/Serializer.hpp>
+#include <ccache/core/types.hpp>
+#include <ccache/util/Bytes.hpp>
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#include <cstdint>
#include <filesystem>
-// Copyright (C) 2022-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2022-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <core/exceptions.hpp>
-#include <util/conversion.hpp>
-#include <util/format.hpp>
-#include <util/string.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/conversion.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/string.hpp>
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#include <cstddef>
#include <string_view>
#pragma once
-#include <core/exceptions.hpp>
-#include <util/conversion.hpp>
-#include <util/format.hpp>
-#include <util/string.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/conversion.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/string.hpp>
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#include <cstddef>
#include <cstring>
#include "FileRecompressor.hpp"
-#include <Util.hpp>
-#include <core/AtomicFile.hpp>
-#include <core/CacheEntry.hpp>
-#include <core/exceptions.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/format.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/core/AtomicFile.hpp>
+#include <ccache/core/CacheEntry.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/format.hpp>
using util::DirEntry;
#pragma once
-#include <util/DirEntry.hpp>
+#include <ccache/util/DirEntry.hpp>
#include <atomic>
#include <cstdint>
-// Copyright (C) 2009-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2009-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "Manifest.hpp"
-#include <Context.hpp>
-#include <Hash.hpp>
-#include <core/CacheEntryDataReader.hpp>
-#include <core/CacheEntryDataWriter.hpp>
-#include <core/exceptions.hpp>
-#include <hashutil.hpp>
-#include <util/XXH3_64.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/string.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/core/CacheEntryDataReader.hpp>
+#include <ccache/core/CacheEntryDataWriter.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/hashutil.hpp>
+#include <ccache/util/XXH3_64.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/string.hpp>
// Manifest data format
// ====================
#pragma once
-#include <Hash.hpp>
-#include <core/Serializer.hpp>
-#include <util/Bytes.hpp>
-#include <util/TimePoint.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/core/Serializer.hpp>
+#include <ccache/util/Bytes.hpp>
+#include <ccache/util/TimePoint.hpp>
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#include <cstdint>
#include <cstdio>
-// Copyright (C) 2022-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2022-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "MsvcShowIncludesOutput.hpp"
-#include <Context.hpp>
-#include <util/string.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/util/string.hpp>
namespace core::MsvcShowIncludesOutput {
-// Copyright (C) 2022 Joel Rosdahl and other contributors
+// Copyright (C) 2022-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <util/Bytes.hpp>
+#include <ccache/util/Bytes.hpp>
#include <string_view>
#include <vector>
#include "Result.hpp"
-#include "Config.hpp"
-#include "Context.hpp"
-
-#include <ccache.hpp>
-#include <core/CacheEntryDataReader.hpp>
-#include <core/CacheEntryDataWriter.hpp>
-#include <core/Statistic.hpp>
-#include <core/exceptions.hpp>
-#include <util/Bytes.hpp>
-#include <util/DirEntry.hpp>
-#include <util/FileStream.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/path.hpp>
-#include <util/string.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/ccache.hpp>
+#include <ccache/core/CacheEntryDataReader.hpp>
+#include <ccache/core/CacheEntryDataWriter.hpp>
+#include <ccache/core/Statistic.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/Bytes.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/FileStream.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/path.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/wincompat.hpp>
#include <fcntl.h>
#include <sys/stat.h>
#pragma once
-#include <core/Serializer.hpp>
-#include <util/Bytes.hpp>
+#include <ccache/core/Serializer.hpp>
+#include <ccache/util/Bytes.hpp>
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#include <cstdint>
#include <string>
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "ResultExtractor.hpp"
-#include "Util.hpp"
-
-#include <core/exceptions.hpp>
-#include <util/Bytes.hpp>
-#include <util/DirEntry.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/format.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/Bytes.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/wincompat.hpp>
#include <fcntl.h>
#include <sys/stat.h>
#pragma once
-#include <core/Result.hpp>
+#include <ccache/core/Result.hpp>
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#include <cstdint>
#include <functional>
-// Copyright (C) 2020-2022 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "ResultInspector.hpp"
-#include "Context.hpp"
-
-#include <util/format.hpp>
-#include <util/logging.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
namespace core {
#pragma once
-#include <core/Result.hpp>
+#include <ccache/core/Result.hpp>
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#include <cstdint>
#include <cstdio>
#include "ResultRetriever.hpp"
-#include "Depfile.hpp"
-
-#include <Context.hpp>
-#include <core/MsvcShowIncludesOutput.hpp>
-#include <core/common.hpp>
-#include <core/exceptions.hpp>
-#include <util/DirEntry.hpp>
-#include <util/Fd.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/path.hpp>
-#include <util/string.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/Depfile.hpp>
+#include <ccache/core/MsvcShowIncludesOutput.hpp>
+#include <ccache/core/common.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/Fd.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/path.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/wincompat.hpp>
#include <fcntl.h>
#include <sys/stat.h>
#pragma once
-#include <Hash.hpp>
-#include <core/Result.hpp>
-#include <core/exceptions.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/core/Result.hpp>
+#include <ccache/core/exceptions.hpp>
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#include <cstdint>
#include <optional>
-// Copyright (C) 2022 Joel Rosdahl and other contributors
+// Copyright (C) 2022-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <util/Bytes.hpp>
+#include <ccache/util/Bytes.hpp>
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#include <cstdint>
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <util/BitSet.hpp>
+#include <ccache/util/BitSet.hpp>
#include <cstdint>
#include <string>
#include "Statistics.hpp"
-#include <Config.hpp>
-#include <Util.hpp>
-#include <util/TextTable.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/string.hpp>
-#include <util/time.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/util/TextTable.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/time.hpp>
#include <algorithm>
#pragma once
-#include <core/Statistic.hpp>
-#include <core/StatisticsCounters.hpp>
-#include <util/TimePoint.hpp>
+#include <ccache/core/Statistic.hpp>
+#include <ccache/core/StatisticsCounters.hpp>
+#include <ccache/util/TimePoint.hpp>
#include <cstdint>
#include <string>
-// Copyright (C) 2010-2022 Joel Rosdahl and other contributors
+// Copyright (C) 2010-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "StatisticsCounters.hpp"
-#include <util/assertions.hpp>
+#include <ccache/util/assertions.hpp>
#include <algorithm>
#include "StatsLog.hpp"
-#include <core/Statistics.hpp>
-#include <util/FileStream.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
+#include <ccache/core/Statistics.hpp>
+#include <ccache/util/FileStream.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
#include <cstring>
#include <fstream>
#include "common.hpp"
-#include <Context.hpp>
-#include <core/exceptions.hpp>
-#include <util/Finalizer.hpp>
-#include <util/PathString.hpp>
-#include <util/Tokenizer.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/path.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/Finalizer.hpp>
+#include <ccache/util/PathString.hpp>
+#include <ccache/util/Tokenizer.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/path.hpp>
using IncludeDelimiter = util::Tokenizer::IncludeDelimiter;
using pstr = util::PathString;
#pragma once
-#include <third_party/fmt/core.h>
+#include <fmt/core.h>
#include <optional>
#include <stdexcept>
#include "mainoptions.hpp"
-#include <Config.hpp>
-#include <Hash.hpp>
-#include <InodeCache.hpp>
-#include <ProgressBar.hpp>
-#include <Util.hpp>
-#include <ccache.hpp>
-#include <core/CacheEntry.hpp>
-#include <core/FileRecompressor.hpp>
-#include <core/Manifest.hpp>
-#include <core/Result.hpp>
-#include <core/ResultExtractor.hpp>
-#include <core/ResultInspector.hpp>
-#include <core/Statistics.hpp>
-#include <core/StatsLog.hpp>
-#include <core/exceptions.hpp>
-#include <storage/Storage.hpp>
-#include <storage/local/LocalStorage.hpp>
-#include <util/Fd.hpp>
-#include <util/FileStream.hpp>
-#include <util/PathString.hpp>
-#include <util/TemporaryFile.hpp>
-#include <util/TextTable.hpp>
-#include <util/ThreadPool.hpp>
-#include <util/UmaskScope.hpp>
-#include <util/XXH3_128.hpp>
-#include <util/assertions.hpp>
-#include <util/environment.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/string.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/InodeCache.hpp>
+#include <ccache/ProgressBar.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/ccache.hpp>
+#include <ccache/core/CacheEntry.hpp>
+#include <ccache/core/FileRecompressor.hpp>
+#include <ccache/core/Manifest.hpp>
+#include <ccache/core/Result.hpp>
+#include <ccache/core/ResultExtractor.hpp>
+#include <ccache/core/ResultInspector.hpp>
+#include <ccache/core/Statistics.hpp>
+#include <ccache/core/StatsLog.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/storage/Storage.hpp>
+#include <ccache/storage/local/LocalStorage.hpp>
+#include <ccache/util/Fd.hpp>
+#include <ccache/util/FileStream.hpp>
+#include <ccache/util/PathString.hpp>
+#include <ccache/util/TemporaryFile.hpp>
+#include <ccache/util/TextTable.hpp>
+#include <ccache/util/ThreadPool.hpp>
+#include <ccache/util/UmaskScope.hpp>
+#include <ccache/util/XXH3_128.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/environment.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/string.hpp>
#include <fcntl.h>
#ifdef HAVE_GETOPT_LONG
# include <getopt.h>
#elif defined(_WIN32)
-# include <third_party/win32/getopt.h>
+# include <win32/getopt.h>
#else
extern "C" {
-# include <third_party/getopt_long.h>
+# include <getopt_long.h>
}
#endif
-// Copyright (C) 2021-2022 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "types.hpp"
-#include <Config.hpp>
-#include <core/exceptions.hpp>
-#include <util/assertions.hpp>
-#include <util/format.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/format.hpp>
namespace core {
#include "execute.hpp"
-#include "Config.hpp"
-#include "Context.hpp"
-#include "SignalHandler.hpp"
-#include "Util.hpp"
-
-#include <ccache.hpp>
-#include <core/exceptions.hpp>
-#include <util/DirEntry.hpp>
-#include <util/Fd.hpp>
-#include <util/Finalizer.hpp>
-#include <util/PathString.hpp>
-#include <util/TemporaryFile.hpp>
-#include <util/error.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/path.hpp>
-#include <util/string.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/SignalHandler.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/ccache.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/Fd.hpp>
+#include <ccache/util/Finalizer.hpp>
+#include <ccache/util/PathString.hpp>
+#include <ccache/util/TemporaryFile.hpp>
+#include <ccache/util/error.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/path.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/wincompat.hpp>
#include <vector>
#pragma once
-#include <util/Fd.hpp>
+#include <ccache/util/Fd.hpp>
#include <filesystem>
#include <optional>
-// Copyright (C) 2009-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2009-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "hashutil.hpp"
-#include "Args.hpp"
-#include "Config.hpp"
-#include "Context.hpp"
-#include "execute.hpp"
-#include "macroskip.hpp"
-
-#include <core/exceptions.hpp>
-#include <util/DirEntry.hpp>
-#include <util/file.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/string.hpp>
-#include <util/time.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/Args.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/execute.hpp>
+#include <ccache/macroskip.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/time.hpp>
+#include <ccache/util/wincompat.hpp>
#ifdef INODE_CACHE_SUPPORTED
# include "InodeCache.hpp"
#endif
-#include "third_party/blake3/blake3_cpu_supports_avx2.h"
+#include <blake3/blake3_cpu_supports_avx2.h>
#ifdef HAVE_UNISTD_H
# include <unistd.h>
-// Copyright (C) 2009-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2009-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <Hash.hpp>
-#include <util/BitSet.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/util/BitSet.hpp>
#include <cstddef>
#include <string>
#include "language.hpp"
-#include <util/filesystem.hpp>
+#include <ccache/util/filesystem.hpp>
namespace fs = util::filesystem;
-// Copyright (C) 2010-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2010-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include "Config.hpp"
+#include <ccache/Config.hpp>
#include <string>
#include "Storage.hpp"
-#include <Config.hpp>
-#include <Util.hpp>
-#include <core/CacheEntry.hpp>
-#include <core/Statistic.hpp>
-#include <core/exceptions.hpp>
-#include <storage/remote/FileStorage.hpp>
-#include <storage/remote/HttpStorage.hpp>
-#include <util/assertions.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/core/CacheEntry.hpp>
+#include <ccache/core/Statistic.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/storage/remote/FileStorage.hpp>
+#include <ccache/storage/remote/HttpStorage.hpp>
#ifdef HAVE_REDIS_STORAGE_BACKEND
-# include <storage/remote/RedisStorage.hpp>
+# include <ccache/storage/remote/RedisStorage.hpp>
#endif
-#include <util/Bytes.hpp>
-#include <util/Timer.hpp>
-#include <util/Tokenizer.hpp>
-#include <util/XXH3_64.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/string.hpp>
-
-#include <third_party/url.hpp>
+#include <ccache/util/Bytes.hpp>
+#include <ccache/util/Timer.hpp>
+#include <ccache/util/Tokenizer.hpp>
+#include <ccache/util/XXH3_64.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/string.hpp>
+
+#include <url.hpp>
#include <cmath>
#include <memory>
#pragma once
-#include <Hash.hpp>
-#include <core/types.hpp>
-#include <storage/local/LocalStorage.hpp>
-#include <storage/remote/RemoteStorage.hpp>
-#include <util/Bytes.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/core/types.hpp>
+#include <ccache/storage/local/LocalStorage.hpp>
+#include <ccache/storage/remote/RemoteStorage.hpp>
+#include <ccache/util/Bytes.hpp>
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#include <cstdint>
#include <functional>
#include "LocalStorage.hpp"
-#include <Config.hpp>
-#include <Context.hpp>
-#include <core/AtomicFile.hpp>
-#include <core/CacheEntry.hpp>
-#include <core/FileRecompressor.hpp>
-#include <core/Manifest.hpp>
-#include <core/Statistics.hpp>
-#include <core/common.hpp>
-#include <core/exceptions.hpp>
-#include <util/Duration.hpp>
-#include <util/FileStream.hpp>
-#include <util/PathString.hpp>
-#include <util/TemporaryFile.hpp>
-#include <util/TextTable.hpp>
-#include <util/ThreadPool.hpp>
-#include <util/assertions.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/process.hpp>
-#include <util/string.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/core/AtomicFile.hpp>
+#include <ccache/core/CacheEntry.hpp>
+#include <ccache/core/FileRecompressor.hpp>
+#include <ccache/core/Manifest.hpp>
+#include <ccache/core/Statistics.hpp>
+#include <ccache/core/common.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/Duration.hpp>
+#include <ccache/util/FileStream.hpp>
+#include <ccache/util/PathString.hpp>
+#include <ccache/util/TemporaryFile.hpp>
+#include <ccache/util/TextTable.hpp>
+#include <ccache/util/ThreadPool.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/process.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/wincompat.hpp>
#ifdef INODE_CACHE_SUPPORTED
-# include <InodeCache.hpp>
+# include <ccache/InodeCache.hpp>
#endif
#include <fcntl.h>
#pragma once
-#include <Hash.hpp>
-#include <core/Result.hpp>
-#include <core/Statistic.hpp>
-#include <core/StatisticsCounters.hpp>
-#include <core/types.hpp>
-#include <storage/local/StatsFile.hpp>
-#include <storage/local/util.hpp>
-#include <util/Bytes.hpp>
-#include <util/DirEntry.hpp>
-#include <util/LockFile.hpp>
-#include <util/LongLivedLockFileManager.hpp>
-#include <util/TimePoint.hpp>
-
-#include <third_party/nonstd/span.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/core/Result.hpp>
+#include <ccache/core/Statistic.hpp>
+#include <ccache/core/StatisticsCounters.hpp>
+#include <ccache/core/types.hpp>
+#include <ccache/storage/local/StatsFile.hpp>
+#include <ccache/storage/local/util.hpp>
+#include <ccache/util/Bytes.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/LockFile.hpp>
+#include <ccache/util/LongLivedLockFileManager.hpp>
+#include <ccache/util/TimePoint.hpp>
+
+#include <nonstd/span.hpp>
#include <cstdint>
#include <filesystem>
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "StatsFile.hpp"
-#include <core/AtomicFile.hpp>
-#include <core/exceptions.hpp>
-#include <util/LockFile.hpp>
-#include <util/file.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
+#include <ccache/core/AtomicFile.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/LockFile.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
namespace storage::local {
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <core/StatisticsCounters.hpp>
+#include <ccache/core/StatisticsCounters.hpp>
#include <functional>
#include <optional>
#include "util.hpp"
-#include <Util.hpp>
-#include <core/exceptions.hpp>
-#include <util/PathString.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/format.hpp>
-#include <util/string.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/PathString.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/string.hpp>
using util::DirEntry;
using pstr = util::PathString;
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <util/DirEntry.hpp>
+#include <ccache/util/DirEntry.hpp>
#include <functional>
#include <string>
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "FileStorage.hpp"
-#include <Util.hpp>
-#include <core/AtomicFile.hpp>
-#include <core/exceptions.hpp>
-#include <util/Bytes.hpp>
-#include <util/DirEntry.hpp>
-#include <util/UmaskScope.hpp>
-#include <util/assertions.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/string.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/core/AtomicFile.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/Bytes.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/UmaskScope.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/string.hpp>
#include <sys/stat.h> // for mode_t
#pragma once
-#include <storage/remote/RemoteStorage.hpp>
+#include <ccache/storage/remote/RemoteStorage.hpp>
-#include <third_party/url.hpp>
+#include <url.hpp>
#include <memory>
#include <vector>
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "HttpStorage.hpp"
-#include <Hash.hpp>
-#include <ccache.hpp>
-#include <core/exceptions.hpp>
-#include <storage/Storage.hpp>
-#include <util/assertions.hpp>
-#include <util/expected.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/string.hpp>
-#include <util/types.hpp>
-
-#include <third_party/httplib.h>
-#include <third_party/url.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/ccache.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/storage/Storage.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/types.hpp>
+
+#include <httplib.h>
+#include <url.hpp>
#include <string_view>
#pragma once
-#include <storage/remote/RemoteStorage.hpp>
+#include <ccache/storage/remote/RemoteStorage.hpp>
-#include <third_party/url.hpp>
+#include <url.hpp>
#include <memory>
#include <vector>
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "RedisStorage.hpp"
-#include <Hash.hpp>
-#include <core/exceptions.hpp>
-#include <storage/Storage.hpp>
-#include <util/assertions.hpp>
-#include <util/expected.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/string.hpp>
-#include <util/wincompat.hpp> // for timeval
+#include <ccache/Hash.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/storage/Storage.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/wincompat.hpp> // for timeval
#ifdef HAVE_SYS_UTIME_H
# include <sys/utime.h> // for timeval
#pragma once
-#include <storage/remote/RemoteStorage.hpp>
+#include <ccache/storage/remote/RemoteStorage.hpp>
-#include <third_party/url.hpp>
+#include <url.hpp>
#include <memory>
#include <vector>
-// Copyright (C) 2021-2022 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "RemoteStorage.hpp"
-#include <util/expected.hpp>
-#include <util/string.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/string.hpp>
namespace storage::remote {
#pragma once
-#include <Hash.hpp>
-#include <util/Bytes.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/util/Bytes.hpp>
-#include <third_party/nonstd/span.hpp>
-#include <third_party/tl/expected.hpp>
-#include <third_party/url.hpp>
+#include <nonstd/span.hpp>
+#include <tl/expected.hpp>
+#include <url.hpp>
#include <chrono>
#include <memory>
-// Copyright (C) 2022-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2022-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <Config.hpp>
-#include <util/LockFile.hpp>
-#include <util/LongLivedLockFileManager.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/string.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/util/LockFile.hpp>
+#include <ccache/util/LongLivedLockFileManager.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/string.hpp>
#include <memory>
#include <string>
#include "Bytes.hpp"
-#include <util/assertions.hpp>
+#include <ccache/util/assertions.hpp>
namespace util {
#pragma once
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#include <cstdint>
#include <cstring>
#include "DirEntry.hpp"
-#include <util/Finalizer.hpp>
-#include <util/PathString.hpp>
-#include <util/file.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/util/Finalizer.hpp>
+#include <ccache/util/PathString.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/wincompat.hpp>
#ifdef _WIN32
-# include <third_party/win32/winerror_to_errno.h>
+# include <win32/winerror_to_errno.h>
#endif
#include <cstring>
#pragma once
-#include <util/TimePoint.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/util/TimePoint.hpp>
+#include <ccache/util/wincompat.hpp>
#include <sys/stat.h>
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <util/NonCopyable.hpp>
-#include <util/assertions.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/util/NonCopyable.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/wincompat.hpp>
#ifdef HAVE_UNISTD_H
# include <unistd.h>
-// Copyright (C) 2019-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2019-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <util/NonCopyable.hpp>
+#include <ccache/util/NonCopyable.hpp>
#include <cstdio>
#include <string>
#include "LockFile.hpp"
-#include "Util.hpp"
-
-#include <util/DirEntry.hpp>
-#include <util/PathString.hpp>
-#include <util/assertions.hpp>
-#include <util/error.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/process.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/PathString.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/error.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/process.hpp>
+#include <ccache/util/wincompat.hpp>
#ifdef HAVE_UNISTD_H
# include <unistd.h>
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <util/LongLivedLockFileManager.hpp>
-#include <util/NonCopyable.hpp>
-#include <util/TimePoint.hpp>
+#include <ccache/util/LongLivedLockFileManager.hpp>
+#include <ccache/util/NonCopyable.hpp>
+#include <ccache/util/TimePoint.hpp>
#include <filesystem>
#include <optional>
-// Copyright (C) 2022-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2022-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "LongLivedLockFileManager.hpp"
-#include <Util.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/logging.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/logging.hpp>
#include <chrono>
-// Copyright (C) 2022-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2022-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <util/NonCopyable.hpp>
+#include <ccache/util/NonCopyable.hpp>
#include <condition_variable>
#include <filesystem>
#include "MemoryMap.hpp"
-#include <util/format.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/wincompat.hpp>
#include <cstring>
#pragma once
-#include <util/NonCopyable.hpp>
+#include <ccache/util/NonCopyable.hpp>
-#include <third_party/tl/expected.hpp>
+#include <tl/expected.hpp>
#include <cstddef>
#include <string>
#include "TemporaryFile.hpp"
-#include <util/PathString.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/process.hpp>
+#include <ccache/util/PathString.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/process.hpp>
#include <cstdlib>
#endif
#ifdef _WIN32
-# include <third_party/win32/mktemp.h>
+# include <win32/mktemp.h>
#endif
namespace fs = util::filesystem;
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <util/Fd.hpp>
+#include <ccache/util/Fd.hpp>
-#include <third_party/tl/expected.hpp>
+#include <tl/expected.hpp>
#include <filesystem>
#include <string>
#include "TextTable.hpp"
-#include <util/assertions.hpp>
-#include <util/format.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/format.hpp>
-#include <third_party/fmt/core.h>
+#include <fmt/core.h>
#include <algorithm>
#pragma once
-#include <util/Duration.hpp>
+#include <ccache/util/Duration.hpp>
#include <cstdint>
#include <ctime>
#pragma once
-#include <util/assertions.hpp>
+#include <ccache/util/assertions.hpp>
#include <cstddef>
#include <string_view>
-// Copyright (C) 2023 Joel Rosdahl and other contributors
+// Copyright (C) 2023-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "UmaskScope.hpp"
-#include <util/process.hpp>
+#include <ccache/util/process.hpp>
#include <sys/stat.h>
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <util/Bytes.hpp>
-#include <util/conversion.hpp>
+#include <ccache/util/Bytes.hpp>
+#include <ccache/util/conversion.hpp>
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#ifdef USE_XXH_DISPATCH
-# include <third_party/xxh_x86dispatch.h>
+# include <xxh_x86dispatch.h>
#else
-# include <third_party/xxhash.h>
+# include <xxhash.h>
#endif
#include <cstdint>
#pragma once
#ifdef USE_XXH_DISPATCH
-# include "third_party/xxh_x86dispatch.h"
+# include <xxh_x86dispatch.h>
#else
-# include "third_party/xxhash.h"
+# include <xxhash.h>
#endif
#include <cstdint>
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "Util.hpp"
-
-#include <util/assertions.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
namespace fs = util::filesystem;
-// Copyright (C) 2023 Joel Rosdahl and other contributors
+// Copyright (C) 2023-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <util/Bytes.hpp>
+#include <ccache/util/Bytes.hpp>
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#include <cstdint>
#include <string>
-// Copyright (C) 2023 Joel Rosdahl and other contributors
+// Copyright (C) 2023-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "environment.hpp"
-#include <util/format.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/wincompat.hpp>
namespace util {
#pragma once
-#include <third_party/tl/expected.hpp>
+#include <tl/expected.hpp>
#include <string>
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "error.hpp"
-#include <util/wincompat.hpp>
+#include <ccache/util/wincompat.hpp>
namespace util {
-// Copyright (C) 2021-2022 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <util/format.hpp>
+#include <ccache/util/format.hpp>
#include <string_view>
#include <utility>
#include "file.hpp"
-#include <util/Bytes.hpp>
-#include <util/DirEntry.hpp>
-#include <util/Fd.hpp>
-#include <util/Finalizer.hpp>
-#include <util/PathString.hpp>
-#include <util/TemporaryFile.hpp>
-#include <util/error.hpp>
-#include <util/expected.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
+#include <ccache/util/Bytes.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/Fd.hpp>
+#include <ccache/util/Finalizer.hpp>
+#include <ccache/util/PathString.hpp>
+#include <ccache/util/TemporaryFile.hpp>
+#include <ccache/util/error.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
#ifdef HAVE_UNISTD_H
# include <unistd.h>
#pragma once
-#include <util/Bytes.hpp>
-#include <util/DirEntry.hpp>
-#include <util/TimePoint.hpp>
-#include <util/types.hpp>
+#include <ccache/util/Bytes.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/TimePoint.hpp>
+#include <ccache/util/types.hpp>
-#include <third_party/nonstd/span.hpp>
-#include <third_party/tl/expected.hpp>
+#include <nonstd/span.hpp>
+#include <tl/expected.hpp>
#include <cstddef>
#include <cstdint>
-// Copyright (C) 2023 Joel Rosdahl and other contributors
+// Copyright (C) 2023-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "filesystem.hpp"
-#include <util/wincompat.hpp>
+#include <ccache/util/wincompat.hpp>
#ifdef _WIN32
-# include <third_party/win32/winerror_to_errno.h>
+# include <win32/winerror_to_errno.h>
#endif
namespace util::filesystem {
#pragma once
-#include <third_party/tl/expected.hpp>
+#include <tl/expected.hpp>
#include <cstdint>
#include <filesystem>
#pragma once
-#include <third_party/fmt/core.h>
-#include <third_party/fmt/format.h>
-#include <third_party/fmt/std.h>
+#include <fmt/core.h>
+#include <fmt/format.h>
+#include <fmt/std.h>
// Convenience macro for calling `fmt::format` with `FMT_STRING` around the
// format string literal.
// Copyright (C) 2002 Andrew Tridgell
-// Copyright (C) 2009-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2009-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "Config.hpp"
-
-#include <util/FileStream.hpp>
-#include <util/file.hpp>
-#include <util/format.hpp>
-#include <util/logging.hpp>
-#include <util/time.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/util/FileStream.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/logging.hpp>
+#include <ccache/util/time.hpp>
#ifdef HAVE_UNISTD_H
# include <unistd.h>
#pragma once
-#include <third_party/fmt/core.h>
-#include <third_party/fmt/format.h>
+#include <fmt/core.h>
+#include <fmt/format.h>
#include <string>
#include <string_view>
#include "path.hpp"
-#include <Util.hpp>
-#include <util/DirEntry.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/string.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/string.hpp>
#ifdef _WIN32
const char k_dev_null_path[] = "nul:";
#include <string>
#include <string_view>
#ifdef _WIN32
-# include <util/string.hpp>
+# include <ccache/util/string.hpp>
#endif
namespace util {
-// Copyright (C) 2023 Joel Rosdahl and other contributors
+// Copyright (C) 2023-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "process.hpp"
-#include <util/wincompat.hpp>
+#include <ccache/util/wincompat.hpp>
#include <cstring>
#include "string.hpp"
-#include <util/assertions.hpp>
-#include <util/format.hpp>
+#include <ccache/util/assertions.hpp>
+#include <ccache/util/format.hpp>
#include <algorithm>
#include <cctype>
#pragma once
-#include <util/Tokenizer.hpp>
-#include <util/conversion.hpp>
-
-#include <third_party/nonstd/span.hpp>
-#include <third_party/tl/expected.hpp>
+#include <ccache/util/Tokenizer.hpp>
+#include <ccache/util/conversion.hpp>
+#include <nonstd/span.hpp>
#include <sys/stat.h> // for mode_t
+#include <tl/expected.hpp>
#include <cstdint>
#include <cstring>
-// Copyright (C) 2023 Joel Rosdahl and other contributors
+// Copyright (C) 2023-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#pragma once
-#include <util/TimePoint.hpp>
+#include <ccache/util/TimePoint.hpp>
#include <ctime>
#include <optional>
#pragma once
-#include <third_party/nonstd/span.hpp>
+#include <nonstd/span.hpp>
#include <cstdint>
#include <functional>
#pragma once
-#include <util/Bytes.hpp>
+#include <ccache/util/Bytes.hpp>
-#include <third_party/nonstd/span.hpp>
-#include <third_party/tl/expected.hpp>
+#include <nonstd/span.hpp>
+#include <tl/expected.hpp>
#include <cstddef>
#include <cstdint>
add_library(third_party STATIC format.cpp httplib.cpp url.cpp xxhash.c)
+target_include_directories(third_party INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
+
if(NOT MSVC)
target_sources(third_party PRIVATE getopt_long.c)
else()
#include "TestUtil.hpp"
-#include <core/exceptions.hpp>
-#include <util/expected.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/expected.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
namespace fs = util::filesystem;
-// Copyright (C) 2010-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2010-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <util/environment.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/path.hpp>
+#include <ccache/util/environment.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/path.hpp>
#define DOCTEST_THREAD_LOCAL // Avoid MinGW thread_local bug
#define DOCTEST_CONFIG_IMPLEMENT
-#include "third_party/doctest.h"
+#include <doctest.h>
namespace fs = util::filesystem;
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/Args.hpp"
#include "TestUtil.hpp"
-#include <util/file.hpp>
+#include <ccache/Args.hpp>
+#include <ccache/util/file.hpp>
-#include "third_party/doctest.h"
+#include <doctest.h>
TEST_SUITE_BEGIN("Args");
-// Copyright (C) 2011-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2011-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/Config.hpp"
-#include "../src/Util.hpp"
#include "TestUtil.hpp"
-#include <core/exceptions.hpp>
-#include <util/environment.hpp>
-#include <util/file.hpp>
-#include <util/format.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/environment.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/format.hpp>
-#include "third_party/doctest.h"
+#include <doctest.h>
#include <limits>
#include <string>
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/Context.hpp"
-#include "../src/Depfile.hpp"
#include "TestUtil.hpp"
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/Depfile.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
-#include "third_party/doctest.h"
+#include <doctest.h>
#include <string>
#include <vector>
-// Copyright (C) 2010-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2010-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/Hash.hpp"
+#include <ccache/Hash.hpp>
+#include <ccache/util/string.hpp>
-#include <util/string.hpp>
-
-#include "third_party/doctest.h"
+#include <doctest.h>
TEST_SUITE_BEGIN("Hash");
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/Config.hpp"
-#include "../src/Context.hpp"
-#include "../src/Hash.hpp"
-#include "../src/InodeCache.hpp"
#include "TestUtil.hpp"
-#include <util/Fd.hpp>
-#include <util/TemporaryFile.hpp>
-#include <util/file.hpp>
-#include <util/path.hpp>
-
-#include "third_party/doctest.h"
+#include <ccache/Config.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/Hash.hpp>
+#include <ccache/InodeCache.hpp>
+#include <ccache/util/Fd.hpp>
+#include <ccache/util/TemporaryFile.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/path.hpp>
+#include <doctest.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <sys/types.h>
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/Config.hpp"
-#include "../src/Util.hpp"
#include "TestUtil.hpp"
-#include <core/exceptions.hpp>
-#include <util/environment.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/path.hpp>
-#include <util/wincompat.hpp>
-
-#include "third_party/doctest.h"
-
+#include <ccache/Config.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/core/exceptions.hpp>
+#include <ccache/util/environment.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/path.hpp>
+#include <ccache/util/wincompat.hpp>
+
+#include <doctest.h>
#include <fcntl.h>
#include <optional>
-// Copyright (C) 2010-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2010-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/Args.hpp"
-#include "../src/Config.hpp"
-#include "../src/Context.hpp"
#include "TestUtil.hpp"
-#include "argprocessing.hpp"
-#include <Util.hpp>
-#include <core/Statistic.hpp>
-#include <util/file.hpp>
-#include <util/format.hpp>
-#include <util/path.hpp>
-#include <util/string.hpp>
-#include <util/wincompat.hpp>
-
-#include "third_party/doctest.h"
+#include <ccache/Args.hpp>
+#include <ccache/Config.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/argprocessing.hpp>
+#include <ccache/core/Statistic.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/path.hpp>
+#include <ccache/util/string.hpp>
+#include <ccache/util/wincompat.hpp>
+
+#include <doctest.h>
#include <algorithm>
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "TestUtil.hpp"
-#include <util/Fd.hpp>
-#include <util/Finalizer.hpp>
-#include <util/wincompat.hpp>
-
-#include "third_party/doctest.h"
-#include "third_party/win32/mktemp.h"
+#include <ccache/util/Fd.hpp>
+#include <ccache/util/Finalizer.hpp>
+#include <ccache/util/wincompat.hpp>
+#include <doctest.h>
#include <sddl.h>
+#include <win32/mktemp.h>
#include <algorithm>
#include <memory>
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/Context.hpp"
-#include "../src/ccache.hpp"
#include "TestUtil.hpp"
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/path.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/Context.hpp>
+#include <ccache/ccache.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/path.hpp>
+#include <ccache/util/wincompat.hpp>
-#include "third_party/doctest.h"
+#include <doctest.h>
#include <optional>
#include <string>
-// Copyright (C) 2010-2020 Joel Rosdahl and other contributors
+// Copyright (C) 2010-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/compopt.hpp"
+#include <ccache/compopt.hpp>
-#include "third_party/doctest.h"
+#include <doctest.h>
bool compopt_verify_sortedness_and_flags();
-// Copyright (C) 2019-2022 Joel Rosdahl and other contributors
+// Copyright (C) 2019-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/Config.hpp"
+#include <ccache/Config.hpp>
+#include <ccache/core/types.hpp>
-#include <core/types.hpp>
-
-#include "third_party/doctest.h"
+#include <doctest.h>
TEST_SUITE_BEGIN("compression");
-// Copyright (C) 2011-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2011-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "TestUtil.hpp"
-#include <core/AtomicFile.hpp>
-#include <util/DirEntry.hpp>
-#include <util/file.hpp>
+#include <ccache/core/AtomicFile.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/file.hpp>
-#include "third_party/doctest.h"
+#include <doctest.h>
#include <string>
#include <vector>
-// Copyright (C) 2020-2022 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/Context.hpp"
-#include "../src/core/MsvcShowIncludesOutput.hpp"
-#include "../src/util/string.hpp"
#include "TestUtil.hpp"
-#include "third_party/doctest.h"
+#include <ccache/Context.hpp>
+#include <ccache/core/MsvcShowIncludesOutput.hpp>
+#include <ccache/util/string.hpp>
+
+#include <doctest.h>
static const std::string defaultPrefix = "Note: including file:";
-// Copyright (C) 2011-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2011-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "TestUtil.hpp"
-#include <core/Statistic.hpp>
-#include <core/Statistics.hpp>
+#include <ccache/core/Statistic.hpp>
+#include <ccache/core/Statistics.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
#include <iostream> // macOS bug: https://github.com/onqtam/doctest/issues/126
#include <string>
-// Copyright (C) 2020-2021 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "TestUtil.hpp"
-#include <core/Statistic.hpp>
-#include <core/StatisticsCounters.hpp>
+#include <ccache/core/Statistic.hpp>
+#include <ccache/core/StatisticsCounters.hpp>
-#include "third_party/doctest.h"
+#include <doctest.h>
using core::Statistic;
using core::StatisticsCounters;
-// Copyright (C) 2021-2022 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "TestUtil.hpp"
-#include <Util.hpp>
-#include <core/StatsLog.hpp>
-#include <util/file.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/core/StatsLog.hpp>
+#include <ccache/util/file.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
using core::Statistic;
using core::StatsLog;
-// Copyright (C) 2019-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2019-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "TestUtil.hpp"
-#include <core/common.hpp>
-#include <util/DirEntry.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
+#include <ccache/core/common.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
namespace fs = util::filesystem;
-// Copyright (C) 2010-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2010-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/Hash.hpp"
-#include "../src/hashutil.hpp"
#include "TestUtil.hpp"
-#include <util/file.hpp>
-
-#include "third_party/doctest.h"
+#include <ccache/Hash.hpp>
+#include <ccache/hashutil.hpp>
+#include <ccache/util/file.hpp>
+#include <doctest.h>
#include <sys/stat.h>
using TestUtil::TestContext;
-// Copyright (C) 2011-2022 Joel Rosdahl and other contributors
+// Copyright (C) 2011-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "TestUtil.hpp"
-#include <Util.hpp>
-#include <core/Statistic.hpp>
-#include <storage/local/StatsFile.hpp>
-#include <util/file.hpp>
-#include <util/format.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/core/Statistic.hpp>
+#include <ccache/storage/local/StatsFile.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/format.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
using core::Statistic;
using storage::local::StatsFile;
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "TestUtil.hpp"
-#include <storage/local/util.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
+#include <ccache/storage/local/util.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
#include <algorithm>
#include <string>
-// Copyright (C) 2023 Joel Rosdahl and other contributors
+// Copyright (C) 2023-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/util/BitSet.hpp"
#include "TestUtil.hpp"
-#include <third_party/doctest.h>
+#include <ccache/util/BitSet.hpp>
+
+#include <doctest.h>
TEST_SUITE_BEGIN("BitSet");
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <util/Bytes.hpp>
+#include <ccache/util/Bytes.hpp>
-#include <third_party/doctest.h>
-#include <third_party/nonstd/span.hpp>
+#include <doctest.h>
+#include <nonstd/span.hpp>
#include <vector>
-// Copyright (C) 2019-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2019-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "TestUtil.hpp"
-#include <util/DirEntry.hpp>
-#include <util/Finalizer.hpp>
-#include <util/environment.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/Finalizer.hpp>
+#include <ccache/util/environment.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/wincompat.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
#ifdef HAVE_UNISTD_H
# include <unistd.h>
-// Copyright (C) 2022 Joel Rosdahl and other contributors
+// Copyright (C) 2022-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <util/Duration.hpp>
+#include <ccache/util/Duration.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
TEST_SUITE_BEGIN("util::Duration");
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "TestUtil.hpp"
-#include <Util.hpp>
-#include <util/DirEntry.hpp>
-#include <util/LockFile.hpp>
-#include <util/file.hpp>
-#include <util/wincompat.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/LockFile.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/wincompat.hpp>
-#include "third_party/doctest.h"
+#include <doctest.h>
#ifdef HAVE_UNISTD_H
# include <unistd.h>
-// Copyright (C) 2021 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <util/TextTable.hpp>
+#include <ccache/util/TextTable.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
#include <iostream> // macOS bug: https://github.com/onqtam/doctest/issues/126
-// Copyright (C) 2022 Joel Rosdahl and other contributors
+// Copyright (C) 2022-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <util/TimePoint.hpp>
+#include <ccache/util/TimePoint.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
TEST_SUITE_BEGIN("util::TimePoint");
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include "../src/Util.hpp"
+#include <ccache/Util.hpp>
+#include <ccache/util/string.hpp>
-#include <util/string.hpp>
-
-#include "third_party/doctest.h"
+#include <doctest.h>
#include <ostream> // https://github.com/doctest/doctest/issues/618
#include <string>
-// Copyright (C) 2011-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2011-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <util/XXH3_128.hpp>
-#include <util/string.hpp>
+#include <ccache/util/XXH3_128.hpp>
+#include <ccache/util/string.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
TEST_SUITE_BEGIN("util::XXH3_128");
-// Copyright (C) 2011-2021 Joel Rosdahl and other contributors
+// Copyright (C) 2011-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <util/XXH3_64.hpp>
+#include <ccache/util/XXH3_64.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
TEST_SUITE_BEGIN("util::XXH3_64");
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <util/conversion.hpp>
+#include <ccache/util/conversion.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
#include <ostream> // https://github.com/doctest/doctest/issues/618
#include <vector>
-// Copyright (C) 2023 Joel Rosdahl and other contributors
+// Copyright (C) 2023-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <util/environment.hpp>
+#include <ccache/util/environment.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
TEST_SUITE_BEGIN("util");
-// Copyright (C) 2021-2022 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <util/expected.hpp>
+#include <ccache/util/expected.hpp>
-#include <third_party/doctest.h>
-#include <third_party/tl/expected.hpp>
+#include <doctest.h>
+#include <tl/expected.hpp>
#include <iostream> // macOS bug: https://github.com/onqtam/doctest/issues/126
#include <memory>
-// Copyright (C) 2022-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2022-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
#include "TestUtil.hpp"
-#include <util/Bytes.hpp>
-#include <util/DirEntry.hpp>
-#include <util/Fd.hpp>
-#include <util/file.hpp>
-#include <util/filesystem.hpp>
-#include <util/format.hpp>
-#include <util/string.hpp>
-
-#include <third_party/doctest.h>
+#include <ccache/util/Bytes.hpp>
+#include <ccache/util/DirEntry.hpp>
+#include <ccache/util/Fd.hpp>
+#include <ccache/util/file.hpp>
+#include <ccache/util/filesystem.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/string.hpp>
+#include <doctest.h>
#include <fcntl.h>
#include <cstring>
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <Util.hpp>
-#include <util/format.hpp>
-#include <util/path.hpp>
+#include <ccache/Util.hpp>
+#include <ccache/util/format.hpp>
+#include <ccache/util/path.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
#include <ostream> // https://github.com/doctest/doctest/issues/618
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <util/string.hpp>
+#include <ccache/util/string.hpp>
-#include <third_party/doctest.h>
+#include <doctest.h>
#include <ostream> // https://github.com/doctest/doctest/issues/618
#include <vector>
-// Copyright (C) 2019-2022 Joel Rosdahl and other contributors
+// Copyright (C) 2019-2024 Joel Rosdahl and other contributors
//
// See doc/AUTHORS.adoc for a complete list of contributors.
//
// this program; if not, write to the Free Software Foundation, Inc., 51
// Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#include <TestUtil.hpp>
-#include <util/Bytes.hpp>
-#include <util/zstd.hpp>
+#include "TestUtil.hpp"
-#include <third_party/doctest.h>
+#include <ccache/util/Bytes.hpp>
+#include <ccache/util/zstd.hpp>
+
+#include <doctest.h>
#include <string>