Findlld.cmake (2075B) - Raw
1 # Copyright (c) 2017 Andrew Kelley 2 # This file is MIT licensed. 3 # See http://opensource.org/licenses/MIT 4 5 # LLD_FOUND 6 # LLD_INCLUDE_DIRS 7 # LLD_LIBRARIES 8 9 find_path(LLD_INCLUDE_DIRS NAMES lld/Common/Driver.h 10 HINTS ${LLVM_INCLUDE_DIRS} 11 PATHS 12 /usr/lib/llvm-20/include 13 /usr/local/llvm200/include 14 /usr/local/llvm20/include 15 /usr/local/opt/lld@20/include 16 /opt/homebrew/opt/lld@20/include 17 /home/linuxbrew/.linuxbrew/opt/lld@20/include 18 /mingw64/include) 19 20 find_library(LLD_LIBRARY NAMES lld-20.0 lld200 lld NAMES_PER_DIR 21 HINTS ${LLVM_LIBDIRS} 22 PATHS 23 /usr/lib/llvm-20/lib 24 /usr/local/llvm200/lib 25 /usr/local/llvm20/lib 26 /usr/local/opt/lld@20/lib 27 /opt/homebrew/opt/lld@20/lib 28 /home/linuxbrew/.linuxbrew/opt/lld@20/lib 29 ) 30 if(EXISTS ${LLD_LIBRARY}) 31 set(LLD_LIBRARIES ${LLD_LIBRARY}) 32 else() 33 macro(FIND_AND_ADD_LLD_LIB _libname_) 34 string(TOUPPER ${_libname_} _prettylibname_) 35 find_library(LLD_${_prettylibname_}_LIB NAMES ${_libname_} NAMES_PER_DIR 36 HINTS ${LLVM_LIBDIRS} 37 PATHS 38 ${LLD_LIBDIRS} 39 /usr/lib/llvm-20/lib 40 /usr/local/llvm200/lib 41 /usr/local/llvm20/lib 42 /usr/local/opt/lld@20/lib 43 /opt/homebrew/opt/lld@20/lib 44 /home/linuxbrew/.linuxbrew/opt/lld@20/lib 45 /mingw64/lib 46 /c/msys64/mingw64/lib 47 c:/msys64/mingw64/lib) 48 if(LLD_${_prettylibname_}_LIB) 49 set(LLD_LIBRARIES ${LLD_LIBRARIES} ${LLD_${_prettylibname_}_LIB}) 50 endif() 51 endmacro(FIND_AND_ADD_LLD_LIB) 52 53 FIND_AND_ADD_LLD_LIB(lldMinGW) 54 FIND_AND_ADD_LLD_LIB(lldELF) 55 FIND_AND_ADD_LLD_LIB(lldCOFF) 56 FIND_AND_ADD_LLD_LIB(lldWasm) 57 FIND_AND_ADD_LLD_LIB(lldMachO) 58 FIND_AND_ADD_LLD_LIB(lldCommon) 59 endif() 60 61 include(FindPackageHandleStandardArgs) 62 find_package_handle_standard_args(lld DEFAULT_MSG LLD_LIBRARIES LLD_INCLUDE_DIRS) 63 64 mark_as_advanced(LLD_INCLUDE_DIRS LLD_LIBRARIES)