1RUN: cd %p
2
3Test reading an archive created by gnu ar
4RUN: env TZ=GMT llvm-ar tv Inputs/GNU.a | FileCheck %s --check-prefix=GNU -strict-whitespace
5
6GNU:      rw-r--r-- 500/500      8 Nov 19 02:57 2004 evenlen
7GNU-NEXT: rw-r--r-- 500/500      7 Nov 19 02:57 2004 oddlen
8GNU-NEXT: rwxr-xr-x 500/500   1465 Nov 19 03:01 2004 very_long_bytecode_file_name.bc
9GNU-NEXT: rw-r--r-- 500/500   2280 Nov 19 03:04 2004 IsNAN.o
10
11
12Test reading an archive createdy by Mac OS X ar
13RUN: env TZ=GMT llvm-ar tv Inputs/MacOSX.a | FileCheck %s --check-prefix=OSX -strict-whitespace
14
15OSX-NOT: __.SYMDEF
16OSX:      rw-r--r-- 501/501      8 Nov 19 02:57 2004 evenlen
17OSX-NEXT: rw-r--r-- 501/501      8 Nov 19 02:57 2004 oddlen
18OSX-NEXT: rw-r--r-- 502/502   1465 Feb  4 06:59 2010 very_long_bytecode_file_name.bc
19OSX-NEXT: rw-r--r-- 501/501   2280 Nov 19 04:32 2004 IsNAN.o
20
21Test reading an archive created on Solaris by /usr/ccs/bin/ar
22RUN: env TZ=GMT llvm-ar tv Inputs/SVR4.a | FileCheck %s -strict-whitespace
23
24Test reading an archive created on Solaris by /usr/xpg4/bin/ar
25RUN: env TZ=GMT llvm-ar tv Inputs/xpg4.a | FileCheck %s -strict-whitespace
26
27CHECK:      rw-r--r-- 1002/102      8 Nov 19 03:24 2004 evenlen
28CHECK-NEXT: rw-r--r-- 1002/102      7 Nov 19 03:24 2004 oddlen
29CHECK-NEXT: rwxr-xr-x 1002/102   1465 Nov 19 03:24 2004 very_long_bytecode_file_name.bc
30CHECK-NEXT: rw-r--r-- 1002/102   2280 Nov 19 03:24 2004 IsNAN.o
31
32Test reading a thin archive created by gnu ar
33RUN: env TZ=GMT llvm-ar tv Inputs/thin.a | FileCheck %s --check-prefix=THIN -strict-whitespace
34
35THIN:      rw-r--r-- 1000/1000      8 Dec 16 00:56 2014 Inputs/evenlen
36THIN-NEXT: rw-r--r-- 1000/1000      7 Dec 16 00:56 2014 Inputs/oddlen
37THIN-NEXT: rwxr-xr-x 1000/1000   1465 Dec 16 00:56 2014 Inputs/very_long_bytecode_file_name.bc
38THIN-NEXT: rw-r--r-- 1000/1000   2280 Dec 16 00:56 2014 Inputs/IsNAN.o
39
40Test reading an archive with just a symbol table. We use to reject them.
41RUN: llvm-ar tv Inputs/symtab-only.a | FileCheck --allow-empty --check-prefix=EMPTY %s
42EMPTY-NOT: {{.}}
43
44Test reading a thin archive with directory names.
45RUN: env TZ=GMT llvm-ar tv Inputs/thin-path.a | FileCheck %s --check-prefix=THINPATH -strict-whitespace
46
47THINPATH:      rw-r--r-- 0/0   1224 Jan  1 00:00 1970 Inputs/test.o
48THINPATH-NEXT: rw-r--r-- 0/0   1224 Jan  1 00:00 1970 Inputs/t/test2.o
49
50RUN: llvm-ar tO Inputs/GNU.a | FileCheck %s --check-prefix=GNU-O --strict-whitespace
51
52GNU-O:      {{^}}evenlen 0x10c
53GNU-O-NEXT: {{^}}oddlen 0x150
54GNU-O-NEXT: {{^}}very_long_bytecode_file_name.bc 0x194
55GNU-O-NEXT: {{^}}IsNAN.o 0x78a
56
57RUN: env TZ=GMT llvm-ar tvO Inputs/GNU.a | FileCheck %s --check-prefix=GNU-VO --strict-whitespace
58
59GNU-VO:      rw-r--r-- 500/500      8 Nov 19 02:57 2004 evenlen 0x10c
60GNU-VO-NEXT: rw-r--r-- 500/500      7 Nov 19 02:57 2004 oddlen 0x150
61GNU-VO-NEXT: rwxr-xr-x 500/500   1465 Nov 19 03:01 2004 very_long_bytecode_file_name.bc 0x194
62GNU-VO-NEXT: rw-r--r-- 500/500   2280 Nov 19 03:04 2004 IsNAN.o 0x78a
63