1Test the 'u' option of llvm-ar
2
3REQUIRES: shell
4
5RUN: cd %T
6RUN: rm -f %t.a
7
8Create a file named evenlen that is newer than the evenlen on the source dir.
9RUN: mkdir -p %t.older
10RUN: echo older > %t.older/evenlen
11
12Either the shell supports the 'touch' command with a flag to manually set the
13mtime or we sleep for over a second so that the mtime is definitely observable.
14RUN: touch -m -t 200001010000 %t.older/evenlen || sleep 1.1
15
16RUN: mkdir -p %t.newer
17RUN: echo newer > %t.newer/evenlen
18RUN: touch %t.newer/evenlen
19
20Create an achive with the newest file
21RUN: llvm-ar r %t.a %t.newer/evenlen
22RUN: llvm-ar p %t.a | FileCheck --check-prefix=NEWER %s
23
24Check that without the 'u' option the member is replaced with an older file.
25RUN: llvm-ar r %t.a %t.older/evenlen
26RUN: llvm-ar p %t.a | FileCheck --check-prefix=OLDER %s
27
28Check that with the 'u' option the member is replaced with a newer file.
29RUN: llvm-ar ru %t.a %t.newer/evenlen
30RUN: llvm-ar p %t.a | FileCheck --check-prefix=NEWER %s
31
32Check that with the 'u' option the member is not replaced with an older file.
33RUN: llvm-ar ru %t.a %t.older/evenlen
34RUN: llvm-ar p %t.a | FileCheck --check-prefix=NEWER %s
35
36NEWER: newer
37OLDER: older
38