[MacPorts] #58042: port request: lld

MacPorts noreply at macports.org
Thu Mar 25 21:13:13 UTC 2021


#58042: port request: lld
------------------------+--------------------
  Reporter:  saagarjha  |      Owner:  (none)
      Type:  request    |     Status:  new
  Priority:  Normal     |  Milestone:
 Component:  ports      |    Version:
Resolution:             |   Keywords:
      Port:             |
------------------------+--------------------

Comment (by kencu):

 {{{
 $ port contents clang-11 | grep lld
   /opt/local/bin/ld.lld-mp-11
   /opt/local/bin/ld64.lld-mp-11
   /opt/local/bin/lld-link-mp-11
   /opt/local/bin/lld-mp-11
   /opt/local/libexec/llvm-11/bin/ld.lld
   /opt/local/libexec/llvm-11/bin/ld64.lld
   /opt/local/libexec/llvm-11/bin/lld
   /opt/local/libexec/llvm-11/bin/lld-link
   /opt/local/libexec/llvm-11/include/lld/Common/Args.h
   /opt/local/libexec/llvm-11/include/lld/Common/DWARF.h
   /opt/local/libexec/llvm-11/include/lld/Common/Driver.h
   /opt/local/libexec/llvm-11/include/lld/Common/ErrorHandler.h
   /opt/local/libexec/llvm-11/include/lld/Common/Filesystem.h
   /opt/local/libexec/llvm-11/include/lld/Common/LLVM.h
   /opt/local/libexec/llvm-11/include/lld/Common/Memory.h
   /opt/local/libexec/llvm-11/include/lld/Common/Reproduce.h
   /opt/local/libexec/llvm-11/include/lld/Common/Strings.h
 /opt/local/libexec/llvm-11/include/lld/Common/TargetOptionsCommandFlags.h
   /opt/local/libexec/llvm-11/include/lld/Common/Timer.h
   /opt/local/libexec/llvm-11/include/lld/Common/Version.h
   /opt/local/libexec/llvm-11/include/lld/Core/AbsoluteAtom.h
   /opt/local/libexec/llvm-11/include/lld/Core/ArchiveLibraryFile.h
   /opt/local/libexec/llvm-11/include/lld/Core/Atom.h
   /opt/local/libexec/llvm-11/include/lld/Core/DefinedAtom.h
   /opt/local/libexec/llvm-11/include/lld/Core/Error.h
   /opt/local/libexec/llvm-11/include/lld/Core/File.h
   /opt/local/libexec/llvm-11/include/lld/Core/Instrumentation.h
   /opt/local/libexec/llvm-11/include/lld/Core/LinkingContext.h
   /opt/local/libexec/llvm-11/include/lld/Core/Node.h
   /opt/local/libexec/llvm-11/include/lld/Core/Pass.h
   /opt/local/libexec/llvm-11/include/lld/Core/PassManager.h
   /opt/local/libexec/llvm-11/include/lld/Core/Reader.h
   /opt/local/libexec/llvm-11/include/lld/Core/Reference.h
   /opt/local/libexec/llvm-11/include/lld/Core/Resolver.h
   /opt/local/libexec/llvm-11/include/lld/Core/SharedLibraryAtom.h
   /opt/local/libexec/llvm-11/include/lld/Core/SharedLibraryFile.h
   /opt/local/libexec/llvm-11/include/lld/Core/Simple.h
   /opt/local/libexec/llvm-11/include/lld/Core/SymbolTable.h
   /opt/local/libexec/llvm-11/include/lld/Core/UndefinedAtom.h
   /opt/local/libexec/llvm-11/include/lld/Core/Writer.h
 /opt/local/libexec/llvm-11/include/lld/ReaderWriter/MachOLinkingContext.h
   /opt/local/libexec/llvm-11/include/lld/ReaderWriter/YamlContext.h
   /opt/local/libexec/llvm-11/lib/cmake/lld/LLDConfig.cmake
   /opt/local/libexec/llvm-11/lib/cmake/lld/LLDTargets-release.cmake
   /opt/local/libexec/llvm-11/lib/cmake/lld/LLDTargets.cmake
   /opt/local/libexec/llvm-11/lib/liblldCOFF.a
   /opt/local/libexec/llvm-11/lib/liblldCommon.a
   /opt/local/libexec/llvm-11/lib/liblldCore.a
   /opt/local/libexec/llvm-11/lib/liblldDriver.a
   /opt/local/libexec/llvm-11/lib/liblldELF.a
   /opt/local/libexec/llvm-11/lib/liblldMachO.a
   /opt/local/libexec/llvm-11/lib/liblldMachO2.a
   /opt/local/libexec/llvm-11/lib/liblldMinGW.a
   /opt/local/libexec/llvm-11/lib/liblldReaderWriter.a
   /opt/local/libexec/llvm-11/lib/liblldWasm.a
   /opt/local/libexec/llvm-11/lib/liblldYAML.a
 }}}

 {{{
 $ /opt/local/bin/ld64.lld-mp-11
 OVERVIEW: LLVM Linker

 USAGE: /opt/local/libexec/llvm-11/bin/ld64.lld [options] file...

 BUNDLE EXECUTABLE OPTIONS:
   -bundle_loader <path> The executable that will be loading this Mach-O
 bundle

 DYLIB EXECUTABLE OPTIONS:
   -compatibility_version <version>
                        The dylib's compatibility version
   -current_version <version>
                        The dylib's current version
   -install_name <path> The dylib's install name
   -mark_dead_strippable_dylib
                        Marks the dylib as having no side effects during
 initialization

 LIBRARY OPTIONS:
   -all_load         Forces all members of all static libraries to be
 loaded
   -force_load <library-path>
                     Forces all members of specified static libraries to be
 loaded
   -F <dir>          Add directory to framework search path
   -L <dir>          Add directory to library search path
   -syslibroot <dir> Add path to SDK to all absolute library search paths

 MAIN EXECUTABLE OPTIONS:
   -export_dynamic     Preserves all global symbols in main executables
 during LTO
   -e <entry-name>     entry symbol name
   -no_pie             Do not create Position Independent Executable
   -pie                Create Position Independent Executable (for ASLR)
   -stack_size <value> Specifies the maximum stack size for the main thread
 in a program. Must be a page-size multiple. (default=8Mb)

 OBSOLETE OPTIONS:
   -multi_module       Unsupported way to build dylibs
   -objc_gc_compaction Unsupported ObjC GC option
   -objc_gc_only       Unsupported ObjC GC option
   -objc_gc            Unsupported ObjC GC option
   -single_module      Default for dylibs

 OPTIMIZATIONS:
   -data_in_code_info      Force generation of a data in code load command
   -dead_strip             Remove unreference code and data
   -exported_symbols_list <file-path>
                           Restricts which symbols will be exported
   -exported_symbol <symbol>
                           Restricts which symbols will be exported
   -flat_namespace         Resolves symbols in any (transitively) linked
 dynamic libraries. Source libraries are not recorded: dyld will re-search
 all images at runtime and use the first definition found.
   -function_starts        Force generation of a function starts load
 command
   -ios_simulator_version_min <version>
                           Minimum iOS simulator version
   -ios_version_min <version>
                           Minimum iOS version
   -keep_private_externs   Private extern (hidden) symbols should not be
 transformed into local symbols
   -macosx_version_min <version>
                           Minimum Mac OS X version
   -mllvm <option>         Options to pass to LLVM during LTO
   -no_data_in_code_info   Disable generation of a data in code load
 command
   -no_function_starts     Disable generation of a function starts load
 command
   -no_objc_category_merging
                           Disables the optimisation which merges
 Objective-C categories on a class in to the class itself.
   -no_version_load_command
                           Disable generation of a version load command
   -order_file <file-path> re-order and move specified symbols to start of
 their section
   -sdk_version <version>  SDK version
   -source_version <version>
                           Source version
   -twolevel_namespace     Resolves symbols in listed libraries only.
 Source libraries are recorded in the symbol table.
   -undefined <undefined>  Determines how undefined symbols are handled.
   -unexported_symbols_list <file-path>
                           Lists symbols that should not be exported
   -unexported_symbol <symbol>
                           A symbol which should not be exported
   -version_load_command   Force generation of a version load command

 OPTIONS:
   -arch <arch-name>       Architecture to link
   -demangle               Demangles symbol names in errors and warnings
   -dependency_info <file> Write binary list of files used during link
   -error-limit <number>   Maximum number of errors to emit before stopping
 (0 = no limit)
   -filelist <path>        file containing paths to input files
   -framework <name>       Base name of framework searched for in -F
 directories
   -lto_library <path>     Ignored for compatibility with other linkers
   -l<libname>             Base name of library searched for in -L
 directories
   -o <path>               Output file path
   -path_exists <path>     Used with -test_file_usage to declare a path
   -print_atoms            Emit output as yaml atoms
   -rpath <path>           Add path to the runpath search path list for
 image being created
   -sectalign <segname> <sectname> <alignment>
                           Alignment for segment/section
   -sectcreate <segname> <sectname> <file>
                           Create section <segname>/<sectname> from
 contents of <file>
   -S                      Remove debug information (STABS or DWARF) from
 the output file
   -test_file_usage        Only files specified by -file_exists are
 considered to exist. Print which files would be used
   -t                      Print the names of the input files as ld
 processes them
   -upward-l<libname>      Base name of upward library searched for in -L
 directories
   -upward_framework <name>
                           Base name of upward framework searched for in -F
 directories
   -upward_library <path>  path to upward dylib to link with
   -v                      Print linker information
   -Z                      Do not search standard directories for libraries
 or frameworks

 OUTPUT KIND:
   -bundle  Create dynamic bundle
   -dylib   Create dynamic library
   -dynamic Create dynamic executable (default)
   -execute Create main executable (default)
   -preload Create binary for use with embedded systems
   -r       Create relocatable object file
   -static  Create static executable
 }}}

-- 
Ticket URL: <https://trac.macports.org/ticket/58042#comment:12>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list