[clang-scan-deps] Migrate more tests through scan-deps-filter (#207283)
Migrate tests that would otherwise fail when the `-emit-visible-modules` flag is removed. * The tests now include a `scan-deps-filter` invocation that maintains the same fields that are already checked, so there is no test coverage lost. * Also remove `command-line` fields that were not actually checked in tests. Assisted-by: Claude Opus 4.8
This commit is contained in:
1 parent
b30e3c23a5
commit
6645153025
30 files changed
+129
-88
No files matched your search
@@ -17,7 +17,9 @@ module mod { header "mod.h" }
|
||||
|
||||
// RUN: sed "s|DIR|%/t|g" %t/cdb.json.template > %t/cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full 2>&1 > %t/result.json
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=name,context-hash,clang-context-hash,command-line,file-deps,clang-module-deps,clang-modulemap-file,link-libraries,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t
|
||||
|
||||
// Check that the '-Wno-error=invalid-ios-deployment-target' option is being
|
||||
// respected and invalid arguments like '-target i386-apple-ios14.0-simulator'
|
||||
|
||||
@@ -54,9 +54,11 @@ module X { header "X.h" }
|
||||
// RUN: sed -e "s|DIR|%/t|g" %t/cdb_with_a.json.template > %t/cdb_with_a.json
|
||||
// RUN: sed -e "s|DIR|%/t|g" %t/cdb_without_a.json.template > %t/cdb_without_a.json
|
||||
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb_with_a.json -format experimental-full -optimize-args=header-search > %t/results.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb_without_a.json -format experimental-full -optimize-args=header-search >> %t/results.json
|
||||
// RUN: cat %t/results.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb_with_a.json -format experimental-full -optimize-args=header-search \
|
||||
// RUN: | sed 's:\\\\\?:/:g' | %scan-deps-filter --fields=clang-context-hash,clang-module-deps,clang-modulemap-file,context-hash,file-deps,input-file,link-libraries,name > %t/results.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb_without_a.json -format experimental-full -optimize-args=header-search \
|
||||
// RUN: | sed 's:\\\\\?:/:g' | %scan-deps-filter --fields=clang-context-hash,clang-module-deps,clang-modulemap-file,context-hash,file-deps,input-file,link-libraries,name >> %t/results.json
|
||||
// RUN: cat %t/results.json | FileCheck %s -DPREFIX=%/t
|
||||
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
@@ -68,8 +70,6 @@ module X { header "X.h" }
|
||||
// CHECK-NEXT: }
|
||||
// CHECK-NEXT: ],
|
||||
// CHECK-NEXT: "clang-modulemap-file": "[[PREFIX]]/module.modulemap",
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// CHECK-NEXT: "context-hash": "[[HASH_X:.*]]",
|
||||
// CHECK-NEXT: "file-deps": [
|
||||
// CHECK-NEXT: "[[PREFIX]]/module.modulemap",
|
||||
@@ -81,8 +81,6 @@ module X { header "X.h" }
|
||||
// CHECK-NEXT: {
|
||||
// CHECK-NEXT: "clang-module-deps": [],
|
||||
// CHECK-NEXT: "clang-modulemap-file": "[[PREFIX]]/module.modulemap",
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// CHECK-NEXT: "context-hash": "[[HASH_Y_WITH_A]]",
|
||||
// CHECK-NEXT: "file-deps": [
|
||||
// CHECK-NEXT: "[[PREFIX]]/module.modulemap",
|
||||
@@ -104,8 +102,6 @@ module X { header "X.h" }
|
||||
// CHECK-NEXT: "module-name": "X"
|
||||
// CHECK-NEXT: }
|
||||
// CHECK-NEXT: ],
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// CHECK: "file-deps": [
|
||||
// CHECK-NEXT: "[[PREFIX]]/test.c"
|
||||
// CHECK-NEXT: ],
|
||||
@@ -122,8 +118,6 @@ module X { header "X.h" }
|
||||
// CHECK-NEXT: }
|
||||
// CHECK-NEXT: ],
|
||||
// CHECK-NEXT: "clang-modulemap-file": "[[PREFIX]]/module.modulemap",
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// Here is the actual check that this module X (which imports different version of Y)
|
||||
// also has a different context hash from the first version of module X.
|
||||
// CHECK-NOT: "context-hash": "[[HASH_X]]",
|
||||
@@ -137,8 +131,6 @@ module X { header "X.h" }
|
||||
// CHECK-NEXT: {
|
||||
// CHECK-NEXT: "clang-module-deps": [],
|
||||
// CHECK-NEXT: "clang-modulemap-file": "[[PREFIX]]/module.modulemap",
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// CHECK-NEXT: "context-hash": "[[HASH_Y_WITHOUT_A]]",
|
||||
// CHECK-NEXT: "file-deps": [
|
||||
// CHECK-NEXT: "[[PREFIX]]/module.modulemap",
|
||||
@@ -159,8 +151,6 @@ module X { header "X.h" }
|
||||
// CHECK-NEXT: "module-name": "X"
|
||||
// CHECK-NEXT: }
|
||||
// CHECK-NEXT: ],
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// CHECK: "file-deps": [
|
||||
// CHECK-NEXT: "[[PREFIX]]/test.c"
|
||||
// CHECK-NEXT: ],
|
||||
|
||||
@@ -39,7 +39,9 @@ module root { header "root.h" }
|
||||
// RUN: clang-scan-deps \
|
||||
// RUN: -compilation-database=%t/compile_commands.json \
|
||||
// RUN: -format experimental-full \
|
||||
// RUN: | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-context-hash,clang-module-deps,clang-modulemap-file,context-hash,file-deps,input-file,link-libraries,name,named-module,named-module-deps \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t
|
||||
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
|
||||
@@ -7,7 +7,9 @@
|
||||
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -j 1 \
|
||||
// RUN: -format experimental-full > %t/deps.json
|
||||
// RUN: cat %t/deps.json | sed 's:\\\\\?:/:g' | FileCheck -DPREFIX=%/t %s
|
||||
// RUN: cat %t/deps.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-module-deps,command-line,context-hash,input-file,name \
|
||||
// RUN: | FileCheck -DPREFIX=%/t %s
|
||||
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
|
||||
@@ -7,7 +7,9 @@
|
||||
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -j 1 \
|
||||
// RUN: -format experimental-full > %t/deps.json
|
||||
// RUN: cat %t/deps.json | sed 's:\\\\\?:/:g' | FileCheck -DPREFIX=%/t %s
|
||||
// RUN: cat %t/deps.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-module-deps,command-line,context-hash,input-file,name \
|
||||
// RUN: | FileCheck -DPREFIX=%/t %s
|
||||
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
|
||||
@@ -7,7 +7,9 @@
|
||||
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -j 1 \
|
||||
// RUN: -format experimental-full > %t/deps.json
|
||||
// RUN: cat %t/deps.json | sed 's:\\\\\?:/:g' | FileCheck -DPREFIX=%/t %s
|
||||
// RUN: cat %t/deps.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-module-deps,command-line,context-hash,input-file,name \
|
||||
// RUN: | FileCheck -DPREFIX=%/t %s
|
||||
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
|
||||
@@ -17,8 +17,12 @@
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb_a.json -format experimental-full -j 1 > %t/result_a.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb_b.json -format experimental-full -j 1 > %t/result_b.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb_b2.json -format experimental-full -j 1 > %t/result_b2.json
|
||||
// RUN: cat %t/result_a.json %t/result_b.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK
|
||||
// RUN: cat %t/result_b.json %t/result_b2.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t -check-prefix=FLAG_ONLY
|
||||
// Filter each unique JSON output before concatenating for FileCheck.
|
||||
// RUN: %scan-deps-filter --fields=clang-context-hash,clang-modulemap-file,command-line,context-hash,file-deps,input-file,link-libraries,name,clang-module-deps %t/result_a.json > %t/result_a.filt.json
|
||||
// RUN: %scan-deps-filter --fields=clang-context-hash,clang-modulemap-file,command-line,context-hash,file-deps,input-file,link-libraries,name,clang-module-deps %t/result_b.json > %t/result_b.filt.json
|
||||
// RUN: %scan-deps-filter --fields=clang-context-hash,clang-modulemap-file,command-line,context-hash,file-deps,input-file,link-libraries,name,clang-module-deps %t/result_b2.json > %t/result_b2.filt.json
|
||||
// RUN: cat %t/result_a.filt.json %t/result_b.filt.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK
|
||||
// RUN: cat %t/result_b.filt.json %t/result_b2.filt.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t -check-prefix=FLAG_ONLY
|
||||
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
|
||||
@@ -24,19 +24,27 @@ module Direct { header "direct.h" }
|
||||
|
||||
// Check that the PCM path defaults to the modules cache from implicit build.
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full > %t/result_cache.json
|
||||
// RUN: cat %t/result_cache.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t --check-prefixes=CHECK,CHECK_CACHE
|
||||
// RUN: cat %t/result_cache.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,name,clang-context-hash,clang-module-deps,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t --check-prefixes=CHECK,CHECK_CACHE
|
||||
|
||||
// Check that the PCM path can be customized.
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full -module-files-dir %t/build > %t/result_build.json
|
||||
// RUN: cat %t/result_build.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t --check-prefixes=CHECK,CHECK_BUILD
|
||||
// RUN: cat %t/result_build.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,name,clang-context-hash,clang-module-deps,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t --check-prefixes=CHECK,CHECK_BUILD
|
||||
|
||||
// Check that the PCM file is loaded lazily by default.
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full > %t/result_lazy.json
|
||||
// RUN: cat %t/result_lazy.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t --check-prefixes=CHECK,CHECK_LAZY
|
||||
// RUN: cat %t/result_lazy.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,name,clang-context-hash,clang-module-deps,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t --check-prefixes=CHECK,CHECK_LAZY
|
||||
|
||||
// Check that the PCM file can be loaded eagerly.
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full -eager-load-pcm > %t/result_eager.json
|
||||
// RUN: cat %t/result_eager.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t --check-prefixes=CHECK,CHECK_EAGER
|
||||
// RUN: cat %t/result_eager.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,name,clang-context-hash,clang-module-deps,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t --check-prefixes=CHECK,CHECK_EAGER
|
||||
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
|
||||
@@ -28,7 +28,9 @@ module third {}
|
||||
|
||||
// RUN: sed "s|DIR|%/t|g" %t/cdb.json.template > %t/cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full > %t/result.json
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,name,clang-context-hash,clang-module-deps,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t
|
||||
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
|
||||
@@ -27,7 +27,9 @@ module second { header "second.h" }
|
||||
|
||||
// RUN: clang-scan-deps -format experimental-full -o %t/result.json \
|
||||
// RUN: -- %clang -fmodules -fmodules-cache-path=%t/cache -I %t/zeroth -I %t/first -I %t/second -c %t/tu.m -o %t/tu.o
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,name,clang-context-hash,clang-module-deps,executable,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t
|
||||
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
|
||||
@@ -11,7 +11,9 @@
|
||||
|
||||
// RUN: clang-scan-deps -compilation-database %t.cdb -j 1 -format experimental-full \
|
||||
// RUN: -mode preprocess-dependency-directives > %t.result
|
||||
// RUN: cat %t.result | sed 's:\\\\\?:/:g' | FileCheck -DPREFIX=%/t.dir --check-prefixes=CHECK %s
|
||||
// RUN: cat %t.result | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-context-hash,clang-module-deps,clang-modulemap-file,context-hash,file-deps,input-file,link-libraries,name \
|
||||
// RUN: | FileCheck -DPREFIX=%/t.dir --check-prefixes=CHECK %s
|
||||
|
||||
#import "header3.h"
|
||||
#import "header.h"
|
||||
@@ -21,8 +23,6 @@
|
||||
// CHECK-NEXT: {
|
||||
// CHECK-NEXT: "clang-module-deps": []
|
||||
// CHECK-NEXT: "clang-modulemap-file": "[[PREFIX]]/Inputs/module.modulemap",
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// CHECK-NEXT: "context-hash": "[[HASH_H2:[A-Z0-9]+]]",
|
||||
// CHECK-NEXT: "file-deps": [
|
||||
// CHECK-NEXT: "[[PREFIX]]/Inputs/module.modulemap",
|
||||
@@ -41,8 +41,6 @@
|
||||
// CHECK-NEXT: "module-name": "header2"
|
||||
// CHECK-NEXT: }
|
||||
// CHECK-NEXT: ],
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// CHECK: "file-deps": [
|
||||
// CHECK-NEXT: "[[PREFIX]]/modules-fmodule-name-no-module-built.m",
|
||||
// CHECK-NEXT: "[[PREFIX]]/Inputs/header3.h",
|
||||
|
||||
@@ -13,30 +13,37 @@
|
||||
// RUN: clang-scan-deps -format=experimental-full \
|
||||
// RUN: -- %clang++ -std=c++20 -c -fprebuilt-module-path=%t %t/M.cppm -o %t/M.o \
|
||||
// RUN: | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=modules,named-module,named-module-deps,command-line,input-file \
|
||||
// RUN: | FileCheck %t/M.cppm -DPREFIX=%/t
|
||||
// RUN: clang-scan-deps -format=experimental-full \
|
||||
// RUN: -- %clang++ -std=c++20 -c -fprebuilt-module-path=%t %t/Impl.cpp -o %t/Impl.o \
|
||||
// RUN: | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=modules,named-module,named-module-deps,command-line,input-file \
|
||||
// RUN: | FileCheck %t/Impl.cpp -DPREFIX=%/t
|
||||
// RUN: clang-scan-deps -format=experimental-full \
|
||||
// RUN: -- %clang++ -std=c++20 -c -fprebuilt-module-path=%t %t/impl_part.cppm -o %t/impl_part.o \
|
||||
// RUN: | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=modules,named-module,named-module-deps,command-line,input-file \
|
||||
// RUN: | FileCheck %t/impl_part.cppm -DPREFIX=%/t
|
||||
// RUN: clang-scan-deps -format=experimental-full \
|
||||
// RUN: -- %clang++ -std=c++20 -c -fprebuilt-module-path=%t %t/interface_part.cppm -o %t/interface_part.o \
|
||||
// RUN: | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=modules,named-module,named-module-deps,command-line,input-file \
|
||||
// RUN: | FileCheck %t/interface_part.cppm -DPREFIX=%/t
|
||||
// RUN: clang-scan-deps -format=experimental-full \
|
||||
// RUN: -- %clang++ -std=c++20 -c -fprebuilt-module-path=%t %t/User.cpp -o %t/User.o \
|
||||
// RUN: | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=modules,named-module,named-module-deps,command-line,input-file \
|
||||
// RUN: | FileCheck %t/User.cpp -DPREFIX=%/t
|
||||
//
|
||||
// Check the combined dependency format.
|
||||
// RUN: clang-scan-deps -compilation-database %t/compile_commands.json -format=experimental-full \
|
||||
// RUN: | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=modules,named-module,named-module-deps,command-line,input-file \
|
||||
// RUN: | FileCheck %t/Checks.cpp -DPREFIX=%/t
|
||||
// RUN: clang-scan-deps --mode=preprocess-dependency-directives -compilation-database %t/compile_commands.json -format=experimental-full \
|
||||
// RUN: | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=modules,named-module,named-module-deps,command-line,input-file \
|
||||
// RUN: | FileCheck %t/Checks.cpp -DPREFIX=%/t
|
||||
|
||||
//--- compile_commands.json.in
|
||||
|
||||
@@ -21,7 +21,9 @@
|
||||
|
||||
// RUN: sed "s|DIR|%/t|g" %t/cdb.json.template > %t/cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full > %t/result.json
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' | FileCheck -DPREFIX=%/t %s
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=modules,clang-context-hash,clang-module-deps,command-line,file-deps,input-file \
|
||||
// RUN: | FileCheck -DPREFIX=%/t %s
|
||||
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [],
|
||||
|
||||
@@ -12,11 +12,15 @@
|
||||
//
|
||||
// RUN: clang-scan-deps -compilation-database %t.cdb -j 4 -format experimental-full \
|
||||
// RUN: -mode preprocess-dependency-directives > %t.result
|
||||
// RUN: cat %t.result | sed 's:\\\\\?:/:g' | FileCheck -DPREFIX=%/t.dir %s
|
||||
// RUN: cat %t.result | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-module-deps,clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,name,clang-context-hash,executable,input-file \
|
||||
// RUN: | FileCheck -DPREFIX=%/t.dir %s
|
||||
//
|
||||
// RUN: clang-scan-deps -compilation-database %t_clangcl.cdb -j 4 -format experimental-full \
|
||||
// RUN: -mode preprocess-dependency-directives > %t_clangcl.result
|
||||
// RUN: cat %t_clangcl.result | sed 's:\\\\\?:/:g' | FileCheck -DPREFIX=%/t.dir %s
|
||||
// RUN: cat %t_clangcl.result | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-module-deps,clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,name,clang-context-hash,executable,input-file \
|
||||
// RUN: | FileCheck -DPREFIX=%/t.dir %s
|
||||
|
||||
#include "header.h"
|
||||
|
||||
|
||||
@@ -47,7 +47,9 @@ module Dependency { header "dependency.h" }
|
||||
|
||||
// RUN: sed -e "s|DIR|%/t|g" %t/cdb.json.template > %t/cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full > %t/deps.json
|
||||
// RUN: cat %t/deps.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: cat %t/deps.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=translation-units.commands.clang-context-hash,translation-units.commands.clang-module-deps,translation-units.commands.file-deps,translation-units.commands.input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t
|
||||
|
||||
// Let's check that the TU actually depends on `FW_Private` (and does not treat FW/B.h as textual).
|
||||
// CHECK: {
|
||||
@@ -62,8 +64,6 @@ module Dependency { header "dependency.h" }
|
||||
// CHECK-NEXT: "module-name": "FW_Private"
|
||||
// CHECK-NEXT: }
|
||||
// CHECK: ],
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// CHECK: "file-deps": [
|
||||
// CHECK-NEXT: "[[PREFIX]]/tu.c",
|
||||
// CHECK-NEXT: "[[PREFIX]]/frameworks/FW.framework/PrivateHeaders/B.h"
|
||||
|
||||
@@ -67,7 +67,9 @@ framework module B_Private { umbrella header "B_Private.h" }
|
||||
// RUN: sed -e "s|DIR|%/t|g" %t/overlay.json.template > %t/overlay.json
|
||||
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full > %t/result.json
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=translation-units.commands.command-line,translation-units.commands.file-deps,translation-units.commands.input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t
|
||||
// CHECK: {
|
||||
// CHECK: "translation-units": [
|
||||
// CHECK-NEXT: {
|
||||
|
||||
@@ -18,7 +18,9 @@ framework module FWPrivate { header "private.h" }
|
||||
|
||||
// RUN: sed -e "s|DIR|%/t|g" %t/cdb.json.template > %t/cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full > %t/result.json
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=command-line,file-deps,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t
|
||||
// CHECK: "translation-units": [
|
||||
// CHECK-NEXT: {
|
||||
// CHECK-NEXT: "commands": [
|
||||
|
||||
@@ -26,15 +26,15 @@ framework module FW_Private { umbrella header "FW_Private.h" }
|
||||
|
||||
// RUN: sed "s|DIR|%/t|g" %t/cdb.json.template > %t/cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full > %t/result.json
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-context-hash,clang-module-deps,clang-modulemap-file,context-hash,file-deps,input-file,link-libraries,name \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t
|
||||
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
// CHECK-NEXT: {
|
||||
// CHECK-NEXT: "clang-module-deps": [],
|
||||
// CHECK-NEXT: "clang-modulemap-file": "[[PREFIX]]/frameworks/FW.framework/Modules/module.private.modulemap",
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// CHECK-NEXT: "context-hash": "{{.*}}",
|
||||
// CHECK-NEXT: "file-deps": [
|
||||
// CHECK-NEXT: "[[PREFIX]]/frameworks/FW.framework/Modules/module.private.modulemap",
|
||||
@@ -60,8 +60,6 @@ framework module FW_Private { umbrella header "FW_Private.h" }
|
||||
// CHECK-NEXT: "module-name": "FW_Private"
|
||||
// CHECK-NEXT: }
|
||||
// CHECK-NEXT: ],
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// CHECK: "file-deps": [
|
||||
// CHECK-NEXT: "[[PREFIX]]/tu.m",
|
||||
// CHECK-NEXT: "[[PREFIX]]/frameworks/FW.framework/PrivateHeaders/Missed.h",
|
||||
|
||||
@@ -74,7 +74,9 @@ struct A { float x; }; // expected-error {{incompatible definitions}} expected-n
|
||||
// RUN: sed -e "s|DIR|%/t|g" %t/overlay.json.template > %t/overlay.json
|
||||
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full -j 1 > %t/result.json
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=name,clang-module-deps,command-line,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t
|
||||
// CHECK: {
|
||||
// CHECK: "modules": [
|
||||
// CHECK: {
|
||||
|
||||
@@ -22,7 +22,9 @@ framework module FW_Private { umbrella header "FW_Private.h" }
|
||||
|
||||
// RUN: sed -e "s|DIR|%/t|g" %t/cdb.json.template > %t/cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full > %t/result.json
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-module-deps,clang-modulemap-file,context-hash,file-deps,link-libraries,name,clang-context-hash,command-line,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
// CHECK-NEXT: {
|
||||
|
||||
@@ -34,7 +34,9 @@ framework module FW_Private {
|
||||
|
||||
// RUN: sed -e "s|DIR|%/t|g" %t/from_tu.cdb.json.template > %t/from_tu.cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/from_tu.cdb.json -format experimental-full > %t/from_tu_result.json
|
||||
// RUN: cat %t/from_tu_result.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t --check-prefixes=CHECK_TU
|
||||
// RUN: cat %t/from_tu_result.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-module-deps,clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,name,clang-context-hash,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t --check-prefixes=CHECK_TU
|
||||
// CHECK_TU: {
|
||||
// CHECK_TU-NEXT: "modules": [
|
||||
// CHECK_TU-NEXT: {
|
||||
@@ -124,7 +126,9 @@ module Mod { header "Mod.h" }
|
||||
|
||||
// RUN: sed -e "s|DIR|%/t|g" %t/from_module.cdb.json.template > %t/from_module.cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/from_module.cdb.json -format experimental-full > %t/from_module_result.json
|
||||
// RUN: cat %t/from_module_result.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t --check-prefixes=CHECK_MODULE
|
||||
// RUN: cat %t/from_module_result.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-module-deps,clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,name,clang-context-hash,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t --check-prefixes=CHECK_MODULE
|
||||
// CHECK_MODULE: {
|
||||
// CHECK_MODULE-NEXT: "modules": [
|
||||
// CHECK_MODULE-NEXT: {
|
||||
|
||||
@@ -26,7 +26,9 @@ inferred a = 0;
|
||||
|
||||
// RUN: sed "s|DIR|%/t|g" %t/cdb.json.template > %t/cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full > %t/result.json
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-module-deps,clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,name,clang-context-hash,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t
|
||||
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
|
||||
@@ -31,7 +31,9 @@ module User [no_undeclared_includes] { header "user.h" }
|
||||
// RUN: sed "s|DIR|%/t|g" %t/cdb.json.template > %t/cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full \
|
||||
// RUN: -module-files-dir %t/build > %t/result.json
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=name,clang-module-deps,clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,clang-context-hash,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t
|
||||
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
|
||||
@@ -40,7 +40,9 @@ module mod_tu_extra { header "mod_tu_extra.h" }
|
||||
// RUN: clang-scan-deps -format experimental-full -o %t/deps_tu_clean.json -- \
|
||||
// RUN: %clang -nostdinc -c %t/tu.c -o %t/tu.o -include %t/prefix.h \
|
||||
// RUN: -fmodules -fimplicit-module-maps -fmodules-cache-path=%t/cache
|
||||
// RUN: cat %t/deps_tu_clean.json | sed 's:\\\\\?:/:g' | FileCheck %s --check-prefix=CHECK-TU-CLEAN -DPREFIX=%/t
|
||||
// RUN: cat %t/deps_tu_clean.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=name,clang-module-deps,clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,clang-context-hash,executable,input-file \
|
||||
// RUN: | FileCheck %s --check-prefix=CHECK-TU-CLEAN -DPREFIX=%/t
|
||||
// CHECK-TU-CLEAN: {
|
||||
// CHECK-TU-CLEAN-NEXT: "modules": [
|
||||
// CHECK-TU-CLEAN-NEXT: {
|
||||
@@ -109,7 +111,9 @@ module mod_tu_extra { header "mod_tu_extra.h" }
|
||||
// RUN: clang-scan-deps -format experimental-full -o %t/deps_tu_incremental.json -- \
|
||||
// RUN: %clang -nostdinc -c %t/tu.c -o %t/tu.o -include %t/prefix.h \
|
||||
// RUN: -fmodules -fimplicit-module-maps -fmodules-cache-path=%t/cache
|
||||
// RUN: cat %t/deps_tu_incremental.json | sed 's:\\\\\?:/:g' | FileCheck %s --check-prefix=CHECK-TU-INCREMENTAL -DPREFIX=%/t
|
||||
// RUN: cat %t/deps_tu_incremental.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=name,clang-module-deps,clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,clang-context-hash,executable,input-file \
|
||||
// RUN: | FileCheck %s --check-prefix=CHECK-TU-INCREMENTAL -DPREFIX=%/t
|
||||
// CHECK-TU-INCREMENTAL: {
|
||||
// CHECK-TU-INCREMENTAL-NEXT: "modules": [
|
||||
// CHECK-TU-INCREMENTAL-NEXT: {
|
||||
|
||||
@@ -16,15 +16,15 @@
|
||||
// RUN: sed "s|DIR|%/t|g" %S/Inputs/modules-pch-common-submodule/cdb_pch.json > %t/cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full \
|
||||
// RUN: -module-files-dir %t/build > %t/result_pch.json
|
||||
// RUN: cat %t/result_pch.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK-PCH
|
||||
// RUN: cat %t/result_pch.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=name,clang-module-deps,clang-modulemap-file,context-hash,file-deps,link-libraries,clang-context-hash,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK-PCH
|
||||
//
|
||||
// CHECK-PCH: {
|
||||
// CHECK-PCH-NEXT: "modules": [
|
||||
// CHECK-PCH-NEXT: {
|
||||
// CHECK-PCH-NEXT: "clang-module-deps": [],
|
||||
// CHECK-PCH-NEXT: "clang-modulemap-file": "[[PREFIX]]/module.modulemap",
|
||||
// CHECK-PCH-NEXT: "command-line": [
|
||||
// CHECK-PCH: ],
|
||||
// CHECK-PCH-NEXT: "context-hash": "[[HASH_MOD_COMMON:.*]]",
|
||||
// CHECK-PCH-NEXT: "file-deps": [
|
||||
// CHECK-PCH-NEXT: "[[PREFIX]]/module.modulemap",
|
||||
@@ -44,8 +44,6 @@
|
||||
// CHECK-PCH-NEXT: "module-name": "ModCommon"
|
||||
// CHECK-PCH-NEXT: }
|
||||
// CHECK-PCH-NEXT: ],
|
||||
// CHECK-PCH-NEXT: "command-line": [
|
||||
// CHECK-PCH: ],
|
||||
// CHECK-PCH: "file-deps": [
|
||||
// CHECK-PCH-NEXT: "[[PREFIX]]/pch.h"
|
||||
// CHECK-PCH-NEXT: ],
|
||||
@@ -65,15 +63,15 @@
|
||||
// RUN: sed "s|DIR|%/t|g" %S/Inputs/modules-pch-common-submodule/cdb_tu.json > %t/cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full \
|
||||
// RUN: -module-files-dir %t/build > %t/result_tu.json
|
||||
// RUN: cat %t/result_tu.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK-TU
|
||||
// RUN: cat %t/result_tu.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=name,clang-module-deps,clang-modulemap-file,context-hash,file-deps,link-libraries,clang-context-hash,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK-TU
|
||||
//
|
||||
// CHECK-TU: {
|
||||
// CHECK-TU-NEXT: "modules": [
|
||||
// CHECK-TU-NEXT: {
|
||||
// CHECK-TU-NEXT: "clang-module-deps": [],
|
||||
// CHECK-TU-NEXT: "clang-modulemap-file": "[[PREFIX]]/module.modulemap",
|
||||
// CHECK-TU-NEXT: "command-line": [
|
||||
// CHECK-TU: ],
|
||||
// CHECK-TU-NEXT: "context-hash": "[[HASH_MOD_TU:.*]]",
|
||||
// CHECK-TU-NEXT: "file-deps": [
|
||||
// CHECK-TU-NEXT: "[[PREFIX]]/module.modulemap",
|
||||
@@ -92,8 +90,6 @@
|
||||
// CHECK-TU-NEXT: "module-name": "ModTU"
|
||||
// CHECK-TU-NEXT: }
|
||||
// CHECK-TU-NEXT: ],
|
||||
// CHECK-TU-NEXT: "command-line": [
|
||||
// CHECK-TU: ],
|
||||
// CHECK-TU: "file-deps": [
|
||||
// CHECK-TU-NEXT: "[[PREFIX]]/tu.c",
|
||||
// CHECK-TU-NEXT: "[[PREFIX]]/pch.h.pch"
|
||||
|
||||
@@ -13,15 +13,15 @@
|
||||
// RUN: sed "s|DIR|%/t|g" %S/Inputs/modules-pch-common-via-submodule/cdb_pch.json > %t/cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full \
|
||||
// RUN: -module-files-dir %t/build > %t/result_pch.json
|
||||
// RUN: cat %t/result_pch.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK-PCH
|
||||
// RUN: cat %t/result_pch.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=name,clang-module-deps,clang-modulemap-file,context-hash,file-deps,link-libraries,clang-context-hash,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK-PCH
|
||||
//
|
||||
// CHECK-PCH: {
|
||||
// CHECK-PCH-NEXT: "modules": [
|
||||
// CHECK-PCH-NEXT: {
|
||||
// CHECK-PCH-NEXT: "clang-module-deps": [],
|
||||
// CHECK-PCH-NEXT: "clang-modulemap-file": "[[PREFIX]]/module.modulemap",
|
||||
// CHECK-PCH-NEXT: "command-line": [
|
||||
// CHECK-PCH: ],
|
||||
// CHECK-PCH-NEXT: "context-hash": "[[HASH_MOD_COMMON:.*]]",
|
||||
// CHECK-PCH-NEXT: "file-deps": [
|
||||
// CHECK-PCH-NEXT: "[[PREFIX]]/module.modulemap",
|
||||
@@ -40,8 +40,6 @@
|
||||
// CHECK-PCH-NEXT: "module-name": "ModCommon"
|
||||
// CHECK-PCH-NEXT: }
|
||||
// CHECK-PCH-NEXT: ],
|
||||
// CHECK-PCH-NEXT: "command-line": [
|
||||
// CHECK-PCH: ],
|
||||
// CHECK-PCH: "file-deps": [
|
||||
// CHECK-PCH-NEXT: "[[PREFIX]]/pch.h"
|
||||
// CHECK-PCH-NEXT: ],
|
||||
@@ -61,15 +59,15 @@
|
||||
// RUN: sed "s|DIR|%/t|g" %S/Inputs/modules-pch-common-via-submodule/cdb_tu.json > %t/cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full \
|
||||
// RUN: -module-files-dir %t/build > %t/result_tu.json
|
||||
// RUN: cat %t/result_tu.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK-TU
|
||||
// RUN: cat %t/result_tu.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=name,clang-module-deps,clang-modulemap-file,context-hash,file-deps,link-libraries,clang-context-hash,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK-TU
|
||||
//
|
||||
// CHECK-TU: {
|
||||
// CHECK-TU-NEXT: "modules": [
|
||||
// CHECK-TU-NEXT: {
|
||||
// CHECK-TU-NEXT: "clang-module-deps": [],
|
||||
// CHECK-TU-NEXT: "clang-modulemap-file": "[[PREFIX]]/module.modulemap",
|
||||
// CHECK-TU-NEXT: "command-line": [
|
||||
// CHECK-TU: ],
|
||||
// CHECK-TU-NEXT: "context-hash": "[[HASH_MOD_TU:.*]]",
|
||||
// CHECK-TU-NEXT: "file-deps": [
|
||||
// CHECK-TU-NEXT: "[[PREFIX]]/module.modulemap",
|
||||
@@ -89,8 +87,6 @@
|
||||
// CHECK-TU-NEXT: "module-name": "ModTU"
|
||||
// CHECK-TU-NEXT: }
|
||||
// CHECK-TU-NEXT: ],
|
||||
// CHECK-TU-NEXT: "command-line": [
|
||||
// CHECK-TU: ],
|
||||
// CHECK-TU: "file-deps": [
|
||||
// CHECK-TU-NEXT: "[[PREFIX]]/tu.c",
|
||||
// CHECK-TU-NEXT: "[[PREFIX]]/pch.h.pch"
|
||||
|
||||
@@ -11,7 +11,9 @@
|
||||
// RUN: sed "s|DIR|%/t|g" %S/Inputs/modules-pch/cdb_pch.json > %t/cdb_pch.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb_pch.json -format experimental-full \
|
||||
// RUN: -module-files-dir %t/build > %t/result_pch.json
|
||||
// RUN: cat %t/result_pch.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK-PCH
|
||||
// RUN: cat %t/result_pch.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=name,clang-module-deps,clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,clang-context-hash,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK-PCH
|
||||
//
|
||||
// Check we didn't build the PCH during dependency scanning.
|
||||
// RUN: not cat %/t/pch.h.pch
|
||||
@@ -102,7 +104,9 @@
|
||||
// RUN: sed "s|DIR|%/t|g" %S/Inputs/modules-pch/cdb_tu.json > %t/cdb_tu.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb_tu.json -format experimental-full \
|
||||
// RUN: -module-files-dir %t/build > %t/result_tu.json
|
||||
// RUN: cat %t/result_tu.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK-TU
|
||||
// RUN: cat %t/result_tu.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=name,clang-module-deps,clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,clang-context-hash,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK-TU
|
||||
//
|
||||
// CHECK-TU: {
|
||||
// CHECK-TU-NEXT: "modules": [
|
||||
@@ -152,7 +156,9 @@
|
||||
// RUN: sed "s|DIR|%/t|g" %S/Inputs/modules-pch/cdb_tu_with_common.json > %t/cdb_tu_with_common.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb_tu_with_common.json -format experimental-full \
|
||||
// RUN: -module-files-dir %t/build > %t/result_tu_with_common.json
|
||||
// RUN: cat %t/result_tu_with_common.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK-TU-WITH-COMMON
|
||||
// RUN: cat %t/result_tu_with_common.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=name,clang-module-deps,clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,clang-context-hash,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t -check-prefix=CHECK-TU-WITH-COMMON
|
||||
//
|
||||
// CHECK-TU-WITH-COMMON: {
|
||||
// CHECK-TU-WITH-COMMON-NEXT: "modules": [
|
||||
|
||||
@@ -32,7 +32,9 @@ module Dependency { header "dependency.h" }
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full > %t/deps.json
|
||||
|
||||
// Check that FW is reported to depend on FW_Private.
|
||||
// RUN: cat %t/deps.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: cat %t/deps.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-module-deps,clang-modulemap-file,command-line,context-hash,file-deps,link-libraries,name,clang-context-hash,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
// CHECK-NEXT: {
|
||||
|
||||
@@ -14,7 +14,9 @@
|
||||
// RUN: -j 1 -format experimental-full -mode preprocess-dependency-directives \
|
||||
// RUN: > %t/deps.json
|
||||
|
||||
// RUN: cat %t/deps.json | sed 's:\\\\\?:/:g' | FileCheck %s -DPREFIX=%/t
|
||||
// RUN: cat %t/deps.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-modulemap-file,name,clang-context-hash,clang-module-deps,command-line,executable,input-file \
|
||||
// RUN: | FileCheck %s -DPREFIX=%/t
|
||||
|
||||
// Build the -save-temps + -fmodules case
|
||||
// RUN: %deps-to-rsp %t/deps.json --module-name=Mod > %t/Mod.rsp
|
||||
|
||||
@@ -35,7 +35,9 @@ module addition { header "addition.h" }
|
||||
|
||||
// RUN: sed "s|DIR|%/t|g" %t/cdb.json.template > %t/cdb.json
|
||||
// RUN: clang-scan-deps -compilation-database %t/cdb.json -format experimental-full -tu-buffer-path %t/tu.c > %t/result.json
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' | FileCheck -DPREFIX=%/t %s --check-prefix=CHECK
|
||||
// RUN: cat %t/result.json | sed 's:\\\\\?:/:g' \
|
||||
// RUN: | %scan-deps-filter --fields=clang-module-deps,clang-modulemap-file,context-hash,file-deps,name,clang-context-hash,input-file \
|
||||
// RUN: | FileCheck -DPREFIX=%/t %s --check-prefix=CHECK
|
||||
|
||||
// CHECK: {
|
||||
// CHECK-NEXT: "modules": [
|
||||
@@ -47,8 +49,6 @@ module addition { header "addition.h" }
|
||||
// CHECK-NEXT: }
|
||||
// CHECK-NEXT: ],
|
||||
// CHECK-NEXT: "clang-modulemap-file": "[[PREFIX]]/module.modulemap",
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// CHECK-NEXT: "context-hash": "{{.*}}",
|
||||
// CHECK-NEXT: "file-deps": [
|
||||
// CHECK-NEXT: "[[PREFIX]]/module.modulemap"
|
||||
@@ -64,8 +64,6 @@ module addition { header "addition.h" }
|
||||
// CHECK-NEXT: }
|
||||
// CHECK-NEXT: ],
|
||||
// CHECK-NEXT: "clang-modulemap-file": "[[PREFIX]]/module.modulemap",
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// CHECK-NEXT: "context-hash": "{{.*}}",
|
||||
// CHECK-NEXT: "file-deps": [
|
||||
// CHECK-NEXT: "[[PREFIX]]/module.modulemap"
|
||||
@@ -77,8 +75,6 @@ module addition { header "addition.h" }
|
||||
// CHECK-NEXT: {
|
||||
// CHECK-NEXT: "clang-module-deps": [],
|
||||
// CHECK-NEXT: "clang-modulemap-file": "[[PREFIX]]/module.modulemap",
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// CHECK-NEXT: "context-hash": "{{.*}}",
|
||||
// CHECK-NEXT: "file-deps": [
|
||||
// CHECK-NEXT: "[[PREFIX]]/module.modulemap"
|
||||
@@ -98,8 +94,6 @@ module addition { header "addition.h" }
|
||||
// CHECK-NEXT: "module-name": "root"
|
||||
// CHECK-NEXT: }
|
||||
// CHECK-NEXT: ],
|
||||
// CHECK-NEXT: "command-line": [
|
||||
// CHECK: ],
|
||||
// CHECK: "file-deps": [
|
||||
// CHECK-NEXT: [[PREFIX]]/tu.c
|
||||
// CHECK-NEXT: ],
|
||||
|
||||
Reference in new issue
Block a user