llvm-project/llvm/unittests/Support
Zachary Turner 260bda3fbc [Support] Add llvm::sys::fs::remove_directories.
We already have a function create_directories() which can create
an entire tree, and remove() which can remove an empty directory,
but we do not have remove_directories() which can remove an entire
tree.  This patch adds such a function.

Because removing a directory tree can have dangerous consequences
when the tree contains a directory symlink, the patch here updates
the existing directory_iterator construct to optionally not follow
symlinks (previously it would always follow symlinks).  The delete
algorithm uses this flag so that for symlinks, only the links are
removed, and not the targets.

On Windows this is implemented with SHFileOperation, which also
does not recurse into symbolic links or junctions.

Differential Revision: https://reviews.llvm.org/D30676

llvm-svn: 297314
2017-03-08 22:49:32 +00:00
..
ARMAttributeParser.cpp [ARM] const cast fix for ARMAttributeParser test 2017-02-01 12:58:57 +00:00
AlignOfTest.cpp Revert r291503, "Lift the 10-type limit for AlignedCharArrayUnion", and followings. 2017-01-13 01:13:10 +00:00
AllocatorTest.cpp
ArrayRecyclerTest.cpp
BinaryStreamTest.cpp [Support] Move Stream library from MSF -> Support. 2017-03-02 20:52:51 +00:00
BlockFrequencyTest.cpp
BranchProbabilityTest.cpp
CMakeLists.txt [Support] Move Stream library from MSF -> Support. 2017-03-02 20:52:51 +00:00
Casting.cpp
Chrono.cpp [Support] Add FormatVariadic support for chrono types 2017-02-07 18:11:33 +00:00
CommandLineTest.cpp Attempt to pacify buildbot 2016-11-01 07:52:10 +00:00
CompressionTest.cpp Recommit r292214 "[Support/Compression] - Change zlib API to return Error instead of custom status" 2017-01-17 15:45:07 +00:00
ConvertUTFTest.cpp [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
DataExtractorTest.cpp
DebugTest.cpp Fix unit test in NDEBUG build 2016-12-27 11:07:53 +00:00
DwarfTest.cpp Re-commit "Use StringRef in Support/Darf APIs (NFC)" 2016-10-05 05:59:29 +00:00
EndianStreamTest.cpp
EndianTest.cpp
ErrorOrTest.cpp
ErrorTest.cpp [Support][Error] Add a 'cantFail' utility function for known-safe calls to 2017-02-27 21:09:47 +00:00
FileOutputBufferTest.cpp Fix a real temp file leak in FileOutputBuffer 2016-09-02 01:10:53 +00:00
FormatVariadicTest.cpp [Support] Add formatv support for StringLiteral 2017-02-14 16:35:56 +00:00
GlobPatternTest.cpp Move GlobPattern class from LLD to llvm/Support. 2016-12-20 23:09:09 +00:00
Host.cpp [Support] Simplify triple check in Host CPU test. NFC. 2017-02-04 00:46:59 +00:00
LEB128Test.cpp [Support] Extend SLEB128 encoding support. 2017-02-10 00:02:58 +00:00
LineIteratorTest.cpp
LockFileManagerTest.cpp
MD5Test.cpp Add convenient functions to compute hashes of byte vectors. 2016-11-23 00:46:09 +00:00
ManagedStatic.cpp
MathExtrasTest.cpp [ADT/MathExtras] Make buildbot happy again. 2016-11-11 04:03:29 +00:00
MemoryBufferTest.cpp Try to fix some temp file leaks in SupportTests, PR18335 2016-09-02 00:51:34 +00:00
MemoryTest.cpp
NativeFormatTests.cpp [Support] Introduce llvm::formatv() function. 2016-11-11 23:57:40 +00:00
Path.cpp [Support] Add llvm::sys::fs::remove_directories. 2017-03-08 22:49:32 +00:00
ProcessTest.cpp
ProgramTest.cpp Remove unused lambda captures. NFC 2017-01-13 17:12:16 +00:00
RegexTest.cpp [Support] - Fix possible crash in match() of llvm::Regex. 2016-09-02 08:44:46 +00:00
ReplaceFileTest.cpp
ScaledNumberTest.cpp
SourceMgrTest.cpp
SpecialCaseListTest.cpp Support escaping in TrigramIndex. 2016-12-02 23:30:16 +00:00
StringPool.cpp
SwapByteOrderTest.cpp
TarWriterTest.cpp Use EXPECT_EQ instead of ASSERT_EQ in a unit test. 2017-01-11 22:02:51 +00:00
TargetParserTest.cpp [AArch64] Vulcan is now ThunderXT99 2017-03-07 19:42:40 +00:00
ThreadLocalTest.cpp
ThreadPool.cpp Remove unused lambda captures. NFC 2017-01-13 17:12:16 +00:00
Threading.cpp Rename interface for querying physical hardware concurrency 2016-10-17 14:56:53 +00:00
TimerTest.cpp Timer: Track name and description. 2016-11-18 19:43:18 +00:00
TrailingObjectsTest.cpp Workaround MSVC bug when using TrailingObjects from a template. 2017-02-28 18:05:41 +00:00
TrigramIndexTest.cpp Support escaping in TrigramIndex. 2016-12-02 23:30:16 +00:00
TypeNameTest.cpp
UnicodeTest.cpp
YAMLIOTest.cpp Support: Add YAML I/O support for custom mappings. 2017-01-04 03:51:36 +00:00
YAMLParserTest.cpp [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
formatted_raw_ostream_test.cpp
raw_ostream_test.cpp [Support] Improve flexibility of binary blob formatter. 2016-11-10 20:16:45 +00:00
raw_pwrite_stream_test.cpp raw_pwrite_stream_test.cpp: _putenv_s() may be assumed as win32-generic. 2016-09-02 01:20:18 +00:00
raw_sha1_ostream_test.cpp Add convenient functions to compute hashes of byte vectors. 2016-11-23 00:46:09 +00:00
xxhashTest.cpp Add xxhash to llvm. 2016-09-27 15:45:57 +00:00