| ## Unsupported on windows as marking files "unreadable" is non-trivial on windows. |
| # UNSUPPORTED: system-windows |
| |
| # RUN: rm -rf %t && split-file %s %t && cd %t |
| # RUN: yaml2obj 1.yaml -o 1.o |
| # RUN: llvm-ar rcS a.a 1.o |
| # RUN: cp a.a b.a && cp a.a c.a && cp a.a d.a |
| # RUN: chmod 100 c.a |
| # RUN: not llvm-ranlib a.a b.a c.a d.a 2>&1 | FileCheck %s --check-prefix=NO-PERMISSION -DMSG=%errc_EACCES |
| |
| # NO-PERMISSION: error: unable to open 'c.a': [[MSG]] |
| # NO-PERMISSION-NOT: {{.}} |
| |
| ## The archives before c.a (a.a and b.a) have been processed. |
| # RUN: llvm-nm --print-armap a.a | FileCheck %s |
| # RUN: cmp a.a b.a |
| ## The others (c.a and d.a) do not have a symbol table. |
| # RUN: chmod 700 c.a |
| # RUN: llvm-nm --print-armap c.a | FileCheck %s --check-prefix=NOMAP |
| # RUN: cmp c.a d.a |
| |
| # CHECK: Archive map |
| # CHECK-NEXT: foo in 1.o |
| # CHECK-EMPTY: |
| |
| # NOMAP-NOT: Archive map |
| |
| #--- 1.yaml |
| --- !ELF |
| FileHeader: |
| Class: ELFCLASS64 |
| Data: ELFDATA2LSB |
| Type: ET_REL |
| Machine: EM_X86_64 |
| Sections: |
| - Name: .text |
| Type: SHT_PROGBITS |
| Symbols: |
| - Name: foo |
| Binding: STB_GLOBAL |
| Section: .text |