xref: /llvm-project/llvm/test/tools/llvm-ar/regular-to-thin-archive.test (revision 1f71b5a38605a4f101af43288ae22feb89c8a469)
1# XFAIL: system-aix
2## Test regular archives do not convert to thin archives.
3
4# RUN: rm -rf %t && mkdir -p %t
5# RUN: llvm-ar qc %t/archive.a %S/Inputs/a.txt
6# RUN: not llvm-ar q --thin %t/archive.a %s 2>&1 | FileCheck %s
7# RUN: not llvm-ar r --thin %t/archive.a %s 2>&1 | FileCheck %s
8
9# CHECK: error: cannot convert a regular archive to a thin one
10
11## Test that you can add a regular archive to a new thin archive with 'L'.
12# RUN: llvm-ar -qcL --thin %t/thin1.a %S/Inputs/b.txt %t/archive.a
13# RUN: FileCheck --check-prefixes=THIN --input-file=%t/thin1.a %s
14
15## Test that you can add a regular archive to an existing thin archive with 'L'.
16# RUN: llvm-ar -qc --thin %t/thin2.a %S/Inputs/b.txt
17# RUN: llvm-ar -qL --thin %t/thin2.a %t/archive.a
18# RUN: FileCheck --check-prefixes=THIN --input-file=%t/thin2.a %s
19
20# THIN: !<thin>
21# THIN: archive.a
22
23## Test archives do not convert to thin archives with use of 'L' and '--thin'.
24# RUN: not llvm-ar -qL --thin %t/archive.a %t/thin2.a 2>&1 | FileCheck %s
25
26## Test that a regular archive can be read despite use of --thin
27# RUN: llvm-ar -t --thin %t/archive.a
28# RUN: FileCheck --check-prefixes=REGULAR --input-file=%t/archive.a %s
29# REGULAR: !<arch>
30