xref: /llvm-project/llvm/test/tools/llvm-ar/mri-errors.test (revision 25040f8dec2e2dda5b0951744f9a32fb7aab3755)
1*25040f8dSOwen Reynolds## Test different MRI comment formats and whitespace.
2*25040f8dSOwen Reynolds
3*25040f8dSOwen Reynolds# RUN: rm -rf %t && mkdir -p %t
4*25040f8dSOwen Reynolds
5*25040f8dSOwen Reynolds# RUN: echo "create %t/mri.ar" > %t/script1.mri
6*25040f8dSOwen Reynolds# RUN: echo "addlib %t/missing.a" >> %t/script1.mri
7*25040f8dSOwen Reynolds
8*25040f8dSOwen Reynolds# RUN: not llvm-ar -M < %t/script1.mri 2>&1 | FileCheck --check-prefix=SCRIPT1 %s
9*25040f8dSOwen Reynolds# SCRIPT1: error: script line 2: could not open library
10*25040f8dSOwen Reynolds
11*25040f8dSOwen Reynolds# RUN: echo "create %t/mri.ar" > %t/script2.mri
12*25040f8dSOwen Reynolds# RUN: echo "addlib %t/bad.a" >> %t/script2.mri
13*25040f8dSOwen Reynolds
14*25040f8dSOwen Reynolds# RUN: echo "bad archive" > %t/bad.a
15*25040f8dSOwen Reynolds
16*25040f8dSOwen Reynolds# RUN: not llvm-ar -M < %t/script2.mri 2>&1 | FileCheck --check-prefix=SCRIPT2 %s
17*25040f8dSOwen Reynolds# SCRIPT2: error: script line 2: could not parse library
18*25040f8dSOwen Reynolds
19*25040f8dSOwen Reynolds# RUN: echo "create %t/mri.ar" > %t/script3.mri
20*25040f8dSOwen Reynolds# RUN: echo "create %t/second.ar" >> %t/script3.mri
21*25040f8dSOwen Reynolds
22*25040f8dSOwen Reynolds# RUN: not llvm-ar -M < %t/script3.mri 2>&1 | FileCheck --check-prefix=SCRIPT3 %s
23*25040f8dSOwen Reynolds# SCRIPT3: error: script line 2: editing multiple archives not supported
24*25040f8dSOwen Reynolds
25*25040f8dSOwen Reynolds# RUN: echo "save" > %t/script4.mri
26*25040f8dSOwen Reynolds# RUN: echo "create %t/mri.ar" >> %t/script4.mri
27*25040f8dSOwen Reynolds
28*25040f8dSOwen Reynolds# RUN: not llvm-ar -M < %t/script4.mri 2>&1 | FileCheck --check-prefix=SCRIPT4 %s
29*25040f8dSOwen Reynolds# SCRIPT4: error: script line 2: file already saved
30*25040f8dSOwen Reynolds
31*25040f8dSOwen Reynolds# RUN: echo "create %t/mri.ar" > %t/script5.mri
32*25040f8dSOwen Reynolds# RUN: echo "bad command" >> %t/script5.mri
33*25040f8dSOwen Reynolds
34*25040f8dSOwen Reynolds# RUN: not llvm-ar -M < %t/script5.mri 2>&1 | FileCheck --check-prefix=SCRIPT5 %s
35*25040f8dSOwen Reynolds# SCRIPT5: error: script line 2: unknown command: bad
36*25040f8dSOwen Reynolds
37*25040f8dSOwen Reynolds# RUN: echo "bad command" | not llvm-ar -M 2>&1 | FileCheck --check-prefix=SCRIPT6 %s
38*25040f8dSOwen Reynolds# SCRIPT6: error: script line 1: unknown command: bad
39*25040f8dSOwen Reynolds
40*25040f8dSOwen Reynolds# RUN: not llvm-ar -M rc %t/mri.ar 2>&1 | FileCheck --check-prefix=SCRIPT7 %s
41*25040f8dSOwen Reynolds# SCRIPT7: error: cannot mix -M and other options
42