Author: Vedant Kumar Date: 2020-04-23T10:22:28-07:00 New Revision: cfb4f8c5fbc6fd8ad06bcfc6f91926b6d55d3766
URL: https://github.com/llvm/llvm-project/commit/cfb4f8c5fbc6fd8ad06bcfc6f91926b6d55d3766 DIFF: https://github.com/llvm/llvm-project/commit/cfb4f8c5fbc6fd8ad06bcfc6f91926b6d55d3766.diff LOG: [DirectoryWatcher] Do not use FSEvents on non-macOS platforms The FSEvents APIs are available on iOS6+: however, the DirectoryWatcher code isn't wired up to really use FSEvents on embedded platforms. I've duplicated code from DirectoryWatcher-not-implemented.cpp here and used TargetConditionals instead of adding cmakery to check try_compile; I couldn't get that to work properly. Added: Modified: clang/lib/DirectoryWatcher/mac/DirectoryWatcher-mac.cpp Removed: ################################################################################ diff --git a/clang/lib/DirectoryWatcher/mac/DirectoryWatcher-mac.cpp b/clang/lib/DirectoryWatcher/mac/DirectoryWatcher-mac.cpp index 7864fb76d160..bdc389516289 100644 --- a/clang/lib/DirectoryWatcher/mac/DirectoryWatcher-mac.cpp +++ b/clang/lib/DirectoryWatcher/mac/DirectoryWatcher-mac.cpp @@ -14,10 +14,13 @@ #include "llvm/Support/Error.h" #include "llvm/Support/Path.h" #include <CoreServices/CoreServices.h> +#include <TargetConditionals.h> using namespace llvm; using namespace clang; +#if TARGET_OS_OSX + static void stopFSEventStream(FSEventStreamRef); namespace { @@ -249,3 +252,17 @@ llvm::Expected<std::unique_ptr<DirectoryWatcher>> clang::DirectoryWatcher::creat return Result; } + +#else // TARGET_OS_OSX + +llvm::Expected<std::unique_ptr<DirectoryWatcher>> +clang::DirectoryWatcher::create( + StringRef Path, + std::function<void(llvm::ArrayRef<DirectoryWatcher::Event>, bool)> Receiver, + bool WaitForInitialSync) { + return llvm::make_error<llvm::StringError>( + "DirectoryWatcher is not implemented for this platform!", + llvm::inconvertibleErrorCode()); +} + +#endif // TARGET_OS_OSX _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits