diff options
| author | Andrew Kelley <superjoe30@gmail.com> | 2017-03-13 11:54:56 -0400 |
|---|---|---|
| committer | Andrew Kelley <superjoe30@gmail.com> | 2017-03-13 11:54:56 -0400 |
| commit | d10bbd28e9576d000f04ac6d06c2a8493ffc72ef (patch) | |
| tree | 9cee12ed88ec066c81567e021e2bb764c0eb2d32 /cmake | |
| parent | 7bc0145b802002c38a409dd9fe0b297c8af82391 (diff) | |
| download | zig-d10bbd28e9576d000f04ac6d06c2a8493ffc72ef.tar.gz zig-d10bbd28e9576d000f04ac6d06c2a8493ffc72ef.zip | |
use lld instead of system linker
Diffstat (limited to 'cmake')
| -rw-r--r-- | cmake/Findclang.cmake | 2 | ||||
| -rw-r--r-- | cmake/Findlld.cmake | 38 |
2 files changed, 39 insertions, 1 deletions
diff --git a/cmake/Findclang.cmake b/cmake/Findclang.cmake index 27f1b6df6b..f72f10f817 100644 --- a/cmake/Findclang.cmake +++ b/cmake/Findclang.cmake @@ -11,7 +11,7 @@ find_path(CLANG_INCLUDE_DIRS NAMES clang/Frontend/ASTUnit.h /usr/lib/llvm-4/include /mingw64/include) -macro(FIND_AND_ADD_CLANG_LIB _libname_) + macro(FIND_AND_ADD_CLANG_LIB _libname_) string(TOUPPER ${_libname_} _prettylibname_) find_library(CLANG_${_prettylibname_}_LIB NAMES ${_libname_} PATHS diff --git a/cmake/Findlld.cmake b/cmake/Findlld.cmake new file mode 100644 index 0000000000..e74e8acf60 --- /dev/null +++ b/cmake/Findlld.cmake @@ -0,0 +1,38 @@ +# Copyright (c) 2017 Andrew Kelley +# This file is MIT licensed. +# See http://opensource.org/licenses/MIT + +# LLD_FOUND +# LLD_INCLUDE_DIRS +# LLD_LIBRARIES + +find_path(LLD_INCLUDE_DIRS NAMES lld/Driver/Driver.h + PATHS + /usr/lib/llvm-4/include + /mingw64/include) + + macro(FIND_AND_ADD_LLD_LIB _libname_) + string(TOUPPER ${_libname_} _prettylibname_) + find_library(LLD_${_prettylibname_}_LIB NAMES ${_libname_} + PATHS + /usr/lib/llvm-4/lib + /mingw64/lib) + if(LLD_${_prettylibname_}_LIB) + set(LLD_LIBRARIES ${LLD_LIBRARIES} ${LLD_${_prettylibname_}_LIB}) + endif() +endmacro(FIND_AND_ADD_LLD_LIB) + +FIND_AND_ADD_LLD_LIB(lldDriver) +FIND_AND_ADD_LLD_LIB(lldELF) +FIND_AND_ADD_LLD_LIB(lldCOFF) +FIND_AND_ADD_LLD_LIB(lldMachO) +FIND_AND_ADD_LLD_LIB(lldReaderWriter) +FIND_AND_ADD_LLD_LIB(lldCore) +FIND_AND_ADD_LLD_LIB(lldYAML) +FIND_AND_ADD_LLD_LIB(lldConfig) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(LLD DEFAULT_MSG LLD_LIBRARIES LLD_INCLUDE_DIRS) + +mark_as_advanced(LLD_INCLUDE_DIRS LLD_LIBRARIES) + |
