diff options
author | Ben Langmuir <blangmuir@apple.com> | 2014-08-01 22:12:21 +0000 |
---|---|---|
committer | Ben Langmuir <blangmuir@apple.com> | 2014-08-01 22:12:21 +0000 |
commit | 6f697025d39bbe85e658ab8d06523cf89bc95b9f (patch) | |
tree | 7b3f0af8f4599f21799166485ea962df7b00ffe0 /test/Driver/modules.m | |
parent | d76b14a84c3a178b7959d141807a239ad9755769 (diff) | |
download | clang-6f697025d39bbe85e658ab8d06523cf89bc95b9f.tar.gz |
Add -fbuild-session-file as an alternative to -fbuild-session-timestamp
Build systems tend to traffic in files and modification times, so having
them touch a file at the beginning of the build can be easier than
having them update the compile command they use every time they build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@214577 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Driver/modules.m')
-rw-r--r-- | test/Driver/modules.m | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/test/Driver/modules.m b/test/Driver/modules.m index d8e20e4148..141269cda2 100644 --- a/test/Driver/modules.m +++ b/test/Driver/modules.m @@ -4,15 +4,29 @@ // RUN: %clang -fmodules -fno-modules -fmodules -### %s 2>&1 | FileCheck -check-prefix=CHECK-HAS-MODULES %s // CHECK-HAS-MODULES: -fmodules -// RUN: %clang -fbuild-session-timestamp=123 -### %s 2>&1 | FileCheck -check-prefix=TIMESTAMP_ONLY %s -// TIMESTAMP_ONLY: -fbuild-session-timestamp=123 +// RUN: %clang -fbuild-session-file=doesntexist -### %s 2>&1 | FileCheck -check-prefix=NOFILE %s +// NOFILE: no such file or directory: 'doesntexist' + +// REQUIRES: shell +// RUN: touch -m -a -t 201408011501 %t.build-session-file +// RUN: %clang -fbuild-session-file=%t.build-session-file -### %s 2>&1 | FileCheck -check-prefix=TIMESTAMP_ONLY %s + +// RUN: %clang -fbuild-session-timestamp=1406930460 -### %s 2>&1 | FileCheck -check-prefix=TIMESTAMP_ONLY %s +// TIMESTAMP_ONLY: -fbuild-session-timestamp=1406930460 + +// RUN: %clang -fbuild-session-file=%t.build-session-file -fbuild-session-timestamp=123 -### %s 2>&1 | FileCheck -check-prefix=CONFLICT %s +// CONFLICT: error: invalid argument '-fbuild-session-file={{.*}}.build-session-file' not allowed with '-fbuild-session-timestamp' // RUN: %clang -fbuild-session-timestamp=123 -fmodules-validate-once-per-build-session -### %s 2>&1 | FileCheck -check-prefix=MODULES_VALIDATE_ONCE %s // MODULES_VALIDATE_ONCE: -fbuild-session-timestamp=123 // MODULES_VALIDATE_ONCE: -fmodules-validate-once-per-build-session +// RUN: %clang -fbuild-session-file=%t.build-session-file -fmodules-validate-once-per-build-session -### %s 2>&1 | FileCheck -check-prefix=MODULES_VALIDATE_ONCE_FILE %s +// MODULES_VALIDATE_ONCE_FILE: -fbuild-session-timestamp=1406930460 +// MODULES_VALIDATE_ONCE_FILE: -fmodules-validate-once-per-build-session + // RUN: %clang -fmodules-validate-once-per-build-session -### %s 2>&1 | FileCheck -check-prefix=MODULES_VALIDATE_ONCE_ERR %s -// MODULES_VALIDATE_ONCE_ERR: option '-fmodules-validate-once-per-build-session' requires '-fbuild-session-timestamp=<seconds since Epoch>' +// MODULES_VALIDATE_ONCE_ERR: option '-fmodules-validate-once-per-build-session' requires '-fbuild-session-timestamp=<seconds since Epoch>' or '-fbuild-session-file=<file>' // RUN: %clang -### %s 2>&1 | FileCheck -check-prefix=MODULES_VALIDATE_SYSTEM_HEADERS_DEFAULT %s // MODULES_VALIDATE_SYSTEM_HEADERS_DEFAULT-NOT: -fmodules-validate-system-headers |