# REQUIRES: x86
# RUN: mkdir -p %t
# RUN: yaml2obj %s -o %t/libnoid.dylib
# RUN: echo ".globl _main; .text; _main: ret" | llvm-mc -filetype=obj -triple=x86_64-apple-darwin -o %t/no-id-dylink.o
# RUN: not %lld -o %t/no-id-dylink -L%t -lnoid %t/no-id-dylink.o 2>&1 | FileCheck %s
# CHECK: error: {{.*}}libnoid.dylib: dylib missing LC_ID_DYLIB load command
## This YAML file was originally generated from linking the following source
## input with ld64 and passing the resulting binary through obj2yaml:
##
## .section __TEXT,__cstring
## .globl _hello_world
##
## _hello_world:
## .asciz "Hello world!\n"
##
## Then we deleted the LC_ID_DYLIB command from the file.
!mach-o
FileHeader:
magic: 0xFEEDFACF
cputype: 0x01000007
cpusubtype: 0x00000003
filetype: 0x00000006
ncmds: 10
sizeofcmds: 616
flags: 0x00100085
reserved: 0x00000000
LoadCommands:
- cmd: LC_SEGMENT_64
cmdsize: 232
segname: __TEXT
vmaddr: 0
vmsize: 4096
fileoff: 0
filesize: 4096
maxprot: 5
initprot: 5
nsects: 2
flags: 0
Sections:
- sectname: __text
segname: __TEXT
addr: 0x0000000000000FF2
size: 0
offset: 0x00000FF2
align: 0
reloff: 0x00000000
nreloc: 0
flags: 0x80000400
reserved1: 0x00000000
reserved2: 0x00000000
reserved3: 0x00000000
content: ''
- sectname: __cstring
segname: __TEXT
addr: 0x0000000000000FF2
size: 14
offset: 0x00000FF2
align: 0
reloff: 0x00000000
nreloc: 0
flags: 0x00000002
reserved1: 0x00000000
reserved2: 0x00000000
reserved3: 0x00000000
content: 48656C6C6F20776F726C64210A00
- cmd: LC_SEGMENT_64
cmdsize: 72
segname: __LINKEDIT
vmaddr: 4096
vmsize: 4096
fileoff: 4096
filesize: 64
maxprot: 1
initprot: 1
nsects: 0
flags: 0
- cmd: LC_DYLD_INFO_ONLY
cmdsize: 48
rebase_off: 0
rebase_size: 0
bind_off: 0
bind_size: 0
weak_bind_off: 0
weak_bind_size: 0
lazy_bind_off: 0
lazy_bind_size: 0
export_off: 4096
export_size: 24
- cmd: LC_SYMTAB
cmdsize: 24
symoff: 4128
nsyms: 1
stroff: 4144
strsize: 16
- cmd: LC_DYSYMTAB
cmdsize: 80
ilocalsym: 0
nlocalsym: 0
iextdefsym: 0
nextdefsym: 1
iundefsym: 1
nundefsym: 0
tocoff: 0
ntoc: 0
modtaboff: 0
nmodtab: 0
extrefsymoff: 0
nextrefsyms: 0
indirectsymoff: 0
nindirectsyms: 0
extreloff: 0
nextrel: 0
locreloff: 0
nlocrel: 0
- cmd: LC_UUID
cmdsize: 24
uuid: 4826226E-9210-3984-A388-D5BD6D6DB368
- cmd: LC_BUILD_VERSION
cmdsize: 32
platform: 1
minos: 659200
sdk: 659200
ntools: 1
Tools:
- tool: 3
version: 34734080
- cmd: LC_SOURCE_VERSION
cmdsize: 16
version: 0
- cmd: LC_FUNCTION_STARTS
cmdsize: 16
dataoff: 4120
datasize: 8
- cmd: LC_DATA_IN_CODE
cmdsize: 16
dataoff: 4128
datasize: 0
LinkEditData:
ExportTrie:
TerminalSize: 0
NodeOffset: 0
Name: ''
Flags: 0x0000000000000000
Address: 0x0000000000000000
Other: 0x0000000000000000
ImportName: ''
Children:
- TerminalSize: 3
NodeOffset: 16
Name: _hello_world
Flags: 0x0000000000000000
Address: 0x0000000000000FF2
Other: 0x0000000000000000
ImportName: ''
NameList:
- n_strx: 2
n_type: 0x0F
n_sect: 2
n_desc: 0
n_value: 4082
StringTable:
- ' '
- _hello_world
- ''