Recommit "rL366894: [yaml2obj] - Allow custom fields for the SHT_UNDEF sections."
[llvm-complete.git] / test / tools / llvm-ar / insert-after.test
blob7c01e736149aa397927307a14f38646c7ce3571b
1 ## Test inserting files after a file.
3 RUN: touch %t1.txt
4 RUN: touch %t2.txt
5 RUN: touch %t3.txt
6 RUN: touch %t4.txt
8 # Insert one file:
9 RUN: rm -f %t-one.a
10 RUN: llvm-ar rc %t-one.a %t1.txt %t2.txt
11 RUN: llvm-ar ra %t1.txt %t-one.a %t3.txt
12 RUN: llvm-ar t %t-one.a | FileCheck %s --check-prefix=ONE
14 ONE:      1.txt
15 ONE-NEXT: 3.txt
16 ONE-NEXT: 2.txt
18 # Insert file at back:
19 RUN: rm -f %t-back.a
20 RUN: llvm-ar rc %t-back.a %t1.txt %t2.txt
21 RUN: llvm-ar ra %t2.txt %t-back.a %t3.txt
22 RUN: llvm-ar t %t-back.a | FileCheck %s --check-prefix=BACK
24 BACK:      1.txt
25 BACK-NEXT: 2.txt
26 BACK-NEXT: 3.txt
28 # Insert multiple files:
29 RUN: rm -f %t-multiple.a
30 RUN: llvm-ar rc %t-multiple.a %t1.txt %t2.txt
31 RUN: llvm-ar ra %t1.txt %t-multiple.a %t4.txt %t3.txt
32 RUN: llvm-ar t %t-multiple.a | FileCheck %s --check-prefix=MULTIPLE
34 MULTIPLE:      1.txt
35 MULTIPLE-NEXT: 4.txt
36 MULTIPLE-NEXT: 3.txt
37 MULTIPLE-NEXT: 2.txt
39 # Insert after invalid file:
40 RUN: rm -f %t-invalid.a
41 RUN: llvm-ar rc %t-invalid.a %t1.txt %t2.txt %t3.txt
42 RUN: not llvm-ar ra invalid.txt %t-invalid.a %t2.txt 2>&1 \
43 RUN:   | FileCheck %s --check-prefix=ERROR
44 RUN: llvm-ar t %t-invalid.a | FileCheck %s --check-prefix=INVALID
46 ERROR: error: Insertion point not found.
47 INVALID:      1.txt
48 INVALID-NEXT: 2.txt
49 INVALID-NEXT: 3.txt
51 # Insert file at the same position:
52 RUN: rm -f %t-position.a
53 RUN: llvm-ar rc %t-position.a %t1.txt %t2.txt %t3.txt
54 RUN: llvm-ar ra %t1.txt %t-position.a %t2.txt
55 RUN: llvm-ar t %t-position.a | FileCheck %s --check-prefix=POSITION
57 POSITION:      1.txt
58 POSITION-NEXT: 2.txt
59 POSITION-NEXT: 3.txt