aboutsummaryrefslogtreecommitdiff
path: root/lib/cmake/lld
diff options
context:
space:
mode:
Diffstat (limited to 'lib/cmake/lld')
-rw-r--r--lib/cmake/lld/LLDConfig.cmake18
-rw-r--r--lib/cmake/lld/LLDTargets-release.cmake128
-rw-r--r--lib/cmake/lld/LLDTargets.cmake188
3 files changed, 334 insertions, 0 deletions
diff --git a/lib/cmake/lld/LLDConfig.cmake b/lib/cmake/lld/LLDConfig.cmake
new file mode 100644
index 0000000..f0d140d
--- /dev/null
+++ b/lib/cmake/lld/LLDConfig.cmake
@@ -0,0 +1,18 @@
+# This file allows users to call find_package(LLD) and pick up our targets.
+
+
+# Compute the installation prefix from this LLVMConfig.cmake file location.
+get_filename_component(LLD_INSTALL_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
+get_filename_component(LLD_INSTALL_PREFIX "${LLD_INSTALL_PREFIX}" PATH)
+get_filename_component(LLD_INSTALL_PREFIX "${LLD_INSTALL_PREFIX}" PATH)
+get_filename_component(LLD_INSTALL_PREFIX "${LLD_INSTALL_PREFIX}" PATH)
+
+find_package(LLVM REQUIRED CONFIG
+ HINTS "${LLD_INSTALL_PREFIX}/lib/cmake/llvm")
+
+set(LLD_EXPORTED_TARGETS "lldCommon;lldCore;lldDriver;lldMachO;lldYAML;lldReaderWriter;lld;lldCOFF;lldELF;lldMachO2;lldMinGW;lldWasm")
+set(LLD_CMAKE_DIR "${LLD_INSTALL_PREFIX}/lib/cmake/lld")
+set(LLD_INCLUDE_DIRS "${LLD_INSTALL_PREFIX}/include")
+
+# Provide all our library targets to users.
+include("${LLD_CMAKE_DIR}/LLDTargets.cmake")
diff --git a/lib/cmake/lld/LLDTargets-release.cmake b/lib/cmake/lld/LLDTargets-release.cmake
new file mode 100644
index 0000000..69cd78b
--- /dev/null
+++ b/lib/cmake/lld/LLDTargets-release.cmake
@@ -0,0 +1,128 @@
+#----------------------------------------------------------------
+# Generated CMake target import file for configuration "Release".
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Import target "lldCommon" for configuration "Release"
+set_property(TARGET lldCommon APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(lldCommon PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/liblldCommon.a"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS lldCommon )
+list(APPEND _IMPORT_CHECK_FILES_FOR_lldCommon "${_IMPORT_PREFIX}/lib/liblldCommon.a" )
+
+# Import target "lldCore" for configuration "Release"
+set_property(TARGET lldCore APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(lldCore PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/liblldCore.a"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS lldCore )
+list(APPEND _IMPORT_CHECK_FILES_FOR_lldCore "${_IMPORT_PREFIX}/lib/liblldCore.a" )
+
+# Import target "lldDriver" for configuration "Release"
+set_property(TARGET lldDriver APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(lldDriver PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/liblldDriver.a"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS lldDriver )
+list(APPEND _IMPORT_CHECK_FILES_FOR_lldDriver "${_IMPORT_PREFIX}/lib/liblldDriver.a" )
+
+# Import target "lldMachO" for configuration "Release"
+set_property(TARGET lldMachO APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(lldMachO PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/liblldMachO.a"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS lldMachO )
+list(APPEND _IMPORT_CHECK_FILES_FOR_lldMachO "${_IMPORT_PREFIX}/lib/liblldMachO.a" )
+
+# Import target "lldYAML" for configuration "Release"
+set_property(TARGET lldYAML APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(lldYAML PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/liblldYAML.a"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS lldYAML )
+list(APPEND _IMPORT_CHECK_FILES_FOR_lldYAML "${_IMPORT_PREFIX}/lib/liblldYAML.a" )
+
+# Import target "lldReaderWriter" for configuration "Release"
+set_property(TARGET lldReaderWriter APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(lldReaderWriter PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/liblldReaderWriter.a"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS lldReaderWriter )
+list(APPEND _IMPORT_CHECK_FILES_FOR_lldReaderWriter "${_IMPORT_PREFIX}/lib/liblldReaderWriter.a" )
+
+# Import target "lld" for configuration "Release"
+set_property(TARGET lld APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(lld PROPERTIES
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/bin/lld"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS lld )
+list(APPEND _IMPORT_CHECK_FILES_FOR_lld "${_IMPORT_PREFIX}/bin/lld" )
+
+# Import target "lldCOFF" for configuration "Release"
+set_property(TARGET lldCOFF APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(lldCOFF PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/liblldCOFF.a"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS lldCOFF )
+list(APPEND _IMPORT_CHECK_FILES_FOR_lldCOFF "${_IMPORT_PREFIX}/lib/liblldCOFF.a" )
+
+# Import target "lldELF" for configuration "Release"
+set_property(TARGET lldELF APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(lldELF PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/liblldELF.a"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS lldELF )
+list(APPEND _IMPORT_CHECK_FILES_FOR_lldELF "${_IMPORT_PREFIX}/lib/liblldELF.a" )
+
+# Import target "lldMachO2" for configuration "Release"
+set_property(TARGET lldMachO2 APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(lldMachO2 PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/liblldMachO2.a"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS lldMachO2 )
+list(APPEND _IMPORT_CHECK_FILES_FOR_lldMachO2 "${_IMPORT_PREFIX}/lib/liblldMachO2.a" )
+
+# Import target "lldMinGW" for configuration "Release"
+set_property(TARGET lldMinGW APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(lldMinGW PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/liblldMinGW.a"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS lldMinGW )
+list(APPEND _IMPORT_CHECK_FILES_FOR_lldMinGW "${_IMPORT_PREFIX}/lib/liblldMinGW.a" )
+
+# Import target "lldWasm" for configuration "Release"
+set_property(TARGET lldWasm APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+set_target_properties(lldWasm PROPERTIES
+ IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
+ IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/liblldWasm.a"
+ )
+
+list(APPEND _IMPORT_CHECK_TARGETS lldWasm )
+list(APPEND _IMPORT_CHECK_FILES_FOR_lldWasm "${_IMPORT_PREFIX}/lib/liblldWasm.a" )
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
diff --git a/lib/cmake/lld/LLDTargets.cmake b/lib/cmake/lld/LLDTargets.cmake
new file mode 100644
index 0000000..0d02736
--- /dev/null
+++ b/lib/cmake/lld/LLDTargets.cmake
@@ -0,0 +1,188 @@
+# Generated by CMake
+
+if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.5)
+ message(FATAL_ERROR "CMake >= 2.6.0 required")
+endif()
+cmake_policy(PUSH)
+cmake_policy(VERSION 2.6...3.17)
+#----------------------------------------------------------------
+# Generated CMake target import file.
+#----------------------------------------------------------------
+
+# Commands may need to know the format version.
+set(CMAKE_IMPORT_FILE_VERSION 1)
+
+# Protect against multiple inclusion, which would fail when already imported targets are added once more.
+set(_targetsDefined)
+set(_targetsNotDefined)
+set(_expectedTargets)
+foreach(_expectedTarget lldCommon lldCore lldDriver lldMachO lldYAML lldReaderWriter lld lldCOFF lldELF lldMachO2 lldMinGW lldWasm)
+ list(APPEND _expectedTargets ${_expectedTarget})
+ if(NOT TARGET ${_expectedTarget})
+ list(APPEND _targetsNotDefined ${_expectedTarget})
+ endif()
+ if(TARGET ${_expectedTarget})
+ list(APPEND _targetsDefined ${_expectedTarget})
+ endif()
+endforeach()
+if("${_targetsDefined}" STREQUAL "${_expectedTargets}")
+ unset(_targetsDefined)
+ unset(_targetsNotDefined)
+ unset(_expectedTargets)
+ set(CMAKE_IMPORT_FILE_VERSION)
+ cmake_policy(POP)
+ return()
+endif()
+if(NOT "${_targetsDefined}" STREQUAL "")
+ message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_targetsDefined}\nTargets not yet defined: ${_targetsNotDefined}\n")
+endif()
+unset(_targetsDefined)
+unset(_targetsNotDefined)
+unset(_expectedTargets)
+
+
+# Compute the installation prefix relative to this file.
+get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
+if(_IMPORT_PREFIX STREQUAL "/")
+ set(_IMPORT_PREFIX "")
+endif()
+
+# Create imported target lldCommon
+add_library(lldCommon STATIC IMPORTED)
+
+set_target_properties(lldCommon PROPERTIES
+ INTERFACE_LINK_LIBRARIES "-lpthread;LLVMCodeGen;LLVMCore;LLVMDebugInfoDWARF;LLVMDemangle;LLVMMC;LLVMOption;LLVMSupport;LLVMTarget"
+)
+
+# Create imported target lldCore
+add_library(lldCore STATIC IMPORTED)
+
+set_target_properties(lldCore PROPERTIES
+ INTERFACE_LINK_LIBRARIES "-lpthread;LLVMBinaryFormat;LLVMMC;LLVMSupport"
+)
+
+# Create imported target lldDriver
+add_library(lldDriver STATIC IMPORTED)
+
+set_target_properties(lldDriver PROPERTIES
+ INTERFACE_LINK_LIBRARIES "lldCommon;lldCore;lldMachO;lldReaderWriter;lldYAML;LLVMOption;LLVMSupport"
+)
+
+# Create imported target lldMachO
+add_library(lldMachO STATIC IMPORTED)
+
+set_target_properties(lldMachO PROPERTIES
+ INTERFACE_LINK_LIBRARIES "lldCommon;lldCore;lldYAML;-lpthread;LLVMDebugInfoDWARF;LLVMDemangle;LLVMObject;LLVMSupport;LLVMTextAPI"
+)
+
+# Create imported target lldYAML
+add_library(lldYAML STATIC IMPORTED)
+
+set_target_properties(lldYAML PROPERTIES
+ INTERFACE_LINK_LIBRARIES "lldCore;LLVMSupport"
+)
+
+# Create imported target lldReaderWriter
+add_library(lldReaderWriter STATIC IMPORTED)
+
+set_target_properties(lldReaderWriter PROPERTIES
+ INTERFACE_LINK_LIBRARIES "lldCore;LLVMObject;LLVMSupport"
+)
+
+# Create imported target lld
+add_executable(lld IMPORTED)
+set_property(TARGET lld PROPERTY ENABLE_EXPORTS 1)
+
+# Create imported target lldCOFF
+add_library(lldCOFF STATIC IMPORTED)
+
+set_target_properties(lldCOFF PROPERTIES
+ INTERFACE_LINK_LIBRARIES "lldCommon;-lpthread;LLVMARMCodeGen;LLVMARMAsmParser;LLVMARMDesc;LLVMARMDisassembler;LLVMARMInfo;LLVMARMUtils;LLVMAArch64CodeGen;LLVMAArch64AsmParser;LLVMAArch64Desc;LLVMAArch64Disassembler;LLVMAArch64Info;LLVMAArch64Utils;LLVMX86CodeGen;LLVMX86AsmParser;LLVMX86Desc;LLVMX86Disassembler;LLVMX86Info;LLVMBinaryFormat;LLVMCore;LLVMDebugInfoCodeView;LLVMDebugInfoDWARF;LLVMDebugInfoMSF;LLVMDebugInfoPDB;LLVMDemangle;LLVMLibDriver;LLVMLTO;LLVMMC;LLVMObject;LLVMOption;LLVMPasses;LLVMSupport;LLVMWindowsManifest"
+)
+
+# Create imported target lldELF
+add_library(lldELF STATIC IMPORTED)
+
+set_target_properties(lldELF PROPERTIES
+ INTERFACE_LINK_LIBRARIES "lldCommon;-lpthread;LLVMARMCodeGen;LLVMARMAsmParser;LLVMARMDesc;LLVMARMDisassembler;LLVMARMInfo;LLVMARMUtils;LLVMAArch64CodeGen;LLVMAArch64AsmParser;LLVMAArch64Desc;LLVMAArch64Disassembler;LLVMAArch64Info;LLVMAArch64Utils;LLVMX86CodeGen;LLVMX86AsmParser;LLVMX86Desc;LLVMX86Disassembler;LLVMX86Info;LLVMBinaryFormat;LLVMBitWriter;LLVMCore;LLVMDebugInfoDWARF;LLVMDemangle;LLVMLTO;LLVMMC;LLVMObject;LLVMOption;LLVMPasses;LLVMSupport"
+)
+
+# Create imported target lldMachO2
+add_library(lldMachO2 STATIC IMPORTED)
+
+set_target_properties(lldMachO2 PROPERTIES
+ INTERFACE_LINK_LIBRARIES "lldCommon;-lpthread;LLVMARMCodeGen;LLVMARMAsmParser;LLVMARMDesc;LLVMARMDisassembler;LLVMARMInfo;LLVMARMUtils;LLVMAArch64CodeGen;LLVMAArch64AsmParser;LLVMAArch64Desc;LLVMAArch64Disassembler;LLVMAArch64Info;LLVMAArch64Utils;LLVMX86CodeGen;LLVMX86AsmParser;LLVMX86Desc;LLVMX86Disassembler;LLVMX86Info;LLVMBinaryFormat;LLVMCore;LLVMDebugInfoDWARF;LLVMLTO;LLVMMC;LLVMObject;LLVMOption;LLVMPasses;LLVMSupport;LLVMTextAPI"
+)
+
+# Create imported target lldMinGW
+add_library(lldMinGW STATIC IMPORTED)
+
+set_target_properties(lldMinGW PROPERTIES
+ INTERFACE_LINK_LIBRARIES "lldCOFF;lldCommon;LLVMOption;LLVMSupport"
+)
+
+# Create imported target lldWasm
+add_library(lldWasm STATIC IMPORTED)
+
+set_target_properties(lldWasm PROPERTIES
+ INTERFACE_LINK_LIBRARIES "lldCommon;LLVMARMCodeGen;LLVMARMAsmParser;LLVMARMDesc;LLVMARMDisassembler;LLVMARMInfo;LLVMARMUtils;LLVMAArch64CodeGen;LLVMAArch64AsmParser;LLVMAArch64Desc;LLVMAArch64Disassembler;LLVMAArch64Info;LLVMAArch64Utils;LLVMX86CodeGen;LLVMX86AsmParser;LLVMX86Desc;LLVMX86Disassembler;LLVMX86Info;LLVMBinaryFormat;LLVMCore;LLVMDemangle;LLVMLTO;LLVMMC;LLVMObject;LLVMOption;LLVMPasses;LLVMSupport"
+)
+
+if(CMAKE_VERSION VERSION_LESS 2.8.12)
+ message(FATAL_ERROR "This file relies on consumers using CMake 2.8.12 or greater.")
+endif()
+
+# Load information for each installed configuration.
+get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
+file(GLOB CONFIG_FILES "${_DIR}/LLDTargets-*.cmake")
+foreach(f ${CONFIG_FILES})
+ include(${f})
+endforeach()
+
+# Cleanup temporary variables.
+set(_IMPORT_PREFIX)
+
+# Loop over all imported files and verify that they actually exist
+foreach(target ${_IMPORT_CHECK_TARGETS} )
+ foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} )
+ if(NOT EXISTS "${file}" )
+ message(FATAL_ERROR "The imported target \"${target}\" references the file
+ \"${file}\"
+but this file does not exist. Possible reasons include:
+* The file was deleted, renamed, or moved to another location.
+* An install or uninstall procedure did not complete successfully.
+* The installation package was faulty and contained
+ \"${CMAKE_CURRENT_LIST_FILE}\"
+but not all the files it references.
+")
+ endif()
+ endforeach()
+ unset(_IMPORT_CHECK_FILES_FOR_${target})
+endforeach()
+unset(_IMPORT_CHECK_TARGETS)
+
+# Make sure the targets which have been exported in some other
+# export set exist.
+unset(${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets)
+foreach(_target "LLVMCodeGen" "LLVMCore" "LLVMDebugInfoDWARF" "LLVMDemangle" "LLVMMC" "LLVMOption" "LLVMSupport" "LLVMTarget" "LLVMBinaryFormat" "LLVMObject" "LLVMTextAPI" "LLVMARMCodeGen" "LLVMARMAsmParser" "LLVMARMDesc" "LLVMARMDisassembler" "LLVMARMInfo" "LLVMARMUtils" "LLVMAArch64CodeGen" "LLVMAArch64AsmParser" "LLVMAArch64Desc" "LLVMAArch64Disassembler" "LLVMAArch64Info" "LLVMAArch64Utils" "LLVMX86CodeGen" "LLVMX86AsmParser" "LLVMX86Desc" "LLVMX86Disassembler" "LLVMX86Info" "LLVMDebugInfoCodeView" "LLVMDebugInfoMSF" "LLVMDebugInfoPDB" "LLVMLibDriver" "LLVMLTO" "LLVMPasses" "LLVMWindowsManifest" "LLVMBitWriter" )
+ if(NOT TARGET "${_target}" )
+ set(${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets "${${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets} ${_target}")
+ endif()
+endforeach()
+
+if(DEFINED ${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets)
+ if(CMAKE_FIND_PACKAGE_NAME)
+ set( ${CMAKE_FIND_PACKAGE_NAME}_FOUND FALSE)
+ set( ${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE "The following imported targets are referenced, but are missing: ${${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets}")
+ else()
+ message(FATAL_ERROR "The following imported targets are referenced, but are missing: ${${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets}")
+ endif()
+endif()
+unset(${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE_targets)
+
+# Commands beyond this point should not need to know the version.
+set(CMAKE_IMPORT_FILE_VERSION)
+cmake_policy(POP)