diff --git a/llvm/include/llvm/Support/HTTPClient.h b/llvm/include/llvm/Debuginfod/HTTPClient.h rename from llvm/include/llvm/Support/HTTPClient.h rename to llvm/include/llvm/Debuginfod/HTTPClient.h diff --git a/llvm/lib/Debuginfod/CMakeLists.txt b/llvm/lib/Debuginfod/CMakeLists.txt --- a/llvm/lib/Debuginfod/CMakeLists.txt +++ b/llvm/lib/Debuginfod/CMakeLists.txt @@ -1,9 +1,20 @@ +# Link LibCURL if the user wants it +if (LLVM_ENABLE_CURL) + set(imported_libs ${CURL_LIBRARIES}) +endif() + add_llvm_component_library(LLVMDebuginfod Debuginfod.cpp + HTTPClient.cpp ADDITIONAL_HEADER_DIRS ${LLVM_MAIN_INCLUDE_DIR}/llvm/Debuginfod + LINK_LIBS + ${imported_libs} + LINK_COMPONENTS Support ) + +set(llvm_system_libs ${system_libs}) diff --git a/llvm/lib/Debuginfod/Debuginfod.cpp b/llvm/lib/Debuginfod/Debuginfod.cpp --- a/llvm/lib/Debuginfod/Debuginfod.cpp +++ b/llvm/lib/Debuginfod/Debuginfod.cpp @@ -18,11 +18,11 @@ #include "llvm/Debuginfod/Debuginfod.h" #include "llvm/ADT/StringRef.h" +#include "llvm/Debuginfod/HTTPClient.h" #include "llvm/Support/CachePruning.h" #include "llvm/Support/Caching.h" #include "llvm/Support/Error.h" #include "llvm/Support/FileUtilities.h" -#include "llvm/Support/HTTPClient.h" #include "llvm/Support/xxhash.h" namespace llvm { diff --git a/llvm/lib/Support/HTTPClient.cpp b/llvm/lib/Debuginfod/HTTPClient.cpp rename from llvm/lib/Support/HTTPClient.cpp rename to llvm/lib/Debuginfod/HTTPClient.cpp --- a/llvm/lib/Support/HTTPClient.cpp +++ b/llvm/lib/Debuginfod/HTTPClient.cpp @@ -1,4 +1,4 @@ -//===-- llvm/Support/HTTPClient.cpp - HTTP client library -------*- C++ -*-===// +//===-- llvm/Debuginfod/HTTPClient.cpp - HTTP client library ----*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. @@ -13,7 +13,7 @@ /// //===----------------------------------------------------------------------===// -#include "llvm/Support/HTTPClient.h" +#include "llvm/Debuginfod/HTTPClient.h" #include "llvm/ADT/APInt.h" #include "llvm/ADT/StringRef.h" #include "llvm/Support/Errc.h" diff --git a/llvm/lib/Support/CMakeLists.txt b/llvm/lib/Support/CMakeLists.txt --- a/llvm/lib/Support/CMakeLists.txt +++ b/llvm/lib/Support/CMakeLists.txt @@ -74,11 +74,6 @@ set(system_libs ${system_libs} ${Z3_LIBRARIES}) endif() -# Link LibCURL if the user wants it -if (LLVM_ENABLE_CURL) - set(system_libs ${system_libs} ${CURL_LIBRARIES}) -endif() - # Override the C runtime allocator on Windows and embed it into LLVM tools & libraries if(LLVM_INTEGRATED_CRT_ALLOC) if (CMAKE_BUILD_TYPE AND NOT ${LLVM_USE_CRT_${uppercase_CMAKE_BUILD_TYPE}} MATCHES "^(MT|MTd)$") @@ -160,7 +155,6 @@ GlobPattern.cpp GraphWriter.cpp Hashing.cpp - HTTPClient.cpp InitLLVM.cpp InstructionCost.cpp IntEqClasses.cpp diff --git a/llvm/lib/Support/InitLLVM.cpp b/llvm/lib/Support/InitLLVM.cpp --- a/llvm/lib/Support/InitLLVM.cpp +++ b/llvm/lib/Support/InitLLVM.cpp @@ -8,7 +8,6 @@ #include "llvm/Support/InitLLVM.h" #include "llvm/Support/Error.h" -#include "llvm/Support/HTTPClient.h" #include "llvm/Support/ManagedStatic.h" #include "llvm/Support/PrettyStackTrace.h" #include "llvm/Support/Process.h" @@ -59,11 +58,6 @@ Argc = Args.size() - 1; Argv = Args.data(); #endif - - HTTPClient::initialize(); } -InitLLVM::~InitLLVM() { - HTTPClient::cleanup(); - llvm_shutdown(); -} +InitLLVM::~InitLLVM() { llvm_shutdown(); } diff --git a/llvm/unittests/Debuginfod/CMakeLists.txt b/llvm/unittests/Debuginfod/CMakeLists.txt --- a/llvm/unittests/Debuginfod/CMakeLists.txt +++ b/llvm/unittests/Debuginfod/CMakeLists.txt @@ -3,6 +3,7 @@ ) add_llvm_unittest(DebuginfodTests + HTTPClientTests.cpp DebuginfodTests.cpp ) diff --git a/llvm/unittests/Debuginfod/DebuginfodTests.cpp b/llvm/unittests/Debuginfod/DebuginfodTests.cpp --- a/llvm/unittests/Debuginfod/DebuginfodTests.cpp +++ b/llvm/unittests/Debuginfod/DebuginfodTests.cpp @@ -1,4 +1,4 @@ -//===-- llvm/unittest/Support/DebuginfodTests.cpp - unit tests --*- C++ -*-===// +//===-- llvm/unittest/Support/DebuginfodTests.cpp - unit tests ------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. @@ -7,8 +7,8 @@ //===----------------------------------------------------------------------===// #include "llvm/Debuginfod/Debuginfod.h" +#include "llvm/Debuginfod/HTTPClient.h" #include "llvm/Support/FileSystem.h" -#include "llvm/Support/HTTPClient.h" #include "llvm/Support/Path.h" #include "llvm/Testing/Support/Error.h" #include "gtest/gtest.h" diff --git a/llvm/unittests/Support/HTTPClient.cpp b/llvm/unittests/Debuginfod/HTTPClientTests.cpp rename from llvm/unittests/Support/HTTPClient.cpp rename to llvm/unittests/Debuginfod/HTTPClientTests.cpp --- a/llvm/unittests/Support/HTTPClient.cpp +++ b/llvm/unittests/Debuginfod/HTTPClientTests.cpp @@ -1,4 +1,4 @@ -//===-- llvm/unittest/Support/HTTPClient.cpp - unit tests -------*- C++ -*-===// +//===-- llvm/unittest/Debuginfod/HTTPClientTests.cpp - unit tests ---------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. @@ -6,7 +6,7 @@ // //===----------------------------------------------------------------------===// -#include "llvm/Support/HTTPClient.h" +#include "llvm/Debuginfod/HTTPClient.h" #include "llvm/Support/Errc.h" #include "llvm/Testing/Support/Error.h" #include "gtest/gtest.h" diff --git a/llvm/unittests/Support/CMakeLists.txt b/llvm/unittests/Support/CMakeLists.txt --- a/llvm/unittests/Support/CMakeLists.txt +++ b/llvm/unittests/Support/CMakeLists.txt @@ -41,7 +41,6 @@ GlobPatternTest.cpp HashBuilderTest.cpp Host.cpp - HTTPClient.cpp IndexedAccessorTest.cpp InstructionCostTest.cpp ItaniumManglingCanonicalizerTest.cpp