From: Jan Korous Date: Tue, 13 Aug 2019 22:39:26 +0000 (+0000) Subject: [clang] DirectoryWatcher for Windows stubs (to fix build break). X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fe84bb498deda8b53069ff5f596f3c00a0d84189;p=clang [clang] DirectoryWatcher for Windows stubs (to fix build break). This is just a code skeleton for DirectoryWatcher-windows.cpp so the build on Windows stops breaking. (upstreamed from github.com/apple/swift-clang) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@368761 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/DirectoryWatcher/CMakeLists.txt b/lib/DirectoryWatcher/CMakeLists.txt index d7fa9c5bc2..5a87969821 100644 --- a/lib/DirectoryWatcher/CMakeLists.txt +++ b/lib/DirectoryWatcher/CMakeLists.txt @@ -17,6 +17,8 @@ elseif(CMAKE_SYSTEM_NAME MATCHES "Linux") list(APPEND DIRECTORY_WATCHER_SOURCES linux/DirectoryWatcher-linux.cpp) find_package(Threads REQUIRED) endif() +elseif(CMAKE_SYSTEM_NAME MATCHES "Windows") + list(APPEND DIRECTORY_WATCHER_SOURCES windows/DirectoryWatcher-windows.cpp) else() list(APPEND DIRECTORY_WATCHER_SOURCES default/DirectoryWatcher-not-implemented.cpp) endif() diff --git a/lib/DirectoryWatcher/windows/DirectoryWatcher-windows.cpp b/lib/DirectoryWatcher/windows/DirectoryWatcher-windows.cpp new file mode 100644 index 0000000000..6a12715592 --- /dev/null +++ b/lib/DirectoryWatcher/windows/DirectoryWatcher-windows.cpp @@ -0,0 +1,48 @@ +//===- DirectoryWatcher-windows.cpp - Windows-platform directory watching -===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// TODO: This is not yet an implementation, but it will make it so Windows +// builds don't fail. + +#include "DirectoryScanner.h" +#include "clang/DirectoryWatcher/DirectoryWatcher.h" + +#include "llvm/ADT/STLExtras.h" +#include "llvm/ADT/ScopeExit.h" +#include "llvm/Support/AlignOf.h" +#include "llvm/Support/Errno.h" +#include "llvm/Support/Mutex.h" +#include "llvm/Support/Path.h" +#include +#include +#include +#include +#include +#include +#include + +namespace { + +using namespace llvm; +using namespace clang; + +class DirectoryWatcherWindows : public clang::DirectoryWatcher { +public: + ~DirectoryWatcherWindows() override { } + void InitialScan() { } + void EventReceivingLoop() { } + void StopWork() { } +}; +} // namespace + +std::unique_ptr clang::DirectoryWatcher::create( + StringRef Path, + std::function, bool)> Receiver, + bool WaitForInitialSync) { + return nullptr; +}