brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.5 KiB · 6291698 Raw
89 lines · cpp
1// RUN: rm -rf %t && mkdir -p %t2// RUN: cp -r %S/Inputs/header-search-pruning/* %t3// RUN: cp %S/header-search-pruning.cpp %t/header-search-pruning.cpp4// RUN: sed -e "s|DIR|%/t|g" -e "s|DEFINES|-DINCLUDE_A|g"             %S/Inputs/header-search-pruning/cdb.json > %t/cdb_a.json5// RUN: sed -e "s|DIR|%/t|g" -e "s|DEFINES|-DINCLUDE_B|g"             %S/Inputs/header-search-pruning/cdb.json > %t/cdb_b.json6// RUN: sed -e "s|DIR|%/t|g" -e "s|DEFINES|-DINCLUDE_A -DINCLUDE_B|g" %S/Inputs/header-search-pruning/cdb.json > %t/cdb_ab.json7//8// RUN: clang-scan-deps -compilation-database %t/cdb_a.json -format experimental-full -optimize-args=header-search >> %t/result_a.json9// RUN: cat %t/result_a.json | sed 's:\\\\\?:/:g' | FileCheck --check-prefixes=CHECK_A %s10//11// RUN: clang-scan-deps -compilation-database %t/cdb_b.json -format experimental-full -optimize-args=header-search >> %t/result_b.json12// RUN: cat %t/result_b.json | sed 's:\\\\\?:/:g' | FileCheck --check-prefixes=CHECK_B %s13//14// RUN: clang-scan-deps -compilation-database %t/cdb_ab.json -format experimental-full -optimize-args=header-search >> %t/result_ab.json15// RUN: cat %t/result_ab.json | sed 's:\\\\\?:/:g' | FileCheck --check-prefixes=CHECK_AB %s16 17#include "mod.h"18 19// CHECK_A:        {20// CHECK_A-NEXT:     "modules": [21// CHECK_A-NEXT:       {22// CHECK_A-NEXT:         "clang-module-deps": [],23// CHECK_A-NEXT:         "clang-modulemap-file": "{{.*}}",24// CHECK_A-NEXT:         "command-line": [25// CHECK_A-NEXT:           "-cc1"26// CHECK_A:                "-I",27// CHECK_A-NEXT:           "begin",28// CHECK_A-NEXT:           "-I",29// CHECK_A-NEXT:           "a",30// CHECK_A-NEXT:           "-I",31// CHECK_A-NEXT:           "end"32// CHECK_A:              ],33// CHECK_A-NEXT:         "context-hash": "{{.*}}",34// CHECK_A-NEXT:         "file-deps": [35// CHECK_A:              ],36// CHECK_A-NEXT:         "link-libraries": [],37// CHECK_A-NEXT:         "name": "mod"38// CHECK_A-NEXT:       }39// CHECK_A-NEXT:     ]40// CHECK_A:        }41 42// CHECK_B:        {43// CHECK_B-NEXT:     "modules": [44// CHECK_B-NEXT:       {45// CHECK_B-NEXT:         "clang-module-deps": [],46// CHECK_B-NEXT:         "clang-modulemap-file": "{{.*}}",47// CHECK_B-NEXT:         "command-line": [48// CHECK_B-NEXT:           "-cc1"49// CHECK_B:                "-I",50// CHECK_B-NEXT:           "begin",51// CHECK_B-NEXT:           "-I",52// CHECK_B-NEXT:           "b",53// CHECK_B-NEXT:           "-I",54// CHECK_B-NEXT:           "end"55// CHECK_B:              ],56// CHECK_B-NEXT:         "context-hash": "{{.*}}",57// CHECK_B-NEXT:         "file-deps": [58// CHECK_B:              ],59// CHECK_B-NEXT:         "link-libraries": [],60// CHECK_B-NEXT:         "name": "mod"61// CHECK_B-NEXT:       }62// CHECK_B-NEXT:     ]63// CHECK_B:        }64 65// CHECK_AB:       {66// CHECK_AB-NEXT:    "modules": [67// CHECK_AB-NEXT:      {68// CHECK_AB-NEXT:        "clang-module-deps": [],69// CHECK_AB-NEXT:        "clang-modulemap-file": "{{.*}}",70// CHECK_AB-NEXT:        "command-line": [71// CHECK_AB-NEXT:          "-cc1"72// CHECK_AB:               "-I",73// CHECK_AB-NEXT:          "begin",74// CHECK_AB-NEXT:          "-I",75// CHECK_AB-NEXT:          "a",76// CHECK_AB-NEXT:          "-I",77// CHECK_AB-NEXT:          "b",78// CHECK_AB-NEXT:          "-I",79// CHECK_AB-NEXT:          "end"80// CHECK_AB:             ],81// CHECK_AB-NEXT:        "context-hash": "{{.*}}",82// CHECK_AB-NEXT:        "file-deps": [83// CHECK_AB:             ],84// CHECK_AB-NEXT:        "link-libraries": [],85// CHECK_AB-NEXT:        "name": "mod"86// CHECK_AB-NEXT:      }87// CHECK_AB-NEXT:    ]88// CHECK_AB:       }89