zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

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)